My program doesn't have bugs. It just develops random features.

Difference between revisions of "UE3:Actor native functions (UDK)"

From Unreal Wiki, The Unreal Engine Documentation Site
Jump to: navigation, search
(Added some descriptions, need confim on SetBase.)
(ContainsPoint)
 
(One intermediate revision by one other user not shown)
Line 56: Line 56:
 
{{code|native final function [[bool]] '''ContainsPoint''' ({{tl|Vector|Object|structs}} '''Spot''')}}
 
{{code|native final function [[bool]] '''ContainsPoint''' ({{tl|Vector|Object|structs}} '''Spot''')}}
  
<!-- enter function description -->
+
Returns true if the spot is within the collision of any of the actor's PrimitiveComponents.
  
 
====CreateAudioComponent====
 
====CreateAudioComponent====
Line 333: Line 333:
 
{{code|native(298) noexport final function '''SetBase''' ({{cl|Actor}}&nbsp;'''NewBase''', optional&nbsp;{{tl|Vector|Object|structs}}&nbsp;'''NewFloor''', optional&nbsp;{{cl|SkeletalMeshComponent}}&nbsp;'''SkelComp''', optional&nbsp;[[name]]&nbsp;'''AttachName''')}}
 
{{code|native(298) noexport final function '''SetBase''' ({{cl|Actor}}&nbsp;'''NewBase''', optional&nbsp;{{tl|Vector|Object|structs}}&nbsp;'''NewFloor''', optional&nbsp;{{cl|SkeletalMeshComponent}}&nbsp;'''SkelComp''', optional&nbsp;[[name]]&nbsp;'''AttachName''')}}
  
The actor this function is called on will get it's based set to the first parameter of this function. The actor will then copy any relative movement of it's base, i.e. standing on a moving actor will cause your pawn to set it's base to that actor and move you with it, and can be found by the [[Legacy:Iterator#Actor|BasedActors]] iterator.
+
The actor this function is called on will get it's based set to the first parameter of this function. The actor will then copy any relative movement of it's base, i.e. standing on a moving actor will cause your pawn to set it's base to that actor and move you with it, and can be found by the {{tl|BasedActors||Actor}} iterator.
  
 
====SetCollision====
 
====SetCollision====

Latest revision as of 11:03, 13 November 2010

UDK Object >> Actor (native functions)

Contents

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

Native functions[edit]

AttachComponent[edit]

native final function AttachComponent (ActorComponent NewComponent)

Adds a component to the actor's components array, attaching it to the actor.

Parameters:

  • NewComponent - The component to attach.

AutonomousPhysics[edit]

native(3971) final function AutonomousPhysics (float DeltaSeconds)


ChartData[edit]

native final function ChartData (string DataName, float DataValue)

Draw some value over time onto the StatChart. Toggle on and off with

ClampRotation[edit]

simulated final native function bool ClampRotation (out Object.Rotator out_Rot, Object.Rotator rBase, Object.Rotator rUpperLimits, Object.Rotator rLowerLimits)

Clamps out_Rot between the upper and lower limits offset from the base

ClearAllTimers[edit]

native final function ClearAllTimers (optional Object inObj)

Clears all previously set timers

ClearTimer[edit]

native final function ClearTimer (optional name inTimerFunc, optional Object inObj)

Clears a previously set timer, identical to calling SetTimer() with a <= 0.f rate.

Parameters:

  • inTimerFunc - the name of the timer to remove or the default one if not specified

Clock[edit]

native final function Clock (out float time)


ConsoleCommand[edit]

native function string ConsoleCommand (string Command, optional bool bWriteToLog)

Execute a console command in the context of the current level and game engine.

ContainsPoint[edit]

native final function bool ContainsPoint (Object.Vector Spot)

Returns true if the spot is within the collision of any of the actor's PrimitiveComponents.

CreateAudioComponent[edit]

native final function AudioComponent CreateAudioComponent (SoundCue InSoundCue, optional bool bPlay, optional bool bStopWhenOwnerDestroyed, optional bool bUseLocation, optional Object.Vector SourceLocation, optional bool bAttachToSelf)

