diff options
author | Lucas Fryzek <lucas.fryzek@fryzekconcepts.com> | 2023-09-24 22:08:07 -0400 |
---|---|---|
committer | Lucas Fryzek <lucas.fryzek@fryzekconcepts.com> | 2023-09-24 22:08:07 -0400 |
commit | 7a83dab6bba81f3dfda7179313bd92d492ecd533 (patch) | |
tree | 04f8031dfd0df4428f9b1384fbf48809f34e0bf5 /scripts/player.gd | |
parent | 76660c93401e09042bbd2b73325428b839fcdfc2 (diff) |
Only climb tagged surfaces
Diffstat (limited to 'scripts/player.gd')
-rw-r--r-- | scripts/player.gd | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/scripts/player.gd b/scripts/player.gd index f6a63a0..2d4db99 100644 --- a/scripts/player.gd +++ b/scripts/player.gd @@ -1,6 +1,5 @@ extends CharacterBody3D - const SPEED = 5.0 const RUN_SPEED = 1.5 * SPEED const JUMP_VELOCITY = 4.5 @@ -90,7 +89,16 @@ func _physics_process(delta): var climb_direction_fwd = Vector3() var climb_direction_right = Vector3() - if is_on_wall() and stamina > 0: + + var valid_climb = false + if is_on_wall(): + for col in get_slide_collision_count(): + var col_obj = get_slide_collision(col) + print(col_obj.get_collider().collision_layer) + if col_obj.get_collider().collision_layer & 0b100: + valid_climb = true + + if valid_climb and stamina > 0: last_wall_direction = get_wall_normal() climbing = true stam_consumption += RUN_CONSUMPTION |