@@ -401,21 +401,21 @@ class WeaponTemplate : public MemoryPoolObject
401401{
402402 friend class WeaponStore ;
403403
404- MEMORY_POOL_GLUE_WITH_USERLOOKUP_CREATE ( WeaponTemplate, " WeaponTemplate" )
404+ MEMORY_POOL_GLUE_WITH_USERLOOKUP_CREATE (WeaponTemplate, " WeaponTemplate" )
405405
406406public:
407407
408408 WeaponTemplate ();
409409 // virtual destructor declared by memory pool
410410
411- void reset ( void );
411+ void reset (void );
412412
413- void friend_setNextTemplate (WeaponTemplate * nextTemplate) { m_nextTemplate = nextTemplate; }
414- WeaponTemplate * friend_clearNextTemplate ( void ) { WeaponTemplate * ret = m_nextTemplate; m_nextTemplate = NULL ; return ret; }
415- Bool isOverride ( void ) { return m_nextTemplate != NULL ; }
413+ void friend_setNextTemplate (WeaponTemplate* nextTemplate) { m_nextTemplate = nextTemplate; }
414+ WeaponTemplate* friend_clearNextTemplate (void ) { WeaponTemplate* ret = m_nextTemplate; m_nextTemplate = NULL ; return ret; }
415+ Bool isOverride (void ) { return m_nextTemplate != NULL ; }
416416
417417 // / field table for loading the values from an INI
418- const FieldParse * getFieldParse () const { return TheWeaponTemplateFieldParseTable; }
418+ const FieldParse* getFieldParse () const { return TheWeaponTemplateFieldParseTable; }
419419
420420 /* *
421421 fire the weapon. return the logic-frame in which the damage will be dealt.
@@ -427,15 +427,15 @@ class WeaponTemplate : public MemoryPoolObject
427427 */
428428 UnsignedInt fireWeaponTemplate
429429 (
430- const Object * sourceObj,
430+ const Object* sourceObj,
431431 WeaponSlotType wslot,
432432 Int specificBarrelToUse,
433- Object * victimObj,
433+ Object* victimObj,
434434 const Coord3D* victimPos,
435435 const WeaponBonus& bonus,
436436 Bool isProjectileDetonation,
437437 Bool ignoreRanges,
438- Weapon * firingWeapon,
438+ Weapon* firingWeapon,
439439 ObjectID* projectileID,
440440 Bool inflictDamage
441441 ) const ;
@@ -447,8 +447,8 @@ class WeaponTemplate : public MemoryPoolObject
447447 take weapon range into account -- it ASSUMES that the victim is within range!
448448 */
449449 Real estimateWeaponTemplateDamage (
450- const Object * sourceObj,
451- const Object * victimObj,
450+ const Object* sourceObj,
451+ const Object* victimObj,
452452 const Coord3D* victimPos,
453453 const WeaponBonus& bonus
454454 ) const ;
@@ -469,7 +469,7 @@ class WeaponTemplate : public MemoryPoolObject
469469 Real getShockWaveRadius () const { return m_shockWaveRadius; }
470470 Real getShockWaveTaperOff () const { return m_shockWaveTaperOff; }
471471
472- Real getRequestAssistRange () const {return m_requestAssistRange;}
472+ Real getRequestAssistRange () const { return m_requestAssistRange; }
473473 AsciiString getName () const { return m_name; }
474474 AsciiString getProjectileStreamName () const { return m_projectileStreamName; }
475475 AsciiString getLaserName () const { return m_laserName; }
@@ -501,7 +501,7 @@ class WeaponTemplate : public MemoryPoolObject
501501 Int getContinuousFireOneShotsNeeded () const { return m_continuousFireOneShotsNeeded; }
502502 Int getContinuousFireTwoShotsNeeded () const { return m_continuousFireTwoShotsNeeded; }
503503 UnsignedInt getContinuousFireCoastFrames () const { return m_continuousFireCoastFrames; }
504- UnsignedInt getAutoReloadWhenIdleFrames () const { return m_autoReloadWhenIdleFrames; }
504+ UnsignedInt getAutoReloadWhenIdleFrames () const { return m_autoReloadWhenIdleFrames; }
505505 UnsignedInt getSuspendFXDelay () const { return m_suspendFXDelay; }
506506
507507 const FXList* getFireFX (VeterancyLevel v) const { return m_fireFXs[v]; }
@@ -532,8 +532,9 @@ class WeaponTemplate : public MemoryPoolObject
532532 Bool isScatterTargetAligned () const { return m_scatterTargetAligned; }
533533 Bool isScatterTargetRandom () const { return m_scatterTargetRandom; }
534534 Bool isScatterTargetRandomAngle () const { return m_scatterTargetRandomAngle; }
535- Real getScatterTargetMinScalar () const { return m_scatterTargetMinScalar; }
535+ Real getScatterTargetMinScalar () const { return m_scatterTargetMinScalar; }
536536 Bool isScatterTargetCenteredAtShooter () const { return m_scatterTargetCenteredAtShooter; }
537+ Bool isScatterOnWaterSurface () const { return m_scatterOnWaterSurface; }
537538
538539 Bool shouldProjectileCollideWith (
539540 const Object* projectileLauncher,
@@ -661,6 +662,8 @@ class WeaponTemplate : public MemoryPoolObject
661662 UnsignedInt m_scatterTargetResetTime; // /< if this much time between shots has passed, we reset the scatter targets
662663 Bool m_scatterTargetResetRecenter; // /< when resetting scatter targets, use indices in the "middle" of the list, to keep the target centered for Line based attacks
663664
665+ Bool m_scatterOnWaterSurface; // /< Scatter radius and targets include the water surface instead of just the terrain height
666+
664667 mutable HistoricWeaponDamageList m_historicDamage;
665668 mutable UnsignedInt m_historicDamageTriggerId;
666669};
0 commit comments