Ir para conteúdo
  • Cadastre-se

Posts Recomendados

Bem eu quero pedir um sistema de torneio para meu ot de pokemon é o seguinte

eu queria ums 2 npc e mais umas coisinha irei explicar da melhor forma possivel

é o seguinte eu queria ums 2 npc do seguinte modo eu queria q o primeiro fosse assim

player says:hi

npc says:Ola |Playername| sou ajudante do inscritor para o torneio Pokémon fale {torneio} para saber mais.

player says:torneio

npc says:desculpe você não pode se inscrever para o torneio Pokémon você não tem todas as insignias você pressisa ter no maximo e no minimo 8 insigneas para entrar no torneio.

e se o player tiver as 8 insigneas q seria ums items q eu mesmo edito tipo vc bota la no npc exemplo itemid"xxxx" coisa assim ai eu ja mudo o xxxx para o id dos items

e o outro npc é para inscrição segue o exemplo abaixo:

Player says:hi

npc says:Ola |playername| eu sou inscritor para o torneio Pokémon diga {torneio} para saber mais.

Player says:torneio

npc says:para inscrever-se para o torneio você pressisa me pagar 5 hd diga {yes} para pagar e entrar no torneio.

Player says:pagar

.

o player sabe 2152 é o id dos hd é pra tirar 5 de 2152 q é platium coin no tibia.

e tbm quando falar pagar é teleportado para outro lugar q quando eu por no mapa zone pvp

ai la os player tem q se matar ou simplesmente quando augum player fica sem os pokemons tipo todos morrerem ele é teleportado para o cp (obs:eu ajeito as coordenadas coloquem xxxx xxxx x[com x])

ja o ultimo q ficar vai ser teleportado para um canto ai eu quero mais outro npc

o Master Trainer Ash Ketchum

ai tenho um script aki como exemplo pq meu pokemon tem lvl system ai vo pegar o do brock pra vcs editarem do jeito q eu vo falar

\/

local focus = 0

local max_distance = 8

local talk_start = 0

local conv = 0

local fighting = false

local challenger = 0

local afk_limit_time = 30 -- seconds

local afk_time = 0 -- don't change

local battle_turn = 1 -- don't change

local challenger_turn = 0 -- don't change

local pokemons = {

{name = "Geodude", level = 28, extralevel = 12, sex = SEX_MALE, nick = "", ball = "normal"},

{name = "Rhyhorn", level = 27, extralevel = 17, sex = SEX_MALE, nick = "", ball = "normal"},

{name = "Graveler", level = 31, extralevel = 19, sex = SEX_MALE, nick = "", ball = "normal"},

{name = "Onix", level = 70, extralevel = 12, sex = SEX_MALE, nick = "", ball = "normal"},

{name = "Golem", level = 58, extralevel = 18, sex = SEX_MALE, nick = "Golemniso", ball = "normal"},

}

local function doSummonGymPokemon(npc)

local this = npc

if not isCreature(this) then return true end

if #getCreatureSummons(this) >= 1 or focus == 0 then return true end

local it = pokemons[battle_turn]

doSummonMonster(this, it.name)

local summon = getCreatureSummons(this)[1]

local balleffect = pokeballs["normal"].effect

if it.ball and pokeballs[it.ball] then

balleffect = pokeballs[it.ball].effect

end

doSendMagicEffect(getThingPos(summon), balleffect)

setPlayerStorageValue(summon, 10000, balleffect)

