Fix to InstantCast and some Cast Times
After some testing related to the desync of abilities, I figured out the cause of one, using Data.CastType is CastType.CAST_Instant to determine instant cast is wrong, multiple abilities with uncancellable cast times use CAST_Instant, such as Veigar W, Veigar E, Kassadin R. Treating them as instantcast added the issue of being able to cancel them and causing a server/client desync after the cast time was cancelled, this caused particles to dissapear and made the client refund the CD (while server side its on CD).
Reference to what this is supposed to fix (in both cases CD are on but they arent going on CD): https://streamable.com/t5wew0, https://streamable.com/3axqn5 (slowed castframe to showcase CAST_INSTANT ability with cast time being cancelled and causing a desync)
After the change:https://streamable.com/3vht0a
I assume the CAST_INSTANT there was put to solve Katarina E delay issue but that is solved with the changes in RFile and SpellData, without needing to treat CAST_INSTANT as Instant cast, what determines if a cast is Instant or not is in the Flags in the inibin of the spell, but turns out spellflags werent being read correctly so thats why ShadowStep was returning flags.HasFlag(SpellDataFlags.Instacast); as false, so instead of modifying something in RFile I decided to add a function for that and modify SpellData accordingly to the changes. Shouldn't break anything since I made multiple tests, buy maybe the code could be prettier lol
Based in my testings this should fix: CAST_Instant spells with cast times being cancellable with a simple movement command and causing a desync, AA resets greying out and also might fix Evelynn issue but I couldnt reproduce that in the master branch. All that is fixed while preserving Kat E blink speed.
Furthermore I want to ask about adding some sort of delay to EndCast IssueDelayedOrder, because I'm pretty sure that in my tests IssueDelayedOrder sometimes overrides casttimes and adding a Game.pendingActions.Add (not saying its a correct solution and didnt add it in this MR) seems to solve that issue without any negative consequence after multiple tests, leaving only one more desync that I cant pinpoint the exact cause that seems to happen randomly (and rarely) when moving and casting, cast time seems to finish but ability doesnt go to CD in these cases, cant reproduce it consistently and seems to happen in every type of cast (Targeted, free target, instant, missile, etc.), seems to happen often when R'ing out of base right after spawning with Kass R.