extends WeaponState const molik: PackedScene = preload("uid://b6qahd6q60js7") func _enter() -> void: fire() machine.animation_player.animation_finished.connect(on_animation_finished) func _exit() -> void: machine.animation_player.animation_finished.disconnect(on_animation_finished) func on_animation_finished(animation): if animation == machine.animation_prefix + "throw" or animation == machine.animation_prefix + "shoot": transition.emit("Idle") func fire() -> void: if machine.ammo == 0: return machine.ammo -= 1 machine.animation_player.stop() machine.animation_player.play(machine.animation_prefix + "shoot") if is_multiplayer_authority(): var molotov: CharacterBody3D = molik.instantiate() Session.dynamic_objects_parent.add_child(molotov,true) molotov.global_transform = machine.player_camera.global_transform molotov.velocity = -molotov.global_basis.z * 25