setPlayerStorageValue(summon, 10001, gobackmsgs[math.random(#gobackmsgs)].back:gsub("doka", it.nick ~= "" and it.nick or it.name))

setPlayerStorageValue(summon, 1007, it.nick ~= "" and it.nick or it.name)

doSetMonsterGym(summon, focus)

local name = it.nick ~= "" and it.nick or getCreatureName(this).."s "..it.name

setWildPokemonLevel(summon, it.level, getPokemonStatus(it.name, (it.extralevel + it.level)), name, 1.5)

doCreatureSay(this, gobackmsgs[math.random(#gobackmsgs)].go:gsub("doka", getPlayerStorageValue(summon, 1007)), 1)

fighting = true

battle_turn = battle_turn + 1

end

local function doWinDuel(cid, npc)

if not isCreature(cid) then return true end

local this = npc

local a = gymbadges[getCreatureName(this)] + 8

doCreatureSay(npc, "You won the duel! Congratulations, take this "..getItemNameById(a - 8).." as a prize.", 1)

local b = getPlayerItemById(cid, true, a)

if b.uid > 0 then doTransformItem(b.uid, b.itemid - 8) end

end

function onCreatureSay(cid, type, msg)

local msg = string.lower(msg)

if focus == cid then

talk_start = os.clock()

end

if msgcontains(msg, 'hi') and focus == 0 and getDistanceToCreature(cid) <= 4 then

focus = cid

talk_start = os.clock()

conv = 1

selfSay("Hello "..getCreatureName(cid)..", my name is Brock and I'm Pewter's Gym Leader. How may I help you?")

return true

end

if isDuelMsg(msg) and conv == 1 and focus == cid then

--if getPlayerItemCount(cid, gymbadges[getCreatureName(getThis())]) >= 1 then

-- selfSay("You have already won my Boulder Badge, maybe some other day we can fight.")

-- focus = 0

--return true

--end

if not hasPokemon(cid) then

selfSay("To battle agains't a gym leader you need pokemons.")

return true

end

selfSay("You are challenging me to a battle. It will be a "..#pokemons.." pokemon limit battle, let's start?")

conv = 2

return true

end

if isConfirmMsg(msg) and conv == 2 and focus == cid then

challenger = focus

setPlayerStorageValue(cid, 990, 1)

selfSay("Yea, let's fight!")

talk_start = os.clock()

addEvent(doSummonGymPokemon, 850, getThis())

conv = 3

return true

end

if isNegMsg(msg) and conv == 2 and focus == cid then

focus = 0

selfSay("It is better for you to refuse a battle against me!")

return true

end

if msgcontains(msg, 'bye') and focus == cid then

selfSay('Bye and do your best trainer!')

setPlayerStorageValue(focus, 990, -1)

focus = 0

return true

end

end

local afk_warning = false

local change = false

function onThink()

if focus == 0 then

selfTurn(2)

fighting = false

challenger = 0

challenger_turn = 0

battle_turn = 1

afk_time = 0

afk_warning = false

if #getCreatureSummons(getThis()) >= 1 then

setPlayerStorageValue(getCreatureSummons(getThis())[1], 1006, 0)

doCreatureAddHealth(getCreatureSummons(getThis())[1], -getCreatureMaxHealth(getCreatureSummons(getThis())[1]))

end

return true

else

if not isCreature(focus) then

focus = 0

return true

end

if fighting then

talk_start = os.clock()

if not isCreature(getCreatureTarget(getThis())) then

if #getCreatureSummons(challenger) >= 1 then

selfAttackCreature(getCreatureSummons(challenger)[1])

change = true

afk_time = 0

else

afk_time = afk_time + 0.5

if change then

change = false

challenger_turn = challenger_turn + 1

end

end

end

if afk_time > afk_limit_time then

setPlayerStorageValue(focus, 990, -1)

focus = 0

selfSay("I have waited too long, come back when you are ready!")

return true

end

if not afk_warning and afk_time > afk_limit_time / 2 then

selfSay("Where's your pokemon? Let's fight!")

afk_warning = true

end

if #getCreatureSummons(getThis()) == 0 then

if battle_turn > #pokemons then

addEvent(doWinDuel, 1000, focus, getThis())

setPlayerStorageValue(focus, 990, -1)

focus = 0

return true

end

addEvent(doSummonGymPokemon, 1000, getThis())

end

if not hasPokemon(challenger) or challenger_turn >= 7 or challenger_turn > #pokemons then

selfSay("You lost our duel! Maybe some other time you'll defeat me.")

setPlayerStorageValue(focus, 990, -1)

focus = 0

return true

end

end

local npcpos = getThingPos(getThis())

local focpos = getThingPos(focus)

if npcpos.z ~= focpos.z then

setPlayerStorageValue(focus, 990, -1)

focus = 0

selfSay("Bye then.")

return true

end

if (os.clock() - talk_start) > 30 then

selfSay("Good bye and keep training!")

setPlayerStorageValue(focus, 990, -1)

focus = 0

end

if getDistanceToCreature(focus) > max_distance then

setPlayerStorageValue(focus, 990, -1)

focus = 0

return true

end

local dir = doRedirectDirection(getDirectionTo(npcpos, focpos))

selfTurn(dir)

end

return true

end

Eu queria q editacem esse npc para em vez dedar insignea ele dar outro item e ainda assim teleportar para o cp se o kara perder ou mesmo se ganhar tbm ser teleportado

bem é isso pessoal obrigado desculpem pelos erro de português se tiver.

@UP

so mais uma coisa traduzam oq o npc fala para os player entenderem.

@UP

vim aki avisar q se poder coloca uma msg pra quando começar as inscrições e dizendo q dps de 10 minutos acaba as inscrições e dps q elas fechar tem q sair uma msg As inscrições para o torneio fecharam e o torneio vai começar em 2 minutos se preparem.

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

Ae ajudei? Rep+ :D
 

Link para o post
Compartilhar em outros sites

você não precisa escrever assim

assim é mais do que suficiente, é de bom senso e não estraga a vista.

Editei seu tópico e tirei o tamanho kingsize.

Link para o post
Compartilhar em outros sites

ok vou ler obrigado kimoszin eu n tinha lido por isso não sabia disso muito obrigado e mais uma coisa sera q nimguem vai faze auguma coisa :(

Ae ajudei? Rep+ :D
 

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