milbradt 19 Postado Junho 23, 2012 Share Postado Junho 23, 2012 (editado) Tipo.. quando você a usa essa spell, ela era pra BUFFAR o jogador e ficar saindo um EFEITO nele. Bom até ai tudo bem, o detalhe é que uso a spell apenas 1 vez e não posso mais usar a mesma =\ Aki esta o Link no site que o Skydangerous recomendou que coloca-se no site da pastebin então ai esta. http://pastebin.com/EzZemTDJ Vou deixar ela aki mesmo tambem. Então isso fica em Spells/Scripts/buff.lua local tempo = 60 * 1000 -- Tempo, nesse caso esta 60 segundos Lembrando que 1000 = 1 segundo local ml = 5 -- quantos ira aumentar o skill de ML local skillfist = 5 -- quantos ira aumentar o skill de Fist local skillsword = 5 -- quantos ira aumentar o skill de Sword local skillaxe = 5 -- quantos ira aumentar o skill de Axe local skillclub = 5 -- quantos ira aumentar o skill de Club local skilldistance = 5 -- quantos ira aumentar o skill de Distance local skillshield = 5 -- quantos ira aumentar o skill de Shield local health = 30 -- A cada 1 segundo quantos aumentar de vida local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_EFFECT, 30) setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, 0) local condition = createConditionObject(CONDITION_ATTRIBUTES) setConditionParam(condition, CONDITION_PARAM_TICKS, tempo) setConditionParam(condition, CONDITION_PARAM_STAT_MAGICLEVEL, ml) setConditionParam(condition, CONDITION_PARAM_SKILL_FIST, skillfist) setConditionParam(condition, CONDITION_PARAM_SKILL_SWORD, skillsword) setConditionParam(condition, CONDITION_PARAM_SKILL_AXE, skillaxe) setConditionParam(condition, CONDITION_PARAM_SKILL_CLUB, skillclub) setConditionParam(condition, CONDITION_PARAM_SKILL_DISTANCE, skilldistance) setConditionParam(condition, CONDITION_PARAM_SKILL_SHIELD, skillshield) setConditionParam(condition, CONDITION_PARAM_OUTFIT, outfit) setCombatCondition(combat, condition) local condition = createConditionObject(CONDITION_HASTE) setConditionParam(condition, CONDITION_PARAM_SPEED, 250) setConditionParam(condition, CONDITION_PARAM_TICKS, tempo) setConditionParam(condition, CONDITION_PARAM_BUFF, TRUE) setCombatCondition(combat, condition) local condition = createConditionObject(CONDITION_REGENERATION) setConditionParam(condition, CONDITION_PARAM_SUBID, 1) setConditionParam(condition, CONDITION_PARAM_BUFF, TRUE) setConditionParam(condition, CONDITION_PARAM_TICKS, tempo) setConditionParam(condition, CONDITION_PARAM_HEALTHGAIN, health) setConditionParam(condition, CONDITION_PARAM_HEALTHTICKS, 1000) setCombatCondition(combat, condition) function magicEffect2(cid) if (isCreature(cid)) then if (isCreature(cid) and getPlayerStorageValue(cid, 102051) ~= 1) then doSendMagicEffect(getPlayerPosition(cid), 120) else if (isCreature(cid) and k > 0) then setPlayerStorageValue(cid, 102053,0) while (k <= 59) do k = k + 1 stopEvent(vetor2[k]) end end end if (isCreature(cid) and o == 58) then setPlayerStorageValue(cid, 102053,0) end k = k + 1 end --addEvent(print, 10, o) end function onCastSpell(cid, var) if getPlayerStorageValue(cid, 102053) ~= 1 then j = 0 k = 0 setPlayerStorageValue(cid, 102051,0) if isCreature(cid) and getPlayerStorageValue(cid, 102059) ~= 1 then doCombat(cid, combat, var) vetor2 = {} tempo2 = 1 while (tempo2 ~= 150000) do vetor2[j] = addEvent(magicEffect2, tempo2, cid) tempo2 = tempo2 + 1 j = j + 1 end setPlayerStorageValue(cid, 102053,1) -- storage novo, quando = 1 player esta transformado return true else setPlayerStorageValue(cid, 102051,1) doPlayerSendCancel(cid, "Sorry, you can not turn while flying.") end else doPlayerSendCancel(cid, "Sorry, you are buffed.") end end e no caso em xml fica assim: No caso isso fica em Spells/spell.xml <instant name="Testando" words="buff" aggressive="0" lvl="1" mana="40" selftarget="1" exhaustion="1500" script="scripts/teste.lua"> agradeço desde ja a ajuda Editado Junho 24, 2012 por milbradt Link para o comentário https://xtibia.com/forum/topic/188570-bn%C3%A3o-sei-oq-tem-de-errado-nessa-spell-oob/ Compartilhar em outros sites More sharing options...
0 CelinoAndrade 0 Postado Junho 23, 2012 Share Postado Junho 23, 2012 Vá em creaturescripts, xml e antes do returne true adicione: setPlayerStorageValue(cid, 102051, 0) Link para o comentário https://xtibia.com/forum/topic/188570-bn%C3%A3o-sei-oq-tem-de-errado-nessa-spell-oob/#findComment-1283243 Compartilhar em outros sites More sharing options...
0 milbradt 19 Postado Junho 23, 2012 Autor Share Postado Junho 23, 2012 (editado) Valeu ae amigo, vou testar quando chegar do serviço, volto as 19:00 horas e quando voltar ja deixo o REP + ja que ja usei ele e posso usar denovo depois das 17 horas tomare que de certo.. kkkk @edited Agora analizando isso que mostrei não fica em creaturescripts.. e sim em Spells, então na verdade a "spell" parecida com DGZ na verdade tem que ter algo a mais em creaturescripts? Pois minha script nada vai no local de creaturescripts... :X Editado Junho 23, 2012 por milbradt Link para o comentário https://xtibia.com/forum/topic/188570-bn%C3%A3o-sei-oq-tem-de-errado-nessa-spell-oob/#findComment-1283388 Compartilhar em outros sites More sharing options...
0 CelinoAndrade 0 Postado Junho 24, 2012 Share Postado Junho 24, 2012 Olha normalmente pra essas 'Storage"s' darem certo precisam que suas Tag sejam ativadas .. faz assim, posta a Mensagem que o player ver ao Tentar usar a Spell Link para o comentário https://xtibia.com/forum/topic/188570-bn%C3%A3o-sei-oq-tem-de-errado-nessa-spell-oob/#findComment-1283838 Compartilhar em outros sites More sharing options...
0 milbradt 19 Postado Junho 24, 2012 Autor Share Postado Junho 24, 2012 No caso funciona normalmente.. só que tipo.. se vou usar ela novamente aparece essa mensagem: Sorry, you are buffed. que no caso seria uma das ultimas mensagem que aparece no script else doPlayerSendCancel(cid, "Sorry, you are buffed.") end ------------------------------------------------------------------------------------------- Reformulando eh uma SPELL que BUFFA e fica um efeito ao redor do PERSONAGEM ate o BUFF acabar tendeu? ^^ Editei la em cima onde fica localizado o script ^^ Link para o comentário https://xtibia.com/forum/topic/188570-bn%C3%A3o-sei-oq-tem-de-errado-nessa-spell-oob/#findComment-1283968 Compartilhar em outros sites More sharing options...
0 CelinoAndrade 0 Postado Junho 25, 2012 Share Postado Junho 25, 2012 (editado) Olha tente assim: Adicione: setPlayerStorageValue(cid, 102053, 0) em Creaturescripts .. Ou Nessa parte abaixo, setPlayerStorageValue(cid, 102053,1) -- storage novo, quando = 1 player esta transformadoreturn true else Coloque assim: setPlayerStorageValue(cid, 102053,0) -- storage novo, quando = 1 player esta transformadoreturn true else Editado Junho 25, 2012 por CelinoAndrade Link para o comentário https://xtibia.com/forum/topic/188570-bn%C3%A3o-sei-oq-tem-de-errado-nessa-spell-oob/#findComment-1284524 Compartilhar em outros sites More sharing options...
0 jhon992 371 Postado Junho 25, 2012 Share Postado Junho 25, 2012 (editado) Quando fiz essa spell eu tava iniciando em Lua ainda, então resolvi reformular e dar uma adaptada rapidinho pra ti agora. Vai ficar assim: local tempo = 60 -- tempo em segundos. local effect = {27,28,29} -- effect no player, caso queira apenas 1, basta remover os outros numeros. local ml = 5 -- quantos ira aumentar o skill de ML local skillfist = 5 -- quantos ira aumentar o skill de Fist local skillsword = 5 -- quantos ira aumentar o skill de Sword local skillaxe = 5 -- quantos ira aumentar o skill de Axe local skillclub = 5 -- quantos ira aumentar o skill de Club local skilldistance = 5 -- quantos ira aumentar o skill de Distance local skillshield = 5 -- quantos ira aumentar o skill de Shield local health = 30 -- A cada 1 segundo quantos aumentar de vida local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, 0) local condition = createConditionObject(CONDITION_ATTRIBUTES) setConditionParam(condition, CONDITION_PARAM_TICKS, tempo*1000) setConditionParam(condition, CONDITION_PARAM_STAT_MAGICLEVEL, ml) setConditionParam(condition, CONDITION_PARAM_SKILL_FIST, skillfist) setConditionParam(condition, CONDITION_PARAM_SKILL_SWORD, skillsword) setConditionParam(condition, CONDITION_PARAM_SKILL_AXE, skillaxe) setConditionParam(condition, CONDITION_PARAM_SKILL_CLUB, skillclub) setConditionParam(condition, CONDITION_PARAM_SKILL_DISTANCE, skilldistance) setConditionParam(condition, CONDITION_PARAM_SKILL_SHIELD, skillshield) setConditionParam(condition, CONDITION_PARAM_OUTFIT, outfit) setCombatCondition(combat, condition) local condition = createConditionObject(CONDITION_HASTE) setConditionParam(condition, CONDITION_PARAM_SPEED, 250) setConditionParam(condition, CONDITION_PARAM_TICKS, tempo*1000) setConditionParam(condition, CONDITION_PARAM_BUFF, TRUE) setCombatCondition(combat, condition) local condition = createConditionObject(CONDITION_REGENERATION) setConditionParam(condition, CONDITION_PARAM_SUBID, 1) setConditionParam(condition, CONDITION_PARAM_BUFF, TRUE) setConditionParam(condition, CONDITION_PARAM_TICKS, tempo*1000) setConditionParam(condition, CONDITION_PARAM_HEALTHGAIN, health) setConditionParam(condition, CONDITION_PARAM_HEALTHTICKS, 1000) setCombatCondition(combat, condition) function magicEffect3(tempo2,tempo3,cid) if (isCreature(cid)) then if getPlayerStorageValue(cid, 102053) > 0 and getCreatureCondition(cid, CONDITION_REGENERATION, 1) then for i=1, #effect do doSendMagicEffect(getPlayerPosition(cid), effect[i]) end end end end function onCastSpell(cid, var) if getPlayerStorageValue(cid, 102053) ~= 1 or getCreatureCondition(cid, CONDITION_REGENERATION, 1) == false then doCombat(cid, combat, var) tempo2 = 0 while (tempo2 ~= (tempo*1000)) do addEvent(magicEffect3, tempo2, tempo2, tempo*1000, cid) tempo2 = tempo2 + 1000 end setPlayerStorageValue(cid, 102053,1) -- storage verifica transformado, quando = 1 player esta transformado. else doPlayerSendCancel(cid, "Sorry, you are transformed.") end end Editado Junho 25, 2012 por Jhon992 Link para o comentário https://xtibia.com/forum/topic/188570-bn%C3%A3o-sei-oq-tem-de-errado-nessa-spell-oob/#findComment-1284529 Compartilhar em outros sites More sharing options...
0 milbradt 19 Postado Junho 25, 2012 Autor Share Postado Junho 25, 2012 Muito bom mano.. agora sim, esta funcionando normalmente e esta mais facil de configura-la. Aproposito nem sabia que a script era sua ^^ Rep + Vlw ae.. E ja que estou aqui queria fazer uma pergunta, sabe me dizer se tem como mudar o locar do Effect nessa script? ao invés de colocar para o efeito sair em baixo de você ele sair em uma area configurada, tipo... Sou um leigo na parte de scripts mas acredito que o efeito sai em baixo de você apartir desse codigo doSendMagicEffect(getPlayerPosition(cid), effect[i]) Pois bem, queria saber se tem como pegar e modificar para um local que eu queria coloca mais ou menos isso local arr = { [1] = { {0,0,0}, {0,2,1}, {0,0,0} }, Queria assim pq tenho umas SPRITES meio decentralizada, então se tiver como fazer isso me ajudaria muito, tendo em vista que é um efeito pra bonito Link para o comentário https://xtibia.com/forum/topic/188570-bn%C3%A3o-sei-oq-tem-de-errado-nessa-spell-oob/#findComment-1284812 Compartilhar em outros sites More sharing options...
0 jhon992 371 Postado Junho 26, 2012 Share Postado Junho 26, 2012 (editado) Tenta assim, troca essa linha: doSendMagicEffect(getPlayerPosition(cid), effect[i]) Por essas: local position = {x=getPlayerPosition(cid).x+1, y=getPlayerPosition(cid).y, z=getPlayerPosition(cid).z} doSendMagicEffect(position, effect[i]) Editado Junho 26, 2012 por Jhon992 Link para o comentário https://xtibia.com/forum/topic/188570-bn%C3%A3o-sei-oq-tem-de-errado-nessa-spell-oob/#findComment-1284943 Compartilhar em outros sites More sharing options...
0 milbradt 19 Postado Junho 26, 2012 Autor Share Postado Junho 26, 2012 Então manin, tentei substituir isso que você falou, porem não funcionou o efeito.. No caso a Speel Buffou direitinho o personagem mas o effect não ficou saindo em lugar nenhum.. ;S Sabe algumo mais para mim tentar? Link para o comentário https://xtibia.com/forum/topic/188570-bn%C3%A3o-sei-oq-tem-de-errado-nessa-spell-oob/#findComment-1284989 Compartilhar em outros sites More sharing options...
0 jhon992 371 Postado Junho 26, 2012 Share Postado Junho 26, 2012 Tinha feito merda mesmo kk, ta arrumado ali em cima no meu último post. Link para o comentário https://xtibia.com/forum/topic/188570-bn%C3%A3o-sei-oq-tem-de-errado-nessa-spell-oob/#findComment-1284991 Compartilhar em outros sites More sharing options...
0 milbradt 19 Postado Junho 26, 2012 Autor Share Postado Junho 26, 2012 (editado) UuahuHAUha.. agora sim manow... funcionou como eu queria e perfeitamente.. muito muito grato!!! Como eu te dei REP + ontem a noite ainda não posso lhe dar outro.. porem depois que vier do serviço ja estara liberado e te dou o devido rep + como agradeçimento. -------------------- --Edited-- Então CelinoAndrade agora que vi sua mensagem.. vlw por suas tentativas de me ajudar cara! E quanto ao REP+ prometido Jhon992, esta la onde você me auxiliou pela 2 Vez ^^ Editado Junho 27, 2012 por milbradt Link para o comentário https://xtibia.com/forum/topic/188570-bn%C3%A3o-sei-oq-tem-de-errado-nessa-spell-oob/#findComment-1284995 Compartilhar em outros sites More sharing options...
0 Vilden 137 Postado Junho 27, 2012 Share Postado Junho 27, 2012 Dúvida sanada, movido. Obrigado por reportar. Link para o comentário https://xtibia.com/forum/topic/188570-bn%C3%A3o-sei-oq-tem-de-errado-nessa-spell-oob/#findComment-1285578 Compartilhar em outros sites More sharing options...
Pergunta
milbradt 19
Tipo.. quando você a usa essa spell, ela era pra BUFFAR o jogador e ficar saindo um EFEITO nele.
Bom até ai tudo bem, o detalhe é que uso a spell apenas 1 vez e não posso mais usar a mesma =\
Aki esta o Link no site que o Skydangerous recomendou que coloca-se no site da pastebin então ai esta.
http://pastebin.com/EzZemTDJ
Vou deixar ela aki mesmo tambem.
Então isso fica em Spells/Scripts/buff.lua
local tempo = 60 * 1000 -- Tempo, nesse caso esta 60 segundos Lembrando que 1000 = 1 segundo
local ml = 5 -- quantos ira aumentar o skill de ML
local skillfist = 5 -- quantos ira aumentar o skill de Fist
local skillsword = 5 -- quantos ira aumentar o skill de Sword
local skillaxe = 5 -- quantos ira aumentar o skill de Axe
local skillclub = 5 -- quantos ira aumentar o skill de Club
local skilldistance = 5 -- quantos ira aumentar o skill de Distance
local skillshield = 5 -- quantos ira aumentar o skill de Shield
local health = 30 -- A cada 1 segundo quantos aumentar de vida
local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_EFFECT, 30)
setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, 0)
local condition = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(condition, CONDITION_PARAM_TICKS, tempo)
setConditionParam(condition, CONDITION_PARAM_STAT_MAGICLEVEL, ml)
setConditionParam(condition, CONDITION_PARAM_SKILL_FIST, skillfist)
setConditionParam(condition, CONDITION_PARAM_SKILL_SWORD, skillsword)
setConditionParam(condition, CONDITION_PARAM_SKILL_AXE, skillaxe)
setConditionParam(condition, CONDITION_PARAM_SKILL_CLUB, skillclub)
setConditionParam(condition, CONDITION_PARAM_SKILL_DISTANCE, skilldistance)
setConditionParam(condition, CONDITION_PARAM_SKILL_SHIELD, skillshield)
setConditionParam(condition, CONDITION_PARAM_OUTFIT, outfit)
setCombatCondition(combat, condition)
local condition = createConditionObject(CONDITION_HASTE)
setConditionParam(condition, CONDITION_PARAM_SPEED, 250)
setConditionParam(condition, CONDITION_PARAM_TICKS, tempo)
setConditionParam(condition, CONDITION_PARAM_BUFF, TRUE)
setCombatCondition(combat, condition)
local condition = createConditionObject(CONDITION_REGENERATION)
setConditionParam(condition, CONDITION_PARAM_SUBID, 1)
setConditionParam(condition, CONDITION_PARAM_BUFF, TRUE)
setConditionParam(condition, CONDITION_PARAM_TICKS, tempo)
setConditionParam(condition, CONDITION_PARAM_HEALTHGAIN, health)
setConditionParam(condition, CONDITION_PARAM_HEALTHTICKS, 1000)
setCombatCondition(combat, condition)
function magicEffect2(cid)
if (isCreature(cid)) then
if (isCreature(cid) and getPlayerStorageValue(cid, 102051) ~= 1) then
doSendMagicEffect(getPlayerPosition(cid), 120)
else if (isCreature(cid) and k > 0) then
setPlayerStorageValue(cid, 102053,0)
while (k <= 59) do
k = k + 1
stopEvent(vetor2[k])
end
end
end
if (isCreature(cid) and o == 58) then
setPlayerStorageValue(cid, 102053,0)
end
k = k + 1
end
--addEvent(print, 10, o)
end
function onCastSpell(cid, var)
if getPlayerStorageValue(cid, 102053) ~= 1 then
j = 0
k = 0
setPlayerStorageValue(cid, 102051,0)
if isCreature(cid) and getPlayerStorageValue(cid, 102059) ~= 1 then
doCombat(cid, combat, var)
vetor2 = {}
tempo2 = 1
while (tempo2 ~= 150000) do
vetor2[j] = addEvent(magicEffect2, tempo2, cid)
tempo2 = tempo2 + 1
j = j + 1
end
setPlayerStorageValue(cid, 102053,1) -- storage novo, quando = 1 player esta transformado
return true
else
setPlayerStorageValue(cid, 102051,1)
doPlayerSendCancel(cid, "Sorry, you can not turn while flying.")
end
else
doPlayerSendCancel(cid, "Sorry, you are buffed.")
end
end
e no caso em xml fica assim:
No caso isso fica em Spells/spell.xml
<instant name="Testando" words="buff" aggressive="0" lvl="1" mana="40" selftarget="1" exhaustion="1500" script="scripts/teste.lua">
agradeço desde ja a ajuda
Editado por milbradtLink para o comentário
https://xtibia.com/forum/topic/188570-bn%C3%A3o-sei-oq-tem-de-errado-nessa-spell-oob/Compartilhar em outros sites
12 respostass a esta questão
Posts Recomendados