Create an audio component. May fail and return None if sound is disabled, there are too many sounds playing, or if the Location is out of range of all listeners.

Destroy[edit]

native(279) final noexport function bool Destroy ()

Deletes the object that this function is called on (unless bNoDelete is true), so there is no reference to it anymore. Before the object is completely destroyed, it will get it's Destroyed()-event called, giving it the chance to execute a last piece of code.

The function returns true if the actor was destroyed successfully, false if it's indestructible. Destruction happens at the end of a tick.

DetachComponent[edit]

native final function DetachComponent (ActorComponent ExComponent)

Removes a component from the actor's components array, detaching it from the actor.

Parameters:

  • ExComponent - The component to detach.

FastTrace[edit]

native(548) noexport final function bool FastTrace (Object.Vector TraceEnd, optional Object.Vector TraceStart, optional Object.Vector BoxExtent, optional bool bTraceBullet)

Returns true if a trace from the TraceStart to the TraceEnd (with an optional extent) did not hit any world geometry. World geometry is BSP and all actors that have bWorldGeometry set to true (StaticMeshes by default).

FindBase[edit]

native function FindBase ()

Attempts to find a valid base for this actor

FindSpot[edit]

native final function bool FindSpot (Object.Vector BoxExtent, out Object.Vector SpotLocation)

Tries to position a box to avoid overlapping world geometry. If no overlap, the box is placed at SpotLocation, otherwise the position is adjusted. Return true if successful in finding a valid non-world geometry overlapping location.

Parameters:

  • Parameter BoxExtent is the collision extent (X and Y=CollisionRadius, Z=CollisionHeight)
  • Parameter SpotLocation is the position where the box should be placed. Contains the adjusted location if it is adjusted.

fixedTurn[edit]

native final function int fixedTurn (int Current, int Desired, int DeltaRate)

Returns a new rotation component value

Parameters:

  • Current - is the current rotation value
  • Desired - is the desired rotation value
  • DeltaRate - is the rotation amount to apply

ForceUpdateComponents[edit]

native function ForceUpdateComponents (optional bool bCollisionUpdate, optional bool bTransformOnly)


GetALocalPlayerController[edit]

native final function PlayerController GetALocalPlayerController ()

Return first found LocalPlayerController. Fine for single player, in split screen, one will be picked.

GetAvoidanceVector[edit]

final native function Object.Vector GetAvoidanceVector (const out array<ActorObstacles, Object.Vector GoalLocation, float CollisionRadius, float MaxSpeed, optional int NumSamples, optional float VelocityStepRate, optional float MaxTimeTilOverlap)

Calculates a direction (unit vector) to avoid all actors contained in Obstacles list, assuming each entry in Obstacles is also avoiding this actor. Based loosely on RVO as described in http://gamma.cs.unc.edu/RVO/icra2008.pdf .

GetBaseMost[edit]

native function Actor GetBaseMost ()

Walks up the Base chain from this Actor and returns the Actor at the top (the eventual Base). this->Base is NULL, returns this.

GetBoundingCylinder[edit]

native function GetBoundingCylinder (out float CollisionRadius, out float CollisionHeight) const


GetComponentsBoundingBox[edit]

native final function GetComponentsBoundingBox (out Object.Box ActorBox) const


GetDestination[edit]

native final virtual function Object.Vector GetDestination (Controller C)

returns the position the AI should move toward to reach this actor accounts for AI using path lanes, cutting corners, and other special adjustments

GetGravityZ[edit]

native function float GetGravityZ ()

Get gravity currently affecting this actor

GetTargetLocation[edit]

simulated native function Object.Vector GetTargetLocation (optional Actor RequestedBy, optional bool bRequestAlternateLoc) const

Parameters:

  • RequestedBy - the Actor requesting the target location
  • bRequestAlternateLoc - optional) - return a secondary target location if there are multiple

Returns:

the optimal location to fire weapons at this actor

GetTeamNum[edit]

simulated native function byte GetTeamNum ()

