Gah - a solution with more questions. – EntropicLqd

UE3:UTBeamWeapon (UT3)

From Unreal Wiki, The Unreal Engine Documentation Site
Revision as of 09:11, 17 May 2008 by Wormbo (Talk | contribs) (Auto-generated page)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search
UT3 Object >> Actor >> Inventory >> Weapon >> GameWeapon >> UTWeapon >> UTBeamWeapon
Package: 
UTGame
Direct subclass:
UTWeap_LinkGun
This class in other games:
UDK

Copyright 1998-2007 Epic Games, Inc. All Rights Reserved.


BeamWeapons have at least 1 firing state set to WeaponBeamFiring. This class contains all of the basics needed for that type of weapon

Properties

BeamEmitter

Type: ParticleSystemComponent

Array size: 2

Holds the Emitter for the Beam

BeamFireAnim

Type: name

Array size: 2


BeamPostFireAnim

Type: name

Array size: 2


BeamPreFireAnim

Type: name

Array size: 2

Animations to play before firing the beam

BeamSockets

Type: name

Array size: 2

Where to attach the Beam

BeamTemplate

Type: ParticleSystem

Array size: 2

The Particle System Template for the Beam

EndPointParamName

Type: name

The name of the EndPoint parameter

Subobjects

FirstPersonMesh

Class: UTGame.UTSkeletalMeshComponent

Inherits from: UTWeapon.FirstPersonMesh

No new values.

PickupMesh

Class: Engine.SkeletalMeshComponent

Inherits from: UTWeapon.PickupMesh

No new values.

Instance functions

AddBeamEmitter

simulated function AddBeamEmitter ()


DisplayDebug

simulated function DisplayDebug (HUD HUD, out float out_YL, out float out_YPos)

Overrides: UTWeapon.DisplayDebug

(Description copied from UTWeapon.DisplayDebug)
list important Weapon variables on canvas. HUD will call DisplayDebug() on the current ViewTarget when the ShowDebug exec is used

Parameters:

  • HUD - HUD with canvas to draw on
  • out_YL - Height of the current font
  • out_YPos - Y position on Canvas. out_YPos += out_YL, gives position to draw text for next debug line.

KillBeamEmitter

simulated function KillBeamEmitter ()


ProcessBeamHit

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


SetBeamEmitterHidden

simulated function SetBeamEmitterHidden (bool bHide)


UpdateBeam

simulated function UpdateBeam (float DeltaTime)

This function looks at who/what the beam is touching and deals with it accordingly. bInfoOnly is true when this function is called from a Tick. It causes the link portion to execute, but no damage/health is dealt out.

UpdateBeamEmitter

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


States

WeaponBeamFiring

State WeaponFiring See UTWeapon.WeaponFiring

Modifiers: simulated

WeaponBeamFiring.BeginState

simulated event BeginState (name PreviousStateName)

Overrides: Object.BeginState (global)

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

WeaponBeamFiring.EndState

simulated event EndState (name NextStateName)

Overrides: Object.EndState (global)

When leaving the state, shut everything down

WeaponBeamFiring.IsFiring

simulated event bool IsFiring ()

Overrides: Weapon.IsFiring (global)

Returns true if the weapon is firing, used by AI

WeaponBeamFiring.OnAnimEnd

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

Overrides: Actor.OnAnimEnd (global)

(Description copied from Actor.OnAnimEnd)
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).

WeaponBeamFiring.Tick

simulated event Tick (float DeltaTime)

Overrides: Actor.Tick (global)

Update the beam and handle the effects

WeaponBeamFiring.EndFire

simulated function EndFire (byte FireModeNum)

Overrides: UTWeapon.EndFire (global)

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

WeaponBeamFiring.PlayFireEffects

simulated function PlayFireEffects (byte FireModeNum, optional Object.Vector HitLocation)

Overrides: UTWeapon.PlayFireEffects (global)

PlayFireEffects Is the root function that handles all of the effects associated with a weapon. This function creates the 1st person effects. It should only be called on a locally controlled player.

WeaponBeamFiring.RefireCheckTimer

simulated function RefireCheckTimer ()

Overrides: UTWeapon.RefireCheckTimer (global)

In this weapon, RefireCheckTimer consumes ammo and deals out health/damage. It's not concerned with the effects. They are handled in the tick()

WeaponBeamFiring.ShakeView

simulated function ShakeView ()

Overrides: UTWeapon.ShakeView (global)

view shaking for the beam mode is handled in RefireCheckTimer()

WeaponBeamFiring.TryPutDown

simulated function bool TryPutDown ()

Overrides: UTWeapon.TryPutDown (global)

When attempting to put the weapon down, look to see if our MinReloadPct has been met. If so just put it down