feat: Implement initial main game scene with gridmap, player, and core managers.
This commit is contained in:
@@ -260,8 +260,8 @@ func _execute_area_freeze(target_pos: Vector2i = Vector2i.ZERO):
|
||||
var current_lvl = powerup_levels.get(SpecialEffect.AREA_FREEZE, 1)
|
||||
|
||||
if center_pos == Vector2i.ZERO:
|
||||
# Updated: Always 3 tiles ahead as per user request
|
||||
var distance = 3
|
||||
# Updated: Always 4 tiles ahead as per user request
|
||||
var distance = 4
|
||||
print("[SpecialTiles] Area Freeze logic executing with distance: %d" % distance)
|
||||
|
||||
var movement = player.movement_manager
|
||||
@@ -272,11 +272,9 @@ func _execute_area_freeze(target_pos: Vector2i = Vector2i.ZERO):
|
||||
var last_dir = player.movement_manager.last_move_direction if movement else Vector2i(0, 1)
|
||||
center_pos = player.current_position + last_dir * distance
|
||||
|
||||
# Allow spawning Area Freeze even out of bounds (user request)
|
||||
if not enhanced_gridmap.is_position_valid(center_pos):
|
||||
# Try a bit closer if out of bounds
|
||||
center_pos = player.current_position + (center_pos - player.current_position).normalized() * 1.0
|
||||
if not enhanced_gridmap.is_position_valid(center_pos):
|
||||
return
|
||||
print("[SpecialTiles] Spawning Area Freeze at out-of-bounds position: ", center_pos)
|
||||
|
||||
# 3. Determine Radius based on Level
|
||||
var radius = 1
|
||||
|
||||
Reference in New Issue
Block a user