Analyse of Scenes and Scripts - twiederk/DungeonCrawler GitHub Wiki
- Main is Node - NO SCRIPT
- World is Node2D - NO SCRIPT
- Game is Node2D - Script: Game
- GUI is Control - NO SCRIPT
Scripts
Game extends Node2D -> Game
- var characters: Array = []
- var character_pointer: int = 0
- var character: Character = null
- var monsters: Array = []
- var game_system: GameSystem = GameSystem.new()
- onready var camera: Camera2D = $Camera2D
- onready var highlight = $Highlight
- => Part of Godot Lifecycle
GameInit extends Reference -> GameInit
- const Character = preload("res://World/Character.tscn")
- const Monster = preload("res://World/Monster.tscn")
- const Item = preload("res://World/Item.tscn")
- const STEP = 32
- var _monster_manual: MonsterManual = null
- => Part of Godot Lifecycle, because it is used in Game._ready()
Camera extends Camera2D -> Camera
- onready var topLeft = $Limits/TopLeft
- onready var bottomRight = $Limits/BottomRight
- => Part of Godot Lifecycle
Character extends KinematicBody2D -> CharacterBody2D
- export var STEP: int = 32
- onready var animationPlayer = $AnimationPlayer
- onready var hitboxCollisionShape = $HitboxPivot/Hitbox/CollisionShape2D
- onready var hitboxPivot = $HitboxPivot
- var _creature = Creature.new()
- var _inventory = Inventory.new()
- => Part of Godot Lifecycle
- => Composite
- => Graphic part of Domain objects: Creature and Inventory
Monster extends KinematicBody2D -> MonsterBody2D
- signal attacked
- var _creature = Creature.new()
- onready var audioStreamPlayer = $AudioStreamPlayer
- => Composite
- => Part of Godot Lifecycle
- => Graphic part of Domain objects: Creature
Item extends Area2D -> Item2D
- signal picked
- => Part of Godot Lifecycle
- => Should be composible with data of item (gold = 5)
GameSystem extends Reference -> GameSystem
- => Domain entry
Creature extends Reference -> Creature
- signal got_hurt
- var _name: String = ""
- var _hit_points: int = 0
- var _armor_class: int
- var _damage: int
- => Domain entry
Inventory extends Reference -> Inventory
- var _gold: int = 0
- => Domain entry
MonsterManual extends Reference -> MonsterManual
- var _dictionary: Dictionary = {}
- => Domain entry