Changeset 5693
- Timestamp:
- Aug 29, 2009, 10:19:38 PM (15 years ago)
- Location:
- code/trunk
- Files:
-
- 6 deleted
- 132 edited
- 35 copied
Legend:
- Unmodified
- Added
- Removed
-
code/trunk
- Property svn:mergeinfo changed
/code/branches/libraries (added) merged: 5612-5613,5615-5619,5621-5623,5625-5640,5642-5643,5647-5649,5665-5666,5685-5687,5692
- Property svn:mergeinfo changed
-
code/trunk/cmake/BuildConfig.cmake
r3330 r5693 31 31 SET(DEFAULT_LIBRARY_PATH lib) 32 32 SET(DEFAULT_ARCHIVE_PATH lib/static) 33 SET(DEFAULT_MODULE_PATH lib/modules) 33 34 SET(DEFAULT_DOC_PATH doc) 34 35 SET(DEFAULT_MEDIA_PATH media) … … 40 41 SET(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/${DEFAULT_LIBRARY_PATH}) 41 42 SET(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/${DEFAULT_ARCHIVE_PATH}) 43 SET(CMAKE_MODULE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/${DEFAULT_MODULE_PATH}) 42 44 # Do not set doc and media, rather check in the two subdirectories 43 45 # whether they concur with the DEFAULT_..._PATH … … 70 72 ENDIF() 71 73 74 # Set the extension of the dynamic modules 75 SET(ORXONOX_MODULE_EXTENSION ".module") 72 76 73 77 ################# OGRE Plugins ################## … … 132 136 SET(ORXONOX_LIBRARY_INSTALL_PATH ${DEFAULT_LIBRARY_PATH}) 133 137 SET(ORXONOX_ARCHIVE_INSTALL_PATH ${DEFAULT_ARCHIVE_PATH}) 138 SET(ORXONOX_MODULE_INSTALL_PATH ${DEFAULT_MODULE_PATH}) 134 139 SET(ORXONOX_DOC_INSTALL_PATH ${DEFAULT_DOC_PATH}) 135 140 SET(ORXONOX_MEDIA_INSTALL_PATH ${DEFAULT_MEDIA_PATH}) … … 142 147 SET(ORXONOX_LIBRARY_INSTALL_PATH ${CMAKE_INSTALL_PREFIX}/lib/orxonox) 143 148 SET(ORXONOX_ARCHIVE_INSTALL_PATH ${CMAKE_INSTALL_PREFIX}/lib/orxonox/static) 149 SET(ORXONOX_MODULE_INSTALL_PATH ${CMAKE_INSTALL_PREFIX}/lib/orxonox/modules) 144 150 SET(ORXONOX_DOC_INSTALL_PATH ${CMAKE_INSTALL_PREFIX}/share/doc/orxonox) 145 151 SET(ORXONOX_MEDIA_INSTALL_PATH ${CMAKE_INSTALL_PREFIX}/share/orxonox) … … 152 158 SET(ORXONOX_LIBRARY_INSTALL_PATH ${CMAKE_INSTALL_PREFIX}/${DEFAULT_LIBRARY_PATH}) 153 159 SET(ORXONOX_ARCHIVE_INSTALL_PATH ${CMAKE_INSTALL_PREFIX}/${DEFAULT_ARCHIVE_PATH}) 160 SET(ORXONOX_MODULE_INSTALL_PATH ${CMAKE_INSTALL_PREFIX}/${DEFAULT_MODULE_PATH}) 154 161 SET(ORXONOX_DOC_INSTALL_PATH ${CMAKE_INSTALL_PREFIX}/${DEFAULT_DOC_PATH}) 155 162 SET(ORXONOX_MEDIA_INSTALL_PATH ${CMAKE_INSTALL_PREFIX}/${DEFAULT_MEDIA_PATH}) … … 167 174 # when building, don't use the install RPATH already 168 175 # (but later on when installing) 169 SET(CMAKE_BUILD_WITH_INSTALL_RPATH FALSE) 176 SET(CMAKE_BUILD_WITH_INSTALL_RPATH FALSE) 170 177 171 178 # the RPATH to be used when installing -
code/trunk/cmake/TargetUtilities.cmake
r3371 r5693 24 24 # accepts a lot more input information. Simply supply the keywords 25 25 # described below in any order you wish. 26 # The output is then stored in "_arg_ARGNAME" where ARGNAME is the the 27 # name of the switch or list. 26 28 # 27 29 # Switches: (when given --> TRUE, FALSE otherwise) … … 33 35 # NO_SOURCE_GROUPS: Don't create msvc source groups 34 36 # STATIC/SHARED: Inherited from ADD_LIBRARY 37 # MODULE: For dynamic module libraries 35 38 # WIN32: Inherited from ADD_EXECUTABLE 36 39 # PCH_NO_DEFAULT: Do not make precompiled header files default if 37 40 # specified with PCH_FILE 41 # NO_INSTALL: Do not install the target at all 42 # 38 43 # Lists: 39 44 # LINK_LIBRARIES: Redirects to TARGET_LINK_LIBRARIES … … 44 49 # PCH_FILE: Precompiled header file 45 50 # PCH_EXCLUDE: Source files to be excluded from PCH support 51 # OUTPUT_NAME: If you want a different name than the target name 46 52 # Note: 47 53 # This function also installs the target! … … 75 81 SET(_switches FIND_HEADER_FILES EXCLUDE_FROM_ALL ORXONOX_EXTERNAL 76 82 NO_DLL_INTERFACE NO_SOURCE_GROUPS ${_additional_switches} 77 PCH_NO_DEFAULT NO_INSTALL)83 PCH_NO_DEFAULT NO_INSTALL MODULE) 78 84 SET(_list_names LINK_LIBRARIES VERSION SOURCE_FILES DEFINE_SYMBOL 79 TOLUA_FILES PCH_FILE PCH_EXCLUDE )85 TOLUA_FILES PCH_FILE PCH_EXCLUDE OUTPUT_NAME) 80 86 PARSE_MACRO_ARGUMENTS("${_switches}" "${_list_names}" ${ARGN}) 81 87 … … 142 148 ENDIF() 143 149 150 # MODULE A 151 # Always create shared libraries 152 IF(_arg_MODULE) 153 SET(_arg_SHARED SHARED) 154 SET(_arg_STATIC) 155 ENDIF() 156 144 157 # Add the library/executable 145 158 IF("${_target_type}" STREQUAL "LIBRARY") … … 151 164 ENDIF() 152 165 166 # MODULE B 167 IF (_arg_MODULE) 168 SET_TARGET_PROPERTIES(${_target_name} PROPERTIES 169 RUNTIME_OUTPUT_DIRECTORY ${CMAKE_MODULE_OUTPUT_DIRECTORY} # Windows 170 LIBRARY_OUTPUT_DIRECTORY ${CMAKE_MODULE_OUTPUT_DIRECTORY} # Unix 171 ) 172 ADD_MODULE(${_target_name}) 173 ENDIF() 174 153 175 # LINK_LIBRARIES 154 176 IF(_arg_LINK_LIBRARIES) … … 168 190 ENDIF() 169 191 192 # OUTPUT_NAME 193 IF(_arg_OUTPUT_NAME) 194 SET_TARGET_PROPERTIES(${_target_name} PROPERTIES OUTPUT_NAME ${_arg_OUTPUT_NAME}) 195 ENDIF() 196 170 197 # Second part of precompiled header files 171 198 IF(PCH_COMPILER_SUPPORT AND PCH_ENABLE_${_target_name_upper} AND _arg_PCH_FILE) … … 174 201 175 202 IF(NOT _arg_STATIC AND NOT _arg_NO_INSTALL) 176 INSTALL(TARGETS ${_target_name} 177 RUNTIME DESTINATION ${ORXONOX_RUNTIME_INSTALL_PATH} 178 LIBRARY DESTINATION ${ORXONOX_LIBRARY_INSTALL_PATH} 179 #ARCHIVE DESTINATION ${ORXONOX_ARCHIVE_INSTALL_PATH} 203 IF(_arg_MODULE) 204 INSTALL(TARGETS ${_target_name} 205 RUNTIME DESTINATION ${ORXONOX_MODULE_INSTALL_PATH} 206 LIBRARY DESTINATION ${ORXONOX_MODULE_INSTALL_PATH} 207 ) 208 ELSE() 209 INSTALL(TARGETS ${_target_name} 210 RUNTIME DESTINATION ${ORXONOX_RUNTIME_INSTALL_PATH} 211 LIBRARY DESTINATION ${ORXONOX_LIBRARY_INSTALL_PATH} 212 ) 213 ENDIF() 214 ENDIF() 215 216 ENDFUNCTION(TU_ADD_TARGET) 217 218 219 # Creates a helper file with name <name_of_the_library>.module 220 # This helps finding dynamically loadable modules at runtime 221 222 FUNCTION(ADD_MODULE _target) 223 # We use the properties to get the name because the librarys name may differ from 224 # the target name (for example orxonox <-> liborxonox) 225 226 GET_TARGET_PROPERTY(_target_loc ${_target} LOCATION) 227 GET_FILENAME_COMPONENT(_target_name ${_target_loc} NAME_WE) 228 229 IF(CMAKE_CONFIGURATION_TYPES) 230 FOREACH(_config ${CMAKE_CONFIGURATION_TYPES}) 231 SET(_module_filename ${CMAKE_MODULE_OUTPUT_DIRECTORY}/${_config}/${_target_name}${ORXONOX_MODULE_EXTENSION}) 232 233 FILE(WRITE ${_module_filename}) 234 235 INSTALL( 236 FILES ${_module_filename} 237 DESTINATION ${ORXONOX_MODULE_INSTALL_PATH} 238 CONFIGURATIONS ${_config} 239 ) 240 ENDFOREACH() 241 ELSE() 242 SET(_module_filename ${CMAKE_MODULE_OUTPUT_DIRECTORY}/${_target_name}${ORXONOX_MODULE_EXTENSION}) 243 244 FILE(WRITE ${_module_filename}) 245 246 INSTALL( 247 FILES ${_module_filename} 248 DESTINATION ${ORXONOX_MODULE_INSTALL_PATH} 180 249 ) 181 250 ENDIF() 182 183 ENDFUNCTION(TU_ADD_TARGET) 251 ENDFUNCTION(ADD_MODULE) -
code/trunk/src/SpecialConfig.h.in
r3370 r5693 74 74 // INSTALLATION PATHS 75 75 const char ORXONOX_RUNTIME_INSTALL_PATH[] = "@ORXONOX_RUNTIME_INSTALL_PATH@"; 76 const char ORXONOX_MODULE_INSTALL_PATH[] = "@ORXONOX_MODULE_INSTALL_PATH@"; 76 77 const char ORXONOX_MEDIA_INSTALL_PATH[] = "@ORXONOX_MEDIA_INSTALL_PATH@"; 77 78 /* Config and Log path might be relative because they could be user and therefore runtime dependent */ … … 82 83 const char ORXONOX_MEDIA_DEV_PATH[] = "@CMAKE_MEDIA_OUTPUT_DIRECTORY@"; 83 84 #ifdef CMAKE_CONFIGURATION_TYPES 85 const char ORXONOX_MODULE_DEV_PATH[] = "@CMAKE_MODULE_OUTPUT_DIRECTORY@/" BOOST_PP_STRINGIZE(CMAKE_BUILD_TYPE); 84 86 const char ORXONOX_CONFIG_DEV_PATH[] = "@CMAKE_CONFIG_OUTPUT_DIRECTORY@/" BOOST_PP_STRINGIZE(CMAKE_BUILD_TYPE); 85 87 const char ORXONOX_LOG_DEV_PATH[] = "@CMAKE_LOG_OUTPUT_DIRECTORY@/" BOOST_PP_STRINGIZE(CMAKE_BUILD_TYPE); 86 88 #else 89 const char ORXONOX_MODULE_DEV_PATH[] = "@CMAKE_MODULE_OUTPUT_DIRECTORY@"; 87 90 const char ORXONOX_CONFIG_DEV_PATH[] = "@CMAKE_CONFIG_OUTPUT_DIRECTORY@"; 88 91 const char ORXONOX_LOG_DEV_PATH[] = "@CMAKE_LOG_OUTPUT_DIRECTORY@"; … … 91 94 const char ORXONOX_DEP_LIB_PATH[] = "@DEP_LIBRARY_DIR@"; 92 95 #endif 96 97 // Module extension 98 const char ORXONOX_MODULE_EXTENSION[] = "@ORXONOX_MODULE_EXTENSION@"; 93 99 94 100 // OGRE PLUGINS -
code/trunk/src/core/CMakeLists.txt
r3370 r5693 23 23 ConfigValueContainer.cc 24 24 Core.cc 25 DynLib.cc 26 DynLibManager.cc 25 27 Event.cc 26 28 Game.cc -
code/trunk/src/core/Core.cc
r3370 r5693 40 40 #include <cstdlib> 41 41 #include <cstdio> 42 #include <boost/version.hpp> 42 43 #include <boost/filesystem.hpp> 43 44 #include <OgreRenderWindow.h> … … 68 69 #include "ConfigValueIncludes.h" 69 70 #include "CoreIncludes.h" 71 #include "DynLibManager.h" 70 72 #include "Factory.h" 71 73 #include "GameMode.h" … … 80 82 #include "input/InputManager.h" 81 83 84 // Boost 1.36 has some issues with deprecated functions that have been omitted 85 #if (BOOST_VERSION == 103600) 86 # define BOOST_LEAF_FUNCTION filename 87 #else 88 # define BOOST_LEAF_FUNCTION leaf 89 #endif 90 82 91 namespace orxonox 83 92 { … … 241 250 boost::filesystem::path rootPath_; 242 251 boost::filesystem::path executablePath_; //!< Path to the executable 252 boost::filesystem::path modulePath_; //!< Path to the modules 243 253 boost::filesystem::path mediaPath_; //!< Path to the media file folder 244 254 boost::filesystem::path configPath_; //!< Path to the config file folder … … 256 266 , bGraphicsLoaded_(false) 257 267 { 258 // Parse command line arguments first 268 // Set the hard coded fixed paths 269 this->setFixedPaths(); 270 271 // Create a new dynamic library manager 272 this->dynLibManager_.reset(new DynLibManager()); 273 274 // Load modules 275 try 276 { 277 // We search for helper files with the following extension 278 std::string moduleextension = ORXONOX_MODULE_EXTENSION; 279 size_t moduleextensionlength = moduleextension.size(); 280 281 // Search in the directory of our executable 282 boost::filesystem::path searchpath = this->configuration_->modulePath_; 283 284 // Add that path to the PATH variable in case a module depends on another one 285 std::string pathVariable = getenv("PATH"); 286 putenv(const_cast<char*>(("PATH=" + pathVariable + ";" + configuration_->modulePath_.string()).c_str())); 287 288 boost::filesystem::directory_iterator file(searchpath); 289 boost::filesystem::directory_iterator end; 290 291 // Iterate through all files 292 while (file != end) 293 { 294 std::string filename = file->BOOST_LEAF_FUNCTION(); 295 296 // Check if the file ends with the exension in question 297 if (filename.size() > moduleextensionlength) 298 { 299 if (filename.substr(filename.size() - moduleextensionlength) == moduleextension) 300 { 301 // We've found a helper file - now load the library with the same name 302 std::string library = filename.substr(0, filename.size() - moduleextensionlength); 303 boost::filesystem::path librarypath = searchpath / library; 304 305 try 306 { 307 DynLibManager::getInstance().load(librarypath.string()); 308 } 309 catch (const std::exception& e) 310 { 311 COUT(1) << "Couldn't load module \"" << librarypath.string() << "\": " << e.what() << std::endl; 312 } 313 catch (...) 314 { 315 COUT(1) << "Couldn't load module \"" << librarypath.string() << "\"" << std::endl; 316 } 317 } 318 } 319 320 ++file; 321 } 322 } 323 catch (const std::exception& e) 324 { 325 COUT(1) << "An error occurred while loading modules: " << e.what() << std::endl; 326 } 327 catch (...) 328 { 329 COUT(1) << "An error occurred while loading modules." << std::endl; 330 } 331 332 // Parse command line arguments AFTER the modules have been loaded (static code!) 259 333 CommandLine::parseCommandLine(cmdLine); 260 334 261 // Determine and set the location of the executable 262 setExecutablePath(); 263 264 // Determine whether we have an installed or a binary dir run 265 // The latter occurs when simply running from the build directory 266 checkDevBuild(); 267 268 // Make sure the directories we write in exist or else make them 269 createDirectories(); 335 // Set configurable paths like log, config and media 336 this->setConfigurablePaths(); 270 337 271 338 // create a signal handler (only active for linux) … … 507 574 /** 508 575 @brief 509 Compares the executable path with the working directory 510 */ 511 void Core::setExecutablePath() 512 { 576 Retrievs the executable path and sets all hard coded fixed path (currently only the module path) 577 Also checks for "orxonox_dev_build.keep_me" in the executable diretory. 578 If found it means that this is not an installed run, hence we 579 don't write the logs and config files to ~/.orxonox 580 @throw 581 GeneralException 582 */ 583 void Core::setFixedPaths() 584 { 585 ////////////////////////// 586 // FIND EXECUTABLE PATH // 587 ////////////////////////// 588 513 589 #ifdef ORXONOX_PLATFORM_WINDOWS 514 590 // get executable module … … 553 629 configuration_->executablePath_ = configuration_->executablePath_.branch_path(); // remove executable name 554 630 #endif 555 } 556 557 /** 558 @brief 559 Checks for "orxonox_dev_build.keep_me" in the executable diretory. 560 If found it means that this is not an installed run, hence we 561 don't write the logs and config files to ~/.orxonox 562 @throws 563 GeneralException 564 */ 565 void Core::checkDevBuild() 566 { 631 632 ///////////////////// 633 // SET MODULE PATH // 634 ///////////////////// 635 567 636 if (boost::filesystem::exists(configuration_->executablePath_ / "orxonox_dev_build.keep_me")) 568 637 { 569 638 COUT(1) << "Running from the build tree." << std::endl; 570 639 Core::bDevRun_ = true; 571 configuration_->mediaPath_ = ORXONOX_MEDIA_DEV_PATH; 572 configuration_->configPath_ = ORXONOX_CONFIG_DEV_PATH; 573 configuration_->logPath_ = ORXONOX_LOG_DEV_PATH; 640 configuration_->modulePath_ = ORXONOX_MODULE_DEV_PATH; 574 641 } 575 642 else 576 643 { 644 577 645 #ifdef INSTALL_COPYABLE // --> relative paths 646 578 647 // Also set the root path 579 648 boost::filesystem::path relativeExecutablePath(ORXONOX_RUNTIME_INSTALL_PATH); … … 585 654 ThrowException(General, "Could not derive a root directory. Might the binary installation directory contain '..' when taken relative to the installation prefix path?"); 586 655 656 // Module path is fixed as well 657 configuration_->modulePath_ = configuration_->rootPath_ / ORXONOX_MODULE_INSTALL_PATH; 658 659 #else 660 661 // There is no root path, so don't set it at all 662 // Module path is fixed as well 663 configuration_->modulePath_ = ORXONOX_MODULE_INSTALL_PATH; 664 665 #endif 666 } 667 } 668 669 /** 670 @brief 671 Sets config, log and media path and creates folders if necessary. 672 @throws 673 GeneralException 674 */ 675 void Core::setConfigurablePaths() 676 { 677 if (Core::isDevelopmentRun()) 678 { 679 configuration_->mediaPath_ = ORXONOX_MEDIA_DEV_PATH; 680 configuration_->configPath_ = ORXONOX_CONFIG_DEV_PATH; 681 configuration_->logPath_ = ORXONOX_LOG_DEV_PATH; 682 } 683 else 684 { 685 686 #ifdef INSTALL_COPYABLE // --> relative paths 687 587 688 // Using paths relative to the install prefix, complete them 588 689 configuration_->mediaPath_ = configuration_->rootPath_ / ORXONOX_MEDIA_INSTALL_PATH; 589 690 configuration_->configPath_ = configuration_->rootPath_ / ORXONOX_CONFIG_INSTALL_PATH; 590 691 configuration_->logPath_ = configuration_->rootPath_ / ORXONOX_LOG_INSTALL_PATH; 692 591 693 #else 592 // There is no root path, so don't set it at all593 694 594 695 configuration_->mediaPath_ = ORXONOX_MEDIA_INSTALL_PATH; … … 607 708 configuration_->configPath_ = userDataPath / ORXONOX_CONFIG_INSTALL_PATH; 608 709 configuration_->logPath_ = userDataPath / ORXONOX_LOG_INSTALL_PATH; 609 #endif 710 711 #endif 712 610 713 } 611 714 … … 617 720 configuration_->logPath_ = configuration_->logPath_ / directory; 618 721 } 619 } 620 621 /* 622 @brief 623 Checks for the log and the config directory and creates them 624 if necessary. Otherwise me might have problems opening those files. 625 @throws 626 orxonox::GeneralException if the directory to be created is a file. 627 */ 628 void Core::createDirectories() 629 { 722 723 // Create directories to avoid problems when opening files in non existent folders. 630 724 std::vector<std::pair<boost::filesystem::path, std::string> > directories; 631 725 directories.push_back(std::make_pair(boost::filesystem::path(configuration_->configPath_), "config")); -
code/trunk/src/core/Core.h
r3370 r5693 114 114 Core(const Core&); //!< Don't use (undefined symbol) 115 115 116 void checkDevBuild(); 117 void setExecutablePath(); 118 void createDirectories(); 116 void setFixedPaths(); 117 void setConfigurablePaths(); 119 118 void setThreadAffinity(int limitToCPU); 120 119 121 120 // Mind the order for the destruction! 121 scoped_ptr<DynLibManager> dynLibManager_; 122 122 scoped_ptr<SignalHandler> signalHandler_; 123 123 SimpleScopeGuard identifierDestroyer_; -
code/trunk/src/core/CorePrereqs.h
r3370 r5693 112 112 class ConsoleCommand; 113 113 class Core; 114 class DynLib; 115 class DynLibManager; 114 116 struct Event; 115 117 class EventContainer; -
code/trunk/src/core/GUIManager.h
r3370 r5693 50 50 namespace orxonox 51 51 { 52 class PlayerInfo; // Forward declaration 53 52 54 /** 53 55 @class GUIManager … … 77 79 static GUIManager* getInstancePtr() { return singletonPtr_s; } 78 80 81 inline void setPlayer(const std::string& guiname, PlayerInfo* player) 82 { this->players_[guiname] = player; } 83 inline PlayerInfo* getPlayer(const std::string& guiname) const 84 { std::map<std::string, PlayerInfo*>::const_iterator it = this->players_.find(guiname); return (it != this->players_.end()) ? it->second : 0; } 85 79 86 private: 80 87 GUIManager(const GUIManager& instance); //!< private and undefined copy c'tor (this is a singleton class) … … 92 99 void mouseScrolled (int abs, int rel); 93 100 94 boost::scoped_ptr<CEGUI::OgreCEGUIRenderer> guiRenderer_; //!< CEGUI's interface to the Ogre Engine 95 boost::scoped_ptr<CEGUI::LuaScriptModule> scriptModule_; //!< CEGUI's script module to use Lua 96 boost::scoped_ptr<CEGUI::System> guiSystem_; //!< CEGUI's main system 97 Ogre::RenderWindow* renderWindow_; //!< Ogre's render window to give CEGUI access to it 98 CEGUI::ResourceProvider* resourceProvider_; //!< CEGUI's resource provider 99 CEGUI::Logger* ceguiLogger_; //!< CEGUI's logger to be able to log CEGUI errors in our log 100 lua_State* luaState_; //!< Lua state, access point to the Lua engine 101 boost::scoped_ptr<CEGUI::OgreCEGUIRenderer> guiRenderer_; //!< CEGUI's interface to the Ogre Engine 102 boost::scoped_ptr<CEGUI::LuaScriptModule> scriptModule_; //!< CEGUI's script module to use Lua 103 boost::scoped_ptr<CEGUI::System> guiSystem_; //!< CEGUI's main system 104 Ogre::RenderWindow* renderWindow_; //!< Ogre's render window to give CEGUI access to it 105 CEGUI::ResourceProvider* resourceProvider_; //!< CEGUI's resource provider 106 CEGUI::Logger* ceguiLogger_; //!< CEGUI's logger to be able to log CEGUI errors in our log 107 lua_State* luaState_; //!< Lua state, access point to the Lua engine 108 std::map<std::string, PlayerInfo*> players_; //!< Stores the player (owner) for each gui 101 109 102 static GUIManager* singletonPtr_s;//!< Singleton reference to GUIManager110 static GUIManager* singletonPtr_s; //!< Singleton reference to GUIManager 103 111 104 112 }; -
code/trunk/src/core/Game.cc
r3370 r5693 113 113 */ 114 114 Game::Game(const std::string& cmdLine) 115 // Destroy factories before the Core! 116 : gsFactoryDestroyer_(Game::GameStateFactory::factories_s, &std::map<std::string, shared_ptr<GameStateFactory> >::clear) 115 117 { 116 118 this->bAbort_ = false; -
code/trunk/src/core/Game.h
r3370 r5693 48 48 49 49 #include "util/Debug.h" 50 #include "util/ScopeGuard.h" 50 51 #include "util/Singleton.h" 51 52 … … 85 86 typedef std::map<std::string, shared_ptr<GameState> > GameStateMap; 86 87 typedef boost::shared_ptr<GameStateTreeNode> GameStateTreeNodePtr; 88 87 89 public: 88 90 Game(const std::string& cmdLine); … … 118 120 static void createFactory(const std::string& className) 119 121 { factories_s[className].reset(new TemplateGameStateFactory<T>()); } 120 private: 122 121 123 virtual shared_ptr<GameState> fabricateInternal(const GameStateInfo& info) = 0; 122 124 static std::map<std::string, shared_ptr<GameStateFactory> > factories_s; … … 129 131 { return shared_ptr<GameState>(new T(info)); } 130 132 }; 133 // For the factory destruction 134 typedef Loki::ObjScopeGuardImpl0<std::map<std::string, shared_ptr<GameStateFactory> >, void (std::map<std::string, shared_ptr<GameStateFactory> >::*)()> ObjScopeGuard; 131 135 132 136 struct StatisticsTickInfo … … 156 160 scoped_ptr<Clock> gameClock_; 157 161 scoped_ptr<Core> core_; 162 ObjScopeGuard gsFactoryDestroyer_; 158 163 scoped_ptr<GameConfiguration> configuration_; 159 164 -
code/trunk/src/core/TclThreadList.h
- Property svn:eol-style set to native
-
code/trunk/src/core/Thread.cc
- Property svn:eol-style set to native
-
code/trunk/src/core/Thread.h
- Property svn:eol-style set to native
-
code/trunk/src/core/ThreadPool.cc
- Property svn:eol-style set to native
-
code/trunk/src/core/ThreadPool.h
- Property svn:eol-style set to native
-
code/trunk/src/network/TODO
- Property svn:mergeinfo changed (with no actual effect on merging)
-
code/trunk/src/orxonox/CMakeLists.txt
r3370 r5693 19 19 20 20 SET_SOURCE_FILES(ORXONOX_SRC_FILES 21 Main.cc 22 21 23 CameraManager.cc 22 24 LevelManager.cc 23 Main.cc24 25 PawnManager.cc 25 26 PlayerManager.cc 27 28 InGameConsole.cc 29 Map.cc 26 30 ) 27 31 ADD_SUBDIRECTORY(gamestates) 28 32 ADD_SUBDIRECTORY(interfaces) 33 ADD_SUBDIRECTORY(overlays) 29 34 ADD_SUBDIRECTORY(objects) 30 ADD_SUBDIRECTORY(overlays)31 35 ADD_SUBDIRECTORY(sound) 32 36 ADD_SUBDIRECTORY(tools) … … 37 41 ENDIF() 38 42 39 ORXONOX_ADD_ EXECUTABLE(orxonox43 ORXONOX_ADD_LIBRARY(orxonox 40 44 FIND_HEADER_FILES 41 45 TOLUA_FILES … … 43 47 objects/pickup/BaseItem.h 44 48 objects/pickup/PickupInventory.h 45 objects/quest/QuestDescription.h46 objects/quest/QuestManager.h49 DEFINE_SYMBOL 50 "ORXONOX_SHARED_BUILD" 47 51 PCH_FILE 48 52 OrxonoxPrecompiledHeaders.h 49 # When defined as WIN32 this removes the console window on Windows50 ${ORXONOX_WIN32}51 53 LINK_LIBRARIES 52 54 ${Boost_FILESYSTEM_LIBRARY} … … 66 68 core 67 69 network 70 tools 68 71 SOURCE_FILES ${ORXONOX_SRC_FILES} 69 72 ) 70 73 71 GET_TARGET_PROPERTY(_exec_loc orxonox LOCATION) 74 ORXONOX_ADD_EXECUTABLE(orxonox-main 75 # When defined as WIN32 this removes the console window on Windows 76 ${ORXONOX_WIN32} 77 LINK_LIBRARIES 78 orxonox 79 SOURCE_FILES 80 Orxonox.cc 81 OUTPUT_NAME orxonox 82 ) 83 84 GET_TARGET_PROPERTY(_exec_loc orxonox-main LOCATION) 72 85 GET_FILENAME_COMPONENT(_exec_name ${_exec_loc} NAME) 73 86 SET(ORXONOX_EXECUTABLE_NAME ${_exec_name} CACHE INTERNAL "") … … 89 102 STRING(REGEX REPLACE "^Visual Studio ([0-9][0-9]?) .*$" "\\1" 90 103 VISUAL_STUDIO_VERSION_SIMPLE "${CMAKE_GENERATOR}") 91 CONFIGURE_FILE("${CMAKE_CURRENT_SOURCE_DIR}/orxonox .vcproj.user.in" "${CMAKE_CURRENT_BINARY_DIR}/orxonox.vcproj.user")104 CONFIGURE_FILE("${CMAKE_CURRENT_SOURCE_DIR}/orxonox-main.vcproj.user.in" "${CMAKE_CURRENT_BINARY_DIR}/orxonox-main.vcproj.user") 92 105 ENDIF(MSVC) -
code/trunk/src/orxonox/Main.cc
r3370 r5693 27 27 * 28 28 */ 29 29 30 30 /** 31 31 @file 32 32 @brief 33 Entry point of the program.33 The main function of Orxonox. 34 34 */ 35 35 … … 37 37 #include "SpecialConfig.h" 38 38 39 #ifdef ORXONOX_USE_WINMAIN40 # ifndef WIN32_LEAN_AND_MEAN41 # define WIN32_LEAN_AND_MEAN42 # endif43 #include <windows.h>44 #endif45 46 #include "util/Debug.h"47 39 #include "util/Exception.h" 48 40 #include "core/CommandLine.h" 49 41 #include "core/Game.h" 42 #include "Main.h" 50 43 51 44 SetCommandLineSwitch(console).information("Start in console mode (text IO only)"); … … 56 49 SetCommandLineSwitch(standalone).information("Start in standalone mode"); 57 50 58 /* 59 @brief 60 Main method. Game starts here (except for static initialisations). 61 */ 62 #ifdef ORXONOX_USE_WINMAIN 63 INT WINAPI WinMain(HINSTANCE hInst, HINSTANCE, LPSTR strCmdLine, INT) 64 #else 65 int main(int argc, char** argv) 66 #endif 51 namespace orxonox 67 52 { 68 using namespace orxonox; 69 70 Game* game = 0; 71 try 53 /** 54 @brief 55 Main method. Game starts here (except for static initialisations). 56 */ 57 int main(const std::string& strCmdLine) 72 58 { 73 #ifndef ORXONOX_USE_WINMAIN 74 std::string strCmdLine; 75 for (int i = 1; i < argc; ++i) 76 strCmdLine += argv[i] + std::string(" "); 77 #endif 78 game = new Game(strCmdLine); 59 Game* game = new Game(strCmdLine); 79 60 80 61 game->setStateHierarchy( … … 108 89 else 109 90 Game::getInstance().requestStates("graphics, mainMenu"); 91 92 game->run(); 93 delete game; 94 95 return 0; 110 96 } 111 catch (const std::exception& ex)112 {113 COUT(0) << "Orxonox failed to initialise: " << ex.what() << std::endl;114 COUT(0) << "Terminating program." << std::endl;115 return 1;116 }117 catch (...)118 {119 COUT(0) << "Orxonox failed to initialise: " << std::endl;120 COUT(0) << "Terminating program." << std::endl;121 return 1;122 }123 124 game->run();125 delete game;126 127 return 0;128 97 } -
code/trunk/src/orxonox/OrxonoxPrereqs.h
r3370 r5693 37 37 #include "OrxonoxConfig.h" 38 38 39 #include "tools/ToolsPrereqs.h" 40 39 41 //----------------------------------------------------------------------- 40 42 // Shared library settings 41 43 //----------------------------------------------------------------------- 42 #define ORXONOX_NO_EXPORTS // This is an executable that needs no exports 43 #if defined(ORXONOX_PLATFORM_WINDOWS) && !(defined(ORXONOX_STATIC_BUILD) || defined(ORXONOX_NO_EXPORTS)) 44 #if defined(ORXONOX_PLATFORM_WINDOWS) && !defined(ORXONOX_STATIC_BUILD) 44 45 # ifdef ORXONOX_SHARED_BUILD 45 46 # define _OrxonoxExport __declspec(dllexport) … … 63 64 namespace orxonox 64 65 { 65 namespace LODParticle 66 { 67 enum Value 68 { 69 Off = 0, 70 Low = 1, 71 Normal = 2, 72 High = 3 73 }; 74 } 75 76 class RadarViewable; 77 class Radar; 78 class RadarListener; 79 80 class Teamcolourable; 81 66 // manager 82 67 class CameraManager; 83 68 class LevelManager; … … 85 70 class PlayerManager; 86 71 72 // interfaces 73 class GametypeMessageListener; 74 class NotificationListener; 75 class PawnListener; 76 class RadarListener; 77 class RadarViewable; 78 class Rewardable; 79 class Teamcolourable; 80 87 81 // objects 88 82 class Level; … … 90 84 class Tickable; 91 85 92 class AddQuest; 93 class AddQuestHint; 94 class AddReward; 95 class ChangeQuestStatus; 96 class CompleteQuest; 97 class FailQuest; 98 class GlobalQuest; 99 class LocalQuest; 100 class Quest; 101 class QuestDescription; 102 class QuestEffect; 103 class QuestEffectBeacon; 104 class QuestHint; 105 class QuestItem; 106 class QuestListener; 107 class QuestManager; 108 class QuestNotification; 109 class Rewardable; 110 86 // worldentities 111 87 class WorldEntity; 112 88 class StaticEntity; … … 114 90 class ControllableEntity; 115 91 class MovableEntity; 116 class Sublevel; 117 class ForceField; 118 class Attacher; 119 92 93 // graphics 120 94 class Model; 121 95 class Billboard; … … 129 103 class ParticleEmitter; 130 104 class ParticleSpawner; 131 105 class Camera; 106 107 // mixed 132 108 class PongCenterpoint; 133 109 class PongBall; 134 110 class PongBat; 135 111 136 class Camera; 137 class CameraPosition; 112 class EventListener; 113 class EventDispatcher; 114 class EventTarget; 115 138 116 class SpawnPoint; 139 117 class TeamSpawnPoint; 118 119 class Attacher; 120 class CameraPosition; 121 class Sublevel; 122 class ForceField; 123 class Radar; 124 140 125 class Test; 141 126 127 // pawns 142 128 class Spectator; 143 129 class Pawn; … … 146 132 class Destroyer; 147 133 134 // gametypes 135 class Gametype; 136 class Deathmatch; 137 class TeamDeathmatch; 138 class Asteroids; 139 class TeamBaseMatch; 140 class UnderAttack; 141 class Pong; 142 143 // pickups 148 144 class BaseItem; 149 145 class DroppedItem; … … 160 156 class PassiveItem; 161 157 158 // items 162 159 class Item; 163 160 class Engine; … … 165 162 class RotatingEngine; 166 163 164 // trigger 167 165 class Trigger; 168 166 class DistanceTrigger; … … 171 169 class CheckPoint; 172 170 171 // weaponsystem 173 172 class WeaponSystem; 174 173 class WeaponSet; … … 178 177 class WeaponMode; 179 178 class DefaultWeaponmodeLink; 180 class MuzzleFlash;181 182 class LaserFire;183 class FusionFire;184 class HsW01;185 class LightningGun;186 class EnergyDrink;187 188 class ReplenishingMunition;189 179 class Munition; 190 class LaserMunition; 191 class FusionMunition; 192 193 class Projectile; 194 class BillboardProjectile; 195 class ParticleProjectile; 196 class LightningGunProjectile; 197 198 class EventListener; 199 class EventDispatcher; 200 class EventTarget; 201 180 181 // controller 202 182 class Controller; 203 183 class HumanController; … … 209 189 class PongAI; 210 190 191 // infos 211 192 class Info; 212 193 class PlayerInfo; … … 216 197 class GametypeInfo; 217 198 218 class Gametype;219 class Deathmatch;220 class TeamDeathmatch;221 class Asteroids;222 class TeamBaseMatch;223 class UnderAttack;224 class Pong;225 226 class Scores;227 class CreateLines;228 class Scoreboard;229 class Stats;230 231 199 // collision 232 200 class CollisionShape; … … 236 204 class WorldEntityCollisionShape; 237 205 238 // tools239 class BillboardSet;240 class Light;241 class Mesh;242 class ParticleInterface;243 class Shader;244 template <class T>245 class Timer;246 247 206 // overlays 248 class BarColour; 249 class DebugFPSText; 250 class DebugRTRText; 251 class GUIOverlay; 252 class HUDBar; 253 class HUDNavigation; 254 class HUDRadar; 255 class HUDSpeedBar; 256 class HUDHealthBar; 257 class HUDTimer; 258 class InGameConsole; 207 class OverlayGroup; 208 class OrxonoxOverlay; 259 209 class Notification; 260 210 class NotificationManager; 261 class NotificationOverlay; 262 class NotificationQueue; 263 class OrxonoxOverlay; 264 class OverlayGroup; 265 class OverlayText; 266 class FadeoutText; 267 class GametypeStatus; 268 class AnnounceMessage; 269 class KillMessage; 270 class DeathMessage; 271 class CreateLines; 272 class Scoreboard; 211 class InGameConsole; 273 212 class Map; 274 213 … … 279 218 } 280 219 281 namespace Ogre282 {283 // OGRE Wiki adapted code284 class DynamicLines;285 class DynamicRenderable;286 }287 288 220 // Bullet Physics Engine 289 221 class btTransform; -
code/trunk/src/orxonox/PawnManager.h
r3370 r5693 33 33 34 34 #include "util/Singleton.h" 35 #include " interfaces/Tickable.h"35 #include "tools/interfaces/Tickable.h" 36 36 37 37 namespace orxonox -
code/trunk/src/orxonox/gamestates/CMakeLists.txt
r2896 r5693 1 ADD_SOURCE_FILES(ORXONOX_SRC_FILES1 SET_SOURCE_FILES(GAMESTATES_SRC_FILES 2 2 GSClient.cc 3 3 GSDedicated.cc … … 10 10 GSStandalone.cc 11 11 ) 12 13 ORXONOX_ADD_LIBRARY(gamestates 14 MODULE 15 DEFINE_SYMBOL 16 "GAMESTATES_SHARED_BUILD" 17 LINK_LIBRARIES 18 orxonox 19 SOURCE_FILES ${GAMESTATES_SRC_FILES} 20 ) -
code/trunk/src/orxonox/gamestates/GSClient.cc
r3370 r5693 40 40 DeclareGameState(GSClient, "client", false, true); 41 41 42 SetCommandLineArgument(ip, "127.0.0.1").information("Sever IP as strin in the form #.#.#.#");42 SetCommandLineArgument(ip, "127.0.0.1").information("Sever IP as string in the form #.#.#.#"); 43 43 44 44 GSClient::GSClient(const GameStateInfo& info) -
code/trunk/src/orxonox/gamestates/GSClient.h
r3370 r5693 30 30 #define _GSClient_H__ 31 31 32 #include " OrxonoxPrereqs.h"32 #include "gamestates/GameStatesPrereqs.h" 33 33 34 34 #include "core/GameState.h" … … 37 37 namespace orxonox 38 38 { 39 class _ OrxonoxExport GSClient : public GameState39 class _GameStatesExport GSClient : public GameState 40 40 { 41 41 public: -
code/trunk/src/orxonox/gamestates/GSDedicated.h
r3370 r5693 30 30 #define _GSDedicated_H__ 31 31 32 #include " OrxonoxPrereqs.h"32 #include "gamestates/GameStatesPrereqs.h" 33 33 34 34 #include "core/GameState.h" … … 44 44 namespace orxonox 45 45 { 46 47 class _ OrxonoxExport GSDedicated : public GameState46 47 class _GameStatesExport GSDedicated : public GameState 48 48 { 49 49 public: … … 61 61 void setTerminalMode(); 62 62 static void resetTerminalMode(); 63 63 64 64 void insertCharacter( unsigned int position, char c ); 65 65 void deleteCharacter( unsigned int position ); 66 66 67 67 Server* server_; 68 68 69 69 boost::thread *inputThread_; 70 70 boost::recursive_mutex inputLineMutex_; … … 76 76 std::queue<std::string> commandQueue_; 77 77 static termios* originalTerminalSettings_; 78 78 79 79 unsigned int cursorX_; 80 80 unsigned int cursorY_; -
code/trunk/src/orxonox/gamestates/GSGraphics.cc
r3370 r5693 47 47 #include "core/Loader.h" 48 48 #include "core/XMLFile.h" 49 #include " overlays/console/InGameConsole.h"49 #include "InGameConsole.h" 50 50 #include "sound/SoundManager.h" 51 51 52 52 // HACK: 53 #include " overlays/map/Map.h"53 #include "Map.h" 54 54 55 55 namespace orxonox -
code/trunk/src/orxonox/gamestates/GSGraphics.h
r3370 r5693 36 36 #define _GSGraphics_H__ 37 37 38 #include " OrxonoxPrereqs.h"38 #include "gamestates/GameStatesPrereqs.h" 39 39 #include "core/GameState.h" 40 40 … … 47 47 This game state is only left out if we start a dedicated server where no graphics are present. 48 48 */ 49 class _ OrxonoxExport GSGraphics : public GameState49 class _GameStatesExport GSGraphics : public GameState 50 50 { 51 51 public: -
code/trunk/src/orxonox/gamestates/GSIOConsole.h
r3370 r5693 30 30 #define _GSIOConsole_H__ 31 31 32 #include " OrxonoxPrereqs.h"32 #include "gamestates/GameStatesPrereqs.h" 33 33 #include "core/GameState.h" 34 34 35 35 namespace orxonox 36 36 { 37 class _ OrxonoxExport GSIOConsole : public GameState37 class _GameStatesExport GSIOConsole : public GameState 38 38 { 39 39 public: -
code/trunk/src/orxonox/gamestates/GSLevel.cc
r3370 r5693 45 45 #include "core/XMLFile.h" 46 46 47 #include " interfaces/Tickable.h"47 #include "tools/interfaces/Tickable.h" 48 48 #include "objects/Radar.h" 49 #include "objects/quest/QuestManager.h"50 #include "overlays/notifications/NotificationManager.h"51 49 #include "CameraManager.h" 52 50 #include "LevelManager.h" … … 110 108 this->playerManager_ = new PlayerManager(); 111 109 112 this->questManager_ = new QuestManager(); 113 114 this->notificationManager_ = new NotificationManager(); 110 this->scope_GSLevel_ = new Scope<ScopeID::GSLevel>(); 115 111 116 112 if (GameMode::isMaster()) … … 201 197 } 202 198 203 if (this->questManager_) 204 { 205 delete this->questManager_; 206 this->questManager_ = NULL; 207 } 208 209 if (this->notificationManager_) 210 { 211 delete this->notificationManager_; 212 this->notificationManager_ = NULL; 199 if (this->scope_GSLevel_) 200 { 201 delete this->scope_GSLevel_; 202 this->scope_GSLevel_ = NULL; 213 203 } 214 204 -
code/trunk/src/orxonox/gamestates/GSLevel.h
r3370 r5693 30 30 #define _GSLevel_H__ 31 31 32 #include " OrxonoxPrereqs.h"32 #include "gamestates/GameStatesPrereqs.h" 33 33 34 34 #include <string> 35 #include "util/Scope.h" 35 36 #include "core/OrxonoxClass.h" 36 37 #include "core/GameState.h" … … 38 39 namespace orxonox 39 40 { 40 class _ OrxonoxExport GSLevel : public GameState, public OrxonoxClass41 class _GameStatesExport GSLevel : public GameState, public OrxonoxClass 41 42 { 42 43 public: … … 62 63 void keybindInternal(const std::string& command, bool bTemporary); 63 64 64 KeyBinder* keyBinder_; //!< tool that loads and manages the input bindings 65 InputState* gameInputState_; //!< input state for normal ingame playing 66 InputState* guiMouseOnlyInputState_; //!< input state if we only need the mouse to use the GUI 67 InputState* guiKeysOnlyInputState_; //!< input state if we only need the keys to use the GUI 68 Radar* radar_; //!< represents the Radar (not the HUD part) 69 CameraManager* cameraManager_; //!< camera manager for this level 70 PlayerManager* playerManager_; //!< player manager for this level 71 QuestManager* questManager_; 72 NotificationManager* notificationManager_; 65 KeyBinder* keyBinder_; //!< tool that loads and manages the input bindings 66 InputState* gameInputState_; //!< input state for normal ingame playing 67 InputState* guiMouseOnlyInputState_; //!< input state if we only need the mouse to use the GUI 68 InputState* guiKeysOnlyInputState_; //!< input state if we only need the keys to use the GUI 69 Radar* radar_; //!< represents the Radar (not the HUD part) 70 CameraManager* cameraManager_; //!< camera manager for this level 71 PlayerManager* playerManager_; //!< player manager for this level 72 Scope<ScopeID::GSLevel>* scope_GSLevel_; 73 73 74 74 //##### ConfigValues ##### -
code/trunk/src/orxonox/gamestates/GSMainMenu.h
r3370 r5693 30 30 #define _GSMainMenu_H__ 31 31 32 #include " OrxonoxPrereqs.h"32 #include "gamestates/GameStatesPrereqs.h" 33 33 34 34 #include "util/OgreForwardRefs.h" … … 37 37 namespace orxonox 38 38 { 39 class _ OrxonoxExport GSMainMenu : public GameState39 class _GameStatesExport GSMainMenu : public GameState 40 40 { 41 41 public: -
code/trunk/src/orxonox/gamestates/GSRoot.cc
r3370 r5693 38 38 #include "ToluaBindOrxonox.h" 39 39 #include "tools/Timer.h" 40 #include " interfaces/TimeFactorListener.h"41 #include " interfaces/Tickable.h"40 #include "tools/interfaces/TimeFactorListener.h" 41 #include "tools/interfaces/Tickable.h" 42 42 #include "LevelManager.h" 43 43 -
code/trunk/src/orxonox/gamestates/GSRoot.h
r3370 r5693 30 30 #define _GSRoot_H__ 31 31 32 #include " OrxonoxPrereqs.h"32 #include "gamestates/GameStatesPrereqs.h" 33 33 #include "core/GameState.h" 34 34 35 35 namespace orxonox 36 36 { 37 class _ OrxonoxExport GSRoot : public GameState37 class _GameStatesExport GSRoot : public GameState 38 38 { 39 39 public: -
code/trunk/src/orxonox/gamestates/GSServer.h
r3370 r5693 30 30 #define _GSServer_H__ 31 31 32 #include " OrxonoxPrereqs.h"32 #include "gamestates/GameStatesPrereqs.h" 33 33 34 34 #include "core/GameState.h" … … 37 37 namespace orxonox 38 38 { 39 class _ OrxonoxExport GSServer : public GameState39 class _GameStatesExport GSServer : public GameState 40 40 { 41 41 public: -
code/trunk/src/orxonox/gamestates/GSStandalone.h
r3370 r5693 30 30 #define _GSStandalone_H__ 31 31 32 #include " OrxonoxPrereqs.h"32 #include "gamestates/GameStatesPrereqs.h" 33 33 #include "core/GameState.h" 34 34 35 35 namespace orxonox 36 36 { 37 class _ OrxonoxExport GSStandalone : public GameState37 class _GameStatesExport GSStandalone : public GameState 38 38 { 39 39 public: -
code/trunk/src/orxonox/interfaces/InterfaceCompilation.cc
r3327 r5693 30 30 @file 31 31 @brief 32 Compiles all the interfaces (except RadarViewable)with mostly just a constructor.32 Compiles all the interfaces in the orxonox library with mostly just a constructor. 33 33 */ 34 34 … … 38 38 #include "Rewardable.h" 39 39 #include "TeamColourable.h" 40 #include "Tickable.h" 41 #include "TimeFactorListener.h" 40 #include "NotificationListener.h" 42 41 43 42 #include "core/CoreIncludes.h" … … 81 80 82 81 //---------------------------- 83 // TimeFactorListener84 //----------------------------85 float TimeFactorListener::timefactor_s = 1.0f;86 87 TimeFactorListener::TimeFactorListener()88 {89 RegisterRootObject(TimeFactorListener);90 }91 92 //----------------------------93 // Tickable94 //----------------------------95 /**96 @brief Constructor: Registers the object in the Tickable-list97 */98 Tickable::Tickable()99 {100 RegisterRootObject(Tickable);101 }102 103 //----------------------------104 82 // Rewardable 105 83 //---------------------------- … … 108 86 RegisterObject(Rewardable); 109 87 } 88 89 //---------------------------- 90 // NotificationListener 91 //---------------------------- 92 NotificationListener::NotificationListener() 93 { 94 RegisterObject(NotificationListener); 95 } 110 96 } -
code/trunk/src/orxonox/interfaces/RadarViewable.cc
r3300 r5693 38 38 #include "objects/worldentities/WorldEntity.h" 39 39 #include "objects/Radar.h" 40 #include " overlays/map/Map.h"40 #include "Map.h" 41 41 42 42 namespace orxonox -
code/trunk/src/orxonox/objects/Radar.h
r3196 r5693 42 42 #include "core/ObjectListIterator.h" 43 43 #include "interfaces/RadarViewable.h" 44 #include " interfaces/Tickable.h"44 #include "tools/interfaces/Tickable.h" 45 45 46 46 namespace orxonox -
code/trunk/src/orxonox/objects/Scene.h
r3196 r5693 41 41 #include "core/BaseObject.h" 42 42 #include "network/synchronisable/Synchronisable.h" 43 #include " interfaces/Tickable.h"43 #include "tools/interfaces/Tickable.h" 44 44 45 45 namespace orxonox -
code/trunk/src/orxonox/objects/Test.h
r3196 r5693 33 33 #include "core/BaseObject.h" 34 34 #include "network/synchronisable/Synchronisable.h" 35 #include " interfaces/Tickable.h"35 #include "tools/interfaces/Tickable.h" 36 36 37 37 … … 50 50 void setConfigValues(); 51 51 void registerVariables(); 52 52 53 53 static void call(unsigned int clientID); 54 54 void call2(unsigned int clientID, std::string s1, std::string s2, std::string s3, std::string s4); … … 65 65 void checkU3(); 66 66 void checkU4(); 67 67 68 68 //signed functions 69 69 void setS1(TYPE value){ s1 = value; } … … 75 75 void checkS3(); 76 76 void checkS4(); 77 77 78 78 static void printV1(){ instance_->checkU1(); } 79 79 static void printV2(){ instance_->checkU2(); } 80 80 static void printV3(){ instance_->checkU3(); } 81 81 static void printV4(){ instance_->checkU4(); } 82 82 83 83 void printBlaBla(std::string s1, std::string s2, std::string s3, std::string s4, std::string s5); 84 84 … … 88 88 UTYPE u3; 89 89 UTYPE u4; 90 90 91 91 TYPE s1; 92 92 TYPE s2; 93 93 TYPE s3; 94 94 TYPE s4; 95 95 96 96 static Test* instance_; 97 97 }; -
code/trunk/src/orxonox/objects/controllers/AIController.h
r3196 r5693 33 33 34 34 #include "tools/Timer.h" 35 #include " interfaces/Tickable.h"35 #include "tools/interfaces/Tickable.h" 36 36 #include "ArtificialController.h" 37 37 -
code/trunk/src/orxonox/objects/controllers/HumanController.cc
r3325 r5693 35 35 #include "objects/gametypes/Gametype.h" 36 36 #include "objects/infos/PlayerInfo.h" 37 #include " overlays/map/Map.h"37 #include "Map.h" 38 38 39 39 namespace orxonox -
code/trunk/src/orxonox/objects/controllers/PongAI.h
r3196 r5693 34 34 #include <list> 35 35 #include "util/Math.h" 36 #include " interfaces/Tickable.h"36 #include "tools/interfaces/Tickable.h" 37 37 #include "Controller.h" 38 38 -
code/trunk/src/orxonox/objects/controllers/WaypointController.h
r3196 r5693 33 33 34 34 #include <vector> 35 #include " interfaces/Tickable.h"35 #include "tools/interfaces/Tickable.h" 36 36 #include "ArtificialController.h" 37 37 -
code/trunk/src/orxonox/objects/gametypes/Gametype.h
r3280 r5693 38 38 #include "core/BaseObject.h" 39 39 #include "core/Identifier.h" 40 #include " interfaces/Tickable.h"40 #include "tools/interfaces/Tickable.h" 41 41 #include "objects/infos/GametypeInfo.h" 42 42 … … 133 133 134 134 inline void startTimer() 135 { 135 { 136 136 this->time_ = this->timeLimit_; 137 137 this->timerIsActive_ = true; -
code/trunk/src/orxonox/objects/items/Engine.h
r3196 r5693 32 32 #include "OrxonoxPrereqs.h" 33 33 34 #include " interfaces/Tickable.h"34 #include "tools/interfaces/Tickable.h" 35 35 #include "Item.h" 36 36 -
code/trunk/src/orxonox/objects/pickup/DroppedItem.h
r3196 r5693 38 38 39 39 #include "tools/Timer.h" 40 #include " interfaces/Tickable.h"40 #include "tools/interfaces/Tickable.h" 41 41 #include "objects/worldentities/StaticEntity.h" 42 42 -
code/trunk/src/orxonox/objects/pickup/PickupSpawner.h
r3196 r5693 39 39 #include <string> 40 40 #include "tools/Timer.h" 41 #include " interfaces/Tickable.h"41 #include "tools/interfaces/Tickable.h" 42 42 #include "objects/worldentities/StaticEntity.h" 43 43 -
code/trunk/src/orxonox/objects/quest/AddQuest.h
r3196 r5693 35 35 #define _AddQuest_H__ 36 36 37 #include " OrxonoxPrereqs.h"37 #include "objects/quest/QuestPrereqs.h" 38 38 #include "ChangeQuestStatus.h" 39 39 … … 43 43 @brief 44 44 Adds a Quest, resp. changes the quests status to active for the player invoking the Quest. 45 45 46 46 Creating a AddQuest through XML goes as follows: 47 47 48 48 <AddQuest questId="id" /> //Where id is a GUID, see http://en.wikipedia.org/wiki/Globally_Unique_Identifier#Basic_structure for more information, and identifies the Quest that should be added. 49 49 @author 50 50 Damian 'Mozork' Frick 51 51 */ 52 class _ OrxonoxExport AddQuest : public ChangeQuestStatus52 class _QuestExport AddQuest : public ChangeQuestStatus 53 53 { 54 54 public: 55 55 AddQuest(BaseObject* creator); 56 56 virtual ~AddQuest(); 57 57 58 58 virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode); //!< Method for creating a AddQuest object through XML. 59 59 60 60 virtual bool invoke(PlayerInfo* player); //!< Invokes the QuestEffect. 61 61 -
code/trunk/src/orxonox/objects/quest/AddQuestHint.h
r3196 r5693 35 35 #define _AddQuestHint_H__ 36 36 37 #include " OrxonoxPrereqs.h"37 #include "objects/quest/QuestPrereqs.h" 38 38 39 39 #include <string> … … 45 45 @brief 46 46 Adds a QuestHint, resp. activates the QuestHint of the given id for the player the QuestEffect is invoked on. 47 47 48 48 Creating a AddQuestHint through XML goes as follows: 49 49 50 50 <AddQuestHint hintId="id" /> //Where id is a GUID, see http://en.wikipedia.org/wiki/Globally_Unique_Identifier#Basic_structure for more information, and identifies the QuestHint that should be added. 51 51 @author 52 52 Damian 'Mozork' Frick 53 53 */ 54 class _ OrxonoxExport AddQuestHint : public QuestEffect54 class _QuestExport AddQuestHint : public QuestEffect 55 55 { 56 56 public: … … 71 71 inline const std::string & getHintId(void) const 72 72 { return this->hintId_; } 73 73 74 74 bool setHintId(const std::string & id); //!< Sets the id of the QuestHint. 75 75 -
code/trunk/src/orxonox/objects/quest/AddReward.h
r3196 r5693 35 35 #define _AddReward_H__ 36 36 37 #include " OrxonoxPrereqs.h"37 #include "objects/quest/QuestPrereqs.h" 38 38 39 39 #include <list> … … 45 45 @brief 46 46 Adds a list of Rewardables to a player. 47 47 48 48 Creating a AddReward through XML goes as follows: 49 49 50 50 <AddReward> 51 51 <Rewardable /> //A list of Rewardable objects to be rewarded the player, see the specific Rewardables for their respective XML representations. … … 56 56 Damian 'Mozork' Frick 57 57 */ 58 class _ OrxonoxExport AddReward : public QuestEffect58 class _QuestExport AddReward : public QuestEffect 59 59 { 60 60 public: … … 75 75 inline void addRewardable(Rewardable* reward) 76 76 { this->rewards_.push_back(reward); } 77 77 78 78 const Rewardable* getRewardables(unsigned int index) const; //!< Returns the Rewardable object at the given index. 79 79 -
code/trunk/src/orxonox/objects/quest/CMakeLists.txt
r3196 r5693 1 ADD_SOURCE_FILES(ORXONOX_SRC_FILES1 SET_SOURCE_FILES(QUEST_SRC_FILES 2 2 AddQuest.cc 3 3 AddQuestHint.cc … … 18 18 QuestNotification.cc 19 19 ) 20 21 ADD_SUBDIRECTORY(notifications) 22 23 # add the parent directory for tolua (TODO: remove this if the quest module is moved somewhere else) 24 INCLUDE_DIRECTORIES(..) 25 26 ORXONOX_ADD_LIBRARY(quest 27 MODULE 28 TOLUA_FILES 29 QuestDescription.h 30 QuestManager.h 31 DEFINE_SYMBOL 32 "QUEST_SHARED_BUILD" 33 LINK_LIBRARIES 34 orxonox 35 overlays 36 SOURCE_FILES ${QUEST_SRC_FILES} 37 ) -
code/trunk/src/orxonox/objects/quest/ChangeQuestStatus.h
r3196 r5693 35 35 #define _ChangeQuestStatus_H__ 36 36 37 #include " OrxonoxPrereqs.h"37 #include "objects/quest/QuestPrereqs.h" 38 38 39 39 #include <string> … … 48 48 Damian 'Mozork' Frick 49 49 */ 50 class _ OrxonoxExport ChangeQuestStatus : public QuestEffect50 class _QuestExport ChangeQuestStatus : public QuestEffect 51 51 { 52 52 public: … … 68 68 private: 69 69 std::string questId_; //!< The id of the Quest the status should be changed of. 70 70 71 71 bool setQuestId(const std::string & id); //!< Sets the id of the Quest. 72 72 -
code/trunk/src/orxonox/objects/quest/CompleteQuest.h
r3196 r5693 35 35 #define _CompleteQuest_H__ 36 36 37 #include " OrxonoxPrereqs.h"37 #include "objects/quest/QuestPrereqs.h" 38 38 #include "ChangeQuestStatus.h" 39 39 … … 43 43 @brief 44 44 Completes a Quest (with a specified id) for the player invoking the QuestEffect. 45 45 46 46 Creating a CompleteQuest through XML goes as follows: 47 47 48 48 <CompleteQuest questId="id" /> //Where id is a GUID, see http://en.wikipedia.org/wiki/Globally_Unique_Identifier#Basic_structure for more information, and identifies the Quest that should be completed. 49 49 @author 50 50 Damian 'Mozork' Frick 51 51 */ 52 class _ OrxonoxExport CompleteQuest : public ChangeQuestStatus52 class _QuestExport CompleteQuest : public ChangeQuestStatus 53 53 { 54 54 public: -
code/trunk/src/orxonox/objects/quest/FailQuest.h
r3196 r5693 35 35 #define _FailQuest_H__ 36 36 37 #include " OrxonoxPrereqs.h"37 #include "objects/quest/QuestPrereqs.h" 38 38 #include "ChangeQuestStatus.h" 39 39 … … 43 43 @brief 44 44 Fails a quest (with a specified id) for the player invoking the QuestEffect. 45 45 46 46 Creating a FailQuest through XML goes as follows: 47 47 48 48 <FailQuest questId="id" /> //Where id is a GUID, see http://en.wikipedia.org/wiki/Globally_Unique_Identifier#Basic_structure for more information, and identifies the Quest that should be failed. 49 49 @author 50 50 Damian 'Mozork' Frick 51 51 */ 52 class _ OrxonoxExport FailQuest : public ChangeQuestStatus52 class _QuestExport FailQuest : public ChangeQuestStatus 53 53 { 54 54 public: -
code/trunk/src/orxonox/objects/quest/GlobalQuest.h
r3280 r5693 26 26 * 27 27 */ 28 28 29 29 /** 30 30 @file … … 35 35 #define _GlobalQuest_H__ 36 36 37 #include " OrxonoxPrereqs.h"37 #include "objects/quest/QuestPrereqs.h" 38 38 39 39 #include <list> … … 47 47 GlobalQuests are Quests, that have the same status for all players. 48 48 This means, that when a player successfully completes a GlobalQuest, it is completed for all players that have it. 49 49 50 50 Creating a GlobalQuest through XML goes as follows: 51 51 52 52 <GlobalQuest id="questId"> //Where questId is a GUID, see http://en.wikipedia.org/wiki/Globally_Unique_Identifier#Basic_structure for more information 53 53 <QuestDescription title="Title" description="Description." /> //The description of the quest. … … 81 81 Damian 'Mozork' Frick 82 82 */ 83 class _ OrxonoxExport GlobalQuest : public Quest83 class _QuestExport GlobalQuest : public Quest 84 84 { 85 85 public: … … 88 88 89 89 virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode); //!< Method for creating a GlobalQuest object through XML. 90 90 91 91 virtual bool fail(PlayerInfo* player); //!< Fails the Quest. 92 92 virtual bool complete(PlayerInfo* player); //!< Completes the Quest. … … 98 98 99 99 virtual QuestStatus::Value getStatus(const PlayerInfo* player) const; //!< Returns the status of the Quest for a specific player. 100 100 101 101 virtual bool setStatus(PlayerInfo* player, const QuestStatus::Value & status); //!< Sets the status for a specific player. 102 102 … … 105 105 QuestStatus::Value status_; //!< The status of this Quest. 106 106 std::list<QuestEffect*> rewards_; //!< Reward QuestEffects only invoked on the player completing the Quest. 107 107 108 108 bool addRewardEffect(QuestEffect* effect); //!< Adds a reward QuestEffect to the list of reward QuestEffects. 109 109 const QuestEffect* getRewardEffects(unsigned int index) const; //!< Returns the reward QuestEffect at the given index. -
code/trunk/src/orxonox/objects/quest/LocalQuest.h
r3280 r5693 26 26 * 27 27 */ 28 28 29 29 /** 30 30 @file … … 35 35 #define _LocalQuest_H__ 36 36 37 #include " OrxonoxPrereqs.h"37 #include "objects/quest/QuestPrereqs.h" 38 38 39 39 #include <map> … … 46 46 Handles Quests which have different states for different players. 47 47 LocalQuests have (as opposed to GlobalQuests) a different state for each player, that means if for one player the status of the Quest changes it does not for all the other players which also possess this quest. 48 48 49 49 Creating a LocalQuest through XML goes as follows: 50 50 51 51 <LocalQuest id="questId"> //Where questId is a GUID, see http://en.wikipedia.org/wiki/Globally_Unique_Identifier#Basic_structure for more information 52 52 <QuestDescription title="Title" description="Description." /> //The description of the quest. … … 75 75 Damian 'Mozork' Frick 76 76 */ 77 class _ OrxonoxExport LocalQuest : public Quest77 class _QuestExport LocalQuest : public Quest 78 78 { 79 79 public: … … 82 82 83 83 virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode); //!< Method for creating a LocalQuest object through XML. 84 84 85 85 virtual bool fail(PlayerInfo* player); //!< Fails the Quest. 86 86 virtual bool complete(PlayerInfo* player); //!< Completes the Quest. -
code/trunk/src/orxonox/objects/quest/Quest.h
r3280 r5693 26 26 * 27 27 */ 28 28 29 29 /** 30 30 @file … … 32 32 The Quest is the parent class of LocalQuest and GlobalQuest. 33 33 */ 34 34 35 35 #ifndef _Quest_H__ 36 36 #define _Quest_H__ 37 37 38 #include " OrxonoxPrereqs.h"38 #include "objects/quest/QuestPrereqs.h" 39 39 40 40 #include <list> … … 62 62 A Quest has several hints (QuestHint) that can be unlocked through QuestEffects and then display aid in solving the Quest. 63 63 A Quest has a list of QuestEffects that are invoked when the quest is failed and also a list of QuestEffects that are invoked, when the Quest is completed. 64 64 65 65 Quest itself should not be instantiated, if you want to create a quest either go for LocalQuest or GlobalQuest, whichever suits you needs better. 66 66 @author 67 67 Damian 'Mozork' Frick 68 68 */ 69 class _ OrxonoxExport Quest : public QuestItem69 class _QuestExport Quest : public QuestItem 70 70 { 71 71 public: … … 81 81 inline Quest* getParentQuest(void) const 82 82 { return this->parentQuest_; } 83 83 84 84 /** 85 85 @brief Returns the list of subquests. … … 95 95 inline const std::list<QuestHint*> & getHintsList(void) const 96 96 { return this->hints_; } 97 97 98 98 bool isInactive(const PlayerInfo* player) const; //!< Returns true if the quest status for the specific player is 'inactive'. 99 99 bool isActive(const PlayerInfo* player) const; //!< Returns true if the quest status for the specific player is 'active'. 100 100 bool isFailed(const PlayerInfo* player) const; //!< Returns true if the quest status for the specific player is 'failed'. 101 101 bool isCompleted(const PlayerInfo* player) const; //!< Returns true if the quest status for the specific player is 'completed'. 102 102 103 103 bool start(PlayerInfo* player); //!< Sets a Quest to active. 104 104 virtual bool fail(PlayerInfo* player); //!< Fails the Quest. 105 105 virtual bool complete(PlayerInfo* player); //!< Completes the Quest. 106 106 107 107 bool addListener(QuestListener* listener); //!< Adds a QuestListener to the list of QuestListeners listening to this Quest. 108 108 … … 116 116 const QuestEffect* getFailEffect(unsigned int index) const; //!< Returns the fail QuestEffect at the given index. 117 117 const QuestEffect* getCompleteEffect(unsigned int index) const; //!< Returns the complete QuestEffect at the given index. 118 118 119 119 /** 120 120 @brief Returns the list of fail QuestEffects. … … 123 123 inline std::list<QuestEffect*> & getFailEffectList(void) 124 124 { return this->failEffects_; } 125 125 126 126 /** 127 127 @brief Returns the list of complete QuestEffects. … … 133 133 virtual QuestStatus::Value getStatus(const PlayerInfo* player) const = 0; //!< Returns the status of the Quest for a specific player. 134 134 virtual bool setStatus(PlayerInfo* player, const QuestStatus::Value & status) = 0; //!< Changes the status for a specific player. 135 135 136 136 private: 137 137 Quest* parentQuest_; //!< Pointer to the parentquest. … … 142 142 std::list<QuestEffect*> failEffects_; //!< A list of all QuestEffects to be invoked, when the Quest has been failed. 143 143 std::list<QuestEffect*> completeEffects_; //!< A list of QuestEffects to be invoked, when the Quest has been completed. 144 144 145 145 std::list<QuestListener*> listeners_; //!< A list of QuestListeners, that listen to what exactly happens with this Quest. 146 146 147 147 bool setParentQuest(Quest* quest); //!< Sets the parentquest of the Quest. 148 148 bool addSubQuest(Quest* quest); //!< Adds a subquest to the Quest. -
code/trunk/src/orxonox/objects/quest/QuestDescription.h
r3370 r5693 35 35 #define _QuestDescription_H__ 36 36 37 #include " OrxonoxPrereqs.h"37 #include "objects/quest/QuestPrereqs.h" 38 38 39 39 #include <string> … … 47 47 This class is a description of a QuestItem. 48 48 It holds a title and a description. 49 49 50 50 Creating a QuestDescription through XML goes as follows: 51 51 52 52 <QuestDescription title="Title" description="Description Text" failMessage="You fail." completeMessage="You win!" /> 53 53 @author 54 54 Damian 'Mozork' Frick 55 55 */ 56 class _ OrxonoxExport QuestDescription : public BaseObject56 class _QuestExport QuestDescription : public BaseObject 57 57 { 58 58 // tolua_end … … 70 70 inline const std::string & getTitle(void) const 71 71 { return this->title_; } 72 72 73 73 /** 74 74 @brief Returns the description text. … … 78 78 { return this->description_; } 79 79 // tolua_end 80 80 81 81 /** 82 82 @brief Returns the fail message. … … 85 85 inline const std::string & getFailMessage(void) const 86 86 { return this->failMessage_; } 87 87 88 88 /** 89 89 @brief Returns the complete message. … … 92 92 inline const std::string & getCompleteMessage(void) const 93 93 { return this->completeMessage_; } 94 94 95 95 /** 96 96 @brief Sends a Notification displaying that a QuestHint was added. … … 99 99 inline bool sendAddHintNotification(void) const 100 100 { return notificationHelper("hint", ""); } 101 101 102 102 /** 103 103 @brief Sends a Notification displaying that a Quest was added. … … 106 106 inline bool sendAddQuestNotification(void) const 107 107 { return notificationHelper("quest", "start"); } 108 108 109 109 /** 110 110 @brief Sends a Notification displaying that a Quest was failed. … … 113 113 inline bool sendFailQuestNotification(void) const 114 114 { return notificationHelper("quest", "fail"); } 115 115 116 116 /** 117 117 @brief Sends a Notification displaying that a Quest was completed. … … 135 135 inline void setTitle(const std::string & title) 136 136 { this->title_ = title; } 137 137 138 138 /** 139 139 @brief Sets the description text. … … 149 149 inline void setFailMessage(const std::string & message) 150 150 { this->failMessage_ = message; } 151 151 152 152 /** 153 153 @brief Sets the complete message. -
code/trunk/src/orxonox/objects/quest/QuestEffect.h
r3196 r5693 26 26 * 27 27 */ 28 28 29 29 /** 30 30 @file … … 35 35 #define _QuestEffect_H__ 36 36 37 #include " OrxonoxPrereqs.h"37 #include "objects/quest/QuestPrereqs.h" 38 38 39 39 #include <list> … … 49 49 Damian 'Mozork' Frick 50 50 */ 51 class _ OrxonoxExport QuestEffect : public BaseObject51 class _QuestExport QuestEffect : public BaseObject 52 52 { 53 53 public: -
code/trunk/src/orxonox/objects/quest/QuestEffectBeacon.h
r3280 r5693 35 35 #define _QuestEffectBeacon_H__ 36 36 37 #include " OrxonoxPrereqs.h"37 #include "objects/quest/QuestPrereqs.h" 38 38 39 39 #include <list> … … 58 58 A QuestEffectBeacon can be executed a defined number of times. 59 59 A QuestEffectBeacon can be inactive or active. 60 60 61 61 Creating a QuestEffectBeacon through XML goes as follows: 62 62 63 63 <QuestEffectBeacon times=n> //Where 'n' is eighter a number >= 0, which means the QuestEffectBeacon can be executed n times. Or n = -1, which means the QuestEffectBeacon can be executed an infinite number of times. 64 64 <effects> … … 79 79 Damian 'Mozork' Frick 80 80 */ 81 class _ OrxonoxExport QuestEffectBeacon : public StaticEntity81 class _QuestExport QuestEffectBeacon : public StaticEntity 82 82 { 83 83 public: 84 84 QuestEffectBeacon(BaseObject* creator); 85 85 virtual ~QuestEffectBeacon(); 86 86 87 87 virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode); //!< Method for creating a QuestEffectBeacon object through XML. 88 88 89 89 virtual void processEvent(Event& event); //!< Processes an event for this QuestEffectBeacon. 90 90 91 91 bool execute(bool b, PlayerTrigger* trigger); //!< Executes the QuestEffects of the QuestEffectBeacon. 92 92 93 93 /** 94 94 @brief Tests whether the QuestEffectBeacon is active. … … 97 97 inline bool isActive(void) 98 98 { return this->status_ == QuestEffectBeaconStatus::Active; } 99 99 100 100 bool setActive(bool activate); //!< Set the status of the QuestEffectBeacon. 101 101 102 102 protected: 103 103 bool decrementTimes(void); //!< Decrement the number of times the QuestEffectBeacon can still be executed. 104 104 105 105 /** 106 106 @brief Returns the number of times the QUestEffectBeacon can still be executed. … … 109 109 inline const int & getTimes(void) const 110 110 { return this->times_; } 111 111 112 112 private: 113 113 static const int INFINITE_TIME = -1; //!< Constant to avoid using magic numbers. 114 114 115 115 std::list<QuestEffect*> effects_; //!< The list of QuestEffects to be invoked on the executing player. 116 116 int times_; //!< Number of times the beacon can be exectued. 117 117 QuestEffectBeaconStatus::Value status_; //!< The status of the QUestEffectBeacon, Can be eighter active or inactive. 118 118 119 119 bool setTimes(const int & n); //!< Set the number of times the QuestEffectBeacon can be executed. 120 120 bool addEffect(QuestEffect* effect); //!< Add a QuestEffect to the QuestEffectBeacon. 121 121 122 122 const QuestEffect* getEffect(unsigned int index) const; //!< Get the QuestEffect at a given index. 123 123 124 124 }; 125 125 -
code/trunk/src/orxonox/objects/quest/QuestHint.h
r3280 r5693 26 26 * 27 27 */ 28 28 29 29 /** 30 30 @file … … 35 35 #define _QuestHint_H__ 36 36 37 #include " OrxonoxPrereqs.h"37 #include "objects/quest/QuestPrereqs.h" 38 38 39 39 #include <map> … … 57 57 Consists of title and description (which is stored in a QuestDescription object) in textual form and must belong to a quest. 58 58 A QuestHint has a defined status (inactive or active, where inactive is default) for each player, which means each a QuestHint exists only once for all players, it doesn't belong to a player, it just has different states for each of them. 59 59 60 60 Creating a QuestHint through XML goes as follows: 61 61 62 62 <QuestHint id="hintId"> //Where hintId is a GUID, see http://en.wikipedia.org/wiki/Globally_Unique_Identifier#Basic_structure for more information 63 63 <QuestDesctription title="" description="" /> … … 66 66 Damian 'Mozork' Frick 67 67 */ 68 class _ OrxonoxExport QuestHint : public QuestItem68 class _QuestExport QuestHint : public QuestItem 69 69 { 70 70 -
code/trunk/src/orxonox/objects/quest/QuestItem.h
r3196 r5693 26 26 * 27 27 */ 28 28 29 29 /** 30 30 @file … … 37 37 #define _QuestItem_H__ 38 38 39 #include " OrxonoxPrereqs.h"39 #include "objects/quest/QuestPrereqs.h" 40 40 41 41 #include <string> … … 51 51 Damian 'Mozork' Frick 52 52 */ 53 class _ OrxonoxExport QuestItem : public BaseObject53 class _QuestExport QuestItem : public BaseObject 54 54 { 55 55 … … 66 66 inline const std::string & getId(void) const 67 67 { return this->id_; } 68 68 69 69 /** 70 70 @brief Returns the QuestDescription of the QuestItem. … … 78 78 protected: 79 79 void setId(const std::string & id); //!< Sets the id of the QuestItem. 80 80 81 81 /** 82 82 @brief Sets the description of the QuestItem. -
code/trunk/src/orxonox/objects/quest/QuestListener.h
r3280 r5693 35 35 #define _QuestListener_H__ 36 36 37 #include " OrxonoxPrereqs.h"37 #include "objects/quest/QuestPrereqs.h" 38 38 39 39 #include <string> … … 58 58 @brief 59 59 Provides a way to react to the starting, completing and failing of Quests. 60 60 61 61 The XML representation goes as follows: 62 62 You can use the QuestListener as if it were a Trigger or EventListener, that fires an Event when the status (depending on the set mode) of the given Quest changes. 63 63 64 64 <BaseObject> // The object that should react to the status change of a Quest. 65 65 <events> 66 <function> // Where function is the method of the object that s chould be executed. Normally this would be visibility or activity.66 <function> // Where function is the method of the object that should be executed. Normally this would be visibility or activity. 67 67 <QuestListener questId="someQuestId" mode="someMode" /> // Where someQuestId is the identifier for the Quest the QuestListener is reacting to, and someMode is the kind of status change the QUestListener reacts to (all, start, complete or fail). 68 68 </function> … … 72 72 Damian 'Mozork' Frick 73 73 */ 74 class _ OrxonoxExport QuestListener : public BaseObject74 class _QuestExport QuestListener : public BaseObject 75 75 { 76 76 public: 77 77 QuestListener(BaseObject* creator); 78 78 virtual ~QuestListener(); 79 79 80 80 virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode); //!< Method for creating a QuestListener object through XML. 81 81 82 82 static void advertiseStatusChange(std::list<QuestListener*> & listeners, const std::string & status); //!< Makes all QuestListener in the list aware that a certain status change has occured. 83 83 84 84 bool setQuestId(const std::string & id); //!< Sets the questId of the Quest the QuestListener reacts to. 85 85 bool setMode(const std::string & mode); //!< Sets the mode of the QuestListener. 86 86 87 87 std::string getMode(void); //!< Get the mode of the QuestListener. 88 89 const std::string & getQuestId(void); 88 89 const std::string & getQuestId(void); 90 90 bool execute(void); //!< Executes the QuestListener, resp. fires an Event. 91 91 92 92 private: 93 93 QuestListenerMode::Value mode_; //!< The mode of the QuestListener. 94 94 Quest* quest_; //!< A pointer to the Quest the QuestListener is reacting to. 95 95 96 96 }; 97 97 -
code/trunk/src/orxonox/objects/quest/QuestManager.cc
r3370 r5693 36 36 #include "util/Exception.h" 37 37 #include "core/CoreIncludes.h" 38 #include "core/GUIManager.h" 38 39 39 40 #include "objects/infos/PlayerInfo.h" 40 #include "objects/infos/PlayerInfo.h"41 #include "overlays/GUIOverlay.h"42 41 #include "Quest.h" 43 42 #include "QuestHint.h" … … 66 65 QuestManager::~QuestManager() 67 66 { 68 69 67 } 70 68 … … 203 201 /** 204 202 @brief 205 203 206 204 @param name 207 205 @return … … 209 207 QuestContainer* QuestManager::getQuestTree(std::string & name) 210 208 { 211 GUIOverlay* gui = NULL; 212 for (ObjectList<GUIOverlay>::iterator it = ObjectList<GUIOverlay>::begin(); it != ObjectList<GUIOverlay>::end(); ++it) 213 if (it->getGUIName() == name) 214 gui = *it; 215 216 PlayerInfo* player; 217 if(gui == NULL) 218 { 219 COUT(1) << "Error: No GUIOverlay with the given name '" << name << "' present." << std::endl; 209 PlayerInfo* player = GUIManager::getInstance().getPlayer(name); 210 if(player == NULL) 211 { 212 COUT(1) << "Error: GUIOverlay with name '" << name << "' has no player." << std::endl; 220 213 return NULL; 221 214 } 222 BaseObject* obj = gui->getOwner(); 223 if(obj == NULL) 224 { 225 COUT(1) << "Error: GUIOverlay has no owner. " << std::endl; 226 return NULL; 227 } 228 player = orxonox_cast<PlayerInfo*>(obj); 229 215 230 216 QuestContainer* root = NULL; 231 217 QuestContainer* current = NULL; 232 218 233 219 std::list<Quest*>* rootQuests = new std::list<Quest*>(); 234 220 getRootQuests(player, *rootQuests); 235 221 236 222 for(std::list<Quest*>::iterator it = rootQuests->begin(); it != rootQuests->end(); it++) 237 223 { … … 246 232 current->next = container; 247 233 } 248 234 249 235 current = container; 250 236 … … 260 246 /** 261 247 @brief 262 248 263 249 @param player 264 250 @param list … … 279 265 /** 280 266 @brief 281 267 282 268 @param quest 283 269 @param player … … 310 296 COUT(1) << "An error occurred. A Quest of un-specified status wanted to be displayed." << std::endl; 311 297 } 312 298 313 299 std::list<Quest*> quests = quest->getSubQuestList(); 314 300 QuestContainer* current = NULL; … … 329 315 current->next = subContainer; 330 316 } 331 317 332 318 current = subContainer; 333 319 } … … 336 322 current->next = NULL; 337 323 container->subQuests = first; 338 324 339 325 return container; 340 326 } … … 342 328 /** 343 329 @brief 344 330 345 331 @param quest 346 332 @param player … … 368 354 current->next = hint; 369 355 } 370 356 371 357 current = hint; 372 358 } -
code/trunk/src/orxonox/objects/quest/QuestManager.h
r3370 r5693 35 35 #define _QuestManager_H__ 36 36 37 #include " OrxonoxPrereqs.h"37 #include "objects/quest/QuestPrereqs.h" 38 38 39 39 #include <list> … … 41 41 #include <string> 42 42 43 #include "util/S ingleton.h"43 #include "util/ScopedSingleton.h" 44 44 #include "core/OrxonoxClass.h" 45 45 … … 66 66 }; 67 67 68 typedef ScopedSingleton<QuestManager, ScopeID::GSLevel> ScopedSingletonQuestManagerGSLevel; // workaround for tolua 69 68 70 /** 69 71 @brief … … 73 75 Damian 'Mozork' Frick 74 76 */ 75 class _ OrxonoxExport QuestManager : public Singleton<QuestManager>, public orxonox::OrxonoxClass77 class _QuestExport QuestManager : public ScopedSingletonQuestManagerGSLevel, public orxonox::OrxonoxClass 76 78 { 77 79 // tolua_end 78 friend class S ingleton<QuestManager>;80 friend class ScopedSingleton<QuestManager, ScopeID::GSLevel>; 79 81 public: 80 82 QuestManager(); … … 82 84 83 85 //! Returns a reference to the single instance of the Quest Manager. 84 static QuestManager& getInstance() { return S ingleton<QuestManager>::getInstance(); } // tolua_export86 static QuestManager& getInstance() { return ScopedSingleton<QuestManager, ScopeID::GSLevel>::getInstance(); } // tolua_export 85 87 86 88 bool registerQuest(Quest* quest); //!< Registers a Quest in the QuestManager. -
code/trunk/src/orxonox/objects/quest/QuestNotification.h
r3196 r5693 26 26 * 27 27 */ 28 28 29 29 #ifndef _QuestNotification_H__ 30 30 #define _QuestNotification_H__ 31 31 32 #include " OrxonoxPrereqs.h"32 #include "objects/quest/QuestPrereqs.h" 33 33 34 34 #include <string> 35 #include " overlays/notifications/Notification.h"35 #include "notifications/Notification.h" 36 36 37 37 namespace orxonox { … … 39 39 /** 40 40 @brief 41 41 42 42 @author 43 43 Damian 'Mozork' Frick 44 44 */ 45 class _ OrxonoxExport QuestNotification : public Notification45 class _QuestExport QuestNotification : public Notification 46 46 { 47 47 public: … … 49 49 QuestNotification(const std::string & message); 50 50 virtual ~QuestNotification(); 51 51 52 52 bool send(void); 53 53 54 54 private: 55 55 static const std::string SENDER; 56 56 57 57 void initialize(void); 58 58 59 59 }; 60 60 -
code/trunk/src/orxonox/objects/weaponsystem/CMakeLists.txt
r3053 r5693 8 8 WeaponSystem.cc 9 9 DefaultWeaponmodeLink.cc 10 ) 11 12 SET_SOURCE_FILES(WEAPONSYSTEM_SRC_FILES 10 13 MuzzleFlash.cc 11 14 ) … … 14 17 ADD_SUBDIRECTORY(projectiles) 15 18 ADD_SUBDIRECTORY(weaponmodes) 19 20 ORXONOX_ADD_LIBRARY(weaponsystem 21 MODULE 22 DEFINE_SYMBOL 23 "WEAPONSYSTEM_SHARED_BUILD" 24 LINK_LIBRARIES 25 orxonox 26 SOURCE_FILES ${WEAPONSYSTEM_SRC_FILES} 27 ) -
code/trunk/src/orxonox/objects/weaponsystem/MuzzleFlash.h
r3196 r5693 30 30 #define _MuzzleFlash_H__ 31 31 32 #include " OrxonoxPrereqs.h"32 #include "objects/weaponsystem/WeaponsystemPrereqs.h" 33 33 34 34 #include "tools/Timer.h" … … 37 37 namespace orxonox 38 38 { 39 class _ OrxonoxExport MuzzleFlash : public Billboard39 class _WeaponsystemExport MuzzleFlash : public Billboard 40 40 { 41 41 public: -
code/trunk/src/orxonox/objects/weaponsystem/munitions/CMakeLists.txt
r3053 r5693 1 ADD_SOURCE_FILES( ORXONOX_SRC_FILES1 ADD_SOURCE_FILES(WEAPONSYSTEM_SRC_FILES 2 2 ReplenishingMunition.cc 3 3 LaserMunition.cc -
code/trunk/src/orxonox/objects/weaponsystem/munitions/FusionMunition.h
r3053 r5693 30 30 #define _FusionMunition_H__ 31 31 32 #include " OrxonoxPrereqs.h"32 #include "objects/weaponsystem/WeaponsystemPrereqs.h" 33 33 #include "objects/weaponsystem/Munition.h" 34 34 35 35 namespace orxonox 36 36 { 37 class _ OrxonoxExport FusionMunition : public Munition37 class _WeaponsystemExport FusionMunition : public Munition 38 38 { 39 39 public: -
code/trunk/src/orxonox/objects/weaponsystem/munitions/LaserMunition.h
r3053 r5693 30 30 #define _LaserMunition_H__ 31 31 32 #include " OrxonoxPrereqs.h"32 #include "objects/weaponsystem/WeaponsystemPrereqs.h" 33 33 #include "ReplenishingMunition.h" 34 34 35 35 namespace orxonox 36 36 { 37 class _ OrxonoxExport LaserMunition : public ReplenishingMunition37 class _WeaponsystemExport LaserMunition : public ReplenishingMunition 38 38 { 39 39 public: -
code/trunk/src/orxonox/objects/weaponsystem/munitions/ReplenishingMunition.h
r3196 r5693 30 30 #define _ReplenishingMunition_H__ 31 31 32 #include " OrxonoxPrereqs.h"32 #include "objects/weaponsystem/WeaponsystemPrereqs.h" 33 33 34 34 #include "tools/Timer.h" … … 37 37 namespace orxonox 38 38 { 39 class _ OrxonoxExport ReplenishingMunition : public Munition39 class _WeaponsystemExport ReplenishingMunition : public Munition 40 40 { 41 41 public: -
code/trunk/src/orxonox/objects/weaponsystem/projectiles/BillboardProjectile.h
r3196 r5693 30 30 #define _BillboardProjectile_H__ 31 31 32 #include " OrxonoxPrereqs.h"32 #include "objects/weaponsystem/WeaponsystemPrereqs.h" 33 33 34 34 #include "util/Math.h" … … 38 38 namespace orxonox 39 39 { 40 class _ OrxonoxExport BillboardProjectile : public Projectile40 class _WeaponsystemExport BillboardProjectile : public Projectile 41 41 { 42 42 public: -
code/trunk/src/orxonox/objects/weaponsystem/projectiles/CMakeLists.txt
r3053 r5693 1 ADD_SOURCE_FILES( ORXONOX_SRC_FILES1 ADD_SOURCE_FILES(WEAPONSYSTEM_SRC_FILES 2 2 BillboardProjectile.cc 3 3 ParticleProjectile.cc -
code/trunk/src/orxonox/objects/weaponsystem/projectiles/LightningGunProjectile.h
r3196 r5693 30 30 #define _LightningGunProjectile_H__ 31 31 32 #include " OrxonoxPrereqs.h"32 #include "objects/weaponsystem/WeaponsystemPrereqs.h" 33 33 34 34 #include <string> … … 38 38 namespace orxonox 39 39 { 40 class _ OrxonoxExport LightningGunProjectile : public BillboardProjectile40 class _WeaponsystemExport LightningGunProjectile : public BillboardProjectile 41 41 { 42 42 public: 43 43 LightningGunProjectile(BaseObject* creator); 44 44 virtual ~LightningGunProjectile() {} 45 45 46 46 virtual void setMaterial(const std::string& material); 47 47 48 48 protected: 49 void changeTexture(); 49 void changeTexture(); 50 50 unsigned int textureIndex_; 51 51 unsigned int maxTextureIndex_; -
code/trunk/src/orxonox/objects/weaponsystem/projectiles/ParticleProjectile.h
r3196 r5693 30 30 #define _ParticleProjectile_H__ 31 31 32 #include " OrxonoxPrereqs.h"32 #include "objects/weaponsystem/WeaponsystemPrereqs.h" 33 33 #include "BillboardProjectile.h" 34 34 35 35 namespace orxonox 36 36 { 37 class _ OrxonoxExport ParticleProjectile : public BillboardProjectile37 class _WeaponsystemExport ParticleProjectile : public BillboardProjectile 38 38 { 39 39 public: -
code/trunk/src/orxonox/objects/weaponsystem/projectiles/Projectile.h
r3196 r5693 30 30 #define _Projectile_H__ 31 31 32 #include " OrxonoxPrereqs.h"32 #include "objects/weaponsystem/WeaponsystemPrereqs.h" 33 33 34 34 #include "tools/Timer.h" … … 38 38 namespace orxonox 39 39 { 40 class _ OrxonoxExport Projectile : public MovableEntity, public PawnListener40 class _WeaponsystemExport Projectile : public MovableEntity, public PawnListener 41 41 { 42 42 public: -
code/trunk/src/orxonox/objects/weaponsystem/weaponmodes/CMakeLists.txt
r3053 r5693 1 ADD_SOURCE_FILES( ORXONOX_SRC_FILES1 ADD_SOURCE_FILES(WEAPONSYSTEM_SRC_FILES 2 2 EnergyDrink.cc 3 3 FusionFire.cc -
code/trunk/src/orxonox/objects/weaponsystem/weaponmodes/EnergyDrink.h
r3196 r5693 30 30 #define _EnergyDrink_H__ 31 31 32 #include " OrxonoxPrereqs.h"32 #include "objects/weaponsystem/WeaponsystemPrereqs.h" 33 33 34 34 #include <string> … … 38 38 namespace orxonox 39 39 { 40 class _ OrxonoxExport EnergyDrink : public WeaponMode40 class _WeaponsystemExport EnergyDrink : public WeaponMode 41 41 { 42 42 public: -
code/trunk/src/orxonox/objects/weaponsystem/weaponmodes/FusionFire.h
r3053 r5693 30 30 #define _FusionFire_H__ 31 31 32 #include " OrxonoxPrereqs.h"32 #include "objects/weaponsystem/WeaponsystemPrereqs.h" 33 33 #include "objects/weaponsystem/WeaponMode.h" 34 34 35 35 namespace orxonox 36 36 { 37 class _ OrxonoxExport FusionFire : public WeaponMode37 class _WeaponsystemExport FusionFire : public WeaponMode 38 38 { 39 39 public: -
code/trunk/src/orxonox/objects/weaponsystem/weaponmodes/HsW01.h
r3196 r5693 30 30 #define _HsW01_H__ 31 31 32 #include " OrxonoxPrereqs.h"32 #include "objects/weaponsystem/WeaponsystemPrereqs.h" 33 33 34 34 #include "tools/Timer.h" … … 37 37 namespace orxonox 38 38 { 39 class _ OrxonoxExport HsW01 : public WeaponMode39 class _WeaponsystemExport HsW01 : public WeaponMode 40 40 { 41 41 public: -
code/trunk/src/orxonox/objects/weaponsystem/weaponmodes/LaserFire.h
r3053 r5693 30 30 #define _LaserFire_H__ 31 31 32 #include " OrxonoxPrereqs.h"32 #include "objects/weaponsystem/WeaponsystemPrereqs.h" 33 33 #include "objects/weaponsystem/WeaponMode.h" 34 34 35 35 namespace orxonox 36 36 { 37 class _ OrxonoxExport LaserFire : public WeaponMode37 class _WeaponsystemExport LaserFire : public WeaponMode 38 38 { 39 39 public: -
code/trunk/src/orxonox/objects/weaponsystem/weaponmodes/LightningGun.h
r3053 r5693 30 30 #define _LightningGun_H__ 31 31 32 #include " OrxonoxPrereqs.h"32 #include "objects/weaponsystem/WeaponsystemPrereqs.h" 33 33 #include "objects/weaponsystem/WeaponMode.h" 34 34 35 35 namespace orxonox 36 36 { 37 class _ OrxonoxExport LightningGun : public WeaponMode37 class _WeaponsystemExport LightningGun : public WeaponMode 38 38 { 39 39 public: -
code/trunk/src/orxonox/objects/worldentities/Backlight.h
r3196 r5693 33 33 34 34 #include <string> 35 #include " interfaces/TimeFactorListener.h"35 #include "tools/interfaces/TimeFactorListener.h" 36 36 #include "FadingBillboard.h" 37 37 -
code/trunk/src/orxonox/objects/worldentities/BlinkingBillboard.h
r3196 r5693 33 33 34 34 #include "util/Math.h" 35 #include " interfaces/Tickable.h"35 #include "tools/interfaces/Tickable.h" 36 36 #include "Billboard.h" 37 37 -
code/trunk/src/orxonox/objects/worldentities/Camera.h
r3196 r5693 33 33 34 34 #include "util/OgreForwardRefs.h" 35 #include " interfaces/Tickable.h"35 #include "tools/interfaces/Tickable.h" 36 36 #include "objects/worldentities/StaticEntity.h" 37 37 -
code/trunk/src/orxonox/objects/worldentities/FadingBillboard.h
r3196 r5693 34 34 #include "util/Math.h" 35 35 #include "tools/Timer.h" 36 #include " interfaces/Tickable.h"36 #include "tools/interfaces/Tickable.h" 37 37 #include "Billboard.h" 38 38 -
code/trunk/src/orxonox/objects/worldentities/ForceField.h
r3196 r5693 33 33 #include "OrxonoxPrereqs.h" 34 34 35 #include " interfaces/Tickable.h"35 #include "tools/interfaces/Tickable.h" 36 36 #include "StaticEntity.h" 37 37 … … 43 43 ForceField(BaseObject* creator); 44 44 virtual ~ForceField(); 45 virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode); //!< Method for creating a CheckPoint object through XML.45 virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode); 46 46 virtual void tick(float dt); 47 47 48 48 inline void setVelocity(float vel) 49 49 { this->velocity_ = vel; } 50 50 51 51 inline float getVelocity() 52 52 { return velocity_; } 53 53 54 54 inline void setDiameter(float diam) 55 55 { this->diameter_ = diam; } … … 57 57 inline float getDiameter() 58 58 { return diameter_; } 59 59 60 60 inline void setLength(float l) 61 61 { this->length_ = l; } -
code/trunk/src/orxonox/objects/worldentities/MobileEntity.h
r3196 r5693 33 33 34 34 #include "util/Math.h" 35 #include " interfaces/Tickable.h"35 #include "tools/interfaces/Tickable.h" 36 36 #include "WorldEntity.h" 37 37 -
code/trunk/src/orxonox/objects/worldentities/triggers/PlayerTrigger.h
r3280 r5693 52 52 PlayerTrigger(BaseObject* creator); 53 53 virtual ~PlayerTrigger(); 54 54 55 55 virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode); //!< Method for creating a PlayerTrigger object through XML. 56 56 57 57 /** 58 58 @brief Returns the player that triggered the PlayerTrigger. … … 61 61 inline Pawn* getTriggeringPlayer(void) const 62 62 { return this->player_; } 63 63 64 64 /** 65 65 @brief Checks whether the PlayerTrigger normally returns a ControllableEntity. … … 68 68 inline bool isForPlayer(void) const 69 69 { return this->isForPlayer_; } 70 70 71 71 protected: 72 72 virtual bool isTriggered(TriggerMode::Value mode) = 0; 73 73 74 74 /** 75 75 @brief Set the player that triggered the PlayerTrigger. This is normally done by classes inheriting vom PlayerTrigger. … … 81 81 /** 82 82 @brief Set whether the PlayerTrigger normally is triggered by ControllableEntities. 83 @param isForPlayer Should be true when the PlayerTrigger s chould be set to normally be triggered by ControllableEntities, false if not.83 @param isForPlayer Should be true when the PlayerTrigger should be set to normally be triggered by ControllableEntities, false if not. 84 84 */ 85 85 inline void setForPlayer(bool isForPlayer) 86 86 { this->isForPlayer_ = isForPlayer; } 87 87 88 88 private: 89 89 Pawn* player_; //!< The player that triggered the PlayerTrigger. 90 bool isForPlayer_; //!< Is true when the PlayerTrigger s chould be set to normally be triggered by ControllableEntities.91 90 bool isForPlayer_; //!< Is true when the PlayerTrigger should be set to normally be triggered by ControllableEntities. 91 92 92 }; 93 93 -
code/trunk/src/orxonox/objects/worldentities/triggers/Trigger.h
r3280 r5693 36 36 37 37 #include "tools/BillboardSet.h" 38 #include " interfaces/Tickable.h"38 #include "tools/interfaces/Tickable.h" 39 39 #include "objects/worldentities/StaticEntity.h" 40 40 -
code/trunk/src/orxonox/overlays/CMakeLists.txt
r3099 r5693 2 2 OrxonoxOverlay.cc 3 3 OverlayGroup.cc 4 ) 5 6 SET_SOURCE_FILES(OVERLAYS_SRC_FILES 4 7 OverlayText.cc 5 8 FadeoutText.cc … … 7 10 ) 8 11 9 ADD_SUBDIRECTORY(console)10 12 ADD_SUBDIRECTORY(debug) 11 13 ADD_SUBDIRECTORY(hud) 12 ADD_SUBDIRECTORY(map)13 ADD_SUBDIRECTORY(notifications)14 14 ADD_SUBDIRECTORY(stats) 15 15 16 ORXONOX_ADD_LIBRARY(overlays 17 MODULE 18 FIND_HEADER_FILES 19 DEFINE_SYMBOL 20 "OVERLAYS_SHARED_BUILD" 21 PCH_FILE 22 ../OrxonoxPrecompiledHeaders.h 23 LINK_LIBRARIES 24 orxonox 25 SOURCE_FILES ${OVERLAYS_SRC_FILES} 26 ) -
code/trunk/src/orxonox/overlays/FadeoutText.h
r3196 r5693 30 30 #define _FadeoutText_H__ 31 31 32 #include " OrxonoxPrereqs.h"32 #include "overlays/OverlaysPrereqs.h" 33 33 34 34 #include "tools/Timer.h" 35 #include " interfaces/Tickable.h"35 #include "tools/interfaces/Tickable.h" 36 36 #include "overlays/OverlayText.h" 37 37 38 38 namespace orxonox 39 39 { 40 class _O rxonoxExport FadeoutText : public OverlayText, public Tickable40 class _OverlaysExport FadeoutText : public OverlayText, public Tickable 41 41 { 42 42 public: -
code/trunk/src/orxonox/overlays/GUIOverlay.cc
r3370 r5693 36 36 #include "core/GUIManager.h" 37 37 #include "core/XMLPort.h" 38 #include "objects/infos/PlayerInfo.h" 38 39 39 40 namespace orxonox … … 79 80 } 80 81 82 void GUIOverlay::setGUIName(const std::string& name) 83 { 84 this->guiName_ = name; 85 GUIManager::getInstance().setPlayer(name, orxonox_cast<PlayerInfo*>(this->getOwner())); 86 } 81 87 } -
code/trunk/src/orxonox/overlays/GUIOverlay.h
r3196 r5693 30 30 #define _GUIOverlay_H__ 31 31 32 #include " OrxonoxPrereqs.h"32 #include "overlays/OverlaysPrereqs.h" 33 33 34 34 #include <string> … … 37 37 namespace orxonox 38 38 { 39 class _O rxonoxExport GUIOverlay : public OrxonoxOverlay39 class _OverlaysExport GUIOverlay : public OrxonoxOverlay 40 40 { 41 41 public: … … 46 46 virtual void XMLPort(Element& xmlElement, XMLPort::Mode mode); 47 47 48 inline void setGUIName(const std::string& name) { this->guiName_ = name; }48 void setGUIName(const std::string& name); 49 49 inline const std::string& getGUIName() const { return this->guiName_; } 50 50 -
code/trunk/src/orxonox/overlays/OverlayText.h
r3196 r5693 30 30 #define _OverlayText_H__ 31 31 32 #include " OrxonoxPrereqs.h"32 #include "overlays/OverlaysPrereqs.h" 33 33 34 34 #include <string> … … 39 39 namespace orxonox 40 40 { 41 class _O rxonoxExport OverlayText : public OrxonoxOverlay41 class _OverlaysExport OverlayText : public OrxonoxOverlay 42 42 { 43 43 public: -
code/trunk/src/orxonox/overlays/debug/CMakeLists.txt
r2710 r5693 1 ADD_SOURCE_FILES(O RXONOX_SRC_FILES1 ADD_SOURCE_FILES(OVERLAYS_SRC_FILES 2 2 DebugFPSText.cc 3 3 DebugRTRText.cc -
code/trunk/src/orxonox/overlays/debug/DebugFPSText.h
r3196 r5693 30 30 #define _DebugFPSText_H__ 31 31 32 #include " OrxonoxPrereqs.h"32 #include "overlays/OverlaysPrereqs.h" 33 33 34 #include " interfaces/Tickable.h"34 #include "tools/interfaces/Tickable.h" 35 35 #include "overlays/OverlayText.h" 36 36 37 37 namespace orxonox 38 38 { 39 class _O rxonoxExport DebugFPSText : public OverlayText, public Tickable39 class _OverlaysExport DebugFPSText : public OverlayText, public Tickable 40 40 { 41 41 public: -
code/trunk/src/orxonox/overlays/debug/DebugRTRText.h
r3196 r5693 30 30 #define _DebugRTRText_H__ 31 31 32 #include " OrxonoxPrereqs.h"32 #include "overlays/OverlaysPrereqs.h" 33 33 34 #include " interfaces/Tickable.h"34 #include "tools/interfaces/Tickable.h" 35 35 #include "overlays/OverlayText.h" 36 36 37 37 namespace orxonox 38 38 { 39 class _O rxonoxExport DebugRTRText : public OverlayText, public Tickable39 class _OverlaysExport DebugRTRText : public OverlayText, public Tickable 40 40 { 41 41 public: -
code/trunk/src/orxonox/overlays/hud/AnnounceMessage.h
r3196 r5693 30 30 #define _AnnounceMessage_H__ 31 31 32 #include " OrxonoxPrereqs.h"32 #include "overlays/OverlaysPrereqs.h" 33 33 34 34 #include "interfaces/GametypeMessageListener.h" … … 37 37 namespace orxonox 38 38 { 39 class _O rxonoxExport AnnounceMessage : public FadeoutText, public GametypeMessageListener39 class _OverlaysExport AnnounceMessage : public FadeoutText, public GametypeMessageListener 40 40 { 41 41 public: -
code/trunk/src/orxonox/overlays/hud/CMakeLists.txt
r3104 r5693 1 ADD_SOURCE_FILES(O RXONOX_SRC_FILES1 ADD_SOURCE_FILES(OVERLAYS_SRC_FILES 2 2 HUDBar.cc 3 3 HUDNavigation.cc -
code/trunk/src/orxonox/overlays/hud/ChatOverlay.h
r3196 r5693 30 30 #define _ChatOverlay_H__ 31 31 32 #include " OrxonoxPrereqs.h"32 #include "overlays/OverlaysPrereqs.h" 33 33 34 34 #include <list> … … 40 40 namespace orxonox 41 41 { 42 class _O rxonoxExport ChatOverlay : public OverlayText, public ChatListener42 class _OverlaysExport ChatOverlay : public OverlayText, public ChatListener 43 43 { 44 44 public: -
code/trunk/src/orxonox/overlays/hud/DeathMessage.h
r3196 r5693 30 30 #define _DeathMessage_H__ 31 31 32 #include " OrxonoxPrereqs.h"32 #include "overlays/OverlaysPrereqs.h" 33 33 34 34 #include "interfaces/GametypeMessageListener.h" … … 37 37 namespace orxonox 38 38 { 39 class _O rxonoxExport DeathMessage : public FadeoutText, public GametypeMessageListener39 class _OverlaysExport DeathMessage : public FadeoutText, public GametypeMessageListener 40 40 { 41 41 public: -
code/trunk/src/orxonox/overlays/hud/GametypeStatus.h
r3196 r5693 30 30 #define _GametypeStatus_H__ 31 31 32 #include " OrxonoxPrereqs.h"32 #include "overlays/OverlaysPrereqs.h" 33 33 34 #include " interfaces/Tickable.h"34 #include "tools/interfaces/Tickable.h" 35 35 #include "overlays/OverlayText.h" 36 36 37 37 namespace orxonox 38 38 { 39 class _O rxonoxExport GametypeStatus : public OverlayText, public Tickable39 class _OverlaysExport GametypeStatus : public OverlayText, public Tickable 40 40 { 41 41 public: -
code/trunk/src/orxonox/overlays/hud/HUDBar.h
r3196 r5693 32 32 #define _HUDBar_H__ 33 33 34 #include " OrxonoxPrereqs.h"34 #include "overlays/OverlaysPrereqs.h" 35 35 36 36 #include <map> … … 44 44 namespace orxonox 45 45 { 46 class _O rxonoxExport BarColour : public BaseObject46 class _OverlaysExport BarColour : public BaseObject 47 47 { 48 48 public: … … 64 64 65 65 66 class _O rxonoxExport HUDBar : public OrxonoxOverlay66 class _OverlaysExport HUDBar : public OrxonoxOverlay 67 67 { 68 68 public: -
code/trunk/src/orxonox/overlays/hud/HUDHealthBar.h
r3196 r5693 30 30 #define _HUDHealthBar_H__ 31 31 32 #include " OrxonoxPrereqs.h"32 #include "overlays/OverlaysPrereqs.h" 33 33 34 34 #include "util/Math.h" 35 #include " interfaces/Tickable.h"35 #include "tools/interfaces/Tickable.h" 36 36 #include "overlays/OverlayText.h" 37 37 #include "HUDBar.h" … … 39 39 namespace orxonox 40 40 { 41 class _O rxonoxExport HUDHealthBar : public HUDBar, public Tickable41 class _OverlaysExport HUDHealthBar : public HUDBar, public Tickable 42 42 { 43 43 public: -
code/trunk/src/orxonox/overlays/hud/HUDNavigation.h
r3196 r5693 30 30 #define _HUDNavigation_H__ 31 31 32 #include " OrxonoxPrereqs.h"32 #include "overlays/OverlaysPrereqs.h" 33 33 34 34 #include "util/OgreForwardRefs.h" 35 #include " interfaces/Tickable.h"35 #include "tools/interfaces/Tickable.h" 36 36 #include "overlays/OrxonoxOverlay.h" 37 37 38 38 namespace orxonox 39 39 { 40 class _O rxonoxExport HUDNavigation : public OrxonoxOverlay, public Tickable40 class _OverlaysExport HUDNavigation : public OrxonoxOverlay, public Tickable 41 41 { 42 42 public: -
code/trunk/src/orxonox/overlays/hud/HUDRadar.h
r3196 r5693 31 31 #define _HUDRadar_H__ 32 32 33 #include " OrxonoxPrereqs.h"33 #include "overlays/OverlaysPrereqs.h" 34 34 35 35 #include <map> … … 43 43 namespace orxonox 44 44 { 45 class _O rxonoxExport HUDRadar : public OrxonoxOverlay, public RadarListener45 class _OverlaysExport HUDRadar : public OrxonoxOverlay, public RadarListener 46 46 { 47 47 public: -
code/trunk/src/orxonox/overlays/hud/HUDSpeedBar.h
r3196 r5693 31 31 #define _HUDSpeedBar_H__ 32 32 33 #include " OrxonoxPrereqs.h"33 #include "overlays/OverlaysPrereqs.h" 34 34 35 #include " interfaces/Tickable.h"35 #include "tools/interfaces/Tickable.h" 36 36 #include "HUDBar.h" 37 37 38 38 namespace orxonox 39 39 { 40 class _O rxonoxExport HUDSpeedBar : public HUDBar, public Tickable40 class _OverlaysExport HUDSpeedBar : public HUDBar, public Tickable 41 41 { 42 42 public: -
code/trunk/src/orxonox/overlays/hud/HUDTimer.h
r3196 r5693 30 30 #define _HUDTimer_H__ 31 31 32 #include " OrxonoxPrereqs.h"32 #include "overlays/OverlaysPrereqs.h" 33 33 34 #include " interfaces/Tickable.h"34 #include "tools/interfaces/Tickable.h" 35 35 #include "overlays/OverlayText.h" 36 36 37 37 namespace orxonox 38 38 { 39 class _O rxonoxExport HUDTimer : public OverlayText, public Tickable39 class _OverlaysExport HUDTimer : public OverlayText, public Tickable 40 40 { 41 41 public: -
code/trunk/src/orxonox/overlays/hud/KillMessage.h
r3196 r5693 30 30 #define _KillMessage_H__ 31 31 32 #include " OrxonoxPrereqs.h"32 #include "overlays/OverlaysPrereqs.h" 33 33 34 34 #include "interfaces/GametypeMessageListener.h" … … 37 37 namespace orxonox 38 38 { 39 class _O rxonoxExport KillMessage : public FadeoutText, public GametypeMessageListener39 class _OverlaysExport KillMessage : public FadeoutText, public GametypeMessageListener 40 40 { 41 41 public: -
code/trunk/src/orxonox/overlays/hud/PongScore.h
r3196 r5693 30 30 #define _PongScore_H__ 31 31 32 #include " OrxonoxPrereqs.h"32 #include "overlays/OverlaysPrereqs.h" 33 33 34 #include " interfaces/Tickable.h"34 #include "tools/interfaces/Tickable.h" 35 35 #include "overlays/OverlayText.h" 36 36 37 37 namespace orxonox 38 38 { 39 class _O rxonoxExport PongScore : public OverlayText, public Tickable39 class _OverlaysExport PongScore : public OverlayText, public Tickable 40 40 { 41 41 public: -
code/trunk/src/orxonox/overlays/hud/TeamBaseMatchScore.h
r3196 r5693 30 30 #define _TeamBaseMatchScore_H__ 31 31 32 #include " OrxonoxPrereqs.h"32 #include "overlays/OverlaysPrereqs.h" 33 33 34 #include " interfaces/Tickable.h"34 #include "tools/interfaces/Tickable.h" 35 35 #include "overlays/OverlayText.h" 36 36 37 37 namespace orxonox 38 38 { 39 class _O rxonoxExport TeamBaseMatchScore : public OverlayText, public Tickable39 class _OverlaysExport TeamBaseMatchScore : public OverlayText, public Tickable 40 40 { 41 41 public: -
code/trunk/src/orxonox/overlays/hud/UnderAttackHealthBar.h
r3196 r5693 30 30 #define _UnderAttackHealthBar_H__ 31 31 32 #include " OrxonoxPrereqs.h"32 #include "overlays/OverlaysPrereqs.h" 33 33 34 34 #include "util/Math.h" … … 38 38 namespace orxonox 39 39 { 40 class _O rxonoxExport UnderAttackHealthBar : public HUDHealthBar40 class _OverlaysExport UnderAttackHealthBar : public HUDHealthBar 41 41 { 42 42 public: -
code/trunk/src/orxonox/overlays/stats/CMakeLists.txt
r3196 r5693 1 ADD_SOURCE_FILES(O RXONOX_SRC_FILES1 ADD_SOURCE_FILES(OVERLAYS_SRC_FILES 2 2 CreateLines.cc 3 3 Scoreboard.cc -
code/trunk/src/orxonox/overlays/stats/CreateLines.h
r3196 r5693 28 28 #define _CreateLines_H__ 29 29 30 #include " OrxonoxPrereqs.h"30 #include "overlays/OverlaysPrereqs.h" 31 31 32 32 namespace orxonox 33 33 { 34 class _O rxonoxExport CreateLines34 class _OverlaysExport CreateLines 35 35 { 36 36 -
code/trunk/src/orxonox/overlays/stats/Scoreboard.h
r3196 r5693 29 29 30 30 31 #include " OrxonoxPrereqs.h"31 #include "overlays/OverlaysPrereqs.h" 32 32 33 33 #include <string> 34 34 #include <vector> 35 #include " interfaces/Tickable.h"35 #include "tools/interfaces/Tickable.h" 36 36 #include "overlays/OrxonoxOverlay.h" 37 37 38 38 namespace orxonox 39 39 { 40 class _O rxonoxExport Scoreboard : public OrxonoxOverlay, public Tickable40 class _OverlaysExport Scoreboard : public OrxonoxOverlay, public Tickable 41 41 { 42 42 public: // functions -
code/trunk/src/orxonox/overlays/stats/Stats.h
r3196 r5693 30 30 #define _Stats_H__ 31 31 32 #include " OrxonoxPrereqs.h"32 #include "overlays/OverlaysPrereqs.h" 33 33 34 34 #include "util/OgreForwardRefs.h" 35 #include " interfaces/Tickable.h"35 #include "tools/interfaces/Tickable.h" 36 36 #include "overlays/OrxonoxOverlay.h" 37 37 38 38 namespace orxonox 39 39 { 40 class _O rxonoxExport Stats : public OrxonoxOverlay, public Tickable40 class _OverlaysExport Stats : public OrxonoxOverlay, public Tickable 41 41 { 42 42 public: // functions -
code/trunk/src/orxonox/sound/SoundBase.h
r3196 r5693 35 35 { 36 36 /** 37 * The Sou dBase class is the base class for all sound file loader classes.37 * The SoundBase class is the base class for all sound file loader classes. 38 38 * It server as main interface to the OpenAL library. 39 39 * -
code/trunk/src/orxonox/sound/SoundManager.h
r3370 r5693 33 33 #include <list> 34 34 #include "util/Singleton.h" 35 #include " interfaces/Tickable.h"35 #include "tools/interfaces/Tickable.h" 36 36 37 37 namespace orxonox -
code/trunk/src/orxonox/tools/BillboardSet.h
r3196 r5693 30 30 #define _BillboardSet_H__ 31 31 32 #include " OrxonoxPrereqs.h"32 #include "tools/ToolsPrereqs.h" 33 33 #include "util/OgreForwardRefs.h" 34 34 35 35 namespace orxonox 36 36 { 37 class _ OrxonoxExport BillboardSet37 class _ToolsExport BillboardSet 38 38 { 39 39 public: -
code/trunk/src/orxonox/tools/BulletConversions.h
r3196 r5693 30 30 #define _BulletConversions_H__ 31 31 32 #include " OrxonoxPrereqs.h"32 #include "tools/ToolsPrereqs.h" 33 33 34 34 #include "util/Convert.h" -
code/trunk/src/orxonox/tools/CMakeLists.txt
r3196 r5693 1 ADD_SOURCE_FILES( ORXONOX_SRC_FILES1 ADD_SOURCE_FILES(TOOLS_SRC_FILES 2 2 BillboardSet.cc 3 3 DynamicLines.cc … … 9 9 Timer.cc 10 10 ) 11 ADD_SUBDIRECTORY(interfaces) 12 13 ORXONOX_ADD_LIBRARY(tools 14 DEFINE_SYMBOL 15 "TOOLS_SHARED_BUILD" 16 LINK_LIBRARIES 17 core 18 SOURCE_FILES ${TOOLS_SRC_FILES} 19 ) -
code/trunk/src/orxonox/tools/DynamicLines.h
r3196 r5693 30 30 #define _DynamicLines_H__ 31 31 32 #include " OrxonoxPrereqs.h"32 #include "tools/ToolsPrereqs.h" 33 33 34 34 #include <vector> … … 37 37 namespace Ogre 38 38 { 39 class DynamicLines : public DynamicRenderable39 class _ToolsExport DynamicLines : public DynamicRenderable 40 40 { 41 41 typedef RenderOperation::OperationType OperationType; -
code/trunk/src/orxonox/tools/DynamicRenderable.h
r3196 r5693 30 30 #define _DynamicRenderable_H__ 31 31 32 #include " OrxonoxPrereqs.h"32 #include "tools/ToolsPrereqs.h" 33 33 34 34 #include <OgreSimpleRenderable.h> … … 37 37 { 38 38 /// Abstract base class providing mechanisms for dynamically growing hardware buffers. 39 class DynamicRenderable : public SimpleRenderable39 class _ToolsExport DynamicRenderable : public SimpleRenderable 40 40 { 41 41 public: -
code/trunk/src/orxonox/tools/Mesh.h
r3196 r5693 30 30 #define _Mesh_H__ 31 31 32 #include " OrxonoxPrereqs.h"32 #include "tools/ToolsPrereqs.h" 33 33 #include "util/OgreForwardRefs.h" 34 34 35 35 namespace orxonox 36 36 { 37 class _ OrxonoxExport Mesh37 class _ToolsExport Mesh 38 38 { 39 39 public: -
code/trunk/src/orxonox/tools/ParticleInterface.h
r3370 r5693 30 30 #define _ParticleInterface_H__ 31 31 32 #include " OrxonoxPrereqs.h"32 #include "tools/ToolsPrereqs.h" 33 33 34 34 #include "util/OgreForwardRefs.h" 35 #include " interfaces/TimeFactorListener.h"35 #include "tools/interfaces/TimeFactorListener.h" 36 36 37 37 #define getAllEmitters() \ … … 42 42 namespace orxonox 43 43 { 44 class _ OrxonoxExport ParticleInterface : public TimeFactorListener44 class _ToolsExport ParticleInterface : public TimeFactorListener 45 45 { 46 46 public: -
code/trunk/src/orxonox/tools/Shader.h
r3196 r5693 30 30 #define _Shader_H__ 31 31 32 #include " OrxonoxPrereqs.h"32 #include "tools/ToolsPrereqs.h" 33 33 34 34 #include <map> … … 37 37 38 38 #include "util/OgreForwardRefs.h" 39 #include " interfaces/Tickable.h"39 #include "tools/interfaces/Tickable.h" 40 40 41 41 namespace orxonox 42 42 { 43 class _ OrxonoxExport Shader : public Tickable43 class _ToolsExport Shader : public Tickable 44 44 { 45 45 typedef std::pair<bool, void*> ParameterPointer; -
code/trunk/src/orxonox/tools/TextureGenerator.h
r3196 r5693 35 35 #define _TextureGenerator_H__ 36 36 37 #include " OrxonoxPrereqs.h"37 #include "tools/ToolsPrereqs.h" 38 38 39 39 #include <map> … … 43 43 namespace orxonox 44 44 { 45 class _ OrxonoxExport TextureGenerator45 class _ToolsExport TextureGenerator 46 46 { 47 47 public: -
code/trunk/src/orxonox/tools/Timer.h
r3301 r5693 61 61 #define _Timer_H__ 62 62 63 #include " OrxonoxPrereqs.h"63 #include "tools/ToolsPrereqs.h" 64 64 65 65 #include "core/Executor.h" 66 66 #include "core/OrxonoxClass.h" 67 #include " interfaces/TimeFactorListener.h"67 #include "tools/interfaces/TimeFactorListener.h" 68 68 69 69 namespace orxonox … … 75 75 76 76 //! TimerBase is the parent of the Timer class. 77 class _ OrxonoxExport TimerBase : public TimeFactorListener77 class _ToolsExport TimerBase : public TimeFactorListener 78 78 { 79 79 public: … … 171 171 172 172 //! The StaticTimer is a callback-object, calling a static function after a given time-interval. 173 class StaticTimer : public TimerBase173 class _ToolsExport StaticTimer : public TimerBase 174 174 { 175 175 public: -
code/trunk/src/util/CMakeLists.txt
r3280 r5693 27 27 OutputBuffer.cc 28 28 OutputHandler.cc 29 Scope.cc 29 30 SignalHandler.cc 30 31 Sleep.cc
Note: See TracChangeset
for help on using the changeset viewer.