Ga naar hoofdinhoud

Scenes Overzicht

Alle scenes in de game en hun functie.

Scene Map​

                    ┌─────────────┐
│ Main Menu │
└──────┬──────┘
│
┌────────────────┼────────────────┐
│ │ │
▼ ▼ ▼
┌────────────┐ ┌────────────┐ ┌────────────┐
│ Character │ │ Game │ │ Map │
│ Builder │ │ (Home) │ │ Designer │
└─────┬──────┘ └─────┬──────┘ └────────────┘
│ │
│ ┌─────┴─────┐
│ │ │
▼ ▼ ▼
┌────────────┐ ┌───────────┐ ┌─────────────┐
│ Game │ │ Boomhut │ │ Zevensprong │
│ (Home) │ │ (Interior)│ │ (Hub) │
└────────────┘ └───────────┘ └─────────────┘
│
┌──────┴──────┐
│ │
▼ ▼
┌───────────┐ ┌───────────┐
│ Village │ │ Forest │
└───────────┘ └───────────┘

Scenes Lijst​

Core Scenes​

SceneBestandBeschrijving
Main Menumain_menu.tscnStartscherm met navigatie
Character Buildercharacter_builder.tscnKarakter customization
Game (Home)game.tscnHoofd gameplay scene
Boomhutboomhut.tscnTreehouse interior
Zevensprongzevensprong.tscnWorld hub/kruispunt

Tools​

SceneBestandBeschrijving
Map Designermap_designer.tscnMap creation tool
Map Browsermap_browser.tscnCommunity maps browser
Walkable Editorwalkable_editor.tscnWalkable area painter

UI Scenes​

SceneBestandBeschrijving
Inventory Panelui/inventory_panel.tscnInventory UI
Item Slotui/item_slot.tscnDraggable item slot
Storage UIui/storage_ui.tscnBank/chest interface
Resource HUDui/resource_hud.tscnCurrency display

Scene Navigatie​

Standaard Flow​

# Van main menu naar game
func _on_play_pressed() -> void:
if GameState.get_character().size() > 0:
get_tree().change_scene_to_file("res://scenes/game.tscn")
else:
get_tree().change_scene_to_file("res://scenes/character_builder.tscn")

Met Fade Transition​

func _transition_to_scene(path: String) -> void:
var tween = create_tween()
tween.tween_property(fade_rect, "color:a", 1.0, 0.5)
tween.tween_callback(func():
get_tree().change_scene_to_file(path)
)

Scene State Behouden​

# Opslaan bij verlaten
func _exit_tree() -> void:
GameState.set_scene_state("res://scenes/game.tscn", character.position)

# Herstellen bij laden
func _ready() -> void:
if GameState.get_saved_scene() == "res://scenes/game.tscn":
var pos = GameState.get_saved_position()
if pos != Vector2.ZERO:
character.position = pos

Scene Structuur Template​

SceneRoot (Control of Node2D)
│
├── Background
│ └── BackgroundSprite
│
├── World (voor Node2D scenes)
│ ├── TileMap
│ ├── Objects
│ └── Characters
│
├── Character
│ ├── BodySprite
│ ├── ClothesSprite
│ ├── FaceSprite
│ └── HairSprite
│
├── UI (CanvasLayer)
│ ├── HUD
│ ├── Menus
│ └── Dialogs
│
└── FadeRect (voor transities)

Volgende Secties​