Ir para conteúdo
  • 0

[Mod]Arena Svargrond Como Fazer Outro!


milbradt

Pergunta

Olá, minha duvida é a seguinte.

O demonbholder criou 1 MOD da arena svarground, com apenas 1 nivel de dificuldade.

No caso se quiser usar o mesmo MOD dele para criar uma outra arena, o que eu modifico?

 

Eu tentei modificar, porem não deu certo, vou postar o script original e o novo que tentei fazer:

 

original:

 

 

<?xml version="1.0" encoding="UTF-8"?>

<mod name="Arena Svargrond" enabled="yes" author="Demonbholder" forum="XTibia.com">

 

<config name="ArenaLib"><![CDATA[

 

dinheiro = 10000

storage = 47000

storage2 = 47001

playerpos = {x=151, y=48, z=7} -- posicao da arena

trofypos = {x=151, y=48, z=7} -- posicao da area apos a arena

monpos = {x=151, y=48, z=7} -- posicao onde o monstro sera criado

monsters = {

[0] = 'rat',

[1] = 'dwarf',

[2] = 'minotaur guard',

[3] = 'demon skeleton',

[4] = 'dragon',

[5] = 'vampire',

[6] = 'giant spider',

[7] = 'dragon lord',

[8] = 'warlock',

[9] = 'demon'

}

function doRemoveCorpse(pos)

 

for i = 1, 255 do

corp = {x=pos.x, y=pos.y, z=pos.z, stackpos=i}

if isCorpse(getThingFromPos(corp).uid) then

break

end

end

 

doRemoveItem(getThingFromPos(corp).uid, 1)

end

 

]]></config>

 

<creaturescript type="death" name="Arena" event="script"><![CDATA[

domodlib('ArenaLib')

 

if isPlayer(deathList[1]) and isMonster(cid) then

if getPlayerStorageValue(deathList[1], storage) > -1 and getPlayerStorageValue(deathList[1], storage) < 10 then

setPlayerStorageValue(deathList[1], storage, getPlayerStorageValue(deathList[1], storage) + 1)

addEvent(doRemoveCorpse, 500, getCreaturePosition(cid))

setPlayerStorageValue(deathList[1], storage2, -1)

end

if getPlayerStorageValue(deathList[1], storage) == 10 then

doTeleportThing(deathList[1], trofypos)

end

end

 

return TRUE

 

]]></creaturescript>

 

<creaturescript type="kill" name="ArenaK" event="script"><![CDATA[

domodlib('ArenaLib')

 

if isMonster(cid) and isPlayer(target) then

if getPlayerStorageValue(target, storage) > -1 and getPlayerStorageValue(target, storage) < 10 then

setPlayerStorageValue(target, storage, -1)

setPlayerStorageValue(target, storage2, -1)

doRemoveCreature(cid)

addEvent(doRemoveCorpse, 500, getCreaturePosition(target))

end

end

 

return TRUE

 

]]></creaturescript>

 

<creaturescript type="logout" name="ArenaL" event="script"><![CDATA[

domodlib('ArenaLib')

 

if getPlayerStorageValue(cid, storage) > -1 and getPlayerStorageValue(cid, storage) < 10 then

return FALSE, doPlayerSendCancel(cid, "You can't logout during arena!")

end

 

return TRUE

 

]]></creaturescript>

 

<movevent type="StepIn" actionid="40000" event="script"><![CDATA[

domodlib('ArenaLib')

 

if monsters[getPlayerStorageValue(cid, storage)] then

if getPlayerStorageValue(cid, storage2) == -1 then

local mon = doCreateMonster(monsters[getPlayerStorageValue(cid, storage)], monpos)

setPlayerStorageValue(cid, storage2, 1)

registerCreatureEvent(mon, "Arena")

registerCreatureEvent(mon, "ArenaK")

end

end

 

return TRUE

 

]]></movevent>

 

<movevent type="StepIn" actionid="40001" event="script"><![CDATA[

domodlib('ArenaLib')

 

for _, pid in pairs(getPlayersOnline()) do

if (getPlayerStorageValue(pid, storage) > -1 and getPlayerStorageValue(pid, storage) < 10) or getPlayerStorageValue(cid, storage) == 10 then

return TRUE, doTeleportThing(cid, fromPosition)

end

end

 

if getPlayerMoney(cid) < dinheiro then

return TRUE, doTeleportThing(cid, fromPosition), doPlayerSendCancel(cid, "Voce nao tem dinheiro.")

end

 

doPlayerRemoveMoney(cid, dinheiro)

setPlayerStorageValue(cid, storage, 0)

doPlayerSendTextMessage(cid, 4, "Arena Svargrond!")

return TRUE, doTeleportThing(cid, playerpos)

 

]]></movevent>

 

</mod>

 

 

 

novo:

 

 

<?xml version="1.0" encoding="UTF-8"?>

<mod name="Arena Silvester" enabled="yes" author="Demonbholder" forum="XTibia.com">

 

<config name="ArenaLib2"><![CDATA[

 

dinheiro = 10000

storage = 47002

storage2 = 47003

playerpos = {x=300, y=50, z=7} -- posicao da arena

trofypos = {x=300, y=50, z=6} -- posicao da area apos a arena

monpos = {x=305, y=50, z=7} -- posicao onde o monstro sera criado

monsters = {

[0] = 'rat',

[1] = 'dwarf',

[2] = 'minotaur guard',

[3] = 'demon skeleton',

[4] = 'dragon',

[5] = 'vampire',

[6] = 'giant spider',

[7] = 'dragon lord',

[8] = 'warlock',

[9] = 'demon'

}

function doRemoveCorpse(pos)

 

for i = 1, 255 do

corp = {x=pos.x, y=pos.y, z=pos.z, stackpos=i}

if isCorpse(getThingFromPos(corp).uid) then

break

end

end

 

doRemoveItem(getThingFromPos(corp).uid, 1)

end

 

]]></config>

 

<creaturescript type="death" name="Arena2" event="script"><![CDATA[

domodlib('ArenaLib2')

 

if isPlayer(deathList[1]) and isMonster(cid) then

if getPlayerStorageValue(deathList[1], storage) > -1 and getPlayerStorageValue(deathList[1], storage) < 10 then

setPlayerStorageValue(deathList[1], storage, getPlayerStorageValue(deathList[1], storage) + 1)

addEvent(doRemoveCorpse, 500, getCreaturePosition(cid))

setPlayerStorageValue(deathList[1], storage2, -1)

end

if getPlayerStorageValue(deathList[1], storage) == 10 then

doTeleportThing(deathList[1], trofypos)

end

end

 

return TRUE

 

]]></creaturescript>

 

<creaturescript type="kill" name="ArenaK2" event="script"><![CDATA[

domodlib('ArenaLib2')

 

if isMonster(cid) and isPlayer(target) then

if getPlayerStorageValue(target, storage) > -1 and getPlayerStorageValue(target, storage) < 10 then

setPlayerStorageValue(target, storage, -1)

setPlayerStorageValue(target, storage2, -1)

doRemoveCreature(cid)

addEvent(doRemoveCorpse, 500, getCreaturePosition(target))

end

end

 

return TRUE

 

]]></creaturescript>

 

<creaturescript type="logout" name="ArenaL2" event="script"><![CDATA[

domodlib('ArenaLib2')

 

if getPlayerStorageValue(cid, storage) > -1 and getPlayerStorageValue(cid, storage) < 10 then

return FALSE, doPlayerSendCancel(cid, "You can't logout during arena!")

end

 

return TRUE

 

]]></creaturescript>

 

<movevent type="StepIn" actionid="40002" event="script"><![CDATA[

domodlib('ArenaLib2')

 

if monsters[getPlayerStorageValue(cid, storage)] then

if getPlayerStorageValue(cid, storage2) == -1 then

local mon = doCreateMonster(monsters[getPlayerStorageValue(cid, storage)], monpos)

setPlayerStorageValue(cid, storage2, 1)

registerCreatureEvent(mon, "Arena2")

registerCreatureEvent(mon, "ArenaK2")

end

end

 

return TRUE

 

]]></movevent>

 

<movevent type="StepIn" actionid="40003" event="script"><![CDATA[

domodlib('ArenaLib2')

 

for _, pid in pairs(getPlayersOnline()) do

if (getPlayerStorageValue(pid, storage) > -1 and getPlayerStorageValue(pid, storage) < 10) or getPlayerStorageValue(cid, storage) == 10 then

return TRUE, doTeleportThing(cid, fromPosition)

end

end

 

if getPlayerMoney(cid) < dinheiro then

return TRUE, doTeleportThing(cid, fromPosition), doPlayerSendCancel(cid, "Voce nao tem dinheiro.")

end

 

doPlayerRemoveMoney(cid, dinheiro)

setPlayerStorageValue(cid, storage, 0)

doPlayerSendTextMessage(cid, 4, "Arena Svargrond!")

return TRUE, doTeleportThing(cid, playerpos)

 

]]></movevent>

 

</mod>

 

 

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

2 respostass a esta questão

Posts Recomendados

×
×
  • Criar Novo...