diff --git a/assets/Chipset/Chipset.png b/assets/Chipset/Chipset.png deleted file mode 100644 index 1997dbb..0000000 Binary files a/assets/Chipset/Chipset.png and /dev/null differ diff --git a/assets/Chipset/Thumbs.db b/assets/Chipset/Thumbs.db deleted file mode 100644 index 0f79834..0000000 Binary files a/assets/Chipset/Thumbs.db and /dev/null differ diff --git a/public/images/HUD.png b/public/images/HUD.png new file mode 100644 index 0000000..cd09c62 Binary files /dev/null and b/public/images/HUD.png differ diff --git a/src/entities/tile.coffee b/src/entities/tile.coffee index e042da6..28c53db 100644 --- a/src/entities/tile.coffee +++ b/src/entities/tile.coffee @@ -6,14 +6,21 @@ class Tile extends BaseEntity @layers = [] for restype, i in resTypes - @layers.push new Tilelayer(type: restype, depth: i) + @layers.push new Tilelayer( + type: restype, + depth: i, + amount: Math.random(5)+10 + ) @currentLayer = 0 @isActive = false click: (button)-> - # console.log button - # @isSelected = true + @isSelected = true + if button == "left" and @layers[@currentLayer].collect() + name = app.layerIndexToName(@currentLayer) + console.log(name) + app.game.resources[name] += 1 moveIn: -> @isActive = true diff --git a/src/entities/tilelayer.coffee b/src/entities/tilelayer.coffee index 5d951d2..a22da6c 100644 --- a/src/entities/tilelayer.coffee +++ b/src/entities/tilelayer.coffee @@ -1,5 +1,9 @@ class Tilelayer extends BaseEntity - constructor: (options) -> + constructor: (options)-> {@type, @depth, @amount} = options @randomFactor = getRandomInt 0, 4 @sprite = [@randomFactor*8, @depth*8, 8, 8] + + collect: -> + return false if @amount == 0 + @amount -= 1 diff --git a/src/main.coffee b/src/main.coffee index a9c5f90..3260965 100644 --- a/src/main.coffee +++ b/src/main.coffee @@ -1,4 +1,4 @@ -app = playground({ +app = playground( width: 8*20*5, height: 8*15*5, scaleToFit: true, @@ -6,6 +6,7 @@ app = playground({ create: -> @loadImages "layers", "active", "selected", "entities" + @currentHoveredTile = new Tile ready: -> @game.start() @@ -13,8 +14,25 @@ app = playground({ step: -> + mousedown: (event)-> + @posToTile(event.x, event.y).click(event.button) + + mousemove: (event)-> + tile = @posToTile(event.x, event.y) + if tile != @currentHoveredTile + tile.moveIn() + @currentHoveredTile.moveOut() + @currentHoveredTile = tile + render: -> @layer.clear "#00f" @game.render() - - }) + + posToTile: (x, y)-> + pos = (Math.floor(y/8/5)*20) + Math.floor(x/8/5) + @game.map[pos] + + layerIndexToName: (index)-> + resTypes = (k for own k of @game.resources) + resTypes[index] +)