aboutsummaryrefslogtreecommitdiff
path: root/cpp04/ex03/main.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'cpp04/ex03/main.cpp')
-rw-r--r--cpp04/ex03/main.cpp40
1 files changed, 40 insertions, 0 deletions
diff --git a/cpp04/ex03/main.cpp b/cpp04/ex03/main.cpp
new file mode 100644
index 0000000..11f471f
--- /dev/null
+++ b/cpp04/ex03/main.cpp
@@ -0,0 +1,40 @@
+/* ************************************************************************** */
+/* */
+/* ::: :::::::: */
+/* main.cpp :+: :+: :+: */
+/* +:+ +:+ +:+ */
+/* By: charles <charles.cabergs@gmail.com> +#+ +:+ +#+ */
+/* +#+#+#+#+#+ +#+ */
+/* Created: 2020/04/14 17:58:01 by charles #+# #+# */
+/* Updated: 2020/04/14 17:59:02 by charles ### ########.fr */
+/* */
+/* ************************************************************************** */
+
+#include "MateriaSource.hpp"
+#include "Ice.hpp"
+#include "Cure.hpp"
+#include "Character.hpp"
+
+int main()
+{
+ IMateriaSource* src = new MateriaSource();
+ src->learnMateria(new Ice());
+ src->learnMateria(new Cure());
+
+ ICharacter* me = new Character("me");
+
+ AMateria* tmp;
+ tmp = src->createMateria("ice");
+ me->equip(tmp);
+ tmp = src->createMateria("cure");
+ me->equip(tmp);
+
+ ICharacter* bob = new Character("bob");
+
+ me->use(0, *bob);
+ me->use(1, *bob);
+
+ delete bob;
+ delete me;
+ delete src;
+}