I have this part of code:
PHP Code:
public take_damage(attacker, victim, Float:damage)
{
if (get_user_health(victim) - damage <= 0)
util_kill(attacker, victim);
else
{
fm_fakedamage(victim, "drone", damage, DMG_BULLET);
static origin[3];
get_user_origin(victim, origin, 0);
message_begin(MSG_ONE, get_user_msgid("Damage"), {0, 0, 0}, victim);
write_byte(0); // Damage save
write_byte(floatround(damage)); // Damage take
write_long(DMG_BLAST); // Damage type
write_coord(origin[0]); // X
write_coord(origin[1]); // Y
write_coord(origin[2]); // Z
message_end();
if (get_user_team(attacker) == get_user_team(victim))
{
static name[32];
get_user_name(attacker, name, sizeof(name));
client_print(0, print_chat, "%s attacked a teammate", name);
}
}
}
util_kill(killer, victim)
{
if (get_user_team(killer) != get_user_team(victim))
{
user_silentkill(victim);
make_deathmsg(killer, victim, 0, "drone");
set_user_frags(killer, get_user_frags(killer) + 1);
new money = cs_get_user_money(killer) + 300;
if (money >= 16000)
cs_set_user_money(killer, 16000);
else
cs_set_user_money(killer, money, 1);
}
else
{
user_silentkill(victim);
make_deathmsg(killer, victim, 0, "drone");
set_user_frags(killer, get_user_frags(killer) - 1);
new money = cs_get_user_money(killer) - 3300;
if (money <= 0)
cs_set_user_money(killer, 0);
else
cs_set_user_money(killer, money, 1);
}
message_begin(MSG_BROADCAST, get_user_msgid("ScoreInfo"));
write_byte(killer); // Destination
write_short(get_user_frags(killer)); // Frags
write_short(cs_get_user_deaths(killer)); // Deaths
write_short(0); // Player class
write_short(get_user_team(killer)); // Team
message_end();
message_begin(MSG_BROADCAST, get_user_msgid("ScoreInfo"));
write_byte(victim); // Destination
write_short(get_user_frags(victim)); // Frags
write_short(cs_get_user_deaths(victim)); // Deaths
write_short(0); // Player class
write_short(get_user_team(victim)); // Team
message_end();
static kname[32];
static vname[32];
static kteam[10];
static vteam[10];
static kauthid[32];
static vauthid[32];
get_user_name(killer, kname, sizeof(kname));
get_user_team(killer, kteam, sizeof(kteam));
get_user_authid(killer, kauthid, sizeof(kauthid));
get_user_name(victim, vname, sizeof(vname));
get_user_team(victim, vteam, sizeof(vteam));
get_user_authid(victim, vauthid, sizeof(vauthid));
log_message("^"%s<%d><%s><%s>^" killed ^"%s<%d><%s><%s>^" with drone",
kname, get_user_userid(killer), kauthid, kteam,
vname, get_user_userid(victim), vauthid, vteam);
}
but in the second time I kill a player using that drone the server crash and give me this error:
new message started when msg '85' has not been sent yet.