Engine
Class NavigationPoint

source: e:\games\UnrealTournament\Engine\Classes\NavigationPoint.uc
Core.Object
   |
   +--Engine.Actor
      |
      +--Engine.NavigationPoint
Direct Known Subclasses:AlternatePath, AssaultRandomizer, BlockedPath, ControlPoint, FlagBase, AmbushPoint, ButtonMarker, HomeBase, InventorySpot, LiftCenter, LiftExit, PathNode, PatrolPoint, PlayerStart, Teleporter, TriggerMarker, WarpZoneMarker, QueenDest, AlarmPoint, SpawnPoint, Transporter

class NavigationPoint
extends Engine.Actor

//============================================================================= // NavigationPoint. //=============================================================================
Variables
 int ExtraCost
           added cost to visit this pathnode
 int Paths[16]
           index of reachspecs (used by C++ Navigation code)
 int PrunedPaths[16]
           index of reachspecs (used by C++ Navigation code)
 NavigationPoint VisNoReachPaths[16]
           paths that are visible but not directly reachable
 bool bAutoBuilt
           placed during execution of "PATHS BUILD"
 bool bEndPoint
           used by C++ navigation code
 bool bEndPointOnly
           only used as an endpoint in routing network
 bool bNeverUseStrafing
           shouldn't use bAdvancedTactics going to this point
 bool bOneWayPath
           reachspecs from this path only in the direction the path is facing (180 degrees)
 bool bPlayerOnly
           only players should use this path
 bool bSpecialCost
           if true, navigation code will call SpecialCost function for this navigation point
 bool bTwoWay
           hacked here to fix CTF problems post release (used by Botpack.AlternatePath)
 int bestPathWeight
           paths that are visible but not directly reachable
 int cost
           added cost to visit this pathnode
 NavigationPoint nextNavigationPoint
           paths that are visible but not directly reachable
 NavigationPoint nextOrdered
           paths that are visible but not directly reachable
 name ownerTeam
           creature clan owning this area (area visible from this point)
 NavigationPoint prevOrdered
           paths that are visible but not directly reachable
 NavigationPoint previousPath
           paths that are visible but not directly reachable
 Actor routeCache
           paths that are visible but not directly reachable
 NavigationPoint startPath
           paths that are visible but not directly reachable
 bool taken
           set when a creature is occupying this spot
 int upstreamPaths[16]
           set when a creature is occupying this spot
 int visitedWeight
           paths that are visible but not directly reachable


Function Summary
 void PlayTeleportEffect(Actor Incoming, bool bOut)
 void describeSpec(int iSpec, out Actor, out Actor, out int, out int)



Source Code


