We all are in this for the internet fame.
O_o Well, you kinda fixed that problem quickly, yeah, now looks good in all states that I tried so far. They were a lot but seems you found them, template is way better now if not totally fixed.
Better jump to this now, well, in this move in state 4567 the projectile dissapears instantly and doesn't look too good when happens.
That looked better on my end after adding some more stuff to the projectile code so the the tornado gets remaining and fading animations, I used your same tornado animation here but you could also make a new one with less frames and that goes slower, it could look smoother.
[State 4567, 1]
type = Projectile
trigger1 = Animelem = 9
projanim = 7099
projhitanim = 7099
projremanim = 7099
projcancelanim = 7099
projpriority = 1
projheightbound = -240, 100
projedgebound = 100
projscreenbound = 100
projshadow = -1
offset = 181,-5
velocity = 3
attr = S, SP
damage = 95
animtype = heavy
guardflag = MA
hitflag = MAFDP
pausetime = 10,10
hitsound = S200,5
sparkxy = 500,500
guardsound = S6,0
ground.type = high
ground.type = TRIP
ground.slidetime = 18
ground.hittime = 40
ground.velocity = -15
ground.cornerpush.veloff = 5 ;To push far away when p2 is in corner
guard.velocity = -90
air.velocity = -4,-4.5
airguard.velocity = -4,-4.5
Also the projectile could use trans A so it looks transparent like these CvS tornadoes normally look.
After most of that that's how it hits:
Also about all this statedef 6670, it might be intended to work like some sort of "shoryuken" move, but it's kinda bad since you tried to use a full animation to make it look as if he is floating instead of using velsets.
[StateDef 6670]
type = S
movetype= A
physics = S
juggle = 4
poweradd= 120
velset = 8,0
anim = 6014
ctrl = 0
sprpriority = 2
[State 6670, 1]
type = PlaySnd
trigger1 = AnimElem = 1
value = 0,3
[State 6670, Width 1]
type = Width
trigger1 = AnimElemTime(5) >= 0 && AnimElemTime(6) < 0
value = 10,0
[State 6670, Width 2]
type = Width
trigger1 = AnimElemTime(6) >= 0 && AnimElemTime(9) < 0
value = 20,0
[State 6670, Shake Screen]
type = EnvShake
trigger1 = AnimElem = 9
time = 50
ampl = 2
freq = 280 ;A frequency of less than 180 causes a dampening effect
[State 6670, 2]
type = HitDef
trigger1 = Time = 0
attr = S, SA
animtype = Hard
damage = 125, 9
priority = 5
guardflag = MA
pausetime = 12,12
sparkxy = 0,-65
hitsound = S4588,45
guardsound = 6,0
ground.type = TRIP
ground.slidetime = 18
ground.hittime = 20
ground.velocity = -15
ground.cornerpush.veloff = 5 ;To push far away when p2 is in corner
guard.velocity = -10
air.velocity = -4,-4.5
airguard.velocity = -4,-4.5
[State 12345,PlaySnd2]
type = PlaySnd
trigger1 = AnimElem = 3
value = S500, 1
[State 12345,PlaySnd2]
type = PlaySnd
trigger1 = AnimElem = 3
value = S2000, 0
[State 12345, ChangeState]
type = ChangeState
trigger1 = Animelem = 9
value = 4567
ctrl = 0
[State 12345, 3]
type = ChangeState
trigger1 = AnimTime = 0
value = 0
ctrl = 1
It might be cool if you instead make him float with a velset and then make him changestate into launching the tornado so he floats down smoothly like after a jump, you can check a shoryuken code in other character to see how to try it. It could also show you some more useful code.
It's not a crime to check how stuff is coded in other characters to learn stuff.