Ir para conteúdo
  • Cadastre-se

luangop

Membro
  • Total de itens

    483
  • Registro em

  • Última visita

  • Dias Ganhos

    12

Tudo que luangop postou

  1. Que base esta usando? Cada pokémon tem sua própria ball no items.xml? È o único motivo que consegui pensar pra esse bug acontecer Caso a resposta for sim sobre o items.xml, vc precisa de um itemeditor para editar o items.otb.
  2. function isOnSameFloor(fromPos, toPos) return fromPos.z == toPos.z and true or false end function isEven(arg) return arg % 2 == 0 and true or false end function getMiddlePos(fromPos, toPos) if not isOnSameFloor(fromPos, toPos) then return false end local middle = {x = 0, y = 0, z = 0} middle.x = isEven(fromPos.x + toPos.x) and (fromPos.x + toPos.x)/2 or math.floor((fromPos.x + toPos.x)/2) + 1 middle.y = isEven(fromPos.y + toPos.y) and (fromPos.y + toPos.y)/2 or math.floor((fromPos.y + toPos.y)/2) + 1 middle.z = fromPos.z or toPos.z
  3. Sobre o corpo, você deve configurar no items.xml o ID do corpse. Sobre todo o resto, depende da sua base. Se for PDA, tem muita coisa pra configurar nas LIB's.
  4. Não seria muito mais conveniente integrar no seu script de reset, para resetar o CAP no mesmo instante que reseta o level? Se te interessa minha ideia, poste seu script do reset.
  5. E você configurando a coordenada do lado do tile, o efeito não seria o mesmo? '-' Daria para por doTeleportThing(cid,fromPosition, true) Porém se o player tiver chegado no tile via um teleport, retornaria para a posição de origem, e geraria um loop que daria crash no servidor. Por isso optei por definir uma coordenada.
  6. Tenta assim: function onStartup() db.Query("UPDATE `players` SET `online` = 0 WHERE `world_id` = " .. getConfigValue('worldId') .. ";") return true end
  7. Esse comando já existe por padrão amigo, /storage e funciona exatamente assim. /storage Player_name, Storage, valor_a_adicionar
  8. function onSay(cid, words, param, channel) local t = string.explode(param, ",") local stopoint = XXXX if(param == '') then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Exemplo de como usar o comando:\nTransferir 50 points para o player 'Amigo'\n!transferpoints, Amigo, 50") return true end local player = getPlayerByNameWildcard(tostring(t[1])) if(not isPlayer(player)) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Esse jogador nao existe ou nao esta online.") return true end if not t[2] or t[2] and tostring
  9. movements.xml adicione essa tag: <movevent type="StepIn" actionid="XXXX" event="script" value="AMtile.lua"/> XXXX = action ID que vc vai por no seu tile. data/movements/scripts crie um arquivo AMtile.lua e adicione o seguinte: local pos = {x = 728, y = 849, z = 15} -- configure a coordenada pra onde vai se não for acc manager. Fiz rápido sem testar, ve se vai funcionar. Se ajudei REP+
  10. Provavelmente tem algum outro sistema no seu servidor, que está programado para salvar STRING nessa mesma storage. Já verificou isso?
  11. Entendi, porém ai não sei como fazer. Sinto em não poder ajudar
  12. Olá! Seguinte, eu quero bloquear para que os players não possam logar em mais que um char na mesma conta ao mesmo tempo, porém a tag "onePlayerOnlinePerAccount" do meu config.lua não está funcionando. Acredito que seja possível fazer por creaturescripts, mas já tentei e não consegui. Alguém poderia me ajudar?
  13. Poste o arquivo .lua da pasta actions dessa stone.
  14. Fiz rapido sem testar, testa ai function onSay(cid, words, param, channel) for _, pid in ipairs(getPlayersOnline()) do local pos = getCreaturePosition(cid) local items = {"2160", "2152"} local premio = items[math.random(#items)] doPlayerSendTextMessage(pid, MESSAGE_STATUS_CONSOLE_BLUE, ""..getCreatureName(cid).." deu um premio aleatorio para todos os players online.") doPlayerAddItem(pid, premio, 1) end return true end
  15. Olá, estou desenvolvendo um sistema pro meu servidor, onde eu preciso verificar o floor que o player se encontra, a pos Z. Eu sei da função getCreaturePosition(cid). Mas como eu faço para me retornar apenas a posição Z para comparar com tonumber ?
  16. Olá, estou desenvolvendo um sistema pro meu servidor, onde eu preciso verificar o floor que o player se encontra, a pos Z. Eu sei da função getCreaturePosition(cid). Mas como eu faço para me retornar apenas a posição Z para comparar com tonumber ?
  17. Esse não é o script que deu o erro, pois o erro foi na linha 183 do script, e esse que você passou tem apenas 104 linhas.
  18. Eu ja tinha botado a função de somar os dias.. Sobre 7, 30 e 60 dias, substitua seu script por esse: function onUse(cid, item, fromPosition, itemEx, toPosition) if doRemoveItem(item.uid, 1) then if item.itemid == XXXX then days = 7 elseif item.itemid == XXXX then days = 30 elseif item.itemid == XXXX then days = 60 else doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Algo deu errado....") return true end doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Parabens! Agora voce possui VIP por ".. days .." dias restantes! Acesso a areas exclusivas e compra de outros items foram
  19. Verifique as posições nessa tabela do seu script, ve se as posições da frente em cada linha bate com o sqm onde os players devem estar no mapa para a alavanca funcionar: player = { {{x = 1427, y = 824, z = 7}, {x = 1440, y = 824, z = 7}}, --{{posição onde o player deve ficar}, {para onde será teleportado}}, {{x = 1426, y = 824, z = 7}, {x = 1439, y = 824, z = 7}}, {{x = 1425, y = 824, z = 7}, {x = 1438, y = 824, z = 7}}, {{x = 1414, y = 824, z = 7}, {x = 1437, y = 824, z = 7}}, {{x = 1423, y = 824, z = 7}, {x = 1436, y = 824, z = 7}}, },
  20. doPlayerAddPremiumDays(cid, days) Esta é a função que você quer, apenas bote a quantia de dias no lugar de days. --EDIT cara esse script ai vai te dar storage, troque por esse: function onUse(cid, item, fromPosition, itemEx, toPosition) if doRemoveItem(item.uid, 1) then local days = 1 -- coloque os dias que serão a VIP! doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Parabens! Agora voce possui VIP por ".. days .." dias restantes! Acesso a areas exclusivas e compra de outros items foram concedidas a voce!") doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "
  21. Tive o mesmo problema quando mudei para fibra óptica, embora minha internet não seja da Vivo, eu tive que ligar para a central da empresa contratada, e pedir a liberação de TCP/UDP da minha rede, pois mesmo eu desbloqueando no meu modem, eles possuem um firewall interno que me bloqueava. Tente isso! =) Off-topic * Vejamos a palavra ÓTICA, do grego OTIKÓS, OTÓS, que significa relativo ou pertencente ao OUVIDO, ORELHA. * A palavra ÓPTICA, do grego OPTIKÉ, pelo latim OPTICE, significa relativo e pertencente à visão. ÓPTICA é a parte da física que trata das propriedades
  22. data/actions/actions.xml Add essa linha: <action actionid="XXXX" event="script" value="parede.lua"/> onde da XXXX bota um numero que não exista no seu actions, e que vc vai por no action ID da parede no map editor. data/actions/scripts cria um arquivo chamado parede.lua e poe isso dentro: function onUse(cid, item, frompos, itemEx, topos) doPlayerAddItem(cid, 2160, 100) doPlayerSendTextMessage(cid, 27, "Ae maluco achou 1kk") return true end
×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo