83 lines
2.3 KiB
Ucode
83 lines
2.3 KiB
Ucode
|
/**
|
||
|
* Gameplay relevant carried object (such as a CTF Flag)
|
||
|
*
|
||
|
* Copyright 1998-2013 Epic Games, Inc. All Rights Reserved.
|
||
|
*/
|
||
|
class UDKCarriedObject extends Actor
|
||
|
native
|
||
|
abstract
|
||
|
notplaceable;
|
||
|
|
||
|
/** Team this CarriedObject is associated with */
|
||
|
var repnotify TeamInfo Team;
|
||
|
|
||
|
/** Recent nearest path */
|
||
|
var const NavigationPoint LastAnchor;
|
||
|
|
||
|
/** last time a valid anchor was found */
|
||
|
var float LastValidAnchorTime;
|
||
|
|
||
|
/** The Skeletal Mesh of the flag */
|
||
|
var SkeletalMeshComponent SkelMesh;
|
||
|
|
||
|
/** Replicated to indicate whether this CarriedObject is in its HomeBase */
|
||
|
var repnotify bool bHome;
|
||
|
|
||
|
/** Game objective which acts as home base for this CarriedObject */
|
||
|
var UDKGameObjective HomeBase;
|
||
|
|
||
|
/** offset for placing object when at home */
|
||
|
var vector HomeBaseOffset;
|
||
|
|
||
|
// Keep track of our base-most actor.
|
||
|
var Actor OldBase;
|
||
|
var Actor OldBaseBase;
|
||
|
|
||
|
/** HUD Rendering (for minimap) - updated in SetHUDLocation() */
|
||
|
var vector HUDLocation;
|
||
|
|
||
|
cpptext
|
||
|
{
|
||
|
/*
|
||
|
* Special handling of network replication
|
||
|
*/
|
||
|
virtual void PostNetReceiveBase(AActor* NewBase);
|
||
|
virtual void PostNetReceiveLocation();
|
||
|
|
||
|
/*
|
||
|
* Route finding notifications (sent to target)
|
||
|
*/
|
||
|
virtual ANavigationPoint* SpecifyEndAnchor(APawn* RouteFinder);
|
||
|
virtual void NotifyAnchorFindingResult(ANavigationPoint* EndAnchor, APawn* RouteFinder);
|
||
|
virtual void TickSpecial(FLOAT DeltaSeconds);
|
||
|
|
||
|
virtual void ForceUpdateComponents(UBOOL bCollisionUpdate = FALSE,UBOOL bTransformOnly = TRUE);
|
||
|
}
|
||
|
|
||
|
replication
|
||
|
{
|
||
|
if (Role == ROLE_Authority)
|
||
|
bHome, HomeBase, Team;
|
||
|
}
|
||
|
|
||
|
/** function used to update where icon for this actor should be rendered on the HUD
|
||
|
* @param 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
|
||
|
*/
|
||
|
simulated native function SetHUDLocation(vector NewHUDLocation);
|
||
|
|
||
|
/**
|
||
|
* Called from C++ if this carried object can't be reached by Pawn P
|
||
|
*/
|
||
|
event NotReachableBy(Pawn P);
|
||
|
|
||
|
/**
|
||
|
* Event called when there is a change in the base chain (base or the base of the base, etc.)
|
||
|
*/
|
||
|
simulated event OnBaseChainChanged();
|
||
|
|
||
|
/** GetTeamNum()
|
||
|
* returns teamindex of team with which this UDKCarriedObject is associated.
|
||
|
*/
|
||
|
simulated native function byte GetTeamNum();
|
||
|
|