Ir para conteúdo
  • Cadastre-se

(Resolvido)[AJUDA] starter.lua


Ir para solução Resolvido por zipter98,

Posts Recomendados

Olá galera do TK , venho hoje novamente pedir ajuda com um problema no arquivo starter.lua , e as imagens abaixo irão ajudar a explicar.





1° Problema: Todos do lado esquerdo são TORCHIC , e do lado direito , TODOS são CHARMANDER

Imagem abaixo


hoehTMM.png




- Todas as placas que devem ser clicadas para receber o pokemon , estão da seguinte forma:

Imagem


YFaWQjc.png Zn8NikG.png





Abaixo seguem os arquivos que definem tudo citado acima:

Starter.lua

local starterpokes = {

["Treecko"] = {x = 83, y = 61, z = 5},
["Torchic"] = {x = 83, y = 63, z = 5},
["Mudkip"] = {x = 83, y = 65, z = 5},
["Bulbasaur"] = {x = 99, y = 61, z = 5},
["Charmander"] = {x = 99, y = 63, z = 5},
["Squirtle"] = {x = 99, y = 65, z = 5},
}
local btype = "super"
 
 
local storage = 66966 -- storage
 
 
function onUse(cid, item, frompos, item2, topos)
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, storage) <= 0 then
addPokeToPlayer(cid, pokemon, level, extrastr, nil, 0, btype, false)    --alterado v2.9
doPlayerSendTextMessage(cid, 27, "Parabéns!! Você pegou seu Pokemon Inicial!!")
doPlayerSendTextMessage(cid, 27, "BEM-VINDO AO POKEMON LUMINISMO ENTRE NO TELEPORT")
doSendMagicEffect(getThingPos(cid), 29)
doSendMagicEffect(getThingPos(cid), 27)
doSendMagicEffect(getThingPos(cid), 29)
doPlayerAddItem(cid,2392,100)
doPlayerAddItem(cid,12344,100)
setPlayerStorageValue(cid, storage, 1)
else
doPlayerSendCancel(cid, "Você já pegou seu Pokémon")
end
return TRUE
end




Sua Tag:

-- BOXES (poke inicial)
<action itemid="5353" event="script" value="starter.lua"/>

 

starter.lua

Link para o post
Compartilhar em outros sites

Eu pensei nessa idéia , mas ao tentar passar pelo portal , diz que o char não pegou o pokemon inicial ainda.

Um segundo estou editando o script,

Link para o post
Compartilhar em outros sites

Eu pensei nessa idéia , mas ao tentar passar pelo portal , diz que o char não pegou o pokemon inicial ainda.

 

Manda o script do portal...

Se quiser sua dúvida tirada, mande PM com os links, e não com a dúvida (outros podem ter a mesma dúvida, e o fórum serve para ser usado).

 

Tópicos:


 

yNlhRVC.png

 

55px-Judo_yellow_belt.svg.png

Link para o post
Compartilhar em outros sites

Muda seu starter.lua, Depois crie outros .lua e coloque mesma storage quando jogador pegar um ele não vai poder pegar os demais.

 

function onUse(cid, item, frompos, item2, topos)
if getPlayerStorageValue(cid, 15215) <= 0 then
doPlayerAddItem(cid, 7884, 1)
doPlayerAddItem(cid, 7885, 1)
doPlayerAddItem(cid, 7886, 1)
doPlayerAddItem(cid, 7891, 1)
doPlayerAddItem(cid, 8777, 100)
doPlayerAddExp(cid, 1847300)
addVipDays(cid, 30)

doPlayerSendTextMessage(cid, 20,"BEM-VINDO AO POKEMON LUMINISMO ENTRE NO TELEPORT")
setPlayerStorageValue(cid, 15215, 1)

local rat = {x=1031,y=1010,z=5}
local cat = {x=1029,y=1010,z=5}
local wee = {x=1027,y=1010,z=5}

local pox = getTownTemplePosition(1)
local health = 325
local maxhealth = 325
local description = "Contains a Rattata."
local poke1 = "This is Rattata's pokeball. HP = ["..health.."/"..maxhealth..]"
item = doCreateItemEx(2219)
doItemSetAttribute(item, "poke", poke1)
doItemSetAttribute(item, "nome", "Rattata")
doItemSetAttribute(item, "apelido", "Rattata")

