Damage Informer


Započeo .варнинг, Jul 03, 2018, 10:02:36 PRE PODNE

prethodna tema - sledeća tema

0 članova i 1 gost pregledaju ovu temu.

Problem(error/warning): Ubacio sam DamageInformer i kada padnem ili tako nesto ne pojavi se td na kom pise koliko sam izgubio hp.
Dio skripte: TD:
    for(new i; i < MAX_PLAYERS; ++i)
	{
 	GiveDamage[i] = TextDrawCreate(171.000000, 388.000000, " ");
 	TextDrawAlignment(GiveDamage[i], 2);
 	TextDrawBackgroundColor(GiveDamage[i], 255);
 	TextDrawFont(GiveDamage[i], 2);
 	TextDrawLetterSize(GiveDamage[i], 0.160000, 0.599999);
 	TextDrawColor(GiveDamage[i], 0x00FF04FF);
 	TextDrawSetOutline(GiveDamage[i], 1);
 	TextDrawSetProportional(GiveDamage[i], 1);
 	}

	for(new i; i < MAX_PLAYERS; ++i)
	{
 	TakeDamage[i] = TextDrawCreate(440.000000,388.000000, " ");
 	TextDrawAlignment(TakeDamage[i], 2);
 	TextDrawBackgroundColor(TakeDamage[i], 255);
 	TextDrawFont(TakeDamage[i], 2);
 	TextDrawLetterSize(TakeDamage[i], 0.160000, 0.599999);
 	TextDrawColor(TakeDamage[i], 0xE81010FF);
 	TextDrawSetOutline(TakeDamage[i], 1);
 	TextDrawSetProportional(TakeDamage[i], 1);
 	}

OnPlayerTake i GiveDamage:
forward OnPlayerGiveDamage(playerid, damagedid, Float: amount, weaponid);
public OnPlayerGiveDamage(playerid, damagedid, Float: amount, weaponid)
{
	new s[20];
	format(s, 20, "+Damage %.0f %", amount, playerid);
	TextDrawSetString(GiveDamage[playerid], s);
	TextDrawShowForPlayer(playerid, GiveDamage[playerid]);
	PlayerPlaySound(playerid,17802,0.0,0.0,0.0);
	SetTimerEx("DestruirTextoDraw", 1000, false, "i", playerid);
	return 1;
}

forward DestruirTextoDraw(playerid);
public DestruirTextoDraw(playerid)
{
	TextDrawHideForPlayer(playerid, GiveDamage[playerid]);
	TextDrawHideForPlayer(playerid, TakeDamage[playerid]);
	return 1;
}
public OnPlayerTakeDamage(playerid, issuerid, Float: amount, weaponid)
{
	if(issuerid != INVALID_PLAYER_ID)
    {
		if(IgracPolicajac(issuerid))
		{
			if(GetPlayerWeapon(issuerid) == 23)
			{
				new string[512], Float:Poz[3];
				GetPlayerPos(playerid, Poz[0], Poz[1], Poz[2]);
				if(IsPlayerInRangeOfPoint(issuerid, 5.0, Poz[0], Poz[1], Poz[2]))
				{
					if(PlayerInfo[playerid][pTrazeniLevel] == 0) return SCM(issuerid,-1,""PLAVA"( INFO ) "SIVA"Igrac nema Wanted Level!");
					if(IgracPolicajac(playerid)) return SCM(issuerid,-1,""PLAVA"( INFO ) "SIVA"Ne mozes tazovati PD!");
					if(PlayerInfo[issuerid][pRank] == 0) return SCM(issuerid,-1,""PLAVA"( INFO ) "SIVA"Suspendovan si!");
					if(AdminDuty[playerid] == 1) return SCM(issuerid,-1,""PLAVA"( INFO ) "SIVA"Taj igrac je Admin na duznosti!");
					format(string, sizeof(string), "%s puca tazerom na %s-a i pogadja ga.", GetName(issuerid) ,GetName(playerid));
					ProxDetector(20.0, issuerid, string, PROX,PROX,PROX,PROX,PROX);
					JBC_TogglePlayerControllable(playerid, 0); IgracTazovan[playerid] = 1;
					TazerTimer[playerid] = SetTimerEx("TazovanTajmer", 15000, false, "i", playerid);
					OnePlayAnim(playerid, "CRACK", "crckdeth2", 4.0, 1, 0, 0, 0, 0);
			}
		}
 	}
    new s[20];
	format(s, 20, "-Damage %.0f %.0f", amount, playerid);
	TextDrawSetString(TakeDamage[playerid], s);
	TextDrawShowForPlayer(playerid, TakeDamage[playerid]);
	PlayerPlaySound(playerid,17802,0.0,0.0,0.0);
	SetTimerEx("DestruirTextoDraw", 1000, false, "i", playerid);
	return 1;
	}
	if (weaponid == WEAPON_GRENADE || weaponid == 51)
	{
		new Float:health;
		GetPlayerHealth(playerid, health);
		SetPlayerHealth(playerid, (health - (amount * 0.3)));

		FlashbangStage[playerid] = 1;

		HandleFlashbangStage(playerid);
	}
	return 1;
}

