Map changinbg

This commit is contained in:
2025-07-04 15:02:41 -05:00
parent 7ae9d534ab
commit 29ebb68215
14 changed files with 192 additions and 39 deletions

View File

@@ -1,19 +1,35 @@
class_name OverworldSingleton extends Node
signal mapChanged
signal mapChanged(newMap:PackedScene, playerDestinationNodeName:String)
var newMap:PackedScene
var playerDestinationNodeName:String
func _init() -> void:
pass
func _exit_tree() -> void:
TRANSITION.fadeOutEnd.disconnect(onFadeOutEnd)
TRANSITION.fadeInEnd.disconnect(onFadeInEnd)
func mapChange(map:Map.MapKey) -> void:
func mapChange(map:PackedScene, playerDestinationNodeName:String) -> void:
TRANSITION.fade(TransitionSingleton.FadeType.FADE_OUT)
TRANSITION.fadeOutEnd.connect(onFadeOutEnd)
print("OverworldSingleton: mapChange called with map:", map)
newMap = map
self.playerDestinationNodeName = playerDestinationNodeName
func onFadeOutEnd() -> void:
TRANSITION.fadtOutEnd.disconnect(onFadeOutEnd)
TRANSITION.fadeOutEnd.disconnect(onFadeOutEnd)
TRANSITION.fade(TransitionSingleton.FadeType.FADE_IN)
mapChanged.emit()
TRANSITION.fadeInEnd.connect(onFadeInEnd)
mapChanged.emit(newMap, playerDestinationNodeName)
func onFadeInEnd() -> void:
TRANSITION.fadeInEnd.disconnect(onFadeInEnd)
newMap = null
func isMapChanging() -> bool:
# If the newMap is set, then we are in the process of changing maps.
return newMap != null