Simplified vo_ngan_90's patch.

git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@9752 178a84e3-b1eb-0310-8ba1-8eac791a3b58
This commit is contained in:
hikerstk 2011-09-05 04:14:50 +00:00
parent 4606f1b192
commit c7c9f8150a
6 changed files with 4 additions and 118 deletions

View File

@ -241,8 +241,6 @@ supertuxkart_SOURCES = \
modes/world.hpp \
modes/world_status.cpp \
modes/world_status.hpp \
modes/world_timer.cpp \
modes/world_timer.hpp \
modes/world_with_rank.cpp \
modes/world_with_rank.hpp \
network/character_confirm_message.hpp \

View File

@ -340,7 +340,6 @@
95AAD98012BAD36300B7B8A3 /* tutorial_screen.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 95AAD97E12BAD36300B7B8A3 /* tutorial_screen.cpp */; };
95B5CD14102DE08F00EF2001 /* device_config.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 95B5CD13102DE08F00EF2001 /* device_config.cpp */; };
95BF1E68127513A100F78AE7 /* max_speed.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 95BF1E66127513A100F78AE7 /* max_speed.cpp */; };
95C6BB931414413B00990FF9 /* world_timer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 95C6BB911414413B00990FF9 /* world_timer.cpp */; };
95C77D631069589B0080838E /* ambient_light_sphere.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 95C77D621069589B0080838E /* ambient_light_sphere.cpp */; };
95C77D66106958A50080838E /* check_line.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 95C77D65106958A50080838E /* check_line.cpp */; };
95C77D6F106958E10080838E /* check_sphere.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 95C77D6D106958E10080838E /* check_sphere.cpp */; };
@ -1278,8 +1277,6 @@
95C2B1E90F296546000D3E5D /* vec3.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = vec3.hpp; path = ../../utils/vec3.hpp; sourceTree = SOURCE_ROOT; };
95C65D760F532F7D00BE7BA7 /* xml_node.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = xml_node.cpp; path = ../../io/xml_node.cpp; sourceTree = SOURCE_ROOT; };
95C65D770F532F7D00BE7BA7 /* xml_node.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = xml_node.hpp; path = ../../io/xml_node.hpp; sourceTree = SOURCE_ROOT; };
95C6BB911414413B00990FF9 /* world_timer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = world_timer.cpp; path = ../../modes/world_timer.cpp; sourceTree = SOURCE_ROOT; };
95C6BB921414413B00990FF9 /* world_timer.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = world_timer.hpp; path = ../../modes/world_timer.hpp; sourceTree = SOURCE_ROOT; };
95C77D611069589B0080838E /* ambient_light_sphere.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = ambient_light_sphere.hpp; path = ../../tracks/ambient_light_sphere.hpp; sourceTree = SOURCE_ROOT; };
95C77D621069589B0080838E /* ambient_light_sphere.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = ambient_light_sphere.cpp; path = ../../tracks/ambient_light_sphere.cpp; sourceTree = SOURCE_ROOT; };
95C77D64106958A50080838E /* check_line.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = check_line.hpp; path = ../../tracks/check_line.hpp; sourceTree = SOURCE_ROOT; };
@ -2514,8 +2511,6 @@
95C2B1510F296545000D3E5D /* three_strikes_battle.hpp */,
9574F17A11206881008D202E /* world_status.cpp */,
9574F17B11206881008D202E /* world_status.hpp */,
95C6BB911414413B00990FF9 /* world_timer.cpp */,
95C6BB921414413B00990FF9 /* world_timer.hpp */,
9552C1F91231249000347B6C /* world_with_rank.cpp */,
9552C1FA1231249000347B6C /* world_with_rank.hpp */,
95C2B1520F296545000D3E5D /* world.cpp */,
@ -3159,7 +3154,6 @@
95A0BA2413E63F6700620EA6 /* kart_with_stats.cpp in Sources */,
958806E913EB675F005F90FE /* track_sector.cpp in Sources */,
957A2D291405E21D00F45B22 /* hit_sfx.cpp in Sources */,
95C6BB931414413B00990FF9 /* world_timer.cpp in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};

View File

@ -26,7 +26,6 @@
#include "tracks/track.hpp"
#include "network/network_manager.hpp"
#include "states_screens/dialogs/race_over_dialog.hpp"
#include "world_timer.hpp"
//-----------------------------------------------------------------------------
WorldStatus::WorldStatus()
@ -41,8 +40,6 @@ WorldStatus::WorldStatus()
m_start_sound = sfx_manager->createSoundSource("start_race");
m_track_intro_sound = sfx_manager->createSoundSource("track_intro");
m_world_timer = new WorldTimer();
music_manager->stopMusic();
} // WorldStatus
@ -69,8 +66,6 @@ WorldStatus::~WorldStatus()
sfx_manager->deleteSFX(m_prestart_sound);
sfx_manager->deleteSFX(m_start_sound);
sfx_manager->deleteSFX(m_track_intro_sound);
delete m_world_timer;
} // ~WorldStatus
//-----------------------------------------------------------------------------
@ -278,7 +273,8 @@ void WorldStatus::pause(Phase phase)
m_previous_phase = m_phase;
m_phase = phase;
m_world_timer->freezeTimer();
IrrlichtDevice *device = irr_driver->getDevice();
device->getTimer()->stop();
} // pause
//-----------------------------------------------------------------------------
@ -290,6 +286,6 @@ void WorldStatus::unpause()
// Set m_previous_phase so that we can use an assert
// in pause to detect incorrect pause/unpause sequences.
m_previous_phase = UNDEFINED_PHASE;
m_world_timer->unfreezeTimer();
IrrlichtDevice *device = irr_driver->getDevice();
device->getTimer()->start();
} // unpause

View File

@ -19,7 +19,6 @@
#define HEADER_WORLD_STATUS_HPP
class SFXBase;
class WorldTimer;
/**
* \brief A class that manages the clock (countdown, chrono, etc.)
@ -106,11 +105,6 @@ protected:
*/
float m_auxiliary_timer;
/**
* Freeze-Unfreeze timer of the game
*/
WorldTimer *m_world_timer;
public:
WorldStatus();
virtual ~WorldStatus();

