dmg amount, save in-array
#1

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;
	}
Reply


Messages In This Thread
dmg amount, save in-array - by FinStar - 22.09.2016, 14:03

Forum Jump:


Users browsing this thread: 1 Guest(s)