summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorPiotr Dziwinski <piotrdz@gmail.com>2012-09-15 22:19:32 +0200
committerPiotr Dziwinski <piotrdz@gmail.com>2012-09-15 22:19:32 +0200
commitaf9af56bb007050c969af310c4e816d260b9ce7f (patch)
treef630dbaffcae46fec4e83740e79d2bf3eef9cbc6 /src
parent2847aad51fb8165d3ad6fab3ddb1f0275a6f0815 (diff)
downloadcolobot-af9af56bb007050c969af310c4e816d260b9ce7f.tar.gz
colobot-af9af56bb007050c969af310c4e816d260b9ce7f.tar.bz2
colobot-af9af56bb007050c969af310c4e816d260b9ce7f.zip
Successful compilation & running
- temporarily mocked CSoundInterface and CPluginInterface - added CRobotMain to application - successfully compiles & runs, but doesn't display correctly at the moment
Diffstat (limited to 'src')
-rw-r--r--src/CMakeLists.txt2
-rw-r--r--src/app/app.cpp21
-rw-r--r--src/app/app.h4
-rw-r--r--src/common/restext.h2
-rw-r--r--src/plugins/plugininterface.h8
-rw-r--r--src/sound/sound.h60
6 files changed, 49 insertions, 48 deletions
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 2f1b954..981423f 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -174,7 +174,7 @@ ui/map.cpp
ui/scroll.cpp
ui/shortcut.cpp
ui/slider.cpp
-# ui/studio.cpp
+ui/studio.cpp
ui/target.cpp
ui/window.cpp
)
diff --git a/src/app/app.cpp b/src/app/app.cpp
index 6e336a2..ab3c33c 100644
--- a/src/app/app.cpp
+++ b/src/app/app.cpp
@@ -24,6 +24,7 @@
#include "common/iman.h"
#include "common/image.h"
#include "graphics/opengl/gldevice.h"
+#include "object/robotmain.h"
#include <SDL/SDL.h>
@@ -290,11 +291,8 @@ bool CApplication::Create()
// Temporarily -- only in windowed mode
m_deviceConfig.fullScreen = false;
-/* // Create the sound instance.
- m_sound = new CSound(m_iMan);
-
- // Create the robot application.
- m_robotMain = new CRobotMain(m_iMan); */
+ // Create the sound instance.
+ m_sound = new CSoundInterface();
std::string standardInfoMessage =
@@ -370,6 +368,9 @@ bool CApplication::Create()
return false;
}
+ // Create the robot application.
+ m_robotMain = new CRobotMain(m_iMan, this);
+
GetLogger()->Info("CApplication created successfully\n");
return true;
@@ -430,7 +431,7 @@ bool CApplication::CreateVideoSurface()
void CApplication::Destroy()
{
- /*if (m_robotMain != nullptr)
+ if (m_robotMain != nullptr)
{
delete m_robotMain;
m_robotMain = nullptr;
@@ -440,7 +441,7 @@ void CApplication::Destroy()
{
delete m_sound;
m_sound = nullptr;
- }*/
+ }
if (m_engine != nullptr)
{
@@ -719,8 +720,8 @@ int CApplication::Run()
passOn = m_engine->ProcessEvent(event);
}
- /*if (passOn && m_robotMain != nullptr)
- m_robotMain->ProcessEvent(event); */
+ if (passOn && m_robotMain != nullptr)
+ m_robotMain->EventProcess(event);
}
/* Update mouse position explicitly right before rendering
@@ -1035,7 +1036,7 @@ void CApplication::StepSimulation()
m_engine->FrameUpdate();
- //m_sound->FrameMove(m_relTime);
+ m_sound->FrameMove(m_relTime);
Event frameEvent(EVENT_FRAME);
diff --git a/src/app/app.h b/src/app/app.h
index 4d567e0..1834a67 100644
--- a/src/app/app.h
+++ b/src/app/app.h
@@ -35,7 +35,7 @@
class CInstanceManager;
class CEvent;
class CRobotMain;
-class CSound;
+class CSoundInterface;
/**
* \struct JoystickDevice
@@ -366,7 +366,7 @@ protected:
//! Graphics device
Gfx::CDevice* m_device;
//! Sound subsystem
- CSound* m_sound;
+ CSoundInterface* m_sound;
//! Main class of the proper game engine
CRobotMain* m_robotMain;
diff --git a/src/common/restext.h b/src/common/restext.h
index b47e03c..4b565ba 100644
--- a/src/common/restext.h
+++ b/src/common/restext.h
@@ -43,7 +43,7 @@ enum ResType
// TODO: move to CRobotMain
extern void SetGlobalGamerName(char *name);
-extern bool SearchKey(char *cmd, KeyRank &key);
+extern bool SearchKey(const char *cmd, KeyRank &key);
extern bool GetResource(ResType type, int num, char* text);
extern const char * const strings_text[];
diff --git a/src/plugins/plugininterface.h b/src/plugins/plugininterface.h
index b8adddc..87c355d 100644
--- a/src/plugins/plugininterface.h
+++ b/src/plugins/plugininterface.h
@@ -47,19 +47,19 @@ class CPluginInterface {
/** Function to get plugin name or description
* @return returns plugin name
*/
- virtual std::string PluginName() = 0;
+ inline std::string PluginName() { return "abc"; };
/** Function to get plugin version. 1 means version 0.01, 2 means 0.02 etc.
* @return number indicating plugin version
*/
- virtual int PluginVersion() = 0;
+ inline int PluginVersion() { return 0; };
/** Function to initialize plugin
*/
- virtual void InstallPlugin() = 0;
+ inline void InstallPlugin() {};
/** Function called before removing plugin
*/
- virtual bool UninstallPlugin(std::string &) = 0;
+ inline bool UninstallPlugin(std::string &) { return true; };
};
diff --git a/src/sound/sound.h b/src/sound/sound.h
index 566efd5..883c659 100644
--- a/src/sound/sound.h
+++ b/src/sound/sound.h
@@ -44,7 +44,7 @@
**/
enum Sound
{
- SOUND_CLICK = 0,
+ SOUND_CLICK = 0,
SOUND_BOUM = 1,
SOUND_EXPLO = 2,
SOUND_FLYh = 3, /*!< human */
@@ -151,21 +151,21 @@ enum SoundNext
class CSoundInterface : public CPluginInterface
{
public:
- CSoundInterface() {
+ inline CSoundInterface() {
//CInstanceManager::getInstance().AddInstance(CLASS_SOUND, this);
//m_iMan->AddInstance(CLASS_SOUND, this);
};
- virtual ~CSoundInterface() = 0;
+ inline ~CSoundInterface() {};
/** Function to initialize sound device
* @param bool b3D - enable support for 3D sound
*/
- virtual bool Create(bool b3D) = 0;
+ inline bool Create(bool b3D) { return true; };
/** Function called to cache all sound effect files.
* Function calls \link CSoundInterface::Cache() \endlink for each file
*/
- virtual void CacheAll() = 0;
+ inline void CacheAll() {};
/** Function called to cache sound effect file.
* This function is called by plugin interface for each file.
@@ -173,58 +173,58 @@ class CSoundInterface : public CPluginInterface
* @param std::string bFile - file to load
* @return return true on success
*/
- virtual bool Cache(Sound bSound, std::string bFile) = 0;
+ inline bool Cache(Sound bSound, std::string bFile) { return true; };
/** Geturn if plugin is enabled
* @return return true if plugin is enabled
*/
- virtual bool GetEnable() = 0;
+ inline bool GetEnable() {return true;};
/** Change sound mode to 2D/3D
* @param bool bMode - true to enable 3D sound
*/
- virtual void SetSound3D(bool bMode) = 0;
+ inline void SetSound3D(bool bMode) {};
/** Geturn if we use 3D sound
* @return true if we have 3D sound enabled
*/
- virtual bool GetSound3D() = 0;
+ inline bool GetSound3D() {return true;};
/** Geturn if we have 3D sound capable card
* @return true for 3D sound support
*/
- virtual bool GetSound3DCap() = 0;
+ inline bool GetSound3DCap() {return true;};
/** Change global sound volume
* @param int volume - range from 0 to MAXVOLUME
*/
- virtual void SetAudioVolume(int volume) = 0;
+ inline void SetAudioVolume(int volume) {};
/** Geturn global sound volume
* @return global volume as int in range from 0 to MAXVOLUME
*/
- virtual int GetAudioVolume() = 0;
+ inline int GetAudioVolume() {return 0;};
/** Set music volume
* @param int volume - range from 0 to MAXVOLUME
*/
- virtual void SetMusicVolume(int volume) = 0;
+ inline void SetMusicVolume(int volume) {};
/** Geturn music volume
* @return music volume as int in range from 0 to MAXVOLUME
*/
- virtual int GetMusicVolume() = 0;
+ inline int GetMusicVolume() {return 0;};
/** Set listener position
* @param Math::Vector eye - position of listener
* @param Math::Vector lookat - direction listener is looking at
*/
- virtual void SetListener(Math::Vector eye, Math::Vector lookat) = 0;
+ inline void SetListener(Math::Vector eye, Math::Vector lookat) {};
/** Update data each frame
* @param float rTime - time since last update
*/
- virtual void FrameMove(float rTime) = 0;
+ inline void FrameMove(float rTime) {};
/** Play specific sound
* @param Sound sound - sound to play
@@ -233,7 +233,7 @@ class CSoundInterface : public CPluginInterface
* @param bool bLoop - loop sound
* @return identifier of channel that sound will be played on
*/
- virtual int Play(Sound sound, float amplitude=1.0f, float frequency=1.0f, bool bLoop = false) = 0;
+ inline int Play(Sound sound, float amplitude=1.0f, float frequency=1.0f, bool bLoop = false) {return 0;};
/** Play specific sound
* @param Sound sound - sound to play
@@ -243,13 +243,13 @@ class CSoundInterface : public CPluginInterface
* @param bool bLoop - loop sound
* @return identifier of channel that sound will be played on
*/
- virtual int Play(Sound sound, Math::Vector pos, float amplitude=1.0f, float frequency=1.0f, bool bLoop = false) = 0;
+ inline int Play(Sound sound, Math::Vector pos, float amplitude=1.0f, float frequency=1.0f, bool bLoop = false) {return 0;};
/** Remove all operations that would be made on sound in channel.
* @param int channel - channel to work on
* @return return true on success
*/
- virtual bool FlushEnvelope(int channel) = 0;
+ inline bool FlushEnvelope(int channel) {return true;};
/** Add envelope to sound. Envelope is a operatino that will be performend on sound in future like changing frequency
* @param int channel - channel to work on
@@ -259,64 +259,64 @@ class CSoundInterface : public CPluginInterface
* @param SoundNext oper - operation to perform
* @return return true on success
*/
- virtual bool AddEnvelope(int channel, float amplitude, float frequency, float time, SoundNext oper) = 0;
+ inline bool AddEnvelope(int channel, float amplitude, float frequency, float time, SoundNext oper) {return true;};
/** Set sound position in space
* @param int channel - channel to work on
* @param Math::Vector pos - new positino of a sound
* @return return true on success
*/
- virtual bool Position(int channel, Math::Vector pos) = 0;
+ inline bool Position(int channel, Math::Vector pos) {return true;};
/** Set sound frequency
* @param int channel - channel to work on
* @param float frequency - change sound frequency
* @return return true on success
*/
- virtual bool Frequency(int channel, float frequency) = 0;
+ inline bool Frequency(int channel, float frequency) {return true;};
/** Stop playing sound
* @param int channel - channel to work on
* @return return true on success
*/
- virtual bool Stop(int channel) = 0;
+ inline bool Stop(int channel) {return true;};
/** Stop playing all sounds
* @return return true on success
*/
- virtual bool StopAll() = 0;
+ inline bool StopAll() {return true;};
/** Mute/unmute all sounds
* @param bool bMute
* @return return true on success
*/
- virtual bool MuteAll(bool bMute) = 0;
+ inline bool MuteAll(bool bMute) {return true;};
/** Start playing music
* @param int rank - track number
* @param bool bRepeat - repeat playing
* @return return true on success
*/
- virtual bool PlayMusic(int rank, bool bRepeat) = 0;
+ inline bool PlayMusic(int rank, bool bRepeat) {return true;};
/** Restart music
* @return return true on success
*/
- virtual bool RestartMusic() = 0;
+ inline bool RestartMusic() {return true;};
/** Susspend paying music
* @return return true on success
*/
- virtual void SuspendMusic() = 0;
+ inline void SuspendMusic() {};
/** Stop playing music
* @return return true on success
*/
- virtual void StopMusic() = 0;
+ inline void StopMusic() {};
/** Check if music if playing
* @return return true if music is playing
*/
- virtual bool IsPlayingMusic() = 0;
+ inline bool IsPlayingMusic() {return true;};
};