quando tu usa <!-- -->
está transformando tudo que esta compreendido dentro em comentarios, que nao sao interpretados, ou seja voce simplesmente tira ele do game, agora tem que ver qual erro ta dando no console, tira o comentario e manda o erro
quando tu usa <!-- -->
está transformando tudo que esta compreendido dentro em comentarios, que nao sao interpretados, ou seja voce simplesmente tira ele do game, agora tem que ver qual erro ta dando no console, tira o comentario e manda o erro
ele não da erro nenhum apenas para de funcionar
@EDIT sim sim já sabia que era os comentários, ponhei porque se não o server não abre
Editado Março 17 por vagnho
ele não da erro nenhum apenas para de funcionar
@EDIT sim sim já sabia que era os comentários, ponhei porque se não o server não abre
Use essa funções para produzir spells fora da pasta spells:
doAreaCombatHealth(cid, type, pos, area, min, max, effect) doTargetCombatHealth(cid, target, type, min, max, effect) doAreaCombatMana(cid, pos, area, min, max, effect) doTargetCombatMana(cid, target, min, max, effect) doAreaCombatCondition(cid, pos, area, condition, effect) doTargetCombatCondition(cid, target, condition, effect) doAreaCombatDispel(cid, pos, area, type, effect) doTargetCombatDispel(cid, target, type, effect)
ficaria assim:
local SQUARE1X1 = {
{1, 1, 1},
{1, 3, 1},
{1, 1, 1}
}
local min, max = 200, 220
local armor_id = 7897
local chance = 100
function onStatsChange(cid, attacker, type, combat, value)
if not isPlayer(cid) then
return true
end
if value >= 1 and type == STATSCHANGE_HEALTHLOSS then
if getPlayerSlotItem(cid, CONST_SLOT_ARMOR).itemid == armor_id then
local random = math.random(100)
if random <= chance then
doAreaCombatHealth(cid, COMBAT_ICEDAMAGE, getCreaturePosition(cid), SQUARE1X1, min, max, CONST_ME_ICEATTACK)
return true
end
end
end
return true
end
Adicionei o healthLoss para funcionar apenas para perda de vida, faz mas sentido a armadura tem que revidar perdas, e do jeito que estava ela ativaria tambem para ganhos de vida e mana, não incluir mana, se quiser o faça, a variavel dela é: STATSCHANGE_MANALOSS
Você disse ali ficaria assim:
então ponhei o script n deu erro mais ele n sai o gelo tenho que fazer o attack ou está pronto?
tem que registrar a creature script no cid, la no login, da uma olhada no login.lua que vai ver como funfa
tu basicamente vai usar a função registerCreatureEvent(cid, "eventname") o eventname tu vai pegar da tag do xml que tu fez la em creaturescripts.xml, fui pra facul mais tarde volto, flws
já está registrada tudo mas não vai nem erro ...
@EDIT
como faço para colocar uma conta
{
lookType = getCreatureOutfit(cid).lookType,
lookHead = getCreatureOutfit(cid).lookHead, aqui contar + 19 - 19 + 19 - 19 e ficar repetindo.
lookBody = getCreatureOutfit(cid).lookBody, aqui contar + 19 - 19 + 19 - 19 e ficar repetindo.
lookLegs = getCreatureOutfit(cid).lookLegs, aqui contar + 19 - 19 + 19 - 19 e ficar repetindo.
lookFeet = getCreatureOutfit(cid).lookFeet, aqui contar + 19 - 19 + 19 - 19 e ficar repetindo.
lookAddons = getCreatureOutfit(cid).lookAddons
}
Editado Março 18 por vagnho
já está registrada tudo mas não vai nem erro ...
@EDIT
como faço para colocar uma conta
{
lookType = getCreatureOutfit(cid).lookType,
lookHead = getCreatureOutfit(cid).lookHead, aqui contar + 19 - 19 + 19 - 19 e ficar repetindo.
lookBody = getCreatureOutfit(cid).lookBody, aqui contar + 19 - 19 + 19 - 19 e ficar repetindo.
lookLegs = getCreatureOutfit(cid).lookLegs, aqui contar + 19 - 19 + 19 - 19 e ficar repetindo.
lookFeet = getCreatureOutfit(cid).lookFeet, aqui contar + 19 - 19 + 19 - 19 e ficar repetindo.
lookAddons = getCreatureOutfit(cid).lookAddons
}
somar e subtrair 19 nas cores do outfit alternadamente?
Exemplo feet = 13 ele vai somar + 19 e vai vai voltar ao 13 ou diminiur 19 como quiser de todos head body.. o Killua tentou mais teve que sair
Editado Março 18 por vagnho
Exemplo feet = 13 ele vai somar + 19 e vai vai voltar ao 13 ou diminiur 19 como quiser de todos head body.. o Killua tentou mais teve que sair
se me disser onde vai usar fica mais facil aplicar, eu fiz um exemplo meio gambiarra, acho que vai ser um pouco dificil de intender
function onUse(cid, item)
local outfit = getCreatureOutfit(cid)
local fator = 19
local time = os.time() + 10
local changed = false
local function recursive(delay, cid, fator, changed, outfit, time)
if time > os.time() then
doCreatureChangeOutfit(cid, swapOutfitColor(fator, changed, outfit))
changed = not changed
print(delay, cid,fator, changed, outfit)
addEvent(recursive, delay, delay, cid,fator, changed, outfit, time)
end
end
recursive(1000, cid, fator, changed, outfit, time)
return true
end
function swapOutfitColor(factor, sum, outfit)
-- factor: (number) fator de soma/subtração
-- sum: (bolean) booleano que define se o fator deve ser somado ou subtraido
-- outfit: (table) tabela de outfit
outfit.lookHead = outfit.lookHead + (sum and factor or -factor)
outfit.lookLegs = outfit.lookLegs + (sum and factor or -factor)
outfit.lookBody = outfit.lookBody + (sum and factor or -factor)
outfit.lookFeet = outfit.lookFeet + (sum and factor or -factor)
return outfit
end
Tem zilhoes de parametros na função recursive, mas na realidade so precisariam mesmo de alguns: delay, cid, changed e factor
delay que é o tempo que ela vai se repetir, sendo que ele pode ser declarado ate dentro da função;
cid creature id, é necessario pra poder executar funções que usam ele
changed variavel booleana usada pra permutar, ela define se deve somar ou subtrair
e factor que e o valor a ser somado/subtraido
Então desculpe não ter entrado antes tive que formatar meu pc e só fui pegar hj...
aqui vou postar o script que tenho, é o seguinte eu quero que quando o player pegar certo storage ele fique piscando a gran aura que muitos pedem...
eu já tenho ela feita está funcionando mais tem uns pequenos erros na soma eu queria ajuda nisso..
script aque \/
Então desculpe não ter entrado antes tive que formatar meu pc e só fui pegar hj...
aqui vou postar o script que tenho, é o seguinte eu quero que quando o player pegar certo storage ele fique piscando a gran aura que muitos pedem...
eu já tenho ela feita está funcionando mais tem uns pequenos erros na soma eu queria ajuda nisso..
Foi somente um erro logico no seu script, voce soma 19 e subtrai logo em seguida, obviamente voce nao altera nada quando faz isso '-' n = n + 19 - 19, ou seja n = n kk
function changeOutfit
local events = {}
function newColor(n)
if n >= 132 then
n = n - 19
else
n = n + 19
end
return n
end
function changeOutfit(cid)
local sec = 0.5
local temp = getCreatureOutfit(cid)
if type(temp) == "number" then
return true
end
local outfit = {
lookType=temp.lookType,
lookHead=newColor(temp.lookHead),
lookBody=newColor(temp.lookBody),
lookLegs=newColor(temp.lookLegs),
lookFeet=newColor(temp.lookFeet),
lookAddons = temp.lookAddons
}
doSetCreatureOutfit(cid, outfit, sec)
local event = addEvent(changeOutfit, 3.0*sec*450, cid)
events[cid] = event
return true
end
function onLogin(cid)
local storage = getPlayerStorageValue(cid, 13340)
if storage == 1 then
local event = addEvent(changeOutfit, 0, cid)
events[cid] = event
end
return TRUE
end
function onLogout(cid)
if events[cid] then
stopEvent(events[cid])
end
return TRUE
end
Da pra mudar bastante coisa, principalmente se a função doSetCreatureOutfit trabalhar com miliseconds, mas acho que e com segundos entao deixei da forma que esta ai mesmo que nao ta ruim nao
então acho que estou errando na logica porque se for mair que 132 ele diminui agora está certo mais a cor preta se for 114 ela tem que diminuir eu ponhei assim if >= 132 or 114 then n = n - 19 dai se o player estiver com a cor 0 ele não muda nada e as que pisca não tenho certeza mais quase que ela pisca 3 cores
Editado Março 24 por vagnho
nao entendi bulhufas que tu disse
fala de forma mais claro de que cores o outfit deve variar
as cores devem somar + 19 exemplo 0 + vai para o 19 e volta para o 0 acontece que a cor numero 114 e algumas outras elas tem que voltar - 19 e não ta acontecendo isso, seria todas as cores.. me diz como edita 1 que eu consigo fazer as outras (:
Editado Março 24 por vagnho
info
Grupo: Campones
Registrado: 20/01/13
Posts: 27
Reputação: 0
Char no Tibia: No Have