Primeiramente troque seu starter.lua (data/actions/scripts) por este:
local starterpokes = {
["Squirtle"] = {x = 51, y = 69, z = 7},
["Charmander"] = {x = 47, y = 69, z = 7}, --- muda posição dos baús remere map editor
["Bulbasaur"] = {x = 49, y = 69, z = 7},
}
local btype = "normal"
function onUse(cid, item, frompos, item2, topos)
if getPlayerLevel(cid) > 5 then --alterado v1.3
return true
end
local pokemon = ""
for a, b in pairs (starterpokes) do
if isPosEqualPos(topos, b) then
pokemon = a
end
end
if pokemon == "" then return true end
if getPlayerStorageValue(cid, 9658754) ~= 1 then --alterado v1.7 -opicional-
sendMsgToPlayer(cid, 27, "Talk to the Prof. Robert to choose your beginner city first!")
return true
end
local gender = getRandomGenderByName(pokemon)
local happy = 250
doPlayerAddItem(cid, 2394, 50)
doPlayerAddItem(cid, 12343, 20)
doPlayerAddItem(cid, 2160, 2)
doPlayerAddItem(cid, 12348, 100)
local item = doCreateItemEx(2219)
doItemSetAttribute(item, "poke", pokemon)
doItemSetAttribute(item, "hp", 1)
doItemSetAttribute(item, "happy", happy)
doItemSetAttribute(item, "gender", gender)
doItemSetAttribute(item, "description", "Contains a "..pokemon..".")
doItemSetAttribute(item, "fakedesc", "Contains a "..pokemon..".")
doItemSetAttribute(item, "unique", getCreatureName(cid)) --alterado v1.6
doPlayerAddItemEx(cid, item, true)
doTransformItem(item, pokeballs[btype].on)
doPlayerSendTextMessage(cid, 27, "You got your first pokemon! You also received some pokeballs to help you in your way.")
doPlayerSendTextMessage(cid, 27, "Don\'t forget to use your pokedex on every undiscovered pokemon!")
doSendMagicEffect(getThingPos(cid), 29)
doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid)))
doSendMagicEffect(getThingPos(cid), 27)
doSendMagicEffect(getThingPos(cid), 29)
return TRUE
end
Depois Troque seu Npc robert(data/npcs/scripts por este:
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
local places = {
["cerulean"] = 1,
["saffron"] = 2,
["lavender"] = 3,
["celadon"] = 4,
["pewter"] = 5, --Troca id das cidades se necessário
["viridian"] = 6,
["vermilion"] = 7,
["fuchsia"] = 8,
["cinnabar"] = 9,
["snow"] = 10,
}
if msgcontains(string.lower(msg), 'city') or msgcontains(string.lower(msg), 'citys') then
if getPlayerStorageValue(cid, 9658754) == 1 then
selfSay("You already choose your beginner town!", cid)
return true
else
selfSay("You can choose your beginner town between: {{saffron}, {cerulean}, {lavender}, {fuchsia}, {celadon}, {viridian}, {vermilion}, {pewter}, {cinnabar} or {snow}}.", cid)
return true
end
elseif places[string.lower(msg)] then
city = string.lower(msg)
selfSay("Are you sure which you want to begin in {".. doCorrectString(msg) .."}?", cid)
talkState[talkUser] = 2
return true
elseif msgcontains(msg, "yes") or msgcontains(msg, "Yes") and talkState[talkUser] == 2 then
if getPlayerStorageValue(cid, 9658754) == 1 then
selfSay("You already choose your beginner town!", cid)
return true
else
selfSay("OK then... Now your beginner town is ".. doCorrectString(city)..". Good luck in your jorney!", cid)
doPlayerSetTown(cid, places[city])
setPlayerStorageValue(cid, 9658754, 1)
return true
end
elseif msgcontains(msg, "no") or msgcontains(msg, "No") and talkState[talkUser] == 2 then
selfSay("Ok then... say again what city you want to begin!", cid)
talkState[talkUser] = 0
return true
end
return true
end
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())
Se fizer tudo corretamente, não terá erros.








info
Grupo: Visconde
Registrado: 15/05/13
Posts: 290
Reputação: +17
Bom galera, gostaria de uma ajuda pra resolver um problema que acredito que seja comun, porem não achei solução em outros meios.
O problema é o seguinte, você cria a conta, nasce em uma salinha, fala com um NPC e escolhe sua cidade, após isso você clica em um dos 3 baus e escolhe um pokemon inicial.
Script do NPC:
Editado Fevereiro 12 por Pokerangers