(求解答)个人Godot使用问题集合
今天正式开始尝试使用godot引擎,然后我打算直接实操入手,就是Thunder Engine所以一般问题都是针对Thunder Engine的
Godot版本:4.2.2 问题1:我尝试将暂停菜单支持跳跃键也可选择,但这样的问题是解除暂停后马里奥对应的事件也会触发(即跳跃)
我的做法如下:
res://engine/components/ui/generic/menu_selection.gd下,_physics_process改成
func _physics_process(delta: float) -> void:
if !focused || !get_parent().focused: return
if Input.is_action_just_pressed(trigger_action) or Input.is_action_just_pressed("m_jump"):
_handle_select()
其他没改,但是我尝试去研究逻辑发现暂时没有什么逻辑上的问题
res://engine/objects/players/behaviors/player_physics_behavior.gd下也有对暂停进行了处理
func _physics_process(delta: float) -> void:
if player.get_tree().paused: return
虽然不改问题也不大,但我还是想看看有没有什么好的解决方法 暂时解决,解决方案:解除后当作马里奥已经完成了跳跃
res://engine/components/pause/continue_selection.gd改为如下代码:
extends MenuSelection
@onready var pause: Control = $"../.."
func _handle_select() -> void:
super()
pause.toggle(false)
Thunder._current_player._has_jumped = true
本帖最后由 ReflexGURU 于 2024-9-30 22:32 编辑
a better but still hacky approach would be adding something like:
await get_tree().physics_frame
before the pause.toggle function execution
页:
[1]