Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Engine.Bootstrap({AutoResize:true}, (engine) => {
- let level = engine.AddLevel();
- let layer = level.Layers.First();
- let tileDiv = document.getElementById("tiles");
- let tileSprite = new Engine.DomSprite2D(tileDiv);
- layer.AddSprite(tileSprite);
- let selectedTileSprite = new Engine.Sprite2D();
- layer.AddSprite(selectedTileSprite);
- Engine.Positioning.Relative.SetTopLeft(tileSprite,Engine.Constants.Vector2.Zero.ScalarAdd(32));
- level.Controller.CreateBinding("#tiles","img","click",e=>{
- let coord = e.Data.OffsetCoordinate;
- let worldBnds = e.Data.WorldTargetBounds;
- let nearestX = Engine.Rounding.RoundDown(coord.X,16);
- nearestX = Engine.Rounding.Clip(nearestX,0,32*4-16);
- let nearestY = Engine.Rounding.RoundDown(coord.Y,16);
- nearestY = Engine.Rounding.Clip(nearestY,0,32*7-16);
- let nearest = new Engine.Vector2(nearestX,nearestY);
- let sprite = new Engine.Sprite2D(16,16);
- layer.AddSprite(sprite);
- Engine.Positioning.World.SetTopLeft(sprite,nearest.Add(worldBnds.TopLeft));
- sprite._draw = (ctx)=>{
- ctx.save();
- ctx.globalAlpha = 0.7;
- ctx.fillStyle = "red";
- ctx.fillRect(0,0,sprite.Width,sprite.Height);
- ctx.restore();
- }
- });
- engine.Run();
- });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement