Now About Social Code
summaryrefslogtreecommitdiff
path: root/scripts
diff options
context:
space:
mode:
Diffstat (limited to 'scripts')
-rw-r--r--scripts/level_gen.gd2
-rw-r--r--scripts/player.gd12
2 files changed, 12 insertions, 2 deletions
diff --git a/scripts/level_gen.gd b/scripts/level_gen.gd
index 66f465a..988bace 100644
--- a/scripts/level_gen.gd
+++ b/scripts/level_gen.gd
@@ -155,6 +155,8 @@ func _ready():
collision_shape.set_shape(col_mesh)
var static_body = StaticBody3D.new()
+ static_body.collision_layer = 0xb101
+ static_body.collision_mask = 0xb101
static_body.add_child(collision_shape)
static_body.add_child(m)
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