AccessoryStore Class Reference

#include <AccessoryStore.h>

List of all members.

Public Types

enum  SortKey { SortNothing = 0, SortName = 1, SortPrice = 2 }

Public Member Functions

 AccessoryStore ()
virtual ~AccessoryStore ()
bool parseFile (ScorchedContext &context, ProgressCounter *counter=0)
void clearAccessories ()
AccessoryfindByAccessoryId (unsigned int id)
AccessoryfindByPrimaryAccessoryName (const char *name)
AccessoryPartfindAccessoryPartByAccessoryId (unsigned int id, const char *type)
AccessoryPartcreateAccessoryPart (AccessoryCreateContext &context, Accessory *parent, XMLNode *currentNode)
AccessoryPartfindByAccessoryPartId (unsigned int id)
WeapongetDeathAnimation ()
WeapongetMuzzelFlash ()
std::list< Accessory * > getAllAccessories (int sortKey=SortNothing)
std::list< Accessory * > getAllAccessoriesByTabGroup (const char *tabgroup, int sortKey=SortNothing)
std::map
< std::string,
XMLNode * > & 
getParsingNodes ()
std::set< std::string > & getTabGroupNames ()
bool writeWeapon (NetBuffer &buffer, Weapon *weapon)
WeaponreadWeapon (NetBufferReader &reader)
bool writeAccessoryPart (NetBuffer &buffer, AccessoryPart *weapon)
AccessoryPartreadAccessoryPart (NetBufferReader &reader)
bool writeEconomyToBuffer (NetBuffer &buffer)
bool readEconomyFromBuffer (NetBufferReader &reader)
void sortList (std::list< Accessory * > &accList, int sortKey=SortNothing)

Protected Attributes

std::set< std::stringtabGroups_
std::list< Accessory * > accessories_
std::list
< AccessoryPart * > 
accessoryParts_
std::map
< std::string,
XMLNode * > 
parsingNodes_
WeaponmuzzleFlash_
WeapondeathAnimation_


Detailed Description

Definition at line 34 of file AccessoryStore.h.


Member Enumeration Documentation

enum AccessoryStore::SortKey

Enumerator:
SortNothing 
SortName 
SortPrice 

Definition at line 40 of file AccessoryStore.h.


Constructor & Destructor Documentation

AccessoryStore::AccessoryStore (  ) 

Definition at line 30 of file AccessoryStore.cpp.

AccessoryStore::~AccessoryStore (  )  [virtual]

Definition at line 35 of file AccessoryStore.cpp.


Member Function Documentation

bool AccessoryStore::parseFile ( ScorchedContext context,
ProgressCounter counter = 0 
)

Definition at line 40 of file AccessoryStore.cpp.

References accessories_, AccessoryPart::AccessoryWeapon, clearAccessories(), deathAnimation_, S3D::dialogMessage(), XMLNode::failChildren(), file, findByPrimaryAccessoryName(), S3D::formatStringBuffer(), Accessory::getAction(), XMLNode::getChildren(), S3D::getDataFile(), Accessory::getMaximumNumber(), Accessory::getName(), XMLNode::getNamedChild(), Accessory::getNoBuy(), XMLFile::getParserError(), XMLFile::getRootNode(), Accessory::getTabGroupName(), AccessoryPart::getType(), LANG_RESOURCE, muzzleFlash_, Accessory::parseXML(), parsingNodes_, XMLFile::readFile(), XMLNode::returnError(), ProgressCounter::setNewOp(), ProgressCounter::setNewPercentage(), LangStringUtil::strcmp(), and tabGroups_.

void AccessoryStore::clearAccessories (  ) 

Definition at line 362 of file AccessoryStore.cpp.

References accessories_, accessoryParts_, deathAnimation_, muzzleFlash_, Accessory::resetAccessoryIds(), and AccessoryPart::resetAccessoryPartIds().

Referenced by parseFile().

Accessory * AccessoryStore::findByAccessoryId ( unsigned int  id  ) 

Definition at line 313 of file AccessoryStore.cpp.

References accessories_, and Accessory::getAccessoryId().

Referenced by EconomyFreeMarket::calculatePrices(), PlayShots::processFiredMessage(), readEconomyFromBuffer(), TargetShield::readMessage(), TargetParachute::readMessage(), TankAccessories::readMessage(), EconomyFreeMarket::savePrices(), and ServerShotHolder::validateFiredMessage().

Accessory * AccessoryStore::findByPrimaryAccessoryName ( const char *  name  ) 

Definition at line 297 of file AccessoryStore.cpp.

References accessories_, Accessory::getName(), and LangStringUtil::strcmp().

Referenced by LandscapeActionFireWeapon::fireAction(), TankMovement::moveTank(), parseFile(), and s3d_fire_weapon().

AccessoryPart * AccessoryStore::findAccessoryPartByAccessoryId ( unsigned int  id,
const char *  type 
)

Definition at line 329 of file AccessoryStore.cpp.

References accessoryParts_, Accessory::getAccessoryId(), AccessoryPart::getAccessoryTypeName(), AccessoryPart::getParent(), and LangStringUtil::strcmp().

Referenced by TankAICurrentMove::makeMoveShot(), Accessory::parseXML(), and TankWeapon::setCurrentWeapon().

AccessoryPart * AccessoryStore::createAccessoryPart ( AccessoryCreateContext context,
Accessory parent,
XMLNode currentNode 
)

Definition at line 137 of file AccessoryStore.cpp.

References accessoryParts_, DIALOG_ASSERT, S3D::dialogMessage(), XMLNode::failChildren(), S3D::formatStringBuffer(), XMLNode::getContent(), XMLNode::getNamedParameter(), AccessoryMetaRegistration::getNewAccessory(), AccessoryPart::getParent(), AccessoryPart::parseXML(), and AccessoryPart::setParent().

