summaryrefslogtreecommitdiff
path: root/src/skill.h
diff options
context:
space:
mode:
authorAaron Marks <nymacro@gmail.com>2005-05-09 09:47:20 +0000
committerAaron Marks <nymacro@gmail.com>2005-05-09 09:47:20 +0000
commitef30b72e8ad5379a7c7ee49b0ff680bde15daa66 (patch)
tree1fbe0f0ce2125bad89e548b1f2a1d392ee751205 /src/skill.h
parentb6f88ad42d2acf514804777e9cf0f4979566c163 (diff)
downloadmanaserv-ef30b72e8ad5379a7c7ee49b0ff680bde15daa66.tar.gz
manaserv-ef30b72e8ad5379a7c7ee49b0ff680bde15daa66.tar.bz2
manaserv-ef30b72e8ad5379a7c7ee49b0ff680bde15daa66.tar.xz
manaserv-ef30b72e8ad5379a7c7ee49b0ff680bde15daa66.zip
Renamed script-sq.* script-squirrel.*.
Renamed ScriptingInterface to Script (to save typing :)). Updated skill tree definition.
Diffstat (limited to 'src/skill.h')
-rw-r--r--src/skill.h37
1 files changed, 35 insertions, 2 deletions
diff --git a/src/skill.h b/src/skill.h
index 4ef766f7..8b90767b 100644
--- a/src/skill.h
+++ b/src/skill.h
@@ -27,6 +27,10 @@
#include <iostream>
#include <vector>
+#ifdef SCRIPT_SUPPORT
+#include "script.h"
+#endif
+
class Skill
{
/*
@@ -43,9 +47,25 @@ class Skill
* Children skills
*/
std::vector<Skill*> children;
+
+ /*
+ * Skill properties/weighting
+ */
+ float light;
+ float dark;
+ float life;
+ float death;
+
+ /*
+ * Skill script
+ */
+#ifdef SCRIPT_SUPPORT
+ Script *script;
+#endif
+
public:
- Skill(const std::string &ident) : id(ident) { }
- ~Skill();
+ Skill(const std::string &ident);
+ virtual ~Skill();
/*
* addSkill
@@ -60,6 +80,19 @@ class Skill
bool deleteSkill(const std::string &, bool delTree = false);
/*
+ * useSkill
+ * Uses skill (runs skill script). Returns true upon successful
+ * skill completion, false otherwise.
+ */
+ bool useSkill();
+
+ /*
+ * setScript
+ * Set script for the skill to execute when used.
+ */
+ bool setScript(const std::string &);
+
+ /*
* printTree
* Print tree to stdout
*/