[Ajuda] Me ajudem pfv no /Dominar
#1

Eu tenho essa FS, sendo que quando alguйm domina a sede da outra torcida aparece assim "O ai aparece o nick da pessoa que estб dominando, dominou a sede da torcida ai aparece a torcida que foi dominada".

Eu queria que envйs de aparecer o nick da pessoa que estб dominando eu queria que aparecesse a torcida da pessoa que estб dominando.

Ex:. A torcida do Palmeiras dominou a sede da torcida do Santos. Alguйm poderia me ajudar?
FS abaixo:



#include <a_samp>
#include <progressbar>
#include <sscanf2>
#include <zcmd>


stock False = false;

#define SendFormattedMessageToAll(%0,%1,%2) do{ format(StringJFS,sizeof(StringJFS),%1,%2); SendClientMessageToAll(%0,StringJFS);} while(False)

#define DominioRange 5.0


#define CORGANG 0x228B22AA
#define COR_ERRO 0xFF0000AA
#define COR_PRINCIPAL 0x33AAFFFF


enum t_info
{
tNome[64],
Float:Spawn[3],
tCor
};
new jDominio[][t_info] = {
{"Grove Street", {1698.4835,-2114.6245,13.3828}, CORGANG},
{"Ballas", {1793.0255,-2112.6235,13.3828}, CORGANG},
{"Aztec", {0.0, 0.0, 0.0}, CORGANG},
{"Fъria Jovem do Botafogo", {1298.3508,-798.9639,84.1406}, CORGANG}
};

new

StringJFS[128],
SaiuPosition[MAX_PLAYERS],
SaiuPosition2[MAX_PLAYERS],
Bar:BarraDominando[MAX_PLAYERS] = {INVALID_BAR_ID, ...},
DoisMinutosJFS[MAX_PLAYERS],
bool:PlayerDominado[MAX_PLAYERS],
Text3D:SedesJFS[sizeof(jDominio)],
DominadaMomento[sizeof(jDominio)],
Dominando[sizeof(jDominio)]
;

main()
{
print("\n----------------------------------");
print("FilterScript criado por JonathanFeitosa");
print("----------------------------------\n");
}

public OnGameModeInit()
{
for(new i; i < sizeof(jDominio); i ++)
{
CreatePickup(1314, 1, jDominio[i][Spawn][0], jDominio[i][Spawn][1], jDominio[i][Spawn][2], -1);
format(StringJFS, sizeof(StringJFS), "%s\nDominio: {E8E8E8}Nenhum", jDominio[i][tNome]);
SedesJFS[i] = Create3DTextLabel(StringJFS,jDominio[i][tCor], jDominio[i][Spawn][0], jDominio[i][Spawn][1], jDominio[i][Spawn][2],25.0,0);
}
return 1;
}

CMD:dominar(playerid, params[])
{
// if(!strcmp(jDominio[Player[playerid][pTorcida]][tNome], Dominados(playerid))) return true; // SE Й DA MESMA TORCIDA
// if(MembrosProximos(playerid) < 5) return SendClientMessage(playerid, COR_ERRO, "ERRO: Vocк sу pode dominar com no mнnimo 5 membros prуximos."); // QUANTIDADE MINIMA DE PESSOAS PARA DOMINAR
for(new i; i < sizeof(jDominio); i ++) {

if(IsPlayerInRangeOfPoint(playerid, DominioRange, jDominio[i][Spawn][0], jDominio[i][Spawn][1], jDominio[i][Spawn][2])) // SE ESTIVER PERTO DOS LOCAIS
{
if(Dominando[i])
return SendClientMessage(playerid, COR_ERRO, "Esse local jб estб sendo dominado ou foi dominado recentemente."), true;
else
{
Dominando[i] = 1;
SendClientMessage(playerid, COR_PRINCIPAL, "Aguarde 5 segundos no mesmo local...");
return SetTimerEx("AguardeDo", 5000 , false, "ii", i, playerid);
}
}
}
return 1;
}

Dominados(playerid)
{
new rr[128];
for(new i; i < sizeof(jDominio); i++)
{

if(IsPlayerInRangeOfPoint(playerid, DominioRange, jDominio[i][Spawn][0], jDominio[i][Spawn][1], jDominio[i][Spawn][2]))
format(rr, sizeof(rr), "%s", jDominio[i][tNome]);

}
return rr;
}

