summaryrefslogtreecommitdiffstats
path: root/scripts
diff options
context:
space:
mode:
Diffstat (limited to 'scripts')
-rw-r--r--scripts/Ladder.gd4
-rw-r--r--scripts/PlayerCharacter.gd12
2 files changed, 11 insertions, 5 deletions
diff --git a/scripts/Ladder.gd b/scripts/Ladder.gd
index ea4265d..c21752b 100644
--- a/scripts/Ladder.gd
+++ b/scripts/Ladder.gd
@@ -1,5 +1,6 @@
extends Area2D
+export (int) var target_scene_num
# Declare member variables here. Examples:
# var a = 2
@@ -17,4 +18,5 @@ func _ready():
func _on_Ladder_body_entered(body):
if body is PlayerCharacter:
- body.change_level()
+ var player: PlayerCharacter = body
+ player.change_level(target_scene_num)
diff --git a/scripts/PlayerCharacter.gd b/scripts/PlayerCharacter.gd
index edcbdb2..83fa8bd 100644
--- a/scripts/PlayerCharacter.gd
+++ b/scripts/PlayerCharacter.gd
@@ -4,8 +4,7 @@ class_name PlayerCharacter
export (int) var speed = 8
export (float) var walk_wobble_coeff = 5
var velocity = Vector2()
-var look_dir = 1 # right = 1
- # left = -1
+var look_dir = 1 # right = 1, left = -1
func get_input():
velocity = Vector2()
@@ -41,5 +40,10 @@ func _physics_process(_delta):
get_input()
velocity = move_and_slide(velocity)
-func change_level():
- print("change_level()")
+func change_level(num: int):
+ var new_scene = "res://scenes/Scene" + String(num) + ".tscn"
+ var success = get_tree().change_scene(new_scene)
+ if success == OK:
+ print("Changed level to " + new_scene)
+ else:
+ push_error("Failed to change level to " + new_scene)