Por
willian646
O evento é totalmente baseado no Foxy Quiz proveniente do GLA, no entanto é apenas uma base para vocês alterarem como acharem melhor.
Para começar será necessario que você crie um arquivo em talkactions>scripts para entrar no evento, como por exemplo : participar.lua
e entao colocar sua tag em talkactions.xml, como por exemplo:
<talkaction words="!participar;/participar" script="!participar.lua"/>
Tendo feito isso você irá colar esse codigo dentro desse arquivo:
function onSay(cid, words, param)pos = {x=1236, y=1125, z=15} --POSIÇAO QUE O PLAYER IRÁ COM O COMANDO
if getGlobalStorageValue(88788) == 1 then
doSendMagicEffect(getPlayerPosition(cid),19)
doTeleportThing(cid,pos)
else
doPlayerSendCancel(cid, "Desculpe mas o evento esta fechado !")
end
return true
end
Agora iremos para o script principal, vá em global events>scripts e crie o arquivo pokequiz.lua em seguida coloque sua tag em globalevents.xml como por exemplo:
<globalevent name="Pokequiz" interval="10" event="script" value="pokequiz.lua"/>
Lembrando que o intervalo de inicio do evento é com vcs, Tendo feito isso abra o arquivo e cole o seguinte código dentro :
quizstrg = 88788
local wave = 0
local CPpos = {x=1051, y=1047, z=7} --POSIÇAO QUE O PLAYER IRÁ SE ERRAR
function wave_acresc()
wave = wave + 1
addEvent(Quiz, 5000)
end
function Quiz()
if wave == 1 then
doBroadcastMessage("Na serie pokemon RAYQUAZA possui mega evolucao ?", RED)
addEvent(Resposta, 10000)
elseif wave == 2 then
doBroadcastMessage("Na serie pokemon ARCEUS e considerado um pokemon RARO ?", RED)
addEvent(Resposta, 10000)
elseif wave == 3 then
doBroadcastMessage("Na serie pokemon MEW criou os 3 caes lendarios ?", RED)
addEvent(Resposta, 10000)
elseif wave == 4 then
doBroadcastMessage("Na serie pokemon ARCEUS tem o poder de mudar de tipo livremente ?", RED)
addEvent(Resposta, 10000)
elseif wave == 5 then
doBroadcastMessage("Na serie pokemon GIRATINA possui 2 formas sendo elas alterada e fantasma ?", RED)
addEvent(Resposta, 10000)
elseif wave == 6 then
doBroadcastMessage("Na serie pokemon DIALGA e PALKIA sao rivais ?", RED)
addEvent(Resposta, 10000)
elseif wave == 7 then
doBroadcastMessage("Na serie pokemon CELEBI possui a habilidade de viajar entre dimensoes ?", RED)
addEvent(Resposta, 10000)
elseif wave == 8 then
doBroadcastMessage("Na serie pokemon SOLGALEO e a primeira evolucao de cosmog ?", RED)
addEvent(Resposta, 10000)
elseif wave == 9 then
doBroadcastMessage("Na serie pokemon MAGEARNA e uma das ultra beasts ?", RED)
addEvent(Resposta, 10000)
elseif wave == 10 then
doBroadcastMessage("Na serie pokemon a cor original de MAGEARNA e laranja ?", RED)
addEvent(Resposta, 10000)
elseif wave == 11 then
doBroadcastMessage("O evento Quiz terminou !", RED)
addEvent(winPlayers, 5000)
end
end
function Resposta()
if wave == 1 then
addEvent(TPFalso, 5000)
elseif wave == 2 then
addEvent(TPVerdadeiro, 5000)
elseif wave == 3 then
addEvent(TPVerdadeiro, 5000)
elseif wave == 4 then
addEvent(TPFalso, 5000)
elseif wave == 5 then
addEvent(TPVerdadeiro, 5000)
elseif wave == 6 then
addEvent(TPFalso, 5000)
elseif wave == 7 then
addEvent(TPVerdadeiro, 5000)
elseif wave == 8 then
addEvent(TPVerdadeiro, 5000)
elseif wave == 9 then
addEvent(TPVerdadeiro, 5000)
elseif wave == 10 then
addEvent(TPFalso, 5000)
end
end
function TPFalso()
for _, sid in ipairs(getPlayersOnline()) do
local posi = {x=1236, y=1122, z=15}
local posf = {x=1243, y=1128, z=15}
local pos = getPlayerPosition(sid)
if isInArea(pos, posi, posf) then
doTeleportThing(sid,CPpos)
end
addEvent(wave_acresc, 5000)
end
end
function TPVerdadeiro()
for _, sid in ipairs(getPlayersOnline()) do
local posi = {x=1228, y=1122, z=15}
local posf = {x=1235, y=1128, z=15}
local pos = getPlayerPosition(sid)
if isInArea(pos, posi, posf) then
doTeleportThing(sid,CPpos)
end
addEvent(wave_acresc, 5000)
end
end
function winPlayers()
for _, sid in ipairs(getPlayersOnline()) do
local posi = {x=1228, y=1122, z=15}
local posf = {x=1243, y=1128, z=15}
local pos = getPlayerPosition(sid)
if isInArea(pos, posi, posf) then
doTeleportThing(sid,CPpos)
doPlayerAddItem(sid,2159, 10)
end
wave = 0
setGlobalStorageValue(88788, 0)
end
end
--AVISOS DE INICIO
function finalEventWarning()
if getGlobalStorageValue(quizstrg) == 1 then
setGlobalStorageValue(88788, 2)
doBroadcastMessage("O evento Quiz fechou, a primeira pergunta surgira em 30 segundos.", RED)
addEvent(wave_acresc, 30000)
end
end
function secondEventWarning()
if getGlobalStorageValue(quizstrg) == 1 then
doBroadcastMessage("O evento Quiz ira iniciar em 1 minuto, usem o comando !participar ou /participar.", RED)
addEvent(finalEventWarning, 60000)
end
end
function firstEventWarning()
if getGlobalStorageValue(quizstrg) == 1 then
doBroadcastMessage("O evento Quiz ira iniciar em 3 minutos, usem o comando !participar ou /participar.", RED)
addEvent(secondEventWarning, 120000)
end
end
function onThink(interval, lastExecution)
if getGlobalStorageValue(quizstrg) == 0 then
setGlobalStorageValue(88788, 1)
doBroadcastMessage("O evento Quiz ira iniciar em 5 minutos, usem o comando !participar ou /participar.", RED)
addEvent(firstEventWarning, 120000)
end
return true
end
Já ia me esquecendo, a unica coisa ao qual vocês devem mudar de acordo com as coordenadas do seu mapa e área do evento são as funções TPVerdadeiro , TPFalso, winPlayers , elas servem para indicar qual área é a errada e teleportar quem tiver nessa área pro cp, caso o lado errado seja o esquerdo então será usado a função TPVerdadeiro, e é a msm coisa para o outro lado, no caso da winPlayers é toda a área do evento.
Aqui vai um exemplo:
E é isso rapaziada, não sei se já possui algum evento parecido por essas bandas, mas eu não encontrei ,então fiz e resolvi contribuir com a comunidade, peço que se for repostar em algum outro lugar dê os devidos créditos, obg e até a próxima.