[Resolvido] Explicando Script, !open Evento

neguinha
em Scripts

neguinha

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 06/05/07Posts: 4

Explicando script: tipo quando o GOD, falace !aberto, referindo ao evento que abriu, ae todos player que somente tivese em uma area pz, temple, dp e outros, so na parte pz do server todo, fose pra tal pos, que essa pos ia ser uma city de war, ae, tipo um player matava o outro e ganhava tal item, toda hora que matase um player no evento ganhava um item, ae no final do evento quem fico com mais item, ganha, ou pode ser um contador de flags tbm, tipo matei um ae Frags 1, e assim por diante, no final do evento quando o GOD, fala !fechando, ae quem mato mais ganha uma um storage e um item raro, e voltase pra tal pos todos que estava no evento, e isso ae espero que possa mim ajuda POR FAVO, e obrigado

jhon992

Dono JhonBot
avatar
Conde
Conde

INFOS

Grupo: CondeRegistrado: 30/06/11Posts: 631Char no Tibia: Warrior of Mort

Primeiro em data/talkactions/script, duplica um arquivo e nomeia para "eventokill" sem as aspas e nele cole:

--<Script by jhon992>--
function onSay(cid, words, param, channel)

local online = getPlayersOnline()
local player = 0
local playerStorage = 0
local posEvent = {x=1234, y=345, z=7} -- posição para que os players serão teleportados ao iniciar o evento.
local itemGain = {1234,4564} -- itens que ganha ao acabar o evento.

local posUp = {x=1234, y=345, z=7} -- posição superior esquerdo do mapa do evento.
local posDown = {x=1234, y=345, z=7} -- posição inferior direito do mapa do evento.
local posBackEvent = {x=1234, y=345, z=7} -- posição para que os players serão teleportados ao acabar o evento.

if (param == "") then
doPlayerSendTextMessage(cid, 24,"Comando errado.")
return true
end

if (param == "open") then
for i=1, #online do
   if (getTilePzInfo(getCreaturePosition(online[i])) == TRUE) then
    setPlayerStorageValue(online[i], 403451, -1)
       doTeleportThing(online[i], posEvent)
   end
end
doBroadcastMessage("O Evento esta aberto!")
return true
end

if (param == "close") then
online = getPlayersOnline()
doBroadcastMessage("O Evento esta feichado!")
for i=1, #online do
   if (isInArea(getPlayerPosition(online[i]), posUp, posDown)) then
       doTeleportThing(online[i], posBackEvent)
       if (getPlayerStorageValue(online[i], 403451) > playerStorage) then
           player = online[i]
           playerStorage = getPlayerStorageValue(online[i], 403451)
       end	  
   end
end
for i=1, #itemGain do
   doPlayerAddItem(player, itemGain[i])
end
doBroadcastMessage("O player ".. getCreatureName(player) .." matou ".. getPlayerStorageValue(cid, 403451) +1 .." players e ganhou o evento!")
end

return TRUE
end

 

Em talkactions.xml cole a tag:

<talkaction log="yes" words="!evento" access="4" event="script" value="eventokill.lua"/>

 

Agora em data/creaturescripts/scripts, duplica um arquivo e nomeia para "killevent" sem as aspas e nele cole:

--<Script by jhon992>--
function onKill(cid, target, lastHit)

local posUp = {x=1234, y=345, z=7} -- posição superior esquerdo do mapa do evento. (MESMA POSIÇÂO QUE NO OUTRO ARQUIVO)
local posDown = {x=1234, y=345, z=7} -- posição inferior direito do mapa do evento. (MESMA POSIÇÂO QUE NO OUTRO ARQUIVO)

if (isInArea(getPlayerPosition(cid), posUp, posDown)) then
   setPlayerStorageValue(cid, 403451, getPlayerStorageValue(cid, 403451) +1)
   doPlayerSendTextMessage(cid, 24,"Você ja matou".. getPlayerStorageValue(cid, 403451) +1 .." players no evento.")
end

return TRUE
end

 

Agora em creaturescripts.xml cole a tag:

<event type="kill" name="KillEvent" event="script" value="killevent.lua"/>

 

E por último, no arquivo login.lua na pasta /scripts, cole antes do último return true essa tag:

registerCreatureEvent(cid, "KillEvent")

neguinha

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 06/05/07Posts: 4

Jhon, modifica ae eu ti agradeceria cara, tipo, e so os player que ta pz, tipo para akeles que estao upando, ou treiner nao fim evento, por que eu como god vou fala todos no templo, ae todos vao da area pz, ae todos que tiver la vai pro evento quando !evento, obrigado ^^

jhon992

Dono JhonBot
avatar
Conde
Conde

INFOS

Grupo: CondeRegistrado: 30/06/11Posts: 631Char no Tibia: Warrior of Mort

neguinha

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 06/05/07Posts: 4

e que eu nao vir nem um coisa de pz no scrip, nao testei ainda nao, eu so istalei ainda, pois ainda to editando a city de war, mais eu ja ti dei 1 REP+, tem como mim passa seu msn, por que to com umas duvidas de scrips, ae se vc for ajudando eu ti do rep todo dia, flw jhon

Vilden

Loading. . .
avatar
Infante
Infante

INFOS

Grupo: InfanteRegistrado: 09/05/08Posts: 1597

Amigo, quando for criar um tópico seja objetivo em seu titulo!

Titulo editado, caso queira modifica, edite a seu gosto, mais seja objetivo.

Atenciosamente, Vilden.

neguinha

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 06/05/07Posts: 4

Vlw vilden, e que foi meu primeiro pedido no xtibia, mais vou tenta evoluir, vlw pela dica, nota 10 amigao...

alldakie

avatar
Marquês
Marquês

INFOS

Grupo: MarquêsRegistrado: 28/07/11Posts: 1223

Resolvido,

Movido para "Pedidos e Dúvidas de Scripts Atendidos".