graph TB
%% -- Common Template --
%% nodes
start(("Start"))
next_scene_from_common(("Next scene"))
scene_start_common["goto: scene_start_common()"]
%% styles
classDef class_script_call fill:#CAF
classDef class_routine_call fill:#EE9
%% apply styles
class scene_start_common class_routine_call
%% flow
start --> scene_start_common
scene_start_common --> |next scene| next_scene_from_common
%% -- scene specific --
%% nodes
next_scene(("Next scene"))
autosave_scene(("Autosave scene"))
next_scene_exist{"next scene?"}
newgame_event_init("script: newgame_event_init()")
newgame_event_init_exist{"newgame_event_init()?"}
%% apply styles
class newgame_event_init class_script_call
%% flows
scene_start_common --> |continue current scene| newgame_event_init_exist
newgame_event_init_exist -->|exist| newgame_event_init
newgame_event_init_exist -->|NOT exist| next_scene_exist
newgame_event_init --> next_scene_exist
next_scene_exist --> |exist| next_scene
next_scene_exist --> |NOT exist| autosave_scene