diff options
Diffstat (limited to 'src/a_test.moon')
| -rw-r--r-- | src/a_test.moon | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/src/a_test.moon b/src/a_test.moon new file mode 100644 index 0000000..5c8f1b0 --- /dev/null +++ b/src/a_test.moon @@ -0,0 +1,52 @@ +reg = require "ability_reg" +ui = require "ui" +import Ability from reg + +mod = ... +print("In tubmle, reg is",reg) + +class Everything extends Ability + @text = "Everything" + @description = "destroy everything" + @hits_icon = {1,1,1,1,1,1,1,1} + @sprite = "data/tumble.png" + @speed = 5 + @distance = 1 + new: (...)=> + super("Everything",{}) + @requirements = { + {"status", "active"}, + } + target: (world, party, char) => + room = world.player_party.room + my_pos = char.location + --search outward for a target + char_tbl1, char_tbl2 = nil, nil + for distance = 1, 8 + char_tbl1 = room\at_location(my_pos + distance) + char_tbl2 = room\at_location(my_pos - distance) + if (char_tbl1 and #char_tbl1 > 0) or (char_tbl2 and #char_tbl2 > 0) + break + + use: (world, party, char)-> + for i = 5,8 + print("Doing tumble") + chars_at_loc = world.room.data.locations[i] + print("chars at loc:",chars_at_loc) + if world.server + a_chars_at_loc = {} + for _,v in ipairs(chars_at_loc) + table.insert(a_chars_at_loc,world.enemy_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 - 10) + if world.server + hp_minus! + if world.client + ui = ui or require "ui" + ui.tween_hit(char,i-4, hp_minus) + +mod.Test = Test + +mod |