Debug iz server_log(ukoliko je u pitanju crashanje servera - crashdetect log): ///
Slika/video ingame problema(obavezno ako je ingame problem): ///
                                                                                 
Legacy Gaming Since 2017 ©

Scripter and Founder
Scripting 3+ Years
https://www.facebook.com/LegacyGamingOGC/ (FB Stranica)
https://www.facebook.com/nikolaa.jovicic (FB Nalog)

                                                                                 

Moja ti je preporuka da koristis weapon-config.inc jer ima i druge benefite... :P

Mnogo imaš ti još da jedeš kačamak.
skrr
Moj tutorijali: Bazilion indent warninga
WORK? : Smart Project 1.2 , Leskovacki Detmec, Rodjendanski  server


Penzionisani balkanski samp kripter


Citat: .бунÑ,а poslato Jul 03, 2018, 10:28:36 PRE PODNE
Moja ti je preporuka da koristis weapon-config.inc jer ima i druge benefite... :P
Ubacio sam weapon-config, al mi izbaci error da je OnPlayerTakeDamage vec definisan definisan je u includu i kod mene u skrpi (kod mene je za pd, tazer i to) tkd nzm..
                                                                                 
Legacy Gaming Since 2017 ©

Scripter and Founder
Scripting 3+ Years
https://www.facebook.com/LegacyGamingOGC/ (FB Stranica)
https://www.facebook.com/nikolaa.jovicic (FB Nalog)

                                                                                 

dodaÅ¡ to za tazer za pd ili Å¡ta već  u include?

Mnogo imaš ti još da jedeš kačamak.
skrr
Moj tutorijali: Bazilion indent warninga
WORK? : Smart Project 1.2 , Leskovacki Detmec, Rodjendanski  server


Penzionisani balkanski samp kripter


Pokusaj ovako:

public OnPlayerTakeDamage(playerid, issuerid, Float: amount, weaponid)
{
if(issuerid != INVALID_PLAYER_ID)
{
if(IgracPolicajac(issuerid))
{
if(GetPlayerWeapon(issuerid) == 23)
{
new string[512], Float:Poz[3];
GetPlayerPos(playerid, Poz[0], Poz[1], Poz[2]);
if(IsPlayerInRangeOfPoint(issuerid, 5.0, Poz[0], Poz[1], Poz[2]))
{
if(PlayerInfo[playerid][pTrazeniLevel] == 0) return SCM(issuerid,-1,""PLAVA"( INFO ) "SIVA"Igrac nema Wanted Level!");
if(IgracPolicajac(playerid)) return SCM(issuerid,-1,""PLAVA"( INFO ) "SIVA"Ne mozes tazovati PD!");
if(PlayerInfo[issuerid][pRank] == 0) return SCM(issuerid,-1,""PLAVA"( INFO ) "SIVA"Suspendovan si!");
if(AdminDuty[playerid] == 1) return SCM(issuerid,-1,""PLAVA"( INFO ) "SIVA"Taj igrac je Admin na duznosti!");
format(string, sizeof(string), "%s puca tazerom na %s-a i pogadja ga.", GetName(issuerid) ,GetName(playerid));
ProxDetector(20.0, issuerid, string, PROX,PROX,PROX,PROX,PROX);
JBC_TogglePlayerControllable(playerid, 0); IgracTazovan[playerid] = 1;
TazerTimer[playerid] = SetTimerEx("TazovanTajmer", 15000, false, "i", playerid);
OnePlayAnim(playerid, "CRACK", "crckdeth2", 4.0, 1, 0, 0, 0, 0);
}
}
}
}
if(amount >= 1) {
	new s[60];
	format(s, 60, "-Damage %.0f", amount);
	TextDrawSetString(TakeDamage[playerid], s);
	TextDrawShowForPlayer(playerid, TakeDamage[playerid]);
	PlayerPlaySound(playerid,17802,0.0,0.0,0.0);
	SetTimerEx("DestruirTextoDraw", 1000, false, "i", playerid);
}
if (weaponid == WEAPON_GRENADE || weaponid == 51)
{
	new Float:health;
	GetPlayerHealth(playerid, health);
	SetPlayerHealth(playerid, (health - (amount * 0.3)));
	FlashbangStage[playerid] = 1;
	HandleFlashbangStage(playerid);
}
return 1;
}


Citat: .варнинг poslato Jul 03, 2018, 14:45:17 POSLE PODNE
Ubacio sam weapon-config, al mi izbaci error da je OnPlayerTakeDamage vec definisan definisan je u includu i kod mene u skrpi (kod mene je za pd, tazer i to) tkd nzm..

Kod weapon-configa ti lepo pise da je OnPlayerTakeDamage izbrisan
CitatOnPlayerGiveDamage and OnPlayerTakeDamage are removed. Use OnPlayerDamage (see below).

https://github.com/oscar-broman/samp-weapon-config/blob/master/weapon-config.inc

Sta je ovo u include-u?
red 3222 : public OnPlayerTakeDamage(playerid, issuerid, Float:amount, weaponid, bodypart)
???

Mnogo imaš ti još da jedeš kačamak.
skrr
Moj tutorijali: Bazilion indent warninga
WORK? : Smart Project 1.2 , Leskovacki Detmec, Rodjendanski  server


Penzionisani balkanski samp kripter