thousands-state-46635
08/07/2022, 9:22 AMhx
package;
import openfl.events.Event;
import openfl.events.MouseEvent;
import openfl.display.BitmapData;
import openfl.display.Bitmap;
import openfl.display.Sprite;
class Main extends Sprite
{
var canvasWidth:Int = 400;
var canvasHeight:Int = 400;
var canvasColor:Int = 0xFFFFFFFF;
var canvas:Bitmap;
var brushColor:Int = 0xFF000000;
public function new()
{
super();
initCanvas();
addEventListeners();
}
private function onUpdate(ev:Event) {
}
private function mouseHandler(ev:MouseEvent) {
if (ev.buttonDown) {
canvas.bitmapData.unlock();
canvas.bitmapData.setPixel32(Std.int(mouseX), Std.int(mouseY), brushColor);
canvas.bitmapData.lock();
}
}
private function initCanvas() {
canvas = new Bitmap(new BitmapData(canvasWidth, canvasHeight, false, canvasColor));
addChild(canvas);
}
private function addEventListeners() {
addEventListener(Event.ENTER_FRAME, onUpdate);
addEventListener(MouseEvent.MOUSE_MOVE, mouseHandler);
}
}