/*
PegarIDTorcida(playerid)
{
new rr2;
for(new i; i < sizeof(jDominio); i++)
if(!strcmp(jDominio[Player[playerid][pTorcida]][tNome], jDominio[i][tNome]))
rr2 = i;

return rr2;
}

DominadosID(playerid)
{
new rr;
for(new i; i < sizeof(jDominio); i++)
{
if(IsPlayerInRangeOfPoint(playerid, DominioRange, jDominio[i][Spawn][0], jDominio[i][Spawn][1], jDominio[i][Spawn][2]))
rr = i;
}
return rr;
}

MembrosProximos(playerid)
{
new countJFS;
each(Players->new i)
if(Player[i][pTorcida] == Player[playerid][pTorcida])
if(DistanciaEntreDoisPlayers(playerid, i) <= 20) countJFS++;

return countJFS;
}

forward FloatistanciaEntreDoisPlayers(p1,p2);
public FloatistanciaEntreDoisPlayers(p1,p2)
{
new Float:Pos1[3], Float:Pos2[3];

if(!IsPlayerConnected(p1) || !IsPlayerConnected(p2))
return -1.00;

GetPlayerPos(p1, Pos1[0], Pos1[1], Pos1[2]),
GetPlayerPos(p2, Pos2[0], Pos2[1], Pos2[2]);

return floatsqroot(floatpower(floatabs(floatsub(Pos2[0],Pos1[0])),2)+floatpower(floatabs(floatsub(Pos2[1],Pos1[1])),2)+floatpower(floatabs(floatsub(Pos2[2],Pos1[2])),2));
}
*/

forward VoltarDominio(JFS);
public VoltarDominio(JFS)
{
DominadaMomento[JFS] = 0;
Dominando[JFS] = 0;
format(StringJFS, sizeof(StringJFS), "%s\nDominio: {e8e8e8}Nenhum", jDominio[JFS][tNome]);
Update3DTextLabelText(SedesJFS[JFS], jDominio[JFS][tCor], StringJFS);
SendFormattedMessageToAll(COR_PRINCIPAL, "O local %s jб pode ser dominada novamente!", jDominio[JFS][tNome]);
return true;
}

forward AguardeDo(JFS, playerid);
public AguardeDo(JFS, playerid)
{
if(Dominando[JFS] == 1)
{
if(!IsPlayerInRangeOfPoint(playerid, DominioRange, jDominio[JFS][Spawn][0], jDominio[JFS][Spawn][1], jDominio[JFS][Spawn][2]))
{
Dominando[JFS] = 0;
SendClientMessage(playerid, -1, "Vocк saiu da posiзгo....");
return true;
}
PlayerDominado[playerid] = true;
SendFormattedMessageToAll(-1, "O %s estб tentando dominar o local da {%06x}%s.", GetPlayerNameEx(playerid), jDominio[JFS][tCor] >>> 8, Dominados(playerid));
SendClientMessage(playerid, COR_PRINCIPAL, "Aguarde 2 minutos no local para dominar. (Distвncia mбxima: 5 metros)");
SetPlayerCheckpoint(playerid, jDominio[JFS][Spawn][0], jDominio[JFS][Spawn][1], jDominio[JFS][Spawn][2], 10.0);
SaiuPosition[playerid] = SetTimerEx("DominandoCP2", 2*60000, false, "ii", JFS, playerid);
SaiuPosition2[playerid] = SetTimerEx("SaiuPosicao", 1000, true, "ii", JFS, playerid);
BarraDominando[playerid] = CreateProgressBar(170.00, 424.00, 279.50, 3.50, -1, 120.0);
ShowProgressBarForPlayer(playerid, BarraDominando[playerid]);
}
return true;
}

forward SaiuPosicao(JFS, playerid);
public SaiuPosicao(JFS, playerid)
{
if(Dominando[JFS])
{
if(!IsPlayerInRangeOfPoint(playerid, DominioRange, jDominio[JFS][Spawn][0], jDominio[JFS][Spawn][1], jDominio[JFS][Spawn][2]))
{
PlayerDominado[playerid] = false;
SendFormattedMessageToAll(-1, "O %s {FF0000}fracassou{FFFFFF} em dominar o local da {%06x}%s.", GetPlayerNameEx(playerid), jDominio[JFS][tCor] >>> 8, jDominio[JFS][tNome]);
DisablePlayerCheckpoint ( playerid ) ;
DoisMinutosJFS[playerid] = 0;
DestroyProgressBar(BarraDominando[playerid]);
KillTimer(SaiuPosition[playerid]);
KillTimer(SaiuPosition2[playerid]);
Dominando[JFS] = 0;
SendClientMessage(playerid, COR_ERRO, "Vocк saiu da posiзгo...");
return true;
}
}
DoisMinutosJFS[playerid] ++;
if(DoisMinutosJFS[playerid] == 60)
SetProgressBarColor(BarraDominando[playerid], 0xFF0000FF);

if(DoisMinutosJFS[playerid] == 75)
SetProgressBarColor(BarraDominando[playerid], 0xEE0000FF);

if(DoisMinutosJFS[playerid] == 90)
SetProgressBarColor(BarraDominando[playerid], 0xCD0000FF);

if(DoisMinutosJFS[playerid] == 109)
SetProgressBarColor(BarraDominando[playerid], 0x8B0000FF);

if(DoisMinutosJFS[playerid] == 114 || DoisMinutosJFS[playerid] == 116 || DoisMinutosJFS[playerid] == 118 )
{
HideProgressBarForPlayer(playerid, BarraDominando[playerid]);
return true;
}
if(DoisMinutosJFS[playerid] == 115 || DoisMinutosJFS[playerid] == 117 || DoisMinutosJFS[playerid] == 119 )
ShowProgressBarForPlayer(playerid, BarraDominando[playerid]);

SetProgressBarValue(BarraDominando[playerid], DoisMinutosJFS[playerid]);
UpdateProgressBar(BarraDominando[playerid], playerid);
return true;
}

