Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

Changeset 10594


Ignore:
Timestamp:
Sep 25, 2015, 1:56:51 PM (5 years ago)
Author:
fvultier
Message:

improved documentation

Location:
code/branches/towerdefenseFabien
Files:
6 edited

Legend:

Unmodified
Added
Removed
  • code/branches/towerdefenseFabien/data/levels/towerDefense.oxw

    r10592 r10594  
    220220        </links>
    221221        <Weapon>
    222           <SimpleRocketFire mode=0 muzzleoffset="0,0,0" damage=30 shielddamage=20 />
     222          <<HsW01 mode=0 munitionpershot=0 delay=0.125 damage=9.3 material="Flares/point_lensflare" muzzleoffset=" 0,0,0" projectileMesh="LaserBeam2.mesh" />
    223223        </Weapon>
    224224      </WeaponPack>
  • code/branches/towerdefenseFabien/src/modules/weapons/projectiles/CMakeLists.txt

    r10592 r10594  
    55  Projectile.cc
    66  LightningGunProjectile.cc
    7   SplitGunProjectile.cc
    87  Rocket.cc
    98  SimpleRocket.cc
  • code/branches/towerdefenseFabien/src/modules/weapons/projectiles/SplitGunProjectile.cc

    r10592 r10594  
    2121 *
    2222 *   Author:
    23  *      Joel Smely
     23 *      Fabien Vultier
    2424 *   Co-authors:
    2525 *      ...
     
    7777    }
    7878
     79    /**
     80    @brief
     81        This function starts a timer that will cause the projectile to split after a time defined by the argument @param splitTime.       
     82    */
    7983    void SplitGunProjectile::setSplitTime(float splitTime)
    8084    {
     
    9599    }
    96100
     101    /**
     102    @brief
     103        If this function is called the projectile splits up into many child projectiles. The original projectiles does not get destroyed but it will never split up again.
     104    */
    97105    void SplitGunProjectile::split()
    98106    {
     
    100108        {
    101109            -- numberOfSplits_;
     110
     111            // Reduce damage of this projectile by the number of childs plus one. This way the total amount of possible damage contained in the original projectile and its childs is unchanged after s aplit.
     112            this->setDamage(this->getDamage()/(numberOfChilds_+1));
    102113
    103114            // Calculate a normalized vector (velocityOffset) that is perpendicluar to the velocity of this projectile. Since there are infinitly many perpendicular vectors a random one is chosen.
     
    131142                projectile->setDamage(this->getDamage());
    132143                projectile->setShieldDamage(this->getShieldDamage());
    133                 projectile->setHealthDamage(this->getHealthDamage());               
     144                projectile->setHealthDamage(this->getHealthDamage());
    134145            }
    135146
  • code/branches/towerdefenseFabien/src/modules/weapons/projectiles/SplitGunProjectile.h

    r10592 r10594  
    2121 *
    2222 *   Author:
    23  *      Joel Smely
     23 *      Fabien Vultier
    2424 *   Co-authors:
    2525 *      ...
     
    4646    /**
    4747    @brief
    48         The SplitGunProjectile is a projectile that is represented by a looped series of billboards.
    49        
     48        The SplitGunProjectile is a projectile that may split up into many child projectiles.
    5049    @author
    51         Joel Smely
     50        Fabien Vultier
    5251    @ingroup WeaponsProjectiles
    5352    */
  • code/branches/towerdefenseFabien/src/modules/weapons/weaponmodes/SplitGun.cc

    r10592 r10594  
    2121 *
    2222 *   Author:
    23  *      Joel Smely
     23 *      Fabien Vultier
    2424 *   Co-authors:
    25  *      simonmie
     25 *      ...
    2626 *
    2727 */
     
    6969    /**
    7070    @brief
    71         XMLPort for the SplitGun. You can define how often the projectiles split, how many childs should be created per split and the time between two splits.
     71        XMLPort for the SplitGun. You can define how often the projectiles split, how many childs should be created per split, the spread and the time between two splits.
    7272    */
    7373    void SplitGun::XMLPort(Element& xmlelement, XMLPort::Mode mode)
     
    9595        projectile->setVelocity(this->getMuzzleDirection() * this->speed_);
    9696
     97        // Pass important information to the projectile: Number of splits, Number of childs, split time, spread
    9798        projectile->setNumberOfSplits(getNumberOfSplits());
    9899        projectile->setNumberOfChilds(getNumberOfChilds());
  • code/branches/towerdefenseFabien/src/modules/weapons/weaponmodes/SplitGun.h

    r10592 r10594  
    2121 *
    2222 *   Author:
    23  *      Joel Smely
     23 *      Fabien Vultier
    2424 *   Co-authors:
    2525 *      ...
     
    4545        A slow ball of lightning.
    4646    @author
    47         Joel Smely
     47        Fabien Vultier
    4848    @ingroup WeaponsWeaponModes
    4949    */
     
    7575
    7676       private:
    77             float speed_; //!< The speed of the fired projectile.
    78             int numberOfSplits_;
    79             int numberOfChilds_;
    80             float splitTime_;
    81             float spread_;
     77            float speed_; //The speed of the fired projectile.
     78            int numberOfSplits_; //The number of times the projectile will split into child projectiles
     79            int numberOfChilds_; //The number of child projectiles that are created if the projectile splits
     80            float splitTime_; //The time between creation of the projectile and the split of the projectile
     81            float spread_; //Low spread means that the child projectiles are concentrated in a small area
    8282    };
    8383}
Note: See TracChangeset for help on using the changeset viewer.