Ir para conteúdo

bepokemon

Visconde
  • Total de itens

    273
  • Registro em

  • Última visita

  • Dias Ganhos

    4

Tudo que bepokemon postou

  1. Introdução Entonces, criei esta função para quem tem problemas ao remover items por causa da stackpos. Com essa função fica mais fácil remover tais items. Você pode escolher o ID do item a ser removido, a posição em que ele será removido, a quantidade de items que serão removidos de lá e o limite de stackpos que serão checadas. Code function doRemoveItemByIdAndPos(itemid, pos, count, limit) -- By Byerne XTibia local itempos, c, max = pos, 0, limit or 255 for stackpos=1,max do itempos.stackpos, i = stackpos, getThingFromPos(itempos) if i.itemid == itemid then doRemoveItem(i.uid, i.type) c = c+1 if (count and count == c) then break end end end end Identado no pastebin.
  2. Seu script dá problema quando alguém coloca alguma coisa embaixo dá posição do portal, depois cria um portal e remove. Tente utilizar este aqui: function doRemoveItemByIdAndPos(itemid, pos, count) local itempos, c = pos, 0 for stackpos=1,255 do itempos.stackpos, i = stackpos, getThingFromPos(itempos) if i.itemid == itemid then doRemoveItem(i.uid, i.type) if (count and count == c) then break end end end end function onUse(cid, item, frompos, item2, topos) local itempos, itemid, i, newpos = {x=000, y=000, z=0}, 1387, getThingfromPos(itempos), {x=000, y=000, z=0} if item.itemid == 1945 then doRemoveItemByIdAndPos(itemid, itempos) elseif item.itemid == 1946 then doCreateTeleport(itemid, newpos, itempos) end doTransformItem(item.uid,item.itemid == 1945 and 1946 or 1945) return true end Ou a versão identada no pastebin.
  3. Talkaction de trocar 100 Super Coins por 1 Pedra: Criar e remover o pet "Safira" ao utilizar a pedra: O monstro, Safira (sem a outfit que deseja, coloquei de um Uissinho *.*):
  4. Stonecracker: Tiquanda's Revenge: The Many: Esmeralda: Shardhead: Hide: The Snapper: The Noxious Spawn: Leviathan: Vixi, desculpa a bagunça ._.
  5. bepokemon

    Ajuda , Vip System

    Só clicar em abaixo do post da pessoa que quer reputar.
  6. Oque você quer é um tanto quanto complexo, se ninguém te ajudou até agora é porque não pôde. Mas isto não te dá o direito de fazer flood. Vou negativar cada flood que fizer a partir deste.
  7. Ia continuar grandão também ._. Fiquei sem paciência e mudei tudo logo. HAHAHA Já concertei, tente denovo.
  8. Só dando uma reduzida no seu script: function onThink(cid, interval) local skull, sex = {["male"] = 5, ["female"] = 4}, string.find(getCreatureName(cid), "Male") and "male" or "female" if string.find(getCreatureName(cid), "Nidoran") then doCreatureSetSkullType(cid, skull[sex]) else if getCreatureSkullType(cid) < 4 then doCreatureSetSkullType(cid, math.random(4,5)) end end return true end
  9. Desculpe mas tive que refazer seu script ._. Não aguentei. Aqui está ele: local keywordHandler = KeywordHandler:new() local npcHandler = NpcHandler:new(keywordHandler) NpcSystem.parseParameters(npcHandler) local talkState = {} function onCreatureAppear(cid) npcHandler:onCreatureAppear(cid) end function onCreatureDisappear(cid) npcHandler:onCreatureDisappear(cid) end function onCreatureSay(cid, type, msg) npcHandler:onCreatureSay(cid, type, msg) end function onThink() npcHandler:onThink() end function creatureSayCallback(cid, type, msg) if(not npcHandler:isFocused(cid)) then return false end local talkUser = NPCHANDLER_CONVbehavior == CONVERSATION_DEFAULT and 0 or cid local startVoc = (getPlayerVocation(cid) - ((getPlayerPromotionLevel(cid))*4)) if msgcontains(msg, 'promotion') then if getPlayerPromotionLevel(cid) ~= 1 then selfSay("Não posso te promover.", cid) else selfSay("Deseja virar um {VIP "..getVocationInfo(startVoc).name.."} por {40.000 gold coins} ({40k})?", cid) talkState[talkUser] = 1 end elseif(msgcontains(msg, 'yes') and talkState[talkUser] == 1) then if doPlayerRemoveMoney(cid, 40000) then doPlayerSetPromotionLevel(cid, 2) selfSay("Parabéns, você agora é um "..getVocationInfo(getPlayerVocation(cid)).name..".", cid) else selfSay("Você não tem dinheiro suficiente.", cid) end talkState[talkUser] = 0 end return true end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new()) E o link identado no pastebin.
  10. bepokemon

    Ajuda , Vip System

    Não, vai ter que mudar no script também.
  11. Seu código está com um erro estranho ' function onSay(cid, words, param) local item, type = {12596,1}, MESSAGE_INFO_DESCR if (not param or param == '') then return true, doPlayerSendCancel(cid, "Command param required.") end if not doPlayerRemoveItem(cid, item[1], item[2]) then strocnt = item[2] == 1 and getItemArticleById(item[1]) or item[2] return true, doPlayerSendCancel(cid, "You need at least "..strocnt.." "..getItemNameById(item[1]).." to broadcast a message.") end for _, pid in ipairs(getPlayersOnline()) do if getPlayerGroupId(cid) > getPlayerGroupId(pid) then doPlayerSendTextMessage(pid, type, getPlayerName(cid)..' ['..getPlayerLevel(cid)..']: '..param) end return true end doPlayerSendTextMessage(cid, 18, words..' '..param) return TRUE end Link identado no pastebin.
  12. bepokemon

    Bem Fodinha!

    login.lua: registerCreatureEvent(cid, "deathArena") creaturescripts.xml: <event type="preparedeath" name="deathArena" event="script" value="deathArena.lua"/> Sobre as posições, você tem que pegar a posição /\< da arena, e a posição \/> da arena.
  13. Bom, como você postou duas vezes vou fechar este tópico. Espero que não aconteça novamente.
  14. bepokemon

    Bem Fodinha!

    Como eu fiz sem testar, qualquer erro poste aqui ou me mande por PM. Obrigado pelo elogio.
  15. bepokemon

    Bem Fodinha!

    function onPrepareDeath(cid, lastHitKiller, mostDamageKiller) local fromPos, toPos, leaveBody = {x=x,y=y,z=z},{x=x,y=y,z=z}, true if isInRange(getThingPos(cid), fromPos, toPos) then if leaveBody then local body, heorshe = doCreateItemEx(getThingPos(cid), getPlayerSex(cid) == 0 and 3064 or 3058), getPlayerSex(cid) == 0 and "She" or "He" doSetItemSpecialDescription(body.uid, "You recognize "..getPlayerName(cid)..". "..heorshe.." was killed by "..getCreatureName(lastHitKiller)..".") end doPlayerAddItem(lastHitKiller, 11192, 10) if doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid))) then doCreatureAddHealth(cid, getCreatureMaxHealth(cid) - getCreatureHealth(cid), TRUE) doSendMagicEffect(getThingPos(cid), 10) end return false end return true end Tem que editar as posições: a primeira é a parte de cima da esquerda da "arena", a segunda a parte de baixo da direita da "arena". Aqui está o link do pastebin para melhor visualização.
  16. Coloquei lá a parte, só editar em Price quanto quer que seja cobrado em Gold Coins. De qualquer forma aqui está o link no pastebin dele atualizado.
  17. Bug na distro. @Pergunta Você usa o sistema de bônus por addon? ._.
  18. Substitui seu bloco pelo meu bloco completo.
  19. Teste a função porque fiz correndo ._. Só colocar o nome do NPC em 'name'. function doRemoveNpcByName(name) -- Byerne XTibia return (isCreature(getCreatureByName(name)) and not isPlayer(getCreatureByName(name))) and doRemoveCreature(getCreatureByName(name)) or false end O bloco completo ficaria assim: function doRemoveNpcByName(name) -- Byerne XTibia return (isCreature(getCreatureByName(name)) and not isPlayer(getCreatureByName(name))) and doRemoveCreature(getCreatureByName(name)) or false end elseif msgcontains(msg, 'coin') then if getPlayerStorageValue(cid, 6007) == -1 then doPlayerAddItem(cid,2160,100) selfSay('As you wish.', cid) doRemoveNpcByName("Shenron") setGlobalStorageValue(6010, -1) setGlobalStorageValue(1999, -1) setPlayerStorageValue(cid, 6007, 1) else selfSay("I can't do this wish for you.", cid) end Identado no Pastebin.
  20. bepokemon

    Account Manager

    Algumas distros não conseguem dar Reload em Creature Scripts.
  21. bepokemon

    Account Manager

    É em creaturescripts. Coloque isto dentro do login.lua em qualquer lugar depois de: function onLogin(cid) E antes de: return TRUE end
  22. local combat1 = createCombatObject() setCombatParam(combat1, COMBAT_PARAM_TYPE, 512) setCombatParam(combat1, COMBAT_PARAM_EFFECT, 33) setCombatParam(combat1, COMBAT_PARAM_DISTANCEEFFECT, 255) setCombatFormula(combat1, COMBAT_FORMULA_LEVELMAGIC, -100, -100, -600, -600) local area1 = {{3}} setCombatArea(combat1, createCombatArea(area1)) function onCastSpell(cid, var) return doCombat(cid, combat1, var) end
  23. Os outfits 'miscs' são do PxG. Não poste ripping aqui. ._.'
  24. bepokemon

    Earth Lost

    MUITOS bugs, MUITA auto-border e muitas coisas que poderiam ser refeitas para fazerem mais sentido. Tirando isso gostei muito das casinhas dentro da montanha.
  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...