There is no spoon

Difference between revisions of "UE3:Actor events (UDK)"

From Unreal Wiki, The Unreal Engine Documentation Site
Jump to: navigation, search
(Added some descriptions, could someone re-check because I orientated much on older engine versions?)
m (ReplicatedEvent)
Line 372: Line 372:
 
{{code|simulated event '''ReplicatedEvent''' ([[name]] '''VarName''')}}
 
{{code|simulated event '''ReplicatedEvent''' ([[name]] '''VarName''')}}
  
<!-- enter event description -->
+
Called whenever a variable is replicated that has the modifier [[RepNotify]].
 +
 
 +
'''Parameters:'''
 +
* ''VarName'' The name of the variable that got replicated. It is recommend to use [[NameOf]] whenever possible.
  
 
====ReplicationEnded====
 
====ReplicationEnded====

Revision as of 12:39, 20 September 2010

UDK Object >> Actor (events)

Contents

Actor events in other games:
RTNP, U1, UT, U2, U2XMP, UE2Runtime, UT2003, UT2004, UT3
Other member categories for this class:
enums, instance functions, internal variables, native functions, structs

Events

AnimTreeUpdated

simulated event AnimTreeUpdated (SkeletalMeshComponent SkelMesh)

Notification called when one of our meshes gets his AnimTree updated

Attach

event Attach (Actor Other)

Called on this Actor when another Actor used SetBase() to set this to it's Base.

Parameters:

  • Other is the Actor who changed it's Base.

BaseChange

event BaseChange ()

Called when we get our Base set to something else than it was before. This is also called during the destruction process of this Actor.

BecomeViewTarget

event BecomeViewTarget (PlayerController PC)

Called when a PlayerController used SetViewTarget() to focus us.

Parameters:

  • PC is the PlayerController focusing us.

BeginAnimControl

event BeginAnimControl (InterpGroup InInterpGroup)

Called when we start an AnimControl track operating on this Actor. Supplied is the set of AnimSets we are going to want to play from.

BroadcastLocalizedMessage

event BroadcastLocalizedMessage (class<LocalMessageInMessageClass, optional int Switch, optional PlayerReplicationInfo RelatedPRI_1, optional PlayerReplicationInfo RelatedPRI_2, optional Object OptionalObject)


BroadcastLocalizedTeamMessage

event BroadcastLocalizedTeamMessage (int TeamIndex, class<LocalMessageInMessageClass, optional int Switch, optional PlayerReplicationInfo RelatedPRI_1, optional PlayerReplicationInfo RelatedPRI_2, optional Object OptionalObject)


Bump

event Bump (Actor Other, PrimitiveComponent OtherComp, Object.Vector HitNormal)

If bBlockActors or bBlockPlayers is on, this event function gets called for both objects. This event function gets called by the engine only once - at the initial time of the collision.

CollisionChanged

event CollisionChanged ()

Called when collision values change for this actor (via SetCollision/SetCollisionSize).

ConstraintBrokenNotify

simulated event ConstraintBrokenNotify (Actor ConOwner, RB_ConstraintSetup ConSetup, RB_ConstraintInstance ConInstance)

When a constraint is broken we will get this event from c++ land.

DebugFreezeGame

event DebugFreezeGame (optional Actor ActorToLookAt)

Debug Freeze Game dumps the current script function stack and pauses the game with PlayersOnly (still allowing the player to move around).

Destroyed

event Destroyed ()

Called during the destruction of the Actor via Destroy().

Detach

event Detach (Actor Other)

Called if another Actor uses SetBase() and sets his new Base to another Actor and we were the old Base before. Also called during the destruction of an Actor.

Parameters:

  • Other is the Actor who changed it's Base.

EncroachedBy

event EncroachedBy (Actor Other)

Called when we get pushed somewhere and there isn't enough space at this location for us to exist.

Parameters:

  • Other is the Actor who pushed us into the encroached location.

EncroachingOn

event bool EncroachingOn (Actor Other)

Called when this Actor is encroaching on Other and we couldn't find an appropriate place to push Other to

Returns:

true to abort the move, false to allow it

Parameters:

  • Other is the Actor whe are encroaching on.

Warning: do not abort moves of PHYS_RigidBody actors as that will cause the Unreal location and physics engine location to mismatch

EndViewTarget

event EndViewTarget (PlayerController PC)

Called when a PlayerController uses SetViewTarget() to focus another Actor or none and we were focused before.

Parameters:

  • PC is the focusing PlayerController.

Falling

event Falling ()

Called once when we enter PHYS_Falling.

FellOutOfWorld

simulated event FellOutOfWorld (class<DamageTypedmgType)

Called when the actor falls out of the world 'safely' (below KillZ and such)

FinishAnimControl

event FinishAnimControl (InterpGroup InInterpGroup)

Called when we are done with the AnimControl track.

ForceNetRelevant

event ForceNetRelevant ()

Forces this actor to be net relevant if it is not already by default, only works on level placed actors (bNoDelete)

GainedChild

event GainedChild (Actor Other)

Called when another Actor used SetOwner() to set ourself as it's Owner. Happens also if we specify the Owner while spawning the Actor.

Parameters:

  • Other is the Actor who is now owned by us.

GetActorEyesViewPoint

simulated event GetActorEyesViewPoint (out Object.Vector out_Location, out Object.Rotator out_Rotation)

Returns the point of view of the actor. Note that this doesn't mean the camera, but the 'eyes' of the actor. For example, for a Pawn, this would define the eye height location, and view rotation (which is different from the pawn rotation which has a zeroed pitch component). A camera first person view will typically use this view point. Most traces (weapon, AI) will be done from this view point.

Parameters:

  • out_Location - location of view point
  • out_Rotation - view rotation of actor.

GetActorFaceFXAsset

event FaceFXAsset GetActorFaceFXAsset ()

Used by Matinee in-game to mount FaceFXAnimSets before playing animations.

GetFaceFXAudioComponent

simulated event AudioComponent GetFaceFXAudioComponent ()

Function for allowing you to tell FaceFX which AudioComponent it should use for playing audio for corresponding facial animation.

HealDamage

event bool HealDamage (int Amount, Controller Healer, class<DamageTypeDamageType)

The reverse of TakeDamage(); heals the specified amount

Parameters:

  • Amount - The amount of damage to heal
  • Healer - Who is doing the healing
  • DamageType - What type of healing is it

HitWall

event HitWall (Object.Vector HitNormal, Actor Wall, PrimitiveComponent WallComp)

If bCollideWorld is on, this event function gets called by the engine, letting the object know the normal to the collision plane between the level polygon and the object (the HitNormal points towards the object), as well as an Actor reference, which would let you know a couple things - if HitWall == WorldInfo, you've hit normal level geometry.

InterpolationChanged

simulated event InterpolationChanged (SeqAct_Interp InterpAction)

called when a SeqAct_Interp action affecting this Actor received an event that changed its properties (paused, reversed direction, etc)

Parameters:

  • InterpAction - the SeqAct_Interp that is affecting the Actor

Note: this function is called on clients for actors that are interpolated clientside via MatineeActor

InterpolationFinished

simulated event InterpolationFinished (SeqAct_Interp InterpAction)

called when a SeqAct_Interp action finished interpolating this Actor

Parameters:

  • InterpAction - the SeqAct_Interp that was affecting the Actor

Note: this function is called on clients for actors that are interpolated clientside via MatineeActor

InterpolationStarted

simulated event InterpolationStarted (SeqAct_Interp InterpAction)

called when a SeqAct_Interp action starts interpolating this Actor via matinee

Parameters:

  • InterpAction - the SeqAct_Interp that is affecting the Actor

Note: this function is called on clients for actors that are interpolated clientside via MatineeActor

Landed

event Landed (Object.Vector HitNormal, Actor FloorActor)

If the object physics is PHYS_Falling, this event function gets called by the engine when the object lands on level geometry while falling.


Parameters:

  • HitNormal is the surface normal of the level geometry landed on.

LostChild

event LostChild (Actor Other)

Called when one of our child Actors changed it's Owner or was destroyed.


Parameters:

  • Other - The Actor that changed his Owner.

