41 #include "Core-Level-JR.h"
46 rpgAttack::rpgAttack(
unsigned element,
unsigned ap)
55 rpgAttack::~rpgAttack()
60 void rpgAttack::load(laPropertyList* pElement)
62 nElement = pElement->getInt(
"Element");
63 nAP = pElement->getInt(
"AP");
66 try{ dRange = pElement->getDouble(
"range") *
M_UNIT; }
67 catch(laError_PropertyNotDefined&){ dRange =
M_UNIT * 1.2; };
69 try{ dChargeTime = pElement->getDouble(
"charge-time"); }
70 catch(laError_PropertyNotDefined&){ dChargeTime = 1; };
73 unsigned n = _pTS->getElementIndex( pElement->getText(
"potion-like-fx") );
74 laPropertyList *pPL = _pTS->getElement( n );
76 spPotion = shared_ptr<rpgPotion>(
new rpgPotion);
77 spPotion->load( pPL->getChild(
"potion") );
81 catch(laError_PropertyNotDefined&){ };
84 laPropertyList *pPL = pElement->getChild(
"projectile");
89 catch(laError_PropertyNotDefined&){ };
104 fp->readUnsigned(&nElement, M_FALSE);
105 fp->readUnsigned(&nAP, M_FALSE);
106 fp->readDouble(&dChargeTime, M_FALSE);
108 fp->readBool(&on, M_FALSE);
112 spProjectile->load(fp);
115 fp->readBool(&on, M_FALSE);
118 spPotion = shared_ptr<rpgPotion>(
new rpgPotion);
119 spProjectile->load(fp);
127 nAP += M_AP_INCREMENT;
#define M_UNIT
Unit of 1 meter.
void upgrade()
Upgrade attack (called on level up)
Projectile RPG Properties.