Ir para conteúdo
  • Cadastre-se

WooX

Héroi
  • Total de itens

    981
  • Registro em

  • Última visita

  • Dias Ganhos

    49

Tudo que WooX postou

  1. Pelas imagens que vi não tem nada de errado, na versão 8.60 sempre foi possivel colocar partes do set nas mãos e no slot da flecha.
  2. local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_EFFECT, 95) setCombatParam(combat, COMBAT_PARAM_TARGETCASTERORTOPMOST, 1) setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, 1) function onCastSpell(cid, var) local min, max = 30000, 40000 doCreatureAddHealth(cid, math.random(min, max)) return doCombat(cid, combat, var) end
  3. O sistema chama-se paperdoll, alguns projetos que nunca saíram do papel desenvolveram algo parecido. A mais de 2 anos atrás eu fiz algumas sprites pra uma equipe que pretendia usar este sistema num servidor atual de tibia 10.x (não lembro exatamente). Me lembro que por ser 10.x eram muitos frames, cheguei a fazer sprites para o crown e demon helmet. Vou postar aqui para você ter 1 ideia de quantos sprites eram necessários. Obs: isso somente para 2 helmets e outfit citizen, imagine combinações de sets inteiros com outfits dif
  4. Agora que fui perceber, eu cometi 1 erro no script anterior, tenta agora. --<globalevent name="rmvpz" interval="3000" event="script" value="rmvpz.lua"/>-- XML function onThink(interval, lastExecution, thinkInterval) local players = getPlayersOnline() for _, pid in ipairs(players) do if getTilePzInfo(getThingPos(pid)) and isPlayerPzLocked(pid) and getPlayerStorageValue(pid, 16700) ~= -1 then doPlayerSetPzLocked(pid, false) doCreatureSetSkullType(pid, 0) end end return true end
  5. Foi o que falei de inicio, mas você preferiu o caminho mais curto, agora não vou voltar atrás. Para remover em todos os casos basta usar o script anterior sem a verificação da storage.
  6. Então era pra funcionar, tenta assim. --<globalevent name="rmvpz" interval="3000" event="script" value="rmvpz.lua"/>-- XML function onThink(interval, lastExecution, thinkInterval) local players = getPlayersOnline() for _, pid in ipairs(players) do if getTilePzInfo(getThingPos(pid)) and isPlayerPzLocked(pid) and getPlayerStorageValue(cid, 16700) > 0 then doPlayerSetPzLocked(pid, false) doCreatureSetSkullType(pid, 0) end end return true end Se não funcionar, quando termina o evento ele não está atualizando o valor da storage.
  7. Confirma pra mim se a storage do seu evento é mesmo 16700.
  8. Fiz a alteração, agora sim, só vai remover pz de players que estão dentro do evento. --<globalevent name="rmvpz" interval="3000" event="script" value="rmvpz.lua"/>-- XML function onThink(interval, lastExecution, thinkInterval) local players = getPlayersOnline() for _, pid in ipairs(players) do if getTilePzInfo(getThingPos(pid)) and isPlayerPzLocked(pid) and getPlayerStorageValue(cid, 16700) ~= -1 then doPlayerSetPzLocked(pid, false) doCreatureSetSkullType(pid, 0) end end return true end
  9. Ele faz 1 verificação em todos players online que estão em protect zone, verifica se está com pz, se tiver remove, se não tiver, nada é feito. --<globalevent name="rmvpz" interval="3000" event="script" value="rmvpz.lua"/>-- XML function onThink(interval, lastExecution, thinkInterval) local players = getPlayersOnline() for _, pid in ipairs(players) do if getTilePzInfo(getThingPos(pid)) and isPlayerPzLocked(pid) and getPlayerStorageValue(cid, 16700) ~= -1 then doPlayerSetPzLocked(pid, false) doCreatureSetSkullType(pid, 0) end end return true end --[[ Capture
  10. Acredito que não, mas por precaução deixa o tempo de execução do script alto, entre 10~15 segundos. Se preferir também posso fazer ele tirar o pz somente de quem está no evento, da maneira como está ele está removendo de todos os players online. (quem estiver pz em proctect zone ele remove).
  11. Foi outro erro que cometi, editei o post anterior, tenta novamente.
  12. Cometi 1 erro bobo, tenta agora. --<globalevent name="rmvpz" interval="3000" event="script" value="rmvpz.lua"/>-- XML function onThink(interval, lastExecution, thinkInterval) local players = getPlayersOnline() for _, pid in ipairs(players) do if getTilePzInfo(getThingPos(pid)) then doPlayerSetPzLocked(pid, false) end end return true end
  13. Não, tem que ficar em suas devidas pastas mesmo, Globalevents e Movements. No caso deste script do erro, Globalevents.
  14. Esse erro ta dizendo que não conseguiu carregar o script, verifica se o nome do arquivo na pasta está igual ao do XML.
  15. GlobalEvents --<globalevent name="rmvpz" interval="3000" event="script" value="rmvpz.lua"/>-- XML function onThink(interval, lastExecution, thinkInterval) local players = getPlayersOnline() for _, pid in ipairs(players) do if getTilePzInfo(getThingPos(pid) then doPlayerSetPzLocked(cid, false) end end return true end Movements --<movevent type="StepIn" actionid="10990" event="script" value="rmvpz.lua"/>-- XML function onStepIn(cid, item, position, fromPosition) if item.actionid == 10990 then if getTilePzInfo(getThingPos(cid)) and isPlayerPzLocked(cid
  16. Não tem como fazer isso sem alterações na source, enquanto o alvo estiver com poison o atacante vai estar pz. Vou fazer 2 scripts para remover o pz caso o player esteja em protect zone, já já posto aqui.
  17. Para fazer isso terei que usar onThink o que pode causar aumento do uso de cpu, a solução correta seria não pegar pz na área do evento, mas se ainda assim quiser só dizer que eu faço.
  18. --[[ Capture The Flag System Author: Maxwell Denisson(MaXwEllDeN) Version: 2.0 Contact: [email protected] ]] local CTF = CTF_LIB function onStatsChange(cid, attacker, type, combat, value) if getPlayerStorageValue(cid, 16700) == getPlayerStorageValue(attacker, 16700) then doPlayerSetPzLocked(cid, false) doPlayerSetPzLocked(attacker, false) end if getPlayerStorageValue(cid, 16700) ~= -1 and type == 1 and getCreatureHealth(cid) - value <= 0 then if getPlayerStorageValue(cid, 16702) ~= -1 then CTF.returnFlag(cid, 1) end if isPlayerPzLo
  19. --[[ Capture The Flag System Author: Maxwell Denisson(MaXwEllDeN) Version: 2.0 Contact: [email protected] ]] local CTF = CTF_LIB function onStatsChange(cid, attacker, type, combat, value) if getPlayerStorageValue(cid, 16700) ~= -1 and type == 1 and getCreatureHealth(cid) - value <= 0 then if getPlayerStorageValue(cid, 16702) ~= -1 then CTF.returnFlag(cid, 1) end if isPlayerPzLocked(cid) then doPlayerSetPzLocked(cid, false) end doCreatureAddHealth(cid, getCreatureMaxHealth(cid)) doCreatureAddMana(cid, getCreatureMaxMa
  20. --[[ Capture The Flag System Author: Maxwell Denisson(MaXwEllDeN) Version: 2.0 Contact: [email protected] ]] local CTF = CTF_LIB function onStatsChange(cid, attacker, type, combat, value) if getPlayerStorageValue(cid, 16700) ~= -1 and type == 1 and getCreatureHealth(cid) - value <= 0 then if getPlayerStorageValue(cid, 16702) ~= -1 then CTF.returnFlag(cid, 1) end if isPlayerPzLocked(cid) then doPlayerSetPzLocked(cid, false) end doCreatureAddHealth(cid, getCreatureMaxHealth(cid)) doCreatureAddMana(cid, getCreatureMaxMa
  21. Não tem necessidade de fazer isso, pode ser feito um simples script para remover o pz caso o player esteja em protect zone, acredito que isso deva resolver seu problema. Posso fazer o script pra você, mas é estranho que o player morra e não perca pz, então na verdade ele não está morrendo mas somente tendo a vida restaurada e sendo teleportado para o templo do evento. Verifica se tem algum script com a função onPrepareDeath e posta aqui.
  22. local Exausted = 5 -- Tempos em segundos function onUse(cid, item, fromPosition, itemEx, toPosition) if exhaustion.get(cid, 1800) then doPlayerSendCancel(cid, "Wait".. Exausted .."seconds to use again.") return true end if getPlayerLevel(cid) >= 1 then doCreatureSay(cid, "Aaaah...", TALKTYPE_ORANGE_1) doCreatureAddHealth(cid, math.random(1,5)) doCreatureAddMana(cid, math.random(1,5)) doSendMagicEffect(fromPosition, 12) return true else doCreatureSay(cid, "Only lvl 1 or higher.", TALKTYPE_ORANGE_1) end end
  23. function onUse(cid, item, fromPosition, target, toPosition, isHotkey) if isDruid(cid) then if item.uid == 7528 then PlayerLearnInstantSpell(cid, "Gran Nature") doPlayerRemoveItem(cid, item.uid, 1) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Voce ganhou a nova magia") end else doPlayerSendCancel(cid, "Voce nao e druida") end return true end
  24. function onUse(cid, item, fromPosition, target, toPosition, isHotkey) if (getPlayerVocation(cid) == 2) or (getPlayerVocation(cid) == 6) then if item.uid == 7528 then PlayerLearnInstantSpell(cid, "Gran Nature") doPlayerRemoveItem(cid, item.uid, 1) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Voce ganhou a nova magia") end return true else doPlayerSendCancel(cid, "Voce nao e druida") end return true end
×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo