Ir para conteúdo

[MoveEvent] Ring Chaos Bangle


raalgusto

Posts Recomendados

Bom é O Seguinte vai Em Movements e Crie um Arquivo chamado "chaosbangle" e cole o seguinte :

 

-- >> Small config section --

 

local outfitMale =

{

lookType = 12,

lookHead = 19,

lookBody = 79,

lookLegs = 3,

lookFeet = 81,

lookAddons = 0

}

 

local outfitFemale =

{

lookType = 12,

lookHead = 19,

lookBody = 53,

lookLegs = 92,

lookFeet = 79,

lookAddons = 0

}

 

local cointype = 2152 -- Id of the coin the spell will use (2148 = gold coin, 2152 = platinum coin, 2160 = crystal coin) --

local tbcw = 2000 -- coin wasting time interval (miliseconds) --

local ncws = 1 -- number of coins used up during time interval --

local ncni = 20 -- number of coins needed to trigger the transformation --

local stcn = 20 -- number of coins needed to execute script (must be higher than ncni value) --

local warn = 1 -- warns player when runing short on coins, 1 = yes --

local cwar = 20 -- number of coins that triggers the warnings --

 

local bmaineff = CONST_ME_YELLOW_RINGS

local bsecondeff = CONST_ME_BLOCKHIT

local bflingeff = CONST_ANI_SMALLHOLY

local blandeff = CONST_ME_HOLYAREA

local bringwaste = CONST_ME_FIREWORK_YELLOW

local bringabsorb = CONST_ME_MAGIC_GREEN

 

local gmaineff = CONST_ME_EXPLOSIONAREA

local gsecondeff = CONST_ME_FIREAREA

local gflingeff = CONST_ANI_FIRE

local glandeff = CONST_ME_FIREWORK_RED

local gringwaste = CONST_ME_FIREWORK_RED

local gringabsorb = CONST_ME_MAGIC_RED

 

-- Small config section << --

 

local condition1 = createConditionObject(CONDITION_ATTRIBUTES)

setConditionParam(condition1, CONDITION_PARAM_TICKS, -1)

setConditionParam(condition1, CONDITION_PARAM_SKILL_FIST, 210)

setConditionParam(condition1, CONDITION_PARAM_SKILL_FISHING, 210)

setConditionParam(condition1, CONDITION_PARAM_SKILL_CLUB, 210)

setConditionParam(condition1, CONDITION_PARAM_SKILL_SWORD, 210)

setConditionParam(condition1, CONDITION_PARAM_SKILL_AXE, 210)

setConditionParam(condition1, CONDITION_PARAM_SKILL_DISTANCE, 210)

setConditionParam(condition1, CONDITION_PARAM_SKILL_SHIELD, 210)

setConditionParam(condition1, CONDITION_PARAM_SKILL_FISHING, 210)

setConditionParam(condition1, CONDITION_PARAM_STAT_MAGICPOINTS, 210)

setConditionParam(condition1, CONDITION_PARAM_STAT_MAXHITPOINTSPERCENT, 215)

setConditionParam(condition1, CONDITION_PARAM_STAT_MAXMANAPOINTSPERCENT, 210)

 

local condition2 = createConditionObject(CONDITION_HASTE)

setConditionParam(condition2, CONDITION_PARAM_TICKS, -1)

setConditionFormula(condition2, 2.5, 0, 3.0, 0)

 

function superform1(param)

if param.crca == 1 then

 

local pos = getCreaturePosition(param.cid)

local sex = getPlayerSex(param.cid)

 

local nha = {x = pos.x, y = pos.y - 3, z = pos.z, stackpos = 255}

local sha = {x = pos.x, y = pos.y + 3, z = pos.z, stackpos = 255}

local wha = {x = pos.x - 3, y = pos.y, z = pos.z, stackpos = 255}

local eha = {x = pos.x + 3, y = pos.y, z = pos.z, stackpos = 255}

 

