} // The function used to get the closest node to the player. public void Init() { bool assignExtended = false; // Assign workshop variables. DoGetCurrent = DeltinScript.VarCollection.Assign("pathfinderDoGetCurrent", false, assignExtended); Current = DeltinScript.VarCollection.Assign("pathfinderCurrent", false, assignExtended); PathmapReference = DeltinScript.VarCollection.Assign("pathmapReference", false, assignExtended); ParentArray = DeltinScript.VarCollection.Assign("parentArray", false, assignExtended); Destination = DeltinScript.VarCollection.Assign("destination", false, assignExtended); CurrentAttribute = DeltinScript.VarCollection.Assign("lastAttribute", false, assignExtended); if (TrackTimeSinceLastNode) { DistanceToNextNode = DeltinScript.VarCollection.Assign("distanceToNextNode", false, assignExtended); TimeSinceLastNode = DeltinScript.VarCollection.Assign("timeSinceLastNode", false, assignExtended); } // Get the PathResolve instance and the Pathmap instance. PathResolveInstance = DeltinScript.Types.GetInstance <PathResolveClass>(); PathmapInstance = DeltinScript.Types.GetInstance <PathmapClass>(); // Get the resolve subroutine. GetResolveRoutine(); }
public void Init(DeltinScript deltinScript) { Pathmap = new PathmapClass(deltinScript); PathResolve = new PathResolveClass(deltinScript); Bakemap = new BakemapClass(deltinScript); deltinScript.Types.AddType(Pathmap.Provider); deltinScript.Types.AddType(PathResolve.Provider); deltinScript.Types.AddType(Bakemap.Provider); }
protected override void Assign() { // Get the PathResolveClass instance. PathResolveClass = actionSet.Translate.DeltinScript.Types.GetInstance <PathResolveClass>(); PathResolveClass.WorkshopInit(actionSet.Translate.DeltinScript); // Create a new PathResolve class instance. ClassReference = PathResolveClass.Create(actionSet, actionSet.Translate.DeltinScript.GetComponent <ClassData>()); // Save the pathmap. PathResolveClass.Pathmap.Set(actionSet, ClassReference.Get(), (Element)actionSet.CurrentObject); // Save the destination. PathResolveClass.Destination.Set(actionSet, ClassReference.Get(), Source); // Assign FinalNode if (Destination != null) { finalNode = actionSet.VarCollection.Assign("Final Node", actionSet.IsGlobal, assignExtended); finalNode.SetVariable(GetClosestNode(actionSet, Nodes, Destination)); } }
public ResolvePathfind(Element position, SharedPathfinderInfoValues pathfinderInfo) : base(position, pathfinderInfo) { var pathfinderTypes = ActionSet.DeltinScript.GetComponent <PathfinderTypesComponent>(); _pathResolveClass = pathfinderTypes.PathResolve; }