Changeset 10647 in orxonox.OLD for branches/hud/src/world_entities/creatures/fps_player.cc
- Timestamp:
- May 3, 2007, 4:54:42 PM (18 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/hud/src/world_entities/creatures/fps_player.cc
r10618 r10647 19 19 #include "interactive_model.h" 20 20 #include "state.h" 21 #include "tools/camera.h" 21 22 22 23 #include "src/lib/util/loading/factory.h" … … 117 118 registerEvent(KeyMapper::PEV_FIRE1); 118 119 registerEvent(KeyMapper::PEV_JUMP); 120 registerEvent(KeyMapper::PEV_CROUCH); 119 121 registerEvent(EV_MOUSE_MOTION); 120 122 … … 149 151 150 152 this->getWeaponManager().getFixedTarget()->setParent(&this->cameraNode); 151 this->getWeaponManager().getFixedTarget()->setRelCoor(1000,0,0); 153 this->getWeaponManager().getFixedTarget()->setParentMode(PNODE_ALL); 154 this->getWeaponManager().getFixedTarget()->setRelCoor(10,0,0); 152 155 153 156 … … 179 182 } 180 183 181 184 /** 185 * was probabably designed for setting direction of FPSPlayer 186 * but hey, this connot work like this, can it? 187 */ 182 188 void FPSPlayer::setPlayDirection(const Quaternion& quat, float speed) 183 189 { … … 186 192 } 187 193 188 194 /** 195 * Resets FPSPlayer stats and freezes its moving directions 196 * 197 */ 189 198 void FPSPlayer::reset() 190 199 { … … 199 208 } 200 209 201 210 /** 211 * Defines what happens to camera and other important elements when changing 212 * into FPS-view 213 */ 202 214 void FPSPlayer::enter() 203 215 { … … 206 218 State::getCameraNode()->setParentSoft(&this->cameraNode); 207 219 State::getCameraTargetNode()->setParentSoft(&this->cameraNode); 208 209 this->getWeaponManager().getFixedTarget()->setParent(State::getCameraTargetNode()); 210 this->getWeaponManager().getFixedTarget()->setRelCoor(0,0,0); 220 221 State::getCamera()->setViewMode(Camera::ViewFPS); 222 223 this->getWeaponManager().getFixedTarget()->setParent(&this->cameraNode); 224 //this->getWeaponManager().getFixedTarget()->setParentMode(PNODE_ALL); 225 //this->getWeaponManager().getFixedTarget()->setRelCoor(100,0,0); 211 226 212 227 if ( !State::isOnline() ) … … 216 231 } 217 232 233 /** 234 * Defines what happens if active player leaves FPSPlayer 235 * (basicly hides crosshair and frees camera) 236 */ 218 237 void FPSPlayer::leave() 219 238 { … … 239 258 this->getWeaponManager().getParentNode()->setParentMode(PNODE_ROTATE_AND_MOVE); 240 259 this->getWeaponManager().getFixedTarget()->setParent(&this->cameraNode); 241 this->getWeaponManager().getFixedTarget()->setParentMode(PNODE_ROTATE_AND_MOVE); 260 //this->getWeaponManager().getFixedTarget()->setParentMode(PNODE_ROTATE_AND_MOVE); 261 State::getCamera()->setViewMode(Camera::ViewFPS); 242 262 243 263 … … 270 290 { 271 291 this->getWeaponManager().fire(); 292 PRINTF(0)("Crosshair at position: %f, %f, %f\n", this->getWeaponManager().getFixedTarget()->getAbsCoor().x, this->getWeaponManager().getFixedTarget()->getAbsCoor().y, this->getWeaponManager().getFixedTarget()->getAbsCoor().z); 272 293 } 273 294 … … 346 367 }*/ 347 368 369 348 370 velocity *= 100; 349 371 350 372 if( this->getModel( 0) != NULL && this->getModel(0)->isA(InteractiveModel::staticClassID())) 351 373 { 352 if( this->bJump) 353 { 354 if( this->jumpAcceleration < 1.0f) 374 if( this->bJump) 355 375 { 356 this->jumpAcceleration = 300.0f; 357 358 if( ((InteractiveModel*)this->getModel(0))->getAnimation() != JUMP) 359 ((InteractiveModel*)this->getModel(0))->setAnimation(JUMP); 360 } 361 } 362 else if(velocity.len() != 0.0f) 363 { 364 if( ((InteractiveModel*)this->getModel(0))->getAnimation() != RUN) 365 ((InteractiveModel*)this->getModel(0))->setAnimation(RUN); 366 } 367 else 368 { 369 if( ((InteractiveModel*)this->getModel(0))->getAnimation() != STAND) 370 ((InteractiveModel*)this->getModel(0))->setAnimation(STAND); 371 } 376 if( this->jumpAcceleration < 1.0f) 377 { 378 this->jumpAcceleration = 300.0f; 379 380 if( ((InteractiveModel*)this->getModel(0))->getAnimation() != JUMP) 381 ((InteractiveModel*)this->getModel(0))->setAnimation(JUMP); 382 } 383 } 384 else if(velocity.len() != 0.0f) 385 { 386 if( this->bCrouch ) 387 { 388 if( ((InteractiveModel*)this->getModel(0))->getAnimation() != CROUCH_WALK) 389 ((InteractiveModel*)this->getModel(0))->setAnimation(CROUCH_WALK); 390 } 391 else 392 { 393 if( ((InteractiveModel*)this->getModel(0))->getAnimation() != RUN) 394 ((InteractiveModel*)this->getModel(0))->setAnimation(RUN); 395 } 396 397 } 398 else 399 { 400 if( this->bCrouch ) 401 { 402 if( ((InteractiveModel*)this->getModel(0))->getAnimation() != CROUCH_STAND) 403 ((InteractiveModel*)this->getModel(0))->setAnimation(CROUCH_STAND); 404 } 405 else 406 { 407 if( ((InteractiveModel*)this->getModel(0))->getAnimation() != STAND) 408 ((InteractiveModel*)this->getModel(0))->setAnimation(STAND); 409 } 410 } 411 412 if( this->bFire ) 413 { 414 if( this->bCrouch ) 415 { 416 if( ((InteractiveModel*)this->getModel(0))->getAnimation() != CROUCH_ATTACK) 417 ((InteractiveModel*)this->getModel(0))->setAnimation(CROUCH_ATTACK); 418 } 419 else 420 { 421 if( ((InteractiveModel*)this->getModel(0))->getAnimation() != ATTACK) 422 ((InteractiveModel*)this->getModel(0))->setAnimation(ATTACK); 423 } 424 } 372 425 } 373 426 … … 390 443 this->fallVelocity = 0.0f; 391 444 } 392 if((velocity *time).len() < 10.0f) this->shiftCoor( velocity*time ); 393 else{ 445 if((velocity * time).len() < 10.0f) this->shiftCoor( velocity*time ); 446 else 447 { 394 448 velocity.normalize(); 395 449 velocity *= 10.0f; 396 450 this->shiftCoor( velocity ); 397 } 398 399 451 } 400 452 401 453 … … 426 478 427 479 /** 428 * process480 * checks events 429 481 */ 430 482 void FPSPlayer::process(const Event &event) … … 440 492 else if( event.type == KeyMapper::PEV_BACKWARD) 441 493 this->bBackward = event.bPressed; //this->shiftCoor(0,-.1,0); 494 else if( event.type == KeyMapper::PEV_JUMP) 495 this->bJump = event.bPressed; 496 else if( event.type == KeyMapper::PEV_FIRE1) 497 this->bFire = event.bPressed; 498 else if( event.type == KeyMapper::PEV_CROUCH) 499 this->bCrouch = event.bPressed; 442 500 else if( event.type == EV_MOUSE_MOTION) 443 501 { … … 445 503 this->yMouse += event.yRel; 446 504 } 447 else if( event.type == KeyMapper::PEV_JUMP) 448 { 449 this->bJump = event.bPressed; 450 } 451 else if( event.type == KeyMapper::PEV_FIRE1) 452 { 453 this->bFire = event.bPressed; 454 } 455 } 456 457 505 } 506 507 /** 508 * respawns FPSplayer 509 */ 458 510 void FPSPlayer::respawn( ) 459 511 { … … 466 518 } 467 519 468 520 /** 521 * Kills the FPSplayer defining its killer 522 */ 469 523 void FPSPlayer::destroy( WorldEntity* killer ) 470 524 {
Note: See TracChangeset
for help on using the changeset viewer.