Returns the TeamNumber of the actor it is called on. In UT does that mean: 0 is red, 1 is blue, 255 is neutral/none.

GetTerminalVelocity[edit]

native function float GetTerminalVelocity ()

returns terminal velocity (max speed while falling) for this actor. Unless overridden, it returns the TerminalVelocity of the PhysicsVolume in which this actor is located.

GetTimerCount[edit]

native final function float GetTimerCount (optional name inTimerFunc, optional Object inObj)

Gets the current count for the specified timer, defaults to 'Timer' if no function is specified. Returns -1.f if the timer is not currently active.

Parameters:

  • inTimerFunc - the name of the timer to remove or the default one if not specified

GetTimerRate[edit]

native final function float GetTimerRate (optional name TimerFuncName, optional Object inObj)

Gets the current rate for the specified timer.

Parameters:

  • TimerFuncName - the name of the function to check for a timer for; 'Timer' is the default

Returns:

the rate for the given timer, or -1.f if that timer is not active

Note: GetTimerRate('SomeTimer') - GetTimerCount('SomeTimer') is the time remaining before 'SomeTimer' is called

GetURLMap[edit]

native(547) final function string GetURLMap ()

Disk access. Find files.

IsBasedOn[edit]

native noexport final function bool IsBasedOn (Actor TestActor)

iterates up the Base chain to see whether or not this Actor is based on the given Actor

Parameters:

  • TestActor - the Actor to test for

Returns:

whether or not this Actor is based on TestActor

IsInPersistentLevel[edit]

native final function bool IsInPersistentLevel () const

whether this Actor is in the persistent level, i.e. not a sublevel

IsOverlapping[edit]

native noexport final function bool IsOverlapping (Actor A)


IsOwnedBy[edit]

native noexport final function bool IsOwnedBy (Actor TestActor)

iterates up the Owner chain to see whether or not this Actor is owned by the given Actor

Parameters:

  • TestActor - the Actor to test for

Returns:

whether or not this Actor is owned by TestActor

IsPlayerOwned[edit]

native simulated function bool IsPlayerOwned ()

Searches the owner chain looking for a player.

IsTimerActive[edit]

native final function bool IsTimerActive (optional name inTimerFunc, optional Object inObj)

Returns true if the specified timer is active, defaults to 'Timer' if no function is specified.

Parameters:

  • inTimerFunc - the name of the timer to remove or the default one if not specified

MakeNoise[edit]

native(512) final function MakeNoise (float Loudness, optional name NoiseType)

This does not play a sound that the player could hear but instead it does notify the AI, causing a Controller to get it's event HearNoise(float Loudness, Actor NoiseMaker, optional Name NoiseType) called. Senders of MakeNoise should have an instigator if they are not pawns.

ModifyTimerTimeDilation[edit]

native final function ModifyTimerTimeDilation (const name TimerName, const float InTimerTimeDilation, optional Object inObj)

This will search the Timers on this actor and set the passed in TimerTimeDilation *

Move[edit]

native(266) final function bool Move (Object.Vector Delta)

Move tries to move the actor by a movement vector. If the actor has no attachments and bCollideActors and bCollideWorld are both false, this function just does a Location+=Delta, which is very-very fast. Move assumes that the actor's Location is valid and that the actor fits in its current Location. If bCollideWorld is true, Move checks collision with the world. Then, for every actor-actor collision pair, this function performs the following checks:

  • If both actors have bCollideActors and bBlocksActors, performs collision rebound, and dispatches Touch messages to touched-and-rebounded actors.
  • If both actors have bCollideActors but either one doesn't have bBlocksActors, checks collision with other actors (but lets this actor interpenetrate), and dispatches Touch and UnTouch messages.

This means that if the actor is in front of a trigger (not touching the trigger), and Move is called such the actor's new location will be on the other side of the trigger (not touching the trigger), the trigger will still be called. This is not the case with SetLocation.

This function returns true if some movement occurred and false if no movement occurred. Move also updates actor's PhysicsVolume.

MoveSmooth[edit]

native(3969) noexport final function bool MoveSmooth (Object.Vector Delta)

