You can subscribe to this list here.
2006 |
Jan
|
Feb
|
Mar
(11) |
Apr
(47) |
May
(14) |
Jun
|
Jul
(73) |
Aug
(4) |
Sep
(2) |
Oct
(60) |
Nov
(48) |
Dec
(66) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2007 |
Jan
|
Feb
(1) |
Mar
(27) |
Apr
(82) |
May
(89) |
Jun
(91) |
Jul
(44) |
Aug
(53) |
Sep
(113) |
Oct
(20) |
Nov
(37) |
Dec
(10) |
2008 |
Jan
|
Feb
(2) |
Mar
|
Apr
(2) |
May
(21) |
Jun
(3) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(1) |
2009 |
Jan
(76) |
Feb
(89) |
Mar
(52) |
Apr
(11) |
May
(1) |
Jun
|
Jul
|
Aug
|
Sep
(1) |
Oct
|
Nov
|
Dec
(27) |
2010 |
Jan
(11) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2011 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(1) |
Aug
(9) |
Sep
|
Oct
|
Nov
|
Dec
(14) |
2012 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(1) |
Aug
(2) |
Sep
(11) |
Oct
(3) |
Nov
|
Dec
|
2013 |
Jan
(4) |
Feb
|
Mar
(2) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: <ult...@us...> - 2007-11-18 14:51:34
|
Revision: 850 http://opengate.svn.sourceforge.net/opengate/?rev=850&view=rev Author: ultrasick Date: 2007-11-18 06:51:38 -0800 (Sun, 18 Nov 2007) Log Message: ----------- corrected "amanath" -> "amananth" Modified Paths: -------------- trunk/data/misc/ids.xml Modified: trunk/data/misc/ids.xml =================================================================== (Binary files differ) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <eg...@us...> - 2007-11-18 14:45:03
|
Revision: 849 http://opengate.svn.sourceforge.net/opengate/?rev=849&view=rev Author: egore Date: 2007-11-18 06:45:04 -0800 (Sun, 18 Nov 2007) Log Message: ----------- logo 100x100 Modified Paths: -------------- templates/logos/amanath/transparent_background.png templates/logos/amanath/vectors.svg Modified: templates/logos/amanath/transparent_background.png =================================================================== (Binary files differ) Modified: templates/logos/amanath/vectors.svg =================================================================== (Binary files differ) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <eg...@us...> - 2007-11-18 14:03:50
|
Revision: 848 http://opengate.svn.sourceforge.net/opengate/?rev=848&view=rev Author: egore Date: 2007-11-18 06:03:55 -0800 (Sun, 18 Nov 2007) Log Message: ----------- drop last bits of externals Modified Paths: -------------- trunk/configure.ac Modified: trunk/configure.ac =================================================================== --- trunk/configure.ac 2007-11-18 14:00:29 UTC (rev 847) +++ trunk/configure.ac 2007-11-18 14:03:55 UTC (rev 848) @@ -87,15 +87,6 @@ echo "You can get them from http://sourceforge.net/projects/asio/" exit 1 ],[]) - -#AC_SUBST([CXXFLAGS], ["${CXXFLAGS} -I$OGSECTOR_EXTERNALS_PATH/include"]) -#AC_SUBST([CXXFLAGS], ["${CXXFLAGS} -I$OGSECTOR_EXTERNALS_PATH/ogreopcode/include"]) -#AC_SUBST([CXXFLAGS], ["${CXXFLAGS} -I$OGSECTOR_EXTERNALS_PATH/ogreopcode/opcode132"]) -#AC_SUBST([LDFLAGS], ["${LDFLAGS} -L$OGSECTOR_EXTERNALS_PATH/lib/ -lOpcode -lOgreOpcode"]) - -AC_SUBST([OgreOpcode_CFLAGS], ["-I$OGSECTOR_EXTERNALS_PATH/include -I$OGSECTOR_EXTERNALS_PATH/ogreopcode/include -I$OGSECTOR_EXTERNALS_PATH/ogreopcode/opcode132"]) -AC_SUBST([OgreOpcode_LIBS], ["-L$OGSECTOR_EXTERNALS_PATH/lib/ -lOpcode -lOgreOpcode"]) - # TODO: end fix AC_OUTPUT([ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <eg...@us...> - 2007-11-18 14:00:25
|
Revision: 847 http://opengate.svn.sourceforge.net/opengate/?rev=847&view=rev Author: egore Date: 2007-11-18 06:00:29 -0800 (Sun, 18 Nov 2007) Log Message: ----------- 2007-11-18 Christoph Brill <ego...@eg...> * runServer.sh, runClient.sh: drop unnecessary run-wrappers Modified Paths: -------------- trunk/ChangeLog Removed Paths: ------------- trunk/runClient.sh trunk/runServer.sh Modified: trunk/ChangeLog =================================================================== --- trunk/ChangeLog 2007-11-18 13:59:24 UTC (rev 846) +++ trunk/ChangeLog 2007-11-18 14:00:29 UTC (rev 847) @@ -2,6 +2,7 @@ * configure.ac: add some missing things gathered from running autoscan, drop externals stuff * src/Makefile.am: drop externals stuff + * runServer.sh, runClient.sh: drop unnecessary run-wrappers 2007-11-14 Christoph Brill <eg...@us...> * src/networkServerUser.h: fix build with boost 1.34 Deleted: trunk/runClient.sh =================================================================== --- trunk/runClient.sh 2007-11-18 13:59:24 UTC (rev 846) +++ trunk/runClient.sh 2007-11-18 14:00:29 UTC (rev 847) @@ -1,13 +0,0 @@ -#!/bin/bash - -USERNAME='player' - -HOSTNAME='localhost' - -[ $# -gt 0 ] && USERNAME=$1 - -[ $# -gt 1 ] && HOSTNAME=$2 - -export LD_LIBRARY_PATH=./externals/lib:$LD_LIBRARY_PATH - -./src/opengateclient --no-config $* Deleted: trunk/runServer.sh =================================================================== --- trunk/runServer.sh 2007-11-18 13:59:24 UTC (rev 846) +++ trunk/runServer.sh 2007-11-18 14:00:29 UTC (rev 847) @@ -1,4 +0,0 @@ -#!/bin/bash -export LD_LIBRARY_PATH=./externals/lib:$LD_LIBRARY_PATH - -./src/opengateserver This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <eg...@us...> - 2007-11-18 13:59:20
|
Revision: 846 http://opengate.svn.sourceforge.net/opengate/?rev=846&view=rev Author: egore Date: 2007-11-18 05:59:24 -0800 (Sun, 18 Nov 2007) Log Message: ----------- drop externals stuff Modified Paths: -------------- trunk/ChangeLog trunk/src/Makefile.am Modified: trunk/ChangeLog =================================================================== --- trunk/ChangeLog 2007-11-18 13:58:08 UTC (rev 845) +++ trunk/ChangeLog 2007-11-18 13:59:24 UTC (rev 846) @@ -1,6 +1,7 @@ 2007-11-18 Christoph Brill <ego...@eg...> * configure.ac: add some missing things gathered from running autoscan, drop externals stuff + * src/Makefile.am: drop externals stuff 2007-11-14 Christoph Brill <eg...@us...> * src/networkServerUser.h: fix build with boost 1.34 Modified: trunk/src/Makefile.am =================================================================== --- trunk/src/Makefile.am 2007-11-18 13:58:08 UTC (rev 845) +++ trunk/src/Makefile.am 2007-11-18 13:59:24 UTC (rev 846) @@ -79,13 +79,12 @@ $(freealut_LIBS) \ $(vorbisfile_LIBS) \ $(OIS_LIBS) \ - $(OgreOpcode_LIBS) -# -L$(OGSECTOR_EXTERNALS_PATH)/lib/ + $(ogreopcode_LIBS) opengateclient_CXXFLAGS = \ $(OGRE_CFLAGS) \ $(CEGUI_CFLAGS) \ - $(OgreOpcode_CFLAGS) + $(ogreopcode_CFLAGS) opengateserver_SOURCES = \ opengateserver.cpp \ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <eg...@us...> - 2007-11-18 13:58:03
|
Revision: 845 http://opengate.svn.sourceforge.net/opengate/?rev=845&view=rev Author: egore Date: 2007-11-18 05:58:08 -0800 (Sun, 18 Nov 2007) Log Message: ----------- drop unnecessary externals Removed Paths: ------------- trunk/externals/ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <eg...@us...> - 2007-11-18 13:57:13
|
Revision: 844 http://opengate.svn.sourceforge.net/opengate/?rev=844&view=rev Author: egore Date: 2007-11-18 05:57:18 -0800 (Sun, 18 Nov 2007) Log Message: ----------- remove externals Modified Paths: -------------- trunk/ChangeLog trunk/configure.ac Modified: trunk/ChangeLog =================================================================== --- trunk/ChangeLog 2007-11-18 13:21:07 UTC (rev 843) +++ trunk/ChangeLog 2007-11-18 13:57:18 UTC (rev 844) @@ -1,5 +1,6 @@ 2007-11-18 Christoph Brill <ego...@eg...> - * configure.ac: add some missing things gathered from running autoscan + * configure.ac: add some missing things gathered from running + autoscan, drop externals stuff 2007-11-14 Christoph Brill <eg...@us...> * src/networkServerUser.h: fix build with boost 1.34 Modified: trunk/configure.ac =================================================================== --- trunk/configure.ac 2007-11-18 13:21:07 UTC (rev 843) +++ trunk/configure.ac 2007-11-18 13:57:18 UTC (rev 844) @@ -36,20 +36,14 @@ # Check for defines AC_CHECK_TYPES([ptrdiff_t]) -# TODO: remove this part -OGSECTOR_PATH=$PWD -AC_PREFIX_DEFAULT($OGSECTOR_PATH) -OGSECTOR_EXTERNALS_PATH=$OGSECTOR_PATH/externals -AC_SUBST(OGSECTOR_EXTERNALS_PATH) -AC_SUBST(PKG_CONFIG_PATH, "$OGSECTOR_EXTERNALS_PATH/lib/pkgconfig:$PKG_CONFIG_PATH") -# TODO: end remove - -AM_PROG_LIBTOOL - PKG_CHECK_MODULES(OGRE, [OGRE >= 1.4.0]) AC_SUBST(OGRE_CFLAGS) AC_SUBST(OGRE_LIBS) +PKG_CHECK_MODULES(ogreopcode, [ogreopcode >= 0.1.0]) +AC_SUBST(ogreopcode_CFLAGS) +AC_SUBST(ogreopcode_LIBS) + PKG_CHECK_MODULES(CEGUI, [CEGUI >= 0.5.0]) AC_SUBST(CEGUI_CFLAGS) AC_SUBST(CEGUI_LIBS) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <eg...@us...> - 2007-11-18 13:21:04
|
Revision: 843 http://opengate.svn.sourceforge.net/opengate/?rev=843&view=rev Author: egore Date: 2007-11-18 05:21:07 -0800 (Sun, 18 Nov 2007) Log Message: ----------- Unnecessary copy Removed Paths: ------------- trunk/externals/ois trunk/externals/ois-1.0/ Deleted: trunk/externals/ois =================================================================== --- trunk/externals/ois 2007-11-18 11:15:08 UTC (rev 842) +++ trunk/externals/ois 2007-11-18 13:21:07 UTC (rev 843) @@ -1 +0,0 @@ -link ois-1.0 \ No newline at end of file This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <eg...@us...> - 2007-11-18 11:15:05
|
Revision: 842 http://opengate.svn.sourceforge.net/opengate/?rev=842&view=rev Author: egore Date: 2007-11-18 03:15:08 -0800 (Sun, 18 Nov 2007) Log Message: ----------- configure.ac: add some missing things gathered from running autoscan Modified Paths: -------------- trunk/ChangeLog trunk/configure.ac Modified: trunk/ChangeLog =================================================================== --- trunk/ChangeLog 2007-11-17 19:07:16 UTC (rev 841) +++ trunk/ChangeLog 2007-11-18 11:15:08 UTC (rev 842) @@ -1,4 +1,7 @@ -2007-11-14 hristoph Brill <eg...@us...> +2007-11-18 Christoph Brill <ego...@eg...> + * configure.ac: add some missing things gathered from running autoscan + +2007-11-14 Christoph Brill <eg...@us...> * src/networkServerUser.h: fix build with boost 1.34 2007-09-26 Christoph Brill <eg...@us...> Modified: trunk/configure.ac =================================================================== --- trunk/configure.ac 2007-11-17 19:07:16 UTC (rev 841) +++ trunk/configure.ac 2007-11-18 11:15:08 UTC (rev 842) @@ -15,7 +15,27 @@ AM_PROG_CC_STDC AC_HEADER_STDC AM_PROG_CC_C_O +AC_C_CONST +AC_C_INLINE +AC_C_VOLATILE +AC_FUNC_STAT +AC_FUNC_STRTOD +AC_HEADER_STDBOOL +AC_PROG_RANLIB +AC_STRUCT_TM +AC_TYPE_SIGNAL +AC_TYPE_SIZE_T +# Check for header files +AC_CHECK_HEADERS([float.h stddef.h sys/timeb.h]) + +# Checks for library functions. +AC_CHECK_FUNCS([floor ftime memmove memset pow rint socket sqrt strchr \ + strerror]) + +# Check for defines +AC_CHECK_TYPES([ptrdiff_t]) + # TODO: remove this part OGSECTOR_PATH=$PWD AC_PREFIX_DEFAULT($OGSECTOR_PATH) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <spo...@us...> - 2007-11-17 19:07:20
|
Revision: 841 http://opengate.svn.sourceforge.net/opengate/?rev=841&view=rev Author: spom_spom Date: 2007-11-17 11:07:16 -0800 (Sat, 17 Nov 2007) Log Message: ----------- add keymap Modified Paths: -------------- trunk/ogre.cfg trunk/src/Console.cpp trunk/src/Console.h trunk/src/GameStateManager.cpp trunk/src/Makefile.am trunk/src/MarketDialog.cpp trunk/src/ResourceManager.cpp trunk/src/ResourceManager.h trunk/src/SectorObjects.cpp trunk/src/SectorObjects.h trunk/src/UnDockedState.cpp trunk/src/UnDockedState.h trunk/src/metaserver.cpp trunk/src/opengateserver.cpp Added Paths: ----------- trunk/src/KeyMap.cpp trunk/src/KeyMap.h Modified: trunk/ogre.cfg =================================================================== --- trunk/ogre.cfg 2007-11-16 23:16:40 UTC (rev 840) +++ trunk/ogre.cfg 2007-11-17 19:07:16 UTC (rev 841) @@ -1,7 +1,7 @@ Render System=OpenGL Rendering Subsystem [OpenGL Rendering Subsystem] -FSAA=0 +FSAA=6 Full Screen=No RTT Preferred Mode=FBO Video Mode=1024 x 768 Modified: trunk/src/Console.cpp =================================================================== --- trunk/src/Console.cpp 2007-11-16 23:16:40 UTC (rev 840) +++ trunk/src/Console.cpp 2007-11-17 19:07:16 UTC (rev 841) @@ -23,6 +23,7 @@ #include "Console.h" #include "LogManager.h" #include "networkClient.h" +#include "KeyMap.h" #include <OgreRenderWindow.h> #include <CEGUI/elements/CEGUIEditbox.h> @@ -123,28 +124,42 @@ CEGUI::System::getSingleton().injectKeyDown( e.key ); CEGUI::System::getSingleton().injectChar( e.text ); - if ( e.key == OIS::KC_LCONTROL) resources_->setGlobalKeyModifier( KEY_LCONTROL ); - if ( e.key == OIS::KC_LSHIFT) resources_->setGlobalKeyModifier( KEY_SHIFT ); - if ( e.key == OIS::KC_RSHIFT) resources_->setGlobalKeyModifier( KEY_SHIFT ); + //** for testings + if ( e.key == OIS::KC_BACK && resources_->keymap()->globalKeyModifier( ) == KEY_LCONTROL ){ + resources_->renderWindow->setFullscreen( true, + resources_->renderWindow->getWidth(), + resources_->renderWindow->getHeight() ); + // resources_->renderWindow->resize( 1280, 1024 ); + std::cout << "Fullscreen: " << resources_->renderWindow->isFullScreen() << std::endl; + } + + if ( e.key == OIS::KC_LCONTROL) resources_->keymap()->setGlobalKeyModifier( KEY_LCONTROL ); + if ( e.key == OIS::KC_LSHIFT) resources_->keymap()->setGlobalKeyModifier( KEY_SHIFT ); + if ( e.key == OIS::KC_RSHIFT) resources_->keymap()->setGlobalKeyModifier( KEY_SHIFT ); - //** Create one screenshot; - if ( e.key == OIS::KC_SYSRQ ) { - std::string tmp( "screenshot" + LogManager::getSingleton().timeStamp() + ".png" ); - ResourceManager::getSingleton().renderWindow->writeContentsToFile( tmp.c_str() ); - LogManager::getSingleton().info( "wrote: " + tmp ); - } + if ( (this->*resources_->keymap()->consoleKeyAction( e ))( true ) ) return true; + return true; } bool Console::keyReleased( const OIS::KeyEvent & e ){ CEGUI::System::getSingleton().injectKeyUp( e.key ); - if ( e.key == OIS::KC_LCONTROL ) resources_->setGlobalKeyModifier( KEY_NONE ); - if ( e.key == OIS::KC_LSHIFT) resources_->setGlobalKeyModifier( KEY_NONE ); - if ( e.key == OIS::KC_RSHIFT) resources_->setGlobalKeyModifier( KEY_NONE ); + if ( e.key == OIS::KC_LCONTROL ) resources_->keymap()->setGlobalKeyModifier( KEY_NONE ); + if ( e.key == OIS::KC_LSHIFT ) resources_->keymap()->setGlobalKeyModifier( KEY_NONE ); + if ( e.key == OIS::KC_RSHIFT ) resources_->keymap()->setGlobalKeyModifier( KEY_NONE ); + return true; } +bool Console::keyActionScreenshot( bool pressed ){ + if ( pressed ){ + std::string tmp( "screenshot" + LogManager::getSingleton().timeStamp() + ".png" ); + ResourceManager::getSingleton().renderWindow->writeContentsToFile( tmp.c_str() ); + LogManager::getSingleton().info( "wrote: " + tmp ); + } return true; +} + void Console::print( const std::string & t ){ CEGUI::colour col(1.0, 1.0, 1.0, 1.0); if ( t.find( "INFO:" ) == 0 ){ Modified: trunk/src/Console.h =================================================================== --- trunk/src/Console.h 2007-11-16 23:16:40 UTC (rev 840) +++ trunk/src/Console.h 2007-11-17 19:07:16 UTC (rev 841) @@ -62,13 +62,16 @@ void printHelp( ); bool handleResize( const CEGUI::EventArgs & args ); + + bool keyActionDoNothing( bool pressed = true ) { return false; } + bool keyActionScreenshot( bool pressed = true ); + private: bool handleEditTextAccepted( const CEGUI::EventArgs & args ); - CEGUI::Window * rootWindow_; - ResourceManager * resources_; + ResourceManager * resources_; CEGUI::Editbox * editBox_; CEGUI::Listbox * listBox_; Modified: trunk/src/GameStateManager.cpp =================================================================== --- trunk/src/GameStateManager.cpp 2007-11-16 23:16:40 UTC (rev 840) +++ trunk/src/GameStateManager.cpp 2007-11-17 19:07:16 UTC (rev 841) @@ -444,11 +444,11 @@ resources_.ogreRoot->addFrameListener( resources_.console ); LogManager::getSingleton().setConsole( resources_.console ); - resources_.console->addCommand( "/q", &GameStateManager::CMD_shutdown, "Shutting down the client. Shortcut for /quit" ); + resources_.console->addCommand( "/q", &GameStateManager::CMD_shutdown, "Shutting down the client. Shortcut for /quit" ); resources_.console->addCommand( "/quit", &GameStateManager::CMD_shutdown, "Shutting down the client" ); - resources_.console->addCommand( "/help", &GameStateManager::CMD_printHelp, "Show this help" ); - resources_.console->addCommand( "/time", &GameStateManager::CMD_printTime, "Show current system time" ); - resources_.console->addCommand( "/ai", &GameStateManager::CMD_spawnAi, "[name] Spawn ai subject. /ai help show all available ships." ); + resources_.console->addCommand( "/help", &GameStateManager::CMD_printHelp,"Show this help" ); + resources_.console->addCommand( "/time", &GameStateManager::CMD_printTime,"Show current system time" ); + resources_.console->addCommand( "/ai", &GameStateManager::CMD_spawnAi, "[name] Spawn ai subject. /ai help show all available ships." ); return true; } Added: trunk/src/KeyMap.cpp =================================================================== --- trunk/src/KeyMap.cpp (rev 0) +++ trunk/src/KeyMap.cpp 2007-11-17 19:07:16 UTC (rev 841) @@ -0,0 +1,103 @@ +/*************************************************************************** + * Copyright (C) 2007 by OpenGate development team * + * spo...@us... * + * * + * This program is free software; you can redistribute it and/or modify * + * it under the terms of the GNU General Public License as published by * + * the Free Software Foundation; either version 2 of the License, or * + * (at your option) any later version. * + * * + * This program is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * + * GNU General Public License for more details. * + * * + * You should have received a copy of the GNU General Public License * + * along with this program; if not, write to the * + * Free Software Foundation, Inc., * + * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. * + ***************************************************************************/ + +#include "UnDockedState.h" +#include "KeyMap.h" +#include "InputManager.h" +#include "Console.h" + +namespace OpenGate{ + +KeyMap::KeyMap() : modifier_( KEY_NONE ){ +} + +void KeyMap::setDefaults(){ + /*! Actions for undocked state */ + unDockedActionMap_[ keycode( 70 ) ] = &UnDockedState::keyActionSwitchMinMaxConsole; + + unDockedActionMap_[ keycode( OIS::KC_A ) ] = &UnDockedState::keyActionAvatarIncreaseYaw; + unDockedActionMap_[ keycode( OIS::KC_NUMPAD4 ) ] = &UnDockedState::keyActionAvatarIncreaseYaw; + unDockedActionMap_[ keycode( OIS::KC_D ) ] = &UnDockedState::keyActionAvatarDecreaseYaw; + unDockedActionMap_[ keycode( OIS::KC_NUMPAD6 ) ] = &UnDockedState::keyActionAvatarDecreaseYaw; + + unDockedActionMap_[ keycode( OIS::KC_W ) ] = &UnDockedState::keyActionAvatarIncreasePitch; + unDockedActionMap_[ keycode( OIS::KC_NUMPAD8 ) ] = &UnDockedState::keyActionAvatarIncreasePitch; + unDockedActionMap_[ keycode( OIS::KC_S ) ] = &UnDockedState::keyActionAvatarDecreasePitch; + unDockedActionMap_[ keycode( OIS::KC_NUMPAD2 ) ] = &UnDockedState::keyActionAvatarDecreasePitch; + + unDockedActionMap_[ keycode( 181 ) ] = &UnDockedState::keyActionAvatarIncreaseRoll; + unDockedActionMap_[ keycode( OIS::KC_NUMPAD0 ) ] = &UnDockedState::keyActionAvatarIncreaseRoll; + unDockedActionMap_[ keycode( 55 ) ] = &UnDockedState::keyActionAvatarDecreaseRoll; + unDockedActionMap_[ keycode( OIS::KC_NUMPADCOMMA ) ] = &UnDockedState::keyActionAvatarDecreaseRoll; + + unDockedActionMap_[ keycode( OIS::KC_NUMPAD5 ) ] = &UnDockedState::keyActionAvatarCenter; + + unDockedActionMap_[ keycode( OIS::KC_NUMPAD7 ) ] = &UnDockedState::keyActionAvatarIncrementThrust; + unDockedActionMap_[ keycode( OIS::KC_NUMPAD1 ) ] = &UnDockedState::keyActionAvatarDecrementThrust; + unDockedActionMap_[ keycode( OIS::KC_NUMPAD3 ) ] = &UnDockedState::keyActionAvatarBreakPressed; + unDockedActionMap_[ keycode( OIS::KC_NUMPAD9 ) ] = &UnDockedState::keyActionAvatarAfterburnerPressed; + + unDockedActionMap_[ keycode( OIS::KC_N ) ] = &UnDockedState::keyActionSelectTextTarget; + unDockedActionMap_[ keycode( OIS::KC_P ) ] = &UnDockedState::keyActionSelectPreviousTarget; + + unDockedActionMap_[ keycode( OIS::KC_1 ) ] = &UnDockedState::keyActionCameraNormal; + unDockedActionMap_[ keycode( OIS::KC_2 ) ] = &UnDockedState::keyActionCameraLeft; + unDockedActionMap_[ keycode( OIS::KC_3 ) ] = &UnDockedState::keyActionCameraRight; + unDockedActionMap_[ keycode( OIS::KC_4 ) ] = &UnDockedState::keyActionCameraUp; + unDockedActionMap_[ keycode( OIS::KC_5 ) ] = &UnDockedState::keyActionCameraDown; + unDockedActionMap_[ keycode( OIS::KC_6 ) ] = &UnDockedState::keyActionCameraToggle; + + /*! Actions for console. */ + consoleActionMap_[ keycode( OIS::KC_SYSRQ ) ] = &Console::keyActionScreenshot; + + /*! Actions for development, will removed later. */ + unDockedActionMap_[ keycode( OIS::KC_F ) ] = &UnDockedState::keyActionToggleFiltering_DEV; + unDockedActionMap_[ keycode( OIS::KC_R ) ] = &UnDockedState::keyActionTogglePolygonMode_DEV; + + unDockedActionMap_[ keycode( OIS::KC_L, KEY_SHIFT ) ] = &UnDockedState::keyActionIncreaseAmbientLight_DEV; + unDockedActionMap_[ keycode( OIS::KC_L ) ] = &UnDockedState::keyActionDecreaseAmbientLight_DEV; + + unDockedActionMap_[ keycode( OIS::KC_O, KEY_SHIFT ) ] = &UnDockedState::keyActionIncreaseShaderScheme_DEV; + unDockedActionMap_[ keycode( OIS::KC_O ) ] = &UnDockedState::keyActionDecreaseShaderScheme_DEV; + + unDockedActionMap_[ keycode( OIS::KC_F5 ) ] = &UnDockedState::keyActionAvatarSwitchDuelistPilot_DEV; + unDockedActionMap_[ keycode( OIS::KC_F6 ) ] = &UnDockedState::keyActionAvatarSwitchDuelistTarget_DEV; + unDockedActionMap_[ keycode( OIS::KC_F4 ) ] = &UnDockedState::keyActionAvatarChangeDockedState_DEV; + unDockedActionMap_[ keycode( OIS::KC_F8 ) ] = &UnDockedState::keyActionAvatarSelfDestruct_DEV; +} + +bool(UnDockedState::*KeyMap::unDockedKeyAction( const OIS::KeyEvent & e ))(bool) { + uint key = keycode( e.key, modifier_ ); + if ( unDockedActionMap_.count( key ) > 0 ) return unDockedActionMap_[ key ]; + return &UnDockedState::keyActionDoNothing; +} + +bool(Console::*KeyMap::consoleKeyAction( const OIS::KeyEvent & e ))(bool) { + uint key = keycode( e.key, modifier_ ); + if ( consoleActionMap_.count( key ) > 0 ) return consoleActionMap_[ key ]; + return &Console::keyActionDoNothing; +} + +uint KeyMap::keycode( uint key, GlobalKeyModifier modifier ){ + return modifier * 65565 + key; +} + +} // namespace OpenGate + Added: trunk/src/KeyMap.h =================================================================== --- trunk/src/KeyMap.h (rev 0) +++ trunk/src/KeyMap.h 2007-11-17 19:07:16 UTC (rev 841) @@ -0,0 +1,79 @@ +/*************************************************************************** + * Copyright (C) 2006-2007 by OpenGate development team * + * spo...@us... * + * * + * This program is free software; you can redistribute it and/or modify * + * it under the terms of the GNU General Public License as published by * + * the Free Software Foundation; either version 2 of the License, or * + * (at your option) any later version. * + * * + * This program is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * + * GNU General Public License for more details. * + * * + * You should have received a copy of the GNU General Public License * + * along with this program; if not, write to the * + * Free Software Foundation, Inc., * + * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. * + ***************************************************************************/ + +#ifndef _OPENGATE_KEYMAP__H +#define _OPENGATE_KEYMAP__H + +#include <map> +// #include "InputManager.h" + #include "UnDockedState.h" + +namespace OpenGate{ + +class UnDockedState; +class Console; + +// namespace OIS{ +// class KeyEvent; +// } + +template < class Object, typename returnT, typename Args > class memberBind { +public: + typedef returnT( Object::*F )( Args ); + memberBind( F function, Object * object) : function_( function ), object_( object ) {} + + returnT operator()( Args args ) const { return ( object_->*function_ )( args ); } +protected: + F function_; + Object object_; +}; + +enum GlobalKeyModifier{KEY_NONE, KEY_LCONTROL, KEY_SHIFT}; + +class KeyMap{ +public: + + KeyMap(); + + void setDefaults(); + + bool (UnDockedState::*unDockedKeyAction( const OIS::KeyEvent & e ))( bool ); + + bool (Console::*consoleKeyAction( const OIS::KeyEvent & e ))( bool ); + + void setGlobalKeyModifier( GlobalKeyModifier modifier ){ modifier_ = modifier; } + + GlobalKeyModifier globalKeyModifier( ) const { return modifier_; } + + uint keycode( uint key, GlobalKeyModifier modifier = KEY_NONE ); + +protected: + + std::map< uint, bool (UnDockedState::*)( bool ) > unDockedActionMap_; + std::map< uint, bool (Console::*)( bool ) > consoleActionMap_; + + GlobalKeyModifier modifier_; + +}; + +} // namespace OpenGate + + +#endif // _OPENGATE_KEYMAP__H Modified: trunk/src/Makefile.am =================================================================== --- trunk/src/Makefile.am 2007-11-16 23:16:40 UTC (rev 840) +++ trunk/src/Makefile.am 2007-11-17 19:07:16 UTC (rev 841) @@ -1,7 +1,7 @@ bin_PROGRAMS = \ opengateclient \ - opengateserver \ - testopenalmanager + opengateserver +# testopenalmanager opengateclient_SOURCES = \ opengateclient.cpp \ @@ -39,6 +39,8 @@ InputManager.cpp \ InitState.h \ InitState.cpp \ + KeyMap.h \ + KeyMap.cpp \ LogManager.h \ LogManager.cpp \ LogManagerBase.h \ @@ -107,44 +109,46 @@ opengateserver_CXXFLAGS = # $(OGRE_CFLAGS) -testopenalmanager_SOURCES = \ - testopenalmanager.cpp \ - common.h \ - common.cpp \ - tinyxml/tinyxml.h \ - tinyxml/tinyxml.cpp \ - tinyxml/tinyxmlerror.cpp \ - tinyxml/tinyxmlparser.cpp \ - networkProtocol.h \ - networkProtocol.cpp \ - networkClient.h \ - networkClient.cpp \ - Console.h \ - Console.cpp \ - Entity.h \ - Entity.cpp \ - LogManager.h \ - LogManager.cpp \ - LogManagerBase.h \ - LogManagerBase.cpp \ - InputManager.h \ - InputManager.cpp \ - OpenALSoundManager.h \ - OpenALSoundManager.cpp \ - ResourceManager.h \ - ResourceManager.cpp +#testopenalmanager_SOURCES = \ +# testopenalmanager.cpp \ +# common.h \ +# common.cpp \ +# tinyxml/tinyxml.h \ +# tinyxml/tinyxml.cpp \ +# tinyxml/tinyxmlerror.cpp \ +# tinyxml/tinyxmlparser.cpp \ +# networkProtocol.h \ +# networkProtocol.cpp \ +# networkClient.h \ +# networkClient.cpp \ +# Console.h \ +# Console.cpp \ +# Entity.h \ +# Entity.cpp \ +# LogManager.h \ +# LogManager.cpp \ +# LogManagerBase.h \ +# LogManagerBase.cpp \ +# KeyMap.h \ +# KeyMap.cpp \ +# InputManager.h \ +# InputManager.cpp \ +# OpenALSoundManager.h \ +# OpenALSoundManager.cpp \ +# ResourceManager.h \ +# ResourceManager.cpp -testopenalmanager_LDFLAGS = \ - $(OGRE_LIBS) \ - $(CEGUI_LIBS) \ - $(CEGUIOGRE_LIBS) \ - $(freealut_LIBS) \ - $(vorbisfile_LIBS) \ - $(OIS_LIBS) +#testopenalmanager_LDFLAGS = \ +# $(OGRE_LIBS) \ +# $(CEGUI_LIBS) \ +# $(CEGUIOGRE_LIBS) \ +# $(freealut_LIBS) \ +# $(vorbisfile_LIBS) \ +# $(OIS_LIBS) -testopenalmanager_CXXFLAGS = \ - $(OGRE_CFLAGS) \ - $(CEGUI_CFLAGS) +#testopenalmanager_CXXFLAGS = \ +# $(OGRE_CFLAGS) \ +# $(CEGUI_CFLAGS) distclean: maintainer-clean rm -rf *~ \ Modified: trunk/src/MarketDialog.cpp =================================================================== --- trunk/src/MarketDialog.cpp 2007-11-16 23:16:40 UTC (rev 840) +++ trunk/src/MarketDialog.cpp 2007-11-17 19:07:16 UTC (rev 841) @@ -25,6 +25,7 @@ #include "Entity.h" #include "Avatar.h" #include "Vessel.h" +#include "KeyMap.h" #include <OgreRenderWindow.h> #include <CEGUI/elements/CEGUIEditbox.h> @@ -465,7 +466,7 @@ if ( item ){ buyMode_ = true; - if ( ResourceManager::getSingleton().globalKeyModifier() == KEY_LCONTROL ){ + if ( ResourceManager::getSingleton().keymap()->globalKeyModifier() == KEY_LCONTROL ){ buyItems( item, 1 ); } else { CEGUI::WindowManager::getSingleton().getWindow( (CEGUI::utf8*)"MarketWindow")->hide(); @@ -487,7 +488,7 @@ if ( item ){ buyMode_ = false; - if ( ResourceManager::getSingleton().globalKeyModifier() == KEY_LCONTROL ){ + if ( ResourceManager::getSingleton().keymap()->globalKeyModifier() == KEY_LCONTROL ){ sellItems( item, 1 ); } else { CEGUI::WindowManager::getSingleton().getWindow( (CEGUI::utf8*)"MarketWindow")->hide(); Modified: trunk/src/ResourceManager.cpp =================================================================== --- trunk/src/ResourceManager.cpp 2007-11-16 23:16:40 UTC (rev 840) +++ trunk/src/ResourceManager.cpp 2007-11-17 19:07:16 UTC (rev 841) @@ -24,6 +24,7 @@ #include "Station.h" #include "Entity.h" +#include "KeyMap.h" #include <OgreArchiveManager.h> #include <OgreFileSystem.h> @@ -32,7 +33,7 @@ template<> ResourceManager * Ogre::Singleton< ResourceManager >::ms_Singleton = 0; -ResourceManager::ResourceManager( ) : modifier_( KEY_NONE ){ +ResourceManager::ResourceManager( ){ log_ = LogManager::getSingletonPtr(); ogreRoot = NULL; @@ -45,12 +46,15 @@ network = NULL; gameStateRoot = NULL; avatar = NULL; + keymap_ = new KeyMap(); + keymap_->setDefaults(); languageSuffix_ = "en"; mapping_ = true; } ResourceManager::~ResourceManager( ) { + delete keymap_; } std::string ResourceManager::factionName( int id ) { Modified: trunk/src/ResourceManager.h =================================================================== --- trunk/src/ResourceManager.h 2007-11-16 23:16:40 UTC (rev 840) +++ trunk/src/ResourceManager.h 2007-11-17 19:07:16 UTC (rev 841) @@ -48,9 +48,8 @@ class Console; class Entity; class Station; +class KeyMap; -enum GlobalKeyModifier{KEY_NONE, KEY_LCONTROL, KEY_SHIFT}; - class ResourceManager : public Ogre::Singleton< ResourceManager > { public: Ogre::Root * ogreRoot; @@ -74,9 +73,6 @@ /*! This method return a pointer to the single instance of the LogManager */ static ResourceManager * getSingletonPtr( void ); - void setGlobalKeyModifier( GlobalKeyModifier modifier ){ modifier_ = modifier; } - GlobalKeyModifier globalKeyModifier( ) const { return modifier_; } - std::string languageSuffix() const { return languageSuffix_; } std::string className( int id ) const { return "unknown"; } @@ -107,6 +103,7 @@ std::set < std::string > & resourcePaths() { return resourcePaths_; } void setMappingCapability( bool mapping ) { mapping_ = mapping; } + bool mappingCapability() const { return mapping_; } void load( const std::string & resourceName ); @@ -115,12 +112,14 @@ Station * station( const std::string & fileName ); + KeyMap * keymap() { return keymap_; } + protected: LogManager * log_; + KeyMap * keymap_; bool mapping_; - GlobalKeyModifier modifier_; std::string languageSuffix_; std::map< int, std::string > factionIDs_; Modified: trunk/src/SectorObjects.cpp =================================================================== --- trunk/src/SectorObjects.cpp 2007-11-16 23:16:40 UTC (rev 840) +++ trunk/src/SectorObjects.cpp 2007-11-17 19:07:16 UTC (rev 841) @@ -771,6 +771,7 @@ targetArrowNode_ = NULL; flightArrowNode_ = NULL; forceMovement_ = false; + thrustChange_ = 0.0; targetArrowNode_ = mainNode_->createChildSceneNode( name_ + "_TargetArrow" ); Ogre::SceneNode * targetArrowTrans = targetArrowNode_->createChildSceneNode( name_ + "_TargetArrow_trans" ); @@ -834,8 +835,30 @@ } } +void SectorObjectAvatar::decrementThrust( bool pressed ){ + if ( pressed ){ + thrustChange_ = -1.0; + } else { + thrustChange_ = 0.0; + } +} + +void SectorObjectAvatar::incrementThrust( bool pressed ){ + if ( pressed ){ + thrustChange_ = 1.0; + } else { + thrustChange_ = 0.0; + } +} + bool SectorObjectAvatar::update( Ogre::Real elapsedTime ){ updatePowerGrid( elapsedTime ); + + thrustRate_ += (thrustChange_ *0.5f*elapsedTime); + thrustRate_ = max( thrustRate_, 0.0f ); + thrustRate_ = min( 1.0f, thrustRate_ ); + if ( thrustChange_ != 0.0 ) updateThruster(); + if ( soundListener_ ){ soundListener_->setPosition( mainNode_->getWorldPosition() ); soundListener_->setVelocity( vel_ ); Modified: trunk/src/SectorObjects.h =================================================================== --- trunk/src/SectorObjects.h 2007-11-16 23:16:40 UTC (rev 840) +++ trunk/src/SectorObjects.h 2007-11-17 19:07:16 UTC (rev 841) @@ -452,8 +452,8 @@ Ogre::SceneNode * targetArrow() { return targetArrowNode_; } Ogre::SceneNode * flightArrow() { return flightArrowNode_; } - inline void decrementThrust(){ thrustRate_ = max( thrustRate_ - 0.1f, 0.0f ); updateThruster(); } - inline void incrementThrust(){ thrustRate_ = min( thrustRate_ + 0.1f, 1.0f ); updateThruster(); } + void decrementThrust( bool pressed ); + void incrementThrust( bool pressed ); virtual Uint32 thrust() const { double thrust = thrust_; @@ -462,12 +462,12 @@ return (Uint32)rint( thrust ); } - virtual bool isChild() const { return false; } inline Ogre::Real capacityRate() const { if ( maxCapacity_ > 0 ) return (float)capacity_ / maxCapacity_; else return 0; } protected: + Ogre::Real thrustChange_; Ogre::SceneNode * targetArrowNode_; Ogre::SceneNode * flightArrowNode_; Ogre::SceneNode * lightNode_; Modified: trunk/src/UnDockedState.cpp =================================================================== --- trunk/src/UnDockedState.cpp 2007-11-16 23:16:40 UTC (rev 840) +++ trunk/src/UnDockedState.cpp 2007-11-17 19:07:16 UTC (rev 841) @@ -26,6 +26,7 @@ #include "InputManager.h" #include "Console.h" #include "ConfigDialog.h" +#include "KeyMap.h" #include <iostream> @@ -36,6 +37,7 @@ #include <OgreViewport.h> #include <OgreOverlayManager.h> #include <OgreStringConverter.h> +#include <OgreMaterialManager.h> #include <CEGUI/elements/CEGUIPushButton.h> @@ -215,6 +217,9 @@ schemeIdx_ = 0; setScheme_(); + aniso_ = 1; + filtering_ = Ogre::TFO_BILINEAR; + // targetPointer_ = mainCamera_->getSceneManager()->getRootSceneNode()->createChildSceneNode( "TargetPointer" ); // BillboardSet* mySet = mainCamera_->getSceneManager()->createBillboardSet("mySet"); // targetPointerBB_ = mySet->createBillboard( Vector3(0, 0, 0) ); @@ -245,9 +250,6 @@ // particleNode_->attachObject( spaceDustParticle_ ); // statsOn_ = true; -// numScreenShots_ = 0; -// aniso_ = 1; -// filtering_ = TFO_BILINEAR; sector_->createAvatarObject( *resources_->avatar ); @@ -392,96 +394,13 @@ } if ( !chatMode_ && !configMode_ ){ - - if ( e.key == 70 ){ // 70 == Roll - if ( !consoleMax_ ){ - maximiseConsole(); - } else { - minimiseConsole(); - } - } - - if ( e.key == OIS::KC_RETURN) { + if ( (this->*resources_->keymap()->unDockedKeyAction( e ))( true ) ) return true; + + if ( e.key == OIS::KC_RETURN ) { CEGUI::WindowManager::getSingleton().getWindow( (CEGUI::utf8*)"ConsoleEdit")->activate(); // hudOverlay_->getChild( overlayName_ + "/ChatIn" )->show( ); chatMode_ = true; } - - if ( e.key == OIS::KC_L && resources_->globalKeyModifier( ) != KEY_SHIFT ) { decreaseAmbientLight(); } - if ( e.key == OIS::KC_L && resources_->globalKeyModifier( ) == KEY_SHIFT ) { increaseAmbientLight(); } - - if ( e.key == OIS::KC_O && resources_->globalKeyModifier( ) != KEY_SHIFT ) { decreaseScheme(); } - if ( e.key == OIS::KC_O && resources_->globalKeyModifier( ) == KEY_SHIFT ) { increaseScheme(); } - - - if ( sector_->avatarObject() != NULL ){ - //** Avatar yaw LEFT; - if ( e.key == OIS::KC_A || e.key == OIS::KC_NUMPAD4 ) { sector_->avatarObject()->setScaledYaw( 1.0 ); } - - //** Avatar yaw RIGHT; - if ( e.key == OIS::KC_D || e.key == OIS::KC_NUMPAD6 ) { sector_->avatarObject()->setScaledYaw( -1.0 ); } - - //** Avatar pitch DOWN; - if ( e.key == OIS::KC_W || e.key == OIS::KC_NUMPAD8 ) { sector_->avatarObject()->setScaledPitch( -1.0 ); } - - //** Avatar pitch UP; - if ( e.key == OIS::KC_S || e.key == OIS::KC_NUMPAD2 ) { sector_->avatarObject()->setScaledPitch( 1.0 ); } - - //** Avatar roll (181 == NUM/); - if ( e.key == OIS::KC_NUMPAD0 || e.key == 181 ) { sector_->avatarObject()->setScaledRoll( 1.0 ); } - - //** Avatar roll (55 == NUM*); - if ( e.key == OIS::KC_NUMPADCOMMA || e.key == 55 ) { sector_->avatarObject()->setScaledRoll( -1.0 ); } - - //** Avatar increase thrust by 10%; - if ( e.key == OIS::KC_NUMPAD7 ) { sector_->avatarObject()->incrementThrust(); } - - //** Avatar increase thrust by 10%; - if ( e.key == OIS::KC_NUMPAD1 ) { sector_->avatarObject()->decrementThrust(); } - - //** Avatar press break; - if ( e.key == OIS::KC_NUMPAD3 ) { sector_->avatarObject()->setBreakPressed( true ); } - - //** Avatar press afterburner; - if ( e.key == OIS::KC_NUMPAD9 ) { sector_->avatarObject()->setAfterburnerPressed( true ); } - - //** Avatar centering; - if ( e.key == OIS::KC_NUMPAD5 ) { - sector_->avatarObject()->setScaledYaw( 0.0 ); - sector_->avatarObject()->setScaledPitch( 0.0 ); - sector_->avatarObject()->setScaledRoll( 0.0 ); - } - //** selfdestruct and eject; - if ( e.key == OIS::KC_F4 ) { changeToDockedState(); return true; } - if ( e.key == OIS::KC_F5 ) { duelistPilot_ = !duelistPilot_; } - if ( e.key == OIS::KC_F6 ) { duelistTarget_ = !duelistTarget_; } - if ( e.key == OIS::KC_F8 ) { sector_->avatarObject()->deathSequence( 0 ); } - } // if avatar; - - //** next Target; - if ( e.key == OIS::KC_N ) { setTarget( sector_->nextTarget() ); } - - //** prev Target; - if ( e.key == OIS::KC_P ) { setTarget( sector_->prevTarget() ); } - - if ( e.key == OIS::KC_1 ) { if ( cameraMode_ == 0 ) showHud(); cameraViewKey_ = 1; } - if ( e.key == OIS::KC_2 ) { hideHud(); cameraViewKey_ = 2; } - if ( e.key == OIS::KC_3 ) { hideHud(); cameraViewKey_ = 3; } - if ( e.key == OIS::KC_4 ) { hideHud(); cameraViewKey_ = 4; } - if ( e.key == OIS::KC_5 ) { hideHud(); cameraViewKey_ = 5; } - - //** Toggle through camera modes; - if ( e.key == OIS::KC_6 ) { toggleNextCamera_(); } - - if ( e.key == OIS::KC_R ) { - sceneDetailIndex_ = ( sceneDetailIndex_ + 1) % 3; - switch( sceneDetailIndex_ ) { - case 0: mainCamera_->setPolygonMode( Ogre::PM_SOLID ); break; - case 1: mainCamera_->setPolygonMode( Ogre::PM_WIREFRAME ); break; - case 2: mainCamera_->setPolygonMode( Ogre::PM_POINTS ); break; - } - } - } else { // ** chatmode if ( e.key == OIS::KC_RETURN) { CEGUI::WindowManager::getSingleton().getWindow( (CEGUI::utf8*)"ConsoleEdit")->deactivate(); @@ -489,37 +408,13 @@ } } -// if ( e.key == OIS::KC_T ) { -// switch( filtering_ ) { -// case TFO_BILINEAR: -// filtering_ = TFO_TRILINEAR; -// aniso_ = 1; -// break; -// case TFO_TRILINEAR: -// filtering_ = TFO_ANISOTROPIC; -// aniso_ = 8; -// break; -// case TFO_ANISOTROPIC: -// filtering_ = TFO_BILINEAR; -// aniso_ = 1; -// break; -// default: -// break; -// } -// MaterialManager::getSingleton().setDefaultTextureFiltering( filtering_ ); -// MaterialManager::getSingleton().setDefaultAnisotropy( aniso_ ); -// } -return true; + return true; } bool UnDockedState::keyReleased( const OIS::KeyEvent & e ){ if (!configMode_){ if ( sector_->avatarObject() != NULL ){ - // Avatar release break - if ( e.key == OIS::KC_NUMPAD3 ) { sector_->avatarObject()->setBreakPressed( false ); } - - // Avatar release afterburner - if ( e.key == OIS::KC_NUMPAD9 ) { sector_->avatarObject()->setAfterburnerPressed( false ); } + if ( (this->*resources_->keymap()->unDockedKeyAction( e ))( false ) ) return true; } } return true; @@ -1149,7 +1044,7 @@ } bool UnDockedState::projectionPosAndSize_( Ogre::Camera * cam, const Ogre::Vector3 & pos, const Ogre::Real rad, - Ogre::Real & x, Ogre::Real & y, Ogre::Real & cx, Ogre::Real & cy ){ + Ogre::Real & x, Ogre::Real & y, Ogre::Real & cx, Ogre::Real & cy ){ Ogre::Vector3 eyeSpacePos = cam->getViewMatrix( true ) * pos; // z < 0 means in front of cam @@ -1173,6 +1068,259 @@ } } +void UnDockedState::spawnAI( const std::string & name ){ + sector_->spawnAiObject( name ); +} + +bool UnDockedState::keyActionSwitchMinMaxConsole( bool pressed ){ + if ( pressed ){ + if ( !consoleMax_ ){ + maximiseConsole(); + } else { + minimiseConsole(); + } + } + return true; +} + +bool UnDockedState::keyActionAvatarIncreaseYaw( bool pressed ){ + if ( pressed ){ + if ( sector_->avatarObject() != NULL ){ + sector_->avatarObject()->setScaledYaw( 1.0 ); + } + } + return true; +} + +bool UnDockedState::keyActionAvatarDecreaseYaw( bool pressed ){ + if ( pressed ){ + if ( sector_->avatarObject() != NULL ){ + sector_->avatarObject()->setScaledYaw( -1.0 ); + } + } + return true; +} + +bool UnDockedState::keyActionAvatarIncreasePitch( bool pressed ){ + if ( pressed ){ + if ( sector_->avatarObject() != NULL ){ + sector_->avatarObject()->setScaledPitch( 1.0 ); + } + } + return true; +} + +bool UnDockedState::keyActionAvatarDecreasePitch( bool pressed ){ + if ( pressed ){ + if ( sector_->avatarObject() != NULL ){ + sector_->avatarObject()->setScaledPitch( -1.0 ); + } + } + return true; +} + +bool UnDockedState::keyActionAvatarIncreaseRoll( bool pressed ){ + if ( pressed ){ + if ( sector_->avatarObject() != NULL ){ + sector_->avatarObject()->setScaledRoll( 1.0 ); + } + } + return true; +} + +bool UnDockedState::keyActionAvatarDecreaseRoll( bool pressed ){ + if ( pressed ){ + if ( sector_->avatarObject() != NULL ){ + sector_->avatarObject()->setScaledRoll( -1.0 ); + } + } + return true; +} + +bool UnDockedState::keyActionAvatarIncrementThrust( bool pressed ){ + if ( sector_->avatarObject() != NULL ){ + sector_->avatarObject()->incrementThrust( pressed ); + } + return true; +} + +bool UnDockedState::keyActionAvatarDecrementThrust( bool pressed ){ + if ( sector_->avatarObject() != NULL ){ + sector_->avatarObject()->decrementThrust( pressed ); + } + return true; +} + +bool UnDockedState::keyActionAvatarBreakPressed( bool pressed ){ + if ( sector_->avatarObject() != NULL ){ + sector_->avatarObject()->setBreakPressed( pressed ); + } + return true; +} + +bool UnDockedState::keyActionAvatarAfterburnerPressed( bool pressed ){ + if ( sector_->avatarObject() != NULL ){ + sector_->avatarObject()->setAfterburnerPressed( pressed ); + } + return true; +} + +bool UnDockedState::keyActionAvatarCenter( bool pressed ){ + if ( pressed ){ + if ( sector_->avatarObject() != NULL ){ + sector_->avatarObject()->setScaledYaw( 0.0 ); + sector_->avatarObject()->setScaledPitch( 0.0 ); + sector_->avatarObject()->setScaledRoll( 0.0 ); + } + } + return true; +} + +bool UnDockedState::keyActionSelectTextTarget( bool pressed ){ + if ( pressed ) setTarget( sector_->nextTarget() ); + return true; +} + +bool UnDockedState::keyActionSelectPreviousTarget( bool pressed ){ + if ( pressed ) setTarget( sector_->prevTarget() ); + return true; +} + +bool UnDockedState::keyActionCameraNormal( bool pressed ){ + if ( pressed ){ + if ( cameraMode_ == 0 ) showHud(); + cameraViewKey_ = 1; + } + return true; +} + +bool UnDockedState::keyActionCameraLeft( bool pressed ){ + if ( pressed ){ + hideHud(); + cameraViewKey_ = 2; + } + return true; +} + +bool UnDockedState::keyActionCameraRight( bool pressed ){ + if ( pressed ){ + hideHud(); + cameraViewKey_ = 3; + } + return true; +} + +bool UnDockedState::keyActionCameraUp( bool pressed ){ + if ( pressed ){ + hideHud(); + cameraViewKey_ = 4; + } + return true; +} + +bool UnDockedState::keyActionCameraDown( bool pressed ){ + if ( pressed ){ + hideHud(); + cameraViewKey_ = 5; + } + return true; +} + +bool UnDockedState::keyActionCameraToggle( bool pressed ){ + if ( pressed ){ + toggleNextCamera_(); + } + return true; +} + +bool UnDockedState::keyActionToggleFiltering_DEV( bool pressed ){ + if ( pressed ){ + switch( filtering_ ) { + case Ogre::TFO_BILINEAR: + filtering_ = Ogre::TFO_TRILINEAR; + aniso_ = 1; + break; + case Ogre::TFO_TRILINEAR: + filtering_ = Ogre::TFO_ANISOTROPIC; + aniso_ = 8; + break; + case Ogre::TFO_ANISOTROPIC: + filtering_ = Ogre::TFO_BILINEAR; + aniso_ = 1; + break; + default: + break; + } + Ogre::MaterialManager::getSingleton().setDefaultTextureFiltering( filtering_ ); + Ogre::MaterialManager::getSingleton().setDefaultAnisotropy( aniso_ ); + } + return true; +} + +bool UnDockedState::keyActionTogglePolygonMode_DEV( bool pressed ){ + if ( pressed ){ + sceneDetailIndex_ = ( sceneDetailIndex_ + 1) % 3; + switch( sceneDetailIndex_ ) { + case 0: mainCamera_->setPolygonMode( Ogre::PM_SOLID ); break; + case 1: mainCamera_->setPolygonMode( Ogre::PM_WIREFRAME ); break; + case 2: mainCamera_->setPolygonMode( Ogre::PM_POINTS ); break; + } + } + return true; +} + +bool UnDockedState::keyActionIncreaseAmbientLight_DEV( bool pressed ){ + if ( pressed ){ + ambientLight_ = min( ambientLight_ + 1, 10 ); + setAmbientLight_(); + } + return true; +} + +bool UnDockedState::keyActionDecreaseAmbientLight_DEV( bool pressed ){ + if ( pressed ){ + ambientLight_ = max( ambientLight_ - 1, 0 ); + setAmbientLight_(); + } + return true; +} + +bool UnDockedState::keyActionIncreaseShaderScheme_DEV( bool pressed ){ + if ( pressed ){ + schemeIdx_ = min( schemeIdx_ + 1, 2 ); + setScheme_(); + } + return true; +} + +bool UnDockedState::keyActionDecreaseShaderScheme_DEV( bool pressed ){ + if ( pressed ){ + schemeIdx_ = max( schemeIdx_ - 1, 0 ); + setScheme_(); + } + return true; +} + +bool UnDockedState::keyActionAvatarSwitchDuelistPilot_DEV( bool pressed ){ + if ( pressed ) duelistPilot_ = !duelistPilot_; + return true; +} + +bool UnDockedState::keyActionAvatarSwitchDuelistTarget_DEV( bool pressed ){ + if ( pressed ) duelistTarget_ = !duelistTarget_; + return true; +} + +bool UnDockedState::keyActionAvatarChangeDockedState_DEV( bool pressed ){ + if ( pressed ) changeToDockedState(); + return true; +} + +bool UnDockedState::keyActionAvatarSelfDestruct_DEV( bool pressed ){ + if ( pressed ) sector_->avatarObject()->deathSequence( 0 ); + return true; +} + bool UnDockedState::maximiseConsole( ){ if ( overlayRootWindow_ ){ CEGUI::WindowManager::getSingleton().getWindow( (CEGUI::utf8*)"UnDocked/MainWindow/ConsoleFrame")-> @@ -1191,38 +1339,13 @@ return true; } -void UnDockedState::spawnAI( const std::string & name ){ - sector_->spawnAiObject( name ); -} - -void UnDockedState::increaseAmbientLight(){ - ambientLight_ = min( ambientLight_ + 1, 10 ); - setAmbientLight_(); -} - -void UnDockedState::decreaseAmbientLight(){ - ambientLight_ = max( ambientLight_ - 1, 0 ); - setAmbientLight_(); -} - void UnDockedState::setAmbientLight_(){ - std::cout << ambientLight_ << std::endl; sceneMgr_->setAmbientLight( Ogre::ColourValue( (double)ambientLight_/10.0, (double)ambientLight_/10.0, (double)ambientLight_/10.0 ) ); } -void UnDockedState::increaseScheme(){ - schemeIdx_ = min( schemeIdx_ + 1, 2 ); - setScheme_(); -} - -void UnDockedState::decreaseScheme(){ - schemeIdx_ = max( schemeIdx_ - 1, 0 ); - setScheme_(); -} - void UnDockedState::setScheme_(){ for ( uint i = 0; i < window_->getNumViewports(); i ++ ){ Modified: trunk/src/UnDockedState.h =================================================================== --- trunk/src/UnDockedState.h 2007-11-16 23:16:40 UTC (rev 840) +++ trunk/src/UnDockedState.h 2007-11-17 19:07:16 UTC (rev 841) @@ -89,12 +89,53 @@ void showHud(); void hideHud(); - void increaseAmbientLight(); - void decreaseAmbientLight(); + bool keyActionDoNothing( bool pressed = true ) { return false; } + bool keyActionSwitchMinMaxConsole( bool pressed = true ); - void increaseScheme(); - void decreaseScheme(); + bool keyActionAvatarIncreaseYaw( bool pressed = true ); + bool keyActionAvatarDecreaseYaw( bool pressed = true ); + bool keyActionAvatarIncreasePitch( bool pressed = true ); + bool keyActionAvatarDecreasePitch( bool pressed = true ); + bool keyActionAvatarIncreaseRoll( bool pressed = true ); + bool keyActionAvatarDecreaseRoll( bool pressed = true ); + bool keyActionSelectTextTarget( bool pressed = true ); + bool keyActionSelectPreviousTarget( bool pressed = true ); + + bool keyActionCameraNormal( bool pressed = true ); + bool keyActionCameraLeft( bool pressed = true ); + bool keyActionCameraRight( bool pressed = true ); + bool keyActionCameraUp( bool pressed = true ); + bool keyActionCameraDown( bool pressed = true ); + bool keyActionCameraToggle( bool pressed = true ); + + /*! center avatar stop yaw/pitch/roll */ + bool keyActionAvatarCenter( bool pressed = true ); + + /*! Avatar increase thrust by 10% */ + bool keyActionAvatarIncrementThrust( bool pressed = true ); + + /*! Avatar decrease thrust by 10% */ + bool keyActionAvatarDecrementThrust( bool pressed = true ); + + bool keyActionAvatarBreakPressed( bool pressed = true ); + bool keyActionAvatarAfterburnerPressed( bool pressed = true ); + + /*! Actions for development, will removed later. */ + bool keyActionTogglePolygonMode_DEV( bool pressed = true ); + bool keyActionToggleFiltering_DEV( bool pressed = true ); + + bool keyActionIncreaseAmbientLight_DEV( bool pressed = true ); + bool keyActionDecreaseAmbientLight_DEV( bool pressed = true ); + + bool keyActionIncreaseShaderScheme_DEV( bool pressed = true ); + bool keyActionDecreaseShaderScheme_DEV( bool pressed = true ); + + bool keyActionAvatarSwitchDuelistPilot_DEV( bool pressed = true ); + bool keyActionAvatarSwitchDuelistTarget_DEV( bool pressed = true ); + bool keyActionAvatarChangeDockedState_DEV( bool pressed = true ); + bool keyActionAvatarSelfDestruct_DEV( bool pressed = true ); + protected: UnDockedState( ); virtual ~UnDockedState( ){} @@ -210,10 +251,12 @@ bool duelistTarget_; int sceneDetailIndex_ ; - int ambientLight_; int schemeIdx_; + Ogre::TextureFilterOptions filtering_; + int aniso_; + OpenALSoundSource * soundBackround_; }; Modified: trunk/src/metaserver.cpp =================================================================== --- trunk/src/metaserver.cpp 2007-11-16 23:16:40 UTC (rev 840) +++ trunk/src/metaserver.cpp 2007-11-17 19:07:16 UTC (rev 841) @@ -223,16 +223,13 @@ std::string parameters( "add_game_server" ); if ( servername.length() > 0 ) parameters += "&comment="+strReplaceBlankWithUnderscore(servername); - +// tempor\xE4r: Serverbeschreibung solange hin und wieder mehr als ein Server vom meta weitergereicht wird // kay, max 256 zeichen, gameserver einf\xFCgen mit opacma.ontheserver.de/script/schnittstelle/?action=add_game_server&comment=blablabla - // http://opacma.ontheserver.de/script/schnittstelle/?action=list_game_servers // ausgabeformat ist - // reset($IPs); // while(current($IPs)){ // $Output .= current($IPs) . ',' . $Kommentare[current($IPs)] . ';'; - // next($IPs); // } Modified: trunk/src/opengateserver.cpp =================================================================== --- trunk/src/opengateserver.cpp 2007-11-16 23:16:40 UTC (rev 840) +++ trunk/src/opengateserver.cpp 2007-11-17 19:07:16 UTC (rev 841) @@ -83,7 +83,7 @@ //** ein bissle mehr verbose output, kommt sp\xE4ter wieder weg.; //** das k\xF6nnte mal vielleicht als option rausreichen, das man wie beim clienten die Wahl hat; //** -M = (withMetaServer = true); - bool withMetaServer = true; + bool withMetaServer = false; std::string servername( "testserver Sim 1" ); try { asio::io_service io_service; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ult...@us...> - 2007-11-16 23:16:38
|
Revision: 840 http://opengate.svn.sourceforge.net/opengate/?rev=840&view=rev Author: ultrasick Date: 2007-11-16 15:16:40 -0800 (Fri, 16 Nov 2007) Log Message: ----------- used a "work around" for the plutonium and the uranium model to avoid the bug in blender. Coder you can remove the fall back support for all other images but objectname_big.png and objectname_small.png now. Modified Paths: -------------- templates/commodities/plutonium.blend templates/commodities/uranium.blend Added Paths: ----------- trunk/data/commodities/plutonium_big.png trunk/data/commodities/plutonium_small.png trunk/data/commodities/uranium_big.png trunk/data/commodities/uranium_small.png Removed Paths: ------------- trunk/data/commodities/plutonium.png trunk/data/commodities/uranium.png Modified: templates/commodities/plutonium.blend =================================================================== (Binary files differ) Modified: templates/commodities/uranium.blend =================================================================== (Binary files differ) Deleted: trunk/data/commodities/plutonium.png =================================================================== (Binary files differ) Added: trunk/data/commodities/plutonium_big.png =================================================================== (Binary files differ) Property changes on: trunk/data/commodities/plutonium_big.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/data/commodities/plutonium_small.png =================================================================== (Binary files differ) Property changes on: trunk/data/commodities/plutonium_small.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Deleted: trunk/data/commodities/uranium.png =================================================================== (Binary files differ) Added: trunk/data/commodities/uranium_big.png =================================================================== (Binary files differ) Property changes on: trunk/data/commodities/uranium_big.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/data/commodities/uranium_small.png =================================================================== (Binary files differ) Property changes on: trunk/data/commodities/uranium_small.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <spo...@us...> - 2007-11-15 21:34:10
|
Revision: 839 http://opengate.svn.sourceforge.net/opengate/?rev=839&view=rev Author: spom_spom Date: 2007-11-15 13:34:08 -0800 (Thu, 15 Nov 2007) Log Message: ----------- add support for optional server comment Modified Paths: -------------- trunk/src/Console.cpp trunk/src/common.cpp trunk/src/common.h trunk/src/metaserver.cpp trunk/src/metaserver.h trunk/src/opengateclient.cpp trunk/src/opengateserver.cpp Modified: trunk/src/Console.cpp =================================================================== --- trunk/src/Console.cpp 2007-11-14 20:58:39 UTC (rev 838) +++ trunk/src/Console.cpp 2007-11-15 21:34:08 UTC (rev 839) @@ -99,7 +99,7 @@ } bool Console::handleEditTextAccepted( const CEGUI::EventArgs & args ){ - CEGUI::String text = editBox_->getText( ); + CEGUI::String text( editBox_->getText( ) ); if ( text.size() > 0 ){ std::vector < std::string > commandline( getSubstrings( text.c_str() ) ); @@ -111,6 +111,7 @@ } else { MessageBodyChat chat( std::string( text.c_str() ) ); resources_->network->send( chat ); + // LogManager::getSingleton().debug( std::string( "Chattest: " ) + text.c_str() ); } editBox_->setText(""); } Modified: trunk/src/common.cpp =================================================================== --- trunk/src/common.cpp 2007-11-14 20:58:39 UTC (rev 838) +++ trunk/src/common.cpp 2007-11-15 21:34:08 UTC (rev 839) @@ -58,7 +58,7 @@ vect[ count ] = toDouble( str ); count ++; } - if ( count > 2 ) return vect; + if ( count > 2 ) return vect; pos = nextPos + 1; } @@ -66,24 +66,3 @@ if ( str.size() > 0 ) vect[ count ] = toDouble( str ); return vect; } - -int split(const std::string& input, const std::string& delimiter, std::list<std::string>& results) { - int pos = 0; - int offset = 0; - int lengthDelimiter = (int)delimiter.size(); - int lengthInput = (int)input.size(); - - if ( ( lengthInput == 0 ) || ( lengthDelimiter == 0 ) ) { - return 0; - } - - while (pos = input.find (delimiter, offset)) { - results.push_back(input.substr(offset, pos-offset)); - if (pos == (int)std::string::npos) { - break; - } - offset = pos+1; - } - - return results.size(); -} Modified: trunk/src/common.h =================================================================== --- trunk/src/common.h 2007-11-14 20:58:39 UTC (rev 838) +++ trunk/src/common.h 2007-11-15 21:34:08 UTC (rev 839) @@ -208,6 +208,27 @@ enum watchstate {undefined,halted,running} state; }; -int split(const std::string& input, const std::string& delimiter, std::list<std::string>& results); +template < class Container > int split( const std::string & input, + const std::string & delimiter, Container & results ){ + int pos = 0; + int offset = 0; + int lengthDelimiter = (int)delimiter.size(); + int lengthInput = (int)input.size(); + + if ( ( lengthInput == 0 ) || ( lengthDelimiter == 0 ) ) { + return 0; + } + + while (pos = input.find( delimiter, offset ) ) { + results.push_back( input.substr( offset, pos-offset ) ); + if ( pos == (int)std::string::npos ) { + break; + } + offset = pos+1; + } + + return results.size(); +} + #endif // _OPENGATE_COMMON__H Modified: trunk/src/metaserver.cpp =================================================================== --- trunk/src/metaserver.cpp 2007-11-14 20:58:39 UTC (rev 838) +++ trunk/src/metaserver.cpp 2007-11-15 21:34:08 UTC (rev 839) @@ -29,7 +29,7 @@ namespace OpenGate{ -MetaConnection::MetaConnection( asio::io_service & io_service, LogManagerBase & log ) : + MetaConnection::MetaConnection( asio::io_service & io_service, LogManagerBase & log ) : io_service_( io_service ), socket_( io_service ), resolver_( io_service ), log_( &log ) { isConnected_ = true; @@ -215,12 +215,27 @@ return META_NOT_CONNECTED; } -int MetaConnection::add_game_server() { +int MetaConnection::add_game_server( const std::string & servername ) { if ( isConnected_ ) { try { asio::streambuf response; std::string parameters( "add_game_server" ); + + if ( servername.length() > 0 ) parameters += "&comment="+strReplaceBlankWithUnderscore(servername); + +// kay, max 256 zeichen, gameserver einf\xFCgen mit opacma.ontheserver.de/script/schnittstelle/?action=add_game_server&comment=blablabla + +// http://opacma.ontheserver.de/script/schnittstelle/?action=list_game_servers +// ausgabeformat ist + +// reset($IPs); +// while(current($IPs)){ +// $Output .= current($IPs) . ',' . $Kommentare[current($IPs)] . ';'; + +// next($IPs); +// } + int retval = request( parameters, response ); if ( retval < 0 ) { return retval; @@ -262,12 +277,11 @@ } } -std::list<std::string> MetaConnection::list_game_server() { - std::list<std::string> mylist; +std::list< std::pair < std::string, std::string > > MetaConnection::list_game_servers() { + std::list< std::pair < std::string, std::string > > mylist; if ( isConnected_ ) { try { asio::streambuf response; - //** typo, server oder servers? std::string parameters( "list_game_servers" ); int retval = request(parameters, response); if ( retval < 0 ) { @@ -286,7 +300,16 @@ case -15: log_->warn ( std::string ("no game server available -15") ); return mylist; default: if ( stream.str().length() > 5 ) { - split(stream.str(), " ", mylist); + + std::vector < std::string > serverlist; + split( stream.str(), ";", serverlist ); + for ( int i = 0; i < serverlist.size(); i ++ ){ + std::vector < std::string > server; + split( serverlist[ i ], ",", server ); + if ( server.size() == 1 ) mylist.push_back( std::pair < std::string, std::string >( server[ 0 ], "" ) ); + if ( server.size() == 2 ) mylist.push_back( std::pair < std::string, std::string >( server[ 0 ], server[ 1 ] ) ); + } + } else { log_->warn ( std::string ("unkown return code for ") + parameters + toStr( returncode ) ); return mylist; Modified: trunk/src/metaserver.h =================================================================== --- trunk/src/metaserver.h 2007-11-14 20:58:39 UTC (rev 838) +++ trunk/src/metaserver.h 2007-11-15 21:34:08 UTC (rev 839) @@ -40,8 +40,11 @@ int check_version( int user_id ); int logout( int user_id ); - int add_game_server(); - std::list<std::string> list_game_server(); + //** register the current ip to the metaserver, you can specify a symbolic name + int add_game_server( const std::string & servername = ""); + + std::list< std::pair < std::string, std::string > > list_game_servers(); + int remove_game_server(); bool isConnected() const { return isConnected_; } @@ -50,6 +53,7 @@ LogManagerBase *log_; std::string hostname_; + std::string servername_; bool isConnected_; asio::io_service & io_service_; Modified: trunk/src/opengateclient.cpp =================================================================== --- trunk/src/opengateclient.cpp 2007-11-14 20:58:39 UTC (rev 838) +++ trunk/src/opengateclient.cpp 2007-11-15 21:34:08 UTC (rev 839) @@ -159,14 +159,14 @@ // } // }; - log->info( std::string( "Request game server from meta server: " ) ); - std::list< std::string > serverOnline( meta.list_game_server() ); - for ( std::list< std::string >::iterator it = serverOnline.begin(); it != serverOnline.end(); it ++ ){ - log->info( *it ); + log->info( std::string( "Request game servers from meta server: " ) ); + std::list< std::pair < std::string, std::string > > serverOnline( meta.list_game_servers() ); + for ( std::list< std::pair < std::string, std::string > >::iterator it = serverOnline.begin(); it != serverOnline.end(); it ++ ){ + log->info( it->second + ": " + it->first ); } if ( serverOnline.size() > 0 ){ log->info( std::string( "choosing the first for connection." ) ); - hostname = *serverOnline.begin(); + hostname = serverOnline.begin()->first; } } Modified: trunk/src/opengateserver.cpp =================================================================== --- trunk/src/opengateserver.cpp 2007-11-14 20:58:39 UTC (rev 838) +++ trunk/src/opengateserver.cpp 2007-11-15 21:34:08 UTC (rev 839) @@ -84,7 +84,7 @@ //** das k\xF6nnte mal vielleicht als option rausreichen, das man wie beim clienten die Wahl hat; //** -M = (withMetaServer = true); bool withMetaServer = true; - + std::string servername( "testserver Sim 1" ); try { asio::io_service io_service; io_servicePtr = &io_service; @@ -93,15 +93,17 @@ metaPtr = new OpenGate::MetaConnection( io_service, *logMgr ); int error = 0; - if ( ( error = metaPtr->add_game_server() ) < 0 ) { + if ( ( error = metaPtr->add_game_server( servername ) ) < 0 ) { logMgr->warn( std::string( "Could not add game server " + toStr ( error ) ) ); } else { logMgr->info( std::string( "server added to meta server " ) ); } - logMgr->info( std::string( "Request game server from meta server: " ) ); - std::list< std::string > serverOnline( metaPtr->list_game_server() ); - copy( serverOnline.begin(), serverOnline.end(), std::ostream_iterator< std::string >( std::cout, "\n" ) ); + logMgr->info( std::string( "Request game servers from meta server: " ) ); + std::list< std::pair < std::string, std::string > > serverOnline( metaPtr->list_game_servers() ); + for ( std::list< std::pair < std::string, std::string > >::iterator it = serverOnline.begin(); it != serverOnline.end(); it ++ ){ + logMgr->info( it->second + ": " + it->first ); + } } tcp::endpoint endpoint( tcp::v4(), OG_PORT ); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <spo...@us...> - 2007-11-14 20:58:40
|
Revision: 838 http://opengate.svn.sourceforge.net/opengate/?rev=838&view=rev Author: spom_spom Date: 2007-11-14 12:58:39 -0800 (Wed, 14 Nov 2007) Log Message: ----------- client ask meta for gameserver Modified Paths: -------------- trunk/src/opengateclient.cpp Modified: trunk/src/opengateclient.cpp =================================================================== --- trunk/src/opengateclient.cpp 2007-11-14 20:48:44 UTC (rev 837) +++ trunk/src/opengateclient.cpp 2007-11-14 20:58:39 UTC (rev 838) @@ -139,30 +139,45 @@ log->info(PACKAGE_STRING); #endif - log->info( std::string( "User: " + username + " looking for host: " + hostname ) ); - asio::io_service io_service; if ( withMetaServer ){ + //** we connect to the metaserver only once to get a valid gameserver; + //** all other communication will be done by the gameserver; + log->info( std::string( "Trying connect to metaserver for a valid server." ) ); + OpenGate::MetaConnection meta( io_service, *log ); - int user_id = meta.login( username, password ); - if (( user_id > 0 ) && ( option_version == 1)) { - int response = meta.check_version( user_id ); - if (response == 1) { - log->debug( "Version is ok" ); - } else { - log->warn( "Version is not ok" ); - } + + //** All communication this should be done by the game server; + // int user_id = meta.login( username, password ); + // if ( ( user_id > 0 ) && ( option_version == 1) ) { + // int response = meta.check_version( user_id ); + // if (response == 1) { + // log->debug( "Version is ok" ); + // } else { + // log->warn( "Version is not ok" ); + // } + // }; + + log->info( std::string( "Request game server from meta server: " ) ); + std::list< std::string > serverOnline( meta.list_game_server() ); + for ( std::list< std::string >::iterator it = serverOnline.begin(); it != serverOnline.end(); it ++ ){ + log->info( *it ); } + if ( serverOnline.size() > 0 ){ + log->info( std::string( "choosing the first for connection." ) ); + hostname = *serverOnline.begin(); + } } - + + log->info( std::string( "User: " + username + " looking for host: " + hostname ) ); OpenGate::NetworkClient nw( io_service, hostname ); if ( nw.online() ){ // //** waiting for userid; asio::thread t( boost::bind( & asio::io_service::run, & io_service ) ); - while( nw.online() && nw.userID() == 0 ){ + while ( nw.online() && nw.userID() == 0 ){ myMSleep( 100 ); } @@ -197,10 +212,9 @@ #endif } - - nw.close(); delete log; + return EXIT_SUCCESS; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <eg...@us...> - 2007-11-14 20:48:53
|
Revision: 837 http://opengate.svn.sourceforge.net/opengate/?rev=837&view=rev Author: egore Date: 2007-11-14 12:48:44 -0800 (Wed, 14 Nov 2007) Log Message: ----------- 2007-11-14 hristoph Brill <eg...@us...> * src/networkServerUser.h: fix build with boost 1.34 Modified Paths: -------------- trunk/ChangeLog trunk/src/networkServerUser.h Modified: trunk/ChangeLog =================================================================== --- trunk/ChangeLog 2007-11-14 19:30:12 UTC (rev 836) +++ trunk/ChangeLog 2007-11-14 20:48:44 UTC (rev 837) @@ -1,3 +1,6 @@ +2007-11-14 hristoph Brill <eg...@us...> + * src/networkServerUser.h: fix build with boost 1.34 + 2007-09-26 Christoph Brill <eg...@us...> * src/metaserver.cpp: beautify the log and indent the ifdefs Modified: trunk/src/networkServerUser.h =================================================================== --- trunk/src/networkServerUser.h 2007-11-14 19:30:12 UTC (rev 836) +++ trunk/src/networkServerUser.h 2007-11-14 20:48:44 UTC (rev 837) @@ -23,6 +23,7 @@ #include <deque> #include <string> +#include <set> #include <asio.hpp> #include "networkProtocol.h" #include "common.h" This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <spo...@us...> - 2007-11-14 19:30:09
|
Revision: 836 http://opengate.svn.sourceforge.net/opengate/?rev=836&view=rev Author: spom_spom Date: 2007-11-14 11:30:12 -0800 (Wed, 14 Nov 2007) Log Message: ----------- add: Screenshot support (Print key), fixed: laser shoot looks better, fixed: connection to metaserver seams to work now. Modified Paths: -------------- trunk/data/materials/advancedMaterials.material trunk/data/misc/sounds.xml trunk/src/Console.cpp trunk/src/Projectile.cpp trunk/src/Projectile.h trunk/src/UnDockedState.cpp trunk/src/metaserver.cpp trunk/src/metaserver.h trunk/src/networkServer.cpp trunk/src/opengateserver.cpp Modified: trunk/data/materials/advancedMaterials.material =================================================================== --- trunk/data/materials/advancedMaterials.material 2007-10-30 23:16:31 UTC (rev 835) +++ trunk/data/materials/advancedMaterials.material 2007-11-14 19:30:12 UTC (rev 836) @@ -11,9 +11,10 @@ { // base colours, not needed for rendering, but as information // to lighting pass categorisation routine - ambient 1 1 1 - diffuse 0 0 0 - specular 0 0 0 0 +// ambient 1 1 1 +// diffuse 0 0 9 +// specular 0 0 1 1 +// emissive 0 0 1 1 // Really basic vertex program // NB we don't use fixed function here because GL does not like // mixing fixed function and vertex programs, depth fighting can @@ -31,12 +32,11 @@ { // base colours, not needed for rendering, but as information // to lighting pass categorisation routine - ambient 0 0 0 + ambient 0 0 1 // do this for each light iteration once_per_light - scene_blend add // Vertex program reference Modified: trunk/data/misc/sounds.xml =================================================================== --- trunk/data/misc/sounds.xml 2007-10-30 23:16:31 UTC (rev 835) +++ trunk/data/misc/sounds.xml 2007-11-14 19:30:12 UTC (rev 836) @@ -15,10 +15,10 @@ </sound> <sound> <name>sounds/docked/defaultMusic</name> - <file>sounds/stations/quantar/Sarin_Sunday_-_Lonely_hike.ogg</file> + <file>sounds/stations/quantar/sarin_sunday_-_lonely_hike.ogg</file> </sound> <sound> <name>sounds/undocked/defaultMusic</name> - <file>sounds/sectors/tauseti/Simon_Mahler_-_HipDaHop.ogg</file> + <file>sounds/sectors/tauseti/simon_mahler_-_hipdahop.ogg</file> </sound> -</container> \ No newline at end of file +</container> Modified: trunk/src/Console.cpp =================================================================== --- trunk/src/Console.cpp 2007-10-30 23:16:31 UTC (rev 835) +++ trunk/src/Console.cpp 2007-11-14 19:30:12 UTC (rev 836) @@ -24,6 +24,7 @@ #include "LogManager.h" #include "networkClient.h" +#include <OgreRenderWindow.h> #include <CEGUI/elements/CEGUIEditbox.h> #include <CEGUI/elements/CEGUIListbox.h> #include <CEGUI/elements/CEGUIListboxTextItem.h> @@ -125,6 +126,12 @@ if ( e.key == OIS::KC_LSHIFT) resources_->setGlobalKeyModifier( KEY_SHIFT ); if ( e.key == OIS::KC_RSHIFT) resources_->setGlobalKeyModifier( KEY_SHIFT ); + //** Create one screenshot; + if ( e.key == OIS::KC_SYSRQ ) { + std::string tmp( "screenshot" + LogManager::getSingleton().timeStamp() + ".png" ); + ResourceManager::getSingleton().renderWindow->writeContentsToFile( tmp.c_str() ); + LogManager::getSingleton().info( "wrote: " + tmp ); + } return true; } Modified: trunk/src/Projectile.cpp =================================================================== --- trunk/src/Projectile.cpp 2007-10-30 23:16:31 UTC (rev 835) +++ trunk/src/Projectile.cpp 2007-11-14 19:30:12 UTC (rev 836) @@ -26,6 +26,7 @@ #include <OgreManualObject.h> #include <OgreBillboard.h> #include <OgreBillboardSet.h> +#include <OgreRibbonTrail.h> namespace OpenGate{ @@ -39,11 +40,24 @@ beam_ = NULL; bullet_ = NULL; shape_ = NULL; + trail_ = NULL; Ogre::Quaternion direction( parent_->mainNode()->getOrientation() ); Ogre::Vector3 relGunPos( ( gun.sceneNode().getParentSceneNode()->getOrientation() * gun.sceneNode().getPosition() ) * gun.sceneNode().getParentSceneNode()->getParentSceneNode()->getScale() ); + + maxRange_ = gun.gun()->speed() * maxLifeTime_; + + mainNode_->setOrientation( direction ); + mainNode_->setPosition( gun.sceneNode().getWorldPosition() - direction.zAxis() * relGunPos[ 2 ] ); + mainNode_->_update( true, true ); + + lifeTime_ = 0.0; + oldTime_ = 0.0; + ammoHit_ = false; + vel_ = gun.gun()->speed() * -direction.zAxis().normalisedCopy() + parent->velocity(); + switch ( gun.gun()->type() ){ case BULLET:{ int maxBB = 20; @@ -64,28 +78,36 @@ mainNode_->attachObject( bullet_ ); } break; case LASER:{ - beam_ = sceneMgr_->createManualObject( bulletName + "_ManualObj" ); - - Ogre::Real width = 0.25; - beam_->begin( "BeamGreen", Ogre::RenderOperation::OT_TRIANGLE_LIST); - beam_->position( 0.0, -width, 0.0 ); beam_->textureCoord( 0, 0 ); - beam_->position( 0.0, width, 0.0 ); beam_->textureCoord( 1, 0 ); - beam_->position( 0.0, width, 1.0 ); beam_->textureCoord( 1, 1 ); - beam_->position( 0.0, -width, 1.0 ); beam_->textureCoord( 0, 1 ); - beam_->quad( 0, 1, 2, 3 ); - beam_->quad( 0, 3, 2, 1 ); - beam_->end(); - + bool manuObject = false; shape_ = mainNode_->createChildSceneNode( bulletName + "_transform" ); - shape_->attachObject( beam_ ); - if ( fabs( relGunPos[ 0 ] ) > 1e-3 ){ shape_->roll( Ogre::Degree( 0.0 ) ); } else { shape_->roll( Ogre::Radian( atan( relGunPos[ 1 ] / relGunPos[ 0 ] ) ) ); } - mainNode_->setOrientation( direction ); + if ( manuObject ){ + beam_ = sceneMgr_->createManualObject( bulletName + "_ManualObj" ); + Ogre::Real width = 0.25; + beam_->begin( "BeamGreen", Ogre::RenderOperation::OT_TRIANGLE_LIST); + beam_->position( 0.0, -width, 0.0 ); beam_->textureCoord( 0, 0 ); + beam_->position( 0.0, width, 0.0 ); beam_->textureCoord( 1, 0 ); + beam_->position( 0.0, width, 1.0 ); beam_->textureCoord( 1, 1 ); + beam_->position( 0.0, -width, 1.0 ); beam_->textureCoord( 0, 1 ); + beam_->quad( 0, 1, 2, 3 ); + beam_->quad( 0, 3, 2, 1 ); + beam_->end(); + shape_->attachObject( beam_ ); + } else { + trail_ = sceneMgr_->createRibbonTrail( bulletName + "_RibbonTrail"); + trail_->setMaterialName( "BeamGreen" ); + trail_->setTrailLength( maxRange_ / 2.0 ); + trail_->setWidthChange( 0, 2.0 ); + trail_->setMaxChainElements( 1000 ); + trail_->setInitialWidth( 0, 1.0 ); + trail_->addNode( shape_ ); + sceneMgr_->getRootSceneNode()->createChildSceneNode()->attachObject( trail_ ); + } } break; case MININGLASER: { } break; @@ -93,47 +115,7 @@ LogManager::getSingleton().warn( "guntype unknown: " + toStr( gun.gun()->type() ) + " Forced bullet." ); }break; - } // switch gun.gun()->type() - -// chain_ = sceneMgr_->createBillboardChain( name_ + "_" + toStr( shotCounter ) + "_ProjectileBBC" ); -// chain_->setMaxChainElements( 10 ); -// chain_->setMaterialName("BulletWhite"); - -// for ( int i = 0; i < 10; i ++ ){ -// chain_->addChainElement(0, Ogre::BillboardChain::Element( Ogre::Vector3( 0.0, 0.0, Ogre::Real( i * 0.01 ) ), -// 0.2, 0.1, Ogre::ColourValue(0.0f, 0.0f, 0.0f) ) ); -// // chain_->addChainElement(0, Ogre::BillboardChain::Element( Ogre::Vector3( 0.0, -0.1, Ogre::Real( i * 0.01 ) ), -// // 0.2, 0.1, Ogre::ColourValue(1.0f, 1.0f, 1.0f) ) ); -// } -// mainNode_->attachObject( chain_ ); -// chain_->setVisible( true ); - -// bullet_ = sceneMgr_->createManualObject( bulletName + "_BulletShape" ); -// bullet_->begin("Bullet1", Ogre::RenderOperation::OT_TRIANGLE_LIST); -// Ogre::Real scale = 0.1; -// unsigned point_index = 0; -// bullet_->position( -scale, -scale, 0 ); -// bullet_->position( scale, -scale, 0 ); -// bullet_->position( scale, scale, 0 ); -// bullet_->position( -scale, -scale, 0 ); -// bullet_->quad(point_index, point_index + 1, point_index + 2, point_index + 3); -// point_index += 4; -// bullet_->position( -scale, -scale, 0 ); -// bullet_->position( scale, scale, 0 ); -// bullet_->position( -scale, scale, 0 ); -// bullet_->position( -scale, -scale, 0 ); -// bullet_->quad(point_index, point_index + 1, point_index + 2, point_index + 3); -// point_index += 4; -// bullet_->end(); -// mainNode_->attachObject( bullet_ ); - - mainNode_->setPosition( gun.sceneNode().getWorldPosition() - direction.zAxis() * relGunPos[ 2 ] ); - - lifeTime_ = 0.0; - oldTime_ = 0.0; - - vel_ = gun.gun()->speed() * -direction.zAxis().normalisedCopy() + parent->velocity(); - ammoHit_ = false; + } } Projectile::~Projectile() { @@ -150,6 +132,13 @@ } sceneMgr_->destroyManualObject( beam_ ); } + if ( trail_ ) { + if ( shape_ ) { + mainNode_->removeAndDestroyChild( shape_->getName() ); + } + sceneMgr_->destroyRibbonTrail( trail_ ); + } + // mainNode_->detachObject( chain_ ); // sceneMgr_->destroyBillboardChain( chain_ ); } @@ -182,27 +171,29 @@ Ogre::Ray bulletRay( mainNode_->getPosition(), vel_.normalisedCopy() ); if ( !OpcodeCollisionDetection::getSingleton().checkCollideRay( this, bulletRay, (vel_ * elapsedTime).length() ) ){ - if ( bullet_ ){ - mainNode_->translate( vel_ * elapsedTime ); - } else if ( beam_ ){ - mainNode_->translate( vel_ * elapsedTime ); - Ogre::Real beamLength = min( (vel_ * lifeTime_).length(), 300.0f ); + mainNode_->translate( vel_ * elapsedTime ); + Ogre::Real beamLength = min( (vel_ * lifeTime_).length(), maxRange_ / 2.0f ); + Ogre::Real beamWidthScale = 1.0; - Ogre::Real beamWidthScale = 1.0; + if ( beam_ ){ // if ( beamLength > 299.0f ) beamWidthScale = 1; - shape_->scale( 1.0, beamWidthScale, beamLength / shape_->getScale()[2] ); } + if ( trail_ ){ + // trail_->setTrailLength( beamLength ); + } } } else { - if ( beam_ ){ - Ogre::Real beamLength = min( (vel_ * lifeTime_).length(), 300.0f ); - beamLength -= ( parent_->mainNode()->getWorldPosition() + ( vel_ * lifeTime_ ) - - mainNode_->getWorldPosition() ).length(); + Ogre::Real beamLength = min( (vel_ * lifeTime_).length(), maxRange_ / 2.0f ); + beamLength -= ( parent_->mainNode()->getWorldPosition() + ( vel_ * lifeTime_ ) - + mainNode_->getWorldPosition() ).length(); + if ( beam_ ){ if ( beamLength > 0 ){ shape_->scale( 1.0, 1.0, beamLength / shape_->getScale()[ 2 ] ); } + } else if ( trail_ ){ + trail_->setTrailLength( beamLength ); } } } Modified: trunk/src/Projectile.h =================================================================== --- trunk/src/Projectile.h 2007-10-30 23:16:31 UTC (rev 835) +++ trunk/src/Projectile.h 2007-11-14 19:30:12 UTC (rev 836) @@ -58,12 +58,14 @@ // Ogre::BillboardChain * chain_; Ogre::BillboardSet * bullet_; Ogre::ManualObject * beam_; + Ogre::RibbonTrail * trail_; Ogre::Vector3 vel_; Ogre::SceneNode * shape_; Ogre::Real maxLifeTime_; Ogre::Real oldTime_; + Ogre::Real maxRange_; bool ammoHit_; }; Modified: trunk/src/UnDockedState.cpp =================================================================== --- trunk/src/UnDockedState.cpp 2007-10-30 23:16:31 UTC (rev 835) +++ trunk/src/UnDockedState.cpp 2007-11-14 19:30:12 UTC (rev 836) @@ -473,13 +473,6 @@ //** Toggle through camera modes; if ( e.key == OIS::KC_6 ) { toggleNextCamera_(); } - //** Create one screenshot; - if ( e.key == OIS::KC_SYSRQ ) { - char tmp[ 20 ]; - sprintf(tmp, "screenshot.png" ); - window_->writeContentsToFile(tmp); - // window_->setDebugText(String("Wrote ") + tmp); - } if ( e.key == OIS::KC_R ) { sceneDetailIndex_ = ( sceneDetailIndex_ + 1) % 3; switch( sceneDetailIndex_ ) { Modified: trunk/src/metaserver.cpp =================================================================== --- trunk/src/metaserver.cpp 2007-10-30 23:16:31 UTC (rev 835) +++ trunk/src/metaserver.cpp 2007-11-14 19:30:12 UTC (rev 836) @@ -29,54 +29,58 @@ namespace OpenGate{ -MetaConnection::MetaConnection(asio::io_service & io_service, LogManagerBase & log ) : +MetaConnection::MetaConnection( asio::io_service & io_service, LogManagerBase & log ) : io_service_( io_service ), socket_( io_service ), resolver_( io_service ), log_( &log ) { + isConnected_ = true; hostname_ = std::string( "opacma.ontheserver.de" ); - log_->info( std::string( "Querying " ) + hostname_); - asio::error error = asio::error::host_not_found; - try{ - tcp::resolver::query query(hostname_, "http"); - tcp::resolver::iterator endpoint_iterator = resolver_.resolve(query); - tcp::resolver::iterator end; +// asio::error error = asio::error::host_not_found; +// try{ +// tcp::resolver::query query( hostname_, "http" ); +// tcp::resolver::iterator endpoint_iterator = resolver_.resolve( query ); +// tcp::resolver::iterator end; - while ( error && endpoint_iterator != end ) { - socket_.close(); - socket_.connect( *endpoint_iterator++, asio::assign_error( error ) ); - } - } catch ( asio::error & e) { - log_->fatal( std::string( "asio::error: " ) + e.what() ); - } catch ( std::exception & e) { - log_->fatal( std::string( "std::exception: " ) + e.what() ); - } catch (...) { - log_->fatal( "Unkown exception occured while resolving the metaserver" ); - } +// while ( error && endpoint_iterator != end ) { +// socket_.close(); +// socket_.connect( *endpoint_iterator++, asio::assign_error( error ) ); +// } +// } catch ( asio::error & e) { +// log_->fatal( std::string( "resolving meta server: asio::error: " ) + e.what() ); +// isConnected_ = false; +// } catch ( std::exception & e) { +// log_->fatal( std::string( "resolving meta server: std::exception: " ) + e.what() ); +// isConnected_ = false; +// } catch (...) { +// log_->fatal( "resolving meta server: unkown exception occured" ); +// isConnected_ = false; +// } } MetaConnection::~MetaConnection() { - log_->info ( "Shutting down metaserver connection " ); + if ( isConnected_ ) { + log_->info ( "Shutting down metaserver connection " ); + } // asio doesn't need a cleanup, right? } int MetaConnection::login( const std::string & userName, const std::string & passwd ) { - - try { - - asio::streambuf response; - std::string parameters( "login&username=" + userName + "&password=" + passwd); - int retval = request(parameters, response); - if (retval < 0) { - return retval; - } - - // We got a usefull body. The body is an int, lets use it. - if (response.size() > 0) { - std::ostringstream stream; - stream << &response; - int returncode = toInt( stream.str() ); - switch (returncode) { + if ( isConnected_ ) { + try { + asio::streambuf response; + std::string parameters( "login&username=" + userName + "&password=" + passwd); + int retval = request(parameters, response); + if (retval < 0) { + return retval; + } + + // We got a usefull body. The body is an int, lets use it. + if (response.size() > 0) { + std::ostringstream stream; + stream << &response; + int returncode = toInt( stream.str() ); + switch (returncode) { case -101: log_->warn ( std::string ("no action given") ); return -3; case -102: log_->warn ( std::string ("action given but unknown") ); return -3; case -103: log_->warn ( std::string ("database is not available") ); return -3; @@ -91,40 +95,42 @@ log_->warn ( std::string ("unkown return code for") + parameters + toStr( returncode ) ); return -4; } + } + } else { + log_->fatal( std::string( "meta server login: we got no response " ) ); } + } catch ( asio::error & e) { + log_->fatal( std::string( "meta server login: asio::error: " ) + e.what() ); + return -5; + } catch ( std::exception & e) { + log_->fatal( std::string( "meta server login: std::exception: " ) + e.what() ); + return -5; + } catch (...) { + log_->fatal( "meta server login: unkown exception occured" ); + return -5; } - - - } catch ( asio::error & e) { - log_->fatal( std::string( "asio::error: " ) + e.what() ); - return -5; - } catch ( std::exception & e) { - log_->fatal( std::string( "std::exception: " ) + e.what() ); - return -5; - } catch (...) { - log_->fatal( "Unkown exception occured while resolving the server" ); - return -5; + return 1; } - return 1; + return META_NOT_CONNECTED; } int MetaConnection::check_version( int user_id ) { - - try { - - asio::streambuf response; - std::string parameters("check_version&version=" + std::string(PACKAGE_VERSION) + "&user_id=" + toStr(user_id)); - int retval = request(parameters, response); - if (retval < 0) { - return retval; - } - - // We got a usefull body. The body is an int, lets use it. - if (response.size() > 0) { - std::ostringstream stream; - stream << &response; - int returncode = toInt( stream.str() ); - switch (returncode) { + if ( isConnected_ ) { + + try { + asio::streambuf response; + std::string parameters("check_version&version=" + std::string(PACKAGE_VERSION) + "&user_id=" + toStr(user_id)); + int retval = request(parameters, response); + if (retval < 0) { + return retval; + } + + // We got a usefull body. The body is an int, lets use it. + if (response.size() > 0) { + std::ostringstream stream; + stream << &response; + int returncode = toInt( stream.str() ); + switch (returncode) { case -101: log_->warn ( std::string ("no action given") ); return -3; case -102: log_->warn ( std::string ("action given but unknown") ); return -3; case -103: log_->warn ( std::string ("database is not available") ); return -3; @@ -139,93 +145,98 @@ log_->warn ( std::string ("unkown return code for") + parameters + toStr( returncode ) ); return -4; } + } + } else { + log_->fatal( std::string( "meta server check_version: we got no response " ) ); } + } catch ( asio::error & e) { + log_->fatal( std::string( "meta server check_version: asio::error: " ) + e.what() ); + return -5; + } catch ( std::exception & e) { + log_->fatal( std::string( "meta server check_version: std::exception: " ) + e.what() ); + return -5; + } catch (...) { + log_->fatal( "meta server check_version: unkown exception occured" ); + return -5; } - - } catch ( asio::error & e) { - log_->fatal( std::string( "asio::error: " ) + e.what() ); - return -5; - } catch ( std::exception & e) { - log_->fatal( std::string( "std::exception: " ) + e.what() ); - return -5; - } catch (...) { - log_->fatal( "check_version: Unkown exception occured while resolving the server" ); - return -5; + return 1; } - return 1; + return META_NOT_CONNECTED; } int MetaConnection::logout( int user_id ) { - - try { - - asio::streambuf response; - std::string parameters( "logout&user_id=" + toStr(user_id) + "&user_ip=" + "123.123.123.123"); // FIXME: determine IP or think of other way to handle this - int retval = request(parameters, response); - if (retval < 0) { - return retval; - } - - // We got a usefull body. The body is an int, lets use it. - if (response.size() > 0) { - std::ostringstream stream; - stream << &response; - int returncode = toInt( stream.str() ); - switch (returncode) { + if ( isConnected_ ) { + + try { + + asio::streambuf response; + std::string parameters( "logout&user_id=" + toStr(user_id) + "&user_ip=" + "123.123.123.123"); // FIXME: determine IP or think of other way to handle this + int retval = request(parameters, response); + if (retval < 0) { + return retval; + } + + // We got a usefull body. The body is an int, lets use it. + if (response.size() > 0) { + std::ostringstream stream; + stream << &response; + int returncode = toInt( stream.str() ); + switch (returncode) { case -101: log_->warn ( std::string ("no action given") ); return -3; case -102: log_->warn ( std::string ("action given but unknown") ); return -3; case -103: log_->warn ( std::string ("database is not available") ); return -3; - case -1: log_->warn ( std::string ("no user_id given") ); return -3; - case -2: log_->warn ( std::string ("no user_ip given") ); return -3; - case -3: log_->warn ( std::string ("user_id doesn't exist") ); return -3; - case -4: log_->warn ( std::string ("user_ip incorrect") ); return -3; - case -5: log_->warn ( std::string ("user was already offline") ); return 1; + case -1: log_->warn ( std::string ("no user_id given") ); return -3; + case -2: log_->warn ( std::string ("no user_ip given") ); return -3; + case -3: log_->warn ( std::string ("user_id doesn't exist") ); return -3; + case -4: log_->warn ( std::string ("user_ip incorrect") ); return -3; + case -5: log_->warn ( std::string ("user was already offline") ); return 1; default: if (returncode > 0) { return returncode; - } else { - log_->warn ( std::string ("unkown return code for") + parameters + toStr( returncode ) ); - return -4; } + log_->warn ( std::string ("unkown return code for") + parameters + toStr( returncode ) ); + return -4; + } + } else { + log_->fatal( std::string( "meta server logout: we got no response " ) ); } + } catch ( asio::error & e) { + log_->fatal( std::string( "meta server logout: asio::error: " ) + e.what() ); + return -5; + } catch ( std::exception & e) { + log_->fatal( std::string( "meta server logout: std::exception: " ) + e.what() ); + return -5; + } catch (...) { + log_->fatal( "meta server logout: unkown exception occured" ); + return -5; } - - - } catch ( asio::error & e) { - log_->fatal( std::string( "asio::error: " ) + e.what() ); - return -5; - } catch ( std::exception & e) { - log_->fatal( std::string( "std::exception: " ) + e.what() ); - return -5; - } catch (...) { - log_->fatal( "Unkown exception occured while resolving the server" ); - return -5; + return 1; } - return 1; + return META_NOT_CONNECTED; } int MetaConnection::add_game_server() { - - try { - - asio::streambuf response; - std::string parameters( "add_game_server" ); - int retval = request(parameters, response); - if (retval < 0) { - return retval; - } - - // We got a usefull body. The body is an int, lets use it. - if (response.size() > 0) { - std::ostringstream stream; - stream << &response; - int returncode = toInt( stream.str() ); - switch (returncode) { + if ( isConnected_ ) { + + try { + asio::streambuf response; + std::string parameters( "add_game_server" ); + int retval = request( parameters, response ); + if ( retval < 0 ) { + return retval; + } + + // We got a usefull body. The body is an int, lets use it. + if ( response.size() > 0 ) { + std::ostringstream stream; + stream << &response; + int returncode = toInt( stream.str() ); + switch (returncode) { case -101: log_->warn ( std::string ("no action given") ); return -3; case -102: log_->warn ( std::string ("action given but unknown") ); return -3; case -103: log_->warn ( std::string ("database is not available") ); return -3; - case -12: log_->warn ( std::string ("no additional server possible") ); return -3; - case -13: log_->warn ( std::string ("ip is already a server") ); return -3; + case -12: log_->warn ( std::string ("no additional server possible") ); return -3; + case -13: log_->warn ( std::string ("ip is already a server") ); return -3; default: if (returncode > 0) { return returncode; @@ -233,85 +244,89 @@ log_->warn ( std::string ("unkown return code for ") + parameters + toStr( returncode ) ); return -4; } + } + } else { + log_->fatal( std::string( "meta server add game server: we got no response " ) ); } + } catch ( asio::error & e) { + log_->fatal( std::string( "meta server add game server: asio::error: " ) + e.what() ); + return -5; + } catch ( std::exception & e) { + log_->fatal( std::string( "meta server add game server: std::exception: " ) + e.what() ); + return -5; + } catch (...) { + log_->fatal( "meta server add game server: unkown exception occured" ); + return -5; } - - } catch ( asio::error & e) { - log_->fatal( std::string( "asio::error: " ) + e.what() ); - return -5; - } catch ( std::exception & e) { - log_->fatal( std::string( "std::exception: " ) + e.what() ); - return -5; - } catch (...) { - log_->fatal( "Unkown exception occured while resolving the server" ); - return -5; + return 1; } - return 1; } std::list<std::string> MetaConnection::list_game_server() { - std::list<std::string> mylist; - try { - - asio::streambuf response; - std::string parameters( "list_game_server" ); - int retval = request(parameters, response); - if (retval < 0) { - return mylist; - } - - // We got a usefull body. The body is an int, lets use it. - if (response.size() > 0) { - std::ostringstream stream; - stream << &response; - int returncode = toInt( stream.str() ); - switch (returncode) { - case -101: log_->warn ( std::string ("no action given") ); return mylist; - case -102: log_->warn ( std::string ("action given but unknown") ); return mylist; - case -103: log_->warn ( std::string ("database is not available") ); return mylist; - case -15: log_->warn ( std::string ("no game server available") ); return mylist; + if ( isConnected_ ) { + try { + asio::streambuf response; + //** typo, server oder servers? + std::string parameters( "list_game_servers" ); + int retval = request(parameters, response); + if ( retval < 0 ) { + return mylist; + } + + // We got a usefull body. The body is an int, lets use it. + if ( response.size() > 0 ) { + std::ostringstream stream; + stream << &response; + int returncode = toInt( stream.str() ); + switch (returncode) { + case -101: log_->warn ( std::string ("no action given -101") ); return mylist; + case -102: log_->warn ( std::string ("action given but unknown -102") ); return mylist; + case -103: log_->warn ( std::string ("database is not available -103") ); return mylist; + case -15: log_->warn ( std::string ("no game server available -15") ); return mylist; default: - - if (stream.str().length() > 5) { + if ( stream.str().length() > 5 ) { split(stream.str(), " ", mylist); } else { log_->warn ( std::string ("unkown return code for ") + parameters + toStr( returncode ) ); return mylist; } + } + } else { + log_->fatal( std::string( "meta server list game server: we got no response " ) ); } + } catch ( asio::error & e) { + log_->fatal( std::string( "meta server list game server: asio::error: " ) + e.what() ); + return mylist; + } catch ( std::exception & e) { + log_->fatal( std::string( "meta server list game server: std::exception: " ) + e.what() ); + return mylist; + } catch (...) { + log_->fatal( "meta server list game server: unkown exception occured" ); + return mylist; } - - } catch ( asio::error & e) { - log_->fatal( std::string( "asio::error: " ) + e.what() ); return mylist; - } catch ( std::exception & e) { - log_->fatal( std::string( "std::exception: " ) + e.what() ); - return mylist; - } catch (...) { - log_->fatal( "Unkown exception occured while resolving the server" ); - return mylist; } return mylist; } int MetaConnection::remove_game_server() { - - try { - - asio::streambuf response; - std::string parameters( "remove_game_server" ); - int retval = request(parameters, response); - if (retval < 0) { - return retval; - } - - // We got a usefull body. The body is an int, lets use it. - if (response.size() > 0) { - std::ostringstream stream; - stream << &response; - int returncode = toInt( stream.str() ); - switch (returncode) { + if ( isConnected_ ) { + + try { + asio::streambuf response; + std::string parameters( "remove_game_server" ); + int retval = request(parameters, response); + if (retval < 0) { + return retval; + } + + // We got a usefull body. The body is an int, lets use it. + if (response.size() > 0) { + std::ostringstream stream; + stream << &response; + int returncode = toInt( stream.str() ); + switch (returncode) { case -101: log_->warn ( std::string ("no action given") ); return -3; case -102: log_->warn ( std::string ("action given but unknown") ); return -3; case -103: log_->warn ( std::string ("database is not available") ); return -3; @@ -323,47 +338,70 @@ log_->warn ( std::string ("unkown return code for ") + parameters + toStr( returncode ) ); return -4; } + } + } else { + log_->fatal( std::string( "meta server remove game server: we got no response " ) ); } + + } catch ( asio::error & e) { + log_->fatal( std::string( "meta server remove game server: asio::error: " ) + e.what() ); + return -5; + } catch ( std::exception & e) { + log_->fatal( std::string( "meta server remove game server: std::exception: " ) + e.what() ); + return -5; + } catch (...) { + log_->fatal( "meta server remove game server: unkown exception occured" ); + return -5; } + return 1; + } +} +int MetaConnection::request( const std::string & parameters, asio::streambuf & response ) { + // Form the request. We specify the "Connection: close" header so that the + // server will close the socket after transmitting the response. This will + // allow us to treat all data up until the EOF as the content. + asio::error error = asio::error::host_not_found; + try{ + tcp::resolver::query query( hostname_, "http" ); + tcp::resolver::iterator endpoint_iterator = resolver_.resolve( query ); + tcp::resolver::iterator end; + while ( error && endpoint_iterator != end ) { + socket_.close(); + socket_.connect( *endpoint_iterator++, asio::assign_error( error ) ); + } } catch ( asio::error & e) { - log_->fatal( std::string( "asio::error: " ) + e.what() ); - return -5; + log_->fatal( std::string( "resolving meta server: asio::error: " ) + e.what() ); + isConnected_ = false; } catch ( std::exception & e) { - log_->fatal( std::string( "std::exception: " ) + e.what() ); - return -5; + log_->fatal( std::string( "resolving meta server: std::exception: " ) + e.what() ); + isConnected_ = false; } catch (...) { - log_->fatal( "Unkown exception occured while resolving the server" ); - return -5; + log_->fatal( "resolving meta server: unkown exception occured" ); + isConnected_ = false; } - return 1; -} -int MetaConnection::request( const std::string & parameters, asio::streambuf & response ) { - // Form the request. We specify the "Connection: close" header so that the - // server will close the socket after transmitting the response. This will - // allow us to treat all data up until the EOF as the content. asio::streambuf request; std::ostream request_stream(&request); request_stream << "GET " << "/script/schnittstelle/?action=" << parameters << " HTTP/1.0\r\n"; request_stream << "Host: " << hostname_ << "\r\n"; request_stream << "Accept: */*\r\n"; request_stream << "Connection: close\r\n\r\n"; - + // Send the request. - asio::write(socket_, request); - + asio::write( socket_, request ); + // Read the response status line. #ifdef WIN32 - // we dont have boost:regex within win32, i will fix this later (carsten) -//asio::read_until(socket_, response, "\n"); + // we dont have boost:regex within win32, i will fix this later (carsten) + //asio::read_until(socket_, response, "\n"); #else - asio::read_until(socket_, response, boost::regex("\r\n")); + asio::read_until( socket_, response, boost::regex("\r\n") ); #endif - + // Check that response is OK. - std::istream response_stream(&response); + std::istream response_stream( &response ); std::string http_version; response_stream >> http_version; unsigned int status_code; @@ -374,7 +412,7 @@ std::cout << "Invalid response\n"; return -51; } - if (status_code != 200) { + if ( status_code != 200 ) { std::cout << "Response returned with status code " << status_code << "\n"; return -52; } @@ -384,24 +422,25 @@ // we dont have boost:regex within win32, i will fix this later (carsten) //asio::read_until(socket_, response, "\n"); #else - asio::read_until(socket_, response, boost::regex("\r\n\r\n")); + asio::read_until( socket_, response, boost::regex( "\r\n\r\n" ) ); #endif // Process the response headers. (to get the crap of the response before reading the body!) std::string header; - while (std::getline(response_stream, header) && header != "\r"); - - asio::error error = asio::error::eof; - // Read until EOF, writing data to output as we go. - while (asio::read(socket_, response, - asio::transfer_at_least(1), - asio::assign_error(error))) - std::cout << &response; - if (error != asio::error::eof) - throw error; - + // std::cout << "header: " << std::endl; + while ( std::getline(response_stream, header) && header != "\r"){ + // std::cout << header << std::endl; + } + + error = asio::error::eof; + // Read until EOF, writing data to output as we go. + // std::cout << "response: " <<std::endl; + while ( asio::read( socket_, response, asio::transfer_at_least( 1 ), asio::assign_error( error ) ) ){ + // std::cout << &response << std::endl; + } + + if ( error != asio::error::eof ) throw error; return 1; } - } // namespace OpenGate Modified: trunk/src/metaserver.h =================================================================== --- trunk/src/metaserver.h 2007-10-30 23:16:31 UTC (rev 835) +++ trunk/src/metaserver.h 2007-11-14 19:30:12 UTC (rev 836) @@ -25,6 +25,8 @@ using asio::ip::tcp; +#define META_NOT_CONNECTED -1 + namespace OpenGate{ class LogManagerBase; @@ -42,10 +44,13 @@ std::list<std::string> list_game_server(); int remove_game_server(); + bool isConnected() const { return isConnected_; } + private: LogManagerBase *log_; std::string hostname_; + bool isConnected_; asio::io_service & io_service_; tcp::socket socket_; Modified: trunk/src/networkServer.cpp =================================================================== --- trunk/src/networkServer.cpp 2007-10-30 23:16:31 UTC (rev 835) +++ trunk/src/networkServer.cpp 2007-11-14 19:30:12 UTC (rev 836) @@ -123,10 +123,10 @@ userNames_.erase( name ); } - // delete user; log_->info( std::string( "DISCONNECTED: " ) + name ); - delete user; + //** this will possible cause segfault if multiple users discos at the same time + // delete user; } void Server::receiveChat( UserSession * user, const MessageBodyChat & msg ){ Modified: trunk/src/opengateserver.cpp =================================================================== --- trunk/src/opengateserver.cpp 2007-10-30 23:16:31 UTC (rev 835) +++ trunk/src/opengateserver.cpp 2007-11-14 19:30:12 UTC (rev 836) @@ -33,25 +33,29 @@ using namespace OpenGate; -LogManagerBase *logMgr = NULL; -asio::io_service *io_servicePtr = NULL; -Server *serverPtr = NULL; -OpenGate::MetaConnection *metaPtr = NULL; +LogManagerBase *logMgr = NULL; +asio::io_service *io_servicePtr = NULL; +Server *serverPtr = NULL; +OpenGate::MetaConnection *metaPtr = NULL; void server_shutdown() { - if ( metaPtr ) { - logMgr->info("Remove server from server list!"); - int error = 0; - if ( (error = metaPtr->remove_game_server() ) < 0) { - logMgr->warn( std::string("Could not remove game server " + toStr ( error ) ) ); - } - } if ( serverPtr ) { serverPtr->shutdown(); + delete serverPtr; } if ( io_servicePtr ) { io_servicePtr->interrupt(); } + if ( metaPtr ) { + if ( metaPtr->isConnected() ){ + logMgr->info("Remove server from server list!"); + int error = 0; + if ( (error = metaPtr->remove_game_server() ) < 0) { + logMgr->warn( std::string("Could not remove game server " + toStr ( error ) ) ); + } + } + delete metaPtr; + } } void signal_term( int singal ) { @@ -74,8 +78,9 @@ logMgr->info( std::string("Starting up server ") + PACKAGE_STRING ); signal( SIGTERM, signal_term ); - signal( SIGINT, signal_interrupt ); + signal( SIGINT, signal_interrupt ); + //** ein bissle mehr verbose output, kommt sp\xE4ter wieder weg.; //** das k\xF6nnte mal vielleicht als option rausreichen, das man wie beim clienten die Wahl hat; //** -M = (withMetaServer = true); bool withMetaServer = true; @@ -85,34 +90,32 @@ io_servicePtr = &io_service; if ( withMetaServer ){ - OpenGate::MetaConnection meta( io_service, *logMgr ); - metaPtr = &meta; + metaPtr = new OpenGate::MetaConnection( io_service, *logMgr ); int error = 0; - if ((error = meta.add_game_server()) < 0) { - logMgr->warn( std::string("Could not add game server " + toStr (error) ) ); - } - //** ein bissle mehr verbose output, kommt sp\xE4ter wieder weg.; - std::list< std::string > serverOnline( meta.list_game_server() ); - copy( serverOnline.begin(), serverOnline.end(), std::ostream_iterator< std::string >( std::cout, " " ) ); + if ( ( error = metaPtr->add_game_server() ) < 0 ) { + logMgr->warn( std::string( "Could not add game server " + toStr ( error ) ) ); + } else { + logMgr->info( std::string( "server added to meta server " ) ); + } + + logMgr->info( std::string( "Request game server from meta server: " ) ); + std::list< std::string > serverOnline( metaPtr->list_game_server() ); + copy( serverOnline.begin(), serverOnline.end(), std::ostream_iterator< std::string >( std::cout, "\n" ) ); } tcp::endpoint endpoint( tcp::v4(), OG_PORT ); - Server server( io_service, endpoint, *logMgr ); - serverPtr = &server; + serverPtr = new Server( io_service, endpoint, *logMgr ); io_service.run(); - } - catch ( asio::error & e ) { - logMgr->fatal( e.what() ); + } catch ( asio::error & e ) { + logMgr->fatal( std::string("opengateserver asio exception: " )+ e.what() ); server_shutdown(); return EXIT_FAILURE; - } - catch ( std::exception & e ) { - logMgr->fatal( std::string("Exception: ") + e.what() ); + } catch ( std::exception & e ) { + logMgr->fatal( std::string("opengateserver std exception: ") + e.what() ); server_shutdown(); return EXIT_FAILURE; } - return EXIT_SUCCESS; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ult...@us...> - 2007-10-30 23:16:28
|
Revision: 835 http://opengate.svn.sourceforge.net/opengate/?rev=835&view=rev Author: ultrasick Date: 2007-10-30 16:16:31 -0700 (Tue, 30 Oct 2007) Log Message: ----------- ?! what the hack? It seams as I really just added the position data. I have no idea how the file size could possibly shrink by adding additional data. Hey, let's add some more data, or let's add much much more data and the file size will become negative! :-D changing mime type back Property Changed: ---------------- trunk/data/misc/sectors.xml Property changes on: trunk/data/misc/sectors.xml ___________________________________________________________________ Name: svn:mime-type + application/xml This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ult...@us...> - 2007-10-30 23:11:47
|
Revision: 834 http://opengate.svn.sourceforge.net/opengate/?rev=834&view=rev Author: ultrasick Date: 2007-10-30 16:11:49 -0700 (Tue, 30 Oct 2007) Log Message: ----------- uploading file with z-axis data Modified Paths: -------------- trunk/data/misc/sectors.xml Modified: trunk/data/misc/sectors.xml =================================================================== --- trunk/data/misc/sectors.xml 2007-10-30 23:10:34 UTC (rev 833) +++ trunk/data/misc/sectors.xml 2007-10-30 23:11:49 UTC (rev 834) @@ -8,7 +8,7 @@ <faction_id>0</faction_id> <category_id>12</category_id> <Squadrok_activity>3</Squadrok_activity> - <position>327 379</position> + <position>327 379 40</position> <jumpgate> <object_id>175</object_id> <position>0 0 0</position> @@ -39,7 +39,7 @@ <name_en>Quanaus Crossing</name_en> <faction_id>2</faction_id> <category_id>12</category_id> - <position>489 414</position> + <position>489 414 -47</position> <jumpgate> <object_id>181</object_id> <linked_to_object_id>646</linked_to_object_id> @@ -61,7 +61,7 @@ <name_en>Ring View</name_en> <faction_id>2</faction_id> <category_id>12</category_id> - <position>412 353</position> + <position>412 353 27</position> <jumpgate> <object_id>185</object_id> <linked_to_object_id>204</linked_to_object_id> @@ -93,7 +93,7 @@ <name_en>Morain Harbour</name_en> <faction_id>1</faction_id> <category_id>12</category_id> - <position>269 476</position> + <position>269 476 39</position> <jumpgate> <object_id>191</object_id> <position>25400 11600 1600</position> @@ -124,7 +124,7 @@ <faction_id>5</faction_id> <category_id>12</category_id> <Squadrok_activity>2</Squadrok_activity> - <position>409 307</position> + <position>409 307 12</position> <jumpgate> <object_id>197</object_id> <linked_to_object_id>442</linked_to_object_id> @@ -146,7 +146,7 @@ <name_en>Inner Aman</name_en> <faction_id>5</faction_id> <category_id>12</category_id> - <position>525 100</position> + <position>525 100 36</position> <jumpgate> <object_id>201</object_id> <linked_to_object_id>713</linked_to_object_id> @@ -168,7 +168,7 @@ <name_en>Connexion</name_en> <faction_id>0</faction_id> <category_id>12</category_id> - <position>304 327</position> + <position>304 327 32</position> <jumpgate> <object_id>205</object_id> <linked_to_object_id>363</linked_to_object_id> @@ -201,7 +201,7 @@ <faction_id>0</faction_id> <category_id>12</category_id> <Squadrok_activity>1</Squadrok_activity> - <position>194 378</position> + <position>194 378 43</position> <jumpgate> <object_id>211</object_id> <linked_to_object_id>585</linked_to_object_id> @@ -228,7 +228,7 @@ <name_en>Tranquillus Minor</name_en> <faction_id>1</faction_id> <category_id>12</category_id> - <position>104 561</position> + <position>104 561 3</position> <jumpgate> <object_id>216</object_id> <linked_to_object_id>566</linked_to_object_id> @@ -259,7 +259,7 @@ <faction_id>1</faction_id> <category_id>12</category_id> <Squadrok_activity>2</Squadrok_activity> - <position>214 721</position> + <position>214 721 -18</position> <jumpgate> <object_id>222</object_id> <linked_to_object_id>227</linked_to_object_id> @@ -291,7 +291,7 @@ <name_de>Hirbel's Channel</name_de> <name_en>Hirbel's Channel</name_en> <Squadrok_activity>1</Squadrok_activity> - <position>250 573</position> + <position>250 573 23</position> <jumpgate> <object_id>228</object_id> <linked_to_object_id>221</linked_to_object_id> @@ -313,7 +313,7 @@ <name_en>Omni IV</name_en> <faction_id>2</faction_id> <category_id>12</category_id> - <position>441 376</position> + <position>441 376 43</position> <jumpgate> <object_id>232</object_id> <linked_to_object_id>646</linked_to_object_id> @@ -335,7 +335,7 @@ <name_en>Gurge</name_en> <faction_id>3</faction_id> <category_id>12</category_id> - <position>338 254</position> + <position>338 254 37</position> <jumpgate> <object_id>236</object_id> <linked_to_object_id>363</linked_to_object_id> @@ -368,7 +368,7 @@ <faction_id>2</faction_id> <category_id>12</category_id> <Squadrok_activity>3</Squadrok_activity> - <position>385 412</position> + <position>385 412 32</position> <jumpgate> <object_id>242</object_id> <linked_to_object_id>433</linked_to_object_id> @@ -395,7 +395,7 @@ <name_en>Outer Lighthouse</name_en> <faction_id>1</faction_id> <category_id>12</category_id> - <position>268 421</position> + <position>268 421 -35</position> <jumpgate> <object_id>247</object_id> <linked_to_object_id>270</linked_to_object_id> @@ -418,7 +418,7 @@ <faction_id>3</faction_id> <category_id>12</category_id> <Squadrok_activity>2</Squadrok_activity> - <position>138 50</position> + <position>138 50 31</position> <jumpgate> <object_id>251</object_id> <linked_to_object_id>408</linked_to_object_id> @@ -441,7 +441,7 @@ <faction_id>6</faction_id> <category_id>12</category_id> <Squadrok_activity>3</Squadrok_activity> - <position>373 568</position> + <position>373 568 6</position> <jumpgate> <object_id>255</object_id> <linked_to_object_id>427</linked_to_object_id> @@ -464,7 +464,7 @@ <faction_id>2</faction_id> <category_id>12</category_id> <Squadrok_activity>3</Squadrok_activity> - <position>538 640</position> + <position>538 640 47</position> <jumpgate> <object_id>259</object_id> <linked_to_object_id>294</linked_to_object_id> @@ -486,7 +486,7 @@ <name_en>Octavius Depot</name_en> <faction_id>3</faction_id> <category_id>12</category_id> - <position>202 176</position> + <position>202 176 29</position> <jumpgate> <object_id>263</object_id> <linked_to_object_id>665</linked_to_object_id> @@ -499,7 +499,7 @@ <name_en>Great Venture Belt</name_en> <faction_id>2</faction_id> <category_id>12</category_id> - <position>347 517</position> + <position>347 517 30</position> <jumpgate> <object_id>265</object_id> <linked_to_object_id>545</linked_to_object_id> @@ -532,7 +532,7 @@ <faction_id>1</faction_id> <category_id>12</category_id> <Squadrok_activity>1</Squadrok_activity> - <position>239 387</position> + <position>239 387 -28</position> <jumpgate> <object_id>271</object_id> <linked_to_object_id>246</linked_to_object_id> @@ -560,7 +560,7 @@ <faction_id>0</faction_id> <category_id>12</category_id> <Squadrok_activity>3</Squadrok_activity> - <position>344 348</position> + <position>344 348 -24</position> <jumpgate> <object_id>276</object_id> <linked_to_object_id>174</linked_to_object_id> @@ -593,7 +593,7 @@ <faction_id>0</faction_id> <category_id>12</category_id> <Squadrok_activity>6</Squadrok_activity> - <position>274 383</position> + <position>274 383 -42</position> <jumpgate> <object_id>282</object_id> <linked_to_object_id>353</linked_to_object_id> @@ -606,7 +606,7 @@ <name_en>Arkan's Cloud</name_en> <faction_id>3</faction_id> <category_id>12</category_id> - <position>182 256</position> + <position>182 256 -4</position> <jumpgate> <object_id>284</object_id> <linked_to_object_id>450</linked_to_object_id> @@ -638,7 +638,7 @@ <name_en>Hook of Roh</name_en> <faction_id>2</faction_id> <category_id>12</category_id> - <position>520 475</position> + <position>520 475 -9</position> <jumpgate> <object_id>290</object_id> <linked_to_object_id>736</linked_to_object_id> @@ -665,7 +665,7 @@ <name_en>Orus' Tail</name_en> <faction_id>2</faction_id> <category_id>12</category_id> - <position>483 598</position> + <position>483 598 12</position> <jumpgate> <object_id>295</object_id> <linked_to_object_id>679</linked_to_object_id> @@ -692,7 +692,7 @@ <name_en>Aman Gate</name_en> <faction_id>5</faction_id> <category_id>12</category_id> - <position>331 318</position> + <position>331 318 -1</position> <jumpgate> <object_id>300</object_id> <linked_to_object_id>442</linked_to_object_id> @@ -720,7 +720,7 @@ <faction_id>3</faction_id> <category_id>12</category_id> <Squadrok_activity>3</Squadrok_activity> - <position>198 302</position> + <position>198 302 24</position> <jumpgate> <object_id>305</object_id> <linked_to_object_id>389</linked_to_object_id> @@ -742,7 +742,7 @@ <name_en>Narrow Canal</name_en> <faction_id>1</faction_id> <category_id>12</category_id> - <position>255 652</position> + <position>255 652 -45</position> <jumpgate> <object_id>309</object_id> <linked_to_object_id>374</linked_to_object_id> @@ -770,7 +770,7 @@ <faction_id>2</faction_id> <category_id>12</category_id> <Squadrok_activity>8</Squadrok_activity> - <position>556 675</position> + <position>556 675 16</position> <jumpgate> <object_id>314</object_id> <linked_to_object_id>258</linked_to_object_id> @@ -792,7 +792,7 @@ <faction_id>1</faction_id> <category_id>12</category_id> <Squadrok_activity>3</Squadrok_activity> - <position>224 556</position> + <position>224 556 -24</position> <jumpgate> <object_id>318</object_id> <linked_to_object_id>455</linked_to_object_id> @@ -824,7 +824,7 @@ <faction_id>0</faction_id> <category_id>12</category_id> <Squadrok_activity>5</Squadrok_activity> - <position>389 454</position> + <position>389 454 7</position> <jumpgate> <object_id>324</object_id> <linked_to_object_id>340</linked_to_object_id> @@ -837,7 +837,7 @@ <name_en>Outer Cloud</name_en> <faction_id>6</faction_id> <category_id>12</category_id> - <position>432 628</position> + <position>432 628 -48</position> <jumpgate> <object_id>326</object_id> <linked_to_object_id>698</linked_to_object_id> @@ -859,7 +859,7 @@ <name_en>Inner Roh-Cloud</name_en> <faction_id>2</faction_id> <category_id>12</category_id> - <position>480 465</position> + <position>480 465 15</position> <jumpgate> <object_id>330</object_id> <linked_to_object_id>519</linked_to_object_id> @@ -886,7 +886,7 @@ <name_en>Quadrangle</name_en> <faction_id>2</faction_id> <category_id>12</category_id> - <position>488 291</position> + <position>488 291 36</position> <jumpgate> <object_id>335</object_id> <linked_to_object_id>646</linked_to_object_id> @@ -918,7 +918,7 @@ <faction_id>0</faction_id> <category_id>12</category_id> <Squadrok_activity>2</Squadrok_activity> - <position>363 446</position> + <position>363 446 -21</position> <jumpgate> <object_id>341</object_id> <linked_to_object_id>241</linked_to_object_id> @@ -942,7 +942,7 @@ <faction_id>2</faction_id> <category_id>12</category_id> <Squadrok_activity>3</Squadrok_activity> - <position>533 575</position> + <position>533 575 7</position> <jumpgate> <object_id>345</object_id> <linked_to_object_id>679</linked_to_object_id> @@ -965,7 +965,7 @@ <faction_id>3</faction_id> <category_id>12</category_id> <Squadrok_activity>3</Squadrok_activity> - <position>72 289</position> + <position>72 289 0</position> <jumpgate> <object_id>349</object_id> <linked_to_object_id>283</linked_to_object_id> @@ -993,7 +993,7 @@ <faction_id>0</faction_id> <category_id>12</category_id> <Squadrok_activity>3</Squadrok_activity> - <position>297 355</position> + <position>297 355 16</position> <jumpgate> <object_id>354</object_id> <linked_to_object_id>174</linked_to_object_id> @@ -1025,7 +1025,7 @@ <name_en>Azure Churn</name_en> <faction_id>1</faction_id> <category_id>12</category_id> - <position>163 638</position> + <position>163 638 -4</position> <jumpgate> <object_id>360</object_id> <linked_to_object_id>221</linked_to_object_id> @@ -1048,7 +1048,7 @@ <faction_id>0</faction_id> <category_id>12</category_id> <Squadrok_activity>6</Squadrok_activity> - <position>319 298</position> + <position>319 298 -3</position> <jumpgate> <object_id>364</object_id> <linked_to_object_id>204</linked_to_object_id> @@ -1066,7 +1066,7 @@ <name_en>Sea of Shadows</name_en> <faction_id>5</faction_id> <category_id>12</category_id> - <position>376 279</position> + <position>376 279 -6</position> <jumpgate> <object_id>367</object_id> <linked_to_object_id>723</linked_to_object_id> @@ -1088,7 +1088,7 @@ <name_en>Imperial Crossroads</name_en> <faction_id>3</faction_id> <category_id>12</category_id> - <position>83 118</position> + <position>83 118 -26</position> <jumpgate> <object_id>371</object_id> <linked_to_object_id>600</linked_to_object_id> @@ -1110,7 +1110,7 @@ <name_en>Lesser Locks</name_en> <faction_id>1</faction_id> <category_id>12</category_id> - <position>343 631</position> + <position>343 631 -42</position> <jumpgate> <object_id>375</object_id> <linked_to_object_id>427</linked_to_object_id> @@ -1137,7 +1137,7 @@ <faction_id>1</faction_id> <category_id>12</category_id> <Squadrok_activity>3</Squadrok_activity> - <position>217 341</position> + <position>217 341 -38</position> <jumpgate> <object_id>380</object_id> <linked_to_object_id>270</linked_to_object_id> @@ -1159,7 +1159,7 @@ <name_en>Quantar Hook</name_en> <faction_id>2</faction_id> <category_id>12</category_id> - <position>439 333</position> + <position>439 333 -49</position> <jumpgate> <object_id>384</object_id> <linked_to_object_id>417</linked_to_object_id> @@ -1182,7 +1182,7 @@ <faction_id>5</faction_id> <category_id>12</category_id> <Squadrok_activity>7</Squadrok_activity> - <position>333 50</position> + <position>333 50 -15</position> <jumpgate> <object_id>388</object_id> <linked_to_object_id>576</linked_to_object_id> @@ -1196,7 +1196,7 @@ <faction_id>3</faction_id> <category_id>12</category_id> <Squadrok_activity>3</Squadrok_activity> - <position>150 318</position> + <position>150 318 -37</position> <jumpgate> <object_id>390</object_id> <linked_to_object_id>304</linked_to_object_id> @@ -1218,7 +1218,7 @@ <name_en>Tauseti Core</name_en> <faction_id>1</faction_id> <category_id>12</category_id> - <position>178 573</position> + <position>178 573 -4</position> <station> <object_id>170</object_id> <faction_id>1</faction_id> @@ -1248,7 +1248,7 @@ <name_en>Stith</name_en> <faction_id>0</faction_id> <category_id>12</category_id> - <position>280 295</position> + <position>280 295 37</position> <jumpgate> <object_id>398</object_id> <linked_to_object_id>690</linked_to_object_id> @@ -1275,7 +1275,7 @@ <name_en>Tictac's Hook</name_en> <faction_id>2</faction_id> <category_id>12</category_id> - <position>542 258</position> + <position>542 258 -6</position> <jumpgate> <object_id>403</object_id> <linked_to_object_id>661</linked_to_object_id> @@ -1308,7 +1308,7 @@ <faction_id>3</faction_id> <category_id>12</category_id> <Squadrok_activity>2</Squadrok_activity> - <position>104 76</position> + <position>104 76 -1</position> <jumpgate> <object_id>409</object_id> <linked_to_object_id>617</linked_to_object_id> @@ -1330,7 +1330,7 @@ <name_en>Purian Lake</name_en> <faction_id>1</faction_id> <category_id>12</category_id> - <position>254 455</position> + <position>254 455 2</position> <jumpgate> <object_id>413</object_id> <linked_to_object_id>246</linked_to_object_id> @@ -1357,7 +1357,7 @@ <name_en>Third Gate</name_en> <faction_id>2</faction_id> <category_id>12</category_id> - <position>503 395</position> + <position>503 395 -12</position> <jumpgate> <object_id>418</object_id> <linked_to_object_id>633</linked_to_object_id> @@ -1379,7 +1379,7 @@ <name_en>T&P</name_en> <faction_id>6</faction_id> <category_id>12</category_id> - <position>493 641</position> + <position>493 641 -8</position> <jumpgate> <object_id>422</object_id> <linked_to_object_id>254</linked_to_object_id> @@ -1402,7 +1402,7 @@ <faction_id>3</faction_id> <category_id>12</category_id> <Squadrok_activity>7</Squadrok_activity> - <position>100 318</position> + <position>100 318 -6</position> <jumpgate> <object_id>426</object_id> <linked_to_object_id>348</linked_to_object_id> @@ -1415,7 +1415,7 @@ <name_en>Main Gate</name_en> <faction_id>6</faction_id> <category_id>12</category_id> - <position>405 551</position> + <position>405 551 35</position> <jumpgate> <object_id>428</object_id> <linked_to_object_id>374</linked_to_object_id> @@ -1448,7 +1448,7 @@ <faction_id>0</faction_id> <category_id>12</category_id> <Squadrok_activity>3</Squadrok_activity> - <position>368 364</position> + <position>368 364 -15</position> <jumpgate> <object_id>434</object_id> <linked_to_object_id>241</linked_to_object_id> @@ -1475,7 +1475,7 @@ <name_en>Wanderer's Pond</name_en> <faction_id>1</faction_id> <category_id>12</category_id> - <position>213 527</position> + <position>213 527 -29</position> <jumpgate> <object_id>439</object_id> <linked_to_object_id>379</linked_to_object_id> @@ -1498,7 +1498,7 @@ <faction_id>5</faction_id> <category_id>12</category_id> <Squadrok_activity>2</Squadrok_activity> - <position>364 321</position> + <position>364 321 -19</position> <jumpgate> <object_id>443</object_id> <linked_to_object_id>196</linked_to_object_id> @@ -1520,7 +1520,7 @@ <name_en>Inner Oasis</name_en> <faction_id>1</faction_id> <category_id>12</category_id> - <position>136 565</position> + <position>136 565 -8</position> <jumpgate> <object_id>447</object_id> <linked_to_object_id>501</linked_to_object_id> @@ -1542,7 +1542,7 @@ <name_en>Rim</name_en> <faction_id>3</faction_id> <category_id>12</category_id> - <position>109 232</position> + <position>109 232 14</position> <jumpgate> <object_id>451</object_id> <linked_to_object_id>595</linked_to_object_id> @@ -1569,7 +1569,7 @@ <name_en>Tranquillus Major</name_en> <faction_id>1</faction_id> <category_id>12</category_id> - <position>181 520</position> + <position>181 520 17</position> <jumpgate> <object_id>456</object_id> <linked_to_object_id>190</linked_to_object_id> @@ -1595,7 +1595,7 @@ <name_en>Imperial Causeway</name_en> <faction_id>3</faction_id> <category_id>12</category_id> - <position>216 61</position> + <position>216 61 -33</position> <jumpgate> <object_id>461</object_id> <linked_to_object_id>547</linked_to_object_id> @@ -1621,7 +1621,7 @@ <name_en>Ekoo's Stop</name_en> <faction_id>2</faction_id> <category_id>12</category_id> - <position>406 403</position> + <position>406 403 -49</position> <jumpgate> <object_id>466</object_id> <linked_to_object_id>241</linked_to_object_id> @@ -1654,7 +1654,7 @@ <faction_id>6</faction_id> <category_id>12</category_id> <Squadrok_activity>3</Squadrok_activity> - <position>442 720</position> + <position>442 720 -14</position> <jumpgate> <object_id>472</object_id> <linked_to_object_id>490</linked_to_object_id> @@ -1680,7 +1680,7 @@ <name_en>Sea of Tauseti</name_en> <faction_id>1</faction_id> <category_id>12</category_id> - <position>220 591</position> + <position>220 591 -29</position> <> <object_id>477</object_id> </> @@ -1700,7 +1700,7 @@ <name_en>Rear Gate</name_en> <faction_id>6</faction_id> <category_id>12</category_id> - <position>444 672</position> + <position>444 672 15</position> <jumpgate> <object_id>481</object_id> <linked_to_object_id>325</linked_to_object_id> @@ -1727,7 +1727,7 @@ <name_en>Primus Point</name_en> <faction_id>3</faction_id> <category_id>12</category_id> - <position>241 284</position> + <position>241 284 42</position> <jumpgate> <object_id>486</object_id> <linked_to_object_id>304</linked_to_object_id> @@ -1754,7 +1754,7 @@ <name_en>Far Gate</name_en> <faction_id>6</faction_id> <category_id>12</category_id> - <position>500 708</position> + <position>500 708 -1</position> <jumpgate> <object_id>491</object_id> <linked_to_object_id>582</linked_to_object_id> @@ -1785,7 +1785,7 @@ <name_en>Gyre</name_en> <faction_id>5</faction_id> <category_id>12</category_id> - <position>441 190</position> + <position>441 190 46</position> <jumpgate> <object_id>497</object_id> <linked_to_object_id>713</linked_to_object_id> @@ -1812,7 +1812,7 @@ <name_en>Midpoint Rift</name_en> <faction_id>1</faction_id> <category_id>12</category_id> - <position>106 597</position> + <position>106 597 4</position> <jumpgate> <object_id>502</object_id> <linked_to_object_id>446</linked_to_object_id> @@ -1835,7 +1835,7 @@ <faction_id>0</faction_id> <category_id>12</category_id> <Squadrok_activity>3</Squadrok_activity> - <position>306 380</position> + <position>306 380 42</position> <jumpgate> <object_id>506</object_id> <linked_to_object_id>174</linked_to_object_id> @@ -1868,7 +1868,7 @@ <faction_id>1</faction_id> <category_id>12</category_id> <Squadrok_activity>7</Squadrok_activity> - <position>98 723</position> + <position>98 723 -2</position> <jumpgate> <object_id>512</object_id> <linked_to_object_id>709</linked_to_object_id> @@ -1887,7 +1887,7 @@ <faction_id>0</faction_id> <category_id>12</category_id> <Squadrok_activity>6</Squadrok_activity> - <position>343 432</position> + <position>343 432 32</position> <jumpgate> <object_id>515</object_id> <linked_to_object_id>643</linked_to_object_id> @@ -1915,7 +1915,7 @@ <name_en>Quantar Core</name_en> <faction_id>2</faction_id> <category_id>12</category_id> - <position>463 418</position> + <position>463 418 46</position> <jumpgate> <object_id>520</object_id> <linked_to_object_id>180</linked_to_object_id> @@ -1948,7 +1948,7 @@ <name_en>Last Parsec</name_en> <faction_id>5</faction_id> <category_id>12</category_id> - <position>381 169</position> + <position>381 169 16</position> <jumpgate> <object_id>526</object_id> <linked_to_object_id>576</linked_to_object_id> @@ -1976,7 +1976,7 @@ <faction_id>0</faction_id> <category_id>12</category_id> <Squadrok_activity>5</Squadrok_activity> - <position>316 413</position> + <position>316 413 18</position> <jumpgate> <object_id>531</object_id> <linked_to_object_id>628</linked_to_object_id> @@ -2008,7 +2008,7 @@ <name_en>Corridor</name_en> <faction_id>2</faction_id> <category_id>12</category_id> - <position>481 544</position> + <position>481 544 -17</position> <jumpgate> <object_id>537</object_id> <linked_to_object_id>294</linked_to_object_id> @@ -2036,7 +2036,7 @@ <name_en>Lothar's Landing</name_en> <faction_id>0</faction_id> <category_id>12</category_id> - <position>176 412</position> + <position>176 412 -8</position> <jumpgate> <object_id>542</object_id> <linked_to_object_id>210</linked_to_object_id> @@ -2049,7 +2049,7 @@ <name_en>TriPoint</name_en> <faction_id>2</faction_id> <category_id>12</category_id> - <position>524 302</position> + <position>524 302 -29</position> <jumpgate> <object_id>544</object_id> <linked_to_object_id>402</linked_to_object_id> @@ -2062,7 +2062,7 @@ <name_en>Klatsches Hold</name_en> <faction_id>0</faction_id> <category_id>12</category_id> - <position>323 555</position> + <position>323 555 -16</position> <jumpgate> <object_id>546</object_id> <linked_to_object_id>264</linked_to_object_id> @@ -2075,7 +2075,7 @@ <name_en>Verselus' Hook</name_en> <faction_id>3</faction_id> <category_id>12</category_id> - <position>237 142</position> + <position>237 142 37</position> <jumpgate> <object_id>548</object_id> <linked_to_object_id>460</linked_to_object_id> @@ -2102,7 +2102,7 @@ <name_en>Outer Oasis</name_en> <faction_id>1</faction_id> <category_id>12</category_id> - <position>74 634</position> + <position>74 634 -510</position> <jumpgate> <object_id>553</object_id> <linked_to_object_id>501</linked_to_object_id> @@ -2124,7 +2124,7 @@ <name_en>Octavian Shore</name_en> <faction_id>3</faction_id> <category_id>12</category_id> - <position>294 125</position> + <position>294 125 7</position> <jumpgate> <object_id>557</object_id> <linked_to_object_id>547</linked_to_object_id> @@ -2151,7 +2151,7 @@ <name_en>Fields</name_en> <faction_id>1</faction_id> <category_id>12</category_id> - <position>121 502</position> + <position>121 502 -19</position> <jumpgate> <object_id>562</object_id> <linked_to_object_id>476</linked_to_object_id> @@ -2178,7 +2178,7 @@ <name_en>Tauseti Depot</name_en> <faction_id>1</faction_id> <category_id>12</category_id> - <position>72 531</position> + <position>72 531 0</position> <jumpgate> <object_id>567</object_id> <linked_to_object_id>215</linked_to_object_id> @@ -2191,7 +2191,7 @@ <name_en>Hyperion Gate</name_en> <faction_id>2</faction_id> <category_id>12</category_id> - <position>414 504</position> + <position>414 504 29</position> <jumpgate> <object_id>569</object_id> <linked_to_object_id>613</linked_to_object_id> @@ -2213,7 +2213,7 @@ <name_en>Imperial Gates</name_en> <faction_id>3</faction_id> <category_id>12</category_id> - <position>179 68</position> + <position>179 68 -18</position> <jumpgate> <object_id>573</object_id> <linked_to_object_id>617</linked_to_object_id> @@ -2236,7 +2236,7 @@ <faction_id>5</faction_id> <category_id>12</category_id> <Squadrok_activity>3</Squadrok_activity> - <position>400 78</position> + <position>400 78 -51</position> <jumpgate> <object_id>577</object_id> <linked_to_object_id>387</linked_to_object_id> @@ -2267,7 +2267,7 @@ <name_en>Hyperial</name_en> <faction_id>6</faction_id> <category_id>12</category_id> - <position>482 672</position> + <position>482 672 10</position> <jumpgate> <object_id>583</object_id> <linked_to_object_id>490</linked_to_object_id> @@ -2285,7 +2285,7 @@ <name_en>Dark Gateway</name_en> <faction_id>3</faction_id> <category_id>12</category_id> - <position>257 318</position> + <position>257 318 -43</position> <jumpgate> <object_id>586</object_id> <linked_to_object_id>210</linked_to_object_id> @@ -2317,7 +2317,7 @@ <name_en>Outer Roh-Cloud</name_en> <faction_id>2</faction_id> <category_id>12</category_id> - <position>455 466</position> + <position>455 466 -24</position> <jumpgate> <object_id>592</object_id> <linked_to_object_id>651</linked_to_object_id> @@ -2339,7 +2339,7 @@ <name_en>Divide</name_en> <faction_id>3</faction_id> <category_id>12</category_id> - <position>147 209</position> + <position>147 209 7</position> <jumpgate> <object_id>596</object_id> <linked_to_object_id>389</linked_to_object_id> @@ -2366,7 +2366,7 @@ <name_en>Dark Fork</name_en> <faction_id>3</faction_id> <category_id>12</category_id> - <position>137 110</position> + <position>137 110 -12</position> <jumpgate> <object_id>601</object_id> <linked_to_object_id>547</linked_to_object_id> @@ -2399,7 +2399,7 @@ <faction_id>0</faction_id> <category_id>12</category_id> <Squadrok_activity>4</Squadrok_activity> - <position>297 470</position> + <position>297 470 2</position> <jumpgate> <object_id>607</object_id> <linked_to_object_id>656</linked_to_object_id> @@ -2425,7 +2425,7 @@ <name_en>Evenings End</name_en> <faction_id>0</faction_id> <category_id>12</category_id> - <position>362 224</position> + <position>362 224 -44</position> <jumpgate> <object_id>612</object_id> <linked_to_object_id>235</linked_to_object_id> @@ -2438,7 +2438,7 @@ <name_en>Rounds of Quantos</name_en> <faction_id>2</faction_id> <category_id>12</category_id> - <position>420 463</position> + <position>420 463 2</position> <jumpgate> <object_id>614</object_id> <linked_to_object_id>568</linked_to_object_id> @@ -2460,7 +2460,7 @@ <name_en>Octavius Core</name_en> <faction_id>3</faction_id> <category_id>12</category_id> - <position>198 99</position> + <position>198 99 44</position> <station> <object_id>171</object_id> <name_de>Octavius Core</name_de> @@ -2490,7 +2490,7 @@ <name_en>Zealots Refuge</name_en> <faction_id>0</faction_id> <category_id>12</category_id> - <position>305 524</position> + <position>305 524 -14</position> <jumpgate> <object_id>623</object_id> <linked_to_object_id>264</linked_to_object_id> @@ -2523,7 +2523,7 @@ <faction_id>0</faction_id> <category_id>12</category_id> <Squadrok_activity>8</Squadrok_activity> - <position>339 401</position> + <position>339 401 35</position> <jumpgate> <object_id>629</object_id> <linked_to_object_id>530</linked_to_object_id> @@ -2552,7 +2552,7 @@ <faction_id>2</faction_id> <category_id>12</category_id> <Squadrok_activity>1</Squadrok_activity> - <position>533 345</position> + <position>533 345 -7</position> <jumpgate> <object_id>634</object_id> <linked_to_object_id>417</linked_to_object_id> @@ -2584,7 +2584,7 @@ <name_en>Square of Quantos</name_en> <faction_id>2</faction_id> <category_id>12</category_id> - <position>502 452</position> + <position>502 452 46</position> <jumpgate> <object_id>640</object_id> <linked_to_object_id>289</linked_to_object_id> @@ -2607,7 +2607,7 @@ <faction_id>0</faction_id> <category_id>12</category_id> <Squadrok_activity>4</Squadrok_activity> - <position>329 468</position> + <position>329 468 -47</position> <jumpgate> <object_id>644</object_id> <linked_to_object_id>622</linked_to_object_id> @@ -2626,7 +2626,7 @@ <faction_id>2</faction_id> <category_id>12</category_id> <Squadrok_activity>2</Squadrok_activity> - <position>480 356</position> + <position>480 356 46</position> <jumpgate> <object_id>647</object_id> <linked_to_object_id>180</linked_to_object_id> @@ -2653,7 +2653,7 @@ <name_en>Dark Trail</name_en> <faction_id>2</faction_id> <category_id>12</category_id> - <position>451 543</position> + <position>451 543 -18</position> <jumpgate> <object_id>652</object_id> <linked_to_object_id>736</linked_to_object_id> @@ -2681,7 +2681,7 @@ <faction_id>0</faction_id> <category_id>12</category_id> <Squadrok_activity>3</Squadrok_activity> - <position>289 449</position> + <position>289 449 -37</position> <jumpgate> <object_id>657</object_id> <linked_to_object_id>530</linked_to_object_id> @@ -2709,7 +2709,7 @@ <faction_id>2</faction_id> <category_id>12</category_id> <Squadrok_activity>2</Squadrok_activity> - <position>554 485</position> + <position>554 485 -30</position> <jumpgate> <object_id>662</object_id> <linked_to_object_id>402</linked_to_object_id> @@ -2732,7 +2732,7 @@ <faction_id>3</faction_id> <category_id>12</category_id> <Squadrok_activity>1</Squadrok_activity> - <position>162 166</position> + <position>162 166 20</position> <jumpgate> <object_id>666</object_id> <linked_to_object_id>262</linked_to_object_id> @@ -2763,7 +2763,7 @@ <name_en>Blasted Corner</name_en> <faction_id>3</faction_id> <category_id>12</category_id> - <position>264 214</position> + <position>264 214 48</position> <jumpgate> <object_id>672</object_id> <linked_to_object_id>556</linked_to_object_id> @@ -2789,7 +2789,7 @@ <name_en>Great Pillars</name_en> <faction_id>3</faction_id> <category_id>12</category_id> - <position>118 177</position> + <position>118 177 -4</position> <jumpgate> <object_id>677</object_id> <linked_to_object_id>595</linked_to_object_id> @@ -2807,7 +2807,7 @@ <name_en>Upper Third</name_en> <faction_id>2</faction_id> <category_id>12</category_id> - <position>554 602</position> + <position>554 602 36</position> <jumpgate> <object_id>680</object_id> <linked_to_object_id>294</linked_to_object_id> @@ -2829,7 +2829,7 @@ <name_en>Outer Rim</name_en> <faction_id>3</faction_id> <category_id>12</category_id> - <position>82 216</position> + <position>82 216 -29</position> <jumpgate> <object_id>684</object_id> <linked_to_object_id>450</linked_to_object_id> @@ -2851,7 +2851,7 @@ <name_en>Quantar Depot</name_en> <faction_id>2</faction_id> <category_id>12</category_id> - <position>528 431</position> + <position>528 431 -33</position> <jumpgate> <object_id>688</object_id> <linked_to_object_id>289</linked_to_object_id> @@ -2869,7 +2869,7 @@ <name_en>Diluted Reaches</name_en> <faction_id>0</faction_id> <category_id>12</category_id> - <position>228 309</position> + <position>228 309 26</position> <jumpgate> <object_id>691</object_id> <linked_to_object_id>585</linked_to_object_id> @@ -2891,7 +2891,7 @@ <name_en>Omni V</name_en> <faction_id>2</faction_id> <category_id>12</category_id> - <position>430 410</position> + <position>430 410 -23</position> <jumpgate> <object_id>695</object_id> <linked_to_object_id>519</linked_to_object_id> @@ -2913,7 +2913,7 @@ <name_en>Reaches</name_en> <faction_id>6</faction_id> <category_id>12</category_id> - <position>429 578</position> + <position>429 578 45</position> <jumpgate> <object_id>699</object_id> <linked_to_object_id>325</linked_to_object_id> @@ -2935,7 +2935,7 @@ <name_en>Cornea</name_en> <faction_id>1</faction_id> <category_id>12</category_id> - <position>113 672</position> + <position>113 672 15</position> <jumpgate> <object_id>703</object_id> <linked_to_object_id>359</linked_to_object_id> @@ -2958,7 +2958,7 @@ <name_en>Wake</name_en> <faction_id>1</faction_id> <category_id>12</category_id> - <position>229 444</position> + <position>229 444 12</position> <station> <object_id>20</object_id> <faction_id>1</faction_id> @@ -2984,7 +2984,7 @@ <faction_id>1</faction_id> <category_id>12</category_id> <Squadrok_activity>3</Squadrok_activity> - <position>145 683</position> + <position>145 683 -1</position> <jumpgate> <object_id>710</object_id> <linked_to_object_id>221</linked_to_object_id> @@ -3006,7 +3006,7 @@ <name_en>Amananth</name_en> <faction_id>5</faction_id> <category_id>12</category_id> - <position>452 153</position> + <position>452 153 -24</position> <jumpgate> <object_id>714</object_id> <linked_to_object_id>200</linked_to_object_id> @@ -3028,7 +3028,7 @@ <name_en>Dark End</name_en> <faction_id>2</faction_id> <category_id>12</category_id> - <position>510 555</position> + <position>510 555 -11</position> <jumpgate> <object_id>718</object_id> <linked_to_object_id>344</linked_to_object_id> @@ -3059,7 +3059,7 @@ <name_en>Split</name_en> <faction_id>5</faction_id> <category_id>12</category_id> - <position>401 256</position> + <position>401 256 31</position> <jumpgate> <object_id>724</object_id> <linked_to_object_id>366</linked_to_object_id> @@ -3081,7 +3081,7 @@ <name_en>Outpost</name_en> <faction_id>3</faction_id> <category_id>12</category_id> - <position>201 215</position> + <position>201 215 -18</position> <jumpgate> <object_id>728</object_id> <linked_to_object_id>283</linked_to_object_id> @@ -3099,7 +3099,7 @@ <name_en>GBS</name_en> <faction_id>0</faction_id> <category_id>12</category_id> - <position>291 418</position> + <position>291 418 -25</position> <jumpgate> <object_id>731</object_id> <linked_to_object_id>530</linked_to_object_id> @@ -3113,7 +3113,7 @@ <faction_id>0</faction_id> <category_id>12</category_id> <Squadrok_activity>8</Squadrok_activity> - <position>362 402</position> + <position>362 402 45</position> <jumpgate> <object_id>733</object_id> <linked_to_object_id>433</linked_to_object_id> @@ -3136,7 +3136,7 @@ <name_en>Dark Path</name_en> <faction_id>2</faction_id> <category_id>12</category_id> - <position>504 497</position> + <position>504 497 20</position> <jumpgate> <object_id>737</object_id> <linked_to_object_id>289</linked_to_object_id> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ult...@us...> - 2007-10-30 23:10:37
|
Revision: 833 http://opengate.svn.sourceforge.net/opengate/?rev=833&view=rev Author: ultrasick Date: 2007-10-30 16:10:34 -0700 (Tue, 30 Oct 2007) Log Message: ----------- I generated some z-axis data for the map position now. The new sectors.xml with additional data is now SMALLER than the old one (!?!?!). I'll use svn to check for the diffs I made because I don't have an other tool available at the moment to check for differents between 2 files. Need to change mime type first to make the changes visible Property Changed: ---------------- trunk/data/misc/sectors.xml Property changes on: trunk/data/misc/sectors.xml ___________________________________________________________________ Name: svn:mime-type - application/xml This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ult...@us...> - 2007-10-28 20:02:39
|
Revision: 832 http://opengate.svn.sourceforge.net/opengate/?rev=832&view=rev Author: ultrasick Date: 2007-10-28 13:02:42 -0700 (Sun, 28 Oct 2007) Log Message: ----------- adding commodity: lumber Added Paths: ----------- templates/commodities/lumber.blend trunk/data/commodities/lumber.xml trunk/data/commodities/lumber_big.png trunk/data/commodities/lumber_small.png Added: templates/commodities/lumber.blend =================================================================== (Binary files differ) Property changes on: templates/commodities/lumber.blend ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/data/commodities/lumber.xml =================================================================== (Binary files differ) Property changes on: trunk/data/commodities/lumber.xml ___________________________________________________________________ Name: svn:mime-type + application/xml Name: svn:eol-style + native Added: trunk/data/commodities/lumber_big.png =================================================================== (Binary files differ) Property changes on: trunk/data/commodities/lumber_big.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/data/commodities/lumber_small.png =================================================================== (Binary files differ) Property changes on: trunk/data/commodities/lumber_small.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ult...@us...> - 2007-10-28 09:28:00
|
Revision: 831 http://opengate.svn.sourceforge.net/opengate/?rev=831&view=rev Author: ultrasick Date: 2007-10-28 02:28:03 -0700 (Sun, 28 Oct 2007) Log Message: ----------- adding commodity: boron Added Paths: ----------- templates/commodities/boron.blend trunk/data/commodities/boron.xml trunk/data/commodities/boron_big.png trunk/data/commodities/boron_small.png Added: templates/commodities/boron.blend =================================================================== (Binary files differ) Property changes on: templates/commodities/boron.blend ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/data/commodities/boron.xml =================================================================== (Binary files differ) Property changes on: trunk/data/commodities/boron.xml ___________________________________________________________________ Name: svn:mime-type + application/xml Name: svn:eol-style + native Added: trunk/data/commodities/boron_big.png =================================================================== (Binary files differ) Property changes on: trunk/data/commodities/boron_big.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/data/commodities/boron_small.png =================================================================== (Binary files differ) Property changes on: trunk/data/commodities/boron_small.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ult...@us...> - 2007-10-27 18:12:55
|
Revision: 830 http://opengate.svn.sourceforge.net/opengate/?rev=830&view=rev Author: ultrasick Date: 2007-10-27 11:12:59 -0700 (Sat, 27 Oct 2007) Log Message: ----------- adding commodity: fiber optics Added Paths: ----------- templates/commodities/fiber_optics.blend trunk/data/commodities/fiber_optics.xml trunk/data/commodities/fiber_optics_big.png trunk/data/commodities/fiber_optics_small.png Added: templates/commodities/fiber_optics.blend =================================================================== (Binary files differ) Property changes on: templates/commodities/fiber_optics.blend ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/data/commodities/fiber_optics.xml =================================================================== (Binary files differ) Property changes on: trunk/data/commodities/fiber_optics.xml ___________________________________________________________________ Name: svn:mime-type + application/xml Name: svn:eol-style + native Added: trunk/data/commodities/fiber_optics_big.png =================================================================== (Binary files differ) Property changes on: trunk/data/commodities/fiber_optics_big.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/data/commodities/fiber_optics_small.png =================================================================== (Binary files differ) Property changes on: trunk/data/commodities/fiber_optics_small.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ult...@us...> - 2007-10-27 11:44:43
|
Revision: 829 http://opengate.svn.sourceforge.net/opengate/?rev=829&view=rev Author: ultrasick Date: 2007-10-27 04:44:47 -0700 (Sat, 27 Oct 2007) Log Message: ----------- adding radar: chime Added Paths: ----------- templates/radars/chime.blend trunk/data/radars/chime.xml trunk/data/radars/chime_big.png trunk/data/radars/chime_small.png Added: templates/radars/chime.blend =================================================================== (Binary files differ) Property changes on: templates/radars/chime.blend ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/data/radars/chime.xml =================================================================== (Binary files differ) Property changes on: trunk/data/radars/chime.xml ___________________________________________________________________ Name: svn:mime-type + application/xml Name: svn:eol-style + native Added: trunk/data/radars/chime_big.png =================================================================== (Binary files differ) Property changes on: trunk/data/radars/chime_big.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/data/radars/chime_small.png =================================================================== (Binary files differ) Property changes on: trunk/data/radars/chime_small.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ult...@us...> - 2007-10-27 10:45:20
|
Revision: 828 http://opengate.svn.sourceforge.net/opengate/?rev=828&view=rev Author: ultrasick Date: 2007-10-27 03:45:24 -0700 (Sat, 27 Oct 2007) Log Message: ----------- removed a useless texture of the type "none" (which has no function at all) Modified Paths: -------------- templates/commodities/gold.blend Modified: templates/commodities/gold.blend =================================================================== (Binary files differ) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ult...@us...> - 2007-10-25 18:08:16
|
Revision: 827 http://opengate.svn.sourceforge.net/opengate/?rev=827&view=rev Author: ultrasick Date: 2007-10-25 11:08:18 -0700 (Thu, 25 Oct 2007) Log Message: ----------- removed all data in jgdata.xml which is already in opacma (and also in the sectors.xml) + added map coordinates of the sectors to the sectors.xml (it currently only for the x- and the y-axis, will upload self generated z-axis data later, I don't have a source for the original z-axis data of the sectors on the map) Modified Paths: -------------- trunk/data/misc/jgdata.xml trunk/data/misc/sectors.xml Modified: trunk/data/misc/jgdata.xml =================================================================== (Binary files differ) Modified: trunk/data/misc/sectors.xml =================================================================== (Binary files differ) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ult...@us...> - 2007-10-15 21:57:53
|
Revision: 826 http://opengate.svn.sourceforge.net/opengate/?rev=826&view=rev Author: ultrasick Date: 2007-10-15 14:57:56 -0700 (Mon, 15 Oct 2007) Log Message: ----------- fixed a bug in the xml exporter script, removing todo note Modified Paths: -------------- trunk/TODO.gluck Modified: trunk/TODO.gluck =================================================================== --- trunk/TODO.gluck 2007-10-15 21:57:00 UTC (rev 825) +++ trunk/TODO.gluck 2007-10-15 21:57:56 UTC (rev 826) @@ -1,5 +1,4 @@ before first release: * metaserver f\xFCr die sektorverwaltung vorbereiten * sektoren in opacma aufnehmen (asteroiden fehlen + random bilder fehlen) -* stationen werden in der sectors.xml nicht richtig exportiert * werbung f\xFCr dark raus \ No newline at end of file This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |