1. 07 May, 2021 1 commit
  2. 05 May, 2021 10 commits
  3. 04 May, 2021 4 commits
    • tgw3ff's avatar
      Implement Chest Loot · 5dfcfaa2
      tgw3ff authored
      The player character now had a max_health variable along with their health
      variable. Upon opening a chest, the player will either have their health
      replenished by a random integer betweeen a pre-defined range, or have their
      max_health upgraded by a random integer in the same range.
      If the player is at max health when opening a chest, they will never have
      their health replenished, but instead will always have their max_health
    • tgw3ff's avatar
      Implement Interactible Chests · a5f6e34c
      tgw3ff authored
      0 to 3 interactible chests will now spawn on each floor. Loot for chests still
      needs to be implemented.
    • tgw3ff's avatar
      Implement Game Saving and High Score Counter · 009ee43d
      tgw3ff authored
    • tgw3ff's avatar
      Fix and Optimize Enemy Spawning Logic · 9f26476d
      tgw3ff authored
      The enemy spawning algorithm was not behaving as intended. This commit fixes
      that as well as optimizing to logic to decrease related slow-downs.
  4. 03 May, 2021 2 commits
    • tgw3ff's avatar
      Implement Enemy Spawn Selection · e829612e
      tgw3ff authored
      The map generator will now choose random cells to be enemy spawn locations, up
      to a number of spawns less than a defined percentage of the total possible
      enemy spawn locations. Enemy spawns are never closer than a pre-defined
      distance from the player's spawn and never directly adjecent to a hole.
      The tilemap script also will ensure that enemies never spawn inside a
      collidable tile. This means that enemies will never spawn trapped inside of
      the level geometry.
    • tgw3ff's avatar
      Implement Safe Player Spawning, Hole Functionality, Level Advancement, Level... · 261948c4
      tgw3ff authored
      Implement Safe Player Spawning, Hole Functionality, Level Advancement, Level Score, Obstacle Destruction
      The player will now always spawn in a non-obstructed location.
      When the player steps onto a hole, they will be teleported to the hole's
      If the hole has no destination, the player will instead by spawned into a
      new level/map.
      The player node now contains a level counter to track the player's progress.
      This score is also displayed on screen. This needs to be tidied up,
      If the player collides with a destructable obstacle, the obstacle will now
      be destroyed. This takes the player's full turn to do, however.
  5. 02 May, 2021 3 commits
    • tgw3ff's avatar
    • tgw3ff's avatar
      Merge branch 'ActorManager' · 9152e61f
      tgw3ff authored
    • tgw3ff's avatar
      Implemented Biome Placement, Hole Placement, and Player Spawn Location CHoosing · 745ee6bc
      tgw3ff authored
      Biomes that are now implemented are the boulder and mushroom biomes. Lake biome
      will be implemented if time allows after the player character has a way to
      traverse water tiles. Brick biomes, or brick paths will be implemented if time
      There is a tree that spans across each cave room in the map. For each line
      that branches off a room, a hole is spawned in that room and linked to a
      hole in the room on the opposite end of the line.
      There is also one hole placed in a random cave room that is not linked to any
      other holes. This hole will serve as the end of the level.
      This branch is ready to have the player character branch merged into it as
      that branch contains the player teleportation feature needed for additional
  6. 25 Apr, 2021 1 commit
  7. 23 Apr, 2021 1 commit
    • tgw3ff's avatar
      Room Detection and Spanning · 340be132
      tgw3ff authored
      The isolated rooms of the map are now detected and a modified Kruskal's
      algorithm is used to create a tree spanning all of said rooms.
      This algorithm will be modified so that the smallest rooms will not have so
      many branches off of them in the tree that they cannot contain all of the holes
      that will be created because of those branches.
      Cell and Room classes will be created to make the code easier to understand as
      well as to support hole placement, biome placement, landmark spawning, and
      enemy spawning.
  8. 18 Apr, 2021 1 commit
    • tgw3ff's avatar
      Create MapGenerator.gd Script and Reformat Numeric Tile Representation · 2596498a
      tgw3ff authored
      The code for the map generation is now seperate from the tile placement code.
      The map generation code is located in the new MapGenerator.gd script.
      In the 2D array of ints that represented the map, 0's equated to empty spaces
      and 1's equated to walls. Now the value assigned to the enum EMPTY equates to
      empty spaces and the value assigned to the enum WALL in the map generator script
      equates to walls. This serves to future proof the code as enums for the rest of
      the possible tiles, such as WATER, BRICK, and ROCK_T (rock terrain), are also
  9. 16 Apr, 2021 1 commit
  10. 13 Apr, 2021 1 commit
  11. 12 Apr, 2021 6 commits
  12. 06 Apr, 2021 1 commit
    • tgw3ff's avatar
      Import New Actor Sprites and Actor Sprite Direction Flipping · 7d65ef90
      tgw3ff authored
      The new sprite for the player character, as well as sprites for multiple
      different enemies have been imported into the .../assets/ folder. The Player
      actor now uses its updated texture and the Enemy actor now uses the "slime.png"
      The Player and TestEnemy scripts now have added logic to flip their sprites
      horizontally when changing horizontal directions.
  13. 31 Mar, 2021 1 commit
  14. 30 Mar, 2021 2 commits
  15. 29 Mar, 2021 4 commits
    • tgw3ff's avatar
      Merge branch 'map-generator' into 'master' · a6885e32
      tgw3ff authored
      Map generator
      See merge request tgw3ff/2021-sp-cs4096-97-tdg!2
    • tgw3ff's avatar
      Wall Validation and Randomized Terrain Tiles · 40fb21d8
      tgw3ff authored
      Added an algorithm in the Tileset.gd script that knows a set of 3x3 matrixes
      that are not allowed to appear in the map, as they will cause texture
      issues. The algorithm then replaces these occurences with matrices that
      are allowed by the tileset. There are a few edge cases where there isn't a
      texture for certain wall configurations, but it is considerably more rare now.
      A quick algorithm also sprinkles at random some of the terrain tiles. Some are
      collidable (like the boulders), and some are not (such as the grass). I will
      replace this system for a much more robust one in the future.
    • tgw3ff's avatar
      Tidy Up Tilemap.gd · 22c7b79a
      tgw3ff authored
    • tgw3ff's avatar
      New Tileset Imported · a5ed8d1c
      tgw3ff authored
  16. 26 Mar, 2021 1 commit
    • tgw3ff's avatar
      Player Scene Camera Node Fixed · 6e61282a
      tgw3ff authored
      The player scene now has a working camera node.
      An enemy scene was also created. The enemy scene is identical in nearly all aspects except that it does not have a camera node and has the TestEnemy.gd script attached instead.