Postado Maio 5, 2014 11 anos Ótima ideia, xD Só uma otimização no código xD -"Supra Omnes Lux Lucis" - Acima de todos brilha a Luz -
Postado Maio 5, 2014 11 anos Autor muito legal esse outro modo que você utilizou, realmente, com alguns laços e umas tables o script fica infinitas vezes melhor de se mexer.. obrigado pela ajuda max.. só vou corrigir umas coisinhas que acho que vc esqueceu: --[[Script made 100% by Night Wolf and Nogard do not remove the fucking credits or I may kill you and practice necrofily with your filthy body]] --condição que irá adicionar local gelo_condition = createConditionObject(CONDITION_PARALYZE) setConditionParam(gelo_condition, CONDITION_PARAM_TICKS, 10000) setConditionFormula(gelo_condition, -0.9, 0, -0.9, 0) local frigo = createConditionObject(CONDITION_FREEZING) setConditionParam(frigo, CONDITION_PARAM_DELAYED, 1) addDamageCondition(frigo, 5, 2000, -300) addDamageCondition(frigo, 5, 2000, -200) addDamageCondition(frigo, 5, 2000, -100) local config = { percent = 5, -- se vc quiser 20%, coloque 5 pois 1/5 = 0,2 (20%) valorvida = 300, -- quanto deve ser o valor minimo de vida a perder para executar o script itemid = 7897, -- id do item que deverá ser equipado para ativar o gelo place = 4, -- posição que o item deve estar para funcionar, cheque na tabela abaixo set = { [CONST_SLOT_HEAD] = 7902, -- Helmet [CONST_SLOT_NECKLACE] = 7888, -- Amuleto [CONST_SLOT_LEGS] = 7896, -- Legs [CONST_SLOT_FEET] = 7892, -- Boots }, -- Tabela de slots possíveis -- CONST_SLOT_HEAD (1) = helmet -- CONST_SLOT_NECKLACE (2) = necklace slot (amulet of loss etc.) -- CONST_SLOT_BACKPACK (3) = backpack, bag -- CONST_SLOT_ARMOR (4) = armor -- CONST_SLOT_LEFT (5) = left hand (its really hand placed >> (right page on screen)) -- CONST_SLOT_RIGHT (6) = right hand (its really hand placed << (left page on screen)) -- CONST_SLOT_LEGS (7) = legs -- CONST_SLOT_FEET (8) = boots -- CONST_SLOT_RING (9) = ring slot -- CONST_SLOT_AMMO (10) = ammo slot (arrows etc.) } function canEffect(pos, pz, proj) -- Night Wolf based on Nord if getTileThingByPos({x = pos.x, y = pos.y, z = pos.z, stackpos = 0}).itemid == 0 then return false end if getTilePzInfo(pos) and not pz then return false end local n = not proj and 3 or 2 for i = 1, 255 do pos.stackpos = i local tile = getTileThingByPos(pos) if tile.itemid ~= 0 and not isCreature(tile.uid) then if hasProperty(tile.uid, n) or hasProperty(tile.uid, 7) then return false end end end return true end local function isUsingSet(cid, set) for slot, item_id in pairs(set) do if getPlayerSlotItem(cid, slot).itemid ~= item_id then return false end end return true end local predef_effect_on = { {x = 0, y = -2}, {x = 0, y = 2}, {x = -2, y = 0}, {x = 2, y = 0}, {x = -2, y = -1}, {x = 2, y = -1}, {x = 2, y = 1}, {x = -2, y = 1}, {x = -1, y = -2}, {x = 1, y = -2}, {x = 1, y = 2}, {x = -1, y = 2}, } local predef_condition_on = { --- predef_effect_on {x = 0, y = -2}, {x = 0, y = 2}, {x = -2, y = 0}, {x = 2, y = 0}, {x = -2, y = -1}, {x = 2, y = -1}, {x = 2, y = 1}, {x = -2, y = 1}, {x = -1, y = -2}, {x = 1, y = -2}, {x = 1, y = 2}, {x = -1, y = 2}, {x = 0, y = -1}, {x = 0, y = 1}, {x = -1, y = 0}, {x = 1, y = 0}, {x = -1, y = 1}, {x = -1, y = -1}, {x = 1, y = -1}, {x = 1, y = 1}, } function onStatsChange(cid, attacker, type, combat, value) if getPlayerSlotItem(cid, config.place).itemid == config.itemid then if type == STATSCHANGE_HEALTHLOSS and value >= config.valorvida then if math.random (1, config.percent) == 1 then local pos = getPlayerPosition(cid) for _, add_pos in ipairs(predef_condition_on) do local cPos = {x = pos.x + add_pos.x, y = pos.y + add_pos.y, z = pos.z} local mob = getTopCreature(cPos).uid doAddCondition(mob, gelo_condition) if isUsingSet(cid, config.set) then if isMonster(mob) and canEffect(cPos) then doAddCondition(mob, frigo) end doSendMagicEffect(cPos, 43) end end for _, add_pos in ipairs(predef_effect_on) do local ePos = {x = pos.x + add_pos.x, y = pos.y + add_pos.y, z = pos.z} if canEffect(ePos) then doSendMagicEffect(ePos, 41) end end end end end return true end Editado Maio 5, 2014 11 anos por xWhiteWolf (veja o histórico de edições) Todos os meus trabalhos importantes estão na seção "Sobre mim" no meu perfil; Dá uma passada lá! "Há três caminhos para o fracasso: não ensinar o que se sabe, não praticar o que se ensina, e não perguntar o que se ignora." - São Beda (obg ao @Beeny por fazer essa linda sign <3)
Postado Maio 7, 2014 11 anos n da erro nenhum só que nao vai ta ligado? n sai o gelinho da glacier quando vc leva os hit la.... obs: levei mais de 300 hits e n saiu.
Postado Maio 9, 2014 11 anos Autor vc colocou tudo certo, inclusive no login. lua o register event? Lembra que é 20% de chance de ativar ao levar 300+ de dano então vc tem que levar + de 300 várias vezes.. ou vc aumenta a chance ou vc diminui a vida necessária.. tudo isso no começo do script! Todos os meus trabalhos importantes estão na seção "Sobre mim" no meu perfil; Dá uma passada lá! "Há três caminhos para o fracasso: não ensinar o que se sabe, não praticar o que se ensina, e não perguntar o que se ignora." - São Beda (obg ao @Beeny por fazer essa linda sign <3)
Postado Maio 13, 2014 11 anos vc colocou tudo certo, inclusive no login. lua o register event? Lembra que é 20% de chance de ativar ao levar 300+ de dano então vc tem que levar + de 300 várias vezes.. ou vc aumenta a chance ou vc diminui a vida necessária.. tudo isso no começo do script! s coloquei só que não sai o gelo na glacier.
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.