aboutsummaryrefslogtreecommitdiff
path: root/cpp04/ex01/AWeapon.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'cpp04/ex01/AWeapon.hpp')
-rw-r--r--cpp04/ex01/AWeapon.hpp38
1 files changed, 38 insertions, 0 deletions
diff --git a/cpp04/ex01/AWeapon.hpp b/cpp04/ex01/AWeapon.hpp
new file mode 100644
index 0000000..468f966
--- /dev/null
+++ b/cpp04/ex01/AWeapon.hpp
@@ -0,0 +1,38 @@
+/* ************************************************************************** */
+/* */
+/* ::: :::::::: */
+/* AWeapon.hpp :+: :+: :+: */
+/* +:+ +:+ +:+ */
+/* By: charles <charles.cabergs@gmail.com> +#+ +:+ +#+ */
+/* +#+#+#+#+#+ +#+ */
+/* Created: 2020/04/14 11:22:06 by charles #+# #+# */
+/* Updated: 2020/04/14 14:33:07 by charles ### ########.fr */
+/* */
+/* ************************************************************************** */
+
+#ifndef AWEAPON_HPP
+# define AWEAPON_HPP
+
+# include <string>
+
+class AWeapon
+{
+public:
+ AWeapon(AWeapon const& other);
+ void operator=(AWeapon const& other);
+ virtual ~AWeapon();
+
+ AWeapon(std::string const& name, int apcost, int damage);
+ std::string const& getName() const;
+ int getAPCost() const;
+ int getDamage() const;
+ virtual void attack() const = 0;
+
+protected:
+ AWeapon();
+ std::string m_name;
+ int m_apcost;
+ int m_damage;
+};
+
+#endif