Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: orxonox.OLD/orxonox/trunk/src/world_entities/weapons/test_gun.h @ 4955

Last change on this file since 4955 was 4955, checked in by bensch, 19 years ago

orxonox/trunk: extemely stupid aiming, but it works. Had to fix quite a few bugs in the process.

File size: 1.6 KB
RevLine 
[4827]1/*!
[4949]2    @file weapon.h
[4836]3  *  a weapon that a player can use
[3618]4
5    A Player has a list of weapons, that can be choosen to shoot projectiles
[4949]6    (projectiles.{cc,h}) at enemies. These weapons can be shooted sequentially
[3618]7    or (if able) combined. Therefore you can choose the weapon mode = choose
8    a weapon.
9
10    A weapon is characterized by:
11     o firing-rate: the initial firing rate of a weapon (1/s = Herz)
12     o slowdown-factor: this is a factor d: exp(-d*x), d is element of all positive R. it determines how fast the firing-rate will slow down. if no slowdown: d=0, the bigger d is, the faster the weapon will slow down!
13     o energy-consumption: this determines the energy that has to be used to produce this projectile = costs per projectile
[4827]14
[3618]15    Furthermore there are some other attributes, that will help to represent a firing
16    weapon in this world:
17     o sound file/ressource: this is a pointer to the sound-file/ressource. however it may be represented
18     o shooting animation
[4827]19
[3618]20*/
21
22
23#ifndef _TEST_GUN_H
24#define _TEST_GUN_H
25
26#include "weapon.h"
27
28class TestGun : public Weapon
[4934]29  {
[4827]30  public:
[4955]31    TestGun (WeaponManager* weaponManager, int leftRight);
[4827]32    virtual ~TestGun ();
[3618]33
[4827]34    virtual void activate();
35    virtual void deactivate();
[3618]36
[4827]37    virtual void fire();
38    virtual void hit (WorldEntity* weapon, Vector* loc);
39    virtual void destroy();
[3618]40
[4827]41    virtual void draw();
[3752]42
[4827]43  private:
44    PNode* objectComponent1;         //<! the gun is made of multiple parts, these PNodes represent their location and orientation
[3888]45
[4827]46    int leftRight;   // this will become an enum
[4934]47  };
[3618]48#endif /* _TEST_GUN_H */
Note: See TracBrowser for help on using the repository browser.