Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: code/branches/netp3/src/orxonox/objects/pickup/ShipItem.h @ 2989

Last change on this file since 2989 was 2662, checked in by rgrieder, 16 years ago

Merged presentation branch back to trunk.

  • Property svn:eol-style set to native
File size: 2.2 KB
Line 
1#ifndef _ShipItems_H__
2#define _ShipItems_H__
3#include <string>
4#include "SpaceShip.h"
5#include <map>
6#include "ShipEquipmentClasses.h"
7
8
9
10namespace orxonox
11{
12    class _OrxonoxExport ShipItem
13    {
14        enum itemType //Diffrent Types of Items
15        {
16            Useable,
17            Powerups,
18            Permanent
19        };
20
21        public:
22            itemType CheckType();
23            //virtual ChecksubType();
24
25        private:
26            itemType type;
27            string itemname;
28    };
29
30    /* Useables are Items the Player can choose when to activate and then show an instant action/effect
31     * or for a certain duration */
32    class _OrxonoxExport Useable : public ShipItem
33    {
34        enum subItemTypeUseable //Diffrent Types of Items of the Type Useable
35        {
36            Rockets,
37            Repairkits,
38            Triggers,       //trigger events usable by the player (Quests f.exp.)
39            Boosters,
40            Shields,
41            Appearance,
42        };
43
44        public:
45            //subItemTypeUseable CheckSubType();
46
47        private:
48            subItemTypeUseable subtype_usable;
49    };
50
51    /* Permanents are Items, that effect the Player or his Ship from the instance he picks them up
52       until he drops them again */
53    class _OrxonoxExport Permanent : public ShipItem
54    {
55        enum subItemTypePermanent //Diffrent Types of Items of the Type Permanent
56        {
57            Weapon,
58            Thrusters,
59            Shields,
60            Armor
61        };
62
63        public:
64            subItemTypePermanent CheckSubType();
65
66        private:
67            subItemTypePermanent subtype_permanent;
68    };
69
70    // Powerups effect the Player right after he picks them up for a certain Duration /or permanently.
71    class _OrxonoxExport Powerups : public ShipItem
72    {
73        enum subItem TypePowerups //Diffrent Types of Items of the Type Powerups
74        {
75            Weapon,
76            Boosters,
77            Shields,
78            Repairkits,
79            Appearance,
80            Trigger
81        };
82
83        public:
84            //subItemTypePowerups CheckSubType();
85
86        private:
87            subItemTypePowerups subtype_powerups;
88    };
89}
90
91#endif
Note: See TracBrowser for help on using the repository browser.