Thread: simple request
View Single Post
CrazY.
Veteran Member
Join Date: May 2015
Location: SP, Brazil
Old 11-26-2021 , 08:44   Re: simple request
Reply With Quote #13

cvars

trace_color_red
trace_color_green
trace_color_blue

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


new g_beamSpriteIndex
new cv_trace_color_r, cv_trace_color_g, cv_trace_color_b


public plugin_init()
{
	register_plugin("Colored traces", "1.0", "Ainsley Harriott")

	RegisterHam(Ham_TraceAttack, "player", "OnTraceAttackPost", 1)
	RegisterHam(Ham_TraceAttack, "worldspawn", "OnTraceAttackPost", 1)
	RegisterHam(Ham_TraceAttack, "func_wall", "OnTraceAttackPost", 1)
	RegisterHam(Ham_TraceAttack, "func_wall_toggle", "OnTraceAttackPost", 1)
	RegisterHam(Ham_TraceAttack, "func_door", "OnTraceAttackPost", 1)
	RegisterHam(Ham_TraceAttack, "func_door_rotating", "OnTraceAttackPost", 1)
	RegisterHam(Ham_TraceAttack, "func_breakable", "OnTraceAttackPost", 1)
	RegisterHam(Ham_TraceAttack, "func_button", "OnTraceAttackPost", 1)

	cv_trace_color_r = register_cvar("trace_color_red", "255")
	cv_trace_color_g = register_cvar("trace_color_green", "215")
	cv_trace_color_b = register_cvar("trace_color_blue", "0")
}

public plugin_precache()
{
	g_beamSpriteIndex = precache_model("sprites/laserbeam.spr")
}

public OnTraceAttackPost(index, attacker, Float:damage, Float:dir[3], tr, damagebits)
{
	if (!(damagebits & DMG_BULLET))
	{
		return
	}

	if (!is_user_connected(attacker))
	{
		return
	}

	if (crxranks_get_user_level(attacker) < 33)
	{
		return
	}

	new Float:endPos[3]
	get_tr2(tr, TR_vecEndPos, endPos)

	new red = clamp(get_pcvar_num(cv_trace_color_r), 0, 255)
	new green = clamp(get_pcvar_num(cv_trace_color_g), 0, 255)
	new blue = clamp(get_pcvar_num(cv_trace_color_b), 0, 255)

	message_begin(MSG_BROADCAST, SVC_TEMPENTITY)
	write_byte(TE_BEAMENTPOINT)
	write_short(attacker | 0x1000)
	write_coord_f(endPos[0])
	write_coord_f(endPos[1])
	write_coord_f(endPos[2])
	write_short(g_beamSpriteIndex)
	write_byte(0)
	write_byte(0)
	write_byte(2)
	write_byte(10)
	write_byte(0)
	write_byte(red)
	write_byte(green)
	write_byte(blue)
	write_byte(200)
	write_byte(0)
	message_end()
}
__________________








CrazY. is offline