Ir para conteúdo
  • Cadastre-se

Posts Recomendados

Oie =p

 

Queria pedir a ajuda de voces, tem como adicionar uma storagem nesse npc.

 

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
 
       
        if (msgcontains(msg, 'clan') or msgcontains(msg, 'Clan')) then   --alterado v1.7
           if getPlayerClanName(cid) == 'Seavell' then   --alterado v1.7
              selfSay("You already are of the clan seavel!", cid)
              talkState[talkUser] = 0
              return true
           elseif getPlayerClanNum(cid) ~= -1 then     --alterado v1.7
              selfSay("You already are of another clan!", cid)
              talkState[talkUser] = 0
              return true    
           end
              selfSay("So you want to join in my clan... Are you sure that?", cid)
              talkState[talkUser] = 2  
        elseif (msgcontains(msg, 'yes') or msgcontains(msg, 'Yes')) and talkState[talkUser] == 2 then
           if getPlayerLevel(cid) < 80 then
              selfSay("You are too weak yet... You need to be atleast level 80 to enter in the clan!", cid)
              talkState[talkUser] = 0
              return true
           end
           selfSay("OK then... Now you are a great member of de clan seavel!", cid)
           setPlayerClan(cid, 'Seavell')   --alterado v1.7
           talkState[talkUser] = 0
           
           
        elseif (msgcontains(msg, 'leave') or msgcontains(msg, 'Leave')) then  --alterado v1.7  \/
           if getPlayerClanName(cid) ~= 'Seavell' then
              selfSay("You aren't of the clan, get out of here!", cid)
              talkState[talkUser] = 0
              return true
           else
              selfSay("So you want to leave the clan... Are you sure that?", cid)
              talkState[talkUser] = 3
           end
        elseif (msgcontains(msg, 'yes') or msgcontains(msg, 'Yes')) and talkState[talkUser] == 3 then
           if removePlayerClan(cid) then
              selfSay("Ok then, good luck!", cid)
              talkState[talkUser] = 0
              return true
           else
              selfSay("You have some task to finish of one trainer! Go finish it!", cid)
              talkState[talkUser] = 0
              return true
           end
           
           
        elseif (msgcontains(msg, 'shiny') or msgcontains(msg, 'Shiny')) then    --alterado v1.7
           if getPlayerClanName(cid) ~= 'Seavell' then    --alterado v1.7
              selfSay("You aren't of the clan Seavel! Get out of here!", cid)
              return true
           else   
              selfSay("So you want to transform your Vaporeon in a Shiny Vaporeon? It will cost 500k!", cid)
              talkState[talkUser] = 4
           end
        elseif (msgcontains(msg, 'yes') or msgcontains(msg, 'Yes')) and talkState[talkUser] == 4 then
           if getPlayerSlotItem(cid, 8).uid <= 0 then
              selfSay("Sorry, you don't have a pokemon in the main slot!", cid)
              talkState[talkUser] = 0
              return true
           end
                                                                                 --alterado v1.2
           if #getCreatureSummons(cid) >= 1 then
              selfSay("Go back your pokemon!", cid)
              talkState[talkUser] = 0
              return true
           end
           
           local pb = getPlayerSlotItem(cid, 8).uid
           
           if getItemAttribute(pb, "poke") ~= "Vaporeon" then
              selfSay("Put a Vaporeon's pokeball atleast +20 in main slot!", cid)
              talkState[talkUser] = 0
              return true
           end
              
           if not getItemAttribute(pb, "boost") or getItemAttribute(pb, "boost") < 20 then
              selfSay("Sorry, your Vaporeon is not boosted +20!", cid)
              talkState[talkUser] = 0
              return true
           end
                                          --100000 = 1k, 1000000 = 10k, 10000000 = 100k
           if doPlayerRemoveMoney(cid, 50000000) == true then
              selfSay("So there is it! Enjoy!", cid)
              doItemSetAttribute(pb, "hp", 1)
              doItemSetAttribute(pb, "poke", "Shiny Vaporeon")
              doItemSetAttribute(pb, "description", "Contains a Shiny Vaporeon.")
              doItemEraseAttribute(pb, "boost")
              doTransformItem(getPlayerSlotItem(cid, 7).uid, fotos["Shiny Vaporeon"])

        doItemSetAttribute(pb, "Icone", "yes")    
        doTransformItem(pb, icons[getItemAttribute(pb, "poke")].on)

              if useKpdoDlls then
                doCreatureExecuteTalkAction(cid, "/pokeread")
              end
              talkState[talkUser] = 0
              return true
          else
              selfSay("You don't have enough money!", cid)
              talkState[talkUser] = 0
              return true
          end
        end

return true
end

npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())  

 

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

