ScummVM API documentation
ai_types.h
1/* ScummVM - Graphic Adventure Engine
2 *
3 * ScummVM is the legal property of its developers, whose names
4 * are too numerous to list here. Please refer to the COPYRIGHT
5 * file distributed with this source distribution.
6 *
7 * This program is free software: you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License as published by
9 * the Free Software Foundation, either version 3 of the License, or
10 * (at your option) any later version.
11 *
12 * This program is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 * GNU General Public License for more details.
16 *
17 * You should have received a copy of the GNU General Public License
18 * along with this program. If not, see <http://www.gnu.org/licenses/>.
19 *
20 */
21
22#ifndef SCUMM_HE_MOONBASE_AI_TYPES_H
23#define SCUMM_HE_MOONBASE_AI_TYPES_H
24
25namespace Scumm {
26
27enum {
28 AGI = 1,
29 AONE = 2,
30 BRUTAKAS = 3,
31 CYBALL = 4,
32 EL_GATO = 5,
33 NEEP = 6,
34 ORBNU_LUNATEK = 7,
35 PIXELAHT = 8,
36 SPANDO = 9,
37 WARCUPINE = 10
38};
39
40enum {
41 CRAWLER_CHUCKER = 11,
42 ENERGY_HOG = 12,
43 RANGER = 13
44};
45
46enum {
47 AI_VAR_NONE = -1,
48 AI_VAR_SMALL = 0,
49 AI_VAR_MEDIUM = 1,
50 AI_VAR_LARGE = 2,
51 AI_VAR_HUGE = 5
52};
53
54enum {
55 AI_VAR_BASE_BEHAVIOR = 10,
56 AI_VAR_BASE_TARGET = 10,
57 AI_VAR_BASE_ANGLE = 2,
58 AI_VAR_BASE_POWER = 5
59};
60
61class AIEntity {
62private:
63 int _id;
64 char *_nameString;
65 int _behaviorVariation;
66 int _targetVariation;
67 int _angleVariation;
68 int _powerVariation;
69
70public:
71 AIEntity(int id);
72 ~AIEntity() {
73 if (_nameString) {
74 delete[] _nameString;
75 _nameString = 0;
76 }
77 }
78
79 int getID() const { return _id; }
80 char *getNameString() const { return _nameString; }
81 int getBehaviorVariation() const { return _behaviorVariation; }
82 int getTargetVariation() const { return _targetVariation; }
83 int getAngleVariation() const { return _angleVariation; }
84 int getPowerVariation() const { return _powerVariation; }
85
86 void setID(int id) { _id = id; }
87 void setNameString(char *nameString) { _nameString = nameString; }
88 void setBehaviorVariation(int behaviorVariation) { _behaviorVariation = behaviorVariation; }
89 void setTargetVariation(int targetVariation) { _targetVariation = targetVariation; }
90 void setAngleVariation(int angleVariation) { _angleVariation = angleVariation; }
91 void setPowerVariation(int powerVariation) { _powerVariation = powerVariation; }
92};
93
94} // End of namespace Scumm
95
96#endif
Definition: ai_types.h:61
Definition: actor.h:30