forward DominandoCP2(JFS, playerid);
public DominandoCP2(JFS, playerid)
{
if(Dominando[JFS])
{
if(IsPlayerInRangeOfPoint(playerid, DominioRange, jDominio[JFS][Spawn][0], jDominio[JFS][Spawn][1], jDominio[JFS][Spawn][2]))
{
SetTimerEx("VoltarDominio", 15*60000, false, "i", JFS);

format(StringJFS, sizeof(StringJFS), "%s\nDominio: {e8e8e8}%s", jDominio[JFS][tNome], GetPlayerNameEx(playerid));
Update3DTextLabelText(SedesJFS[JFS], jDominio[JFS][tCor], StringJFS);
}
}
DominadaMomento[JFS] = 1;
DisablePlayerCheckpoint ( playerid ) ;
DoisMinutosJFS[playerid] = 0;
DestroyProgressBar(BarraDominando[playerid]);
PlayerDominado[playerid] = false;
KillTimer(SaiuPosition2[playerid]);

SendFormattedMessageToAll(-1, "O %s {26cf0a}dominou {FFFFFF}o local da {%06x}%s.", GetPlayerNameEx(playerid), jDominio[JFS][tCor] >>> 8, Dominados(playerid));

/*
for(new jfs; jfs < MAX_PLAYERS; jfs ++) {
if(DistanciaEntreDoisPlayers(playerid, jfs) <= 20)
if(Player[jfs][pTorcida] == Player[playerid][pTorcida])
GivePlayerMoney(jfs, 500),
SendClientMessage(jfs, COR_PRINCIPAL, "Vocк e quem estava perto ganhou 500R$ pelo dominio!");
}*/

return true;
}

stock GetPlayerNameEx(playerid)
{
new name[MAX_PLAYER_NAME];
GetPlayerName(playerid, name, sizeof name);
return name;
}
Reply
#2

Tipo assim >> http://imgur.com/a/nQBgr
Reply
#3

UP..
Reply
#4

Eu nem sei como й sua gm mбs eu faria assim:
PHP код:
forward DominandoCP2(JFSplayerid);
public 
DominandoCP2(JFSplayerid)
{
if(
Dominando[JFS])
{
if(
IsPlayerInRangeOfPoint(playeridDominioRangejDominio[JFS][Spawn][0], jDominio[JFS][Spawn][1], jDominio[JFS][Spawn][2]))
{
SetTimerEx("VoltarDominio"15*60000false"i"JFS);
format(StringJFSsizeof(StringJFS), "%s\nDominio: {e8e8e8}%s"jDominio[JFS][tNome], GetPlayerNameEx(playerid));
Update3DTextLabelText(SedesJFS[JFS], jDominio[JFS][tCor], StringJFS);
}
}
DominadaMomento[JFS] = 1;
DisablePlayerCheckpoint playerid ) ;
DoisMinutosJFS[playerid] = 0;
DestroyProgressBar(BarraDominando[playerid]);
PlayerDominado[playerid] = false;
KillTimer(SaiuPosition2[playerid]);
SendFormattedMessageToAll(-1"A Torcida do %s {26cf0a}dominou {FFFFFF}o local da {%06x}%s."GetPlayerTeam(playerid), jDominio[JFS][tCor] >>> 8Dominados(playerid));
/*
for(new jfs; jfs < MAX_PLAYERS; jfs ++) {
if(DistanciaEntreDoisPlayers(playerid, jfs) <= 20)
if(Player[jfs][pTorcida] == Player[playerid][pTorcida])
GivePlayerMoney(jfs, 500),
SendClientMessage(jfs, COR_PRINCIPAL, "Vocк e quem estava perto ganhou 500R$ pelo dominio!");
}*/
return true;

Note que apenas mudei o
PHP код:
GetPlayerNameEx 
por
PHP код:
GetPlayerTeam 
Reply
#5

tendi
Reply
#6

Deu certo?
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)