- Timestamp:
- Jan 28, 2006, 5:11:51 PM (19 years ago)
- Location:
- trunk/src
- Files:
-
- 28 edited
- 4 copied
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/defs/class_id.h
r6810 r6815 118 118 CL_VERTEX_ARRAY_MODEL = 0x00004000, 119 119 120 121 CL_BILLBOARD = 0x10000001, 120 122 121 123 // subsuper-classes derivations taken : 1, 2, 5, a, b, c. << THIS IS A LIST OF ALL THE DCL_MASK_SUBSUPERCLASS_ID's taken … … 264 266 CL_SHADER = 0x00000822, 265 267 CL_FOG_EFFECT = 0x70000001, 268 CL_LENSE_FLARE = 0x70000002, 266 269 267 270 // GL-GUI -
trunk/src/lib/coord/p_node.cc
r6780 r6815 1077 1077 SYNCHELP_READ_BEGIN(); 1078 1078 1079 SYNCHELP_READ_FKT( BaseObject::writeState );1079 SYNCHELP_READ_FKT( BaseObject::writeState, NWT_PN_BO_WRITESTATE ); 1080 1080 1081 1081 // char * parentName = NULL; … … 1094 1094 1095 1095 int parentMode; 1096 SYNCHELP_READ_INT( parentMode );1096 SYNCHELP_READ_INT( parentMode, NWT_PN_PARENTMODE ); 1097 1097 this->setParentMode((PARENT_MODE)parentMode); 1098 1098 1099 1099 float f1, f2, f3, f4; 1100 1100 1101 SYNCHELP_READ_FLOAT( f1 );1102 SYNCHELP_READ_FLOAT( f2 );1103 SYNCHELP_READ_FLOAT( f3 );1101 SYNCHELP_READ_FLOAT( f1, NWT_PN_COORX ); 1102 SYNCHELP_READ_FLOAT( f2, NWT_PN_COORY ); 1103 SYNCHELP_READ_FLOAT( f3, NWT_PN_COORZ ); 1104 1104 this->setRelCoor( f1, f2, f3 ); 1105 1105 1106 1106 1107 SYNCHELP_READ_FLOAT( f1 );1108 SYNCHELP_READ_FLOAT( f2 );1109 SYNCHELP_READ_FLOAT( f3 );1110 SYNCHELP_READ_FLOAT( f4 );1107 SYNCHELP_READ_FLOAT( f1, NWT_PN_ROTV ); 1108 SYNCHELP_READ_FLOAT( f2, NWT_PN_ROTX ); 1109 SYNCHELP_READ_FLOAT( f3, NWT_PN_ROTY ); 1110 SYNCHELP_READ_FLOAT( f4, NWT_PN_ROTZ ); 1111 1111 this->setRelDir( Quaternion( Vector(f2, f3, f4), f1 ) ); 1112 1112 … … 1140 1140 SYNCHELP_WRITE_BEGIN(); 1141 1141 1142 SYNCHELP_WRITE_FKT( BaseObject::readState );1142 SYNCHELP_WRITE_FKT( BaseObject::readState, NWT_PN_BO_WRITESTATE ); 1143 1143 1144 1144 // if ( this->parent ) … … 1151 1151 // } 1152 1152 1153 SYNCHELP_WRITE_INT( this->parentMode );1154 1155 SYNCHELP_WRITE_FLOAT( this->relCoordinate.x );1156 SYNCHELP_WRITE_FLOAT( this->relCoordinate.y );1157 SYNCHELP_WRITE_FLOAT( this->relCoordinate.z );1158 1159 SYNCHELP_WRITE_FLOAT( this->relDirection.w );1160 SYNCHELP_WRITE_FLOAT( this->relDirection.v.x );1161 SYNCHELP_WRITE_FLOAT( this->relDirection.v.y );1162 SYNCHELP_WRITE_FLOAT( this->relDirection.v.z );1153 SYNCHELP_WRITE_INT( this->parentMode, NWT_PN_PARENTMODE ); 1154 1155 SYNCHELP_WRITE_FLOAT( this->relCoordinate.x, NWT_PN_COORX ); 1156 SYNCHELP_WRITE_FLOAT( this->relCoordinate.y, NWT_PN_COORY ); 1157 SYNCHELP_WRITE_FLOAT( this->relCoordinate.z, NWT_PN_COORZ ); 1158 1159 SYNCHELP_WRITE_FLOAT( this->relDirection.w, NWT_PN_ROTV ); 1160 SYNCHELP_WRITE_FLOAT( this->relDirection.v.x, NWT_PN_ROTX ); 1161 SYNCHELP_WRITE_FLOAT( this->relDirection.v.y, NWT_PN_ROTY ); 1162 SYNCHELP_WRITE_FLOAT( this->relDirection.v.z, NWT_PN_ROTZ ); 1163 1163 1164 1164 // int n = children.size(); … … 1209 1209 1210 1210 byte flags = 0; 1211 SYNCHELP_READ_BYTE( flags );1211 SYNCHELP_READ_BYTE( flags, NWT_PN_FLAGS ); 1212 1212 //PRINTF(0)("%s::FLAGS = %d\n", this->getName(), flags); 1213 1213 … … 1216 1216 if ( flags & __FLAG_COOR ) 1217 1217 { 1218 SYNCHELP_READ_FLOAT( f1 );1219 SYNCHELP_READ_FLOAT( f2 );1220 SYNCHELP_READ_FLOAT( f3 );1218 SYNCHELP_READ_FLOAT( f1, NWT_PN_SCOORX ); 1219 SYNCHELP_READ_FLOAT( f2, NWT_PN_SCOORY ); 1220 SYNCHELP_READ_FLOAT( f3, NWT_PN_SCOORZ ); 1221 1221 PRINTF(0)("RCVD COOR: %f %f %f\n", f1, f2, f3); 1222 1222 this->setRelCoor( f1, f2, f3 ); … … 1225 1225 if ( flags & __FLAG_ROT ) 1226 1226 { 1227 SYNCHELP_READ_FLOAT( f1 );1228 SYNCHELP_READ_FLOAT( f2 );1229 SYNCHELP_READ_FLOAT( f3 );1230 SYNCHELP_READ_FLOAT( f4 );1227 SYNCHELP_READ_FLOAT( f1, NWT_PN_SROTV ); 1228 SYNCHELP_READ_FLOAT( f2, NWT_PN_SROTX ); 1229 SYNCHELP_READ_FLOAT( f3, NWT_PN_SROTY ); 1230 SYNCHELP_READ_FLOAT( f4, NWT_PN_SROTZ ); 1231 1231 PRINTF(0)("RCVD QUAT: %f %f %f %f\n", f1, f2, f3, f4); 1232 1232 //this->setRelDir( Quaternion( Vector(f2, f3, f4), f1 ) ); … … 1250 1250 int PNode::readSync( byte * data, int maxLength ) 1251 1251 { 1252 //WARNING: if you change this file make sure you also change needsReadSync 1252 1253 SYNCHELP_WRITE_BEGIN(); 1253 1254 … … 1270 1271 1271 1272 1272 SYNCHELP_WRITE_BYTE( flags );1273 SYNCHELP_WRITE_BYTE( flags, NWT_PN_FLAGS ); 1273 1274 //PRINTF(0)("FLAGS = %d\n", flags); 1274 1275 … … 1276 1277 { 1277 1278 1278 PRINTF(0)("SEND COOR: %f %f %f\n", this->relCoordinate.x, this->relCoordinate.y, this->relCoordinate.z);1279 1280 SYNCHELP_WRITE_FLOAT( this->relCoordinate.x );1281 SYNCHELP_WRITE_FLOAT( this->relCoordinate.y );1282 SYNCHELP_WRITE_FLOAT( this->relCoordinate.z );1279 //PRINTF(0)("SEND COOR: %f %f %f\n", this->relCoordinate.x, this->relCoordinate.y, this->relCoordinate.z); 1280 1281 SYNCHELP_WRITE_FLOAT( this->relCoordinate.x, NWT_PN_SCOORX ); 1282 SYNCHELP_WRITE_FLOAT( this->relCoordinate.y, NWT_PN_SCOORY ); 1283 SYNCHELP_WRITE_FLOAT( this->relCoordinate.z, NWT_PN_SCOORZ ); 1283 1284 1284 1285 coorx = relCoordinate.x; … … 1290 1291 { 1291 1292 1292 PRINTF(0)("SEND QUAT: %f %f %f %f\n", this->absDirection.w, this->absDirection.v.x, this->absDirection.v.y, this->absDirection.v.z);1293 1294 SYNCHELP_WRITE_FLOAT( this->absDirection.w );1295 SYNCHELP_WRITE_FLOAT( this->absDirection.v.x );1296 SYNCHELP_WRITE_FLOAT( this->absDirection.v.y );1297 SYNCHELP_WRITE_FLOAT( this->absDirection.v.z );1293 //PRINTF(0)("SEND QUAT: %f %f %f %f\n", this->absDirection.w, this->absDirection.v.x, this->absDirection.v.y, this->absDirection.v.z); 1294 1295 SYNCHELP_WRITE_FLOAT( this->absDirection.w, NWT_PN_SROTV ); 1296 SYNCHELP_WRITE_FLOAT( this->absDirection.v.x, NWT_PN_SROTX ); 1297 SYNCHELP_WRITE_FLOAT( this->absDirection.v.y, NWT_PN_SROTY ); 1298 SYNCHELP_WRITE_FLOAT( this->absDirection.v.z, NWT_PN_SROTZ ); 1298 1299 1299 1300 rotw = absDirection.w; … … 1305 1306 return SYNCHELP_WRITE_N; 1306 1307 } 1308 1309 bool PNode::needsReadSync( ) 1310 { 1311 if ( fabs( coorx - relCoordinate.x ) > __OFFSET_POS || 1312 fabs( coory - relCoordinate.y ) > __OFFSET_POS || 1313 fabs( coorz - relCoordinate.z ) > __OFFSET_POS ) 1314 return true; 1315 1316 if ( fabs( rotw - absDirection.w ) > __OFFSET_ROT || 1317 fabs( rotx - absDirection.v.x ) > __OFFSET_ROT || 1318 fabs( roty - absDirection.v.y ) > __OFFSET_ROT || 1319 fabs( rotz - absDirection.v.z ) > __OFFSET_ROT ) 1320 return true; 1321 1322 return false; 1323 } -
trunk/src/lib/coord/p_node.h
r6695 r6815 190 190 int writeSync(const byte* data, int length, int sender); 191 191 int readSync(byte* data, int maxLength ); 192 bool needsReadSync(); 192 193 193 194 private: -
trunk/src/lib/graphics/Makefile.am
r6753 r6815 9 9 render2D/render_2d.cc \ 10 10 render2D/element_2d.cc \ 11 render2D/billboard.cc \ 11 12 text_engine/text_engine.cc \ 12 13 text_engine/text.cc \ 13 14 text_engine/font.cc \ 14 15 effects/graphics_effect.cc \ 15 effects/fog_effect.cc 16 effects/fog_effect.cc \ 17 effects/lense_flare.cc 18 16 19 17 20 noinst_HEADERS = graphics_engine.h \ … … 20 23 render2D/render_2d.h \ 21 24 render2D/element_2d.h \ 25 render2D/billboard.h \ 22 26 text_engine/text_engine.h \ 23 27 text_engine/text.h \ 24 28 text_engine/font.h \ 25 29 effects/graphics_effect.h \ 26 effects/fog_effect.h 30 effects/fog_effect.h \ 31 effects/lense_flare.h 27 32 28 33 -
trunk/src/lib/graphics/effects/fog_effect.cc
r6772 r6815 62 62 void FogEffect::loadParams(const TiXmlElement* root) 63 63 { 64 printf(">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>.loadParms\n\n"); 64 65 GraphicsEffect::loadParams(root); 65 66 66 LoadParam(root, "fog- effect", this, FogEffect, setFogMode)67 LoadParam(root, "fog-mode", this, FogEffect, setFogMode) 67 68 .describe("sets the the fog mode {GL_LINEAR, GL_EXP, GL_EXP2}"); 68 69 … … 87 88 bool FogEffect::activate() 88 89 { 90 printf("fog==============================================>>>>>>>>>>>>>>>>>>>>>>>>...\n\n"); 89 91 PRINTF(4)( "Enabling Fog Effect, mode: %i, density: %f, start: %f, end: %f\n", this->fogMode, this->fogDensity, 90 92 this->fogStart, this->fogEnd); … … 92 94 glEnable(GL_FOG); 93 95 { 94 GLfloat fogColor[4] = {0. 5, 0.5, 0.5, 1.0};96 GLfloat fogColor[4] = {0.6, 0.6, 0.6, 1.0}; 95 97 96 98 glFogi(GL_FOG_MODE, this->fogMode); -
trunk/src/lib/graphics/effects/graphics_effect.cc
r6772 r6815 72 72 bool GraphicsEffect::init() 73 73 {} 74 75 76 77 /** 78 * draws the effect, if needed 79 */ 80 void GraphicsEffect::draw() const 81 {} 82 83 84 85 /** 86 * ticks the effect if there is any time dependancy 87 */ 88 void GraphicsEffect::tick(float dt) 89 {} -
trunk/src/lib/graphics/effects/graphics_effect.h
r6772 r6815 25 25 virtual bool deactivate() = 0; 26 26 27 inline bool isActivated() { return this->bActivated; } 27 virtual void draw() const; 28 virtual void tick(float dt); 29 30 inline bool isActivated() const { return this->bActivated; } 28 31 29 32 -
trunk/src/lib/graphics/graphics_engine.cc
r6780 r6815 41 41 #include "shell_command.h" 42 42 43 44 #include "parser/tinyxml/tinyxml.h" 45 #include "load_param.h" 46 #include "factory.h" 47 43 48 #ifdef __WIN32__ 44 49 #include "class_list.h" … … 113 118 GraphicsEngine::singletonRef = NULL; 114 119 } 120 121 122 /** 123 * loads the GraphicsEngine Specific Parameters. 124 * @param root: the XML-Element to load the Data From 125 */ 126 void GraphicsEngine::loadParams(const TiXmlElement* root) 127 { 128 LoadParamXML(root, "load-effect", this, GraphicsEngine, loadGraphicsEffectXML) 129 .describe("loads a graphics effect"); 130 } 131 115 132 116 133 /** … … 150 167 this->initVideo(atoi(resolution.getString(0)), atoi(resolution.getString(1)), 16); 151 168 152 GraphicsEffect* fe = new FogEffect(NULL);153 this->loadGraphicsEffect(fe);154 fe->activate();155 PRINTF(0)("--------------------------------------------------------------\n");169 // GraphicsEffect* fe = new FogEffect(NULL); 170 // this->loadGraphicsEffect(fe); 171 // fe->activate(); 172 // PRINTF(0)("--------------------------------------------------------------\n"); 156 173 } 157 174 … … 571 588 #endif /* NO_TEXT */ 572 589 573 574 } 590 } 591 575 592 Render2D::getInstance()->tick(dt); 593 594 // tick the graphics effects 595 list<GraphicsEffect*>::iterator it; 596 for (it = this->graphicsEffects.begin(); it != this->graphicsEffects.end(); it++) 597 (*it)->tick(dt); 576 598 } 577 599 … … 587 609 Render2D::getInstance()->draw(E2D_LAYER_ALL); 588 610 Shader::restoreShader(); 611 612 //draw the graphics 613 list<GraphicsEffect*>::const_iterator it; 614 for (it = this->graphicsEffects.begin(); it != this->graphicsEffects.end(); it++) 615 (*it)->draw(); 589 616 } 590 617 … … 661 688 662 689 /** 690 * @param root The XML-element to load GraphicsEffects from 691 */ 692 void GraphicsEngine::loadGraphicsEffectXML(const TiXmlElement* root) 693 { 694 const TiXmlElement* element = root->FirstChildElement(); 695 696 while (element != NULL) 697 { 698 Factory::fabricate(element); 699 700 element = element->NextSiblingElement(); 701 } 702 } 703 704 705 /** 663 706 * loads a GraphicsEffect into the engine 664 707 * @param effect the GraphicsEffect to add -
trunk/src/lib/graphics/graphics_engine.h
r6753 r6815 23 23 class WorldEntity; 24 24 class GraphicsEffect; 25 class TiXmlElement; 25 26 26 27 //! class to handle graphics … … 34 35 /** @returns a Pointer to the only object of this Class */ 35 36 inline static GraphicsEngine* getInstance() { if (!GraphicsEngine::singletonRef) GraphicsEngine::singletonRef = new GraphicsEngine(); return GraphicsEngine::singletonRef; }; 37 38 virtual void loadParams(const TiXmlElement* root); 36 39 37 40 int init(); … … 83 86 void process(const Event &event); 84 87 88 void loadGraphicsEffectXML(const TiXmlElement* root); 85 89 bool loadGraphicsEffect(GraphicsEffect* effect); 86 90 bool unloadGraphicsEffect(GraphicsEffect* effect); -
trunk/src/lib/lang/base_object.cc
r6640 r6815 204 204 objectName = NULL; 205 205 } 206 SYNCHELP_READ_STRINGM( this->objectName );206 SYNCHELP_READ_STRINGM( this->objectName, NWT_BO_NAME ); 207 207 if ( this->objectName && !strcmp(this->objectName, "") ) 208 208 { … … 225 225 226 226 //PRINTF(0)("objectname = %s\n", this->objectName); 227 SYNCHELP_WRITE_STRING( this->objectName );227 SYNCHELP_WRITE_STRING( this->objectName, NWT_BO_NAME ); 228 228 229 229 return SYNCHELP_WRITE_N; -
trunk/src/lib/network/handshake.cc
r6753 r6815 95 95 if ( !isServer() && hasState( HS_RECVD_VER ) && !hasState( HS_RECVD_HID ) ) 96 96 { 97 if ( length != INTSIZE+INTSIZE )98 { 99 PRINTF(0)("hostID packet has wrong size %d instead of %d\n", length, 1);100 setState( HS_COMPLETED ); 101 return 0; 102 }97 /*if ( length != INTSIZE+INTSIZE ) 98 { 99 PRINTF(0)("hostID packet has wrong size %d instead of %d\n", length, INTSIZE+INTSIZE); 100 setState( HS_COMPLETED ); 101 return 0; 102 }*/ 103 103 104 104 setState( HS_COMPLETED ); 105 105 setState( HS_RECVD_HID ); 106 106 this->isOk = true; 107 SYNCHELP_READ_INT( this->newHostId );108 SYNCHELP_READ_INT( this->newNetworkGameManagerId );107 SYNCHELP_READ_INT( this->newHostId, NWT_HS_HOST_ID ); 108 SYNCHELP_READ_INT( this->newNetworkGameManagerId, NWT_HS_NGM_ID ); 109 109 110 110 if ( newHostId == 0 ) … … 180 180 isOk = false; 181 181 //memcpy(data, (byte*)0, 4); 182 SYNCHELP_WRITE_INT( 0 183 SYNCHELP_WRITE_INT( 0 182 SYNCHELP_WRITE_INT( 0, NWT_HS_HOST_ID); 183 SYNCHELP_WRITE_INT( 0, NWT_HS_NGM_ID); 184 184 } 185 185 else … … 187 187 isOk = true; 188 188 //memcpy(data, &clientId, 4); 189 SYNCHELP_WRITE_INT( clientId );190 SYNCHELP_WRITE_INT( networkGameManagerId );189 SYNCHELP_WRITE_INT( clientId, NWT_HS_HOST_ID ); 190 SYNCHELP_WRITE_INT( networkGameManagerId, NWT_HS_NGM_ID ); 191 191 } 192 192 *reciever = clientId; -
trunk/src/lib/network/network_game_manager.cc
r6737 r6815 167 167 if ( !isServer() && !hasRequestedWorld ) 168 168 { 169 SYNCHELP_WRITE_BEGIN(); 170 byte b = NET_REQUEST_ENTITY_LIST; 171 SYNCHELP_WRITE_BYTE( b ); 169 assert( maxLength >= 1 ); 170 data[0] = NET_REQUEST_ENTITY_LIST; 172 171 hasRequestedWorld = true; 173 return SYNCHELP_WRITE_N;172 return 1; 174 173 } 175 174 -
trunk/src/lib/network/synchronizeable.h
r6753 r6815 20 20 #define STATE_OUTOFSYNC 2 21 21 #define STATE_REQUESTEDSYNC 4 22 23 enum { 24 NWT_SS_WE_STATE = 1000000, 25 NWT_SS_B, 26 NWT_SS_FLAGS, 27 NWT_SS_MOUSEDIRX, 28 NWT_SS_MOUSEDIRY, 29 NWT_SS_MOUSEDIRZ, 30 NWT_SS_MOUSEDIRW, 31 NWT_SS_PN_SYNC, 32 NWT_SS_VELX, 33 NWT_SS_VELY, 34 NWT_SS_VELZ, 35 36 NWT_HS_HOST_ID, 37 NWT_HS_NGM_ID, 38 39 NWT_PN_BO_WRITESTATE, 40 NWT_PN_PARENTMODE, 41 NWT_PN_COORX, 42 NWT_PN_COORY, 43 NWT_PN_COORZ, 44 NWT_PN_ROTX, 45 NWT_PN_ROTY, 46 NWT_PN_ROTZ, 47 NWT_PN_ROTV, 48 49 NWT_PN_FLAGS, 50 NWT_PN_SCOORX, 51 NWT_PN_SCOORY, 52 NWT_PN_SCOORZ, 53 NWT_PN_SROTX, 54 NWT_PN_SROTY, 55 NWT_PN_SROTZ, 56 NWT_PN_SROTV, 57 58 NWT_BO_NAME, 59 60 NWT_WE_PN_WRITESTATE, 61 NWT_WE_PN_MODELFILENAME, 62 NWT_WE_PN_SCALING, 63 64 NWT_GT_WE_STATE, 65 66 NWT_SB_WE_STATE, 67 NWT_SB_SIZE, 68 NWT_SB_TEXTURENAME, 69 70 NWT_TER_WE_STATE, 71 72 NWT_PU_WE_STATE, 73 74 NWT_TPU_WE_STATE, 75 76 NWT_LPU_WE_STATE, 77 78 NWT_WPU_WE_STATE, 79 80 NWT_PPU_WE_STATE, 81 NWT_PPU_TYPE, 82 NWT_PPU_VALUE, 83 NWT_PPU_MINVALUE, 84 NWT_PPU_MAXVALUE, 85 86 NWT_WAT_STATE, 87 NWT_WAT_WE_STATE, 88 NWT_WAT_SIZEX, 89 NWT_WAT_SIZEY, 90 NWT_WAT_RESX, 91 NWT_WAT_RESY, 92 NWT_WAT_HEIGHT 93 }; 22 94 23 95 … … 58 130 * 59 131 */ 132 #define SYNCHELP_WRITE_DEBUG(n) {\ 133 __synchelp_write_n = Converter::intToByteArray( n, data+__synchelp_write_i, maxLength-__synchelp_write_i ); \ 134 assert( __synchelp_write_n == INTSIZE ); \ 135 __synchelp_write_i += __synchelp_write_n; \ 136 } 137 138 #define SYNCHELP_READ_DEBUG(n) { \ 139 int nn; \ 140 __synchelp_read_n = Converter::byteArrayToInt( data+__synchelp_read_i, &nn ); \ 141 assert( __synchelp_read_n == INTSIZE ); \ 142 if ( n != nn ) { \ 143 PRINTF(1)("Check your code! read/writes not in right order! read %d instead of %d\n", nn, n); \ 144 assert( false ); \ 145 } \ 146 __synchelp_read_i += __synchelp_read_n; \ 147 } 148 60 149 #define SYNCHELP_WRITE_BEGIN() int __synchelp_write_i = 0; \ 61 150 int __synchelp_write_n 62 #define SYNCHELP_WRITE_INT(i) { __synchelp_write_n = \ 151 #define SYNCHELP_WRITE_INT(i,n) { SYNCHELP_WRITE_DEBUG(n); \ 152 __synchelp_write_n = \ 63 153 Converter::intToByteArray( i, data+__synchelp_write_i, maxLength-__synchelp_write_i ); \ 64 154 assert( __synchelp_write_n == INTSIZE ); \ … … 70 160 __synchelp_write_i += __synchelp_write_n; \ 71 161 } 72 #define SYNCHELP_WRITE_FLOAT(f) { __synchelp_write_n = \ 162 #define SYNCHELP_WRITE_FLOAT(f,n) { SYNCHELP_WRITE_DEBUG(n); \ 163 __synchelp_write_n = \ 73 164 Converter::floatToByteArray( f, data+__synchelp_write_i, maxLength-__synchelp_write_i ); \ 74 165 assert( __synchelp_write_n == FLOATSIZE ); \ … … 80 171 __synchelp_write_i += __synchelp_write_n; \ 81 172 } 82 #define SYNCHELP_WRITE_BYTE(b) { \ 173 #define SYNCHELP_WRITE_BYTE(b,n) { SYNCHELP_WRITE_DEBUG(n); \ 174 \ 83 175 if (maxLength - __synchelp_write_i < 1) \ 84 176 { \ … … 89 181 __synchelp_write_i++; \ 90 182 } 91 #define SYNCHELP_WRITE_STRING(s) { if (s!=NULL) {\ 183 #define SYNCHELP_WRITE_STRING(s,n) { SYNCHELP_WRITE_DEBUG(n); \ 184 if (s!=NULL) {\ 92 185 __synchelp_write_n = \ 93 186 Converter::stringToByteArray( s, data+__synchelp_write_i, strlen(s), maxLength-__synchelp_write_i ); \ … … 105 198 } 106 199 #define SYNCHELP_WRITE_N __synchelp_write_i 107 #define SYNCHELP_WRITE_FKT(f ) {\200 #define SYNCHELP_WRITE_FKT(f,n) { SYNCHELP_WRITE_DEBUG(n); \ 108 201 __synchelp_write_i += \ 109 202 f( data+__synchelp_write_i, maxLength-__synchelp_write_i ); \ … … 114 207 int __synchelp_read_n 115 208 116 #define SYNCHELP_READ_INT(i ) {\209 #define SYNCHELP_READ_INT(i,n) { SYNCHELP_READ_DEBUG(n); \ 117 210 if ( length-__synchelp_read_i < INTSIZE ) \ 118 211 { \ … … 124 217 __synchelp_read_i += __synchelp_read_n; \ 125 218 } 126 #define SYNCHELP_READ_FLOAT(f ) {\219 #define SYNCHELP_READ_FLOAT(f,n) { SYNCHELP_READ_DEBUG(n); \ 127 220 if ( length-__synchelp_read_i < FLOATSIZE ) \ 128 221 { \ … … 134 227 __synchelp_read_i += __synchelp_read_n; \ 135 228 } 136 #define SYNCHELP_READ_STRING(s,l ) {\229 #define SYNCHELP_READ_STRING(s,l,n) {SYNCHELP_READ_DEBUG(n); \ 137 230 __synchelp_read_n = Converter::byteArrayToString( data+__synchelp_read_i, s, l ); \ 138 231 assert( __synchelp_read_n == strlen(s)+INTSIZE ) ;\ … … 144 237 __synchelp_read_i += __synchelp_read_n; \ 145 238 } 146 #define SYNCHELP_READ_STRINGM(s ) {\239 #define SYNCHELP_READ_STRINGM(s,n) { SYNCHELP_READ_DEBUG(n); \ 147 240 __synchelp_read_n = Converter::byteArrayToStringM( data+__synchelp_read_i, s ); \ 148 241 assert( __synchelp_read_n == strlen(s)+INTSIZE ) ;\ … … 154 247 __synchelp_read_i += __synchelp_read_n; \ 155 248 } 156 #define SYNCHELP_READ_BYTE(b ) {\249 #define SYNCHELP_READ_BYTE(b,n) { SYNCHELP_READ_DEBUG(n); \ 157 250 if ( length-__synchelp_read_i < 1 ) \ 158 251 { \ … … 163 256 __synchelp_read_i ++; \ 164 257 } 165 #define SYNCHELP_READ_FKT(f ) {\258 #define SYNCHELP_READ_FKT(f,n) { SYNCHELP_READ_DEBUG(n); \ 166 259 __synchelp_read_i += \ 167 260 f( data+__synchelp_read_i, length-__synchelp_read_i, sender); \ 168 261 } 262 #define SYNCHELP_READ_REMAINING() ( length-__synchelp_read_i ) 263 #define SYNCHELP_READ_NEXTBYTE() ( data[__synchelp_read_i] ) 169 264 #define SYNCHELP_READ_N __synchelp_read_i 170 265 -
trunk/src/story_entities/game_world_data.cc
r6771 r6815 278 278 { 279 279 LoadParamXML(root, "LightManager", LightManager::getInstance(), LightManager, loadParams); 280 LoadParamXML(root, "GraphicsEngine", GraphicsEngine::getInstance(), GraphicsEngine, loadParams); 280 281 281 282 // LoadParamXML(root, "ParticleEngine", ParticleEngine::getInstance(), ParticleEngine, loadParams); -
trunk/src/world_entities/environments/water.cc
r6803 r6815 302 302 SYNCHELP_READ_BEGIN(); 303 303 304 SYNCHELP_READ_FKT( Water::writeState );304 SYNCHELP_READ_FKT( Water::writeState, NWT_WAT_STATE ); 305 305 306 306 return SYNCHELP_READ_N; … … 328 328 { 329 329 *reciever = rec; 330 SYNCHELP_WRITE_FKT( Water::readState );330 SYNCHELP_WRITE_FKT( Water::readState, NWT_WAT_STATE ); 331 331 } 332 332 … … 347 347 SYNCHELP_WRITE_BEGIN(); 348 348 349 SYNCHELP_WRITE_FKT( WorldEntity::readState );349 SYNCHELP_WRITE_FKT( WorldEntity::readState, NWT_WAT_WE_STATE ); 350 350 351 351 // sync the size 352 SYNCHELP_WRITE_FLOAT( this->sizeX );353 SYNCHELP_WRITE_FLOAT( this->sizeY );352 SYNCHELP_WRITE_FLOAT( this->sizeX, NWT_WAT_SIZEX ); 353 SYNCHELP_WRITE_FLOAT( this->sizeY, NWT_WAT_SIZEY ); 354 354 355 355 //sync resolution 356 SYNCHELP_WRITE_INT( this->resX );357 SYNCHELP_WRITE_INT( this->resY );356 SYNCHELP_WRITE_INT( this->resX, NWT_WAT_RESX ); 357 SYNCHELP_WRITE_INT( this->resY, NWT_WAT_RESY ); 358 358 359 359 //sync the height 360 SYNCHELP_WRITE_FLOAT( this->height );360 SYNCHELP_WRITE_FLOAT( this->height, NWT_WAT_HEIGHT ); 361 361 362 362 return SYNCHELP_WRITE_N; … … 374 374 SYNCHELP_READ_BEGIN(); 375 375 376 SYNCHELP_READ_FKT( WorldEntity::writeState );376 SYNCHELP_READ_FKT( WorldEntity::writeState, NWT_WAT_WE_STATE ); 377 377 378 378 float f1, f2; … … 380 380 381 381 //read the size 382 SYNCHELP_READ_FLOAT( f1 );383 SYNCHELP_READ_FLOAT( f2 );382 SYNCHELP_READ_FLOAT( f1, NWT_WAT_SIZEX ); 383 SYNCHELP_READ_FLOAT( f2, NWT_WAT_SIZEY ); 384 384 this->sizeX = f1; 385 385 this->sizeY = f2; … … 387 387 388 388 //read the resolution 389 SYNCHELP_READ_INT( i1 );390 SYNCHELP_READ_INT( i2 );389 SYNCHELP_READ_INT( i1, NWT_WAT_RESX ); 390 SYNCHELP_READ_INT( i2, NWT_WAT_RESY ); 391 391 this->resX = i1; 392 392 this->resY = i2; … … 394 394 395 395 //read the height 396 SYNCHELP_READ_FLOAT( f1 );396 SYNCHELP_READ_FLOAT( f1, NWT_WAT_HEIGHT ); 397 397 this->height = f1; 398 398 -
trunk/src/world_entities/image_entity.cc
r6696 r6815 49 49 { 50 50 if (this->material) 51 delete this->material; 52 53 // delete what has to be deleted here 54 55 GraphicsEngine::showMouse(true); 56 GraphicsEngine::stealWMEvents(false); 51 delete this->material; 57 52 } 58 53 … … 90 85 .describe("the Speed with which the ImageEntity should rotate"); 91 86 92 LoadParam(root, "billboarding", this, ImageEntity, toggleBillboard )93 .describe("sets the ImageEntityto always look in the direction of the Player");87 LoadParam(root, "billboarding", this, ImageEntity, toggleBillboarding) 88 .describe("sets the Billboard to always look in the direction of the Player"); 94 89 } 95 90 … … 119 114 * This means that the image will always look in the direction of the Player 120 115 */ 121 void ImageEntity::toggleBillboard ()116 void ImageEntity::toggleBillboarding() 122 117 { 123 118 this->bBillboarding = !this->bBillboarding; -
trunk/src/world_entities/image_entity.h
r6634 r6815 1 1 /*! 2 * @file crosshair.h 3 * Definition of ... 4 5 */ 2 * @file image_entity.h 3 * Definition of an ImageEntity 4 */ 6 5 7 6 #ifndef _IMAGE_ENTITY_H … … 34 33 /** @param rotationSpeed the speed at what the crosshair should rotate */ 35 34 void setRotationSpeed(float rotationSpeed) { this->rotationSpeed = rotationSpeed; }; 36 void toggleBillboard ();35 void toggleBillboarding(); 37 36 38 37 virtual void tick(float dt); -
trunk/src/world_entities/npcs/ground_turret.cc
r6736 r6815 181 181 SYNCHELP_READ_BEGIN(); 182 182 183 SYNCHELP_READ_FKT( WorldEntity::writeState );183 SYNCHELP_READ_FKT( WorldEntity::writeState, NWT_GT_WE_STATE ); 184 184 185 185 return SYNCHELP_READ_N; … … 207 207 *reciever = rec; 208 208 209 SYNCHELP_WRITE_FKT( WorldEntity::readState );209 SYNCHELP_WRITE_FKT( WorldEntity::readState, NWT_GT_WE_STATE ); 210 210 211 211 } -
trunk/src/world_entities/power_ups/laser_power_up.cc
r6780 r6815 127 127 SYNCHELP_READ_BEGIN(); 128 128 129 SYNCHELP_READ_FKT( PowerUp::writeState );129 SYNCHELP_READ_FKT( PowerUp::writeState, NWT_LPU_WE_STATE ); 130 130 131 131 return SYNCHELP_READ_N; … … 149 149 SYNCHELP_WRITE_BEGIN(); 150 150 151 SYNCHELP_WRITE_FKT( PowerUp::readState );151 SYNCHELP_WRITE_FKT( PowerUp::readState, NWT_LPU_WE_STATE ); 152 152 153 153 return SYNCHELP_WRITE_N; -
trunk/src/world_entities/power_ups/param_power_up.cc
r6695 r6815 131 131 SYNCHELP_READ_BEGIN(); 132 132 133 SYNCHELP_READ_FKT( PowerUp::writeState );133 SYNCHELP_READ_FKT( PowerUp::writeState, NWT_PPU_WE_STATE ); 134 134 135 135 int i; 136 SYNCHELP_READ_INT( i );136 SYNCHELP_READ_INT( i, NWT_PPU_TYPE ); 137 137 this->type = (EnumParamPowerUpType)i; 138 SYNCHELP_READ_FLOAT( this->value );138 SYNCHELP_READ_FLOAT( this->value, NWT_PPU_VALUE ); 139 139 140 140 if ( this->value != 0 ) 141 141 { 142 SYNCHELP_READ_FLOAT( this->min_value );143 SYNCHELP_READ_FLOAT( this->max_value );142 SYNCHELP_READ_FLOAT( this->min_value, NWT_PPU_MINVALUE ); 143 SYNCHELP_READ_FLOAT( this->max_value, NWT_PPU_MAXVALUE ); 144 144 respawn(); 145 145 } … … 165 165 SYNCHELP_WRITE_BEGIN(); 166 166 167 SYNCHELP_WRITE_FKT( PowerUp::readState );167 SYNCHELP_WRITE_FKT( PowerUp::readState, NWT_PPU_WE_STATE ); 168 168 169 169 int i = (int)this->type; 170 SYNCHELP_WRITE_INT( i );171 SYNCHELP_WRITE_FLOAT( this->value );170 SYNCHELP_WRITE_INT( i, NWT_PPU_TYPE ); 171 SYNCHELP_WRITE_FLOAT( this->value, NWT_PPU_VALUE ); 172 172 173 173 if ( this->value != 0 ) 174 174 { 175 SYNCHELP_WRITE_FLOAT( this->min_value );176 SYNCHELP_WRITE_FLOAT( this->max_value );175 SYNCHELP_WRITE_FLOAT( this->min_value, NWT_PPU_MINVALUE ); 176 SYNCHELP_WRITE_FLOAT( this->max_value, NWT_PPU_MAXVALUE ); 177 177 } 178 178 -
trunk/src/world_entities/power_ups/power_up.cc
r6710 r6815 20 20 #include "extendable.h" 21 21 #include "primitive_model.h" 22 23 #include "assert.h" 22 24 23 25 using namespace std; … … 124 126 { 125 127 SYNCHELP_WRITE_BEGIN(); 126 SYNCHELP_WRITE_FKT( WorldEntity::readState );128 SYNCHELP_WRITE_FKT( WorldEntity::readState, NWT_PU_WE_STATE ); 127 129 return SYNCHELP_WRITE_N; 128 130 } … … 138 140 { 139 141 SYNCHELP_READ_BEGIN(); 140 SYNCHELP_READ_FKT( WorldEntity::writeState );142 SYNCHELP_READ_FKT( WorldEntity::writeState, NWT_PU_WE_STATE ); 141 143 return SYNCHELP_READ_N; 142 144 } -
trunk/src/world_entities/power_ups/turret_power_up.cc
r6780 r6815 136 136 SYNCHELP_READ_BEGIN(); 137 137 138 SYNCHELP_READ_FKT( PowerUp::writeState );138 SYNCHELP_READ_FKT( PowerUp::writeState, NWT_TPU_WE_STATE ); 139 139 140 140 return SYNCHELP_READ_N; … … 157 157 SYNCHELP_WRITE_BEGIN(); 158 158 159 SYNCHELP_WRITE_FKT( PowerUp::readState );159 SYNCHELP_WRITE_FKT( PowerUp::readState, NWT_TPU_WE_STATE ); 160 160 161 161 return SYNCHELP_WRITE_N; -
trunk/src/world_entities/power_ups/weapon_power_up.cc
r6710 r6815 100 100 SYNCHELP_READ_BEGIN(); 101 101 102 SYNCHELP_READ_FKT( PowerUp::writeState );102 SYNCHELP_READ_FKT( PowerUp::writeState, NWT_WPU_WE_STATE ); 103 103 104 104 //TODO: sync weapon class ( see loadParams ) … … 124 124 SYNCHELP_WRITE_BEGIN(); 125 125 126 SYNCHELP_WRITE_FKT( PowerUp::readState );126 SYNCHELP_WRITE_FKT( PowerUp::readState, NWT_WPU_WE_STATE ); 127 127 128 128 //TODO: sync weapon class ( see loadParams ) -
trunk/src/world_entities/skybox.cc
r6772 r6815 297 297 SYNCHELP_READ_BEGIN(); 298 298 299 SYNCHELP_READ_FKT( WorldEntity::writeState );300 301 SYNCHELP_READ_FLOAT( size );299 SYNCHELP_READ_FKT( WorldEntity::writeState, NWT_SB_WE_STATE ); 300 301 SYNCHELP_READ_FLOAT( size, NWT_SB_SIZE ); 302 302 if ( textureName ) 303 303 { … … 305 305 textureName = NULL; 306 306 } 307 SYNCHELP_READ_STRINGM( textureName );307 SYNCHELP_READ_STRINGM( textureName, NWT_SB_TEXTURENAME ); 308 308 309 309 this->setSize( size ); … … 331 331 SYNCHELP_WRITE_BEGIN(); 332 332 333 SYNCHELP_WRITE_FKT( WorldEntity::readState );334 335 SYNCHELP_WRITE_FLOAT(this->size );336 SYNCHELP_WRITE_STRING(this->textureName );333 SYNCHELP_WRITE_FKT( WorldEntity::readState, NWT_SB_WE_STATE ); 334 335 SYNCHELP_WRITE_FLOAT(this->size, NWT_SB_SIZE); 336 SYNCHELP_WRITE_STRING(this->textureName, NWT_SB_TEXTURENAME); 337 337 338 338 return SYNCHELP_WRITE_N; -
trunk/src/world_entities/space_ships/space_ship.cc
r6807 r6815 523 523 #define DATA_flags 2 524 524 #define DATA_mouse 3 525 #define DATA_sync 4 526 #define DATA_velocity 5 525 527 526 528 int SpaceShip::writeBytes( const byte * data, int length, int sender ) … … 529 531 530 532 byte b; 531 532 do 533 { 534 SYNCHELP_READ_BYTE( b ); 535 536 if ( b == DATA_state /*&& (this->getHostID()!=this->getOwner() || sender==0)*/ ) 537 { 538 PRINTF(0)("GOT STATE %d\n", this->getUniqueID()); 539 setRequestedSync( false ); 540 setIsOutOfSync( false ); 541 SYNCHELP_READ_FKT( WorldEntity::writeState ); 542 //SYNCHELP_READ_FLOAT( cycle ); 543 544 return SYNCHELP_READ_N; 545 } 546 547 548 //TODO: do not recieve data if you are the owner 549 if ( b == DATA_flags /*&& this->getHostID()!=this->getOwner()*/ ) 533 534 while ( SYNCHELP_READ_REMAINING()>0 ) 535 { 536 SYNCHELP_READ_BYTE( b, NWT_SS_B ); 537 538 if ( b == DATA_state ) 539 { 540 setRequestedSync( false ); 541 setIsOutOfSync( false ); 542 SYNCHELP_READ_FKT( WorldEntity::writeState, NWT_SS_WE_STATE ); 543 544 continue; 545 } 546 547 if ( b == DATA_flags ) 550 548 { 551 549 int flags = 0; 552 SYNCHELP_READ_INT( flags );550 SYNCHELP_READ_INT( flags, NWT_SS_FLAGS ); 553 551 554 552 bUp = (flags & MASK_bUp) != 0; … … 561 559 bRollL = (flags & MASK_bRollL) != 0; 562 560 bRollR = (flags & MASK_bRollR) != 0; 563 564 } 565 566 //TODO: do not recieve data if you are the owner 567 if ( b == DATA_mouse /*&& this->getHostID()!=this->getOwner()*/ ) 568 { 569 SYNCHELP_READ_FLOAT( mouseDir.w ); 570 SYNCHELP_READ_FLOAT( mouseDir.v.x ); 571 SYNCHELP_READ_FLOAT( mouseDir.v.y ); 572 SYNCHELP_READ_FLOAT( mouseDir.v.z ); 573 } 574 } while( b != 0 ); 575 576 /*if ( b == DATA_mouse && this->getHostID()!=this->getOwner() ) 577 { 578 SYNCHELP_READ_FLOAT( xMouse ); 579 SYNCHELP_READ_FLOAT( yMouse ); 580 SYNCHELP_READ_FLOAT( mouseSensitivity ); 581 SYNCHELP_READ_FLOAT( cycle ); 582 }*/ 583 584 if ( this->getOwner() != this->getHostID() ) 585 SYNCHELP_READ_FKT( PNode::writeSync ); 586 561 562 continue; 563 } 564 565 if ( b == DATA_mouse ) 566 { 567 SYNCHELP_READ_FLOAT( mouseDir.w, NWT_SS_MOUSEDIRW ); 568 SYNCHELP_READ_FLOAT( mouseDir.v.x, NWT_SS_MOUSEDIRX ); 569 SYNCHELP_READ_FLOAT( mouseDir.v.y, NWT_SS_MOUSEDIRY ); 570 SYNCHELP_READ_FLOAT( mouseDir.v.z, NWT_SS_MOUSEDIRZ ); 571 572 continue; 573 } 574 575 if ( b == DATA_sync ) 576 { 577 if ( this->getOwner() != this->getHostID() ) 578 SYNCHELP_READ_FKT( PNode::writeSync, NWT_SS_PN_SYNC ); 579 580 continue; 581 } 582 583 if ( b == DATA_velocity ) 584 { 585 SYNCHELP_READ_FLOAT( velocity.x, NWT_SS_VELX ); 586 SYNCHELP_READ_FLOAT( velocity.y, NWT_SS_VELY ); 587 SYNCHELP_READ_FLOAT( velocity.z, NWT_SS_VELZ ); 588 } 589 } 590 587 591 return SYNCHELP_READ_N; 588 592 } … … 608 612 PRINTF(0)("SEND STATE %d %d\n", this->getUniqueID(), rec); 609 613 610 SYNCHELP_WRITE_BYTE( (byte)DATA_state );611 612 SYNCHELP_WRITE_FKT( WorldEntity::readState );614 SYNCHELP_WRITE_BYTE( (byte)DATA_state, NWT_SS_B ); 615 616 SYNCHELP_WRITE_FKT( WorldEntity::readState, NWT_SS_WE_STATE ); 613 617 //SYNCHELP_WRITE_FLOAT( cycle ); 614 618 … … 617 621 618 622 *reciever = 0; 623 624 if ( this->getOwner() == this->getHostID() && PNode::needsReadSync() ) 625 { 626 SYNCHELP_WRITE_BYTE( DATA_sync, NWT_SS_B ); 627 SYNCHELP_WRITE_FKT( PNode::readSync, NWT_SS_PN_SYNC ); 628 } 619 629 620 630 if ( this->getHostID()==this->getOwner() ) … … 646 656 { 647 657 oldMask = mask; 648 SYNCHELP_WRITE_BYTE( DATA_flags ); 649 SYNCHELP_WRITE_INT( mask ); 650 } 651 #define __OFFSET_ROT 0.05 652 if ( fabs( oldMouseDir.w - mouseDir.w ) > __OFFSET_ROT || 653 fabs( oldMouseDir.v.x - mouseDir.v.x ) > __OFFSET_ROT || 654 fabs( oldMouseDir.v.y - mouseDir.v.y ) > __OFFSET_ROT || 655 fabs( oldMouseDir.v.z - mouseDir.v.z ) > __OFFSET_ROT ) 658 SYNCHELP_WRITE_BYTE( DATA_flags, NWT_SS_B ); 659 SYNCHELP_WRITE_INT( mask, NWT_SS_FLAGS ); 660 } 661 #define __OFFSET_MDIR_W 0.01 662 #define __OFFSET_MDIR_V 0.01 663 if ( fabs( oldMouseDir.w - mouseDir.w ) > __OFFSET_MDIR_W || 664 fabs( oldMouseDir.v.x - mouseDir.v.x ) > __OFFSET_MDIR_V || 665 fabs( oldMouseDir.v.y - mouseDir.v.y ) > __OFFSET_MDIR_V || 666 fabs( oldMouseDir.v.z - mouseDir.v.z ) > __OFFSET_MDIR_V ) 656 667 { 657 668 oldMouseDir = mouseDir; 658 669 659 SYNCHELP_WRITE_BYTE( DATA_mouse ); 660 SYNCHELP_WRITE_FLOAT( mouseDir.w ); 661 SYNCHELP_WRITE_FLOAT( mouseDir.v.x ); 662 SYNCHELP_WRITE_FLOAT( mouseDir.v.y ); 663 SYNCHELP_WRITE_FLOAT( mouseDir.v.z ); 664 } 665 666 } 667 668 SYNCHELP_WRITE_BYTE( 0 ); 669 670 671 if ( this->getOwner() == this->getHostID() ) 672 SYNCHELP_WRITE_FKT( PNode::readSync ); 670 SYNCHELP_WRITE_BYTE( DATA_mouse, NWT_SS_B ); 671 PRINTF(0)("SENDING mousedir\n"); 672 SYNCHELP_WRITE_FLOAT( mouseDir.w, NWT_SS_MOUSEDIRW ); 673 SYNCHELP_WRITE_FLOAT( mouseDir.v.x, NWT_SS_MOUSEDIRX ); 674 SYNCHELP_WRITE_FLOAT( mouseDir.v.y, NWT_SS_MOUSEDIRY ); 675 SYNCHELP_WRITE_FLOAT( mouseDir.v.z, NWT_SS_MOUSEDIRZ ); 676 } 677 #define __OFFSET_VEL 0.05 678 if ( fabs( oldVelocity.x - velocity.x ) > __OFFSET_VEL*velocity.x || 679 fabs( oldVelocity.y - velocity.y ) > __OFFSET_VEL*velocity.y || 680 fabs( oldVelocity.z - velocity.z ) > __OFFSET_VEL*velocity.z ) 681 { 682 oldVelocity = velocity; 683 PRINTF(0)("SENDING velocity\n"); 684 SYNCHELP_WRITE_BYTE( DATA_velocity, NWT_SS_B ); 685 SYNCHELP_WRITE_FLOAT( velocity.x, NWT_SS_VELX ); 686 SYNCHELP_WRITE_FLOAT( velocity.y, NWT_SS_VELY ); 687 SYNCHELP_WRITE_FLOAT( velocity.z, NWT_SS_VELZ ); 688 } 689 690 } 673 691 674 692 return SYNCHELP_WRITE_N; 675 693 } 694 695 -
trunk/src/world_entities/space_ships/space_ship.h
r6807 r6815 42 42 virtual int readBytes(byte* data, int maxLength, int * reciever); 43 43 44 45 44 private: 46 45 void init(); … … 70 69 71 70 Vector velocity; //!< the velocity of the player. 71 Vector oldVelocity; //!< the velocity the player had last synced 72 72 Quaternion mouseDir; //!< the direction where the player wants to fly 73 73 Quaternion oldMouseDir; //!< the direction where the player wanted to fly -
trunk/src/world_entities/terrain.cc
r6780 r6815 325 325 326 326 SYNCHELP_READ_BEGIN(); 327 SYNCHELP_READ_FKT( WorldEntity::writeState );327 SYNCHELP_READ_FKT( WorldEntity::writeState, NWT_TER_WE_STATE ); 328 328 329 329 return SYNCHELP_READ_N; … … 343 343 *reciever = rec; 344 344 345 return WorldEntity::readState( data, maxLength ); 345 SYNCHELP_WRITE_BEGIN(); 346 SYNCHELP_WRITE_FKT( WorldEntity::readState, NWT_TER_WE_STATE ); 347 return SYNCHELP_WRITE_N; 346 348 347 349 } -
trunk/src/world_entities/world_entity.cc
r6720 r6815 518 518 SYNCHELP_READ_BEGIN(); 519 519 520 SYNCHELP_READ_FKT( PNode::writeState );521 522 SYNCHELP_READ_STRINGM( modelFileName );523 SYNCHELP_READ_FLOAT( scaling );520 SYNCHELP_READ_FKT( PNode::writeState, NWT_WE_PN_WRITESTATE ); 521 522 SYNCHELP_READ_STRINGM( modelFileName, NWT_WE_PN_MODELFILENAME ); 523 SYNCHELP_READ_FLOAT( scaling, NWT_WE_PN_SCALING ); 524 524 //check if modelFileName is relative to datadir or absolute 525 525 … … 562 562 SYNCHELP_WRITE_BEGIN(); 563 563 564 SYNCHELP_WRITE_FKT( PNode::readState );564 SYNCHELP_WRITE_FKT( PNode::readState, NWT_WE_PN_WRITESTATE ); 565 565 566 566 if ( getModel(0) && getModel(0)->getName() ) … … 573 573 } 574 574 575 SYNCHELP_WRITE_STRING( name );575 SYNCHELP_WRITE_STRING( name, NWT_WE_PN_MODELFILENAME ); 576 576 } 577 577 else 578 578 { 579 SYNCHELP_WRITE_STRING("" );580 } 581 582 SYNCHELP_WRITE_FLOAT( scaling );579 SYNCHELP_WRITE_STRING("", NWT_WE_PN_MODELFILENAME); 580 } 581 582 SYNCHELP_WRITE_FLOAT( scaling, NWT_WE_PN_SCALING ); 583 583 /*if ( this->md2TextureFileName!=NULL && strcmp(this->md2TextureFileName, "") ) 584 584 {
Note: See TracChangeset
for help on using the changeset viewer.