I made changes to the code, but NORMAL_VEC (NormalVector) are still equal to zero
Code:
#include <amxmodx>
#include <amxmisc>
#include <fakemeta>
#include <hamsandwich>
#include <engine>
#define PLUGIN "Crossfire Cannons"
#define VERSION "1.0"
#define AUTHOR "Phant"
#define MODEL "models/cindergibs.mdl"
#define TE_BREAKMODEL 108
#define VELOCITY 75
#define VELOCITY_RANDOM 10
#define SIZE 10
#define LIFE 50
#define THROWING_POWER 200
new g_model
public plugin_precache()
{
g_model = precache_model(MODEL)
}
public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR)
RegisterHam(Ham_Spawn, "env_explosion", "explosion_spwn", 1)
}
public explosion_spwn(iEnt)
{
new Float:origin[3]
pev(iEnt, pev_origin, origin)
new inflictor = pev(iEnt, pev_owner)
client_print(0, print_chat, "OWNER: %i", inflictor)
new szClassname[32]
pev(inflictor, pev_classname, szClassname, 31)
client_print(0, print_chat, "CLASSNAME: %s", szClassname)
new Float:originet[3]
pev(inflictor, pev_origin, originet)
client_print(0, print_chat, "ORIGIN OF CANNON: %f %f %f", originet[0], originet[1], originet[2])
new Float:angles[3]
pev(inflictor, pev_angles, angles)
client_print(0, print_chat, "ANGLES OF CANNON: %f %f %f", angles[0], angles[1], angles[2])
new Float:NormalVector[3]
new trace = create_tr2()
engfunc(EngFunc_TraceLine, originet, origin, IGNORE_MONSTERS, inflictor, trace)
get_tr2(trace, TR_vecPlaneNormal, NormalVector)
client_print(0, print_chat, "NORMAL_VEC: %f %f %f", NormalVector[0], NormalVector[1], NormalVector[2])
free_tr2(trace)
toss_gibs(origin)
}
public toss_gibs(Float:origin[3])
{
message_begin(MSG_BROADCAST, SVC_TEMPENTITY)
write_byte(TE_BREAKMODEL)
write_coord(floatround(origin[0]))
write_coord(floatround(origin[1]))
write_coord(floatround(origin[2]))
write_coord(SIZE)
write_coord(SIZE)
write_coord(SIZE)
write_coord(random_num(-VELOCITY, VELOCITY))
write_coord(random_num(-VELOCITY, VELOCITY))
write_coord(THROWING_POWER)
write_byte(VELOCITY_RANDOM)
write_short(g_model)
write_byte(random_num(8, 16))
write_byte(LIFE)
write_byte(0)
message_end()
}