ModifyHearSoundComponent

simulated event ModifyHearSoundComponent (AudioComponent AC)

called when a sound is going to be played on this Actor via PlayerController::ClientHearSound() gives it a chance to modify the component that will be used (add parameter values, etc)

NotifySkelControlBeyondLimit

simulated event NotifySkelControlBeyondLimit (SkelControlLookAt LookAt)


OnAnimEnd

event OnAnimEnd (AnimNodeSequence SeqNode, float PlayedTime, float ExcessTime)

Event called when an AnimNodeSequence (in the animation tree of one of this Actor's SkeletalMeshComponents) reaches the end and stops. Will not get called if bLooping is 'true' on the AnimNodeSequence. bCauseActorAnimEnd must be set 'true' on the AnimNodeSequence for this event to get generated.

Parameters:

  • SeqNode - Node that finished playing. You can get to the SkeletalMeshComponent by looking at SeqNode->SkelComponent
  • PlayedTime - Time played on this animation. (play rate independant).
  • ExcessTime - how much time overlapped beyond end of animation. (play rate independant).

OnAnimPlay

event OnAnimPlay (AnimNodeSequence SeqNode)

Event called when a PlayAnim is called AnimNodeSequence in the animation tree of one of this Actor's SkeletalMeshComponents. bCauseActorAnimPlay must be set 'true' on the AnimNodeSequence for this event to get generated.

Parameters:

  • SeqNode - Node had PlayAnim called. You can get to the SkeletalMeshComponent by looking at SeqNode->SkelComponent

OnRanOver

event OnRanOver (SVehicle Vehicle, PrimitiveComponent RunOverComponent, int WheelIndex)

Called each frame (for each wheel) when an SVehicle has a wheel in contact with this Actor. Not called on Actors that have bWorldGeometry or bStatic set to TRUE.

OnRigidBodySpringOverextension

simulated event OnRigidBodySpringOverextension (RB_BodyInstance BodyInstance)

Notification forwarded from RB_BodyInstance, when a spring is over extended and disabled.

OnSleepRBPhysics

event OnSleepRBPhysics ()

RigidBody went to sleep after being awake - only valid if bCallRigidBodyWakeEvents==TRUE

OnWakeRBPhysics

event OnWakeRBPhysics ()

RigidBody woke up after being stationary - only valid if bCallRigidBodyWakeEvents==TRUE

OutsideWorldBounds

simulated event OutsideWorldBounds ()

called when the Actor is outside the hard limit on world bounds

Note: physics and collision are automatically turned off after calling this function

OverRotated

simulated event bool OverRotated (out Object.Rotator out_Desired, out Object.Rotator out_Actual)

Called by ClampRotation if the rotator was outside of the limits

PhysicsVolumeChange

event PhysicsVolumeChange (PhysicsVolume NewVolume)

Called when an Actor leaves a PhysicsVolume or enters a new one.

Parameters:

  • NewVolume - The PhysicsVolume that we entered now.

PlayActorFaceFXAnim

event bool PlayActorFaceFXAnim (FaceFXAnimSet AnimSet, string GroupName, string SeqName, SoundCue SoundCueToPlay)

Play FaceFX animations on this Actor. Returns TRUE if succeeded, if failed, a log warning will be issued.

PlayParticleEffect

event PlayParticleEffect (const AnimNotify_PlayParticleEffect AnimNotifyData)

Called by AnimNotify_PlayParticleEffect Looks for a socket name first then bone name

Parameters:

  • AnimNotifyData - The AnimNotify_PlayParticleEffect which will have all of the various params on it

PostBeginPlay

event PostBeginPlay ()

Called by the engine pretty soon after the Actor has been spawned or the game has begun.

Most actors use PostBeginPlay() to initialize their UnrealScript values. The actor's PhysicsVolume and Zone are valid but the actor is not yet in any State.

PostDemoRewind

simulated event PostDemoRewind ()

called on all dynamic or net relevant actors after rewinding a demo primarily used to propagate properties to components, since components are ignored for rewinding

PostInitAnimTree

event PostInitAnimTree (SkeletalMeshComponent SkelComp)

called after initializing the AnimTree for the given SkeletalMeshComponent that has this Actor as its Owner this is a good place to cache references to skeletal controllers, etc that the Actor modifies

PostRenderFor

simulated event PostRenderFor (PlayerController PC, Canvas Canvas, Object.Vector CameraPosition, Object.Vector CameraDir)

Script function called by NativePostRenderFor().

PostTouch

event PostTouch (Actor Other)

Called for PendingTouch Actor after physics completes.

PreBeginPlay

event PreBeginPlay ()

One of the very first functions that gets called after the game started.

The Actor's location and rotation has been set, it's PhysicsVolume to the DefaultPhyiscsVolume, the WorldInfo is already referenced, the Instigator and Owner are set if the Actor has been spawned during the game and physics are already initialized.

RanInto

event RanInto (Actor Other)


ReceivedNewEvent

simulated event ReceivedNewEvent (SequenceEvent Evt)

Called by SeqAct_AttachToEvent when a duplicate event is added to this actor at run-time

ReplicatedDataBinding

simulated event ReplicatedDataBinding (name VarName)

Called when a variable is replicated that has the 'databinding' keyword.

Parameters:

  • VarName - the name of the variable that was replicated.

ReplicatedEvent

simulated event ReplicatedEvent (name VarName)

Called whenever a variable is replicated that has the modifier RepNotify.

Parameters:

  • VarName The name of the variable that got replicated. It is recommend to use NameOf whenever possible.

ReplicationEnded

simulated event ReplicationEnded ()

called ONLY for bNoDelete Actors on the client when the server was replicating data on this Actor, but no longer considers it relevant (i.e. the actor channel was destroyed) for !bNoDelete Actors this results in destruction, so cleanup code can be done there, but bNoDelete Actors just keep going with whatever data was last received, so this is their chance to perform any cleanup

Reset

event Reset ()

Reset actor to initial state - used when restarting level without reloading.

RigidBodyCollision

event RigidBodyCollision (PrimitiveComponent HitComponent, PrimitiveComponent OtherComponent, const out CollisionImpactData RigidCollisionData, int ContactIndex)

Called when a PrimitiveComponent this Actor owns has:

   -bNotifyRigidBodyCollision set to true
   -ScriptRigidBodyCollisionThreshold > 0
   -it is involved in a physics collision where the relative velocity exceeds ScriptRigidBodyCollisionThreshold

Parameters:

  • HitComponent - the component of this Actor that collided
  • OtherComponent - the other component that collided
  • RigidCollisionData - information on the collision itslef, including contact points
  • ContactIndex - the element in each ContactInfos' ContactVelocity and PhysMaterial arrays that corresponds to this Actor/HitComponent

RootMotionExtracted

simulated event RootMotionExtracted (SkeletalMeshComponent SkelComp, out Object.BoneAtom ExtractedRootMotionDelta)

Notification called after root motion has been extracted, and before it's been used. This notification can be used to alter extracted root motion before it is forwarded to physics. It is only called when bRootMotionExtractedNotify is TRUE on the SkeletalMeshComponent.

Note: It is fairly slow in Script, so enable only when really needed.

RootMotionModeChanged

simulated event RootMotionModeChanged (SkeletalMeshComponent SkelComp)

Notification that root motion mode changed. Called only from SkelMeshComponents that have bRootMotionModeChangeNotify set. This is useful for synchronizing movements. For intance, when using RMM_Translate, and the event is called, we know that root motion will kick in on next frame. It is possible to kill in-game physics, and then use root motion seemlessly.

ScriptGetTeamNum

simulated event byte ScriptGetTeamNum ()

Returns 255 in it's default implementation. This gets called by the default implementation of GetTeamNum().

SetAnimPosition

event SetAnimPosition (name SlotName, int ChannelIndex, name InAnimSeqName, float InPosition, bool bFireNotifies, bool bLooping)

Called each from while the Matinee action is running, with the desired sequence name and position we want to be at.

SetInitialState

simulated event SetInitialState ()

Called directly after PostBeginPlay().

At this point the actor is concidered "initialized" by the engine (bScriptInitialized is set to True in this event) and the actor's initial state is set. If the InitialState property is set, it will be used, otherwise the actor goes to its auto state. Since SetInitialState() is a simulated function by default this happens on server and clients.

This event uses GotoState to change the state, so during its executing the initial state's BeginState() event is called. The state's state code will however not yet start executing at this point. This will happen after all the events described on this page have finished doing their work.

SetMorphWeight

event SetMorphWeight (name MorphNodeName, float MorphWeight)

Called each frame by Matinee to update the weight of a particular MorphNodeWeight.

SetSkelControlScale

event SetSkelControlScale (name SkelControlName, float Scale)

Called each frame by Matinee to update the scaling on a SkelControl.

ShutDown

simulated event ShutDown ()

ShutDown an actor.

SpawnedByKismet

event SpawnedByKismet ()

called when this Actor was spawned by a Kismet actor factory (SeqAct_ActorFactory) after all other spawn events (PostBeginPlay(), etc) have been called

SpecialHandling

event Actor SpecialHandling (Pawn Other)


StopActorFaceFXAnim

event StopActorFaceFXAnim ()

Stop any matinee FaceFX animations on this Actor.

TakeDamage

event TakeDamage (int DamageAmount, Controller EventInstigator, Object.Vector HitLocation, Object.Vector Momentum, class<DamageTypeDamageType, optional TraceHitInfo HitInfo, optional Actor DamageCauser)

apply some amount of damage to this actor

Parameters:

  • DamageAmount - the base damage to apply
  • EventInstigator - the Controller responsible for the damage
  • HitLocation - world location where the hit occurred
  • Momentum - force caused by this hit
  • DamageType - class describing the damage that was done
  • HitInfo - additional info about where the hit occurred
  • DamageCauser - the Actor that directly caused the damage (i.e. the Projectile that exploded, the Weapon that fired, etc)

Tick

event Tick (float DeltaTime)

Called by the engine whenever time passes (i.e. on every frame when the game updates) for all Actors that have bStatic = False.

Parameters:

  • DeltaTime - the time that has passed since the last Tick().

Timer

event Timer ()

Called by the engine after a countdown set by SetTimer() reached 0. The Actor must be bStatic = False in order to get this called.

TornOff

event TornOff ()

Called when the Actor gets torn off by TearOff(). Tearing an Actor off means that it breaks all replication connections so that it is now simulated on each client individually. This was for example used in older engine implementations for the ragdolls, causing them to have different locations on each client.

Touch

event Touch (Actor Other, PrimitiveComponent OtherComp, Object.Vector HitLocation, Object.Vector HitNormal)

If bCollideActors is on, this event function gets called by the engine for both objects. This event function gets called every Tick() that the collision still occurs. When collision happens the first time, there is an array of actors, called Touching[], which is a list of other actors touching this one. Other is put into the array if it isn't already there by native code. Touching[] is defined as const, meaning you cannot manually change any values of the array within UScript.

Touch() gets called by Volumes when a new Actor enters them.

Parameters:

  • Other - The Actor we are touching.

TrailsNotify

event TrailsNotify (const AnimNotify_Trails AnimNotifyData)

Called by AnimNotify_Trails

Parameters:

  • AnimNotifyData - The AnimNotify_Trails which will have all of the various params on it

TrailsNotifyEnd

event TrailsNotifyEnd (const AnimNotify_Trails AnimNotifyData)

Called by AnimNotify_Trails

Parameters:

  • AnimNotifyData - The AnimNotify_Trails which will have all of the various params on it

TrailsNotifyTick

event TrailsNotifyTick (const AnimNotify_Trails AnimNotifyData)

Called by AnimNotify_Trails

Parameters:

  • AnimNotifyData - The AnimNotify_Trails which will have all of the various params on it

UnTouch

event UnTouch (Actor Other)

If bCollideActors is on, this event function gets called by the engine for both objects. This event function is called when colliding objects are no longer colliding (as soon as the collision isn't occuring any more, this even function is called, but only once).

Touch gets called by Volumes when an Actor leaves them.

Parameters:

  • Other - The Actor that is no longer touching us.