Item Not Working On Specific Computer

So I recently did my very first playtest of my game and scythe, A very crucial part of my game, doesn’t work. I believe that the line of code to make it visible doesn’t work but I can’t tell for sure. I’ve tested the export on a windows 10 custom pc, a windows 11 Samsung laptop, but it doesn’t work on a windows 11 Lenovo legion.

I think I’ve narrowed it down to UI stuff being dumb. The code for hiding and unhiding it runs from adding logging and the scythe isn’t invisible because you can still attack and the damage detects if it’s not hidden. This is it’s code incase that might be useful:

extends Item

var is_coolingdown : bool = false
var has_attacked : bool = false

@onready var animation_player: AnimationPlayer = $AnimationPlayer
@onready var swap_timer: Timer = $swapTimer

func _process(_delta: float) -> void:
	var slot_manager : SlotManager = gamemanager.player.slot_manager
	if Input.is_action_just_pressed("attack") && animation_player.current_animation != "switch" && slot_manager.sloton == slot_manager.slots.SCYTHE:
		animation_player.play("slice")
		has_attacked = true
	if animation_player.current_animation == "switch":
		is_coolingdown = true
	else:
		is_coolingdown = false




func _on_animation_player_animation_finished(anim_name: StringName) -> void:
	if anim_name == "slice":
		animation_player.play("switch")


func _on_blockbench_export_visibility_changed() -> void:
	if visible:
		swap_timer.start()
	else:
		has_attacked = false


func _on_swap_timer_timeout() -> void:
	if !has_attacked:
		animation_player.play("switch")

I made a few changes and eventually it worked but I don’t know what did it.