Map fixes for old and newly discovered bugs + removed code hacks

This commit is contained in:
BjossiAlfreds 2021-04-08 13:42:18 +00:00
parent 4fd0369f47
commit 23f55b72c7
9 changed files with 45451 additions and 51 deletions

View file

@ -584,10 +584,6 @@ SpawnEntities(const char *mapname, char *entities, const char *spawnpoint)
const char *com_token;
int i;
float skill_level;
static qboolean monster_count_city2 = false;
static qboolean monster_count_city3 = false;
static qboolean monster_count_cool1 = false;
static qboolean monster_count_lab = false;
if (!mapname || !entities || !spawnpoint)
{
@ -665,53 +661,6 @@ SpawnEntities(const char *mapname, char *entities, const char *spawnpoint)
ent->spawnflags &= ~SPAWNFLAG_NOT_HARD;
}
/*
* The 'monsters' count in city3.bsp is wrong.
* There're two monsters triggered in a hidden
* and unreachable room next to the security
* pass.
*
* We need to make sure that this hack is only
* applied once!
*/
if (!Q_stricmp(level.mapname, "city3") && !monster_count_city3)
{
level.total_monsters = level.total_monsters - 2;
monster_count_city3 = true;
}
/* A slightly other problem in city2.bsp. There's a floater
* with missing trigger on the right gallery above the data
* spinner console, right before the door to the staircase.
*/
if ((skill->value > 0) && !Q_stricmp(level.mapname, "city2") && !monster_count_city2)
{
level.total_monsters = level.total_monsters - 1;
monster_count_city2 = true;
}
/*
* Nearly the same problem exists in cool1.bsp.
* On medium skill a gladiator is spawned in a
* crate that's never triggered.
*/
if ((skill->value == 1) && !Q_stricmp(level.mapname, "cool1") && !monster_count_cool1)
{
level.total_monsters = level.total_monsters - 1;
monster_count_cool1 = true;
}
/*
* Nearly the same problem exists in lab.bsp.
* On medium skill two parasites are spawned
* in a hidden place that never triggers.
*/
if ((skill->value == 1) && !Q_stricmp(level.mapname, "lab") && !monster_count_lab)
{
level.total_monsters = level.total_monsters - 2;
monster_count_lab = true;
}
/* remove things (except the world) from
different skill levels or deathmatch */
if (ent != g_edicts)

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff