mouse selection of floor and terrain

This commit is contained in:
2022-06-09 01:41:32 +00:00
parent 977674aec4
commit be9ed4db69
2 changed files with 16 additions and 1 deletions

View File

@@ -7,6 +7,7 @@ import flixel.math.FlxRect;
import flixel.math.FlxVector;
import flixel.graphics.FlxGraphic;
import flixel.FlxG;
import flixel.input.mouse.FlxMouseEventManager;
import flash.display.BitmapData;

View File

@@ -14,6 +14,9 @@
(collect (range 512)))
32 Keep)))
(var SELECTED_COLOR FlxColor.LIME)
(var NORMAL_COLOR FlxColor.WHITE)
(method :Void addFloorLayer [:Array<Array<Int>> tiles]
(let [&mut rowStartX 0
&mut rowStartY 0]
@@ -24,6 +27,12 @@
(let [tileSprite (data.floorSprite tile)]
(set tileSprite.x x)
(set tileSprite.y y)
(FlxMouseEventManager.add tileSprite
// handle click on floor:
->downTS {}
->upTS {}
->overTS (set overTS.color SELECTED_COLOR)
->outTS (set outTS.color NORMAL_COLOR))
(add tileSprite))
(+= x (/ FLOOR_WIDTH 2))
(+= y (/ FLOOR_HEIGHT 2))))
@@ -44,13 +53,18 @@
(set tileSprite.y y)
(when (> tileSprite.height SPRITE_HEIGHT)
(-= tileSprite.y SPRITE_HEIGHT))
(FlxMouseEventManager.add tileSprite
// Handle click on terrain:
->downTS {}
->upTS {}
->overTS (set overTS.color SELECTED_COLOR)
->outTS (set outTS.color NORMAL_COLOR))
(add tileSprite))
(+= x (/ FLOOR_WIDTH 2))
(+= y (/ FLOOR_HEIGHT 2))))
(-= rowStartX (/ FLOOR_WIDTH 2))
(+= rowStartY (/ FLOOR_HEIGHT 2)))))
(var CAMERA_SPEED 500)
(method &override :Void update [:Float elapsed]