REGISTER_NET_LINKED(_ENT_CLIENT_INIT)
#ifdef CSQC
-NET_HANDLE(_ENT_CLIENT_INIT, bool isnew) { return true; }
+NET_HANDLE(_ENT_CLIENT_INIT, bool isnew) { make_pure(this); return true; }
#endif
/** Sent as a temp entity from a persistent linked entity */
REGISTER_NET_TEMP(ENT_CLIENT_INIT)
NET_HANDLE(ENT_CLIENT_MODELEFFECT, bool isnew)
{
- make_pure(self);
+ make_pure(this);
int f = ReadByte();
bool mutator_log = false;
#ifndef MENUQC
+/** server mutators activate corresponding client mutators for all clients */
REGISTER_NET_LINKED(Mutator)
#ifdef SVQC
}
NET_HANDLE(Mutator, bool isNew)
{
+ make_pure(this);
string s = this.netname = ReadString();
return = true;
if (isNew)
// Notification Networking
// =========================
+/** networked as a linked entity to give newly connecting clients some notification context */
REGISTER_NET_LINKED(ENT_CLIENT_NOTIFICATION)
#ifdef CSQC
NET_HANDLE(ENT_CLIENT_NOTIFICATION, bool is_new)
{
+ make_pure(this);
int net_type = ReadByte();
int net_name = ReadShort();
Notification notif = Get_Notif_Ent(net_type, net_name);
// negative confirmations
/** allows various things to know when no information is added */
Notification NO_MSG;
-STATIC_INIT(NO_MSG) { NO_MSG = new(Notification); }
+STATIC_INIT(NO_MSG) { NO_MSG = new_pure(Notification); }
/** @deprecated */
const int NO_MSG_ = -12345;
/** allows Send_Notification to safely abort sending */
Notification NOTIF_ABORT;
-STATIC_INIT(NOTIF_ABORT) { NOTIF_ABORT = new(Notification); }
+STATIC_INIT(NOTIF_ABORT) { NOTIF_ABORT = new_pure(Notification); }
// used for notification system multi-team identifiers
#define APP_TEAM_NUM(num, prefix) ((num == NUM_TEAM_1) ? prefix##_RED : ((num == NUM_TEAM_2) ? prefix##_BLUE : ((num == NUM_TEAM_3) ? prefix##_YELLOW : prefix##_PINK)))