-Implemented live like spell projectiles (ie mage bolts).

-See function in spells.cpp for more info on bolt behavior.
-This works reasonably well, but still room for improvements.
-Rules are for setting what item id is used for the projectile
since live uses an item id from SOF+ I added alternate item graphic
for titanium clients.
-Note: Max number of projectiles (set at 10) is a made up value in most
situations it would be nearly impossible to have more than 3 bolts
in the air at the same time. This values gives enough wiggle room that no
server should have an issue though.
-Small fix to SE_CompleteHeal
This commit is contained in:
KayenEQ
2014-04-03 04:25:45 -04:00
parent bb541eeb60
commit 2cdd50b9e9
10 changed files with 149 additions and 2 deletions
+7
View File
@@ -252,6 +252,7 @@ public:
void SendBuffsToClient(Client *c);
inline Buffs_Struct* GetBuffs() { return buffs; }
void DoGravityEffect();
void SpellProjectileEffect();
void DamageShield(Mob* other, bool spell_ds = false);
int32 RuneAbsorb(int32 damage, uint16 type);
bool FindBuff(uint16 spellid);
@@ -1040,6 +1041,12 @@ protected:
uint8 bardsong_slot;
uint32 bardsong_target_id;
Timer projectile_timer;
uint32 projectile_spell_id[MAX_SPELL_PROJECTILE];
uint16 projectile_target_id[MAX_SPELL_PROJECTILE];
uint8 projectile_increment[MAX_SPELL_PROJECTILE];
float projectile_x[MAX_SPELL_PROJECTILE], projectile_y[MAX_SPELL_PROJECTILE], projectile_z[MAX_SPELL_PROJECTILE];
float rewind_x;
float rewind_y;
float rewind_z;