Compare commits
3 Commits
11302b600a
...
c52a274a7a
Author | SHA1 | Date |
---|---|---|
Misa | c52a274a7a | |
Misa | 385f9d244e | |
Misa | eb7b540346 |
|
@ -470,7 +470,7 @@ void gamelogic()
|
||||||
|
|
||||||
game.gravitycontrol = game.savegc;
|
game.gravitycontrol = game.savegc;
|
||||||
graphics.textboxremove();
|
graphics.textboxremove();
|
||||||
map.resetplayer();
|
map.resetplayer(true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -802,6 +802,11 @@ void mapclass::showship()
|
||||||
}
|
}
|
||||||
|
|
||||||
void mapclass::resetplayer()
|
void mapclass::resetplayer()
|
||||||
|
{
|
||||||
|
resetplayer(false);
|
||||||
|
}
|
||||||
|
|
||||||
|
void mapclass::resetplayer(const bool player_died)
|
||||||
{
|
{
|
||||||
bool was_in_tower = towermode;
|
bool was_in_tower = towermode;
|
||||||
if (game.roomx != game.saverx || game.roomy != game.savery)
|
if (game.roomx != game.saverx || game.roomy != game.savery)
|
||||||
|
@ -821,8 +826,15 @@ void mapclass::resetplayer()
|
||||||
obj.entities[i].yp = game.savey;
|
obj.entities[i].yp = game.savey;
|
||||||
obj.entities[i].dir = game.savedir;
|
obj.entities[i].dir = game.savedir;
|
||||||
obj.entities[i].colour = 0;
|
obj.entities[i].colour = 0;
|
||||||
game.lifeseq = 10;
|
if (player_died)
|
||||||
obj.entities[i].invis = true;
|
{
|
||||||
|
game.lifeseq = 10;
|
||||||
|
obj.entities[i].invis = true;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
obj.entities[i].invis = false;
|
||||||
|
}
|
||||||
if (!game.glitchrunnermode)
|
if (!game.glitchrunnermode)
|
||||||
{
|
{
|
||||||
obj.entities[i].size = 0;
|
obj.entities[i].size = 0;
|
||||||
|
|
|
@ -69,6 +69,7 @@ public:
|
||||||
|
|
||||||
void showship();
|
void showship();
|
||||||
|
|
||||||
|
void resetplayer(const bool player_died);
|
||||||
void resetplayer();
|
void resetplayer();
|
||||||
|
|
||||||
void warpto(int rx, int ry , int t, int tx, int ty);
|
void warpto(int rx, int ry , int t, int tx, int ty);
|
||||||
|
|
|
@ -33,11 +33,18 @@ musicclass::musicclass()
|
||||||
|
|
||||||
void musicclass::init()
|
void musicclass::init()
|
||||||
{
|
{
|
||||||
for (size_t i = 0; i < soundTracks.size(); ++i) {
|
for (size_t i = 0; i < soundTracks.size(); ++i)
|
||||||
|
{
|
||||||
Mix_FreeChunk(soundTracks[i].sound);
|
Mix_FreeChunk(soundTracks[i].sound);
|
||||||
}
|
}
|
||||||
soundTracks.clear();
|
soundTracks.clear();
|
||||||
for (size_t i = 0; i < musicTracks.size(); ++i) {
|
|
||||||
|
// Before we free all the music: stop playing music, else SDL2_mixer
|
||||||
|
// will call SDL_Delay() if we are fading, resulting in no-draw frames
|
||||||
|
Mix_HaltMusic();
|
||||||
|
|
||||||
|
for (size_t i = 0; i < musicTracks.size(); ++i)
|
||||||
|
{
|
||||||
Mix_FreeMusic(musicTracks[i].m_music);
|
Mix_FreeMusic(musicTracks[i].m_music);
|
||||||
}
|
}
|
||||||
musicTracks.clear();
|
musicTracks.clear();
|
||||||
|
|
|
@ -2675,7 +2675,6 @@ void scriptclass::startgamemode( int t )
|
||||||
{
|
{
|
||||||
map.resetplayer();
|
map.resetplayer();
|
||||||
}
|
}
|
||||||
game.lifeseq = 0;
|
|
||||||
map.gotoroom(game.saverx, game.savery);
|
map.gotoroom(game.saverx, game.savery);
|
||||||
map.initmapdata();
|
map.initmapdata();
|
||||||
|
|
||||||
|
@ -2701,7 +2700,6 @@ void scriptclass::startgamemode( int t )
|
||||||
{
|
{
|
||||||
map.resetplayer();
|
map.resetplayer();
|
||||||
}
|
}
|
||||||
game.lifeseq = 0;
|
|
||||||
map.gotoroom(game.saverx, game.savery);
|
map.gotoroom(game.saverx, game.savery);
|
||||||
map.initmapdata();
|
map.initmapdata();
|
||||||
graphics.fademode = 4;
|
graphics.fademode = 4;
|
||||||
|
@ -2742,7 +2740,6 @@ void scriptclass::startgamemode( int t )
|
||||||
map.cameramode = 0;
|
map.cameramode = 0;
|
||||||
map.colsuperstate = 0;
|
map.colsuperstate = 0;
|
||||||
}
|
}
|
||||||
game.lifeseq = 0;
|
|
||||||
graphics.fademode = 4;
|
graphics.fademode = 4;
|
||||||
break;
|
break;
|
||||||
case 3:
|
case 3:
|
||||||
|
@ -2770,7 +2767,6 @@ void scriptclass::startgamemode( int t )
|
||||||
{
|
{
|
||||||
map.resetplayer();
|
map.resetplayer();
|
||||||
}
|
}
|
||||||
game.lifeseq = 0;
|
|
||||||
map.gotoroom(game.saverx, game.savery);
|
map.gotoroom(game.saverx, game.savery);
|
||||||
map.initmapdata();
|
map.initmapdata();
|
||||||
graphics.fademode = 4;
|
graphics.fademode = 4;
|
||||||
|
@ -2800,7 +2796,6 @@ void scriptclass::startgamemode( int t )
|
||||||
{
|
{
|
||||||
map.resetplayer();
|
map.resetplayer();
|
||||||
}
|
}
|
||||||
game.lifeseq = 0;
|
|
||||||
map.gotoroom(game.saverx, game.savery);
|
map.gotoroom(game.saverx, game.savery);
|
||||||
map.initmapdata();
|
map.initmapdata();
|
||||||
graphics.fademode = 4;
|
graphics.fademode = 4;
|
||||||
|
@ -2830,7 +2825,6 @@ void scriptclass::startgamemode( int t )
|
||||||
{
|
{
|
||||||
map.resetplayer();
|
map.resetplayer();
|
||||||
}
|
}
|
||||||
game.lifeseq = 0;
|
|
||||||
map.gotoroom(game.saverx, game.savery);
|
map.gotoroom(game.saverx, game.savery);
|
||||||
map.initmapdata();
|
map.initmapdata();
|
||||||
graphics.fademode = 4;
|
graphics.fademode = 4;
|
||||||
|
@ -2860,7 +2854,6 @@ void scriptclass::startgamemode( int t )
|
||||||
{
|
{
|
||||||
map.resetplayer();
|
map.resetplayer();
|
||||||
}
|
}
|
||||||
game.lifeseq = 0;
|
|
||||||
map.gotoroom(game.saverx, game.savery);
|
map.gotoroom(game.saverx, game.savery);
|
||||||
map.initmapdata();
|
map.initmapdata();
|
||||||
graphics.fademode = 4;
|
graphics.fademode = 4;
|
||||||
|
@ -2890,7 +2883,6 @@ void scriptclass::startgamemode( int t )
|
||||||
{
|
{
|
||||||
map.resetplayer();
|
map.resetplayer();
|
||||||
}
|
}
|
||||||
game.lifeseq = 0;
|
|
||||||
map.gotoroom(game.saverx, game.savery);
|
map.gotoroom(game.saverx, game.savery);
|
||||||
map.initmapdata();
|
map.initmapdata();
|
||||||
graphics.fademode = 4;
|
graphics.fademode = 4;
|
||||||
|
@ -2926,7 +2918,6 @@ void scriptclass::startgamemode( int t )
|
||||||
{
|
{
|
||||||
map.resetplayer();
|
map.resetplayer();
|
||||||
}
|
}
|
||||||
game.lifeseq = 0;
|
|
||||||
map.gotoroom(game.saverx, game.savery);
|
map.gotoroom(game.saverx, game.savery);
|
||||||
map.initmapdata();
|
map.initmapdata();
|
||||||
graphics.fademode = 4;
|
graphics.fademode = 4;
|
||||||
|
@ -2952,7 +2943,6 @@ void scriptclass::startgamemode( int t )
|
||||||
{
|
{
|
||||||
map.resetplayer();
|
map.resetplayer();
|
||||||
}
|
}
|
||||||
game.lifeseq = 0;
|
|
||||||
map.gotoroom(game.saverx, game.savery);
|
map.gotoroom(game.saverx, game.savery);
|
||||||
map.initmapdata();
|
map.initmapdata();
|
||||||
|
|
||||||
|
@ -2982,7 +2972,6 @@ void scriptclass::startgamemode( int t )
|
||||||
{
|
{
|
||||||
map.resetplayer();
|
map.resetplayer();
|
||||||
}
|
}
|
||||||
game.lifeseq = 0;
|
|
||||||
map.gotoroom(game.saverx, game.savery);
|
map.gotoroom(game.saverx, game.savery);
|
||||||
map.initmapdata();
|
map.initmapdata();
|
||||||
|
|
||||||
|
@ -3019,7 +3008,6 @@ void scriptclass::startgamemode( int t )
|
||||||
{
|
{
|
||||||
map.resetplayer();
|
map.resetplayer();
|
||||||
}
|
}
|
||||||
game.lifeseq = 0;
|
|
||||||
map.gotoroom(game.saverx, game.savery);
|
map.gotoroom(game.saverx, game.savery);
|
||||||
map.initmapdata();
|
map.initmapdata();
|
||||||
music.play(11);
|
music.play(11);
|
||||||
|
@ -3056,7 +3044,6 @@ void scriptclass::startgamemode( int t )
|
||||||
{
|
{
|
||||||
map.resetplayer();
|
map.resetplayer();
|
||||||
}
|
}
|
||||||
game.lifeseq = 0;
|
|
||||||
map.gotoroom(game.saverx, game.savery);
|
map.gotoroom(game.saverx, game.savery);
|
||||||
map.initmapdata();
|
map.initmapdata();
|
||||||
|
|
||||||
|
@ -3093,7 +3080,6 @@ void scriptclass::startgamemode( int t )
|
||||||
{
|
{
|
||||||
map.resetplayer();
|
map.resetplayer();
|
||||||
}
|
}
|
||||||
game.lifeseq = 0;
|
|
||||||
map.gotoroom(game.saverx, game.savery);
|
map.gotoroom(game.saverx, game.savery);
|
||||||
map.initmapdata();
|
map.initmapdata();
|
||||||
|
|
||||||
|
@ -3130,7 +3116,6 @@ void scriptclass::startgamemode( int t )
|
||||||
{
|
{
|
||||||
map.resetplayer();
|
map.resetplayer();
|
||||||
}
|
}
|
||||||
game.lifeseq = 0;
|
|
||||||
map.gotoroom(game.saverx, game.savery);
|
map.gotoroom(game.saverx, game.savery);
|
||||||
map.initmapdata();
|
map.initmapdata();
|
||||||
|
|
||||||
|
@ -3167,7 +3152,6 @@ void scriptclass::startgamemode( int t )
|
||||||
{
|
{
|
||||||
map.resetplayer();
|
map.resetplayer();
|
||||||
}
|
}
|
||||||
game.lifeseq = 0;
|
|
||||||
map.gotoroom(game.saverx, game.savery);
|
map.gotoroom(game.saverx, game.savery);
|
||||||
map.initmapdata();
|
map.initmapdata();
|
||||||
|
|
||||||
|
@ -3201,7 +3185,6 @@ void scriptclass::startgamemode( int t )
|
||||||
{
|
{
|
||||||
map.resetplayer();
|
map.resetplayer();
|
||||||
}
|
}
|
||||||
game.lifeseq = 0;
|
|
||||||
map.gotoroom(game.saverx, game.savery);
|
map.gotoroom(game.saverx, game.savery);
|
||||||
map.initmapdata();
|
map.initmapdata();
|
||||||
|
|
||||||
|
@ -3235,7 +3218,6 @@ void scriptclass::startgamemode( int t )
|
||||||
{
|
{
|
||||||
map.resetplayer();
|
map.resetplayer();
|
||||||
}
|
}
|
||||||
game.lifeseq = 0;
|
|
||||||
map.gotoroom(game.saverx, game.savery);
|
map.gotoroom(game.saverx, game.savery);
|
||||||
map.initmapdata();
|
map.initmapdata();
|
||||||
|
|
||||||
|
@ -3269,7 +3251,6 @@ void scriptclass::startgamemode( int t )
|
||||||
{
|
{
|
||||||
map.resetplayer();
|
map.resetplayer();
|
||||||
}
|
}
|
||||||
game.lifeseq = 0;
|
|
||||||
map.gotoroom(game.saverx, game.savery);
|
map.gotoroom(game.saverx, game.savery);
|
||||||
map.initmapdata();
|
map.initmapdata();
|
||||||
|
|
||||||
|
@ -3303,7 +3284,6 @@ void scriptclass::startgamemode( int t )
|
||||||
{
|
{
|
||||||
map.resetplayer();
|
map.resetplayer();
|
||||||
}
|
}
|
||||||
game.lifeseq = 0;
|
|
||||||
map.gotoroom(game.saverx, game.savery);
|
map.gotoroom(game.saverx, game.savery);
|
||||||
map.initmapdata();
|
map.initmapdata();
|
||||||
|
|
||||||
|
@ -3328,7 +3308,6 @@ void scriptclass::startgamemode( int t )
|
||||||
{
|
{
|
||||||
map.resetplayer();
|
map.resetplayer();
|
||||||
}
|
}
|
||||||
game.lifeseq = 0;
|
|
||||||
map.gotoroom(game.saverx, game.savery);
|
map.gotoroom(game.saverx, game.savery);
|
||||||
map.initmapdata();
|
map.initmapdata();
|
||||||
graphics.fademode = 4;
|
graphics.fademode = 4;
|
||||||
|
@ -3365,7 +3344,6 @@ void scriptclass::startgamemode( int t )
|
||||||
{
|
{
|
||||||
map.resetplayer();
|
map.resetplayer();
|
||||||
}
|
}
|
||||||
game.lifeseq = 0;
|
|
||||||
map.gotoroom(game.saverx, game.savery);
|
map.gotoroom(game.saverx, game.savery);
|
||||||
map.initmapdata();
|
map.initmapdata();
|
||||||
if(ed.levmusic>0){
|
if(ed.levmusic>0){
|
||||||
|
@ -3404,7 +3382,6 @@ void scriptclass::startgamemode( int t )
|
||||||
{
|
{
|
||||||
map.resetplayer();
|
map.resetplayer();
|
||||||
}
|
}
|
||||||
game.lifeseq = 0;
|
|
||||||
map.gotoroom(game.saverx, game.savery);
|
map.gotoroom(game.saverx, game.savery);
|
||||||
map.initmapdata();
|
map.initmapdata();
|
||||||
|
|
||||||
|
@ -3451,7 +3428,6 @@ void scriptclass::startgamemode( int t )
|
||||||
{
|
{
|
||||||
map.resetplayer();
|
map.resetplayer();
|
||||||
}
|
}
|
||||||
game.lifeseq = 0;
|
|
||||||
map.gotoroom(game.saverx, game.savery);
|
map.gotoroom(game.saverx, game.savery);
|
||||||
map.initmapdata();
|
map.initmapdata();
|
||||||
ed.generatecustomminimap();
|
ed.generatecustomminimap();
|
||||||
|
|
Loading…
Reference in New Issue