Limits room spawns and speeds up homing projectiles for hivemind and relay

This commit is contained in:
2026-03-10 09:51:34 -04:00
parent b165500ada
commit a8dfc215f1
3 changed files with 10 additions and 5 deletions
+1 -1
View File
@@ -53,7 +53,7 @@ const BEAM_WIDTH := 28.0
const PULSE_FORCE := 350.0 const PULSE_FORCE := 350.0
const PULSE_CD := 5.0 const PULSE_CD := 5.0
const HOMING_COUNT := 4 const HOMING_COUNT := 4
const HOMING_SPEED := 80.0 const HOMING_SPEED := 120.0
const HOMING_TURN := 1.8 # rad/sec const HOMING_TURN := 1.8 # rad/sec
const HOMING_LIFETIME := 7.0 # seconds before homing projectiles expire const HOMING_LIFETIME := 7.0 # seconds before homing projectiles expire
+1 -1
View File
@@ -30,7 +30,7 @@ const PROJ_SIZE := 12.0
const HOMING_COUNT_P1 := 4 const HOMING_COUNT_P1 := 4
const HOMING_COUNT_P2 := 6 const HOMING_COUNT_P2 := 6
const HOMING_SPEED := 100.0 const HOMING_SPEED := 140.0
const HOMING_TURN_SPEED := 1.8 # radians per second const HOMING_TURN_SPEED := 1.8 # radians per second
const HOMING_DELAY := 0.3 # delay after radial burst before homing fires const HOMING_DELAY := 0.3 # delay after radial burst before homing fires
const HOMING_LIFETIME := 7.0 # seconds before homing projectiles expire const HOMING_LIFETIME := 7.0 # seconds before homing projectiles expire
+8 -3
View File
@@ -1,8 +1,12 @@
class_name FloorGenerator class_name FloorGenerator
const GRID_START := Vector2i(5, 5) const GRID_START := Vector2i(5, 5)
const MIN_ROOMS := 8
const MAX_ROOMS := 12 const FLOOR_ROOM_COUNTS := {
1: {"min": 5, "max": 6}, # 4-5 combat + start + boss
2: {"min": 6, "max": 7}, # 5-6 combat + start + boss
3: {"min": 3, "max": 4}, # 2-3 combat + start + boss
}
const DIRS := { const DIRS := {
"up": Vector2i( 0, -1), "up": Vector2i( 0, -1),
@@ -28,7 +32,8 @@ static func generate(floor_number: int) -> Array:
rooms[GRID_START] = start rooms[GRID_START] = start
var queue: Array = [GRID_START] var queue: Array = [GRID_START]
var target: int = rng.randi_range(MIN_ROOMS, MAX_ROOMS) var counts: Dictionary = FLOOR_ROOM_COUNTS.get(floor_number, {"min": 5, "max": 6})
var target: int = rng.randi_range(counts["min"], counts["max"])
# --- Random walk --- # --- Random walk ---
while rooms.size() < target and queue.size() > 0: while rooms.size() < target and queue.size() > 0: