summaryrefslogtreecommitdiff
path: root/src/spells3.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/spells3.c')
-rw-r--r--src/spells3.c59
1 files changed, 59 insertions, 0 deletions
diff --git a/src/spells3.c b/src/spells3.c
index 9cca482a..6220cd25 100644
--- a/src/spells3.c
+++ b/src/spells3.c
@@ -90,6 +90,10 @@ s32b SLOWMONSTER;
s32b ESSENCESPEED;
s32b BANISHMENT;
+s32b TULKAS_AIM;
+s32b TULKAS_WAVE;
+s32b TULKAS_SPIN;
+
/* FIXME: Hackish workaround while we're still tied to Lua. This lets
us return Lua's "nil" and a non-nil value (which is all the s_aux.lua
@@ -2776,3 +2780,58 @@ char *tempo_banishment_info()
tempo_banishment_power());
return buf;
}
+
+bool_ *tulkas_divine_aim()
+{
+ s32b dur = get_level_s(TULKAS_AIM, 50) + randint(10);
+
+ set_strike(dur);
+ if (get_level_s(TULKAS_AIM, 50) >= 20)
+ {
+ set_tim_deadly(dur);
+ }
+
+ return CAST;
+}
+
+char *tulkas_divine_aim_info()
+{
+ static char buf[128];
+ sprintf(buf,
+ "dur " FMTs32b "+d10",
+ get_level_s(TULKAS_AIM, 50));
+ return buf;
+}
+
+bool_ *tulkas_wave_of_power()
+{
+ int dir;
+
+ if (!get_aim_dir(&dir))
+ {
+ return NO_CAST;
+ }
+
+ fire_bolt(GF_ATTACK, dir, get_level_s(TULKAS_WAVE, p_ptr->num_blow));
+ return CAST;
+}
+
+char *tulkas_wave_of_power_info()
+{
+ static char buf[128];
+ sprintf(buf,
+ "blows " FMTs32b,
+ get_level_s(TULKAS_WAVE, p_ptr->num_blow));
+ return buf;
+}
+
+bool_ *tulkas_whirlwind()
+{
+ fire_ball(GF_ATTACK, 0, 1, 1);
+ return CAST;
+}
+
+char *tulkas_whirlwind_info()
+{
+ return "";
+}