Ir para conteúdo
Banner com Efeitos

Featured Replies

Postado
  • Este é um post popular.

Boa Tarde Turma, Hoje vou Postar um sistema De Torneio Para Poketibia!

 

Para que possa funcionar o sistema de Torneio verifique se na (area pvp-zone ) funciona o pvp, caso nao funciona tentem procurar um tutorial de como liberar o pvp-zone e talves tente mudar isso aki no config.lua de voces:

worldType = "pvp-enforced"

protectionLevel = 1
 
Bom Chega de Mimimi e vamos La:
 
data/lib/Torneio.lua e add isso:

torneio = {


awardTournament = 2160,---- Premio
awardAmount = 10,---- quantia do Premio
playerTemple = {x = 1096, y = 1009, z = 7}, ---- posiçao do Templo
tournamentFight = {x = 909, y = 978, z = 7}, ----- Area (Mapa) do torneio
area = {fromx = 899, fromy = 968, fromz = 7, tox = 919, toy = 989, toz= 7},---- fromx = 899, fromy = 968, fromz = 7 : posiçao superior a esquerda do Mapa do torneio /// tox = 919, toy = 989, toz= 7 : Posiçao inferior direito do Mapa do Torneio
waitPlace = {x = 992, y = 998, z = 7}, ---- Sala de Espera (Coloque No-logout na area)
waitArea = {fromx = 987, fromy = 993, fromz = 7, tox = 997, toy = 1003, toz= 7}, ---- fromx = 899, fromy = 968, fromz = 7 : posiçao superior a esquerda do Mapa Sala de espera /// tox = 919, toy = 989, toz= 7 : Posiçao inferior direito do Mapa sala de espera
startHour = "11:30:00", ---- Hora que Inicia as Iscriçoes do Torneio
endHour = "11:35:00", ----- Hora que Começa a Batalha
price = 10000, ------ Custo para se inscrever no torneio
}

function getPlayersInArea(area)

local players = {}

for x = area.fromx,area.tox do
for y = area.fromy,area.toy do
for z = area.fromz,area.toz do

local m = getTopCreature({x=x, y=y, z=z}).uid

if m ~= 0 and isPlayer(m) then
table.insert(players, m)
end
end
end
end
return players
end

 
Depois vai em Globaleevents/Torneio.lua

function onTimer()



if #getPlayersInArea(torneio.area) > 1 then
doBroadcastMessage("[Torneio] O torneio desta vez não teve vencedor, tentar na próxima vez!") return true end

for _, pid in ipairs(getPlayersInArea(torneio.waitArea)) do
doTeleportThing(pid, torneio.tournamentFight)

doPlayerSendTextMessage(pid, 21, "[Torneio] O torneio começou, e que vença o melhor ! HEHEHEHE.")
end
return true
end

 
<globalevent name="TournamentStart" time="11:35" event="script" value="Torneio.lua"/>
 
Depois vai em Actions/Torneio.lua:
Atençao: Voce faz uma area do Torneio no Map editor e Coloca PVP-Zone no Mapa editor  e coloca uma Alavanca com a uid "18279"

function onUse(cid, item)


if #getCreatureSummons(cid) >= 1 then
doPlayerSendCancel(cid, "[Torneio] Nao Pode Usar o Bau com Pokemon Fora Da Ball!.")
else
if #getPlayersInArea(torneio.area) > 1 then

doPlayerSendTextMessage(cid, 20 ,"Somente o Ultimo Sobrevivente poderar Usar essa Alavanca") return true end
doTeleportThing(cid, torneio.playerTemple)
doPlayerAddItem(cid,6569,10)
doPlayerSendTextMessage(cid, 21, "[Torneio] Jovem Treinador Parabéns, você ganhou o torneio e ganhou [10] Rare Candy + ["..getItemNameById(torneio.awardTournament).."] .")

setPlayerStorageValue(cid,130131,getPlayerStorageValue(cid,130131)+1)
doPlayerSendTextMessage(cid,MESSAGE_EVENT_ORANGE,"[Torneio-Score] Voce Agora Tem ["..(getPlayerStorageValue(cid,130131) + 1).."] Torneio SCORES.")
doPlayerAddItem(cid, torneio.awardTournament, torneio.awardAmount)
return true
end
end

 
XML: <action uniqueid="18279" event="script" value="Torneio.lua"/>
 
Agora o NPC TORNEIO NPCS/NPCS.XML:


<?xml version="1.0" encoding="UTF-8"?>
<npc name="Tournament" script="Torneio.lua" walkinterval="2000" floorchange="0">
<health now="150" max="150"/>
<look type="664" head="20" body="100" legs="50" feet="99" corpse="2212"/>]
<parameters>
<parameter key="message_greet" value="Ola |PLAYERNAME|. Voce Gostaria de Participar de Um torneio de Pokemon? Digite [torneio/enter] !."/>
</parameters>
</npc>

 

NPC/SCRIPTS/Torneio.lua:

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, 'torneio') or msgcontains(msg, 'enter') then



selfSay('Você quer participar do torneio por ['..torneio.price..'] dollars? [sim/Yes]', cid)
talkState[talkUser] = 2


elseif talkState[talkUser] == 2 then

if msgcontains(msg, 'yes') or msgcontains(msg, 'sim') then

if os.date("%X") < torneio.startHour or os.date("%X") > torneio.endHour then
selfSay('As inscrições para o torneio terminaram, volte Amanha AS 18:00 para nova inscriçao!.', cid)
return true
end

if doPlayerRemoveMoney(cid, torneio.price) then
doTeleportThing(cid, torneio.waitPlace)
setPlayerStorageValue(cid,130130,1)
doPlayerSendTextMessage(cid, 21, "Bem-vindo, esta é a sala de espera, você espera aqui enquanto o torneio não começa. hora de início: {"..torneio.endHour.."}.")
else

selfSay('Voce nao Tem Dinheiro ('..torneio.price..').', cid)
end
else
selfSay('Voce nao quer participar do Torneio? Vem no Proximo Dia / Todos os Dias as [11:35]!', cid)
talkState[talkUser] = 0
end
end
end

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

 

 

[*] Bom é so Isso Flw bj ;*

 

 

 


 

 

  • Respostas 31
  • Visualizações 8.1k
  • Created
  • Última resposta

Top Posters In This Topic

Most Popular Posts

  • Amigo tipo no meu lib naum tem nada chamado "torneio" eu tenho que adicionar?! Tipo Se tem skype pra me encinar melhor naum entendi

Postado

REP+

 

Otimo!!

Meus Contatos!

 

Minhas Funções:

 

               Skype: TsplayerT

         Facebook: TakaFukushii

          YouTube: ADoseDupla

           Twitter: @_Splayer_

 

 

 

 

 

 

 

                             Mapper:▓▓▓▓▓▓▓▓▓▓ 97%

     Programmer:▓▓▓▓▓▒▒▒▒▒ 45%

             Scripter:▓▓▓▓▓▓▓▓▓▒ 83%

              Spriter:▓▓▓▓▓▓▒▒▒▒ 57%

    Gamemaster:▓▓▓▓▓▓▓▓▓▓ 99%

        Ot Creator:▓▓▓▓▓▓▓▒▒▒71%

Ot Client Maker:▓▓▓▓▓▓▓▒▒▒74%

 

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

Quem Está Navegando 0

  • Nenhum usuário registrado visualizando esta página.

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.7k

Informação Importante

Confirmação de Termo