extends KinematicBody\n\nconst GRAVITY = -9.8\nconst SPEED = 10\nconst JUMP_HEIGHT = 5\nconst JUMP_SPEED = sqrt(2 * JUMP_HEIGHT * -GRAVITY)\n\nvar velocity = Vector3.ZERO\nvar isJumping = false\n\nfunc _physics_process(delta: float) -> void:\n\tvar input_vector = Vector3.ZERO\n\nif Input.is_action_pressed("move_forward"):\n\tinput_vector.z -= 1\nif Input.is_action_pressed("move_backward"):\n\tinput_vector.z += 1\nif Input.is_action_pressed("move_left"):\n\tinput_vector.x -= 1\nif Input.is_action_pressed("move_right"):\n\tinput_vector.x += 1\n\nif Input.is_action_just_pressed("jump") and is_on_floor():\n\tvelocity.y = JUMP_SPEED\n\tisJumping = true\n\ninput_vector = input_vector.normalized()\n\nvelocity.x = input_vector.x * SPEED\nvelocity.z = input_vector.z * SPEED\n\nvelocity.y += GRAVITY * delta\n\nvelocity = move_and_slide(velocity, Vector3.UP)\n\nif isJumping and is_on_floor():\n\tisJumping = false\n\nif Input.is_action_just_pressed("quit"):\n\tget_tree().quit()

Godot 4 GDScript 3D Player 代码示例

原文地址: http://www.cveoy.top/t/topic/psIJ 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录