public static Vector3[] GenerateWaypoints(MapId map, Vector3 lastPos) { var terrain = TerrainMgr.GetTerrain(map); if (terrain != null) { var gen = new RandomWaypointGenerator(); var wps = gen.GenerateWaypoints(terrain, lastPos); return wps; } return new Vector3[0]; }
public override void Process(CmdTrigger<ToolCmdArgs> trigger) { var text = trigger.Text; var min = text.NextInt(3); var max = text.NextInt(5); var minDist = text.NextFloat(5); var maxDist = text.NextFloat(10); var gen = new RandomWaypointGenerator(); var wps = gen.GenerateWaypoints(new EmptyTerrain(), Vector3.Zero, min, max, minDist, maxDist); trigger.Reply(wps.ToString("\n")); }
public static Vector3[] GenerateWaypoints(MapId map, Vector3 lastPos) { var terrain = TerrainMgr.GetTerrain(map); if (terrain != null) { var gen = new RandomWaypointGenerator(); var wps = gen.GenerateWaypoints(terrain, lastPos); return(wps); } return(new Vector3[0]); }
public Vector3[] GenerateWaypoints(ITerrain terrain, Vector3 lastPos, int min, int max, float minDist, float maxDist) { if (min < 1) { throw new ArgumentException("The minimum point count must be greater than 1", nameof(min)); } if (max < min) { throw new ArgumentException("The maximum point count must be greater than the minimum", nameof(max)); } int count = Utility.Random(min, max); return(RandomWaypointGenerator.GenerateWaypoints(terrain, lastPos, minDist, maxDist, count)); }
public void AddRandomWPs() { var terrain = TerrainMgr.GetTerrain(RegionId); if (terrain != null) { var gen = new RandomWaypointGenerator(); var wps = gen.GenerateWaypoints(terrain, Position); AddWPs(wps); } }