Ir para conteúdo

alexpaimel

Membro
  • Registro em

  • Última visita

Histórico de Curtidas

  1. Curtir
    alexpaimel deu reputação a MatteusDeli em (Resolvido)[PEDIDO] Puxar alavanca e surgir monsters   
    @juvelino 
    position_lobby = { -- Posição da sala no formato quadrado x1 = {x=174,y=61,z=7}, x2 = {x=180,y=67,z=7} } summons = { [1] = { monster= "Demon", pos= {x = 174 ,y = 61,z = 7}}, [2] = { monster= "Demon", pos={x = 180,y = 67,z = 7}}, --[3] = {monster = "Morgaroth", pos = {x= 181, y= 55, z= 7}}, } mensagemBroadcast = "Tem um time upando nas ruínas" function onUse(cid, item, fromPosition, itemEx, toPosition) local monsters_in_lobby = {} for posX=position_lobby.x1.x, position_lobby.x2.x do for posY=position_lobby.x1.y, position_lobby.x2.y do local newPos = {x=posX,y=posY,z=7, stackpos=253} local monsters = getTopCreature(newPos).uid if (isMonster(monsters)) then if (monsters > 0) then table.insert(monsters_in_lobby, monsters) end end end end if (#monsters_in_lobby == 0) then for i=1, #summons do doCreateMonster(summons[i].monster, summons[i].pos) end SetSwitch(item) doBroadcastMessage(mensagemBroadcast) else doPlayerSendCancel(cid, "Voce tem que matar todos os demons.") end return true end function SetSwitch(item) if (item.itemid == 1945) then doTransformItem(item.uid, item.itemid+1) end if (item.itemid == 1946) then doTransformItem(item.uid, item.itemid-1) end end  
  2. Curtir
    alexpaimel deu reputação a MatteusDeli em (Resolvido)Boosted Creature   
    @alexpaimel Eu testei no TFS 0.4 pode ser que no OTX não tenha algumas functions usadas no script, deve ser por isso que não esta aumentando a exp e o loot. Tenta dar uma testada em algum server TFS
  3. Curtir
    alexpaimel deu reputação a Storm em Deixar Item Infinito   
    @alexpaimel 
     
     
  4. Curtir
    alexpaimel recebeu reputação de ikaroangelo21 em ESCOLHER CAVE POR ALAVANCA E MOSTRAR MINUTOS E SEGUNDOS NO PISO.   
    Amigo, não é 100% da forma que deseja.. porém é 80%. Segue.

    data/actions/actions.xml

    data/actions/scripts
    Crie um arquivo com o nome do script

    É um sistema de hunt exclusiva por alavanca, o sistema remove X itens da BP do Jogador e ele tem acesso a cave, durante 1h30. Caso outro player clique la alavanca, avisará que já tem um membro dentro dela e faltam Xh + Xmin + Xsec para acabar. Ou que mesmo caso o player não esteja dentro dela, a cave possui um dono e ele pode voltar durante seu tempo.

    O script já está autoexplicativo, você consegue ler e configurar.
  5. Curtir
    alexpaimel deu reputação a Vodkart em Soya master npc bugado   
    vc modificou algo na lib? valor, item, etc? se sim, posta ela aqui...
  6. Curtir
    alexpaimel deu reputação a Vodkart em Soya master npc bugado   
    com certeza o erro está na lib do npc, na hora de copiar deve ter feito algo errado...
     
     
    me envia a lib do npc que vc esta usando.
  7. Curtir
    alexpaimel recebeu reputação de Vodkart em Soya master npc bugado   
    Alguem pode ajudar?
  8. Gostei
    alexpaimel deu reputação a olokomeu em Erro amuleto charge   
    Realmente na epoca quebrei muita cabeça nisso. Consegui fazendo Shop pelo xml do npc. Adicionei seus itens na Loja, faz os testes ai:
     
    Na pasta data/npc -> Cria um arquivo Ghost.xml, poem:
     
    Obs: As cargas estão em negrito respeitando maximo que está configurado no seu item.xml
     
    Depois cria um arquivo ghost.lua, na pasta data/npc/script  e poem:
     
     
    RME ele respeita as Cargas originais que no game o Glacier vem com 200 charges.
  9. Gostei
    alexpaimel deu reputação a zipter98 em (Resolvido)Remover pedra, alavanca+iten   
    local config = {     wall = {         time = 5,                      --Tempo, em minutos, para a parede reaparecer.         id = xxx,                      --ID da wall.         pos = {x = x, y = y, z = z},   --Posição da wall.     },     items = {         {{x = x, y = y, z = z}, itemid},        --{{posição que o item deve estar}, itemid},         {{x = x, y = y, z = z}, itemid},         {{x = x, y = y, z = z}, itemid},         {{x = x, y = y, z = z}, itemid},         {{x = x, y = y, z = z}, itemid},     }, } function onUse(cid)     local wall = getTileItemById(config.wall.pos, config.wall.id).uid     if wall < 1 then         return doPlayerSendCancel(cid, "The wall is already openned.")     end     for _, item in pairs(config.items) do         if getTileItemById(item[1], item[2]).uid < 1 then             return doPlayerSendCancel(cid, "One or more items are missing or aren't in the correct position.")         end     end     doRemoveItem(wall)     addEvent(function()         doCreateItem(config.wall.id, 1, config.wall.pos)     end, config.wall.time * 60 * 1000)     return true end
  10. Gostei
    alexpaimel deu reputação a p e o p l e em [PEDIDO] Permissao de Quest tfs 1.0   
    Isso vai da um trabalho da nado ;x a da yalahar só tirar o ACTIONID que tem na porta MAGIC no subsolo
  11. Gostei
    alexpaimel deu reputação a Adriano SwaTT em (Resolvido)[ERRO] Não da o item na quantidade   
    Tente assim:
     

    local ids = {8306} -- ID do item que ganhará 10x  local qtdd = 10 -- Quantidade de items ganhará dos declarados acima   function onUse(cid, item, frompos, item2, topos)     if item.uid == 1621 then         queststatus = getPlayerStorageValue(cid,1621)         if queststatus == -1 then             doPlayerSendTextMessage(cid,22,"Voce ganhou seu premio!.")             doPlayerAddItem(cid,2160,400)             doPlayerAddItem(cid,11388,1)             setPlayerStorageValue(cid,1621,1)                         if #ids == 1 then                 for i = 1, qtdd do                     doPlayerAddItem(cid, ids[1], i)                 end             else                 for x = 1, #ids do                     for i = 1, qtdd do                         doPlayerAddItem(cid, ids[x], i)                     end                 end             end         else             doPlayerSendTextMessage(cid,22,"Voce ja pegou o bonus")         end     else         return false     end   return true end  
    Não testei.
    Boa sorte.
  12. Gostei
    alexpaimel deu reputação a Caronte em [AJUDA] Unique ID que resete bau de quest todos os dias   
    Aqui deu 10...
    não sei o que você ta fazendo...
  13. Gostei
    alexpaimel deu reputação a Caronte em [AJUDA] Unique ID que resete bau de quest todos os dias   
    Ahh... 
    seu item, não pode agrupar..., editei o script pra se adequar...
    local t = { storage = 35350, -- Só mexa se necessário. temp = 24, -- Tempo em horas. reward = {[2160] = 10, -- [ID do ITEM] = QUANTIDADE [8306] = 10, }, } function onUse(cid, item, fromPos, itemEx, toPos) if getPlayerStorageValue(cid, t.storage) < os.time() then for i, v in pairs(t.reward) do doPlayerSendTextMessage(cid, 25, "Você encontrou um "..getItemNameById(i)..".") for l = 1, v do doPlayerAddItem(cid, i, 1) end end setPlayerStorageValue(cid, t.storage, os.time() + t.temp * 60 * 60) else doPlayerSendTextMessage(cid, 25, "Você precisa esperar ".. getPlayerStorageValue(cid, t.storage) - os.time() .." segundos para usar novamente.") end return true end
  14. Gostei
    alexpaimel deu reputação a Caronte em [AJUDA] Unique ID que resete bau de quest todos os dias   
    Aqui caiu normalmente, veja a capacidade do player, se dá para receber a quantidade de item, se tem alguma coisa que impeça ele de receber, manda o erro que dá na distro...
  15. Gostei
    alexpaimel deu reputação a Caronte em [AJUDA] Unique ID que resete bau de quest todos os dias   
    Como está o script ?
  16. Gostei
    alexpaimel deu reputação a Caronte em [AJUDA] Unique ID que resete bau de quest todos os dias   
    local t = { storage = 35350, -- Só mexa se necessário. temp = 24, -- Tempo em horas. reward = {[2160] = 10, -- [ID do ITEM] = QUANTIDADE [2161] = 1, }, } function onUse(cid, item, fromPos, itemEx, toPos) if getPlayerStorageValue(cid, t.storage) < os.time() then for i, v in pairs(t.reward) do doPlayerSendTextMessage(cid, 25, "Você encontrou um "..getItemNameById(i)..".") doPlayerAddItem(cid, i, v) end setPlayerStorageValue(cid, t.storage, os.time() + t.temp * 60 * 60) else doPlayerSendTextMessage(cid, 25, "Você precisa esperar ".. getPlayerStorageValue(cid, t.storage) - os.time() .." segundos para usar novamente.") end return true end Só copiar e colar quantas vezes quiser
    " [2160] = 10, "
  17. Gostei
    alexpaimel deu reputação a 1027929 em [BUG] Distro erro   
    ------- Script by: Adriano Swatt ---- local condition_infight = createConditionObject(CONDITION_INFIGHT) setConditionParam(condition_infight, CONDITION_PARAM_TICKS, 8000) local gstrg = 12129 -- Não Mexa, Storage de Controle Item Global. local gstrg_control = 12130 -- Não Mexa, Storage de Controle Jogo em Execução. local istrg = {12131, 12132, 12133} -- Não Mexa, Storage de Itens. local items = { [0] = {0}, -- NEUTRO [1] = {2160}, -- ID do ITEM 1 [2] = {2140}, -- ID do ITEM 2 [3] = {8976}, -- ID do ITEM 3 [4] = {9002}, -- ID do ITEM 4 [5] = {5809}, -- ID do ITEM 5 [6] = {8266}, -- ID do ITEM 6 [7] = {5808}, -- ID do ITEM 7 [8] = {8983}, -- ID do ITEM 8 [9] = {8980}, -- ID do ITEM 9 [10] = {8979}, --ID do ITEM 10 [11] = {0} -- NEUTRO } local qtdd = 10 -- Quantidade de Itens a Sortear // Não precisa apagar as demais linhas de configuração acima. local valor = {2160, 20} -- ID da Moeda pra Jogar, Quantidade (preço) local comb1 = {2160, 50} -- ID , Quantidade, para quem acertar 1 item da combinação local comb2 = {2160, 250} -- ID , Quantidade, para quem acertar 2 item da combinação local comb3 = {2160, 500} -- ID , Quantidade, para quem acertar todos itens da combinação + o prêmio configurado acima local premio = {10309, 1} -- ID do Prêmio, Quantidade (que o player ganhará ao acertar os 3 itens) local iluck_pos = {x=159, y=43, z=6} -- Posição onde fica a amostra do item da sorte local pos = {{x=160, y=43, z=6}, {x=161, y=43, z=6}, {x=162, y=43, z=6}} -- Posições onde os itens sorteados aparecerão local effect = 26 -- Efeito na hora de selecionar o item da sorte local eff = 30 -- Efeito ao criar os itens na mesa (hora do sorteio) local reff = 29 -- Efeito ao remover itens da mesa (ao finalizar) -------- FIM DAS CONFIGURAÇÕES -------- function onUse(cid, item, frompos, item2, topos) local dir = getPlayerLookDir(cid) local gget = getGlobalStorageValue(gstrg) local gnumb = items[gget] local gnumba = items[gget + 1] local gnumbs = items[gget - 1] if gnumb then if dir == WEST or dir == EAST then -- Caso não esteja em posição de jogar. doPlayerSendTextMessage(cid, 18, "Para jogar, siga as dicas abaixo: \n Para escolher o item da sorte, vire-se para baixo e clique na alavanca até selecioná-lo. \n Para jogar, após ter selecionado o item da sorte, vire-se para cima e puxe novamente a alavanca.") elseif dir == NORTH then -- Posição de Jogar if gget ~= 0 then if getGlobalStorageValue(gstrg_control) < 1 then if getPlayerItemCount(cid, valor[1]) >= valor[2] then math1 = math.random(1, qtdd) math2 = math.random(1, qtdd) math3 = math.random(1, qtdd) doPlayerRemoveItem(cid, valor[1], valor[2]) mayNotMove(cid, true) doAddCondition(cid, condition_infight) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Máquina em funcionamento, aguarde.") setGlobalStorageValue(gstrg_control, 1) --- Criando itens doSendMagicEffect(pos[1], eff) doCreateItem(items[math1][1], pos[1]) setGlobalStorageValue(istrg[1], items[math1][1]) addEvent(doSendMagicEffect, 1000, pos[2], eff) addEvent(doCreateItem, 1000, items[math2][1], pos[2]) setGlobalStorageValue(istrg[2], items[math2][1]) addEvent(doSendMagicEffect, 2000, pos[3], eff) addEvent(doCreateItem, 2000, items[math3][1], pos[3]) setGlobalStorageValue(istrg[3], items[math3][1]) --- Checando Itens if gnumbs[1] == getGlobalStorageValue(istrg[1]) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Parabéns, você já acertou o primeiro item da combinação.") setPlayerStorageValue(cid, gstrg, (getPlayerStorageValue(cid, gstrg) + 1)) else doPlayerSendTextMessage(cid, 18, "Que pena, já perdeu na primeira chance.") end if gnumbs[1] == getGlobalStorageValue(istrg[2]) then addEvent(doPlayerSendTextMessage, 1000, cid, MESSAGE_STATUS_CONSOLE_BLUE, "Parabéns, você acertou o segundo item da combinação.") setPlayerStorageValue(cid, gstrg, (getPlayerStorageValue(cid, gstrg) + 1)) else addEvent(doPlayerSendTextMessage, 1000, cid, 18, "Que pena, perdeu na segunda chance.") end if gnumbs[1] == getGlobalStorageValue(istrg[3]) then addEvent(doPlayerSendTextMessage, 2000, cid, MESSAGE_STATUS_CONSOLE_BLUE, "Parabéns, você acertou o terceiro item da combinação.") setPlayerStorageValue(cid, gstrg, (getPlayerStorageValue(cid, gstrg) + 1)) else addEvent(doPlayerSendTextMessage, 2000, cid, 18, "Que pena, perdeu na terceira chance.") end addEvent(function() if (getTileItemById(pos[z], getGlobalStorageValue(istrg[z])).uid) > 0 then for z = 1, 3 do doRemoveItem(getTileItemById(pos[z], getGlobalStorageValue(istrg[z])).uid, 1) doSendMagicEffect(pos[z], reff) end end mayNotMove(cid, false) setGlobalStorageValue(gstrg_control, 0) addEvent(CassPremio, 500, cid) end, 5000) --- Fim Checagem else doPlayerSendCancel(cid, "Você precisa de "..valor[2].." "..getItemNameById(valor[1]).." para jogar.") end else doPlayerSendCancel(cid, "Precisa esperar o jogo finalizar para jogar novamente.") end else doPlayerSendCancel(cid, "Primeiro selecione o item de sorte para poder jogar.") end elseif dir == SOUTH then -- Posição de Selecionar Item da Sorte if getGlobalStorageValue(gstrg_control) < 1 then if gget <= 0 then doCreateItem(gnumba[1], 1, iluck_pos) doSendMagicEffect(iluck_pos, effect) doPlayerSendCancel(cid, "Você selecionou o "..getItemNameById(gnumba[1]).." como seu item da sorte.") setGlobalStorageValue(gstrg, 2) elseif gget >= 2 and gget < (qtdd + 1) then if getTileItemById(iluck_pos, gnumbs[1]).uid > 0 then doRemoveItem(getTileItemById(iluck_pos, gnumbs[1]).uid, 1) end doCreateItem(gnumb[1], 1, iluck_pos) doSendMagicEffect(iluck_pos, effect) doPlayerSendCancel(cid, "Você selecionou o "..getItemNameById(gnumb[1]).." como seu item da sorte.") setGlobalStorageValue(gstrg, (gget + 1)) elseif gget >= (qtdd + 1) then if getTileItemById(iluck_pos, gnumbs[1]).uid > 0 then doRemoveItem(getTileItemById(iluck_pos, gnumbs[1]).uid, 1) end doSendMagicEffect(iluck_pos, effect) doPlayerSendCancel(cid, "Você resetou os itens.") setGlobalStorageValue(gstrg, 0) end else doPlayerSendCancel(cid, "Precisa esperar o jogo finalizar para selecionar outro item da sorte.") end end else doPlayerSendCancel(cid, "Você ativou o Cassino Slots.") setGlobalStorageValue(gstrg, 0) end return true end function CassPremio(cid) if getPlayerStorageValue(cid, gstrg) == 1 then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Hmmm, você acertou um item da combinação e foi recompensado em "..comb1[2].." "..getItemNameById(comb1[1])..".") doPlayerAddItem(cid, comb1[1], comb1[2]) setPlayerStorageValue(cid, gstrg, 0) elseif getPlayerStorageValue(cid, gstrg) == 2 then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Uffa, foi por pouco, mas você acertou dois itens da combinação e foi recompensado em "..comb2[2].." "..getItemNameById(comb2[1])..".") doPlayerAddItem(cid, comb2[1], comb2[2]) setPlayerStorageValue(cid, gstrg, 0) elseif getPlayerStorageValue(cid, gstrg) == 3 then doBroadcastMessage("Parabéns ao jogador "..getPlayerName(cid).." acertou as 3 combinações da Cassino Slots e foi recompensado em "..comb3[2].." "..getItemNameById(comb3[1]).." e "..premio[2].." "..getItemNameById(premio[1])..".") doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Parabéns, você acertou TODOS itens da combinação e foi recompensado em "..comb3[2].." "..getItemNameById(comb3[1]).." e "..premio[2].." "..getItemNameById(premio[1])..".") doPlayerAddItem(cid, premio[1], premio[2]) doPlayerAddItem(cid, comb3[1], comb3[2]) setPlayerStorageValue(cid, gstrg, 0) elseif getPlayerStorageValue(cid, gstrg) > 3 then doPlayerSendCancel(cid, "Mais sorte da próxima vez.") setPlayerStorageValue(cid, gstrg, 0) end return true end
  18. Gostei
    alexpaimel deu reputação a 1027929 em [BUG] Distro erro   
    Poste o script do data/actions/scripts/cassino_slots.lua
  19. Gostei
    alexpaimel deu reputação a D i M i T r E s C u em [BUG] Distro erro   
    Script Vip Tile:   function onStepIn(cid, item, position, fromPosition) local config = { msgDenied = "Voce nao tem a VIP3, para adquirir faca a quest logo ao lado <", msgWelcome = "Welcome to VIP 3!!" } if getPlayerStorageValue(cid, 445566) = 0 then doTeleportThing(cid, fromPosition, true) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, config.msgDenied) doSendMagicEffect(getThingPos(cid), CONST_ME_MAGIC_BLUE) else doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, config.msgWelcome) end return TRUE end
  20. Gostei
    alexpaimel deu reputação a 1027929 em [BUG] Distro erro   
    function onStepIn(cid, item, position, fromPosition) local config = { msgDenied = "Voce nao tem a VIP3, para adquirir faca a quest logo ao lado <", msgWelcome = "Welcome to VIP 3!!" } if getPlayerStorageValue(cid, 445566) <= 0 then doTeleportThing(cid, fromPosition, true) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, config.msgDenied) doSendMagicEffect(getThingPos(cid), CONST_ME_MAGIC_BLUE) return TRUE end doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, config.msgWelcome) return TRUE end Tente assim.
  21. Gostei
    alexpaimel deu reputação a Adriano SwaTT em Sistema: Cassino Slots.   
    Para adicionar porcentagem de chance de cair itens teria que modificar todo o script.
    Porque a base da chance está na quantidade de itens à serem sorteados.
    Sendo assim, se diminuir a quantidade automaticamente ficará mais fácil de conseguir a combinação.
     
    Abraços.
  22. Gostei
    alexpaimel recebeu reputação de TioSlash em Quest Log - Tasks   
    Oi, tchau
  23. Negativo
    alexpaimel recebeu reputação de ViitinG em Quest Log - Tasks   
    Oi, tchau

Informação Importante

Confirmação de Termo