Ir para conteúdo

[Ctf] Capture The Flag


MaXwEllDeN

Posts Recomendados

Autor: MaXwEllDeN

Versão testada: TFS 0.4.0

 

#Introdução

 

Este é um sistema de rouba bandeira, no qual tem dois times, que se enfrentam e tentam se infiltrar na fortaleza do inimigo, roubar a bandeira dele e retornar para sua base com ela.

 

 

ScreenShots:

29xyi9t.pngkbefee.jpg20p22yd.png2n24o68.png

 

#Instalação

 

Faça o download do sistema e cole na pasta do seu servidor.

 

3CaRNl.png

 

Após ter instalado os arquivos nas suas respectivas pastas abra a pasta do seu servidor, e em seguida abra a pasta spells/scripts/support, e abra o arquivo invisible.lua com algum editor de texto, depois de

 

function onCastSpell(cid, var)

 

cole isso:

 

if (getPlayerStorageValue(cid, _CTF_LIB.teamssto) > 0) then
 return doPlayerSendCancel(cid, "Você não pode usar invisible durante o CTF!") and doSendMagicEffect(getThingPos(cid), 2)
end	

 

ficando assim:

 

local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_RED)
setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, false)

local condition = createConditionObject(CONDITION_INVISIBLE)
setConditionParam(condition, CONDITION_PARAM_TICKS, 200000)
setCombatCondition(combat, condition)

function onCastSpell(cid, var)
if (getPlayerStorageValue(cid, _CTF_LIB.teamssto) > 0) then
 return doPlayerSendCancel(cid, "Você não pode usar invisible durante o CTF!") and doSendMagicEffect(getThingPos(cid), 2)
end	

return doCombat(cid, combat, var)
end

 

#Configuração

Como na maioria dos meus códigos: as configurações ficam na lib, então:

 

_CTF_LIB.flags = {
		 [_CTF_LIB.redid] = {pos = {x = 744, y = 638, z = 6},
							 posEflag = {x = 744, y = 644, z = 6},
							 id = 1435, color = 180, na = "Vermelho",
							 temple = 3,								

 

 

							 temple = 3,								

Esse é o id do templo que os players do time vermelho serão teletransportados.

 

pos = {x = 744, y = 638, z = 6},

 

Posição de onde a bandeira do time fica

 

							 posEflag = {x = 744, y = 644, z = 6},

Posição de onde os players do time entregam a bandeira.

 

	 winp = 2,
	 recompCTF = {{2160, 2}},

	 nopen = true, -- Precisa usar o comando para abrir? false não true sim

	 TownExit = 1, -- Templo que o player será teletransportado quando acabar o evento ou ele sair dele.

	 price = false, -- Preço para entrar no Evento, caso não precise Digite false.

 

	 winp = 2,
	 recompCTF = {{2160, 2}},

winp : pontos que um time precisará fazer para ganhar o evento.

recompCTF: recompensa que o time ganhará ao vencer o CTF. para adicionar mais só é você fzer assim:

 

	 recompCTF = {{2160, 2}, {7542, 1}},

2160 é o id do item que vai adicionar, e 2 é a quantidade.

7542 é o id do item que vai adicionar, e 1, é a quantidade.

 

nopen = true, -- Precisa usar o comando para abrir? false não true sim

se precisar usar o comando /ctf open para abrir o evento coloque true, se não precisar coloque false.

 

	 TownExit = 1, -- Templo que o player será teletransportado quando acabar o evento ou ele sair dele.

	 price = false, -- Preço para entrar no Evento, caso não precise Digite false.

TownExit: id do templo que o player será teletransportado quando ele sair do evento ou quando o adm usar /ctf close.

price: preço para entrar no evento em gold coins, caso não precise deixe false.

 

Não esqueçam de criar um teleport dentro do evento, com a actionid 47521, caso os players queiram sair do evento happy.png

 

E aqui acabamos mais um código.. '-' Flw ae xD :D.

Qualquer bug não se acanhe em falar :p

 

Abraço.

Editado por MaXwEllDeN
Link para o comentário
Compartilhar em outros sites

  • 3 weeks later...
  • 2 weeks later...

Pow bacana o sistema, mas tem uns erros... se as 2 equipes tiverem com a bandeira, da pra entregar mesmo assim, ou seja, é como uma corrida, seria mais bacana se só desse pra entregar caso a sua bandeira tivesse la na base... outra coisa tbm q seria legal q fosse um evento de tempo, tipo teria uma hora certa pra começar, sei la 17:00 começa o evento, ai abre um teleport, a galera vai pra uma sala de espera, fica la por 3 min, depois disso dividia a galera na equipe vermelha e verde... pq do jeito q ta , se alguem entrar rapido no evento, ele fica la sozinho, pega as bandeiras e entrega, mole...

outro erro tbm é q quando o evento acaba, o templo do player muda pra la '-'

Link para o comentário
Compartilhar em outros sites

Tem como disponibilizar o mapa? ou não precisa de mapa?

O mapa que eu tenho não passa de 25x25 SQMs'(Ou melhor, não tenho, perdí o servidor que fiz o sistema)

 

Pow bacana o sistema, mas tem uns erros... se as 2 equipes tiverem com a bandeira, da pra entregar mesmo assim, ou seja, é como uma corrida, seria mais bacana se só desse pra entregar caso a sua bandeira tivesse la na base... outra coisa tbm q seria legal q fosse um evento de tempo, tipo teria uma hora certa pra começar, sei la 17:00 começa o evento, ai abre um teleport, a galera vai pra uma sala de espera, fica la por 3 min, depois disso dividia a galera na equipe vermelha e verde... pq do jeito q ta , se alguem entrar rapido no evento, ele fica la sozinho, pega as bandeiras e entrega, mole...

outro erro tbm é q quando o evento acaba, o templo do player muda pra la '-'

Tipo, o único ERRO que eu ví uqe realmente tem é esse de o evento acabar, que pode até ter sido algo mal configurado por você na lib, o resto não são erros, o sistema foi feito para trabalhar assim.

 

 

Cara,muito bom amanha te do REP hoje ja dei.Parabéns pelo seu trabalho vou usar em meu servidor.

 

Vlw [:

Link para o comentário
Compartilhar em outros sites

  • 11 months later...
×
×
  • Criar Novo...