Changeset 5885 in orxonox.OLD for trunk/src/world_entities
- Timestamp:
- Dec 3, 2005, 1:29:42 PM (19 years ago)
- Location:
- trunk/src/world_entities/weapons
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/world_entities/weapons/weapon_manager.cc
r5779 r5885 110 110 this->crossHairSizeAnim->addKeyFrame(100, .05, ANIM_LINEAR); 111 111 this->crossHairSizeAnim->addKeyFrame(50, .01, ANIM_LINEAR); 112 113 this->targetIterator = NULL;114 112 } 115 113 … … 337 335 } 338 336 } 339 }340 341 342 /**343 * Selects an Entity from the NPC-list, and returns the Target344 */345 PNode* WeaponManager::getSomeTarget()346 {347 if (this->targetIterator == NULL)348 {349 std::list<BaseObject*>* npcList = ClassList::getList(CL_NPC);350 if (npcList != NULL)351 {352 this->targetIterator = npcList->begin();353 }354 else355 return NULL;356 }357 358 ///FIXME359 // this->targetIterator++;360 PNode* retNode = dynamic_cast<PNode*>((*targetIterator));361 // if (retNode == NULL && this->targetIterator->getList()->getSize() > 0)362 // retNode = dynamic_cast<PNode*>(targetIterator->firstElement());363 364 return retNode;365 }366 367 368 /**369 * Selects an Entity from the Entity-List, that is near of the carrier PNode.370 * @param carrier: The PNode from which the distance should be measured371 * @param distance: The Maximum Distance to Return.372 */373 PNode* WeaponManager::getDistanceTarget(const PNode* carrier, float distance)374 {375 std::list<BaseObject*>* npcList = ClassList::getList(CL_NPC);376 if (npcList != NULL)377 {378 list<BaseObject*>::iterator node;379 for (node= npcList->begin(); node != npcList->end(); node++)380 if ((carrier->getAbsCoor() - dynamic_cast<PNode*>(*node)->getAbsCoor()).len() < distance)381 return dynamic_cast<PNode*>(*node);382 }383 return this->getFixedTarget();384 337 } 385 338 -
trunk/src/world_entities/weapons/weapon_manager.h
r5779 r5885 80 80 /** @returns a fixed target namely the Crosshair's 3D position */ 81 81 inline PNode* getFixedTarget() const { return this->crosshair; }; 82 PNode* getSomeTarget();83 PNode* getDistanceTarget(const PNode* carrier, float distance);84 82 85 83 void fire(); … … 109 107 Crosshair* crosshair; //!< an aim. 110 108 tAnimation<Crosshair>* crossHairSizeAnim; //!< An animation for the crosshair (scaling) 111 112 std::list<BaseObject*>::iterator targetIterator; //!< An iterator for traversion lists of enemies.113 109 };
Note: See TracChangeset
for help on using the changeset viewer.