Por
ViitinG
script testado em TFS 0.3.6 Crying Dansom
Créditos: 100% Draky Lucas
Provavelmente funcionará em qualquer versão acima de 8.54, ja abaixo eu nao confirmo mais não custa testar
Como funciona?
o ADM digita !war open para ativar a war, e !war close na hora de terminar a war.
A Ultima guild que puxar a alavanca antes de terminar a war é considerada a vencedora do evento.
Vamos começar:
Atualizado: corrigido erro pelo Demonbholder [dava só em alguns pois eram desatualizados]
em data/lib/050-functions.lua ache a função isInArea, deletem-la e substituam-la por essa:
function isInArea(arr, arr1, arr2)
if (arr.x <= arr1.x and arr.x >= arr2.x) or (arr.x >= arr1.x and arr.x <= arr2.x) then
if (arr.y <= arr1.y and arr.y >= arr2.y) or (arr.y >= arr1.y and arr.y <= arr2.y) then
if (arr.z <= arr1.z and arr.z >= arr2.z) or (arr.z >= arr1.z and arr.z <= arr2.z) then
return TRUE
end
end
end
return FALSE
end
em Data/actions/scripts/ crie um arquivo chamado castlewar-action.lua e nele coloque isto :
local storage = 1755
local emGuerra = 1756
function onUse(cid, item, frompos, item2, topos)
if getPlayerGuildId(cid) == nil or getPlayerGuildId(cid) <= 0 or getPlayerGuildId(cid) == false then
return doPlayerSendCancel(cid,"Voce precisa de uma guild para dominar o castelo!")
end
if getGlobalStorageValue(emGuerra) <= 0 then
return doPlayerSendCancel(cid,"O Castelo nao está em guerra!")
end
if getPlayerGuildId(cid) == getGlobalStorageValue(storage) then
return doPlayerSendCancel(cid,"Sua guild ja está dominando o castelo!")
end
setGlobalStorageValue(storage,getPlayerGuildId(cid))
doBroadcastMessage("A Guild ".. getPlayerGuildName(cid) .." dominou o castelo!",22)
return true
end
Não mude nada a não ser que não saiba o que esteja fazendo!
em Data/actions/actions.xml coloque isso:
<action actionid="1755" script="castlewar-action.lua" />
em data/movements/scripts/ crie um arquivo chamado castlewar-movements.lua e coloque isso:
local storage = 1755
local emGuerra = 1756
function onStepIn(cid, item, position, lastPosition, fromPosition, toPosition, actor)
if getGlobalStorageValue(storage) == getPlayerGuildId(cid) then
return true
end
if getGlobalStorageValue(emGuerra) == 1 then
return true
else
doTeleportThing(cid,fromPosition,false)
return doPlayerSendCancel(cid,"Por favor espere a batalha começar!")
end
return true
end
em data/movements/movements.xml coloque isso:
<movevent type="StepIn" actionid="1756" event="script" value="castlewar-movements.lua"/>
em data/talkactions/scripts/ crie um arquivo chamado castlewar-talk.lua e coloque isso:
local storage = 1755
local emGuerra = 1756
local firstpos = {x = 582,y = 1290,z = 7}
local secondpos = {x = 802,y = 1490,z = 0}
function onSay(cid, words, param)
if param == "open" then
setGlobalStorageValue(emGuerra,1)
doBroadcastMessage("A Guerra pelo castelo começou!",22)
return true
elseif param == "close" then
for _, pid in ipairs(getPlayersOnline()) do
if isInArea(getCreaturePosition(pid),firstpos,secondpos)then
if getGlobalStorageValue(storage) ~= getPlayerGuildId(pid) then
doTeleportThing(pid,getTownTemplePosition(getPlayerTown(pid)))
doPlayerSendTextMessage(pid, MESSAGE_STATUS_CONSOLE_BLUE,"Desculpe mas sua guild não venceu essa guerra!")
else
doPlayerSendTextMessage(pid,MESSAGE_STATUS_CONSOLE_BLUE,"Sua guild conseguio dominar o castelo. Parabens por ajuda-la!")
end
end
end
setGlobalStorageValue(emGuerra,0)
doBroadcastMessage("A Guerra pelo castelo terminou!",22)
else
return doPlayerSendCancel(cid,"Digite !war open[inicia a guerra] ou !war close[terminaa guerra]")
end
return true
end
local firstpos = {x = 582,y = 1290,z = 7}
local secondpos = {x = 802,y = 1490,z = 0}
./\ edite essa parte com forme no tutorial das SS's
e em data/talkactions/talkactions.xml adicione isso:
<talkaction log="yes" words="!war" access="5" event="script" value="castlewar-talk.lua"/>
Tutorial: MAPA
Preencha todo o castelo com PVP TileZone, exceto a parte de caça para a guild dominante [que deverá ficar no subsolo do castelo]
Depois siga o mapinha [nao zoapq fiz em 2 min pa demonstrar kpoekopkepo...]
SS1: Castelo inteiro [nao zoa plz kkk]
Resto de instalações:
OBS : Script completo retirado de outro fórum por DrakyLucas.
Creditos : DrakyLucas 100%.
Posts Recomendados
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.