View File

@ -1,54 +0,0 @@
// SuperTuxKart - a fun racing game with go-kart
// Copyright (C) 2004 SuperTuxKart-Team
//
// This program is free software; you can redistribute it and/or
// modify it under the terms of the GNU General Public License
// as published by the Free Software Foundation; either version 3
// of the License, or (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#include "world_timer.hpp"
/** Constructs the world timer.*/
WorldTimer::WorldTimer()
{
IrrlichtDevice* device = irr_driver->getDevice();
m_freeze = device->getTimer()->isStopped();
} //WorldTimer
/** Destructor the world timer.*/
WorldTimer::~WorldTimer()
{
//unfreeze timer before left
unfreezeTimer();
} //~WorldTimer
/** Stop timer of the game*/
void WorldTimer::freezeTimer()
{
if (!m_freeze)
{
IrrlichtDevice* device = irr_driver->getDevice();
device->getTimer()->stop();
m_freeze = device->getTimer()->isStopped();
}
} //freezeTimer
/** Restart timer of the game*/
void WorldTimer::unfreezeTimer()
{
if (m_freeze)
{
IrrlichtDevice* device = irr_driver->getDevice();
device->getTimer()->start();
m_freeze = device->getTimer()->isStopped();
}
} //unfreezeTimer

View File

@ -1,42 +0,0 @@
// SuperTuxKart - a fun racing game with go-kart
// Copyright (C) 2004 SuperTuxKart-Team
//
// This program is free software; you can redistribute it and/or
// modify it under the terms of the GNU General Public License
// as published by the Free Software Foundation; either version 3
// of the License, or (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#ifndef HEADER_WORLD_TIMER_HPP
#define HEADER_WORLD_TIMER_HPP
#include "graphics/irr_driver.hpp"
/**
* When pause the game, something must be 'freeze' such as particle (nitro, terrain smoke...) and terrain animation(water...).
* WorldTimer will stop the timer of the game when gamer pause game, so that all thing bellow will not animate,
* when gamer resume, this class will start the timer, too.
*/
class WorldTimer
{
private:
bool m_freeze;
public:
WorldTimer();
~WorldTimer();
/** Stop timer of the game*/
void freezeTimer();
/** Restart timer of the game*/
void unfreezeTimer();
};
#endif