diff options
Diffstat (limited to 'src/a_sulk.moon')
| -rw-r--r-- | src/a_sulk.moon | 43 |
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!") |
