Jump to content
    1. Welcome to GTAForums!

    1. GTANet.com

    1. GTA Online

      1. Los Santos Drug Wars
      2. Updates
      3. Find Lobbies & Players
      4. Guides & Strategies
      5. Vehicles
      6. Content Creator
      7. Help & Support
    2. Red Dead Online

      1. Blood Money
      2. Frontier Pursuits
      3. Find Lobbies & Outlaws
      4. Help & Support
    3. Crews

    1. Grand Theft Auto Series

      1. Bugs*
      2. St. Andrews Cathedral
    2. GTA VI

    3. GTA V

      1. Guides & Strategies
      2. Help & Support
    4. GTA IV

      1. The Lost and Damned
      2. The Ballad of Gay Tony
      3. Guides & Strategies
      4. Help & Support
    5. GTA San Andreas

      1. Classic GTA SA
      2. Guides & Strategies
      3. Help & Support
    6. GTA Vice City

      1. Classic GTA VC
      2. Guides & Strategies
      3. Help & Support
    7. GTA III

      1. Classic GTA III
      2. Guides & Strategies
      3. Help & Support
    8. Portable Games

      1. GTA Chinatown Wars
      2. GTA Vice City Stories
      3. GTA Liberty City Stories
    9. Top-Down Games

      1. GTA Advance
      2. GTA 2
      3. GTA
    1. Red Dead Redemption 2

      1. PC
      2. Help & Support
    2. Red Dead Redemption

    1. GTA Mods

      1. GTA V
      2. GTA IV
      3. GTA III, VC & SA
      4. Tutorials
    2. Red Dead Mods

      1. Documentation
    3. Mod Showroom

      1. Scripts & Plugins
      2. Maps
      3. Total Conversions
      4. Vehicles
      5. Textures
      6. Characters
      7. Tools
      8. Other
      9. Workshop
    4. Featured Mods

      1. Design Your Own Mission
      2. OpenIV
      3. GTA: Underground
      4. GTA: Liberty City
      5. GTA: State of Liberty
    1. Rockstar Games

    2. Rockstar Collectors

    1. Off-Topic

      1. General Chat
      2. Gaming
      3. Technology
      4. Movies & TV
      5. Music
      6. Sports
      7. Vehicles
    2. Expression

      1. Graphics / Visual Arts
      2. GFX Requests & Tutorials
      3. Writers' Discussion
      4. Debates & Discussion
    1. Announcements

    2. Support

    3. Suggestions

How to distinguish between friend and enemy in list of peds


Lovono
 Share

Recommended Posts

I got a code like this

if(GAMEPLAY::GET_MISSION_FLAG()){	for (int i = 0; i < count; i++)	{		if (peds[i] != playerPed && ENTITY::DOES_ENTITY_EXIST(peds[i]))		{			if(IsNotFriend(peds[i]))			   PED::APPLY_DAMAGE_TO_PED(peds[i], 1000, 1);				        }	}}

The question is how to write the function IsNotFriend(), I have tried the following:

GET_BLIP_COLOUR(GET_BLIP_FROM_ENTITY(ped)) != BlipColorBlue //Not workingGET_BLIP_INFO_ID_TYPE(GET_BLIP_FROM_ENTITY(ped)) != 2 //It seems that the enemy and the friend have same blip type

Can someone help me please :)

edit: I meant to check if the ped is friend - the blue blip, not check if it not friend, sorry for the mistake :p So the question is: How to check if a ped is a friend who is not enemy.

Edited by Lovono
Link to comment
Share on other sites

GET_BLIP_INFO_ID_TYPE only returns the type of blip. It depends on the entity, for example peds and vehicles don't have the same ID.

 

There isn't any function that returns whether a ped is an enemy or not by default.

Even enemy gang members don't attack you on sight because you have to trigger an event (eg : interact with them or shoot at them) in order to have them attack you.

 

To check if a ped is an enemy you can use the following function :

static BOOL IS_PED_IN_COMBAT(Ped ped, Ped target) 

Indeed, feel free to create your own function with custom parameters that define what an enemy is.

You could filter peds by their models and exclude the ones you don't want.

Edited by ins1de
Link to comment
Share on other sites

@ins1de : Ops, sorry, I've mistaken, I meant check if the ped is friend - cause I don't wanna damage a friend ped lead to fail the mission :p

Link to comment
Share on other sites

Just follow jedijosh920's ideal, this should work

void KillAllNotFriend(){	Ped peds[ARR_SIZE];	int count = worldGetAllPeds(peds, ARR_SIZE);	int killed = 0;	for (int i = 0; i < count; i++)	{		if (peds[i] != playerPed && ENTITY::DOES_ENTITY_EXIST(peds[i]))		{			if (PED::GET_RELATIONSHIP_BETWEEN_PEDS(playerPed, peds[i]) != 1)				PED::APPLY_DAMAGE_TO_PED(peds[i], 1000, 1);			killed++;		}	}	DisplayMessage("found %d peds, killed %d", count, killed);}

 

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

  • 1 User Currently Viewing
    0 members, 0 Anonymous, 1 Guest

×
×
  • Create New...

Important Information

By using GTAForums.com, you agree to our Terms of Use and Privacy Policy.