Ir para conteúdo

Featured Replies

Postado

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 :D

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]

 

ss1ay.jpg

Resto de instalações:


alavanca.jpgentradars.jpg ----- .\/ essas SS nao sao na lib mais, agora é na TALKACTION secondpos.jpg
.---- ./\


OBS : Script completo retirado de outro fórum por DrakyLucas.

 

Creditos : DrakyLucas 100%.

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

  • Respostas 20
  • Visualizações 8.5k
  • Created
  • Última resposta

Top Posters In This Topic

Most Popular Posts

  • Alguem vende esses scripts do castle 24h?

  • imagem quebrada, cade a staff do forum? estamos perdendo qualidade, "recado para alguem da administração bola um geito tipo de ban para deletar os posts pelos usuarios mesmo por % de views e desl

Postado

Cara esse ai tem q usar o comando para invadir, tipo nao aparece o nome do player q esta invadindo entende.. nao é 24hrs

  • 2 months later...
  • 1 month later...

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.6k

Informação Importante

Confirmação de Termo