Create start of PlayerInteraction modifier

This commit is contained in:
2026-01-23 21:38:06 -08:00
parent cfcbf1d8dc
commit 7bc32985ad
6 changed files with 198 additions and 8 deletions

View File

@ -14,7 +14,6 @@ class Data {
var decelleration: Num = 0.5
var speed_run: Num = 25.0
var speed_walk: Num = 15.0
var ground_check_dist: Num = 0
var jump_impulse: Num = 20
var jump_grace_time: Num = 0.1
@ -25,7 +24,6 @@ class Data {
var event_sprint: String = "run"
var event_jump: String = "jump"
#hidden
var input_target: Float3 = [0, 0, 0]
#hidden
@ -108,8 +106,6 @@ class System is Modifier {
data.time_since_grounded = 0
data.input_target = Math.add(data.input_target, [0, data.jump_impulse / Character3D.get.speed(player), 0])
data.is_grounded = false
Transform.translate(player, 0, data.ground_check_dist + this.EPSILON, 0)
} else {
data.input_target = [data.input_target.x, 0, data.input_target.z]
}
@ -120,7 +116,7 @@ class System is Modifier {
check_grounded(player: Entity, data: Data): Bool {
var height = Character3D.get.height(player) * 0.5
return Physics3D.cast_ray_closest(_world, Transform.get_pos_world(player), [0,-1,0], height + data.ground_check_dist) != null
return Physics3D.cast_ray_closest(_world, Transform.get_pos_world(player), [0,-1,0], height) != null
}
// Utility Methods