Spell - Handled with ease! Functions: Spell(spellId, range, packetCast) Members: Spell.range | float | Range of the spell, please do NOT change this value, use Spell:SetRange() instead Spell.rangeSqr | float | Squared range of the spell, please do NOT change this value, use Spell:SetRange() instead Spell.packetCast | bool | Set packet cast state -- This only applies for skillshots Spell.sourcePosition | vector | From where the spell is casted, default: player Spell.sourceRange | vector | From where the range should be calculated, default: player -- This only applies for AOE skillshots Spell.minTargetsAoe | int | Set minimum targets for AOE damage Methods: Spell:SetRange(range) Spell:SetSource(source) Spell:SetSourcePosition(source) Spell:SetSourceRange(source) Spell:SetSkillshot(VP, skillshotType, width, delay, speed, collision) Spell:SetAOE(useAoe, radius, minTargetsAoe) Spell:SetCharged(spellName, chargeDuration, maxRange, timeToMaxRange, abortCondition) Spell:IsCharging() Spell:Charge() Spell:SetHitChance(hitChance) Spell:ValidTarget(target) Spell:GetPrediction(target) Spell:CastIfDashing(target) Spell:CastIfImmobile(target) Spell:Cast(param1, param2) Spell:AddAutomation(automationId, func) Spell:RemoveAutomation(automationId) Spell:ClearAutomations() Spell:TrackCasting(spellName) Spell:WillHitTarget() Spell:RegisterCastCallback(func) Spell:GetLastCastTime() Spell:IsInRange(target, from) Spell:IsReady() Spell:GetManaUsage() Spell:GetCooldown() Spell:GetLevel() Spell:GetName()