Ir para conteúdo

fefuxd

Membro
  • Registro em

  • Última visita

Histórico de Curtidas

  1. Negativo
    fefuxd recebeu reputação de Vodkart em monstro morre todos players que atacaram recebem uma recompensa   
    da uma olhada nesse tópico
     
    # link removido #
  2. Gostei
    fefuxd recebeu reputação de Micheel15 em monstro morre todos players que atacaram recebem uma recompensa   
    da uma olhada nesse tópico
     
    # link removido #
  3. Gostei
    fefuxd recebeu reputação de robi123 em (Resolvido)Exhaust de magia UE interferindo no exhaust de runas   
    sim
  4. Gostei
    fefuxd recebeu reputação de Vodkart em (Resolvido)Colocar mais de um item no bau de donate   
    resolveu até meu problema que eu tava tendo de colocar itens com quantidades maiores (count) 
  5. Gostei
    fefuxd deu reputação a Vodkart em (Resolvido)Colocar mais de um item no bau de donate   
    agora você pode adicionar quantos items quiser, só colocar {itemid, amount}
     
    exemplo:
     
    items = {{2173,1},{2160,10}}
     
    ai para adicionar mais itens ficaria:
     
    items = {{2173,1},{2160,10},{2494,1}}
     
  6. Gostei
    fefuxd deu reputação a Vodkart em (Resolvido)Colocar mais de um item no bau de donate   
    local coin = 6541 local lever = { [12323] = {amount = 8, items = {{2122,1}}}, [12324] = {amount = 2, items = {{9930,1}}}, [12325] = {amount = 2, items = {{2169,1}}}, [12326] = {amount = 10, items = {{2122,1},{2169,1},{9930,1}}}, [12327] = {amount = 2, items = {{7440,1}}}, [12328] = {amount = 2, items = {{7443,1}}}, [12329] = {amount = 2, items = {{7439,1}}} } function getItemsLevers(cid, items) local backpack = doPlayerAddItem(cid, 1999, 1) -- backpackID for _, i_i in ipairs(items) do local item, amount = i_i[1],i_i[2] if isItemStackable(item) or amount == 1 then doAddContainerItem(backpack, item, amount) else for i = 1, amount do doAddContainerItem(backpack, item, 1) end end end end function getItemsFromList(items) local str = '' if table.maxn(items) > 0 then for i = 1, table.maxn(items) do str = str .. items[i][2] .. ' ' .. getItemNameById(items[i][1]) if i ~= table.maxn(items) then str = str .. ', ' end end end return str end function onUse(cid,item,fromPosition,itemEx,toPosition) if not lever[item.actionid] then return true end local var = lever[item.actionid] if not doPlayerRemoveItem(cid,coin, var.amount) then return doPlayerSendTextMessage(cid,MESSAGE_INFO_DESCR, "Você Precisa De "..var.amount.." " ..getItemNameById(coin)) end getItemsLevers(cid, var.items) doPlayerSendTextMessage(cid,22,"Você Acaba De Adquirir: " .. getItemsFromList(var.items)) doSendMagicEffect(getCreaturePosition(cid), math.random(28,30)) doTransformItem(item.uid, item.itemid == 1740 and 1740 or 1740) return true end  
  7. Gostei
    fefuxd deu reputação a Wakon em (Resolvido)Exhaust de magia UE interferindo no exhaust de runas   
    local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_ENERGYDAMAGE) setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_BIGCLOUDS) setAttackFormula(combat, COMBAT_FORMULA_LEVELMAGIC, 8, 8, 10, 12) local area = createCombatArea(AREA_CROSS6X6) setCombatArea(combat, area) function onCastSpell(cid, var) if exhaustion.check(cid, 3200) then doPlayerSendCancel(cid, "You are exhausted.") doSendMagicEffect(getPlayerPosition(cid), CONST_ME_POFF) return false end exhaustion.set(cid, 3200, 10) return doCombat(cid, combat, var) end  
  8. Gostei
    fefuxd deu reputação a DukeeH em (Resolvido)Exhaust de magia UE interferindo no exhaust de runas   
    Opa, não tinha visto que respondeu, lembra de citar a minha resposta, ai sou avisado que você respondeu aqui no post.
     
    O spells.lua fica assim:
    <instant name="Rage of the Skies" words="exevo gran mas vis" lvl="55" mana="650" selftarget="1" prem="1" exhaustion="0" needlearn="0" event="script" value="attack/rage of the skies.lua"> <vocation id="1"/> <vocation id="5"/> </instant> O Rage of the skies.lua fica assim:
    local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_ENERGYDAMAGE) setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_BIGCLOUDS) setAttackFormula(combat, COMBAT_FORMULA_LEVELMAGIC, 8, 8, 10, 12) local area = createCombatArea(AREA_CROSS6X6) setCombatArea(combat, area) function onCastSpell(cid, var) if getPlayerStorageValue(cid, 3200) <= 0 then setPlayerStorageValue(cid, 3200, os.time()+10000) return doCombat(cid, combat, var) else doPlayerSendCancel(cid, "You are exhausted.") end return TRUE end  
    Agora vou explicar o que mudei pra que você possa fazer nas outras magias que quiser e adaptá-las.
    A única parte que mudei foi a parte do onCastSpell.
    Você adiciona "if getPlayerStorageValue(cid, 3200) <= 0 then" para checar se o storage 3200 esta igual ou menor a 0.
    Embaixo você adiciona "setPlayerStorageValue(cid, 3200, os.time()+10000)" que caso o storage acima esteja igual ou menor a 0 ele adiciona 10s de exhaust.
    Então o return doCombat (que é o que faz a magia sair, já estava no script)
    O else serve como "se não" como uma condição contraria ao storage 3200 ser maior que 0 (faz menos de 10 segundos que o player soltou a magia)
    Então vem um doPlayerSendCancel que vai falar que o player esta em exhausted caso tenha soltado a magia a menos de 10 segundos.
    o end pra fechar aquele primeiro if (getPlayerStorageValue).
    E o return true que não sei se é necessário.
     
    Então, espero que tenha entendido o que fiz, assim você tem liberdade para fazer como quiser com as outras spell.
    Caso queira que o exevo gran mas vis só exhauste com o mas flam, faça essa alteração no mas vis e mas flam, usando o storage 3200 nos dois. (Mesmo storage, mesmo exhaust)
    Se você quiser que por exemplo, dê pra soltar exori vis, exevo gran mas vis e sd ao mesmo tempo, use o storage 3200 no mas vis, o 3201 no exori vis e a sd pode manter o exhaust do spells.xml

Informação Importante

Confirmação de Termo