I search for solutions in this order: Past Code, Unreal Source, Wiki, BUF, groups.yahoo, google, screaming at monitor. – RegularX

UE3:UTWeap_LinkGun (UDK)

From Unreal Wiki, The Unreal Engine Documentation Site
Jump to: navigation, search
UDK Object >> Actor >> Inventory >> Weapon >> GameWeapon >> UTWeapon >> UTBeamWeapon >> UTWeap_LinkGun

Contents

Package: 
UTGame
This class in other games:
UT3


Properties[edit]

bAutoCharge[edit]

Type: bool

whether link gun should auto-recharge

Default value: True

bBeamHit[edit]

Type: bool

true if beam currently hitting target

BeamAmmoUsePerSecond[edit]

Type: float

beam ammo consumption (per second)

Default value: 8.5

BeamAttachActor[edit]

Type: Actor

Actor to which beam is being attached

BeamAttachLocation[edit]

Type: Object.Vector

Where beam that isn't hitting a target is currently attached

BeamAttachNormal[edit]

Type: Object.Vector

Normal for beam attachment

BeamEndpointEffect[edit]

Type: UTEmitter


BeamLight[edit]

Type: UTLinkBeamLight


bFullPower[edit]

Type: bool

Modifiers: repnotify

True if have picked up link booster

EndAltFireSound[edit]

Type: SoundCue


Default value: SoundCue'A_Weapon_Link.Cue.A_Weapon_Link_AltFireStopCue'

HighPowerMuzzleFlashTemplate[edit]

Type: ParticleSystem


Default value: ParticleSystem'WP_LinkGun.Effects.P_FX_LinkGun_MF_Beam_Gold'

LastBeamAttachTime[edit]

Type: float

Last time new beam attachment location was calculated

LastFireTime[edit]

Type: float

timeseconds when last fired

LinkAttachmentClass[edit]

Type: class<UTAttachment_LinkGun>

cached cast of attachment class for calling coloring functions

LinkBreakDelay[edit]

Type: float

Holds the amount of time to maintain the link before breaking it. This is important so that you can pass through small objects without having to worry about regaining the link

Default value: 0.5

LinkedComponent[edit]

Type: PrimitiveComponent

Holds the component we hit on the linked actor, for determining the linked beam endpoint on multi-component actors (such as Onslaught powernodes)

LinkedList[edit]

Type: array<UTWeap_LinkGun>

Holds the list of link guns linked to this weapon

LinkedTo[edit]

Type: Actor

Holds the actor that this weapon is linked to.

LinkFlexibility[edit]

Type: float

Holds the amount of flexibility of the link beam

Default value: 0.64

LinkStrength[edit]

Type: int

Modifiers: repnotify

