diff --git a/doc/planning.md b/doc/planning.md index a20bda6..790a455 100644 --- a/doc/planning.md +++ b/doc/planning.md @@ -1,26 +1,34 @@ ## Todo - Sprites (Dome) -- Design a tilemap for the game -- Player (Dome) - - Stats (see document) - - As a layer in the tilemap - - Implemented in the PlayerManager - - Inventory - - with one slot - - can pick up items from tilemap (Pickup) - - can drop items back onto tilemap (Pickup) -- Navigation (Dome?) - - Use tilemap layers to compute route - - Support obstacles - - Result must be an array of tile coordinates, length (array length) and the total cost (sum of weights) + - Ground + - Berry bush (filled, empty) + - Tree (filled, empty) + - Ship parts + - camp (multiple textures) +- Design a tilemap for the game (Dome, Colin, Luca) +- Navigation v2 (Yan) + - Support walkable attribute on interactive/non-interactive tilemap items (is_walkable) + - fix pathfinding for unreachable cells + - add search radius (max distance) before canceling + - improve performance (or rather, check performance first) + - Player: function to walk up to a tile, not onto the tile (trees, etc.) +- Player v2 (Colin) + - TBD + - Check player pickup function and inventory system (if inventory already full, etc.) + - Check player walking capability + - Interactions with camp, etc. +- Interactive and Non-Interactive Items (Luca) + - Add all the items needed to build the game (bushes, trees, etc.) + - Add logic regarding the objects, like picking up berries or taking branches, etc. + - Camp, chest (inventory slots, array of items) - Implement Behaviours - Implement all kinds of Behaviours, see document - Visualization, make the simulation understandable - GraphEdit - Distances - Current navigation path - - ... + - etc. ## Done @@ -36,3 +44,15 @@ - Reference Food Gatherer for implementation - Child of player, serves as controller - Script needs access to the scene, player and other objects/data +- Navigation + - Use tilemap layers to compute route + - Support obstacles + - Result must be an array of tile coordinates, length (array length) and the total cost (sum of weights) +- Player + - Stats (see document) + - As a layer in the tilemap + - Implemented in the PlayerManager + - Inventory + - with one slot + - can pick up items from tilemap (Pickup) + - can drop items back onto tilemap (Pickup) diff --git a/project/assets/tilemap/tilemaps.aseprite b/project/assets/tilemap/tilemaps.aseprite index 14f2f74..c24a16e 100644 Binary files a/project/assets/tilemap/tilemaps.aseprite and b/project/assets/tilemap/tilemaps.aseprite differ diff --git a/project/assets/tilemap/tilemaps/sprite.json b/project/assets/tilemap/tilemaps/sprite.json index 79d3f1f..f5c20ea 100644 --- a/project/assets/tilemap/tilemaps/sprite.json +++ b/project/assets/tilemap/tilemaps/sprite.json @@ -1 +1 @@ -{"width":320,"layers":[{"cels":[{"image":"tilemaps\\tilemap_ground.png","frame":0}],"name":"ground"},{"cels":[{"image":"tilemaps\\tilemap_objects.png","frame":0}],"name":"objects"},{"cels":[{"image":"tilemaps\\tilemap_temperature.png","frame":0}],"name":"temperature"},{"cels":[{"image":"tilemaps\\tilemap_player.png","frame":0}],"name":"player"}],"frames":[{"duration":0.1}],"height":320,"filename":"tilemaps.aseprite"} \ No newline at end of file +{"filename":"tilemaps.aseprite","width":320,"frames":[{"duration":0.1}],"height":320,"layers":[{"name":"ground","cels":[{"image":"tilemaps\\tilemap_ground.png","frame":0}]},{"name":"objects","cels":[{"image":"tilemaps\\tilemap_objects.png","frame":0}]},{"name":"temperature","cels":[{"image":"tilemaps\\tilemap_temperature.png","frame":0}]},{"name":"player","cels":[{"image":"tilemaps\\tilemap_player.png","frame":0}]}]} \ No newline at end of file diff --git a/project/scripts/player/PlayerManager.gd b/project/scripts/player/PlayerManager.gd index 6d04613..5101342 100644 --- a/project/scripts/player/PlayerManager.gd +++ b/project/scripts/player/PlayerManager.gd @@ -105,8 +105,7 @@ func tick_handle_temperature(cell_temperature: int): func tick_handle_food(): if food <= 0: - health -= food_damage; - pass + health -= food_damage func game_tick() -> void: