aboutsummaryrefslogtreecommitdiff
path: root/src/a_sulk.moon
diff options
context:
space:
mode:
Diffstat (limited to 'src/a_sulk.moon')
-rw-r--r--src/a_sulk.moon43
1 files changed, 43 insertions, 0 deletions
diff --git a/src/a_sulk.moon b/src/a_sulk.moon
new file mode 100644
index 0000000..bf5d0a3
--- /dev/null
+++ b/src/a_sulk.moon
@@ -0,0 +1,43 @@
+reg = require "ability_reg"
+import Ability from reg
+
+class Sulk extends Ability
+ @text = "Sulk"
+ @description = "sulk"
+ @hits_icon = {0,0,1,1,0,0,0,0}
+ @speed = 3
+ @distance = 1
+ new: (...)=>
+ super(...)
+ @requirements = {
+ {"consume_stat", "stamina", 1},
+ {"status", "active"},
+ {"distance", 1},
+ }
+ target: (world, party, char) =>
+ room = world.player_party.room
+ enemy_party = room.parties[1]
+ if enemy_party == party
+ enemy_party = room.parties[2]
+ use: (world, party, char)->
+ for i = 3,4
+ chars_at_loc = world.room.data.locations[i]
+ if world.server
+ a_chars_at_loc = {}
+ for _,v in ipairs(chars_at_loc)
+ table.insert(a_chars_at_loc,world.player_party\member(v.uname))
+ chars_at_loc = a_chars_at_loc
+ hp_minus = () ->
+ for _, char in pairs(chars_at_loc)
+ char\set_field("hp",char.data.hp - 1)
+ if world.server
+ hp_minus!
+ if world.client
+ ui = ui or require "ui"
+ ui.tween_hit(char,8 - i, hp_minus)
+ print("rat bite done, chars_at_loc:",chars_at_loc)
+ load: ()=>
+ print("TODO!")
+
+ unload:()=>
+ print("TODO!")