Postado Maio 26, 2013 11 anos [23:23:39.305] [Error - CreatureScript Interface] [23:23:39.305] local slotPos = {CONST_SLOT_NECKLACE, CONST_SLOT_FEET, CONST_SLOT_RING} [23:23:39.305] [23:23:39.305] function onStatsChange(cid, attacker, type, combat, value) [23:23:39.305] local reflectPercent = 0 [23:23:39.305] local dmg = value [23:23:39.305] local playerPos = getCreaturePosition(cid) [23:23:39.305] local attackerPos = getCreaturePosition(attacker) [23:23:39.305] for i = 1, #slotPos do [23:23:39.305] if getPlayerSlotItem(cid, slotPos).uid > 1 then [23:23:39.305] if getItemReflectPercent(getPlayerSlotItem(cid, slotPos).uid) then [23:23:39.305] reflectPercent = reflectPercent + getItemReflectPercent(getPlayerSlotItem(cid, slotPos).uid) [23:23:39.305] end [23:23:39.305] end [23:23:39.305] end [23:23:39.305] [23:23:39.305] if reflectPercent > 0 then [23:23:39.305] dmg = math.ceil(-value*((100-reflectPercent)/100)) [23:23:39.305] if (dmg < 0) then [23:23:39.305] doCreatureAddHealth(cid, dmg) [23:23:39.305] doSendAnimatedText(playerPos, -dmg, COLOR_RED) [23:23:39.305] doSendMagicEffect(playerPos, 0) [23:23:39.305] else [23:23:39.305] doSendMagicEffect(playerPos, 3) [23:23:39.305] end [23:23:39.305] dmg = math.ceil(-value*(reflectPercent/100)) [23:23:39.305] if (dmg < 0) then [23:23:39.305] doCreatureAddHealth(attacker, dmg) [23:23:39.306] doSendAnimatedText(attackerPos, -dmg, COLOR_RED) [23:23:39.306] doSendDistanceShoot(playerPos, attackerPos, CONST_ANI_SMALLHOLY) [23:23:39.306] end [23:23:39.306] else [23:23:39.306] return true [23:23:39.306] end [23:23:39.306] end:onStatsChange [23:23:39.306] Description: [23:23:39.306] (luaGetThingPosition) Thing not found
Postado Julho 6, 2013 11 anos Autor A todos que estão com dúvidas sobre o sistema: ¹ - O arquivo reflectSystem.xml irá para a pasta MOD. ² - O arquivo reflectLib.lua irá para a pasta LIB. Para adicionar um item, você precisa do comando que está no posto e ele deverá ser adicionado junto com um NPC ou dentro de uma quest. Se procurar no fórum irá encontrar um exemplo. Citar Ao abrir um baú especial você irá ganhar um anel especial que possui esse atributo. Ao entregar algum item ou realizar alguma missão ou qualquer derivado o NPC irá dar o item. LINK do Tópico: clique aqui. Atenciosamente, Aluccard.
Postado Novembro 5, 2013 11 anos preciso de ajuda urgente tipo assim a funçao doPlayerAddReflectedItem(cid,itemid,percent) tenho q colocar aond? pf ajuda ae
Postado Novembro 5, 2013 11 anos Juuuan, você reviveu o tópico, cuidado. Quanto a dúvida, essa função você pode utilizar em lib como explicado neste tópico: function getItemReflectPercent(itemuid) return getItemAttribute(itemuid, "reflectPercent") end function doPlayerAddReflectedItem(cid, itemid, percent) local item = doPlayerAddItem(cid, itemid) doItemSetAttribute(item, "description", "[Reflect: "..percent.."%]") doItemSetAttribute(item, "reflectPercent", percent) end
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.