Ir para conteúdo

[Encerrado] Reward Chuck norris


lgan

Posts Recomendados

Dae pessoal.. to com um pequeno problema aki...

quero colocar uma recompensa pra quem derrotar o Chuck Norris. Após algumas pesquisas cheguei a conclusão que o ideal seria usar o script do starter.lua e fazer as modificações necessárias. não sou scripter nem nada sou apenas um curioso... e gosto de mexer em ots..

ta quase tudo certo soh estou com 2 problemas...

1° - a ball com o poke (lee ou chan) eh unique... assim como os pokes iniciais.. como faço para que não sejam unique?

2° - se o player ganhar do chuck norris ele pode ficar clicando no bau e pegando varias recompensas.... como posso fazer para que ele pegue apenas uma vez?

3°- isso não eh bem um problema...quando o player clica no bau ele teleporta pra city inicial.. se alguem souber como tiro essa função...


aki vai o script que estou usando...

local starterpokes = {

["hitmonchan"] = {x = 613, y = 990, z = 7},
["hitmonlee"] = {x = 615, y = 990, z = 7},
}

local btype = "normal"

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

if getPlayerLevel(cid) > 20 then
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, 759848) <= 6 then
sendMsgToPlayer(cid, 27, "Derrote o Chuck Norris primeiro!!")
return true
end --alterado v1.9 \/

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!")

addPokeToPlayer(cid, pokemon, 0, nil, btype, true)
doPlayerAddItem(cid, 11446, 10)


doSendMagicEffect(getThingPos(cid), 29)
doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid)))
doSendMagicEffect(getThingPos(cid), 27)
doSendMagicEffect(getThingPos(cid), 29)


return TRUE
end

 


flw

Editado por lgan
Link para o comentário
Compartilhar em outros sites

Pode postar sua função addPokeToPlayer (se não me engano, fica em some functions.lua).

 

local starterpokes = {
["hitmonchan"] = {x = 613, y = 990, z = 7},
["hitmonlee"] = {x = 615, y = 990, z = 7},
}
 
local btype = "normal"
 
function onUse(cid, item, frompos, item2, topos)
 
if getPlayerLevel(cid) > 20 then
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, 759848) <= 6 then
sendMsgToPlayer(cid, 27, "Derrote o Chuck Norris primeiro!!")
return true
end --alterado v1.9 \/
 
    if getPlayerStorageValue(cid, 938111) >= 1 then
        return doPlayerSendCancel(cid, "Você já pegou um pokémon!")
    end
 
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!")
 
addPokeToPlayer(cid, pokemon, 0, nil, btype, true)
doPlayerAddItem(cid, 11446, 10)
 
 
doSendMagicEffect(getThingPos(cid), 29)
setPlayerStorageValue(cid, 938111, 1)
doSendMagicEffect(getThingPos(cid), 27)
doSendMagicEffect(getThingPos(cid), 29)
 
 
return TRUE
end
Link para o comentário
Compartilhar em outros sites

Vá em data/action/action.xml e confira se você adicionou a tag certa :

<action itemid="1740" event="script" value="chucknorrischest.lua"/> --- vermelho é o id da chest

lembresse coloque no baú do hitmonlee e do hitmonchan um unique id que você não use.

Agora no chucknorrischest.lua

 

 

local starterpokes = {
["hitmonchan"] = {x = 613, y = 990, z = 7},
["hitmonlee"] = {x = 615, y = 990, z = 7},
}

local btype = "normal"

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

if getPlayerLevel(cid) > 20 then --level que pega o premio
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

local gender = getRandomGenderByName(pokemon)

local happy = 180

doPlayerAddItem(cid, 2160, 5) --- pode colocar itens adicionais para ganhar junto.


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, "firstpoke", getCreatureName(cid))
doPlayerAddItemEx(cid, item, true)

doTransformItem(item, pokeballs[btype].on)

doPlayerSendTextMessage(cid, 27, "Você é um verdadeiro campeão aqui está seu prêmio!")

doSendMagicEffect(getThingPos(cid), 29)
doSendMagicEffect(getThingPos(cid), 27)
doSendMagicEffect(getThingPos(cid), 29)


return TRUE
end

 

Ps : não sei se vai funcionar pois sou iniciante e não manjo de scripts mais dou pro galho.

 

 

 

 

 

 

 

 

 

 

Ops foi malz zipter você entende mais ajuda o cara ignore meu post

Editado por MaxxSilva
Link para o comentário
Compartilhar em outros sites

vlw ai quem tentou ajudar... mas resolvi aki mesmo... segue ai pra geral como ficou o script caso alguem queira fazer igual...

 

 

local starterpokes = {
["hitmonchan"] = {x = 613, y = 990, z = 7},
["hitmonlee"] = {x = 615, y = 990, z = 7},
}

local btype = "normal"

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

if getPlayerLevel(cid) > 20 then
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, 759848) <= 6 then
sendMsgToPlayer(cid, 27, "Derrote o Chuck Norris primeiro!!")
return true
end


if getPlayerStorageValue(cid, 759848) >= 8 then
sendMsgToPlayer(cid, 27, "você ja pegou sua recompença!!")
return true

end --alterado v1.9 \/

doPlayerSendTextMessage(cid, 27, "Pegue seu pokemon por ter derrotado o Chuck Norris!!")


addPokeToPlayer(cid, pokemon, 0, nil, btype, false)
doPlayerAddItem(cid, 11446, 10)
setPlayerStorageValue(cid,759848,8)




return TRUE
end

 

 

duvida sanada podem fechar....

Link para o comentário
Compartilhar em outros sites

  • 4 years later...
A questão neste tópico de suporte foi encerrada por falta de respostas. Este tópico está fechado e foi movido para Suporte - Tópicos Sem Resposta.

+ Caso a dúvida não tenha sido resolvida você poderá criar outro tópico solicitando ajuda.
* Lembre-se que é permitido dar UP no tópico a cada 24 horas para assim o destacar e manter movimentado.
Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.
×
×
  • Criar Novo...