doItemSetAttribute(item, "description", description)
doPlayerAddItemEx(cid, item, true)
doTransformItem(item, 2222)
doPlayerSendTextMessage(cid, 27, "You got your first pokemon! Here is some experience to help you on your way.")
doPlayerSendTextMessage(cid, 27, "Don\'t forget to use your pokedex on every undiscovered pokemon!")
doPlayerAddExp(cid, 800)
doTeleportThing(cid, pox)
doPlayerAddItem(cid, 2152, 30)
doSendMagicEffect(pox, 21)
doPlayerAddSoul(cid, 1)
setPlayerStorageValue(cid, 54842, "Rattata, ")
return TRUE
else
doPlayerSendTextMessage(cid, 20, "Você já pegou seu pokemon")
end

end

 

 

 

Creditos : Kimoszin

Editado por Septy (veja o histórico de edições)
Link para o post
Compartilhar em outros sites

Manda o script do portal...

Pra falar verdade não sei onde se encontra , mas tem essa informação sobre o portal

Off: Vou dar um pulo no mercado , ja volto. [16:50]

iDeEYN1.png

 

 

Muda seu starter.lua, Depois crie outros .lua e coloque mesma storage quando jogador pegar um ele não vai poder pegar os demais.

 

function onUse(cid, item, frompos, item2, topos)

if getPlayerStorageValue(cid, 15215) <= 0 then

doPlayerAddItem(cid, 7884, 1)

doPlayerAddItem(cid, 7885, 1)

doPlayerAddItem(cid, 7886, 1)

doPlayerAddItem(cid, 7891, 1)

doPlayerAddItem(cid, 8777, 100)

doPlayerAddExp(cid, 1847300)

addVipDays(cid, 30)

doPlayerSendTextMessage(cid, 20,"BEM-VINDO AO POKEMON LUMINISMO ENTRE NO TELEPORT")

setPlayerStorageValue(cid, 15215, 1)

local rat = {x=1031,y=1010,z=5}

local cat = {x=1029,y=1010,z=5}

local wee = {x=1027,y=1010,z=5}

local pox = getTownTemplePosition(1)

local health = 325

local maxhealth = 325

local description = "Contains a Rattata."

local poke1 = "This is Rattata's pokeball. HP = ["..health.."/"..maxhealth..]"

item = doCreateItemEx(2219)

doItemSetAttribute(item, "poke", poke1)

doItemSetAttribute(item, "nome", "Rattata")

doItemSetAttribute(item, "apelido", "Rattata")

doItemSetAttribute(item, "description", description)

doPlayerAddItemEx(cid, item, true)

doTransformItem(item, 2222)

doPlayerSendTextMessage(cid, 27, "You got your first pokemon! Here is some experience to help you on your way.")

doPlayerSendTextMessage(cid, 27, "Don\'t forget to use your pokedex on every undiscovered pokemon!")

doPlayerAddExp(cid, 800)

doTeleportThing(cid, pox)

doPlayerAddItem(cid, 2152, 30)

doSendMagicEffect(pox, 21)

doPlayerAddSoul(cid, 1)

setPlayerStorageValue(cid, 54842, "Rattata, ")

return TRUE

else

doPlayerSendTextMessage(cid, 20, "Você já pegou seu pokemon")

end

end

 

 

Creditos : Kimoszin

O que são todos esses PlayerAddItem no inicio da script ? São itens que vão vir junto com o pokemon ??

Editado por Born Retarded (veja o histórico de edições)
Link para o post
Compartilhar em outros sites

Pra falar verdade não sei onde se encontra , mas tem essa informação sobre o portal

Off: Vou dar um pulo no mercado , ja volto. [16:50]

iDeEYN1.png

 

 
 

O que são todos esses PlayerAddItem no inicio da script ? São itens que vão vir junto com o pokemon ??

 

Vá em movements.xml

e procure pelo número 8302, na linha dele vai ter value = "scripts/ ... "  abra o arquivo ... da pasta movements\\scripts

Se quiser sua dúvida tirada, mande PM com os links, e não com a dúvida (outros podem ter a mesma dúvida, e o fórum serve para ser usado).

 

Tópicos:


 

yNlhRVC.png

 

55px-Judo_yellow_belt.svg.png

Link para o post
Compartilhar em outros sites

Vá em movements.xml

e procure pelo número 8302, na linha dele vai ter value = "scripts/ ... "  abra o arquivo ... da pasta movements\\scripts

A Tag que refere-se ao 8302 , é do arquivo abaixo

local STORAGE = 66966    --Storage.

