diff options
Diffstat (limited to 'demo/Unit.gd')
-rw-r--r-- | demo/Unit.gd | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/demo/Unit.gd b/demo/Unit.gd new file mode 100644 index 0000000..0b67053 --- /dev/null +++ b/demo/Unit.gd @@ -0,0 +1,25 @@ +#warning-ignore-all:unused_argument +extends Piece + +class_name Unit, "res://godot/Piece.png" + +func get_mp() -> int: + return 2 + +func road_march_bonus() -> int: + return 2 + +func move_cost(src : Tile, dst : Tile, orientation : int) -> int: + return (1 if (src.has_road(orientation) and dst.type != 3) else dst.cost()) + +func max_range_of_fire(category : int, from : Tile) -> int: + return 6 + from.range_modifier(category) + +func volume_of_fire(category : int, distance : int, src : Tile, src_o : int, dst : Tile, dst_o : int) -> int: + var fp : int = 10 + if distance > 6: return -1 + elif distance > 4: fp = 4 + elif distance > 2: fp = 7 + fp -= src.attack_modifier(category, src_o) + fp -= dst.defense_value(category, dst_o) + return fp |