Very similar to the Move() function but when you hit something while moving, this function keeps the actor moving as best it can by sliding the actor along a wall, or going up steps, or however it might be possible for the actor to move.

MovingWhichWay[edit]

native function EMoveDir MovingWhichWay (out float Amount)

This will return the direction in LocalSpace that that actor is moving. This is useful for firing off effects based on which way the actor is moving. *

NativePostRenderFor[edit]

simulated native function NativePostRenderFor (PlayerController PC, Canvas Canvas, Object.Vector CameraPosition, Object.Vector CameraDir)

Hook to allow actors to render HUD overlays for themselves. Assumes that appropriate font has already been set

PauseTimer[edit]

native final function PauseTimer (bool bPause, optional name inTimerFunc, optional Object inObj)

Pauses/Unpauses a previously set timer

Parameters:

  • bPause - whether to pause/unpause the timer
  • inTimerFunc - the name of the timer to pause or the default one if not specified
  • inObj - object timer is attached to

PlayerCanSeeMe[edit]

native(532) final function bool PlayerCanSeeMe ()

Returns true if any player (server) or the local player (standalone or client) has a line of sight to actor's location

PlaySound[edit]

native noexport final function PlaySound (SoundCue InSoundCue, optional bool bNotReplicated, optional bool bNoRepToOwner, optional bool bStopWhenOwnerDestroyed, optional Object.Vector SoundLocation, optional bool bNoRepToRelevant)

Play a sound. Creates an AudioComponent only if the sound is determined to be audible, and replicates the sound to clients based on optional flags

PointCheckComponent[edit]

native noexport final function bool PointCheckComponent (PrimitiveComponent InComponent, Object.Vector PointLocation, Object.Vector PointExtent)

Run a point check against just this PrimitiveComponent. Return TRUE if we hit.

NOTE: the actual Actor we call this on is irrelevant!

PrestreamTextures[edit]

native function PrestreamTextures (float Seconds, bool bEnableStreaming)

Calls PrestreamTextures() for all the actor's meshcomponents.

Parameters:

  • Seconds - Number of seconds to force all mip-levels to be resident
  • bEnableStreaming - Whether to start (TRUE) or stop (FALSE) streaming

ReattachComponent[edit]

native final function ReattachComponent (ActorComponent ComponentToReattach)

Detaches and immediately reattaches specified component. Handles bWillReattach properly.

ResetTimerTimeDilation[edit]

native final function ResetTimerTimeDilation (const name TimerName, optional Object inObj)

This will search the Timers on this actor and reset the TimerTimeDilation to 1.0f *

SetBase[edit]

native(298) noexport final function SetBase (Actor NewBase, optional Object.Vector NewFloor, optional SkeletalMeshComponent SkelComp, optional name AttachName)

The actor this function is called on will get it's based set to the first parameter of this function. The actor will then copy any relative movement of it's base, i.e. standing on a moving actor will cause your pawn to set it's base to that actor and move you with it, and can be found by the BasedActors iterator.

SetCollision[edit]

native(262) final noexport function SetCollision (optional bool bNewColActors, optional bool bNewBlockActors, optional bool bNewIgnoreEncroachers)

Allows to change the actor's collision behaviour to the new parameters.

Parameters:

  • bNewColActors - The value to assign to bCollideActors. If this is false, no collision will take place at all.
  • bNewBlockActors - The value to assign to bBlockActors. If this is true, other actors can't move into this actor's collision geometry.
  • bNewIgnoreEncroachers - The value to assign to bIgnoreEncroachers.

SetCollisionSize[edit]

native(283) final function SetCollisionSize (float NewRadius, float NewHeight)

Allows to change the actor's collision cylinder size.

Parameters:

  • bNewRadius - The value to assign to CollisionRadius.
  • bNewHeight - The value to assign to CollisionHeight.

SetCollisionType[edit]

native final function SetCollisionType (ECollisionType NewCollisionType)

Allows to change with what kind of collision this actor collides.

SetDrawScale[edit]

native final function SetDrawScale (float NewScale)

Allows to change the uniform DrawScale multiplier of the actor.