local VALUE = 1      --Valor da storage acima.
local POS = {x = 1052, y = 1052, z = 7}   --Para onde será teleportado.
function onStepIn(cid, item, position, fromPosition)
    if not isPlayer(cid) then return true end
    if getPlayerStorageValue(cid, STORAGE) >= VALUE then
        doTeleportThing(cid, POS)
        doPlayerSendTextMessage(cid, 27, "Você foi teleportado para Saffron.")
        return true
    else
        return doPlayerSendCancel(cid, "Você não pegou seu pokemon inicial!.") and doTeleportThing(cid, fromPosition)
    end
    return true
end

Link para o post
Compartilhar em outros sites

local POS = {x = 1052, y = 1052, z = 7}   --Para onde será teleportado.
function onStepIn(cid, item, position, fromPosition)
    if not isPlayer(cid) then 
return true 
end
    if getPlayerStorageValue(cid, 66966) > -1 then
        doTeleportThing(cid, POS)
        doPlayerSendTextMessage(cid, 27, "Você foi teleportado para Saffron.")
        return true
    else
      doPlayerSendCancel(cid, "Você não pegou seu pokemon inicial!.")
      doTeleportThing(cid, fromPosition)
    end
    return true
end

Vou editar o outro...

Se quiser sua dúvida tirada, mande PM com os links, e não com a dúvida (outros podem ter a mesma dúvida, e o fórum serve para ser usado).

 

Tópicos:


 

yNlhRVC.png

 

55px-Judo_yellow_belt.svg.png

Link para o post
Compartilhar em outros sites

 


local POS = {x = 1052, y = 1052, z = 7}   --Para onde será teleportado.
function onStepIn(cid, item, position, fromPosition)
    if not isPlayer(cid) then 
return true 
end
    if getPlayerStorageValue(cid, 66966) > -1 then
        doTeleportThing(cid, POS)
        doPlayerSendTextMessage(cid, 27, "Você foi teleportado para Saffron.")
        return true
    else
      doPlayerSendCancel(cid, "Você não pegou seu pokemon inicial!.")
      doTeleportThing(cid, fromPosition)
    end
    return true
end

Vou editar o outro...

 

Com isso a pessoa poderá entrar no portal que leva para a cidade sem ter pego os pokemons iniciais ?

Link para o post
Compartilhar em outros sites

Com isso a pessoa poderá entrar no portal que leva para a cidade sem ter pego os pokemons iniciais ?

 

Não, 

to fazendo o outro...

 

Nesse script só poderá passar no tp, caso tenha maior que , -1 , que é o padrão quando não se tem storage...

local storage = 66966 -- storage
 
local starterpokes = {
        [4230] = "Treecko",
        [4231] = "Torchic",
        [4232] = "Mudkip",
        [4233] = "Bulbasaur",
        [4234] = "Charmander",
        [4235] = "Squirtle",
}
 
function onUse(cid, item, frompos, item2, topos)       
        if getPlayerStorageValue(cid, storage) <= 0 then       
                local pokemon = starterpokes[item.aid]
                addPokeToPlayer(cid, pokemon, level, extrastr, nil, 0, "super" , false)    --alterado v2.9
                doPlayerSendTextMessage(cid, 27, "Parabéns!! Você pegou seu Pokemon Inicial!!")
                doPlayerSendTextMessage(cid, 27, "BEM-VINDO AO POKEMON LUMINISMO ENTRE NO TELEPORT")
                doSendMagicEffect(getThingPos(cid), 29)
                doSendMagicEffect(getThingPos(cid), 27)
                doSendMagicEffect(getThingPos(cid), 29)
                doPlayerAddItem(cid,2392,100)
                doPlayerAddItem(cid,12344,100)
                setPlayerStorageValue(cid, storage, 1)
        else
        doPlayerSendCancel(cid, "Você já pegou seu Pokémon")
        end
        return true
end

Coloque actions id 4230 onde no trecko e assim em diante...

 

 

 

use essa tag:

<action actionid="4235;4234;4233;4232;4231;4230" event="script" value="starter.lua"/>
Editado por Caronte (veja o histórico de edições)

Se quiser sua dúvida tirada, mande PM com os links, e não com a dúvida (outros podem ter a mesma dúvida, e o fórum serve para ser usado).

 

Tópicos:


 

yNlhRVC.png

 

55px-Judo_yellow_belt.svg.png

Link para o post
Compartilhar em outros sites

 

Não, 

to fazendo o outro...

 

Nesse script só poderá passar no tp, caso tenha maior que , -1 , que é o padrão quando não se tem storage...

local storage = 66966 -- storage
 
local starterpokes = {
        [4230] = "Treecko",
        [4231] = "Torchic",
        [4232] = "Mudkip",
        [4233] = "Bulbasaur",
        [4234] = "Charmander",
        [4235] = "Squirtle",
}
 
function onUse(cid, item, frompos, item2, topos)       
        if getPlayerStorageValue(cid, storage) <= 0 then       
                local pokemon = starterpokes[item.aid]
                addPokeToPlayer(cid, pokemon, level, extrastr, nil, 0, "super" , false)    --alterado v2.9
                doPlayerSendTextMessage(cid, 27, "Parabéns!! Você pegou seu Pokemon Inicial!!")
                doPlayerSendTextMessage(cid, 27, "BEM-VINDO AO POKEMON LUMINISMO ENTRE NO TELEPORT")
                doSendMagicEffect(getThingPos(cid), 29)
                doSendMagicEffect(getThingPos(cid), 27)
                doSendMagicEffect(getThingPos(cid), 29)
                doPlayerAddItem(cid,2392,100)
                doPlayerAddItem(cid,12344,100)
                setPlayerStorageValue(cid, storage, 1)
        else
        doPlayerSendCancel(cid, "Você já pegou seu Pokémon")
        end
        return true
end

Coloque actions id 4230 onde no trecko e assim em diante...

 

 

 

use essa tag:

<action actionid="4235;4234;4233;4232;4231;4230" event="script" value="starter.lua"/>

No caso colocar as ActionsID referentes a cada poke em suas respectivas placas correto ?

Link para o post
Compartilhar em outros sites

No caso colocar as ActionsID referentes a cada poke em suas respectivas placas correto ?

 

Exato.

Se quiser sua dúvida tirada, mande PM com os links, e não com a dúvida (outros podem ter a mesma dúvida, e o fórum serve para ser usado).

 

Tópicos:


 

yNlhRVC.png

 

55px-Judo_yellow_belt.svg.png

Link para o post
Compartilhar em outros sites

Exato.

Ao clicar na placa , aparece o seguinte erro no console:

 

Error - Action Interface] 
[22/02/2015 12:12:57] data/actions/scripts/starter.lua:onUse
[22/02/2015 12:12:57] Description: 
[22/02/2015 12:12:57] data/lib/some functions.lua:733: attempt to index local 'str' (a nil value)
[22/02/2015 12:12:57] stack traceback:
[22/02/2015 12:12:57] data/lib/some functions.lua:733: in function 'doCorrectString'
[22/02/2015 12:12:57] data/lib/some functions.lua:12: in function 'addPokeToPlayer'
[22/02/2015 12:12:57] data/actions/scripts/starter.lua:15: in function <data/actions/scripts/starter.lua:12>
Link para o post
Compartilhar em outros sites

Como é essa função ? 

addPokeToPlayer(cid, pokemon, level, extrastr, nil, 0, "super" , false)

Se quiser sua dúvida tirada, mande PM com os links, e não com a dúvida (outros podem ter a mesma dúvida, e o fórum serve para ser usado).

 

Tópicos:


 

yNlhRVC.png

 

55px-Judo_yellow_belt.svg.png

Link para o post
Compartilhar em outros sites

 

Como é essa função ? 

addPokeToPlayer(cid, pokemon, level, extrastr, nil, 0, "super" , false)

Como é ?   Não entendi...

Por acaso você está tentando dizer para eu adicionar essa linha na script que você modificou e me enviou ?

Editado por Born Retarded (veja o histórico de edições)
Link para o post
Compartilhar em outros sites

Como é ?   Não entendi...

Por acaso você está tentando dizer para eu adicionar essa linha na script que você modificou e me enviou ?

 

Não, eu quero saber os parâmetros dela...

 

esse pokemon é onde fica o nome do monstro que vai estar na pokebola ? 

extrastr é o que  ?

Se quiser sua dúvida tirada, mande PM com os links, e não com a dúvida (outros podem ter a mesma dúvida, e o fórum serve para ser usado).

 

Tópicos:


 

yNlhRVC.png

 

55px-Judo_yellow_belt.svg.png

Link para o post
Compartilhar em outros sites

Não, eu quero saber os parâmetros dela...

 

esse pokemon é onde fica o nome do monstro que vai estar na pokebola ? 

extrastr é o que  ?

Pokemon é o monstro.

extrastr não tenho certeza , mas pode ser que seja o nivel de boost do pokemon.

o 'nil' eu não sei o que é.

o 'super' deve ser o tipo de bola que ele vai vim [pokeball,greatball,superball,ultraball,masterball]

Editado por Born Retarded (veja o histórico de edições)
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