46 lines
1010 B
Ucode
46 lines
1010 B
Ucode
class ACTION_FadeView extends LatentScriptedAction;
|
|
|
|
var(Action) float FadeTime;
|
|
var(Action) vector TargetFlash;
|
|
|
|
function bool InitActionFor(ScriptedController C)
|
|
{
|
|
|
|
return true;
|
|
}
|
|
|
|
function string GetActionString()
|
|
{
|
|
return ActionString@FadeTime;
|
|
}
|
|
|
|
|
|
function bool TickedAction()
|
|
{
|
|
return true;
|
|
}
|
|
|
|
function bool StillTicking(ScriptedController C, float DeltaTime)
|
|
{
|
|
local bool bXDone,bYDone,bZDone;
|
|
local vector V;
|
|
|
|
V = C.GetInstigator().PhysicsVolume.ViewFlash - (C.Instigator.PhysicsVolume.Default.ViewFlash - TargetFlash) * (DeltaTime/FadeTime);
|
|
|
|
if( V.X < TargetFlash.X ) { V.X = TargetFlash.X; bXDone = True; }
|
|
if( V.Y < TargetFlash.Y ) { V.Y = TargetFlash.Y; bYDone = True; }
|
|
if( V.Z < TargetFlash.Z ) { V.Z = TargetFlash.Z; bZDone = True; }
|
|
|
|
C.GetInstigator().PhysicsVolume.ViewFlash = V;
|
|
|
|
if(bXDone && bYDone && bZDone)
|
|
return false;
|
|
return true;
|
|
}
|
|
|
|
defaultproperties
|
|
{
|
|
TargetFlash=(X=-2,Y=-2,Z=-2)
|
|
FadeTime=+5
|
|
ActionString="fade view"
|
|
} |