Quantcast
Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
    1. Welcome to GTAForums!

    1. GTANet.com

    1. GTA Online

      1. The Cayo Perico Heist
      2. Find Lobbies & Players
      3. Guides & Strategies
      4. Vehicles
      5. Content Creator
      6. Help & Support
    2. Red Dead Online

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

    1. Red Dead Redemption 2

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

    1. Grand Theft Auto Series

    2. GTA VI

      1. St. Andrews Cathedral
    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. Guides & Strategies
      2. Help & Support
    6. GTA Vice City

      1. Guides & Strategies
      2. Help & Support
    7. GTA III

      1. Guides & Strategies
      2. 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. 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
    3. Gangs

    1. Announcements

    2. Support

    3. Suggestions

Check if someone was headshotted


MagicStyle

Recommended Posts

MagicStyle

Hello,
is it possible to check if someone was headshotted?

the only headshot relating functions i found are these:

 

Any REGISTER_PEDHEADSHOT(Ped ped)
void UNREGISTER_PEDHEADSHOT(Ped ped)
BOOL IS_PEDHEADSHOT_VALID(Ped ped)
BOOL IS_PEDHEADSHOT_READY(Ped ped)
char *GET_PEDHEADSHOT_TXD_STRING(Ped ped)

 

 

Link to post
Share on other sites
Jitnaught

 

BOOL PED::GET_PED_LAST_DAMAGE_BONE(Ped ped, Any *outBone)// 0xD75960F6BD9EA49C 0xAB933841

You'll have to find what the output for the head bone is.

If the ped you are checking for a headshot has been killed, it may not work, as I tried this on IV and would always result in an error.

Edited by LetsPlayOrDy
  • Like 1
Link to post
Share on other sites
MagicStyle

Is there a list with the names of all bones? And with which ped do i have to call the function, i try to check this for EVERY pedestrian.

Is there a table variable which contains all peds around the player? If not, how could i create one? Any ideas?

Edited by MagicStyle
Link to post
Share on other sites
Jitnaught

Is there a list with the names of all bones? And with which ped do i have to call the function, i try to check this for EVERY pedestrian.

Is there a table variable which contains all peds around the player? If not, how could i create one? Any ideas?

I don't know of any list of all the bones, that's why I said you'll have to find it out yourself by shooting a ped in the head and then getting the value it returns.

 

Here's some code that gets peds within ~200 feet of you. The distance can't be changed.

int *handles = new int[maxAmount * 2 + 2];	//0 index is the size of the array	handles[0] = maxAmount;	int count = PED::GET_PED_NEARBY_PEDS(PLAYER::PLAYER_PED_ID(), (Any*)handles, -1);	if (handles != NULL)	{		for (int i = 0; i < count; i++)		{			int offsettedID = i * 2 + 2;			if (handles[offsettedID] != NULL && ENTITY::DOES_ENTITY_EXIST(handles[offsettedID]))			{				//the code you want to do to the ped			}		}	}
  • Like 1
Link to post
Share on other sites
  • 1 month later...
GeorgeZhang

is there a way to make ped immune to headshots? or reduce the damage of headshots?(with scipt of course)

Link to post
Share on other sites
  • 4 weeks later...

Here's a list of bone indexes: http://pastebin.com/D7JMnX1g

How to use it? I tried everything. I used a different number:

Any iii = 31086; //or Any iii =1; Any iii = 18; etcif (PED::GET_PED_LAST_DAMAGE_BONE(peds[offsettedID], &iii)){	ENTITY::SET_ENTITY_HEALTH(playerPed, 0);}

The condition is triggered, regardless of the damaged bone (leg, arm, head, and so there is no difference). Why is that?

Link to post
Share on other sites
InfamousSabre

A better question is: Why would it have worked that way at all? The function doesn't return anything other than: "Yes, this ped has a damaged bone." or "Nope, sorry. Couldn't find a damaged bone.".

It has one output parameter. This is the damaged bone. You call the function, then, if it found a damaged bone, check the variable you used for the output parameter.

Any bone;BOOL damaged;damaged = PED::GET_PED_LAST_DAMAGE_BONE(playerPed, &bone);if (damaged && bone == 31086)  //or == 1, or == 18, etc{	ENTITY::SET_ENTITY_HEALTH(playerPed, 0);}
Edited by InfamousSabre
  • Like 1
Link to post
Share on other sites

 

A better question is: Why would it have worked that way at all? The function doesn't return anything other than: "Yes, this ped has a damaged bone." or "Nope, sorry. Couldn't find a damaged bone.".

It has one output parameter. This is the damaged bone. You call the function, then, if it found a damaged bone, check the variable you used for the output parameter.

 

Any bone;BOOL damaged;damaged = PED::GET_PED_LAST_DAMAGE_BONE(playerPed, &bone);if (damaged && bone == 31086)  //or == 1, or == 18, etc{	ENTITY::SET_ENTITY_HEALTH(playerPed, 0);}

You are a genius! It works. But can we find out what damaged the bone? Bullet, collision with a car, fire ...

Link to post
Share on other sites
InfamousSabre

As far as I know, no. Not without direct memory access anyway. Maybe one of those unknown natives though. Who knows?

Link to post
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
  • 2 Users Currently Viewing
    0 members, 0 Anonymous, 2 Guests

×
×
  • Create New...

Important Information

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