local nwa = {x = pos.x - 2, y = pos.y - 2, z = pos.z, stackpos = 255}

local nea = {x = pos.x + 2, y = pos.y - 2, z = pos.z, stackpos = 255}

local sea = {x = pos.x + 2, y = pos.y + 2, z = pos.z, stackpos = 255}

local swa = {x = pos.x - 2, y = pos.y + 2, z = pos.z, stackpos = 255}

 

if sex == 1 then

doSendMagicEffect(pos, bmaineff)

doSendMagicEffect(pos, bsecondeff)

 

doSendDistanceShoot(pos, nha, bflingeff)

doSendDistanceShoot(pos, sha, bflingeff)

doSendDistanceShoot(pos, wha, bflingeff)

doSendDistanceShoot(pos, eha, bflingeff)

doSendDistanceShoot(pos, nwa, bflingeff)

doSendDistanceShoot(pos, nea, bflingeff)

doSendDistanceShoot(pos, sea, bflingeff)

doSendDistanceShoot(pos, swa, bflingeff)

 

doSendMagicEffect(nha, blandeff)

doSendMagicEffect(sha, blandeff)

doSendMagicEffect(wha, blandeff)

doSendMagicEffect(eha, blandeff)

doSendMagicEffect(nwa, blandeff)

doSendMagicEffect(nea, blandeff)

doSendMagicEffect(sea, blandeff)

doSendMagicEffect(swa, blandeff)

 

doSetCreatureOutfit(param.cid, outfitMale, -1)

else

doSendMagicEffect(pos, gmaineff)

doSendMagicEffect(pos, gsecondeff)

 

doSendDistanceShoot(pos, nha, gflingeff)

doSendDistanceShoot(pos, sha, gflingeff)

doSendDistanceShoot(pos, wha, gflingeff)

doSendDistanceShoot(pos, eha, gflingeff)

doSendDistanceShoot(pos, nwa, gflingeff)

doSendDistanceShoot(pos, nea, gflingeff)

doSendDistanceShoot(pos, sea, gflingeff)

doSendDistanceShoot(pos, swa, gflingeff)

 

doSendMagicEffect(nha, glandeff)

doSendMagicEffect(sha, glandeff)

doSendMagicEffect(wha, glandeff)

doSendMagicEffect(eha, glandeff)

doSendMagicEffect(nwa, glandeff)

doSendMagicEffect(nea, glandeff)

doSendMagicEffect(sea, glandeff)

doSendMagicEffect(swa, glandeff)

doSetCreatureOutfit(param.cid, outfitFemale, -1)

end

 

doAddCondition(param.cid, condition1)

doAddCondition(param.cid, condition2)

 

local mhp = getCreatureMaxHealth(param.cid)

local mma = getPlayerMaxMana(param.cid)

local chp = getCreatureHealth(param.cid)

local cma = getPlayerMana(param.cid)

 

local dhp = mhp - chp

local dma = mma - cma

 

doCreatureAddHealth(param.cid, dhp)

doPlayerAddMana(param.cid, dma)

doPlayerRemoveItem(param.cid, cointype, ncni)

 

param.crcb = 1

param.sex = sex

setPlayerStorageValue(param.cid, 50780, 1)

 

addEvent(superform2, 1, param)

end

end

 

 

function superform2(param)

if param.crca == 1 and param.crcb == 1 and isCreature(param.cid) == TRUE and getPlayerStorageValue(param.cid, 50780) == 1 then

local pos = getCreaturePosition(param.cid)

doPlayerRemoveItem(param.cid, cointype, ncws)

if param.sex == 1 then

doSendMagicEffect(pos, bringwaste)

doSendMagicEffect(pos, bringabsorb)

else

doSendMagicEffect(pos, gringwaste)

doSendMagicEffect(pos, gringabsorb)

end

local goldleft = getPlayerItemCount(param.cid, cointype)

if goldleft < cwar and warn == 1 then

