mirror of
				https://github.com/ineedbots/iw5_bot_warfare.git
				synced 2025-11-03 22:17:01 +00:00 
			
		
		
		
	better print damage
This commit is contained in:
		@@ -1832,8 +1832,49 @@ Callback_PlayerDamage( var_0, var_1, var_2, var_3, var_4, var_5, var_6, var_7, v
 | 
			
		||||
    Callback_PlayerDamage_internal( var_0, var_1, self, var_2, var_3, var_4, var_5, var_6, var_7, var_8, var_9 );
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
doPrintDamage(dmg, hitloc, flags)
 | 
			
		||||
{
 | 
			
		||||
    huddamage = newclienthudelem(self);
 | 
			
		||||
    huddamage.alignx = "center";
 | 
			
		||||
    huddamage.horzalign = "center";
 | 
			
		||||
    huddamage.x = 10;
 | 
			
		||||
    huddamage.y = 235;
 | 
			
		||||
    huddamage.fontscale = 1.6;
 | 
			
		||||
    huddamage.font = "objective";
 | 
			
		||||
    huddamage setvalue(dmg);
 | 
			
		||||
 | 
			
		||||
    if ((flags & level.iDFLAGS_PENETRATION) != 0)
 | 
			
		||||
        huddamage.color = (1, 1, 0.25);
 | 
			
		||||
 | 
			
		||||
    if (hitloc == "head")
 | 
			
		||||
        huddamage.color = (1, 0.25, 0.25);
 | 
			
		||||
 | 
			
		||||
    huddamage moveovertime(1);
 | 
			
		||||
    huddamage fadeovertime(1);
 | 
			
		||||
    huddamage.alpha = 0;
 | 
			
		||||
    huddamage.x = randomIntRange(25, 70);
 | 
			
		||||
 | 
			
		||||
    val = 1;
 | 
			
		||||
    if (randomInt(2))
 | 
			
		||||
        val = -1;
 | 
			
		||||
 | 
			
		||||
    huddamage.y = 235 + randomIntRange(25, 70) * val;
 | 
			
		||||
 | 
			
		||||
    wait 1;
 | 
			
		||||
 | 
			
		||||
    huddamage destroy();
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
finishPlayerDamageWrapper( var_0, var_1, var_2, var_3, var_4, var_5, var_6, var_7, var_8, var_9, var_10 )
 | 
			
		||||
{
 | 
			
		||||
    if( isDefined(level.allowPrintDamage) && level.allowPrintDamage )
 | 
			
		||||
	{
 | 
			
		||||
		if ( isDefined( var_1 ) && isPlayer( var_1 ) && isDefined(var_1.printDamage) && var_1.printDamage )
 | 
			
		||||
			var_1 thread doPrintDamage(var_2, var_8, var_3);
 | 
			
		||||
		else if( isDefined( var_1.owner ) && isPlayer( var_1.owner ) && isDefined(var_1.owner.printDamage) && var_1.owner.printDamage )
 | 
			
		||||
			var_1.owner thread doPrintDamage(var_2, var_8, var_3);
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
    if ( maps\mp\_utility::isUsingRemote() && var_2 >= self.health && !( var_3 & level.iDFLAGS_STUN ) )
 | 
			
		||||
    {
 | 
			
		||||
        if ( !isdefined( var_7 ) )
 | 
			
		||||
 
 | 
			
		||||
@@ -1,28 +0,0 @@
 | 
			
		||||
game:onplayerdamage(function(_self, inflictor, attacker, damage, dflags, mod, weapon, point, dir, hitloc)
 | 
			
		||||
  if (game:isplayer(attacker) ~= 1 or _self.sessionteam == attacker.sessionteam or _self == attacker) then
 | 
			
		||||
      return
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  local huddamage = game:newclienthudelem(attacker)
 | 
			
		||||
  huddamage.alignx = "center"
 | 
			
		||||
  huddamage.horzalign = "center"
 | 
			
		||||
  huddamage.x = 10
 | 
			
		||||
  huddamage.y = 235
 | 
			
		||||
  huddamage.fontscale = 1.6
 | 
			
		||||
  huddamage.font = "objective"
 | 
			
		||||
  huddamage:setvalue(damage)
 | 
			
		||||
 | 
			
		||||
  if (hitloc == "head") then
 | 
			
		||||
      huddamage.color = vector:new(1, 1, 0.25)
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  huddamage:moveovertime(1)
 | 
			
		||||
  huddamage:fadeovertime(1)
 | 
			
		||||
  huddamage.alpha = 0
 | 
			
		||||
  huddamage.x = math.random(25, 70)
 | 
			
		||||
  huddamage.y = 235 + math.random(25, 70) * (math.random(0, 1) == 1 and -1 or 1)
 | 
			
		||||
 | 
			
		||||
  game:ontimeout(function()
 | 
			
		||||
      huddamage:destroy()
 | 
			
		||||
  end, 1000)
 | 
			
		||||
end)
 | 
			
		||||
@@ -4,58 +4,8 @@ init()
 | 
			
		||||
 | 
			
		||||
	level thread onPlayerConnect();
 | 
			
		||||
 | 
			
		||||
	level thread hook_callbacks();
 | 
			
		||||
 | 
			
		||||
	level.killstreakPrint = 2;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
doPrintDamage(dmg, hitloc)
 | 
			
		||||
{
 | 
			
		||||
	huddamage = newclienthudelem(self);
 | 
			
		||||
  huddamage.alignx = "center";
 | 
			
		||||
  huddamage.horzalign = "center";
 | 
			
		||||
  huddamage.x = 10;
 | 
			
		||||
  huddamage.y = 235;
 | 
			
		||||
  huddamage.fontscale = 1.6;
 | 
			
		||||
  huddamage.font = "objective";
 | 
			
		||||
  huddamage setvalue(dmg);
 | 
			
		||||
 | 
			
		||||
  if (hitloc == "head")
 | 
			
		||||
    huddamage.color = (1, 1, 0.25);
 | 
			
		||||
 | 
			
		||||
  huddamage moveovertime(1);
 | 
			
		||||
  huddamage fadeovertime(1);
 | 
			
		||||
  huddamage.alpha = 0;
 | 
			
		||||
  huddamage.x = randomIntRange(25, 70);
 | 
			
		||||
 | 
			
		||||
	val = 1;
 | 
			
		||||
	if (randomInt(2))
 | 
			
		||||
		val = -1;
 | 
			
		||||
	
 | 
			
		||||
  huddamage.y = 235 + randomIntRange(25, 70) * val;
 | 
			
		||||
 | 
			
		||||
  wait 1;
 | 
			
		||||
 | 
			
		||||
	huddamage destroy();
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
onPlayerDamage( eInflictor, eAttacker, iDamage, iDFlags, sMeansOfDeath, sWeapon, vPoint, vDir, sHitLoc, timeOffset )
 | 
			
		||||
{
 | 
			
		||||
	self [[level.prevCallbackPlayerDamage2]]( eInflictor, eAttacker, iDamage, iDFlags, sMeansOfDeath, sWeapon, vPoint, vDir, sHitLoc, timeOffset );
 | 
			
		||||
 | 
			
		||||
	if ( isDefined( eAttacker ) && isPlayer( eAttacker ) )
 | 
			
		||||
		eAttacker thread doPrintDamage(iDamage, sHitLoc);
 | 
			
		||||
	else if( isDefined( eAttacker.owner ) && isPlayer( eAttacker.owner ) )
 | 
			
		||||
		eAttacker.owner thread doPrintDamage(iDamage, sHitLoc);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
hook_callbacks()
 | 
			
		||||
{
 | 
			
		||||
	level waittill( "prematch_over" );
 | 
			
		||||
	wait 0.1;
 | 
			
		||||
 | 
			
		||||
	level.prevCallbackPlayerDamage2 = level.callbackPlayerDamage;
 | 
			
		||||
	level.callbackPlayerDamage = ::onPlayerDamage;
 | 
			
		||||
	level.allowPrintDamage = true;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
onPlayerConnect()
 | 
			
		||||
@@ -79,6 +29,8 @@ onChangeKit()
 | 
			
		||||
{
 | 
			
		||||
	self endon("disconnect");
 | 
			
		||||
 | 
			
		||||
	self.printDamage = true;
 | 
			
		||||
 | 
			
		||||
	for (;;)
 | 
			
		||||
	{
 | 
			
		||||
		self waittill("changed_kit");
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user