Ir para conteúdo

Kuro o Shiniga

Colaborador
  • Total de itens

    271
  • Registro em

  • Última visita

  • Dias Ganhos

    12

Tudo que Kuro o Shiniga postou

  1. Qual a versão do seu servidor? se for TFS 1.0+ tem como você fazer com modal Window
  2. Usando um item no altar, deixei comentado as configurações do codigo, dai tu so configura ai <action itemid="2033" script="other/abc.lua"/> local mConfig = { mTime = 5000, -- tempo que vai sumir o item e o altar mAltar = {1485, 1484}, -- IDS do altar mItemID = 2160, -- ID do item que vai aparecer na posicao X mQTDE = 100, -- quantidade de item que vai aparecer na posição X mItem = 2033, -- item que vai usar em cima do altar mPoss = {{x = 77, y = 38, z = 7}, {x = 78, y = 38, z = 7}}, -- Primeira posição é a do altar e a segunda a do item que vai aparecer } function onUse(cid, item, fromPosition, itemEx, toPosition) if item.itemid == mConfig.mItem and itemEx.itemid == mConfig.mAltar[1] then doRemoveItem(item.uid, 1) doTransformItem(itemEx.uid, mConfig.mAltar[2]) doSendMagicEffect(getThingPos(itemEx.uid), 3) doCreateItem(mConfig.mItemID, mConfig.mQTDE, mConfig.mPoss[2]) doSendMagicEffect(mConfig.mPoss[2], 10) addEvent(function() mItem = getTileItemById(mConfig.mPoss[1],mConfig.mAltar[2]).uid mItemTwo = getTileItemById(mConfig.mPoss[2],mConfig.mItemID).uid if mItem > 0 then doTransformItem(mItem, mConfig.mAltar[1]) doSendMagicEffect(getThingPos(mItem), 2) if mItemTwo > 0 then doRemoveItem(mItemTwo, mConfig.mQTDE) end end end, mConfig.mTime) else doSendMagicEffect(getThingPos(cid), 2) end end
  3. function onStepIn(cid, item, position, fromPosition) x = math.random (1,89) if x == 89 then doCreateMonster("Demon", fromPosition) doSendMagicEffect(getThingPos(cid), 10) else doSendMagicEffect(getThingPos(cid), 2) end end
  4. Ah, muda aqui então doPlayerRemoveMoney(cid, config.custo) vai ter que usar doPlayerRemoveItem(cid, config.custo) no custo você coloca o id do item
  5. local config = { tempo = 30, -- tempo de espera para jogar custo = 100000, -- custo para jogar str = 21887, -- nao mexa } custo = 100000, -- custo para jogar
  6. muda aqui {x=82 ,y=339, z=7, id = 2160, count = 100}, -- poss de cada item, id e quantidade em id você coloca o codigo do item
  7. Que eu me lembre é só tu ir em itens.xml procurar por amulet of loss : <item id="2173" article="an" name="amulet of loss"> <attribute key="weight" value="420" /> <attribute key="slotType" value="necklace" /> <attribute key="charges" value="1" /> <attribute key="preventDrop" value="1" /> </item> Tem essa linha "Charges" e "PreventDrop", modifica elas, coloca um valor grande, acredito que vai resolver seu problema
  8. Kuro o Shiniga

    Bug Surf

    posta o sistema, sem ele não tem como saber o que é
  9. Esse eu que desenvolvi, a ideia pode ser a mesma o script não =]
  10. Sistema simples de roleta, o player clica na alavanca e um efeito corre em modo random por todos os itens da roleta, em qual item o efeito parar o player recebe o item! Actions : function onUse(cid, item) local possitem = { {x=82 ,y=339, z=7, id = 2160, count = 100}, -- poss de cada item, id e quantidade {x=83 ,y=339, z=7, id = 5903, count = 1}, -- poss de cada item, id e quantidade {x=84 ,y=339, z=7, id = 2494, count = 1}, -- poss de cada item, id e quantidade {x=85 ,y=339, z=7, id = 5878, count = 100}, -- poss de cada item, id e quantidade {x=86 ,y=339, z=7, id = 5786, count = 1}, -- poss de cada item, id e quantidade {x=87 ,y=339, z=7, id = 8306, count = 1}, -- poss de cada item, id e quantidade {x=88 ,y=339, z=7, id = 9931, count = 1}, -- poss de cada item, id e quantidade } local config = { tempo = 30, -- tempo de espera para jogar custo = 100000, -- custo para jogar str = 21887, -- nao mexa } local size = #possitem if getPlayerStorageValue(cid, config.str) < os.time() and getPlayerMoney(cid) >= config.custo then doPlayerRemoveMoney(cid, config.custo) setPlayerStorageValue(cid, config.str, os.time() + config.tempo) doSendMagicEffect(getThingPos(cid), 12) for i = 1, size do index = math.random(#possitem) sorteio = possitem[index] addEvent(doSendMagicEffect, 1000+400*(i-1), sorteio, 39) table.remove(possitem, index) end addEvent(doPlayerAddItem, 1000+400*size, cid, sorteio.id, sorteio.count) else doPlayerSendTextMessage(cid, 22, "Espere 30 segundos para jogar novamente, e tenha 100000gps em sua bp!") doSendMagicEffect(getThingPos(cid), 2) end end
  11. function onUse(cid, item, fromPosition, itemEx, toPosition) local config = { tempo = 300, outfit = {lookType = 70}, -- looktype do outfit effect = 12, msg = "Você ganhou um outfit!" } doSetCreatureOutfit(cid, config.outfit, config.tempo * 1000) doSendMagicEffect(getThingPos(cid), config.effect) doPlayerSendTextMessage(cid, 22, config.msg) doRemoveItem(item.uid, 1) end
  12. Esse sistema não é tão simples de ser desenvolvido, dificilmente alguém vai desenvolver e postar aqui para você, sugiro aprender a programar ou comprar o sistema pronto.
  13. Sim, vai ter que entender os erros na sua distro, e tentar ir arrumando um por um, primeiro tem que entender os erros, tentar descobrir o que esta causando isso
  14. Ele pede para você declarar a posição ai aonde você alterou, mas tambem pede para você declarar uma cidade aqui : /*List of cities, declare by using city ID and name eg. 2=>"Eternia City" etc.*/ $config['cities'] = array(1=>'Saffron'); Vê se aonde o player esta nascendo bate com a posição de "Saffron", se bater você coloca o nome da cidade que tu quer que eles nascem ai
  15. posta o script do site, me mostra aonde você alterou para mudar a poss do player
  16. Cara eu fiz um para você, porem estou com pouco tempo acabei configurando poucos itens na roleta, e não configurei as alavancas, testei o sistema em um item qualquer, se foi tu que fez esse sistema que tu postou, vai ser facil configurar a alavanca e algo a mais que você queira. function onUse(cid, item) local possitem = { {x=81 ,y=339, z=7, id = 2160, count = 10}, -- poss de cada item, id e quantidade {x=82 ,y=339, z=7, id = 5903, count = 1}, -- poss de cada item, id e quantidade {x=83 ,y=339, z=7, id = 2160, count = 10}, -- poss de cada item, id e quantidade {x=84 ,y=339, z=7, id = 5878, count = 100}, -- poss de cada item, id e quantidade {x=85 ,y=339, z=7, id = 5786, count = 1}, -- poss de cada item, id e quantidade {x=86 ,y=339, z=7, id = 8306, count = 100} -- poss de cada item, id e quantidade } local config = { tempo = 30, -- tempo de espera para jogar custo = 100000, -- custo para jogar str = 21887, -- nao mexa } local size = #possitem if getPlayerStorageValue(cid, config.str) < os.time() and getPlayerMoney(cid) >= config.custo then doPlayerRemoveMoney(cid, config.custo) setPlayerStorageValue(cid, config.str, os.time() + config.tempo) doSendMagicEffect(getThingPos(cid), 12) for i = 1, size do index = math.random(#possitem) sorteio = possitem[index] addEvent(doSendMagicEffect, 1000+400*(i-1), sorteio, 39) table.remove(possitem, index) end addEvent(doPlayerAddItem, 1000+400*size, cid, sorteio.id, sorteio.count) else doPlayerSendTextMessage(cid, 22, "Espere 30 segundos para jogar novamente, e tenha 100000gps em sua bp!") doSendMagicEffect(getThingPos(cid), 2) end end O sistema percorre por todas as posições da tabela em random, ele não segue a ordem da tabela, porque se não ele iria ganhar o mesmo item sempre, o efeito corre por todas as posições mas aleatoriamente, quando o efeito parar de andar ele vai checar a posição que parou, e ver na tabela qual é o item dessa posição e adicionar ao player você so precisa adicionar pelo mapa editor os itens no chão, ver o item da posição e adicionar pelo mapa editor, para o player saber o que ele vai ganhar espero que de certo, abraço !
  17. item que vai summonar o monstro: local summon = { ["Dragon"] = {1}, } local config = { tempo = 3, -- exausted para usar o item storage = 28992, } function onUse(cid, item) sm = getCreatureSummons(cid) if #sm > 0 then doSendMagicEffect(getThingPos(cid), 2) doPlayerSendTextMessage(cid, 25, "Seu monstro ainda esta vivo!") return true end for l, m in pairs(summon) do if getPlayerStorageValue(cid, config.storage) < os.time() and sm then setPlayerStorageValue(cid, config.storage, os.time() + config.tempo) doConvinceCreature(cid, doSummonCreature(l, getCreaturePosition(cid))) doCreatureSay(cid, "Vai Dragon!!", 1) doSendMagicEffect(getThingPos(cid), 12) break else doPlayerSendTextMessage(cid, 25, "Espere para usar novamente!") doSendMagicEffect(getThingPos(cid), 2) end end end Item que vai remover o monstro : function onUse(cid, item) sm = getCreatureSummons(cid) if sm then for n, p in ipairs(sm) do doRemoveCreature(p) doSendMagicEffect(getThingPos(cid), 28) doCreatureSay(cid, "Volta Dragon!!", 1) doPlayerSendTextMessage(cid, 25, "Seu monstro foi removido!") end return true end end Actions.xml <action itemid="item_id" script="remover.lua"/> <action itemid="item_id" script="criar.lua"/>
  18. Já existe um script do Killua aqui no forum que tu ganha um coração quando mata um player, é so trocar o id do item por gold Vá em data/creaturescripts/scripts/heartnb.lua e adicione: function onKill(cid, target, lastHitKiller) if(isPlayer(target) and isPlayer(lastHitKiller)) then doPlayerSendTextMessage(cid, 22, "Parabens, voce matou o jogador "..getCreatureName(target).." e ganhou gold") function additem() local aditi = doPlayerAddItem(lastHitKiller, 2160, 50) end addEvent(additem, 1000) end end Depois adicione a seguinte TAG em data/creaturescripts/creaturescripts.xml: <event type="kill" name="heartnb" event="script" value="heartnb.lua"/>
  19. Kuro o Shiniga

    Remover monstro

    Primeiro tu tem que verificar se o player tem um summon, ai sim remover. summon = getCreatureSummons(cid) Eu desenvolvi um sistema igual você deseja para um cara aqui do forum, se quiser da uma olhada, da pra tu ter uma base, ou utilizar o mesmo ! https://www.xtibia.com/forum/topic/249076-pet-system Qualquer duvida estamos ai, abraço !
  20. https://www.xtibia.com/forum/topic/149445-criando-seu-cliente-proprio/
  • Quem Está Navegando   0 membros estão online

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