SetDrawScale3D[edit]

native final function SetDrawScale3D (Object.Vector NewScale3D)

Allows to change the DrawScale multiplier for each relative axis of the actor individually.

SetForcedInitialReplicatedProperty[edit]

native final function SetForcedInitialReplicatedProperty (Property PropToReplicate, bool bAdd)

adds/removes a property from a list of properties that will always be replicated when this Actor is bNetInitial, even if the code thinks the client has the same value the server already does This is a workaround to the problem where an LD places an Actor in the level, changes a replicated variable away from the defaults, then at runtime the variable is changed back to the default but it doesn't replicate because initial replication is based on class defaults Only has an effect when called on bStatic or bNoDelete Actors Only properties already in the owning class's replication block may be specified

Parameters:

  • PropToReplicate - the property to add or remove to the list
  • bAdd - true to add the property, false to remove the property

SetHardAttach[edit]

native final function noexport SetHardAttach (optional bool bNewHardAttach)

Sets the hard attach flag by first handling the case of already being based upon another actor

SetHidden[edit]

native final function SetHidden (bool bNewHidden)

Changes the value of bHidden.

Parameters:

  • bNewHidden - The value to assign to bHidden.

SetHUDLocation[edit]

simulated native function SetHUDLocation (Object.Vector NewHUDLocation)

function used to update where icon for this actor should be rendered on the HUD

Parameters:

  • NewHUDLocation - is a vector whose X and Y components are the X and Y components of this actor's icon's 2D position on the HUD

SetLocation[edit]

native(267) final function bool SetLocation (Object.Vector NewLocation)

Moves the actor directly to the new location, i.e. teleporting him directly to that point without smooth moving.

SetNetUpdateTime[edit]

final native function SetNetUpdateTime (float NewUpdateTime)

Updates NetUpdateTime to the new value for future net relevancy checks

SetOnlyOwnerSee[edit]

native final function SetOnlyOwnerSee (bool bNewOnlyOwnerSee)

changes the value of bOnlyOwnerSee

Parameters:

  • bNewOnlyOwnerSee - the new value to assign to bOnlyOwnerSee

SetOwner[edit]

native(272) final function SetOwner (Actor NewOwner)

Sets this actor's Owner to the new one. This is also done when an Owner is specified as parameter during the actor's spawning.

The new Owner's GainedChild()-event is called upon this.

SetPhysics[edit]

native(3970) noexport final function SetPhysics (EPhysics newPhysics)

Parameters:

  • newPhysics - the new value to assign to this actor's Physics.

SetRelativeLocation[edit]

native final function bool SetRelativeLocation (Object.Vector NewLocation)

Moves the actor relative to it's current location by this vector.

SetRelativeRotation[edit]

native final function bool SetRelativeRotation (Object.Rotator NewRotation)

Rotates the actor relative to it's current rotation by this rotator.

SetRotation[edit]

native(299) final function bool SetRotation (Object.Rotator NewRotation)

Rotates the actor directly to the new rotation, without taking the current rotation into account. This will happen immediately, without any interpolation.

SetTickGroup[edit]

native final function SetTickGroup (Object.ETickingGroup NewTickGroup)

Changes the ticking group for this actor

SetTickIsDisabled[edit]

native final function SetTickIsDisabled (bool bInDisabled)

turns on or off this Actor's desire to be ticked (bTickIsDisabled) because this is implemented as a separate tickable list, calls to this function to disable ticking will not take effect until the end of the current list to avoid shuffling elements around while they are being iterated over

SetTimer[edit]

native(280) final function SetTimer (float InRate, optional bool inbLoop, optional name inTimerFunc, optional Object inObj)

Sets a timer to call the given function at a set interval. Defaults to calling the 'Timer' event if no function is specified. If InRate is set to 0.f it will effectively disable the previous timer.

NOTE: Functions with parameters are not supported!

Parameters:

  • InRate - the amount of time to pass between firing
  • inbLoop - whether to keep firing or only fire once
  • inTimerFunc - the name of the function to call when the timer fires

SetZone[edit]

