SA-MP Forums Archive
[Ajuda] Players da mesma gang. - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Português/Portuguese (https://sampforum.blast.hk/forumdisplay.php?fid=34)
+---- Thread: [Ajuda] Players da mesma gang. (/showthread.php?tid=643480)



Players da mesma gang. - SeckSeck - 21.10.2017

Podem me ajudar?
coloquei pra os adms usarem /vida pra dar vida pra todos por perto no meu servidor.
Porem coloquei um sistema de se tiver rival proximo n poder dar vida.
Porem as gangs sгo divididas em diversos grupos.
Na Gang: LAS VEGAS, tem os grupos: Zikas e Balas.

zikas = if(Player[playerid][pGang] == 1
balas = if(Player[playerid][pGang] == 2

os zikas e balas peertencem a mesma gang, entгo sгo aliados! se um player da gang zika der vida perto de um player da bala, aparece o erro que tem um rival prуximo, como faзo pra fazer com que esses 2 grupos sejam identificados como aliados?


Re: Players da mesma gang. - SammyJ - 21.10.2017

Vocк tem que ter alguma variбvel com id ъnico da gang.


Re: Players da mesma gang. - SeckSeck - 21.10.2017

Quote:
Originally Posted by SammyJ
Посмотреть сообщение
Vocк tem que ter alguma variбvel com id ъnico da gang.
tipo?


Re: Players da mesma gang. - SammyJ - 21.10.2017

Se
zikas : Player[playerid][pGang] == 1
balas : Player[playerid][pGang] == 2
Sгo da mesma gang, entгo cada gang deveria ter uma variбvel contendo uma identificaзгo da gang.
Ex:
PHP код:
Player[playerid][pGangID] = // gang da LAS VEGAS
// [...] e assim por diante. 
@edit
Quote:
Originally Posted by RodrigoMSR
Посмотреть сообщение
PHP код:
if(Player[playerid][pGang] == Player[adminid][pGang]) //sгo da mesma gang
{
    
//Dar vida

adminid seria o ID do administrador que usou o comando, e playerid quem vai receber a vida.
Nгo daria RodrigoMSR, porque pelo oque ele disse as variбveis Player[playerid][pGang] armazena o Grupo da gang. Ou seja a Gang Las Vegas tem dois grupos.


Re: Players da mesma gang. - SeckSeck - 21.10.2017

Quote:
Originally Posted by SammyJ
Посмотреть сообщение
Se
zikas : Player[playerid][pGang] == 1
balas : Player[playerid][pGang] == 2
Sгo da mesma gang, entгo cada gang deveria ter uma variбvel contendo uma identificaзгo da gang.
Ex:
PHP код:
Player[playerid][pGangID] = // gang da LAS VEGAS
// [...] e assim por diante. 
@edit


Nгo daria RodrigoMSR, porque pelo oque ele disse as variбveis Player[playerid][pGang] armazena o Grupo da gang. Ou seja a Gang Las Vegas tem dois grupos.
deixa eu explicar melhor.
zikas = if(Player[playerid][pGang] == 1
balas = if(Player[playerid][pGang] == 2

essas duas sгo grupos porem da mesma facзгo entгo sгo aliados!
como faзo pra reconhecer que os 2 players sгo da mesma faзcгo?
vou criar um cуdigo de verificar rival, se eu deixar uma identificaзгo pra cada grupo eles nгo reconhecem quais sгo da mesma gang e na hora de verificar rival diz que o aliado й rival.


Re: Players da mesma gang. - C4rtm4n - 21.10.2017

Quote:
Originally Posted by SeckSeck
Посмотреть сообщение
deixa eu explicar melhor.
zikas = if(Player[playerid][pGang] == 1
balas = if(Player[playerid][pGang] == 2

essas duas sгo grupos porem da mesma facзгo entгo sгo aliados!
como faзo pra reconhecer que os 2 players sгo da mesma faзcгo?
vou criar um cуdigo de verificar rival, se eu deixar uma identificaзгo pra cada grupo eles nгo reconhecem quais sгo da mesma gang e na hora de verificar rival diz que o aliado й rival.
Assim

PHP код:

new Aliados[MAX_PLAYERS];
uso
 Aliados
[playerid] = //Zikas
 
Aliados[playerid] = // Ballas
if(Aliados[playerid] == && Aliados[playerid]==)
{
 
SetPlayerHealth(playerid100);
 return 
1;

// Ou
if(Aliados[playerid] >= )
{
 
SetPlayerHealth(playerid100);
 return 
1;

Foi apenas um exemplo mas a lуgica й essa.


Re: Players da mesma gang. - Naine - 22.10.2017

Quote:
Originally Posted by C4rtm4n
Посмотреть сообщение
Assim

PHP код:

new Aliados[MAX_PLAYERS];
uso
 Aliados
[playerid] = //Zikas
 
Aliados[playerid] = // Ballas
if(Aliados[playerid] == && Aliados[playerid]==)
{
 
SetPlayerHealth(playerid100);
 return 
1;

// Ou
if(Aliados[playerid] >= )
{
 
SetPlayerHealth(playerid100);
 return 
1;

Foi apenas um exemplo mas a lуgica й essa.
?, nгo vou nem comentar essa ta logica.



----

Se ambas as gangs sгo da mesma gang, use o id da gang "pai".. e nгo das gangs "filhas".

PHP код:
Jogador[playerid][pGang] = LAS_VEGAS_ID//ou qualquer outra gang;
Jogador[playerid][pGangAfiliada] = BALAS_ID//id da gang afiliada; 
Como cada gang "pai" vai ter um id, basta tu checar se a gang a filha pertence a gang pai.
Ou entгo mais simples ainda.. ao invйs de comparar as gangs filhas, simplesmente compare se a gang pai й a mesma.

#edit

Se eu fosse fazer um sistema do gкnero.. com grupos internos dentro das gangs. Eu usaria funзхes pra resolver.


PHP код:
LAS_VEGAS_ID Faction_Create("Las Vegas");
BALAS_ID Faction_CreateGroup(LAS_VEGAS_ID"Balas");
ZIKAS_ID Faction_CreateGroup(LAS_VEGAS_ID"Zikas");