Difference between revisions of "RemoteCast - Spell"

From the CreationKit Wiki
Jump to navigation Jump to search
Line 38: Line 38:
*Using this function will invalidate (cause it to return 0/false when it should return 1/true) any ongoing '''isDualCasting''' checks on akSource.
*Using this function will invalidate (cause it to return 0/false when it should return 1/true) any ongoing '''isDualCasting''' checks on akSource.
**'''isDualCasting''' will continue to return false until akSource stops dual casting.
**'''isDualCasting''' will continue to return false until akSource stops dual casting.
*While spells will scale with and assign blame to akBlameActor, akSource is considered the 'owner' of the spell, and as such, '''Summon Creature''' archetype effects will create an instance of the summoned actor for akSource.
*While spells will scale with and assign blame to akBlameActor, akSource is considered the 'owner' of the spell, and as such, projectiles will collide with akBlameActor, and '''Summon Creature''' archetype effects will create an instance of the summoned actor for akSource.


== See Also ==
== See Also ==

Revision as of 18:21, 30 June 2022

Member of: Spell Script

Casts this spell from the specified object reference with a specified Actor getting the "blame" for the spell if it could cause a crime to occur, optionally toward a target object reference.

Syntax

Function RemoteCast(ObjectReference akSource, Actor akBlameActor, ObjectReference akTarget = None) native

Parameters

  • akSource: The ObjectReference from which to cast the spell. The source must be able to cast this spell (testings seem to show anything will work, regardless whether they have the spell or not).
  • akBlameActor: The Actor who will be taking blame for the spell if adding it to a target would cause a crime. The spell's magic effects will scale with the actor if applicable.
  • akTarget: An optional ObjectReference at which to aim the spell. If None is passed and the spell needs a direction, it will be aimed in a default direction.
    • Default: None

Return Value

None.

Examples

; Have the box cast a fireball, but blame the player!
Fireball.RemoteCast(Box, Game.GetPlayer())


; Have the box cast a fireball at the victim, but blame the player!
Fireball.RemoteCast(Box, Game.GetPlayer(), Victim)

Notes

  • This function casts the spell instantaneously. This is mainly desirable only for non-actors, because it will not animate an actor. For instance, the spell will be cast even if the actor's hands are not readied.
  • If you wish to make an actor cast a spell using all the normal spellcasting behaviors, please instead use an AI package that includes the UseMagic procedure.
  • Actor races can be set to cast magic only in the direction that the actor is facing; if the source is an actor with this racial setting, this parameter will be ignored.
  • It seems that using this function on an actor that doesn't have the spell will work. To add, it will also work on Objects, such as a rock.
  • Using this function will invalidate (cause it to return 0/false when it should return 1/true) any ongoing isDualCasting checks on akSource.
    • isDualCasting will continue to return false until akSource stops dual casting.
  • While spells will scale with and assign blame to akBlameActor, akSource is considered the 'owner' of the spell, and as such, projectiles will collide with akBlameActor, and Summon Creature archetype effects will create an instance of the summoned actor for akSource.

See Also