native final noexport function SetZone (bool bForceRefresh)

updates the zone/PhysicsVolume of this Actor

Parameters:

  • bForceRefresh - forces the code to do a full collision check instead of exiting early if the current info is valid

Spawn[edit]

native noexport final function coerce Actor Spawn (class<ActorSpawnClass, optional Actor SpawnOwner, optional name SpawnTag, optional Object.Vector SpawnLocation, optional Object.Rotator SpawnRotation, optional Actor ActorTemplate, optional bool bNoCollisionFail)

Spawn an actor. Returns an actor of the specified class, not of class Actor (this is hardcoded in the compiler). Returns None if the actor could not be spawned (if that happens, there will be a log warning indicating why) Defaults to spawning at the spawner's location.

Note: ActorTemplate is sent for replicated actors and therefore its properties will also be applied at initial creation on the client. However, because of this, ActorTemplate must be a static resource (an actor archetype, default object, or a bStatic/bNoDelete actor in a level package) or the spawned Actor cannot be replicated

SuggestTossVelocity[edit]

native noexport final function bool SuggestTossVelocity (out Object.Vector TossVelocity, Object.Vector Destination, Object.Vector Start, float TossSpeed, optional float BaseTossZ, optional float DesiredZPct, optional Object.Vector CollisionSize, optional float TerminalVelocity, optional float OverrideGravityZ, optional bool bOnlyTraceUp)

Returns true if a successful toss from Start to Destination was found, and returns the suggested toss velocity in TossVelocity.

Parameters:

  • TossSpeed - the magnitude of the toss
  • BaseTossZ - an additional Z direction force added to the toss. (defaults to 0)
  • DesiredZPct - the requested pct of the toss in the z direction (0=toss horizontally, 0.5 = toss at 45 degrees, defaults to 0.05). This is the starting point for finding a toss. The purpose of this is to bias the test in cases where there is more than one solution. (Which is usually the case if the target is well within range.)
  • CollisionSize - the size of bunding box of the tossed actor (defaults to (0,0,0)

SupportsKismetModification[edit]

native final virtual function bool SupportsKismetModification (SequenceOp AskingOp, out string Reason) const

whether this Actor can be modified by Kismet actions primarily used by error checking to warn LDs when their Kismet may not apply changes correctly (especially on clients)

Parameters:

  • AskingOp - Kismet operation to which this Actor is linked
  • Reason - out) - If this function returns false, contains the reason why the Kismet action is not allowed to execute on this Actor

Returns:

whether the AskingOp can correctly modify this Actor

Trace[edit]

native(277) noexport final function Actor Trace (out Object.Vector HitLocation, out Object.Vector HitNormal, Object.Vector TraceEnd, optional Object.Vector TraceStart, optional bool bTraceActors, optional Object.Vector Extent, optional out TraceHitInfo HitInfo, optional int ExtraTraceFlags)

Trace a line and see what it collides with first. Takes this actor's collision properties into account. Returns first hit actor, Level if hit level, or None if hit nothing.

TraceAllPhysicsAssetInteractions[edit]

native noexport final function bool TraceAllPhysicsAssetInteractions (SkeletalMeshComponent SkelMeshComp, Object.Vector EndTrace, Object.Vector StartTrace, out array<ImpactInfoout_Hits, optional Object.Vector Extent)


TraceComponent[edit]

native noexport final function bool TraceComponent (out Object.Vector HitLocation, out Object.Vector HitNormal, PrimitiveComponent InComponent, Object.Vector TraceEnd, optional Object.Vector TraceStart, optional Object.Vector Extent, optional out TraceHitInfo HitInfo, optional bool bComplexCollision)

Run a line check against just this PrimitiveComponent. Return TRUE if we hit.

NOTE: the actual Actor we call this on is irrelevant!

UnClock[edit]

native final function UnClock (out float time)


WillOverlap[edit]

final native function bool WillOverlap (Object.Vector PosA, Object.Vector VelA, Object.Vector PosB, Object.Vector VelB, float StepSize, float Radius, out float Time)

Steps from each position given the respective velocities performing simple radius checks