#ifdef SVQC
void Notification_GetCvars(void)
{
- float i;
- for(i = 0; i <= NOTIF_CHOICE_COUNT; ++i)
+ for(int i = 0; i <= NOTIF_CHOICE_COUNT; ++i)
{
GetCvars_handleFloat(
get_cvars_s,
#ifdef CSQC
if(notif.nent_icon != "")
{
+ if ( notif.nent_iconargs != "" )
+ {
+ notif.nent_icon = Local_Notification_sprintf(
+ notif.nent_icon,notif.nent_iconargs,
+ s1, s2, s3, s4, f1, f2, f3, f4);
+ // remove the newline added by Local_Notification_sprintf
+ notif.nent_icon = strzone(substring(notif.nent_icon,0,strlen(notif.nent_icon)-1));
+ }
Local_Notification_HUD_Notify_Push(
notif.nent_icon,
notif.nent_hudargs,
if(notif.nent_challow_var && (warmup_stage || (notif.nent_challow_var == 2)))
{
- switch(cvar_string(sprintf("notification_%s", notif.nent_name)))
+ switch(cvar(sprintf("notification_%s", notif.nent_name)))
{
case 1: found_choice = notif.nent_optiona; break;
case 2: found_choice = notif.nent_optionb; break;
));
#endif
- float i;
- for(i = 0; i < 4; ++i) { if(self.nent_strings[i]) { strunzone(self.nent_strings[i]); } }
+ for(int i = 0; i < 4; ++i) { if(self.nent_strings[i]) { strunzone(self.nent_strings[i]); } }
remove(self);
}
-float Net_Write_Notification(entity client, float sf)
+float Net_Write_Notification(entity client, int sf)
{
if(Notification_ShouldSend(self.nent_broadcast, client, self.nent_client))
{
- float i;
WriteByte(MSG_ENTITY, ENT_CLIENT_NOTIFICATION);
WriteByte(MSG_ENTITY, self.nent_net_type);
WriteShort(MSG_ENTITY, self.nent_net_name);
- for(i = 0; i < self.nent_stringcount; ++i) { WriteString(MSG_ENTITY, self.nent_strings[i]); }
- for(i = 0; i < self.nent_floatcount; ++i) { WriteLong(MSG_ENTITY, self.nent_floats[i]); }
+ for(int i = 0; i < self.nent_stringcount; ++i) { WriteString(MSG_ENTITY, self.nent_strings[i]); }
+ for(int i = 0; i < self.nent_floatcount; ++i) { WriteLong(MSG_ENTITY, self.nent_floats[i]); }
return true;
}
else { return false; }
// 2. Manually handling each separate call on per-usage basis (See old CTF usage of verbose)
entity found_choice;
- #define RECURSE_FROM_CHOICE(ent,action) \
+ #define RECURSE_FROM_CHOICE(ent,action) do { \
if(notif.nent_challow_var && (warmup_stage || (notif.nent_challow_var == 2))) \
{ \
switch(ent.msg_choice_choices[net_name - 1]) \
found_choice.nent_stringcount, \
found_choice.nent_floatcount, \
s1, s2, s3, s4, \
- f1, f2, f3, f4);
+ f1, f2, f3, f4); \
+ } while(0)
switch(broadcast)
{
case NOTIF_ONE_ONLY: // we can potentially save processing power with this broadcast method
{
if(IS_REAL_CLIENT(client))
- { RECURSE_FROM_CHOICE(client, return) }
+ {
+ RECURSE_FROM_CHOICE(client, return);
+ }
break;
}
default:
{
entity to;
FOR_EACH_REALCLIENT(to)
- { if(Notification_ShouldSend(broadcast, to, client))
- { RECURSE_FROM_CHOICE(to, continue) } }
+ {
+ if(Notification_ShouldSend(broadcast, to, client))
+ {
+ RECURSE_FROM_CHOICE(to, continue);
+ }
+ }
break;
}
}
net_notif.nent_stringcount = notif.nent_stringcount;
net_notif.nent_floatcount = notif.nent_floatcount;
- float i;
- for(i = 0; i < net_notif.nent_stringcount; ++i)
+ for(int i = 0; i < net_notif.nent_stringcount; ++i)
{ net_notif.nent_strings[i] = strzone(...(i, string)); }
- for(i = 0; i < net_notif.nent_floatcount; ++i)
+ for(int i = 0; i < net_notif.nent_floatcount; ++i)
{ net_notif.nent_floats[i] = ...((net_notif.nent_stringcount + i), float); }
net_notif.think = Net_Notification_Remove;