WeaponRoller Class Reference

#include <WeaponRoller.h>

Inheritance diagram for WeaponRoller:

Weapon AccessoryPart

List of all members.

Public Member Functions

 WeaponRoller ()
virtual ~WeaponRoller ()
virtual bool parseXML (AccessoryCreateContext &context, XMLNode *accessoryNode)
WeapongetCollisionAction ()
ModelIDgetRollerModelID ()
bool getRoll ()
fixed getShieldHurtFactor (ScorchedContext &context)
fixed getTime (ScorchedContext &context)
fixed getWindFactor (ScorchedContext &context)
virtual void fireWeapon (ScorchedContext &context, WeaponFireContext &weaponContext, FixedVector &position, FixedVector &velocity)
 REGISTER_ACCESSORY_HEADER (WeaponRoller, AccessoryPart::AccessoryWeapon)

Protected Member Functions

void addRoller (ScorchedContext &context, WeaponFireContext &weaponContext, FixedVector &position, FixedVector &velocity)

Protected Attributes

NumberParser numberRollers_
WeaponcollisionAction_
ModelID rollerModelId_
NumberParser shieldHurtFactorExp_
NumberParser windFactorExp_
NumberParser timeExp_
fixed shieldHurtFactor_
fixed windFactor_
fixed time_
bool roll_
bool maintainVelocity_
NumberParser dampenVelocityExp_
fixed dampenVelocity_


Detailed Description

Definition at line 28 of file WeaponRoller.h.


Constructor & Destructor Documentation

WeaponRoller::WeaponRoller (  ) 

Definition at line 35 of file WeaponRoller.cpp.

WeaponRoller::~WeaponRoller (  )  [virtual]

Definition at line 43 of file WeaponRoller.cpp.


Member Function Documentation

bool WeaponRoller::parseXML ( AccessoryCreateContext context,
XMLNode accessoryNode 
) [virtual]

Reimplemented from Weapon.

Definition at line 48 of file WeaponRoller.cpp.

References AccessoryPart::AccessoryWeapon, collisionAction_, dampenVelocityExp_, AccessoryCreateContext::getAccessoryStore(), XMLNode::getNamedChild(), AccessoryPart::getType(), ModelID::initFromNode(), maintainVelocity_, numberRollers_, AccessoryPart::parent_, Weapon::parseXML(), XMLNode::returnError(), roll_, rollerModelId_, shieldHurtFactorExp_, timeExp_, and windFactorExp_.

Weapon* WeaponRoller::getCollisionAction (  )  [inline]

Definition at line 37 of file WeaponRoller.h.

References collisionAction_.

Referenced by ShotBounce::doCollision().

ModelID& WeaponRoller::getRollerModelID (  )  [inline]

Definition at line 38 of file WeaponRoller.h.

References rollerModelId_.

bool WeaponRoller::getRoll (  )  [inline]

Definition at line 39 of file WeaponRoller.h.

References roll_.

Referenced by ShotBounce::init().

fixed WeaponRoller::getShieldHurtFactor ( ScorchedContext context  ) 

Definition at line 102 of file WeaponRoller.cpp.

References shieldHurtFactor_.

Referenced by PhysicsParticleActionObject::bounceShieldHit().

fixed WeaponRoller::getTime ( ScorchedContext context  ) 

Definition at line 97 of file WeaponRoller.cpp.

References NumberParser::getValue(), and timeExp_.

Referenced by ShotBounce::simulate().

fixed WeaponRoller::getWindFactor ( ScorchedContext context  ) 

Definition at line 92 of file WeaponRoller.cpp.

References windFactor_.

Referenced by ShotBounce::init().

void WeaponRoller::fireWeapon ( ScorchedContext context,
WeaponFireContext weaponContext,
FixedVector position,
FixedVector velocity 
) [virtual]

Implements Weapon.

Definition at line 107 of file WeaponRoller.cpp.

References addRoller(), dampenVelocity_, dampenVelocityExp_, Accessory::getAction(), ScorchedContext::getActionController(), TargetShield::getCurrentShield(), LandscapeMaps::getGroundMaps(), GroundMaps::getInterpHeight(), RoofMaps::getInterpRoofHeight(), ScorchedContext::getLandscapeMaps(), Target::getLife(), RandomGenerator::getRandFixed(), ActionController::getRandom(), LandscapeMaps::getRoofMaps(), Target::getShield(), ScorchedContext::getTargetContainer(), TargetLife::getTargetPosition(), TargetContainer::getTargets(), NumberParser::getUInt(), NumberParser::getValue(), Shield::inShield(), numberRollers_, shieldHurtFactor_, shieldHurtFactorExp_, windFactor_, and windFactorExp_.

WeaponRoller::REGISTER_ACCESSORY_HEADER ( WeaponRoller  ,
AccessoryPart::AccessoryWeapon   
)

void WeaponRoller::addRoller ( ScorchedContext context,
WeaponFireContext weaponContext,
FixedVector position,
FixedVector velocity 
) [protected]

Definition at line 190 of file WeaponRoller.cpp.

References ActionController::addAction(), dampenVelocity_, ScorchedContext::getActionController(), RandomGenerator::getRandFixed(), ActionController::getRandom(), and maintainVelocity_.

Referenced by fireWeapon().


Member Data Documentation

NumberParser WeaponRoller::numberRollers_ [protected]

Definition at line 51 of file WeaponRoller.h.

Referenced by fireWeapon(), and parseXML().

Weapon* WeaponRoller::collisionAction_ [protected]

Definition at line 52 of file WeaponRoller.h.

Referenced by getCollisionAction(), and parseXML().

ModelID WeaponRoller::rollerModelId_ [protected]

Definition at line 53 of file WeaponRoller.h.

Referenced by getRollerModelID(), and parseXML().

NumberParser WeaponRoller::shieldHurtFactorExp_ [protected]

Definition at line 54 of file WeaponRoller.h.

Referenced by fireWeapon(), and parseXML().

NumberParser WeaponRoller::windFactorExp_ [protected]

Definition at line 55 of file WeaponRoller.h.

Referenced by fireWeapon(), and parseXML().

NumberParser WeaponRoller::timeExp_ [protected]

Definition at line 56 of file WeaponRoller.h.

Referenced by getTime(), and parseXML().

fixed WeaponRoller::shieldHurtFactor_ [protected]

Definition at line 57 of file WeaponRoller.h.

Referenced by fireWeapon(), and getShieldHurtFactor().

fixed WeaponRoller::windFactor_ [protected]

Definition at line 58 of file WeaponRoller.h.

Referenced by fireWeapon(), and getWindFactor().

fixed WeaponRoller::time_ [protected]

Definition at line 59 of file WeaponRoller.h.

bool WeaponRoller::roll_ [protected]

Definition at line 60 of file WeaponRoller.h.

Referenced by getRoll(), and parseXML().

bool WeaponRoller::maintainVelocity_ [protected]

Definition at line 62 of file WeaponRoller.h.

Referenced by addRoller(), and parseXML().

NumberParser WeaponRoller::dampenVelocityExp_ [protected]

Definition at line 63 of file WeaponRoller.h.

Referenced by fireWeapon(), and parseXML().

fixed WeaponRoller::dampenVelocity_ [protected]

Definition at line 64 of file WeaponRoller.h.

Referenced by addRoller(), and fireWeapon().


The documentation for this class was generated from the following files:
Generated on Mon Feb 16 15:15:08 2009 for Scorched3D by  doxygen 1.5.3