Jump to content

Recommended Posts

 

TFS 1.3

 

Eu queria por level pra pegar blueberryes

 

function onUse(player, item, fromPosition, target, toPosition, isHotkey)
    item:transform(2786)
    item:decay()
    Game.createItem(2677, 3, fromPosition)
    return true
end

Edited by amarelax (see edit history)

Share this post


Link to post
Share on other sites

@amarelax, testa ai:

function onUse(player, item, fromPosition, target, toPosition, isHotkey)
    if (player:getLevel() < 20) then
         return false
    end
    item:transform(2786)
    item:decay()
    Game.createItem(2677, 3, fromPosition)
    return true
end 

 


Marque a melhor resposta, deixando assim o tópico resolvido e ajudando outros membros a identificar a solução do problema.
Não dou suporte via PM, não insista. ✉

  wakon.here@gmail.com ★

 

Regras | Seções OTServ | Seções BOT

Share this post


Link to post
Share on other sites
54 minutos atrás, Wakon disse:

@amarelax, testa ai:


function onUse(player, item, fromPosition, target, toPosition, isHotkey)
    if (player:getLevel() < 20) then
         return false
    end
    item:transform(2786)
    item:decay()
    Game.createItem(2677, 3, fromPosition)
    return true
end 

 

 

fucionou mais teria como por para aparecer uma messagem tipo  somente level 20 ?

Share this post


Link to post
Share on other sites
local level = 20

function onUse(player, item, fromPosition, target, toPosition, isHotkey)
    if (player:getLevel() < level) then
         return player:sendTextMessage(MESSAGE_INFO_DESCR, 'Apenas jogadores level '.. level ..' podem coletar.') and false
    end
    item:transform(2786)
    item:decay()
    Game.createItem(2677, 3, fromPosition)
    return true
end 

@amarelax


Marque a melhor resposta, deixando assim o tópico resolvido e ajudando outros membros a identificar a solução do problema.
Não dou suporte via PM, não insista. ✉

  wakon.here@gmail.com ★

 

