eLLectro • 06-17-2025, 12:39 AM
#1




Plugin New Damage Show

The "New Damage" plugin for CS 1.6 changes how damage is shown in the game. It adds better visual effects and clearer messages to make it easier to see how much damage players take.

Code: 
#include <amxmodx>
#include <cstrike>
#include <fakemeta>
#include <hamsandwich>

#define DAMAGE_COLOR_ENABLED // Comment out '//' if you need a standard damage dealer color.
#define NDAMAGE_SPRITE "sprites/new_damage.spr" // Path to sprite
#define NDAMAGE_REMOVE 1.0 // The sprite will be deleted after a certain period of time.
#define NDAMAGE_SIZE 0.30 // Sprite size (standard 0.30), less than 0.25 is not recommended!

#if defined DAMAGE_COLOR_ENABLED
new THUD_COLOR[] = {255, 0, 0};
new CTHUD_COLOR[] = {0, 0, 255};
new Float:SPRITE_TCOLOR[3] = {255.0, 0.0, 0.0};
new Float:SPRITE_CTCOLOR[3] = {0.0, 0.0, 255.0};
#endif

public plugin_init()
{
register_plugin("new_damage", "v0.01", "souledar");

RegisterHam(Ham_Think, "info_target", "fw_ThinkInfoTarget");
RegisterHam(Ham_TakeDamage, "player", "Ham_TakeDamage_Post", true);
}

public plugin_precache() engfunc(EngFunc_PrecacheModel, NDAMAGE_SPRITE);

public Ham_TakeDamage_Post(iVictim, iWeapon, iAttacker, Float:fDamage)
{
if (get_user_team(iVictim) == get_user_team(iAttacker)) return;
new iEnt = engfunc(EngFunc_CreateNamedEntity, engfunc(EngFunc_AllocString, "info_target"));
if (pev_valid(iEnt))
{
new Float:fOrigin[3];
pev(iVictim, pev_origin, fOrigin);
set_pev(iEnt, pev_classname, "func_damager");
set_pev(iEnt, pev_impulse, 11082018);
set_pev(iEnt, pev_movetype, MOVETYPE_FOLLOW);
set_pev(iEnt, pev_aiment, iVictim);
engfunc(EngFunc_SetModel, iEnt, NDAMAGE_SPRITE);
set_pev(iEnt, pev_scale, NDAMAGE_SIZE);
set_pev(iEnt, pev_rendermode, kRenderTransAdd);
#if defined DAMAGE_COLOR_ENABLED
if(cs_get_user_team(iAttacker) == CS_TEAM_T) set_pev(iEnt, pev_rendercolor, SPRITE_TCOLOR);
else if(cs_get_user_team(iAttacker) == CS_TEAM_CT) set_pev(iEnt, pev_rendercolor, SPRITE_CTCOLOR);
#else
new Float:standart_color[3] = {255.0, 255.0, 255.0};
set_pev(iEnt, pev_rendercolor, standart_color);
#endif
set_pev(iEnt, pev_renderamt, 255.0);

if (fDamage > 99.0) set_pev(iEnt, pev_frame, 0);
else set_pev(iEnt, pev_frame, fDamage);
set_pev(iEnt, pev_nextthink, get_gametime() + NDAMAGE_REMOVE);
}

if(iVictim == iAttacker || !is_user_alive(iAttacker) || !is_user_connected(iVictim)) return;

if(cs_get_user_team(iAttacker) == CS_TEAM_T)
{
#if defined DAMAGE_COLOR_ENABLED
set_hudmessage(THUD_COLOR[0], THUD_COLOR[1], THUD_COLOR[2], -1.0, -1.0, 0, 0.01, 0.05, 0.1);
#else
set_hudmessage(255, 255, 255, -1.0, -1.0, 0, 0.01, 0.05, 0.1);
#endif
}
else if (cs_get_user_team(iAttacker) == CS_TEAM_CT)
{
#if defined DAMAGE_COLOR_ENABLED
set_hudmessage(CTHUD_COLOR[0], CTHUD_COLOR[1], CTHUD_COLOR[2], -1.0, -1.0, 0, 0.01, 0.05, 0.1);
#else
set_hudmessage(255, 255, 255, -1.0, -1.0, 0, 0.01, 0.05, 0.1);
#endif
}
show_hudmessage(iAttacker, "\\     //^n^n//     \\"); // Displaying a hit on a player.
}

public fw_ThinkInfoTarget(iEnt)
{
if (pev_valid(iEnt))
{
if (pev(iEnt, pev_impulse) == 11082018)
set_pev(iEnt, pev_flags, FL_KILLME);
}
}

VersionAuthorRequirementsMod for
0.01souledarAMX Mod X, Cstrike, FakeMeta, HamSandwichCounter-Strike 1.6
 Attached Files
.zip New damage plugin.zip
(Size: 21.61 KB Downloads: 12)
This post was last modified: 06-24-2025, 08:22 PM by spincs.
Users browsing this thread: 1 Guest(s)
Powered By MyBB Group © 2026
Made with by ZMBIO.RO