aboutsummaryrefslogtreecommitdiff
path: root/src/a_rat_bite.moon
diff options
context:
space:
mode:
authorAlexander M Pickering <alex@cogarr.net>2024-01-29 16:20:10 -0600
committerAlexander M Pickering <alex@cogarr.net>2024-01-29 16:20:10 -0600
commitc2926c5ec74d7e37da395c8c32a7ff2b4cae7d06 (patch)
treeac2bb208dab1274cdc5e9059ffe014ae19181a4c /src/a_rat_bite.moon
downloadfools_rush_in-c2926c5ec74d7e37da395c8c32a7ff2b4cae7d06.tar.gz
fools_rush_in-c2926c5ec74d7e37da395c8c32a7ff2b4cae7d06.tar.bz2
fools_rush_in-c2926c5ec74d7e37da395c8c32a7ff2b4cae7d06.zip
All the files
Diffstat (limited to 'src/a_rat_bite.moon')
-rw-r--r--src/a_rat_bite.moon42
1 files changed, 42 insertions, 0 deletions
diff --git a/src/a_rat_bite.moon b/src/a_rat_bite.moon
new file mode 100644
index 0000000..9c55269
--- /dev/null
+++ b/src/a_rat_bite.moon
@@ -0,0 +1,42 @@
+reg = require "ability_reg"
+import Ability from reg
+
+class RatBite extends Ability
+ @text = "Rat Bite"
+ @description = "A rat's bite"
+ @hits_icon = {0,0,0,0,1,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)->
+ chars_at_loc = world.room.data.locations[4]
+ 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,1, hp_minus)
+ print("rat bite done, chars_at_loc:",chars_at_loc)
+ load: ()=>
+ print("TODO!")
+
+ unload:()=>
+ print("TODO!")