/AGFX_GD3_DungeonBuilder

Dungeon builder class fro Godot 3.2

Primary LanguageGDScriptMIT LicenseMIT

Godot 3.2 Dungeon builder

Spelunky inspired dungeon cell builder with option to create connected cells from user defined side:

  • from TOP

  • from LEFT

  • from RIGHT

  • from BOTTOM

  • or randomly selected side, if rndStartSide is set to true

  • DungeonBuilder

    • class: ProceduralDungeon
      • properties:
        • width
        • height
        • startSide ()
        • rndStartSide
        • add extended cell
        • extended cell probability
        • connect extended cell
      • method:
        • xyz.new(width,height)
        • xyz.Build()
        • xyz.Reset()
      • result:
        • is stored in 2D array of DungeonCell
        class DungeonCell:
	        var up:int = eSideType.EXIT
	        var right:int = eSideType.EXIT
	        var down:int = eSideType.EXIT
	        var left:int = eSideType.EXIT
	        var visited:int = 0
	        var cellType:int = eCellType.UNUSED_CELL
	        var nextCell:Vector2 = Vector2(0,0)
	        var currentCell:Vector2 = Vector2(0,0)
	        var prevCell:Vector2 = Vector2(0,0)
	        var userData:Dictionary = {}

Examples

Alt text Alt text Alt text

RED - unused cell GREEN - main dungeon cells BLUE - randomly added extended cells