Regras | Seções OTServ | Seções BOT

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Similar Content

    • By Old tibians
      .Qual servidor ou website você utiliza como base? 
      Serve 8.6/The OTX Server Version: (2.6)
      Qual o motivo deste tópico? 
      Preciso de ajudar para resolver um erro que pareceu em minha distro sobre o script fraglook, o erro acontece quando simplesmente o player da look em si mesmo. +REP REP + REP
      Está surgindo algum erro? Se sim coloque-o aqui. 
      este é o codigo:
      Você tem o código disponível? Se tiver publique-o aqui: 
      local function getPlayerResets(cid)     local resets = getPlayerStorageValue(cid, 500)      return resets < 0 and 0 or resets     end          function getPlayerFrags(cid)         local time = os.time()         local times = {today = (time - 86400), week = (time - (7 * 86400))}         local contents, result = {day = {}, week = {}, month = {}}, db.getResult("SELECT `pd`.`date`, `pd`.`level`, `p`.`name` FROM `player_killers` pk LEFT JOIN `killers` k ON `pk`.`kill_id` = `k`.`id` LEFT JOIN `player_deaths` pd ON `k`.`death_id` = `pd`.`id` LEFT JOIN `players` p ON `pd`.`player_id` = `p`.`id` WHERE `pk`.`player_id` = " .. getPlayerGUID(cid) .. " AND `k`.`unjustified` = 1 AND `pd`.`date` >= " .. (time - (30 * 86400)) .. " ORDER BY `pd`.`date` DESC")         if(result:getID() ~= -1) then             repeat                 local content = {date = result:getDataInt("date")}                 if(content.date > times.today) then                     table.insert(contents.day, content)                 elseif(content.date > times.week) then                     table.insert(contents.week, content)                 else                     table.insert(contents.month, content)                 end             until not result:next()             result:free()         end         local size = {             day = table.maxn(contents.day),             week = table.maxn(contents.week),             month = table.maxn(contents.month)         }         return size.day + size.week + size.month     end     function onLogin(cid)         registerCreatureEvent(cid, "fraglook")         return true     end     function onLook(cid, thing, position, lookDistance)         if isPlayer(thing.uid) and thing.uid ~= cid then             doPlayerSetSpecialDescription(thing.uid,'[Frags: '..getPlayerFrags(thing.uid)..']\n[Reborns: '..getPlayerResets(thing.uid)..']')             return true         elseif thing.uid == cid then             doPlayerSetSpecialDescription(cid,'[Frags: '..getPlayerFrags(cid)..']\n[Reborns: '..getPlayerResets(cid)..']')             local string = 'You see yourself.'             if getPlayerFlagValue(cid, PLAYERFLAG_SHOWGROUPINSTEADOFVOCATION) then                 string = string..' You are '.. getPlayerGroupName(cid) ..'.'             elseif getPlayerVocation(cid) ~= 0 then                 string = string..' You are '.. getPlayerVocationName(cid) ..'.'             else                 string = string..' You have no vocation.'             end             string = string..getPlayerSpecialDescription(cid)..''             if getPlayerNameByGUID(getPlayerPartner(cid), false, false) ~= nil then                 string = string..' You are '.. (getPlayerSex(cid) == 0 and 'wife' or 'husband') ..' of '.. getPlayerNameByGUID(getPlayerPartner(cid)) ..'.'             end             if getPlayerGuildId(cid) > 0 then                 string = string..' You are ' .. (getPlayerGuildRank(cid) == '' and 'a member' or getPlayerGuildRank(cid)) ..' of the '.. getPlayerGuildName(cid)                 string = getPlayerGuildNick(cid) ~= '' and string..' ('.. getPlayerGuildNick(cid) ..').' or string..'.'             end             if getPlayerFlagValue(cid, PLAYERCUSTOMFLAG_CANSEECREATUREDETAILS) then                 string = string..'nHealth: ['.. getCreatureHealth(cid) ..' / '.. getCreatureMaxHealth(cid) ..'], Mana: ['.. getCreatureMana(cid) ..' / '.. getCreatureMaxMana(cid) ..'].'                 string = string..'nIP: '.. doConvertIntegerToIp(getPlayerIp(cid)) ..'.'             end             if getPlayerFlagValue(cid, PLAYERCUSTOMFLAG_CANSEEPOSITION) then                 string = string..'nPosition: [X:'.. position.x..'] [Y:'.. position.y..'] [Z:'.. position.z..'].'             end             doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, string)               return false         end         return true     end  
      Você tem alguma imagem que possa auxiliar no problema? Se sim, coloque-a aqui. 
       
      +REP REP + REP
      +REP REP + REP
      +REP REP + REP
       
      PARA QUEM AJUDAR!
    • By Capitao wyz
      ***Ola estou com um pequeno problema na instalaçao do [EDO Tensei] esta tudo certo mas na hora de invocar o "EDO" com o pergaminho da erro, ja agradeço se alguem puder ajudar s2 O erro é esse  ***
       
      ** O Script**
       
      ```local voc = {716, 717, 718, 719, 720, 721, 722, 723, 724, 725} -- ID das vocações que poderão usar o Pergaminho.
      local corpse = {3058}
      local id = 26683 -- Id do edo pergaminho
      local edo = {
       
                      ["[EDO TENSEI] Anbu"] = {hp = 50000, maxhp = 50000, corpse = 3058, chance = 100}, -- Nome do Edo, HP do Edo quando summoned, max hp do edo , corpo do edo, chance de falhar.
      }
      function onUse(cid, item, frompos, item2, topos)
      if(not(isInArray(voc, getPlayerVocation(cid)))) then
      return doPlayerSendTextMessage(cid, 25, "Voce nao tem a vocacao nescessaria")
      end

      if(not(isInArray(corpse, item2.itemid))) then
      doPlayerSendTextMessage(cid, MESSAGE_STATUS_DEFAULT, "voce precisa usar o pergaminho em um corpse")
      doSendMagicEffect(pos, CONST_ME_POFF)
      return true
      end
      local perga = doPlayerAddItem(cid, id, 1)
                      for edo_tensei, v in pairs(edo) do
                      
                                      if item2.itemid == v.corpse then
                                              if math.random(0,100) <= v.chance then
      doSendMagicEffect(topos, CONST_ME_POFF)
                                                      doPlayerSendTextMessage(cid, 27, "".. edo_tensei .. " foi selado nesse pergaminho.")
                                                      doRemoveItem(item.uid, 1)
                                                      doRemoveItem(item2.uid, 1)
                                                      doItemSetAttribute(perga, "namepet", edo_tensei)
                                                      doItemSetAttribute(perga, "description", "Neste pergaminho foi selado um ".. edo_tensei ..".")
                                                      doItemSetAttribute(perga, "lifepet", v.hp)
                                                      doItemSetAttribute(perga, "maxlifepet", v.maxhp)
                                              else
                                                      doPlayerSendTextMessage(cid, 27, "O pergaminho falhou")
                                              end
                                      end
                      end
                      return true
      end```
       
      Você tem alguma imagem que possa auxiliar no problema? Se sim, coloque-a aqui. 
       
    • By Rogex Joyz
      Seria possível um sistema de boss que ao nascer o boss, nascesse 4 summons com ele e que o boss se tornasse mortal apenas após os 4 summons ser derrotados ? 8.60 tfs 0.4 
       
         
    • By Zazeros
      0.4
      Boa tarde povo, eu gostaria de uma ajuda num script que eu tenho sobre NPC.
      Esse script faz o npc dar uma task pro player quando ele fala as palavras certas, e ele funciona 100%, porém, eu gostaria de algo a mais (e tentei fazer sozinho, mas não sirvo pra essas coisas)
       
      Eu gostaria que o Npc checasse se o player tivesse X storage, se ele tiver, o player poderá pegar a quest com o npc. Se o player não tiver X storage, o npc vai falar pra ele que ele não é confiável ou algo assim, aqui está a script do NPC (por favor, se for possivel, use ela como base):
       
      local keywordHandler = KeywordHandler:new() local npcHandler = NpcHandler:new(keywordHandler) NpcSystem.parseParameters(npcHandler) local talkState = {} local quest = 11475 local reward = 70000 local markTable = { -- {markPos = Coordenadas da marcação, markType = Tipo de marcação, markDescription = Descrição da marcação} {markPos = {x = , y = , z = }, markType = MAPMARK_SWORD, markDescription = ""} } 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 func_addMark = doPlayerAddMapMark if(not func_addMark) then func_addMark = doAddMapMark end if(msgcontains(msg, "location")) then for mark, x in pairs(markTable) do func_addMark(cid, x.markPos, x.markType, x.markDescription ~= nil and x.markDescription or "") end selfSay("", cid) end local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid if(not npcHandler:isFocused(cid)) then return false elseif msgcontains(msg, "") and talkState[talkUser] == 1 then npcHandler:say("", cid) talkState[talkUser] = 2 elseif msgcontains(msg, "") and talkState[talkUser] == 2 then if(getPlayerStorageValue(cid,11476) < 4) then <!-- A storage que o npc reconhece, pra dar ou não a quest pro player --> npcHandler:say("", cid) setPlayerStorageValue(cid, quest, 2) talkState[talkUser] = 0 else npcHandler:say('', cid) <!-- Msg que ele vai falar pro player que não tiver a storage (SEM DAR A QUEST) --> end elseif msgcontains(msg, "") then local str = getPlayerStorageValue(cid, quest) if(str < 2) then npcHandler:say("", cid) talkState[talkUser] = 1 return true elseif(str == 2) then npcHandler:say("", cid) elseif(str == 3) then npcHandler:say("", cid) setPlayerStorageValue(cid, quest, 4) elseif(str == 4) then npcHandler:say("", cid) talkState[talkUser] = 0 end end return TRUE end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new())  
      Eu tentei fazer por conta própria, literalmente na tentativa e erro, botando aquela linha do storage em todo o lugar, mas sem sucesso. No lugar em que está agora, o npc ignora completamente essa parte e da a quest pro player mesmo se ele não tiver a storage.
    • By FeehLoveCes
      Estou migrando de TFS para OTX
       
      e apos corrigir varios erros e conseguir finalmente logar, varios dos meus NPCS começaram a dar esse seguinte erro: 
       
      ainda da pra falar com o NPC normalmente e ele faz oque deveria fazer porem com erro.
      as libs dos NPCS estão atualizadas para as do OTX,
      data/libs estão com as libs do OTX
       
      Imagem com o NPCS in game
       
      Argus.xml
       
      Argus.lua
       
      Se alguem puder me ajudar agradeço muito!!!!
       
      --------------------------------------------------------------------------------------[RESOLVIDO]------------------------------------------------------------------------------------
       
      O Erro era a fala inicial do NPC, ele falava "Hi" assim ele conversava com ele mesmo e entrava em loop, por isso o motivo do Call Stack Overflow.
      Para corrigir apenas substitui em Argus.xml
       
  • Recently Browsing   0 members

    No registered users viewing this page.


Open Tibia Server

Quer aprender a criar seu próprio servidor de Tibia? Então está no lugar certo, aqui você encontrará milhares de tutorias, scripts, códigos, mapas e utilitários para que você possa fazer o seu próprio servidor de Tibia começando do zero.

Redes Sociais

Anuncie no Tibia King

Precisa de mais visibilidade em seus projetos? Quer fazer um plano publicitário para o seu servidor? Anuncie no Tibia King e faça sua divulgação, possuímos centenas de acessos simultâneos e milhares diários, com certeza será a sua solução!

Tibia King Recomenda

DokeHost - Soluções em Hospedagem

VPS Windows
VPS Linux
Servidor VPS
×
×
  • Create New...