Ir para conteúdo
  • 0

[Ajuda] Spell De Clonagem [Ajuda]


Flaah

Pergunta

Ola amigos do XTIBIA, hoje eu vim aqui pra pedi uma ajudinha para vcs, que seria:

 

Vcs conseguiriam colocar as funçoes:

 

doCreateCustomMonster e getCreatureName(cid)

 

Na SPELL que eu editei:

 

function onCastSpell(cid, var)

local playerpos = getPlayerPosition(cid)
local cloth = getCreatureOutfit(cid)
local health = getCreatureHealth(cid)
local maxhealth = getCreatureMaxHealth(cid)
local nome = getCreatureName(cid)
local MaximoSummon = 10 --- Maximo de Monstros Sumonados!! No Caso So Posso Sumonar 5 Clones

local summons = doCreateCustomMonster(cid)
if(table.maxn(summons) < MaximoSummon) then -- no summons
local clone = doCreateCustomMonster(nome, playerpos)
setCreatureMaxHealth(clone, maxhealth)
doCreatureAddHealth(clone, health)
doSetCreatureOutfit(clone, cloth, -1)
doSendMagicEffect(playerpos, 2)
return TRUE
end
end

 

SPELL original:

 

 

function onCastSpell(cid, var)

local playerpos = getPlayerPosition(cid)
local cloth = getCreatureOutfit(cid)
local health = getCreatureHealth(cid)
local maxhealth = getCreatureMaxHealth(cid)
local MaximoSummon = 10 --- Maximo de Monstros Sumonados!! No Caso So Posso Sumonar 5 Clones

local summons = getCreatureSummons(cid)
if(table.maxn(summons) < MaximoSummon) then -- no summons
local clone = doCreateMonster("orc", playerpos)
doConvinceCreature(cid, clone)
setCreatureMaxHealth(clone, maxhealth)
doCreatureAddHealth(clone, health)
doSetCreatureOutfit(clone, cloth, -1)
doSendMagicEffect(playerpos, 2)
return TRUE
end
end

 

 

Em?!

 

Sobre a função: http://www.xtibia.co...ommonster-no-c/

 

PS: EU TENHO A FUNÇÃO doCreateCustomMonster NO MEU SERVER.

 

ERRO QUE ESTA DANDO: Quando eu uso a spell que eu editei com esse comando, ele derruba o server.

 

ALGUEM AJUDA PORFAVOR, VALENDO +REP

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

7 respostass a esta questão

Posts Recomendados

  • 0

Bom Flaah como você tem a função do CreateCustomMonster creio que dara certo entao, vamos lá:

 

1º Crie um arquivo na pasta talkactions/scripts com o nome de clone.lua e coloque em seu conteúdo:

 

local spells = {
[1] = {used = 0, text = '<attack name="melee" interval="2000" chance="100" range="5" radius="1" target="0"><attribute key="areaEffect" value="fire"/></attack>'},
[2] = {used = 0, text = '<attack name="melee" interval="1200" chance="100" range="5" radius="1" target="0"><attribute key="areaEffect" value="energyarea"/></attack>'},
[3] = {used = 0, text = '<attack name="melee" interval="700" chance="100" range="5" radius="1" target="0"><attribute key="areaEffect" value="mortarea"/></attack>'}
}
local spellsNumber = 2
function randomNum(range)
local rand = 0
good = false
math.randomseed( os.time() )
math.random()
math.random()
math.random()

while (not good) do
rand = math.random(range)

if (spells[rand].used == 0) then
 spells[rand].used = 1
 good = true
else
 good = false
end

end
return rand
end

function onSay(cid, words)
local attacks = "<a>"
local num

for i=1,spellsNumber,1 do
 num = randomNum(table.getn(spells))
 attacks = attacks .. spells[num].text
end

attacks = attacks .. "</a>"
doCreateCustomMonster(getCreatureName(cid), getCreaturePosition(cid), getCreatureOutfit(cid), getCreatureMaxHealth(cid), attacks, 6324, 1, 100)

for i=1,table.getn(spells),1 do
 spells[i].used = 0
end

attacks = ""

return true
end

 

Explicando:

doCreateCustomMonster(nome, posição, outfit, health, attacks, corpo quando morto, distancia do player, experiencia)

 

2º Abra o arquivo talkactions.xml e adicione em qualquer lugar:

 

<talkaction words="!clone" event="script" value="clone.lua"/>

 

 

Te ajudei REP+.

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

  • 0

Yan18, vc deveria ler primeiro o tópico dos outros antes de responder.

 

Se vc lesse primeiro, saberia que a ta talkaction que eu postei é praticamente a mesma coisa que vc me respondeu e o que eu queria que essa talkaction virasse uma spell.

 

Primeiro leia o tópico dos outros e preste mais atenção, aaai, depois vc responda, não perca seu tempo respondendo uma coisa inútil como esta, só pra ganha Posts, esse tópico é sério e a ajuda que to pedindo é mais séria ainda, OK's?!

 

ALGUEM AJUDA PORFAVOR, VALENDO +REP

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

  • 0

Não deu pra entender direito o que você quis fazer... é isso?

 

 

function onCastSpell(cid, var)

   local MaximoSummon = 10
   local atk = '<a><attack name="melee" interval="2000" chance="100" range="1" min="-50" max="-100"></attack></a>'

   if #getCreatureSummons(cid) < MaximoSummon then
       local clone = doCreateCustomMonster(getCreatureName(cid), getCreaturePosition(cid), getCreatureOutfit(cid), getCreatureMaxHealth(cid), atk, 0, 1, 0)
       doConvinceCreature(cid, clone)
       doSendMagicEffect(getCreaturePosition(cid), 2)
   end

return true
end

 

 

Se só quiser transformar a talkaction em spell, pode fazer dessa forma também:

 

function onCastSpell(cid, var)

   doCreatureExecuteTalkAction(cid, "!clone", true)

return true
end

Link para o comentário
Compartilhar em outros sites

  • 0

Tipo eu ja consegui de uma forma aqui, mais valeu as dicas, +REP pra vc ;D

 

Era só trocar a tang:

 

function onSay(cid, words)

 

Por:

 

function onCastSpell(cid, var)

 

Que ja funcionava. he.gif

 

PS: Esse código que vc mando, não funciono não. o.O

 

 

function onCastSpell(cid, var)

 

doCreatureExecuteTalkAction(cid, "!clone", true)

 

return true

end

 

KKKK' Mais ta BLZ :3

 

Tópico ja resolvido, podem fechar happy.png

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

  • 0

Tem que ter a talkaction "!clone" instalado no seu server, a mesma que você colocou no tópico de como instalar o docreatecustommonster

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

Visitante
Este tópico está impedido de receber novos posts.
×
×
  • Criar Novo...