---------------------- Configs ---------------------------
local clanNpcs = {
["Drop Trainer"] = {
                       task1 = {
                             ["Drop Trainer"] = {{"Pidgeot", 5}, {"Sandslash", 5}, {"Houndoom", 5}},
                       },                     
                       task2 = {
                             ["Drop Trainer"] = {{"Venusaur", 5}, {"Muk", 5}, {"Dragonair", 5}},
                       },
                       itens = {{12161, 100}, {12170, 25}, {12201, 10}},
                       poke = "Dewgong",
                       level = 90,
                       prevRank = 1,
                       nextRank = 2,
},
["Icelake Trainer"] = {
                       task1 = {
                             ["Icelake Trainer"] = {{"Tangela", 5}, {"Rhydon", 5}, {"Dragonite", 5}},
                       },                     
                       task2 = {
                             ["Icelake Trainer"] = {{"Scyther", 5}, {"Venomoth", 5}, {"Primeape", 5}},
                       },
                       itens = {{12272, 5}, {12236, 5}, {12158, 20}},
                       poke = "Jynx",
                       level = 100,
                       prevRank = 2,
                       nextRank = 3,
},
["Waterfall Trainer"] = {
                       task1 = {
                             ["Waterfall Trainer"] = {{"Charizard", 5}, {"Slowking", 5}, {"Jolteon", 5}},
                       },                     
                       task2 = {
                             ["Waterfall Trainer"] = {{"Weezing", 5}, {"Exeggutor", 5}, {"Sneasel", 5}},
                       },
                       itens = {{12161, 100}, {12170, 25}, {12201, 10}},
                       poke = "Lapras",
                       level = 110,
                       prevRank = 3,
                       nextRank = 4,
},
["Frost Trainer"] = {
                       task1 = {
                             ["Frost Trainer"] = {{"Skarmory", 5}, {"Arcanine", 5}, {"Charizard", 5}},
                       },                     
                       task2 = {
                             ["Frost Trainer"] = {{"Vileplume", 5}, {"Electabuzz", 5}, {"Dragonair", 5}},
                       },
                       itens = {{12272, 2}, {12236, 5}, {12158, 20}},
                       poke = "Blastoise",
                       level = 120,
                       prevRank = 4,
                       nextRank = 5,
},
}
------------------------------------------------------------------------------
local npc = clanNpcs[getNpcName()]
       
         if msgcontains(msg, 'help') or msgcontains(msg, 'Help') then
            if getPlayerLevel(cid) < npc.level or getPlayerClanName(cid) ~= 'Seavell' or getPlayerClanRank(cid) ~= npc.prevRank then
               selfSay("I don't need your help!", cid)
               talkState[talkUser] = 0
               return true
            elseif getPlayerStorageValue(cid, 854789) <= -1 then
               selfSay("So you want to move up of rank on our clan... So, you need to bring some items to me... Do you wanna do it?", cid)
               talkState[talkUser] = 1
               return true
            elseif getPlayerStorageValue(cid, 854789) == 1 then
               selfSay("So you brought to me the items what i asked for?", cid)
               talkState[talkUser] = 1
               return true
            elseif getPlayerStorageValue(cid, 854789) == 2 then
               selfSay("The next step is you caught a pokemon to me... Do you wanna do it?", cid)
               talkState[talkUser] = 1
               return true
            elseif getPlayerStorageValue(cid, 854789) == 3 then
               selfSay("So you caught the pokemon what i asked for?", cid)
               talkState[talkUser] = 1
               return true
            elseif getPlayerStorageValue(cid, 854789) == 4 then
               selfSay("Now you need to do some tasks for me... Do you wanna do it?", cid)
               talkState[talkUser] = 1
               return true
            elseif getPlayerStorageValue(cid, 854789) == 5 then
               selfSay("So you finished the first task what i asked for?", cid)
               talkState[talkUser] = 1
               return true
            elseif getPlayerStorageValue(cid, 854789) == 6 then
               selfSay("And now comes the last task... Do you wanna to begin it?", cid)
               talkState[talkUser] = 1
               return true
            elseif getPlayerStorageValue(cid, 854789) == 7 then
               selfSay("So you finished the last task what i asked for?", cid)
               talkState[talkUser] = 1
               return true
            end      
         elseif (msgcontains(msg, 'yes') or msgcontains(msg, 'Yes')) and talkState[talkUser] == 1 then
            if getPlayerStorageValue(cid, 854789) <= -1 then
               local str = "Ok then, you need bring to me: "
               for a = 1, #npc.itens do
                   str = str..(a == #npc.itens and " and " or a ~= 1 and ", " or "{")..(npc.itens[a][2]).." "..(getItemNameById(npc.itens[a][1]))
               end
               str = str.."}, come back when you join those items!"   
               selfSay(str, cid)
               setPlayerStorageValue(cid, 854789, 1)
               talkState[talkUser] = 0
               return true
            elseif getPlayerStorageValue(cid, 854789) == 1 then
               local check = checkItensForTask(cid, npc.itens)
               if check == 0 then
                  selfSay("Ok then, you completed the mission, talk to me again when you want to continue!", cid)
                  setPlayerStorageValue(cid, 854789, 2)
                  talkState[talkUser] = 0
                  return true
               else
                  selfSay(check, cid)
                  talkState[talkUser] = 0
                  return true
               end
            elseif getPlayerStorageValue(cid, 854789) == 2 then
               selfSay("Ok then, you need to caught a {"..(npc.poke).."}, and bring it to me... Come back when you do that!", cid)
               setPlayerStorageValue(cid, 854789, 3)
               setPlayerStorageValue(cid, 854788, npc.poke)
               talkState[talkUser] = 0
               return true
            elseif getPlayerStorageValue(cid, 854789) == 3 then
               if getPlayerStorageValue(cid, 854788) == 'done' then
                  selfSay("Very well, talk to me again when you want to continue!", cid)
                  setPlayerStorageValue(cid, 854789, 4)
                  setPlayerStorageValue(cid, 854788, -1)
                  setPlayerStorageValue(cid, 854787, npc.poke)
                  talkState[talkUser] = 0
                  return true
               else
                  selfSay("You didn't caught the pokemon what i asked for! Go do it!", cid)
                  talkState[talkUser] = 0
                  return true
               end
            elseif getPlayerStorageValue(cid, 854789) == 4 then
               local sto = getFreeTaskStorage(cid)
               local c = 0
               if sto == -1 then
                  selfSay("You can't get more tasks! You are already with the maximum of "..(maxTasks).." tasks!", cid)
                  talkState[talkUser] = 0
                  return true
               end
               
               local str = "Ok then, now you need to kill: {"
               for e, f in pairs(npc.task1) do
                   for a = 1, #f do
                       str = str..((a == #f and c ~= 0) and " and " or a ~= 1 and ", " or "")..f[a][2].." "..f[a][1]
                       c = c+1
                   end
               end
               str = str.."} with the {"..(npc.poke).."} which you caught!"
               selfSay(str, cid)
               setPlayerStorageValue(cid, 854789, 5)
               setStorageArray(cid, sto, npc.task1)
               talkState[talkUser] = 0
               return true
            elseif getPlayerStorageValue(cid, 854789) == 5 then
               if isMyTaskComplete(cid, getNpcCid()) then
                  selfSay("Very well, you have done my first task... Talk to me again when you want to continue!", cid)
                  local sto = getMyTaskSto(cid, getNpcCid())
                  setPlayerStorageValue(cid, sto, -1)
                  setPlayerStorageValue(cid, 854789, 6)
                  talkState[talkUser] = 0
                  return true
               else
                  selfSay("You didn't complete my task yet... Go end it!", cid)
                  talkState[talkUser] = 0
                  return true
               end
            elseif getPlayerStorageValue(cid, 854789) == 6 then
               local sto = getFreeTaskStorage(cid)
               local c = 0
               if sto == -1 then
                  selfSay("You can't catch more tasks! You are already with the maximum of "..(maxTasks).." tasks!", cid)
                  talkState[talkUser] = 0
                  return true
               end
               
               local str = "Ok then, now for your last task you need to kill: {"
               for e, f in pairs(npc.task2) do
                   for a = 1, #f do
                       str = str..((a == #f and c ~= 0) and " and " or a ~= 1 and ", " or "")..f[a][2].." "..f[a][1]
                       c = c+1
                   end
               end
               str = str.."} with the {"..(npc.poke).."} which you caught!"
               selfSay(str, cid)
               setPlayerStorageValue(cid, 854789, 7)
               setStorageArray(cid, sto, npc.task2)
               talkState[talkUser] = 0
               return true
            elseif getPlayerStorageValue(cid, 854789) == 7 then
               if isMyTaskComplete(cid, getNpcCid()) then
                  ---
                  local storages = {17000, 63215, 17001, 13008, 5700}     --alterado v1.8
                  for s = 1, #storages do
                      if getPlayerStorageValue(cid, storages) >= 1 then
                         selfSay("You can't do that while is Flying, Riding, Surfing, Diving or mount a bike!", cid)
                         talkState[talkUser] = 0
                         return true
                      end
                  end
                  if #getCreatureSummons(cid) >= 1 then     --alterado v1.8
                     selfSay("Return your pokemon!", cid)
                     talkState[talkUser] = 0
                     return true
                  end  
                  ---
                  if checkPokemonForTask(cid, npc.poke) then
                     setPlayerClanRank(cid, npc.nextRank)
                     selfSay("So you complete my last task! Congradulations! Now you move up of rank and become {"..lookClans[getPlayerClanNum(cid)][getPlayerClanRank(cid)].."}!", cid)
                     setPlayerStorageValue(cid, 854789, -1)
                     setPlayerStorageValue(cid, 854787, -1)
                     local sto = getMyTaskSto(cid, getNpcCid())
                     setPlayerStorageValue(cid, sto, -1)
                     talkState[talkUser] = 0
                     return true
                  else
                     selfSay("You aren't with the "..(npc.poke).." which you caught before in your pokebag! Go get it!", cid)
                     talkState[talkUser] = 0
                     return true
                  end   
               else
                  selfSay("You didn't complete my task yet... Go end it!", cid)
                  talkState[talkUser] = 0
                  return true
               end        
            end
         end
              
return true
end

npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())           

 

Como funcionaria: Ao terminar a quest de matar os bixo, obs a ultima quest que ele da, ele te daria uma storage "19999" ou um item que tenha essa storagem ,  ai eu iria por a storage em uma porta e você so pode passar na porta com essa storage.. 4 rep+ obrigado =p   

 

ou então algo que so pessoas do clan seavell possam entrar tipo assim ;p

 

Creio eu que seja no npc do segundo spoiler

 

forever_alone_by_foreveraloneplz.png

Editado por xandeloko (veja o histórico de edições)

Continue meu filho desobediente

Haverá paz quando você estiver terminado

Coloque sua cabeça cansada para descansar

Não chore mais

Link para o post
Compartilhar em outros sites
Npc do segundo spoiler com a storage:

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
 
---------------------- Configs ---------------------------
local clanNpcs = {
["Drop Trainer"] = {
                       task1 = {
                             ["Drop Trainer"] = {{"Pidgeot", 5}, {"Sandslash", 5}, {"Houndoom", 5}},
                       },                     
                       task2 = {
                             ["Drop Trainer"] = {{"Venusaur", 5}, {"Muk", 5}, {"Dragonair", 5}},
                       },
                       itens = {{12161, 100}, {12170, 25}, {12201, 10}},
                       poke = "Dewgong",
                       level = 90,
                       prevRank = 1,
                       nextRank = 2,
},
["Icelake Trainer"] = {
                       task1 = {
                             ["Icelake Trainer"] = {{"Tangela", 5}, {"Rhydon", 5}, {"Dragonite", 5}},
                       },                     
                       task2 = {
                             ["Icelake Trainer"] = {{"Scyther", 5}, {"Venomoth", 5}, {"Primeape", 5}},
                       },
                       itens = {{12272, 5}, {12236, 5}, {12158, 20}},
                       poke = "Jynx",
                       level = 100,
                       prevRank = 2,
                       nextRank = 3,
},
["Waterfall Trainer"] = {
                       task1 = {
                             ["Waterfall Trainer"] = {{"Charizard", 5}, {"Slowking", 5}, {"Jolteon", 5}},
                       },                     
                       task2 = {
                             ["Waterfall Trainer"] = {{"Weezing", 5}, {"Exeggutor", 5}, {"Sneasel", 5}},
                       },
                       itens = {{12161, 100}, {12170, 25}, {12201, 10}},
                       poke = "Lapras",
                       level = 110,
                       prevRank = 3,
                       nextRank = 4,
},
["Frost Trainer"] = {
                       task1 = {
                             ["Frost Trainer"] = {{"Skarmory", 5}, {"Arcanine", 5}, {"Charizard", 5}},
                       },                     
                       task2 = {
                             ["Frost Trainer"] = {{"Vileplume", 5}, {"Electabuzz", 5}, {"Dragonair", 5}},
                       },
                       itens = {{12272, 2}, {12236, 5}, {12158, 20}},
                       poke = "Blastoise",
                       level = 120,
                       prevRank = 4,
                       nextRank = 5,
},
}
------------------------------------------------------------------------------
local npc = clanNpcs[getNpcName()]
       
         if msgcontains(msg, 'help') or msgcontains(msg, 'Help') then
            if getPlayerLevel(cid) < npc.level or getPlayerClanName(cid) ~= 'Seavell' or getPlayerClanRank(cid) ~= npc.prevRank then
               selfSay("I don't need your help!", cid)
               talkState[talkUser] = 0
               return true
            elseif getPlayerStorageValue(cid, 854789) <= -1 then
               selfSay("So you want to move up of rank on our clan... So, you need to bring some items to me... Do you wanna do it?", cid)
               talkState[talkUser] = 1
               return true
            elseif getPlayerStorageValue(cid, 854789) == 1 then
               selfSay("So you brought to me the items what i asked for?", cid)
               talkState[talkUser] = 1
               return true
            elseif getPlayerStorageValue(cid, 854789) == 2 then
               selfSay("The next step is you caught a pokemon to me... Do you wanna do it?", cid)
               talkState[talkUser] = 1
               return true
            elseif getPlayerStorageValue(cid, 854789) == 3 then
               selfSay("So you caught the pokemon what i asked for?", cid)
               talkState[talkUser] = 1
               return true
            elseif getPlayerStorageValue(cid, 854789) == 4 then
               selfSay("Now you need to do some tasks for me... Do you wanna do it?", cid)
               talkState[talkUser] = 1
               return true
            elseif getPlayerStorageValue(cid, 854789) == 5 then
               selfSay("So you finished the first task what i asked for?", cid)
               talkState[talkUser] = 1
               return true
            elseif getPlayerStorageValue(cid, 854789) == 6 then
               selfSay("And now comes the last task... Do you wanna to begin it?", cid)
               talkState[talkUser] = 1
               return true
            elseif getPlayerStorageValue(cid, 854789) == 7 then
               selfSay("So you finished the last task what i asked for?", cid)
               talkState[talkUser] = 1
               return true
            end      
         elseif (msgcontains(msg, 'yes') or msgcontains(msg, 'Yes')) and talkState[talkUser] == 1 then
            if getPlayerStorageValue(cid, 854789) <= -1 then
               local str = "Ok then, you need bring to me: "
               for a = 1, #npc.itens do
                   str = str..(a == #npc.itens and " and " or a ~= 1 and ", " or "{")..(npc.itens[a][2]).." "..(getItemNameById(npc.itens[a][1]))
               end
               str = str.."}, come back when you join those items!"   
               selfSay(str, cid)
               setPlayerStorageValue(cid, 854789, 1)
               talkState[talkUser] = 0
               return true
            elseif getPlayerStorageValue(cid, 854789) == 1 then
               local check = checkItensForTask(cid, npc.itens)
               if check == 0 then
                  selfSay("Ok then, you completed the mission, talk to me again when you want to continue!", cid)
                  setPlayerStorageValue(cid, 854789, 2)
                  talkState[talkUser] = 0
                  return true
               else
                  selfSay(check, cid)
                  talkState[talkUser] = 0
                  return true
               end
            elseif getPlayerStorageValue(cid, 854789) == 2 then
               selfSay("Ok then, you need to caught a {"..(npc.poke).."}, and bring it to me... Come back when you do that!", cid)
               setPlayerStorageValue(cid, 854789, 3)
               setPlayerStorageValue(cid, 854788, npc.poke)
               talkState[talkUser] = 0
               return true
            elseif getPlayerStorageValue(cid, 854789) == 3 then
               if getPlayerStorageValue(cid, 854788) == 'done' then
                  selfSay("Very well, talk to me again when you want to continue!", cid)
                  setPlayerStorageValue(cid, 854789, 4)
                  setPlayerStorageValue(cid, 854788, -1)
                  setPlayerStorageValue(cid, 854787, npc.poke)
                  talkState[talkUser] = 0
                  return true
               else
                  selfSay("You didn't caught the pokemon what i asked for! Go do it!", cid)
                  talkState[talkUser] = 0
                  return true
               end
            elseif getPlayerStorageValue(cid, 854789) == 4 then
               local sto = getFreeTaskStorage(cid)
               local c = 0
               if sto == -1 then
                  selfSay("You can't get more tasks! You are already with the maximum of "..(maxTasks).." tasks!", cid)
                  talkState[talkUser] = 0
                  return true
               end
               
               local str = "Ok then, now you need to kill: {"
               for e, f in pairs(npc.task1) do
                   for a = 1, #f do
                       str = str..((a == #f and c ~= 0) and " and " or a ~= 1 and ", " or "")..f[a][2].." "..f[a][1]
                       c = c+1
                   end
               end
               str = str.."} with the {"..(npc.poke).."} which you caught!"
               selfSay(str, cid)
               setPlayerStorageValue(cid, 854789, 5)
               setStorageArray(cid, sto, npc.task1)
               talkState[talkUser] = 0
               return true
            elseif getPlayerStorageValue(cid, 854789) == 5 then
               if isMyTaskComplete(cid, getNpcCid()) then
                  selfSay("Very well, you have done my first task... Talk to me again when you want to continue!", cid)
                  local sto = getMyTaskSto(cid, getNpcCid())
                  setPlayerStorageValue(cid, sto, -1)
                  setPlayerStorageValue(cid, 854789, 6)
                  talkState[talkUser] = 0
                  return true
               else
                  selfSay("You didn't complete my task yet... Go end it!", cid)
                  talkState[talkUser] = 0
                  return true
               end
            elseif getPlayerStorageValue(cid, 854789) == 6 then
               local sto = getFreeTaskStorage(cid)
               local c = 0
               if sto == -1 then
                  selfSay("You can't catch more tasks! You are already with the maximum of "..(maxTasks).." tasks!", cid)
                  talkState[talkUser] = 0
                  return true
               end
               
               local str = "Ok then, now for your last task you need to kill: {"
               for e, f in pairs(npc.task2) do
                   for a = 1, #f do
                       str = str..((a == #f and c ~= 0) and " and " or a ~= 1 and ", " or "")..f[a][2].." "..f[a][1]
                       c = c+1
                   end
               end
               str = str.."} with the {"..(npc.poke).."} which you caught!"
               selfSay(str, cid)
               setPlayerStorageValue(cid, 854789, 7)
               setStorageArray(cid, sto, npc.task2)
               talkState[talkUser] = 0
               return true
            elseif getPlayerStorageValue(cid, 854789) == 7 then
               if isMyTaskComplete(cid, getNpcCid()) then
                  ---
                  local storages = {17000, 63215, 17001, 13008, 5700}     --alterado v1.8
                  for s = 1, #storages do
                      if getPlayerStorageValue(cid, storages) >= 1 then
                         selfSay("You can't do that while is Flying, Riding, Surfing, Diving or mount a bike!", cid)
                         talkState[talkUser] = 0
                         return true
                      end
                  end
                  if #getCreatureSummons(cid) >= 1 then     --alterado v1.8
                     selfSay("Return your pokemon!", cid)
                     talkState[talkUser] = 0
                     return true
                  end  
                  ---
                  if checkPokemonForTask(cid, npc.poke) then
                     setPlayerClanRank(cid, npc.nextRank)
                     selfSay("So you complete my last task! Congradulations! Now you move up of rank and become {"..lookClans[getPlayerClanNum(cid)][getPlayerClanRank(cid)].."}!", cid)
                     setPlayerStorageValue(cid, 854789, -1)
                     setPlayerStorageValue(cid, 854787, -1)
                     setPlayerStorageValue(cid, 19999, 1)
                     local sto = getMyTaskSto(cid, getNpcCid())
                     setPlayerStorageValue(cid, sto, -1)
                     talkState[talkUser] = 0
                     return true
                  else
                     selfSay("You aren't with the "..(npc.poke).." which you caught before in your pokebag! Go get it!", cid)
                     talkState[talkUser] = 0
                     return true
                  end   
               else
                  selfSay("You didn't complete my task yet... Go end it!", cid)
                  talkState[talkUser] = 0
                  return true
               end        
            end
         end
              
return true
end
 
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())           

agora em data/actions abra actions.xml

<action actionid="6283" event="script" value="doorstorage.lua"/>
agora crie o arquivo com o nome doorstorage.lua em data/actions/scripts e nele coloque: 

function onUse(cid)
pos = {x=1050, y=1050, z=7}
if getPlayerStorageValue(cid, 19999) >= 1
elseif getPlayerClanName(cid) ~= 'Seavell' then
doPlayerSendTextMessage(cid,"SUA MENSAGEM.")
doTeleportThing(cid, pos)
else
doPlayerSendCancel(cid,"Necessario concluir a task e ser do clan seavell.")
end
end
return true
end
Lembrando que somente quem é do clan Seavell pode passar (que nem você pediu  -.- ) e também é necessário concluir a task do npc.
Não esqueça de colocar a actionid 6283 na porta.
Editado por Vinicius Xxgamexx (veja o histórico de edições)

Ando devagar, porque já tive pressa. E levo esse sorriso, porque já chorei demais...

________________________________________________________________________________

Minhas Sprites:

Mega Metagross

Mega Abomasnow

Pack de Shinys

[Posso atualizá-lo com novos shinys a qualquer momento]

Tutoriais:

[Completo] Criando e adicionando um novo Pokémon

[Actions] Criando quest no RME

Editores Lua/Xml/Sync Entre outros:

Editores Win/Mac/Linux

Link para o post
Compartilhar em outros sites

okay logo logo vou testar... so esperar que chegou o rancho tenho que ajuda a mae kkkkkkkkkkkkkkkkkkkkkk

se eu qerer adicioanr em outros npcs é so por essa tag?   setPlayerStorageValue(cid, 19999, 1)

ai mudar o valor da storage?

Continue meu filho desobediente

Haverá paz quando você estiver terminado

Coloque sua cabeça cansada para descansar

Não chore mais

Link para o post
Compartilhar em outros sites
Sim e no script da porta também. Caso venha funcionar corretamente você me envia uma resposta
ou ate mesmo uma mensagem e caso não funcione envie junto a resposta o log do erro.

Ando devagar, porque já tive pressa. E levo esse sorriso, porque já chorei demais...

________________________________________________________________________________

Minhas Sprites:

Mega Metagross

Mega Abomasnow

Pack de Shinys

[Posso atualizá-lo com novos shinys a qualquer momento]

Tutoriais:

[Completo] Criando e adicionando um novo Pokémon

[Actions] Criando quest no RME

Editores Lua/Xml/Sync Entre outros:

Editores Win/Mac/Linux

Link para o post
Compartilhar em outros sites

Humm deu um erro mas foi na door =p

 

13/05/2015 19:00:57] [Error - LuaScriptInterface::loadFile] data/actions/scripts/doorstorage.lua:4: 'then' expected near 'elseif'
[13/05/2015 19:00:57] [Warning - Event::loadScript] Cannot load script (data/actions/scripts/doorstorage.lua)
[13/05/2015 19:00:57] data/actions/scripts/doorstorage.lua:4: 'then' expected near 'elseif'

Continue meu filho desobediente

Haverá paz quando você estiver terminado

Coloque sua cabeça cansada para descansar

Não chore mais

Link para o post
Compartilhar em outros sites

faltou um then na linha :

if getPlayerStorageValue(cid, 19999) >= 1

.

if getPlayerStorageValue(cid, 19999) >= 1 then

I must not fear. Fear is the mind killer.

Link para o post
Compartilhar em outros sites

Eu já vi isso  :hum: ... mesmo assim vlw  ^^ 

function onUse(cid)
pos = {x=1050, y=1050, z=7}
if getPlayerStorageValue(cid, 19999) >= 1 then
elseif getPlayerClanName(cid) ~= 'Seavell' then
doPlayerSendTextMessage(cid,"SUA MENSAGEM.")
doTeleportThing(cid, pos)
else
doPlayerSendCancel(cid,"Necessario concluir a task e ser do clan seavell.")
end
end
return true
end

xandeloko ta ai

Ando devagar, porque já tive pressa. E levo esse sorriso, porque já chorei demais...

________________________________________________________________________________

Minhas Sprites:

Mega Metagross

Mega Abomasnow

Pack de Shinys

[Posso atualizá-lo com novos shinys a qualquer momento]

Tutoriais:

[Completo] Criando e adicionando um novo Pokémon

[Actions] Criando quest no RME

Editores Lua/Xml/Sync Entre outros:

Editores Win/Mac/Linux

Link para o post
Compartilhar em outros sites

tentei trocar as storages tambem não dei coloquei o que o stinger falo mas tambem não

 

stinger: deu esse erro

 

[13/05/2015 19:11:48] [Error - LuaScriptInterface::loadFile] data/actions/scripts/doorstorage.lua:12: '<eof>' expected near 'end'
[13/05/2015 19:11:48] [Warning - Event::loadScript] Cannot load script (data/actions/scripts/doorstorage.lua)
[13/05/2015 19:11:48] data/actions/scripts/doorstorage.lua:12: '<eof>' expected near 'end'

Continue meu filho desobediente

Haverá paz quando você estiver terminado

Coloque sua cabeça cansada para descansar

Não chore mais

Link para o post
Compartilhar em outros sites

Fiz esse baseado no que o vinicius postou, desconheço a função getPlayerClanName() :

local pos = {x=1050, y=1050, z=7}
local storage = 19999

function onUse(cid)

	if getPlayerStorageValue(cid, storage) >= 1 and getPlayerClanName(cid) == 'Seavell' then
		doPlayerSendTextMessage(cid,"SUA MENSAGEM.")
		doTeleportThing(cid, pos)
	else
		doPlayerSendCancel(cid,"Necessario concluir a task e ser do clan seavell.")
	end

	return true
end

I must not fear. Fear is the mind killer.

Link para o post
Compartilhar em outros sites

Como você tentou trocar a storage ?  -.- (script)

function onUse(cid)
local pos = {x=1050, y=1050, z=7}
if getPlayerStorageValue(cid, 19999) >= 1 then
elseif getPlayerClanName(cid) ~= 'Seavell' then
doPlayerSendTextMessage(cid,"SUA MENSAGEM.")
doTeleportThing(cid, pos)
else
doPlayerSendCancel(cid,"Necessario concluir a task e ser do clan seavell.")
end
end
end
return true
end

Ando devagar, porque já tive pressa. E levo esse sorriso, porque já chorei demais...

________________________________________________________________________________

Minhas Sprites:

Mega Metagross

Mega Abomasnow

Pack de Shinys

[Posso atualizá-lo com novos shinys a qualquer momento]

Tutoriais:

[Completo] Criando e adicionando um novo Pokémon

[Actions] Criando quest no RME

Editores Lua/Xml/Sync Entre outros:

Editores Win/Mac/Linux

Link para o post
Compartilhar em outros sites

 

Como você tentou trocar a storage ?  -.- (script)

function onUse(cid)
local pos = {x=1050, y=1050, z=7}
if getPlayerStorageValue(cid, 19999) >= 1 then
elseif getPlayerClanName(cid) ~= 'Seavell' then
doPlayerSendTextMessage(cid,"SUA MENSAGEM.")
doTeleportThing(cid, pos)
else
doPlayerSendCancel(cid,"Necessario concluir a task e ser do clan seavell.")
end
end
end
return true
end

 

Vinicius recomendo ler um pouco sobre lógica de programação pois é um "end" a cada "if", e como tu usou if, elseif faria o seguinte no script :

local pos = {x=1050, y=1050, z=7} -- Dica deixe a váriavel fora do callback sempre que possível.

function onUse(cid)

	if getPlayerStorageValue(cid, 19999) >= 1 then -- se o player tiver a storage então ele vai executar o que ta dentro do if ou seja NADA

		--- vazio ...

	elseif getPlayerClanName(cid) ~= 'Seavell' then -- Mas se ele não tiver a storage ai ele vai verificar esse elseif ou seja se qual player que NÃO TENHA O CLÂ SEAVELL, vai executar o que ta dentro
		-- ISSO
		doPlayerSendTextMessage(cid,"SUA MENSAGEM.")
		doTeleportThing(cid, pos)

	else -- Caso não entre em nenhum acima, vai executar isso
		-- TUTS TUTS
		doPlayerSendCancel(cid,"Necessario concluir a task e ser do clan seavell.")
	end
--end
--end
	return true
end -- E NÃO ESQUEÇA DO MAIS IMPORTANTE SEMPRE IDENTAR SEU CODE 

I must not fear. Fear is the mind killer.

Link para o post
Compartilhar em outros sites

ta a door ta funcionando agora, tenho que testar o clan... ter que upar rank 5 no clan espera ;D vai demora uns 8 mn

Continue meu filho desobediente

Haverá paz quando você estiver terminado

Coloque sua cabeça cansada para descansar

Não chore mais

Link para o post
Compartilhar em outros sites

Andei olhando o script do npc, e achei uma função que nem precisa usar a storage.

local pos = {x=1050, y=1050, z=7}

function onUse(player)

	if getPlayerClanName(player) == 'Seavell' and getPlayerClanRank(player) == 5 then -- só rank 5 ou seja terminado todas as tasks
		doPlayerSendTextMessage(player,"SUA MENSAGEM.")
		doTeleportThing(player, pos)
	else
		doPlayerSendCancel(player,"Necessario ser rank 5 ou mais do clan seavell.")
	end

	return true
end

I must not fear. Fear is the mind killer.

Link para o post
Compartilhar em outros sites

Stinger funciono, não precisa nem fazer a task do clan funciona com o comando /clan , tem como me ensinar a fazer porque eu vou fazer uma sala secreta pra cada clan tendeo?

 

aonde você tiro do npc?

 

esse ai é o esquilo do tio zangs neh kk

 

erro:

~[13/05/2015 20:23:27] [Error - Action Interface]
[13/05/2015 20:23:27] data/actions/scripts/doorstorage.lua:onUse
[13/05/2015 20:23:27] Description:
[13/05/2015 20:23:27] (luaDoPlayerSendTextMessage) Player not found

Editado por xandeloko (veja o histórico de edições)

Continue meu filho desobediente

Haverá paz quando você estiver terminado

Coloque sua cabeça cansada para descansar

Não chore mais

Link para o post
Compartilhar em outros sites
local pos = {x=1050, y=1050, z=7}
local clan = "Seavell" -- Nome do clan
local rank = 5 -- rank necessário

function onUse(player)

	if getPlayerClanName(player) == clan and getPlayerClanRank(player) >= rank then
		doPlayerSendTextMessage(player, 19, "SUA MENSAGEM.")
		doTeleportThing(player, pos)
	else
		doPlayerSendCancel(player,"Necessario ser rank " .. rank .. " ou mais do clan " .. clan .. ".")
	end

	return true
end

sim é o que esquilo negão do tio zangs HAUHSUAHSH

Editado por Stinger (veja o histórico de edições)

I must not fear. Fear is the mind killer.

Link para o post
Compartilhar em outros sites

o erro ainda continua...

 


[13/05/2015 20:33:21] [Error - Action Interface]
[13/05/2015 20:33:21] data/actions/scripts/doorstorage.lua:onUse
[13/05/2015 20:33:21] Description:
[13/05/2015 20:33:21] (luaDoPlayerSendTextMessage) Player not found

Editado por xandeloko (veja o histórico de edições)

Continue meu filho desobediente

Haverá paz quando você estiver terminado

Coloque sua cabeça cansada para descansar

Não chore mais

Link para o post
Compartilhar em outros sites

aparentemente ta sem erro e quando eu for fazer pra outros clans?

 

local pos = {x=1050, y=1050, z=7}
local clan = "Seavell" -- Nome do clan
local rank = 5 -- rank necessário

function onUse(player)

    if getPlayerClanName(player) == clan and getPlayerClanRank(player) >= rank then
        doPlayerSendTextMessage(player, 19, "SUA MENSAGEM.")
        doTeleportThing(player, pos)
    else
        doPlayerSendCancel(player,"Necessario ser rank " .. rank .. " ou mais do clan " .. clan .. ".")
    end

    return true
end

 

é so modificar isso? e por exemplo psycraft

local clan = "Seavell" -- Nome do clan

Continue meu filho desobediente

Haverá paz quando você estiver terminado

Coloque sua cabeça cansada para descansar

Não chore mais

Link para o post
Compartilhar em outros sites

                        Eu adicionei um end a mais pois mesmo tendo certeza que estava certo

eu resolvi colocar pela function e acabei confundindo com um script que estava criando aqui, e essa regra de

um end para cada if eu aprendi no notepad  :P. Enfim obrigado por ajudar minha net estava horrível ontem.

Ando devagar, porque já tive pressa. E levo esse sorriso, porque já chorei demais...

________________________________________________________________________________

Minhas Sprites:

Mega Metagross

Mega Abomasnow

Pack de Shinys

[Posso atualizá-lo com novos shinys a qualquer momento]

Tutoriais:

[Completo] Criando e adicionando um novo Pokémon

[Actions] Criando quest no RME

Editores Lua/Xml/Sync Entre outros:

Editores Win/Mac/Linux

Link para o post
Compartilhar em outros sites

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo