OpenXcom  1.0
Open-source clone of the original X-Com
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
Vehicle.h
1 /*
2  * Copyright 2010-2014 OpenXcom Developers.
3  *
4  * This file is part of OpenXcom.
5  *
6  * OpenXcom is free software: you can redistribute it and/or modify
7  * it under the terms of the GNU General Public License as published by
8  * the Free Software Foundation, either version 3 of the License, or
9  * (at your option) any later version.
10  *
11  * OpenXcom is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14  * GNU General Public License for more details.
15  *
16  * You should have received a copy of the GNU General Public License
17  * along with OpenXcom. If not, see <http://www.gnu.org/licenses/>.
18  */
19 #ifndef OPENXCOM_VEHICLE_H
20 #define OPENXCOM_VEHICLE_H
21 
22 #include <string>
23 #include <yaml-cpp/yaml.h>
24 
25 namespace OpenXcom
26 {
27 
28 class RuleItem;
29 
35 class Vehicle
36 {
37 private:
38  RuleItem *_rules;
39  int _ammo, _size;
40 public:
42  Vehicle(RuleItem *rules, int ammo, int size);
44  ~Vehicle();
46  void load(const YAML::Node& node);
48  YAML::Node save() const;
50  RuleItem *getRules() const;
52  int getAmmo() const;
54  void setAmmo(int ammo);
56  int getSize() const;
57 };
58 
59 }
60 
61 #endif
Represents a vehicle (tanks etc.) kept in a craft.
Definition: Vehicle.h:35
int getAmmo() const
Gets the vehicle's ammo.
Definition: Vehicle.cpp:78
Vehicle(RuleItem *rules, int ammo, int size)
Creates a vehicle of the specified type.
Definition: Vehicle.cpp:31
YAML::Node save() const
Saves the vehicle to YAML.
Definition: Vehicle.cpp:56
void setAmmo(int ammo)
Sets the vehicle's ammo.
Definition: Vehicle.cpp:91
void load(const YAML::Node &node)
Loads the vehicle from YAML.
Definition: Vehicle.cpp:46
Represents a specific type of item.
Definition: RuleItem.h:41
RuleItem * getRules() const
Gets the vehicle's ruleset.
Definition: Vehicle.cpp:69
~Vehicle()
Cleans up the vehicle.
Definition: Vehicle.cpp:38
int getSize() const
Gets the vehicle's size.
Definition: Vehicle.cpp:104