set g_pinata 0 "if set to 1 you will not only drop your current weapon when you are killed, but you will drop all weapons that you possessed"
set g_weapon_stay 0 "if set to 1 or 2, weapons stay after they were picked up (1: weapons you don't have yet give you ammo of their type and they can not be dropped, 2: weapons don't give ammo, but instead players start with one pickup-load of ammo by default, 3: weapons give ammo, weapons only stay as ammo-less ghosts)"
set g_weapon_throwable 1 "if set to 1, weapons can be dropped"
-set g_powerups 1 "if set to 0 the strength and shield (invincibility) will not spawn on the map"
+set g_powerups -1 "if set to 0 the strength and shield (invincibility) will not spawn on the map, if 1 they will spawn in all game modes, -1 is game mode default"
set g_use_ammunition 1 "if set to 0 all weapons have unlimited ammunition"
set g_pickup_items 1 "if set to 0 all items (health, armor, ammo, weapons...) are removed from the map"
set g_minstagib 0 "enable minstagib"
set g_arena_maxspawned 2 "maximum number of players to spawn at once (the rest is spectating, waiting for their turn)"
set g_arena_roundbased 1 "if disabled, the next player will spawn as soon as someone dies"
set g_arena_warmup 5 "time, newly spawned players have to prepare themselves in round based matches"
-set g_arena_powerups 0 "enables powerups (superhealth, strength and shield), which are removed by default"
// ca
set g_ca 0 "Clan Arena: Played in rounds, once you're dead you're out! The team with survivors wins the round."
s = strcat(s, ", ", _("Blood loss"));
if(cvar("g_jetpack"))
s = strcat(s, ", ", _("Jet pack"));
- if(!cvar("g_powerups"))
+ if(cvar("g_powerups") == 0)
s = strcat(s, ", ", _("No powerups"));
+ if(cvar("g_powerups") > 0)
+ s = strcat(s, ", ", _("Powerups"));
if(s == "")
return ZCTX(_("MUT^None"));
else
s = strcat(s, ":minstagib");
// TODO to mutator system
- if(!autocvar_g_powerups)
+ if(autocvar_g_powerups == 0)
s = strcat(s, ":no_powerups");
+ if(autocvar_g_powerups > 0)
+ s = strcat(s, ":powerups");
GameLogEcho(s);
GameLogEcho(":gameinfo:end");
}
*/
- if(autocvar_spawn_debug >= 2)
- {
- entity otheritem;
- for(otheritem = findradius(self.origin, 3); otheritem; otheritem = otheritem.chain)
- {
- if(otheritem.is_item)
- {
- dprint("XXX Found duplicated item: ", itemname, vtos(self.origin));
- dprint(" vs ", otheritem.netname, vtos(otheritem.origin), "\n");
- error("Mapper sucks.");
- }
- }
- self.is_item = TRUE;
- }
-
if(g_lms || g_ca)
{
startitem_failed = TRUE;
return;
}
}
- else if (!autocvar_g_pickup_items && itemid != IT_STRENGTH && itemid != IT_INVINCIBLE && itemid != IT_HEALTH)
+ else if (!autocvar_g_pickup_items && itemid != IT_STRENGTH && itemid != IT_INVINCIBLE)
{
startitem_failed = TRUE;
remove (self);
return;
}
+ if(autocvar_spawn_debug >= 2)
+ {
+ entity otheritem;
+ for(otheritem = findradius(self.origin, 3); otheritem; otheritem = otheritem.chain)
+ {
+ if(otheritem.is_item)
+ {
+ dprint("XXX Found duplicated item: ", itemname, vtos(self.origin));
+ dprint(" vs ", otheritem.netname, vtos(otheritem.origin), "\n");
+ error("Mapper sucks.");
+ }
+ }
+ self.is_item = TRUE;
+ }
+
weaponsInMap |= weaponid;
precache_model (itemmodel);
void spawnfunc_item_health25() { spawnfunc_item_health_medium(); }
void spawnfunc_item_health100() { spawnfunc_item_health_mega(); }
-void spawnfunc_item_strength (void) {
- if(!autocvar_g_powerups)
- return;
+float have_powerups(void)
+{
+ if(autocvar_g_powerups > 0)
+ return TRUE;
+ else if(autocvar_g_powerups == 0)
+ return FALSE;
+ else if(g_arena)
+ return FALSE;
+ else
+ return TRUE;
+}
- if((g_arena || g_ca) && !autocvar_g_arena_powerups)
+void spawnfunc_item_strength (void) {
+ if(!have_powerups())
return;
if(g_minstagib) {
}
void spawnfunc_item_invincible (void) {
- if(!autocvar_g_powerups)
- return;
-
- if((g_arena || g_ca) && !autocvar_g_arena_powerups)
+ if(!have_powerups())
return;
if(g_minstagib) {
modifications = strcat(modifications, ", Blood loss");
if(g_jetpack)
modifications = strcat(modifications, ", Jet pack");
- if(!autocvar_g_powerups)
+ if(autocvar_g_powerups == 0)
modifications = strcat(modifications, ", No powerups");
+ if(autocvar_g_powerups > 0)
+ modifications = strcat(modifications, ", Powerups");
modifications = substring(modifications, 2, strlen(modifications) - 2);
string versionmessage;