Map changinbg
This commit is contained in:
@@ -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
|
||||
|
Reference in New Issue
Block a user