doPlayerSendTextMessage(param.cid, MESSAGE_STATUS_CONSOLE_RED, "Coins left: " ..goldleft.. ".")

end

if goldleft < ncws then

param.crca = 0

param.crcb = 0

setPlayerStorageValue(param.cid, 50780, 0)

doPlayerSendTextMessage(param.cid, MESSAGE_EVENT_DEFAULT, "No cash left!")

 

local pos = getCreaturePosition(param.cid)

 

local nha = {x = pos.x, y = pos.y - 3, z = pos.z, stackpos = 255}

local sha = {x = pos.x, y = pos.y + 3, z = pos.z, stackpos = 255}

local wha = {x = pos.x - 3, y = pos.y, z = pos.z, stackpos = 255}

local eha = {x = pos.x + 3, y = pos.y, z = pos.z, stackpos = 255}

 

local nwa = {x = pos.x - 2, y = pos.y - 2, z = pos.z, stackpos = 255}

local nea = {x = pos.x + 2, y = pos.y - 2, z = pos.z, stackpos = 255}

local sea = {x = pos.x + 2, y = pos.y + 2, z = pos.z, stackpos = 255}

local swa = {x = pos.x - 2, y = pos.y + 2, z = pos.z, stackpos = 255}

 

 

doRemoveCondition(param.cid, CONDITION_OUTFIT)

doRemoveCondition(param.cid, CONDITION_ATTRIBUTES)

doRemoveCondition(param.cid, CONDITION_HASTE)

 

if param.sex == 1 then

doSendMagicEffect(pos, bmaineff)

doSendMagicEffect(pos, bsecondeff)

 

doSendDistanceShoot(pos, nha, bflingeff)

doSendDistanceShoot(pos, sha, bflingeff)

doSendDistanceShoot(pos, wha, bflingeff)

doSendDistanceShoot(pos, eha, bflingeff)

doSendDistanceShoot(pos, nwa, bflingeff)

doSendDistanceShoot(pos, nea, bflingeff)

doSendDistanceShoot(pos, sea, bflingeff)

doSendDistanceShoot(pos, swa, bflingeff)

 

doSendMagicEffect(nha, blandeff)

doSendMagicEffect(sha, blandeff)

doSendMagicEffect(wha, blandeff)

doSendMagicEffect(eha, blandeff)

doSendMagicEffect(nwa, blandeff)

doSendMagicEffect(nea, blandeff)

doSendMagicEffect(sea, blandeff)

doSendMagicEffect(swa, blandeff)

else

doSendMagicEffect(pos, gmaineff)

doSendMagicEffect(pos, gsecondeff)

 

doSendDistanceShoot(pos, nha, gflingeff)

doSendDistanceShoot(pos, sha, gflingeff)

doSendDistanceShoot(pos, wha, gflingeff)

doSendDistanceShoot(pos, eha, gflingeff)

doSendDistanceShoot(pos, nwa, gflingeff)

doSendDistanceShoot(pos, nea, gflingeff)

doSendDistanceShoot(pos, sea, gflingeff)

doSendDistanceShoot(pos, swa, gflingeff)

 

doSendMagicEffect(nha, glandeff)

doSendMagicEffect(sha, glandeff)

doSendMagicEffect(wha, glandeff)

doSendMagicEffect(eha, glandeff)

doSendMagicEffect(nwa, glandeff)

doSendMagicEffect(nea, glandeff)

doSendMagicEffect(sea, glandeff)

doSendMagicEffect(swa, glandeff)

end

else

addEvent(superform2, tbcw, param)

end

end

 

end

 

function onEquip(cid, item, slot)

local param = {cid = cid, item = item, slot = slot}

local gold = getPlayerItemCount(cid, cointype)

if gold > stcn then

param.crca = 1

--can equip here?

addEvent(superform1, 1, param)

return TRUE

end

end

 

function onDeEquip(cid, item, slot)

