Fix IsValidTarget() logic for AlwaysSelf flags
IsValidTarget in ApiFunctionManager.cs was returning false whenever the AlwaysSelf flag was present, ignoring other flags such as AffectEnemies. This caused the function to reject non-self targets which is crucial for abilities that target both self and enemies such as Ryze's E.
His E was being flagged as AlwaysSelf due to logic in SpellChainMissile.cs (lines 37-42), resulting in IsValidTarget returning false early. This prevented Spell Flux from validating enemy targets despite having the correct target flags.
Removing the early exclusive return, leaving only the AlwaysSelf validation already present in the main target validation block in ApiFunctionManager (lines 855-887) allows spells to correctly target both the caster AND other unit types when multiple flags are present.
A quick search showed that Ryze's Spell Flux is the only spell using CanHitCaster = true in ChainMissileParameters, making it the only affected spell, but for peace of mind I tested the following abilities to ensure no regression:
- Fiddlesticks' W (Dark Wind) -- Working as intended, bouncing between enemies and applying damage.
- Brand's R (Pyroclasm) -- Also working as intended.
- Katarina's Q (Bouncing Blades) -- No regression observed.
This resolves issue #44.