Added level selection
This commit is contained in:
@@ -0,0 +1,12 @@
|
||||
class_name CLevelManager
|
||||
extends Node
|
||||
|
||||
|
||||
@export var levels : Array[PackedScene] = []
|
||||
|
||||
|
||||
var current_level_index := 0
|
||||
|
||||
|
||||
func _ready() -> void:
|
||||
levels = levels.filter(func(item: PackedScene) -> bool: return item != null)
|
||||
@@ -0,0 +1 @@
|
||||
uid://cm1lme51ido64
|
||||
@@ -0,0 +1,8 @@
|
||||
[gd_scene format=3 uid="uid://bk2pkmgxsgars"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://cm1lme51ido64" path="res://game/managers/level_manager.gd" id="1_te7jw"]
|
||||
[ext_resource type="PackedScene" uid="uid://cuig5x5fd47hs" path="res://game/levels/test_level.tscn" id="2_ow2rn"]
|
||||
|
||||
[node name="LevelManager" type="Node" unique_id=1657502743]
|
||||
script = ExtResource("1_te7jw")
|
||||
levels = Array[PackedScene]([ExtResource("2_ow2rn")])
|
||||
@@ -0,0 +1,40 @@
|
||||
class_name CSaveManager
|
||||
extends Node
|
||||
|
||||
|
||||
@export var save_file_path := "user://save.bin"
|
||||
@export var save_file_pass := "save_file_data"
|
||||
|
||||
|
||||
const CATEGORY_GAME = "game"
|
||||
const GAME_COMPLETED_LEVELS = "completed_levels"
|
||||
|
||||
|
||||
var completed_levels := 0
|
||||
|
||||
var _save_file: ConfigFile
|
||||
|
||||
|
||||
func _ready() -> void:
|
||||
_save_file = ConfigFile.new()
|
||||
_load()
|
||||
|
||||
|
||||
func save() -> void:
|
||||
_save_file.set_value(CATEGORY_GAME, GAME_COMPLETED_LEVELS, completed_levels)
|
||||
_save_file.save_encrypted_pass(save_file_path, save_file_pass)
|
||||
|
||||
|
||||
|
||||
|
||||
func _load() -> void:
|
||||
if _save_file.load_encrypted_pass(save_file_path, save_file_pass) == OK:
|
||||
_process_save_file()
|
||||
|
||||
save()
|
||||
|
||||
|
||||
func _process_save_file() -> void:
|
||||
completed_levels = _save_file.get_value(
|
||||
CATEGORY_GAME, GAME_COMPLETED_LEVELS, completed_levels
|
||||
)
|
||||
@@ -0,0 +1 @@
|
||||
uid://o5dv431ncjlu
|
||||
@@ -0,0 +1,6 @@
|
||||
[gd_scene format=3 uid="uid://2pbgcr5yk7iy"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://o5dv431ncjlu" path="res://game/managers/save_manager.gd" id="1_c6jim"]
|
||||
|
||||
[node name="SaveManager" type="Node" unique_id=352412412]
|
||||
script = ExtResource("1_c6jim")
|
||||
@@ -31,6 +31,7 @@ const MUSIC_BUS = "Music"
|
||||
@export var sfx_stream_game_over : AudioStream
|
||||
@export var sfx_stream_jump : AudioStream
|
||||
@export var sfx_stream_land : AudioStream
|
||||
@export var sfx_stream_level_completed : AudioStream
|
||||
@export var sfx_stream_swing : AudioStream
|
||||
@export var sfx_stream_turret_hit : AudioStream
|
||||
@export var sfx_stream_turret_shot : AudioStream
|
||||
|
||||
@@ -13,6 +13,7 @@
|
||||
[ext_resource type="AudioStream" uid="uid://byn27t4ualxmi" path="res://sound/sfx/danger.wav" id="6_wyfta"]
|
||||
[ext_resource type="AudioStream" uid="uid://bj6ausg5hyuyg" path="res://sound/sfx/swing.wav" id="7_ab171"]
|
||||
[ext_resource type="AudioStream" uid="uid://33unutlwsika" path="res://sound/sfx/wall_jump.wav" id="8_22ptj"]
|
||||
[ext_resource type="AudioStream" uid="uid://mwornwi1s000" path="res://sound/sfx/level_completed.wav" id="12_lqyhh"]
|
||||
[ext_resource type="AudioStream" uid="uid://bnrvkm5wy8wda" path="res://sound/sfx/turret_shot.wav" id="13_814q3"]
|
||||
[ext_resource type="AudioStream" uid="uid://8nag1oaly0by" path="res://sound/sfx/turret_hit.wav" id="13_ounmg"]
|
||||
|
||||
@@ -35,6 +36,7 @@ sfx_stream_fall = ExtResource("6_q7cyi")
|
||||
sfx_stream_game_over = ExtResource("6_6ll5c")
|
||||
sfx_stream_jump = ExtResource("5_fpnh3")
|
||||
sfx_stream_land = ExtResource("6_22ptj")
|
||||
sfx_stream_level_completed = ExtResource("12_lqyhh")
|
||||
sfx_stream_swing = ExtResource("7_ab171")
|
||||
sfx_stream_turret_hit = ExtResource("13_ounmg")
|
||||
sfx_stream_turret_shot = ExtResource("13_814q3")
|
||||
|
||||
Reference in New Issue
Block a user