if isPlayer(cid) and getPlayerStorageValue(cid, 50780) == 1 then

 

doRemoveCondition(cid, CONDITION_OUTFIT)

doRemoveCondition(cid, CONDITION_ATTRIBUTES)

doRemoveCondition(cid, CONDITION_HASTE)

 

local pos = getCreaturePosition(cid)

setPlayerStorageValue(cid, 50780, 0)

local sex = getPlayerSex(cid)

 

local nha = {x = pos.x, y = pos.y - 3, z = pos.z, stackpos = 255}

local sha = {x = pos.x, y = pos.y + 3, z = pos.z, stackpos = 255}

local wha = {x = pos.x - 3, y = pos.y, z = pos.z, stackpos = 255}

local eha = {x = pos.x + 3, y = pos.y, z = pos.z, stackpos = 255}

 

local nwa = {x = pos.x - 2, y = pos.y - 2, z = pos.z, stackpos = 255}

local nea = {x = pos.x + 2, y = pos.y - 2, z = pos.z, stackpos = 255}

local sea = {x = pos.x + 2, y = pos.y + 2, z = pos.z, stackpos = 255}

local swa = {x = pos.x - 2, y = pos.y + 2, z = pos.z, stackpos = 255}

 

if sex == 1 then

doSendMagicEffect(pos, bmaineff)

doSendMagicEffect(pos, bsecondeff)

 

doSendDistanceShoot(pos, nha, bflingeff)

doSendDistanceShoot(pos, sha, bflingeff)

doSendDistanceShoot(pos, wha, bflingeff)

doSendDistanceShoot(pos, eha, bflingeff)

doSendDistanceShoot(pos, nwa, bflingeff)

doSendDistanceShoot(pos, nea, bflingeff)

doSendDistanceShoot(pos, sea, bflingeff)

doSendDistanceShoot(pos, swa, bflingeff)

 

doSendMagicEffect(nha, blandeff)

doSendMagicEffect(sha, blandeff)

doSendMagicEffect(wha, blandeff)

doSendMagicEffect(eha, blandeff)

doSendMagicEffect(nwa, blandeff)

doSendMagicEffect(nea, blandeff)

doSendMagicEffect(sea, blandeff)

doSendMagicEffect(swa, blandeff)

else

doSendMagicEffect(pos, gmaineff)

doSendMagicEffect(pos, gsecondeff)

 

doSendDistanceShoot(pos, nha, gflingeff)

doSendDistanceShoot(pos, sha, gflingeff)

doSendDistanceShoot(pos, wha, gflingeff)

doSendDistanceShoot(pos, eha, gflingeff)

doSendDistanceShoot(pos, nwa, gflingeff)

doSendDistanceShoot(pos, nea, gflingeff)

doSendDistanceShoot(pos, sea, gflingeff)

doSendDistanceShoot(pos, swa, gflingeff)

 

doSendMagicEffect(nha, glandeff)

doSendMagicEffect(sha, glandeff)

doSendMagicEffect(wha, glandeff)

doSendMagicEffect(eha, glandeff)

doSendMagicEffect(nwa, glandeff)

doSendMagicEffect(nea, glandeff)

doSendMagicEffect(sea, glandeff)

doSendMagicEffect(swa, glandeff)

end

end

return TRUE

end

 

Dps Vai em Movements e Cole

<movevent event="Equip" itemid="2127" function="onEquipItem" slot="ring" script="chaosbangle.lua"/>

<movevent event="DeEquip" itemid="2127" function="onDeEquipItem" slot="ring" script="chaosbangle.lua"/>

 

Explicando : Voce Pega O Emerald Bangle , Fique Com Dinheiro e Use No Lugar Do Anel : Caso Queira Mudar A Grana , vc vai la em cima no Cointype e mude o ID do money (2148 = gold coin, 2152 = platinum coin, 2160 = crystal coin).

Serve : Quando Voce Usar O Anel Automaticamente ele Acrecentara Mana E Vida E Sua Outfit Sera Mudada Conforme O Sexo (Masculino = Amarelo , Feminino = Roxo)

Tbm Vc Podera Editar \/ Logo Acima Do Script

 

-- Small config section << --

 

local condition1 = createConditionObject(CONDITION_ATTRIBUTES)

setConditionParam(condition1, CONDITION_PARAM_TICKS, -1)

setConditionParam(condition1, CONDITION_PARAM_SKILL_FIST, 210)

setConditionParam(condition1, CONDITION_PARAM_SKILL_FISHING, 210)

setConditionParam(condition1, CONDITION_PARAM_SKILL_CLUB, 210)

setConditionParam(condition1, CONDITION_PARAM_SKILL_SWORD, 210)

setConditionParam(condition1, CONDITION_PARAM_SKILL_AXE, 210)

setConditionParam(condition1, CONDITION_PARAM_SKILL_DISTANCE, 210)

setConditionParam(condition1, CONDITION_PARAM_SKILL_SHIELD, 210)

setConditionParam(condition1, CONDITION_PARAM_SKILL_FISHING, 210)

setConditionParam(condition1, CONDITION_PARAM_STAT_MAGICPOINTS, 210)

setConditionParam(condition1, CONDITION_PARAM_STAT_MAXHITPOINTSPERCENT, 215)

setConditionParam(condition1, CONDITION_PARAM_STAT_MAXMANAPOINTSPERCENT, 210)

 

Skill = Tipow Esses Dai O Distance,Shield,Axe ETC é O Tanto Que Adiciona Quando O Anel é Usado

Mana e Vida = Akele Ali Em Cima

CONDITION_PARAM_STAT_MAXHITPOINTSPERCENT
é o tanto q o player ganha de vida e
CONDITION_PARAM_STAT_MAXMANAPOINTSPERCENT
é o Tanto Q Voce Ganha De Mana (Aperece 215 e 210 Mais é Muito + Que 3000 Ele Ganha Conforme O Seu Level)

 

Pronto!

Aproveitem!!! :party:

 

.:: Atençao ::. Os Cretidos Nao Sao Meus! Somente Editei Algumas Coisas O Devido Credito é Do "OTland.net".

Editado por Gladiador Negro
Link para o comentário
Compartilhar em outros sites

Bem legal mais poderia explicar mais sobre as suas funções por exemplo:

 

Quando Voce Usar O Anel Automaticamente ele Acrecentara Mana E Vida

 

Você poderia explicar aonde você muda essa quantidade "x" para a quantidade que o player queira.

 

Porem scrip bem desenvolvido gostei muito das suas funções.

 

Abraços.

Link para o comentário
Compartilhar em outros sites

Muito bom, porém, acho que falta alguma coisa aí... Se voce pegou de outro lugar, tem que botar créditos hein...

 

Link original (outro fórum)

[spoil]http://otland.net/f81/transforming-ring-forgotten-server-beta-2-a-18251/[/spoil]

 

me parece que a unica coisa que voce fez foi o "return TRUE" no final...

 

flw

Link para o comentário
Compartilhar em outros sites

  • 2 weeks later...
  • 2 years later...

Aqui nao to conseguindo , eu fiz certin , fiz uma arquivo nos movements , colokei o script dps fui no moviemnts.xml escrevi akilo ai quando fui testa o bangle ta a mesma coisa , ajuda ae ?:s to qerendo mto esse script

Link para o comentário
Compartilhar em outros sites

  • 1 year later...

 Aqui nao to conseguindo , eu fiz certin , fiz uma arquivo nos movements , colokei o script dps fui no moviemnts.xml escrevi akilo ai quando fui testa o bangle ta a mesma coisa , ajuda ae ?:s to qerendo mto esse script 

Aqui aconteceu a mesma coisa, eu fiz certo, usei ele, só que não adiantou de nada..

Pode ajudar?

Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...