Holds the current strength (in #s) of the link

Default value: 1

MinimumDamage[edit]

Type: float

minimum SavedDamage before we actually apply it (needs to be large enough to counter any scaling factors that might reduce to below 1)

Default value: 5.0

MomentumTransfer[edit]

Type: float

Momentum transfer for link beam (per second)

Default value: 50000.0

PartialAmmo[edit]

Type: float

Saved partial ammo consumption

PartialCharge[edit]

Type: float

partial (less than 1) ammo charge

PoweredUpEffect[edit]

Type: ParticleSystemComponent

activated whenever we're linked to other players (LinkStrength > 1)

Default value: ParticleSystemComponent'PoweredUpComponent'

PoweredUpEffectSocket[edit]

Type: name

socket to attach PoweredUpEffect to on our mesh

Default value: 'PowerEffectSocket'

ReaccquireTimer[edit]

Type: float

This is a time used with LinkBrekaDelay above

RechargeRate[edit]

Type: float

recharge rate in ammo per second

Default value: 1.0

SavedAmmoUse[edit]

Type: float

saved partial ammo use

SavedDamage[edit]

Type: float

saved partial damage (in case of high frame rate

StartAltFireSound[edit]

Type: SoundCue


Default value: SoundCue'A_Weapon_Link.Cue.A_Weapon_Link_AltFireStartCue'

TeamMuzzleFlashTemplates[edit]

Type: ParticleSystem

Array size: 3


Default value, index 0: ParticleSystem'WP_LinkGun.Effects.P_FX_LinkGun_MF_Beam_Red'

Default value, index 1: ParticleSystem'WP_LinkGun.Effects.P_FX_LinkGun_MF_Beam_Blue'

Default value, index 2: ParticleSystem'WP_LinkGun.Effects.P_FX_LinkGun_MF_Beam'

Victim[edit]

Type: Actor

Holds the Actor currently being hit by the beam

WeaponLinkDistance[edit]

Type: float

players holding link guns within this distance of each other automatically link up

Default value: 160.0

WeaponMaterialInstance[edit]

Type: MaterialInstanceConstant


Default values[edit]

Property Value
AIRating 0.3
AmmoCount 100
AttachmentClass Class'UTGame.UTAttachment_LinkGun'
BeamFireAnim[1] 'WeaponAltFire'
BeamPostFireAnim[1] 'WeaponAltFireEnd'
BeamPreFireAnim[1] 'WeaponAltFireStart'
BeamSockets[1] 'MuzzleFlashSocket02'
BeamTemplate[1] ParticleSystem'WP_LinkGun.Effects.P_WP_Linkgun_Altbeam'
BeamWeaponFireWaveForm ForceFeedbackWaveform'UTGame.Default__UTWeap_LinkGun:BeamForceFeedbackWaveform1'
bFastRepeater True
bMuzzleFlashPSCLoops True
bShowAltMuzzlePSCWhenWeaponHidden True
bTargetAdhesionEnabled True
bTargetFrictionEnabled True
CrossHairCoordinates
Member Value
U 384.0
V 0.0
CurrentRating 0.3
EndPointParamName 'LinkBeamEnd'
FireInterval[0] 0.24
FireInterval[1] 0.35
FireOffset
Member Value
X 12.0
Y 10.0
Z -10.0
FiringStatesArray[1] 'WeaponBeamFiring'
GroupWeight 0.5
IconCoordinates
Member Value
U 453.0
UL 147.0
V 467.0
VL 41.0
IconHeight 36
IconWidth 40
IconX 412
IconY 82
InstantHitDamage[1] 100.0
InstantHitDamageTypes[1] Class'UTGame.UTDmgType_LinkBeam'
InventoryGroup 1
ItemName "Link Gun"
LockerAmmoCount 100
LockerRotation
Member Value
Pitch 0
Roll -16384
Yaw 0
MaxAmmoCount 100
MaxDesireability 0.7
MuzzleFlashAltPSCTemplate ParticleSystem'WP_LinkGun.Effects.P_FX_LinkGun_MF_Beam'
MuzzleFlashColor
Member Value
A 255
B 120
G 255
R 120
MuzzleFlashLightClass Class'UTGame.UTLinkGunMuzzleFlashLight'
MuzzleFlashPSCTemplate ParticleSystem'WP_LinkGun.Effects.P_FX_LinkGun_MF_Primary'
PickupMessage "Link Gun"
PickupSound SoundCue'A_Pickups.Weapons.Cue.A_Pickup_Weapons_Link_Cue'
PlayerViewOffset
Member Value
X 16.0
Y -18.0
Z -18.0
Priority 2.0
QuickPickGroup 5
QuickPickWeight 0.8
WeaponColor
Member Value
A 255
B 0
G 255
R 255
WeaponEquipSnd SoundCue'A_Weapon_Link.Cue.A_Weapon_Link_RaiseCue'
WeaponFireSnd[0] SoundCue'A_Weapon_Link.Cue.A_Weapon_Link_FireCue'
WeaponFireSnd[1] SoundCue'A_Weapon_Link.Cue.A_Weapon_Link_AltFireCue'
WeaponFireTypes[0] EWFT_Projectile
WeaponFireWaveForm ForceFeedbackWaveform'UTGame.Default__UTWeap_LinkGun:ForceFeedbackWaveformShooting1'
WeaponProjectiles[0] Class'UTGame.UTProj_LinkPlasma'
WeaponPutDownSnd SoundCue'A_Weapon_Link.Cue.A_Weapon_Link_LowerCue'
WeaponRange 500.0

Subobjects[edit]

FirstPersonMesh[edit]

Class: UTGame.UTSkeletalMeshComponent

Inherits from: UTBeamWeapon.FirstPersonMesh

Property Value
Animations AnimNodeSequence'UTGame.Default__UTWeap_LinkGun:MeshSequenceA'
AnimSets[0] AnimSet'WP_LinkGun.Anims.K_WP_LinkGun_1P_Base'
FOV 60.0
ReplacementPrimitive None
Scale 0.9
SkeletalMesh SkeletalMesh'WP_LinkGun.Mesh.SK_WP_Linkgun_1P'

PickupMesh[edit]

Class: Engine.SkeletalMeshComponent

Inherits from: UTBeamWeapon.PickupMesh

Property Value
ReplacementPrimitive None
SkeletalMesh SkeletalMesh'WP_LinkGun.Mesh.SK_WP_LinkGun_3P'

PoweredUpComponent[edit]

Class: Engine.ParticleSystemComponent

Property Value
bAutoActivate False
DepthPriorityGroup SDPG_Foreground
ReplacementPrimitive None
Template ParticleSystem'WP_LinkGun.Effects.P_WP_Linkgun_PoweredUp'

Functions[edit]

Events[edit]

Destroyed[edit]

simulated event Destroyed ()

Overrides: UTWeapon.Destroyed

When destroyed, make sure we clean ourselves from any chains

PostBeginPlay[edit]

simulated event PostBeginPlay ()

Overrides: UTWeapon.PostBeginPlay

Initialize the weapon

ReplicatedEvent[edit]

simulated event ReplicatedEvent (name VarName)

Overrides: UTWeapon.ReplicatedEvent


Other instance functions[edit]

AttachWeaponTo[edit]

simulated function AttachWeaponTo (SkeletalMeshComponent MeshCpnt, optional name SocketName)

Overrides: UTWeapon.AttachWeaponTo

(Description copied from UTWeapon.AttachWeaponTo)
Attach Weapon Mesh, Weapon MuzzleFlash and Muzzle Flash Dynamic Light to a SkeletalMesh

Parameters:

  • who - is the pawn to attach to

AttemptLinkTo[edit]

function AttemptLinkTo (Actor Who, PrimitiveComponent HitComponent)

This function looks at how the beam is hitting and determines if this person is linkable

BestMode[edit]

function byte BestMode ()

Overrides: UTWeapon.BestMode

BestMode() choose between regular or alt-fire

BoostPower[edit]

simulated function BoostPower ()

Increase weapon power (after picking up Link Booster)

CalcLinkStrength[edit]

function CalcLinkStrength ()

this function figures out the strength of this link

CanHeal[edit]

function bool CanHeal (Actor Other)

Overrides: UTWeapon.CanHeal

CanHeal() used by bot AI should return true if this weapon is able to heal Other

ChangeVisibility[edit]

simulated function ChangeVisibility (bool bIsVisible)

Overrides: UTWeapon.ChangeVisibility

This function is called from the pawn when the visibility of the weapon changes

ConsumeAmmo[edit]

function ConsumeAmmo (byte FireModeNum)

Overrides: UTWeapon.ConsumeAmmo

Consumes some of the ammo

ConsumeBeamAmmo[edit]

function ConsumeBeamAmmo (float Amount)

ConsumeBeamAmmo() consume beam ammo per tick.

DenyPickupQuery[edit]

function bool DenyPickupQuery (class<InventoryItemClass, Actor Pickup)

Overrides: UTWeapon.DenyPickupQuery

Detect that we are trying to pickup another link gun and switch to full power

DrawWeaponCrosshair[edit]

simulated function DrawWeaponCrosshair (HUD HUD)

Overrides: UTWeapon.DrawWeaponCrosshair

Draw the Crosshairs

FindLinkedWeapons[edit]

function FindLinkedWeapons ()

checks for nearby friendly link gun users and links to them

FocusOnLeader[edit]

function bool FocusOnLeader (bool bLeaderFiring)

Overrides: Weapon.FocusOnLeader


GetAIRating[edit]

function float GetAIRating ()

Overrides: Weapon.GetAIRating

AI interface

GetLinkedToLocation[edit]

simulated function Object.Vector GetLinkedToLocation ()

Returns a vector that specifics the point of linking.

GetLinkedWeapons[edit]

function GetLinkedWeapons (out array<UTWeap_LinkGunLinkedWeapons)

gets a list of the entire link chain

GetOptimalRangeFor[edit]

function float GetOptimalRangeFor (Actor Target)

Overrides: UTWeapon.GetOptimalRangeFor

used by bot AI to get the optimal range for shooting Target can be called on friendly Targets if trying to heal it

GetProjectileClass[edit]

function class<ProjectileGetProjectileClass ()

Overrides: Weapon.GetProjectileClass

Returns the type of projectile to spawn. We use a function so subclasses can override it if needed (case in point, homing rockets).

GetTeamMuzzleFlashTemplate[edit]

simulated function ParticleSystem GetTeamMuzzleFlashTemplate (byte TeamNum)


KillBeamEmitter[edit]

simulated function KillBeamEmitter ()

Overrides: UTBeamWeapon.KillBeamEmitter


KillEndpointEffect[edit]

simulated function KillEndpointEffect ()

deactivates the beam endpoint effect, if present

ProcessBeamHit[edit]

simulated function ProcessBeamHit (Object.Vector StartTrace, Object.Vector AimDir, out Actor.ImpactInfo TestImpact, float DeltaTime)

Overrides: UTBeamWeapon.ProcessBeamHit

Process the hit info

SetBeamEmitterHidden[edit]

simulated function SetBeamEmitterHidden (bool bHide)

Overrides: UTBeamWeapon.SetBeamEmitterHidden


SetSkin[edit]

simulated function SetSkin (Material NewMaterial)

Overrides: UTWeapon.SetSkin

(Description copied from UTWeapon.SetSkin)
Material control

Parameters:

  • NewMaterial - The new material to apply or none to clear it

SuggestAttackStyle[edit]

function float SuggestAttackStyle ()

Overrides: Weapon.SuggestAttackStyle


SuggestDefenseStyle[edit]

function float SuggestDefenseStyle ()

Overrides: Weapon.SuggestDefenseStyle


UnLink[edit]

function UnLink (optional bool bDelayed)

Unlink this weapon from it's parent. If bDelayed is true, it will give a short delay before unlinking to allow the player to re-establish the link

UpdateBeamEmitter[edit]

simulated function UpdateBeamEmitter (Object.Vector FlashLocation, Object.Vector HitNormal, Actor HitActor)

Overrides: UTBeamWeapon.UpdateBeamEmitter


States[edit]

WeaponBeamFiring[edit]

State WeaponFiring See UTWeapon.WeaponFiring

Inherits from: UTBeamWeapon.WeaponBeamFiring

Modifiers: simulated

WeaponBeamFiring.BeginState[edit]

simulated event BeginState (name PreviousStateName)

Overrides: UTBeamWeapon.WeaponBeamFiring.BeginState

Called immediately when entering a state, while within the GotoState() call that caused the state change (before any state code is executed).

WeaponBeamFiring.EndState[edit]

simulated event EndState (name NextStateName)

Overrides: UTBeamWeapon.WeaponBeamFiring.EndState

When leaving the state, shut everything down

WeaponBeamFiring.Tick[edit]

simulated event Tick (float DeltaTime)

Overrides: UTBeamWeapon.WeaponBeamFiring.Tick

Update the beam and handle the effects FIXMESTEVE MOVE TO TICKSPECIAL

WeaponBeamFiring.CanViewAccelerationWhenFiring[edit]

simulated function bool CanViewAccelerationWhenFiring ()

Overrides: UTWeapon.CanViewAccelerationWhenFiring (global)

You can run around spamming the beam and needing to look around all speed *

WeaponBeamFiring.EndFire[edit]

simulated function EndFire (byte FireModeNum)

Overrides: UTBeamWeapon.WeaponBeamFiring.EndFire

When done firing, we have to make sure we unlink the weapon.

WeaponBeamFiring.SetCurrentFireMode[edit]

simulated function SetCurrentFireMode (byte FiringModeNum)

Overrides: Weapon.SetCurrentFireMode (global)

Set current firing mode. Network: Local Player and Server.

WeaponBeamFiring.SetFlashLocation[edit]

function SetFlashLocation (Object.Vector HitLocation)

Overrides: Weapon.SetFlashLocation (global)

This function sets up the Location of a hit to be replicated to all remote clients.

Network: Server only

WeaponEquipping[edit]

State WeaponEquipping The Weapon is in this state while transitioning from Inactive to Active state. Typically, the weapon will remain in this state while its selection animation is being played. While in this state, the weapon cannot be fired.

Inherits from: UTWeapon.WeaponEquipping

Modifiers: simulated

WeaponEquipping.BeginState[edit]

simulated event BeginState (name PreviousStateName)

Overrides: UTWeapon.WeaponEquipping.BeginState

We want to being this state by setting up the timing and then notifying the pawn that the weapon has changed.

WeaponPuttingDown[edit]

Inherits from: UTWeapon.WeaponPuttingDown

Modifiers: simulated

WeaponPuttingDown.WeaponIsDown[edit]

simulated function WeaponIsDown ()

Overrides: Weapon.WeaponPuttingDown.WeaponIsDown

We are done putting the weapon away, remove the mesh/etc.