Referenced by Accessory::parseXML().

AccessoryPart * AccessoryStore::findByAccessoryPartId ( unsigned int  id  ) 

Definition at line 346 of file AccessoryStore.cpp.

References accessoryParts_, and AccessoryPart::getAccessoryPartId().

Referenced by readAccessoryPart().

Weapon * AccessoryStore::getDeathAnimation (  ) 

Definition at line 292 of file AccessoryStore.cpp.

References deathAnimation_.

Referenced by Tank::getDeathAction().

Weapon * AccessoryStore::getMuzzelFlash (  ) 

Definition at line 287 of file AccessoryStore.cpp.

References muzzleFlash_.

Referenced by TankFired::simulate().

std::list< Accessory * > AccessoryStore::getAllAccessories ( int  sortKey = SortNothing  ) 

Definition at line 272 of file AccessoryStore.cpp.

References accessories_, and sortList().

Referenced by StatsLoggerDatabase::createLogger(), TankAccessories::newMatch(), and writeEconomyToBuffer().

std::list< Accessory * > AccessoryStore::getAllAccessoriesByTabGroup ( const char *  tabgroup,
int  sortKey = SortNothing 
)

Definition at line 252 of file AccessoryStore.cpp.

References accessories_, Accessory::getTabGroupName(), sortList(), and LangStringUtil::strcmp().

std::map<std::string, XMLNode *>& AccessoryStore::getParsingNodes (  )  [inline]

Definition at line 65 of file AccessoryStore.h.

References parsingNodes_.

Referenced by WeaponReference::parseXML().

std::set<std::string>& AccessoryStore::getTabGroupNames (  )  [inline]

Definition at line 66 of file AccessoryStore.h.

References tabGroups_.

bool AccessoryStore::writeWeapon ( NetBuffer buffer,
Weapon weapon 
)

Definition at line 382 of file AccessoryStore.cpp.

References writeAccessoryPart().

Referenced by Target::writeMessage().

Weapon * AccessoryStore::readWeapon ( NetBufferReader reader  ) 

Definition at line 387 of file AccessoryStore.cpp.

References AccessoryPart::AccessoryWeapon, AccessoryPart::getType(), and readAccessoryPart().

Referenced by Target::readMessage().

bool AccessoryStore::writeAccessoryPart ( NetBuffer buffer,
AccessoryPart weapon 
)

Definition at line 398 of file AccessoryStore.cpp.

References NetBuffer::addToBuffer(), and AccessoryPart::getAccessoryPartId().

Referenced by writeWeapon().

AccessoryPart * AccessoryStore::readAccessoryPart ( NetBufferReader reader  ) 

Definition at line 405 of file AccessoryStore.cpp.

References findByAccessoryPartId(), AccessoryPart::getAccessoryPartId(), and NetBufferReader::getFromBuffer().

Referenced by readWeapon().

bool AccessoryStore::writeEconomyToBuffer ( NetBuffer buffer  ) 

Definition at line 418 of file AccessoryStore.cpp.

References NetBuffer::addToBuffer(), Accessory::getAccessoryId(), getAllAccessories(), Accessory::getPrice(), and Accessory::getSellPrice().

bool AccessoryStore::readEconomyFromBuffer ( NetBufferReader reader  ) 

Definition at line 436 of file AccessoryStore.cpp.

References findByAccessoryId(), NetBufferReader::getFromBuffer(), Accessory::setPrice(), and Accessory::setSellPrice().

void AccessoryStore::sortList ( std::list< Accessory * > &  accList,
int  sortKey = SortNothing 
)

Definition at line 171 of file AccessoryStore.cpp.

References accessories_, int(), SortName, SortPrice, and LangStringUtil::strcmp().

Referenced by InventoryDialog::addPlayerWeapons(), BuyAccessoryDialog::addPlayerWeaponsSell(), getAllAccessories(), getAllAccessoriesByTabGroup(), TankKeyboardControlUtil::nextWeapon(), TankKeyboardControlUtil::prevWeapon(), TankMenus::showInventory(), TankWeaponTip::showItems(), TankParachutesTip::showItems(), TankShieldTip::showItems(), and TankFuelTip::showItems().


Member Data Documentation

std::set<std::string> AccessoryStore::tabGroups_ [protected]

Definition at line 79 of file AccessoryStore.h.

Referenced by getTabGroupNames(), and parseFile().

std::list<Accessory *> AccessoryStore::accessories_ [protected]

Definition at line 80 of file AccessoryStore.h.

Referenced by clearAccessories(), findByAccessoryId(), findByPrimaryAccessoryName(), getAllAccessories(), getAllAccessoriesByTabGroup(), parseFile(), and sortList().

std::list<AccessoryPart *> AccessoryStore::accessoryParts_ [protected]

Definition at line 81 of file AccessoryStore.h.

Referenced by clearAccessories(), createAccessoryPart(), findAccessoryPartByAccessoryId(), and findByAccessoryPartId().

std::map<std::string, XMLNode *> AccessoryStore::parsingNodes_ [protected]

Definition at line 82 of file AccessoryStore.h.

Referenced by getParsingNodes(), and parseFile().

Weapon* AccessoryStore::muzzleFlash_ [protected]

Definition at line 83 of file AccessoryStore.h.

Referenced by clearAccessories(), getMuzzelFlash(), and parseFile().

Weapon* AccessoryStore::deathAnimation_ [protected]

Definition at line 84 of file AccessoryStore.h.

Referenced by clearAccessories(), getDeathAnimation(), and parseFile().


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