# execute if score .rc archer matches ..0 if score .rc_charge archer matches 1.. run function main:characters/archer/rc/id1/release

execute if score .rc archer matches 1.. at @s run scoreboard players add .rc_charge archer 1

execute if score .rc archer matches 1.. at @s run scoreboard players remove .rc archer 1

execute if score .rc archer matches ..0 run scoreboard players set .rc_charge archer 0

execute as @e[type=item_display,tag=archer_rc_regular] at @s at @n[type=item_display,tag=id1_archer_rc_arrow] rotated as @n[type=item_display,tag=id1_archer_rc_arrow] run rotate @s ~ ~

execute if score .rc archer matches ..0 if score .rc_animation archer matches 1.. run scoreboard players set .rc_animation archer 0
execute if score .rc archer matches ..0 if score .rc_hold_animation archer matches 1.. run scoreboard players set .rc_hold_animation archer 0
execute if score .rc archer matches ..0 run tag @s remove archer_rc

execute if score .rc_charge archer matches 20 if score .rc_hold_animation archer matches ..0 run scoreboard players set .rc_hold_animation archer 9

execute if score .rc archer matches 1.. if score .rc_hold_animation archer matches 1 run scoreboard players set .rc_hold_animation archer 9

execute if score .storm_cooldown_s archer matches 1.. if score .storm_cooldown_t archer matches 20.. run scoreboard players remove .storm_cooldown_s archer 1
execute if score .storm_cooldown_t archer matches 20.. run scoreboard players set .storm_cooldown_t archer 0
execute if score .storm_cooldown_s archer matches 1.. if score .storm_cooldown_t archer matches ..20 run scoreboard players add .storm_cooldown_t archer 1

execute if score .thundering_cooldown_s archer matches 1.. if score .thundering_cooldown_t archer matches 20.. run scoreboard players remove .thundering_cooldown_s archer 1
execute if score .thundering_cooldown_t archer matches 20.. run scoreboard players set .thundering_cooldown_t archer 0
execute if score .thundering_cooldown_s archer matches 1.. if score .thundering_cooldown_t archer matches ..20 run scoreboard players add .thundering_cooldown_t archer 1

execute if score .gale_cooldown_s archer matches 1.. if score .gale_cooldown_t archer matches 20.. run scoreboard players remove .gale_cooldown_s archer 1
execute if score .gale_cooldown_t archer matches 20.. run scoreboard players set .gale_cooldown_t archer 0
execute if score .gale_cooldown_s archer matches 1.. if score .gale_cooldown_t archer matches ..20 run scoreboard players add .gale_cooldown_t archer 1

execute if score .extra_cooldown archer matches 1.. run scoreboard players remove .extra_cooldown archer 1

execute if score .rc_hold_animation archer matches 2 run function main:characters/archer/rc/id1/hold

execute if score .rc archer matches 1 run scoreboard players set .rc_hold_animation archer 0
execute if score .rc archer matches 1 run scoreboard players set .rc_release_animation archer 5
execute if score .rc archer matches 1 if score .arrow archer matches 0 run function main:mechanics/animation/start {"frames":236,"start":"200"}
execute if score .rc archer matches 1 if score .arrow archer matches 1 unless score .storm_cooldown_s archer matches 1.. run return run function main:mechanics/animation/start {"frames":236,"start":"210"}
execute if score .rc archer matches 1 if score .arrow archer matches 2 unless score .gale_cooldown_s archer matches 1.. run return run function main:mechanics/animation/start {"frames":236,"start":"220"}
execute if score .rc archer matches 1 if score .arrow archer matches 3 unless score .thundering_cooldown_s archer matches 1.. run return run function main:mechanics/animation/start {"frames":236,"start":"230"}
execute if score .rc archer matches 1 run function main:mechanics/animation/start {"frames":236,"start":"200"}