Hello, I want to ask how to save amount damage to that player and then how to display it in the dialogue?
Code:
#define MAX_BODY_PARTS 7
#define MAX_WEAPONS 55
new Damage[MAX_PLAYERS][MAX_BODY_PARTS][MAX_WEAPONS];
DisplayDamages(toplayer, playerid)
{
new playername[MAX_PLAYER_NAME], title[45];
GetPlayerName(playerid, playername, sizeof(playername));
format(title, sizeof(title), "DMG info player: %s.", playername);
if(!CountDamages(playerid)) return ShowPlayerDialog(toplayer, D_DAMAGES, DIALOG_STYLE_LIST, title, "Nothing injuries", ">>>", "");
new gText[1000], fstr[200];
new Float:armour;
GetPlayerArmour(playerid, armour);
for(new i = 0; i < MAX_BODY_PARTS; i++)
{
for(new z = 0; z < MAX_WEAPONS; z++)
{
if(!Damage[playerid][i][z]) continue;
switch(i)
{
case 0 .. 15: format(fstr, sizeof(fstr), "%d hit(y) from %s, body part %s\n", Damage[playerid][i][z], GetWeaponNameEx(z), GetBodyPartName(i + 3));
//case 54: format(fstr, sizeof(fstr), "%d falls to the %s\n", Damage[playerid][i][z], GetBodyPartName(i));
//default: format(fstr, sizeof(fstr), "%d bullets from %s to the %s\n", Damage[playerid][i][z], GetWeaponNameEx(z), GetBodyPartName(i + 3));
}
strcat(gText, fstr);
}
}
ShowPlayerDialog(toplayer, D_DAMAGES, DIALOG_STYLE_LIST, title, gText, "Close", "");
return 1;
}
public OnPlayerTakeDamage(playerid, issuerid, Float: amount, weaponid, bodypart)
{
if((0 <= weaponid <= 46) || weaponid == 54)
{
if(BODY_PART_TORSO <= bodypart <= BODY_PART_HEAD) Damage[playerid][(bodypart - 3)][weaponid]++;
{
}
return 1;
}