00001	//=============================================================================
00002	// NavigationPoint.
00003	//=============================================================================
00004	class NavigationPoint extends Actor
00005		native;
00006	
00007	#exec Texture Import File=Textures\S_Pickup.pcx Name=S_Pickup Mips=Off Flags=2
00008	
00009	//------------------------------------------------------------------------------
00010	// NavigationPoint variables
00011	var() name ownerTeam;	//creature clan owning this area (area visible from this point)
00012	var bool taken; //set when a creature is occupying this spot
00013	var int upstreamPaths[16];
00014	var int Paths[16]; //index of reachspecs (used by C++ Navigation code)
00015	var int PrunedPaths[16];
00016	var NavigationPoint VisNoReachPaths[16]; //paths that are visible but not directly reachable
00017	var int visitedWeight;
00018	var actor routeCache;
00019	var const int bestPathWeight;
00020	var const NavigationPoint nextNavigationPoint;
00021	var const NavigationPoint nextOrdered;
00022	var const NavigationPoint prevOrdered;
00023	var const NavigationPoint startPath;
00024	var const NavigationPoint previousPath;
00025	var int cost; //added cost to visit this pathnode
00026	var() int ExtraCost;
00027	var() bool bPlayerOnly;	//only players should use this path
00028	
00029	var bool bEndPoint; //used by C++ navigation code
00030	var bool bEndPointOnly; //only used as an endpoint in routing network
00031	var bool bSpecialCost;	//if true, navigation code will call SpecialCost function for this navigation point
00032	var() bool bOneWayPath;	//reachspecs from this path only in the direction the path is facing (180 degrees)
00033	var() bool bNeverUseStrafing; // shouldn't use bAdvancedTactics going to this point
00034	var bool bAutoBuilt;	// placed during execution of "PATHS BUILD"
00035	var bool bTwoWay;	// hacked here to fix CTF problems post release (used by Botpack.AlternatePath)
00036	
00037	native(519) final function describeSpec(int iSpec, out Actor Start, out Actor End, out int ReachFlags, out int Distance); 
00038	event int SpecialCost(Pawn Seeker);
00039	
00040	// Accept an actor that has teleported in.
00041	// used for random spawning and initial placement of creatures
00042	event bool Accept( actor Incoming, actor Source )
00043	{
00044		// Move the actor here.
00045		taken = Incoming.SetLocation( Location + vect (0,0,20));
00046		if (taken)
00047		{
00048			Incoming.Velocity = vect(0,0,0);
00049			Incoming.SetRotation(Rotation);
00050		}
00051		// Play teleport-in effect.
00052		PlayTeleportEffect(Incoming, true);
00053		return taken;
00054	}
00055	
00056	function PlayTeleportEffect(actor Incoming, bool bOut)
00057	{
00058		Level.Game.PlayTeleportEffect(Incoming, bOut, false);
00059	}
00060	
00061	defaultproperties
00062	{
00063	     upstreamPaths(0)=-1
00064	     upstreamPaths(1)=-1
00065	     upstreamPaths(2)=-1
00066	     upstreamPaths(3)=-1
00067	     upstreamPaths(4)=-1
00068	     upstreamPaths(5)=-1
00069	     upstreamPaths(6)=-1
00070	     upstreamPaths(7)=-1
00071	     upstreamPaths(8)=-1
00072	     upstreamPaths(9)=-1
00073	     upstreamPaths(10)=-1
00074	     upstreamPaths(11)=-1
00075	     upstreamPaths(12)=-1
00076	     upstreamPaths(13)=-1
00077	     upstreamPaths(14)=-1
00078	     upstreamPaths(15)=-1
00079	     Paths(0)=-1
00080	     Paths(1)=-1
00081	     Paths(2)=-1
00082	     Paths(3)=-1
00083	     Paths(4)=-1
00084	     Paths(5)=-1
00085	     Paths(6)=-1
00086	     Paths(7)=-1
00087	     Paths(8)=-1
00088	     Paths(9)=-1
00089	     Paths(10)=-1
00090	     Paths(11)=-1
00091	     Paths(12)=-1
00092	     Paths(13)=-1
00093	     Paths(14)=-1
00094	     Paths(15)=-1
00095	     PrunedPaths(0)=-1
00096	     PrunedPaths(1)=-1
00097	     PrunedPaths(2)=-1
00098	     PrunedPaths(3)=-1
00099	     PrunedPaths(4)=-1
00100	     PrunedPaths(5)=-1
00101	     PrunedPaths(6)=-1
00102	     PrunedPaths(7)=-1
00103	     PrunedPaths(8)=-1
00104	     PrunedPaths(9)=-1
00105	     PrunedPaths(10)=-1
00106	     PrunedPaths(11)=-1
00107	     PrunedPaths(12)=-1
00108	     PrunedPaths(13)=-1
00109	     PrunedPaths(14)=-1
00110	     PrunedPaths(15)=-1
00111	     bStatic=True
00112	     bHidden=True
00113	     bCollideWhenPlacing=True
00114	     SoundVolume=0
00115	     CollisionRadius=46.000000
00116	     CollisionHeight=50.000000
00117	}

End Source Code