[Ajuda] Sistema de UAV para todo o time -
Cassiano - 15.08.2011
Bom, fiz um sistema de UAV baseado num tutorial que vi aqui no fуrum. Estб funcionando, mas:
>Nгo manda a mensagem (UAV ONLINE) a todos do time.
>Quando zera o timer do UAV, desativa todos os uav ativados, atй do time inimigo.
>Queria que quando usassem o comando /uav com o uav ativo, deveria aparecer uma mensagem "UAV ja esta ativado, restam x segundos", OU setar o timer do UAV em 60s de novo.
pawn Код:
if (strcmp("/UAV",cmdtext, true) == 0)
{
if (Killspree[playerid]<3) return SendClientMessage(playerid, COLOR_GREY, "Vocк nгo pode ativar o UAV. (Somente apуs 3 killspree)");
if (UAV[playerid]==1)
{
//code para mandar a mensagem do tempo que ainda falta para ficar offline.
}
if (dUAV[playerid]==1)
{
for (new i = 0; i < MAX_PLAYERS; i++)
{
if (GetPlayerTeam(playerid) == GetPlayerTeam(i))
{
UAV[i]=1;
SendClientMessage(i, COLOR_GREEN, "|| UAV ONLINE ||");
SetTimer("uavoffline", 60000, false);
dUAV[i]=0;
}
}
}
}
forward uavoffline();
public uavoffline()
{
for (new i = 0; i < MAX_PLAYERS; i++)
{
if (UAV[i] ==1)
{
UAV[i]=0;
SendClientMessage(i, COLOR_WHITE, "UAV OFFLINE");
}
}
return 1;
}
Re: [Ajuda] Sistema de UAV para todo o time -
Cassiano - 18.08.2011
Й tгo dificil assim?
Re: [Ajuda] Sistema de UAV para todo o time -
histire - 18.08.2011
nao entendi nada doke vc disse.
Re: [Ajuda] Sistema de UAV para todo o time - [S]trong - 18.08.2011
Este seu UAV й para ver os jogadores do seu time ou os dos adversбrios?
Re: [Ajuda] Sistema de UAV para todo o time -
Cassiano - 18.08.2011
Sistema de UAV, parecido com o do jogo Call of Duty. Ao atingir 3 killspree, vc usa um comando /uav, e ativa o UAV para todos do time. (Duraзгo de 60s)
O mesmo nada mais й do que um RADAR que mostra os inimigos prуximos de vocк no minimap.
"BUG":
Se eu ativar o uav agora, comeзarб a contar os 60 segundos, mas se vocк ativar faltando 10 segundos para o meu timer zerar, vocк tambйm tem seu UAV desativado.
pawn Код:
forward uavoffline();
public uavoffline()
{
for (new i = 0; i < MAX_PLAYERS; i++)
{
if (UAV[i] ==1)
{
UAV[i]=0;
SendClientMessage(i, COLOR_WHITE, "UAV OFFLINE");
}
}
return 1;
}
Resumindo, preciso saber como faзo um timer para cada vez que o radar for ativado. Para que nгo aconteзa o que acabei de citar.
edit:
Quote:
Este seu UAV й para ver os jogadores do seu time ou os dos adversбrios?
|
Inimigos, jogadores do mesmo time sempre veem uns aos outros.
Re: [Ajuda] Sistema de UAV para todo o time -
Skoll - 18.08.2011
Nao estou conseguindo ler todo o cуdigo porque estou no celular, mas tenta criar uma variбvel global para definir o timer e no final do cуdigo, poe killtimer(''nomedotimer'');
Re: [Ajuda] Sistema de UAV para todo o time - [S]trong - 18.08.2011
Sгo quantos times?
Re: [Ajuda] Sistema de UAV para todo o time -
Cassiano - 18.08.2011
2 times. (por enquanto)
Re: [Ajuda] Sistema de UAV para todo o time - [S]trong - 18.08.2011
pawn Код:
#define MAX_TEAMS 3
new
bool:UAV[MAX_TEAMS];
if(strcmp("/UAV",cmdtext, true) == 0)
{
if(Killspree[playerid] < 3) return SendClientMessage(playerid,0xFF0000FF, "ERROR: Vocк nгo pode ativar o UAV. (Somente apуs 3 killspree)");
if(UAV[GetPlayerTeam(playerid)]) return SendClientMessage(playerid,0xFF0000FF,"ERROR: Sua equipe jб estб com o UAV ligado.");
new
team = GetPlayerTeam(playerid);
for(new ii = 0,sz = GetMaxPlayers(); ii != sz; ii++)
{
if(GetPlayerTeam(ii) == team && IsPlayerConnected(ii))
{
for(new en = 0; en != sz; en++)
{
if(GetPlayerTeam(en) != team && IsPlayerConnected(en))
{
SetPlayerMarkerForPlayer(ii,en,0xFF0000FF);
}
}
SendClientMessage(ii,0x00C000FF,"INFO: O UAV estб ativado. Se desligando em 1 minuto.");
}
}
UAV[time] = true;
SetTimerEx("TurnOff",1000,false,"i",time);
}
return 1;
TurfOff(teamid);
public TurfOff(teamid)
{
for(new ii = 0,sz = GetMaxPlayers(); ii != sz; ii++)
{
if(GetPlayerTeam(ii) == teamid && IsPlayerConnected(ii))
{
for(new en = 0; en != sz; en++)
{
if(GetPlayerTeam(en) != teamid && IsPlayerConnected(en))
{
SetPlayerMarkerForPlayer(ii,en,0x00000000);
}
}
SendClientMessage(ii,0x00C000FF,"INFO: O UAV foi desativado.");
}
}
UAV[teamid] = false;
return 1;
}
Quando almentar os times tem que almentar o MAX_TEAMS tmb, nгo compilei entгo qualquer erro me avise.
Re: [Ajuda] Sistema de UAV para todo o time -
Cassiano - 18.08.2011
Ae velho, dei uma adaptada no code e funcionou. Valeu!