execute as @e[type=block_display,tag=id1_sorcerer_weapon_projectile] run function main:mechanics/projectile/projectile_tick {"special":"","target":"@e","id":id1,"character":sorcerer,"type":weapon,"particle_1":"falling_obsidian_tear ~ ~-0.25 ~ 0 0 0 0 5","particle_2":"dust{color:[1.0,0.0,1.0],scale:0.75} ~ ~-0.25 ~ 0 0 0 0.1 5","speed":1,"hitbox":"~-0.5 ~-0.5 ~-0.5","dx":"dx=0,dy=0,dz=0","x":"~","y":"~","sound":"item.armor.equip_leather","gravity":0,"gravity_strength":0,"block_dx":"^ ^ ^0.5"}

execute as @e[type=block_display,tag=id1_l_l_sorcerer_rc_projectile] run function main:mechanics/projectile/projectile_tick {"special":"","target":"@e","id":id1_l_l,"character":sorcerer,"type":rc,"particle_1":"shriek{delay:0} ~ ~-0.25 ~ 0.25 0.25 0.25 0 5","particle_2":"dust{color:[0.0,1.0,1.0],scale:0.75} ~ ~-0.25 ~ 0.25 0.25 0.25 0.1 5","speed":25,"hitbox":"~-0.5 ~-0.5 ~-0.5","dx":"dx=0,dy=0,dz=0","x":"~","y":"~","sound":"item.armor.equip_leather","gravity":0,"gravity_strength":0,"block_dx":"^ ^ ^0.5"}

execute if score .w_e sorcerer matches ..0 as @e[type=block_display,tag=id1_w_e_sorcerer_rc_projectile] run function main:mechanics/projectile/projectile_tick {"target":"@e","id":id1_w_e,"character":sorcerer,"type":rc,"particle_1":"block_crumble{block_state:{Name:\"ice\"}} ~ ~-0.25 ~ 0.25 0.25 0.25 0 5","particle_2":"dust{color:[0.0,1.0,1.0],scale:0.75} ~ ~-0.25 ~ 0.25 0.25 0.25 0.1 5","speed":45,"hitbox":"~-0.5 ~-0.5 ~-0.5","dx":"dx=0,dy=0,dz=0","x":"~","y":"~","sound":"item.armor.equip_leather","special":" run function main:characters/sorcerer/rc/id1/spells/w_w/frozen_check","gravity":0,"gravity_strength":0,"block_dx":"^ ^ ^0.5"}