Postado Maio 10, 2016 9 anos Eae galera, estou com um problema em um sistema de Critical HIT que tenho em meu servidor. TFS 1.2 Estava testando ele in-game, quando percebi que o char não estava levando hit de monstros, não perdendo vida, somente mana (com utamovita). Removi a linha do Creaturescripts.xml e voltou a funcionar normal. <event type="healthchange" name="CriticalSystem" script="critical.lua"/> Aqui o script. Spoiler function onHealthChange(creature, attacker, primaryDamage, primaryType, secondaryDamage, secondaryType, origin) if not isPlayer(attacker) then return false end if (attacker:getCriticalLevel() * 3) >= math.random (0, 1000) then if isInArray({ORIGIN_MELEE, ORIGIN_RANGED, ORIGIN_SPELL}, origin) and primaryType ~= COMBAT_HEALING then primaryDamage = primaryDamage + math.ceil(primaryDamage * CRITICAL.PERCENT) attacker:say("CRITICAL!", TALKTYPE_MONSTER_SAY) creature:getPosition():sendMagicEffect(CONST_ME_EXPLOSIONHIT) end end return primaryDamage, primaryType, secondaryDamage, secondaryType end Não sei se o problema é nesse script ou talvez seja outra coisa, mas se alguem puder me ajudar, eu agradeço. :D Editado Maio 10, 2016 9 anos por Ovini (veja o histórico de edições)
Postado Maio 10, 2016 9 anos na linha if not isPlayer(attacker) tenta colocar true no lugar do false GitHub: https://github.com/s3kk Conteúdo: [SERVER] Heromassa[GESIOR] Gesior 2012 modificado por Sekk[GESIOR] Shop Addons & Mounts - TFS 1.x[GESIOR] Outfitter para Characters e Rank[SISTEMA] Castle 24h[TALKACTION] Multi Element Wand[ACTION] Multi Elemental Arrow & Shield[PROGRAMAÇÃO] Compilar TFS 0.4 no Linux[PROGRAMAÇÃO] Compilando TFS 0.4 no MSVC(x64 e x32) [INFRAESTRUTURA] Configuração COMPLETA Google VM + Tibia 11.x
Postado Maio 16, 2016 9 anos function onHealthChange(creature, attacker, primaryDamage, primaryType, secondaryDamage, secondaryType, origin) if attacker then -- is attacker not nil? if attacker:isPlayer() then -- is it a player attacking you? if (attacker:getCriticalLevel() * 3) >= math.random (0, 1000) then if isInArray({ORIGIN_MELEE, ORIGIN_RANGED, ORIGIN_SPELL}, origin) and primaryType ~= COMBAT_HEALING then primaryDamage = primaryDamage + math.ceil(primaryDamage * CRITICAL.PERCENT) attacker:say("CRITICAL!", TALKTYPE_MONSTER_SAY) creature:getPosition():sendMagicEffect(CONST_ME_EXPLOSIONHIT) end end end end return primaryDamage, primaryType, secondaryDamage, secondaryType end Créditos : Codex NG Editado Maio 16, 2016 9 anos por thiagomotta resolvido (veja o histórico de edições)
Participe da conversa
Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.