Files

54 lines
1.7 KiB
GDScript3
Raw Permalink Normal View History

2026-08-07 02:50:54 -05:00
class_name Cue extends CueMultiplayer
func _ready() -> void:
cue_shape = pool_cue_tip.get_node("shape")
await get_tree().process_frame
setup_multiplayer()
reset_state()
func _input(event: InputEvent) -> void:
if not Globals.multiplayer_data.can_do_request(): return
if not Globals.multiplayer_data.is_multiplayer_active:
if event.is_action_pressed("aim_pulse"):
rpc_input("aim_pulse")
elif event.is_action_released("aim_release"):
rpc_input("aim_release")
else:
if event.is_action_pressed("aim_pulse"):
2026-08-08 01:22:54 -05:00
rpc_id(1, "rpc_input", "aim_pulse")
2026-08-07 02:50:54 -05:00
elif event.is_action_released("aim_release"):
2026-08-08 01:22:54 -05:00
rpc_id(1, "rpc_input", "aim_release")
2026-08-07 02:50:54 -05:00
func _process(delta: float) -> void:
# NOTE: Need on outter of check so that it updates per client
Globals.game_state.update_cue_cam_position.emit(
cue_cam_marker.global_rotation,
cue_cam_marker.global_position
)
if not Globals.multiplayer_data.can_do_request(): return
if not Globals.multiplayer_data.is_multiplayer_active:
if Input.is_action_pressed("aim_rotate_left"):
rpc_process("aim_rotate_left", delta)
elif Input.is_action_pressed("aim_rotate_right"):
rpc_process("aim_rotate_right", delta)
elif Input.is_action_pressed("aim_incline"):
rpc_process("aim_incline", delta)
elif Input.is_action_pressed("aim_decline"):
rpc_process("aim_decline", delta)
else:
if Input.is_action_pressed("aim_rotate_left"):
2026-08-08 01:22:54 -05:00
rpc_id(1, "rpc_process", "aim_rotate_left", delta)
2026-08-07 02:50:54 -05:00
elif Input.is_action_pressed("aim_rotate_right"):
2026-08-08 01:22:54 -05:00
rpc_id(1, "rpc_process", "aim_rotate_right", delta)
2026-08-07 02:50:54 -05:00
elif Input.is_action_pressed("aim_incline"):
2026-08-08 01:22:54 -05:00
rpc_id(1, "rpc_process", "aim_incline", delta)
2026-08-07 02:50:54 -05:00
elif Input.is_action_pressed("aim_decline"):
2026-08-08 01:22:54 -05:00
rpc_id(1, "rpc_process", "aim_decline", delta)