mirror of
https://github.com/ZDoom/Raze.git
synced 2024-11-15 17:01:28 +00:00
- Exhumed: Change map command to start the level directly without going through the scrolling map.
This commit is contained in:
parent
e79c6bacd3
commit
61a6321cd6
10 changed files with 12 additions and 11 deletions
|
@ -87,7 +87,7 @@ struct GameInterface
|
|||
virtual const char *CheckCheatMode() { return nullptr; }
|
||||
virtual const char* GenericCheat(int player, int cheat) = 0;
|
||||
virtual void NextLevel(MapRecord* map, int skill) {}
|
||||
virtual void NewGame(MapRecord* map, int skill) {}
|
||||
virtual void NewGame(MapRecord* map, int skill, bool special = false) {}
|
||||
virtual void LevelCompleted(MapRecord* map, int skill) {}
|
||||
virtual bool DrawAutomapPlayer(int x, int y, int z, int a, double const smoothratio) { return false; }
|
||||
virtual void SetTileProps(int tile, int surf, int vox, int shade) {}
|
||||
|
|
|
@ -197,7 +197,7 @@ static void GameTicker()
|
|||
C_FlushDisplay();
|
||||
gameaction = ga_level;
|
||||
BackupSaveGame = "";
|
||||
gi->NewGame(g_nextmap, g_nextskill);
|
||||
gi->NewGame(g_nextmap, g_nextskill, ga == ga_newgamenostopsound);
|
||||
break;
|
||||
|
||||
case ga_startup:
|
||||
|
|
|
@ -249,7 +249,7 @@ void NewLevel(MapRecord *sng, int skill)
|
|||
|
||||
}
|
||||
|
||||
void GameInterface::NewGame(MapRecord *sng, int skill)
|
||||
void GameInterface::NewGame(MapRecord *sng, int skill, bool)
|
||||
{
|
||||
gGameOptions.uGameFlags = 0;
|
||||
cheatReset();
|
||||
|
|
|
@ -119,7 +119,7 @@ struct GameInterface : ::GameInterface
|
|||
void Startup() override;
|
||||
void Render() override;
|
||||
const char* GenericCheat(int player, int cheat) override;
|
||||
void NewGame(MapRecord *sng, int skill) override;
|
||||
void NewGame(MapRecord *sng, int skill, bool) override;
|
||||
void NextLevel(MapRecord* map, int skill) override;
|
||||
void LevelCompleted(MapRecord* map, int skill) override;
|
||||
bool DrawAutomapPlayer(int x, int y, int z, int a, double const smoothratio) override;
|
||||
|
|
|
@ -54,7 +54,7 @@ struct GameInterface : public ::GameInterface
|
|||
const char* GenericCheat(int player, int cheat) override;
|
||||
const char* CheckCheatMode() override;
|
||||
void NextLevel(MapRecord* map, int skill) override;
|
||||
void NewGame(MapRecord* map, int skill) override;
|
||||
void NewGame(MapRecord* map, int skill, bool) override;
|
||||
void LevelCompleted(MapRecord* map, int skill) override;
|
||||
bool DrawAutomapPlayer(int x, int y, int z, int a, double const smoothratio) override;
|
||||
int playerKeyMove() override { return 40; }
|
||||
|
|
|
@ -183,7 +183,7 @@ void GameInterface::NextLevel(MapRecord* map, int skill)
|
|||
//
|
||||
//---------------------------------------------------------------------------
|
||||
|
||||
void GameInterface::NewGame(MapRecord* map, int skill)
|
||||
void GameInterface::NewGame(MapRecord* map, int skill, bool)
|
||||
{
|
||||
// Hmm... What about the other players?
|
||||
ps[0].last_extra = gs.max_player_health;
|
||||
|
|
|
@ -243,7 +243,7 @@ struct GameInterface : ::GameInterface
|
|||
void GetInput(InputPacket* packet, ControlInfo* const hidInput) override;
|
||||
void Startup() override;
|
||||
const char* GenericCheat(int player, int cheat) override;
|
||||
void NewGame(MapRecord *map, int skill) override;
|
||||
void NewGame(MapRecord *map, int skill, bool) override;
|
||||
void LevelCompleted(MapRecord *map, int skill) override;
|
||||
void NextLevel(MapRecord *map, int skill) override;
|
||||
bool DrawAutomapPlayer(int x, int y, int z, int a, double const smoothratio) override;
|
||||
|
|
|
@ -212,12 +212,13 @@ void GameInterface::NextLevel(MapRecord *map, int skill)
|
|||
|
||||
}
|
||||
|
||||
void GameInterface::NewGame(MapRecord *map, int skill)
|
||||
void GameInterface::NewGame(MapRecord *map, int skill, bool frommenu)
|
||||
{
|
||||
// start a new game on the given level
|
||||
InitNewGame();
|
||||
if (map->levelNumber == 1) STAT_StartNewGame("Exhumed", 1);
|
||||
Intermission(nullptr, map);
|
||||
if (frommenu) Intermission(nullptr, map);
|
||||
else NextLevel(map, skill);
|
||||
}
|
||||
|
||||
void GameInterface::LevelCompleted(MapRecord *map, int skill)
|
||||
|
|
|
@ -607,7 +607,7 @@ void GameInterface::NextLevel(MapRecord *map, int skill)
|
|||
//
|
||||
//---------------------------------------------------------------------------
|
||||
|
||||
void GameInterface::NewGame(MapRecord *map, int skill)
|
||||
void GameInterface::NewGame(MapRecord *map, int skill, bool)
|
||||
{
|
||||
if (skill != -1) Skill = skill;
|
||||
ShadowWarrior::NewGame = true;
|
||||
|
|
|
@ -2246,7 +2246,7 @@ struct GameInterface : ::GameInterface
|
|||
const char* GenericCheat(int player, int cheat) override;
|
||||
void LevelCompleted(MapRecord *map, int skill) override;
|
||||
void NextLevel(MapRecord *map, int skill) override;
|
||||
void NewGame(MapRecord *map, int skill) override;
|
||||
void NewGame(MapRecord *map, int skill, bool) override;
|
||||
bool DrawAutomapPlayer(int x, int y, int z, int a, double const smoothratio) override;
|
||||
int playerKeyMove() override { return 35; }
|
||||
void WarpToCoords(int x, int y, int z, int a, int h) override;
|
||||
|
|
Loading…
Reference in a new issue