Use console.
This commit is contained in:
parent
9dcf923a49
commit
dcc6a17c2c
|
@ -7,6 +7,7 @@ namespace IngameScript
|
|||
public partial class Program : MyGridProgram
|
||||
{
|
||||
private MyCommandLine _cli;
|
||||
private Console _console;
|
||||
private List<IEnumerator<bool>> _jobs;
|
||||
private Dictionary<string, Door> _doors;
|
||||
private int _tickCount;
|
||||
|
@ -15,6 +16,7 @@ namespace IngameScript
|
|||
{
|
||||
_tickCount = 0;
|
||||
_cli = new MyCommandLine();
|
||||
_console = new Console(this);
|
||||
_jobs = new List<IEnumerator<bool>>();
|
||||
|
||||
_doors = new Dictionary<string, Door>();
|
||||
|
@ -34,12 +36,12 @@ namespace IngameScript
|
|||
}
|
||||
}
|
||||
|
||||
Echo($"Found {_doors.Keys.Count} doors.");
|
||||
_console.Print($"Found {_doors.Keys.Count} doors.");
|
||||
}
|
||||
|
||||
public void Main(string argument, UpdateType updateSource)
|
||||
{
|
||||
Echo($"index: {_tickCount++}");
|
||||
_console.PrintLower($"Total Ticks: {_tickCount++}");
|
||||
|
||||
if (updateSource == UpdateType.Trigger || updateSource == UpdateType.Terminal)
|
||||
{
|
||||
|
@ -49,7 +51,7 @@ namespace IngameScript
|
|||
|
||||
if (_cli.ArgumentCount == 0)
|
||||
{
|
||||
Echo("No arguments passed. Controlling all doors.");
|
||||
_console.Print("No arguments passed. Controlling all doors.");
|
||||
foreach (Door door in _doors.Values)
|
||||
{
|
||||
if (!door.Locked)
|
||||
|
@ -65,12 +67,12 @@ namespace IngameScript
|
|||
string key = "Door" + _cli.Argument(i);
|
||||
if (!_doors.ContainsKey(key))
|
||||
{
|
||||
Echo($"Door with identifier {key} not found. Skipping.");
|
||||
_console.Print($"Door with identifier {key} not found. Skipping.");
|
||||
continue;
|
||||
}
|
||||
if (!_doors[key].Locked)
|
||||
{
|
||||
Echo($"Door {key} already moving. Skipping.");
|
||||
_console.Print($"Door {key} already moving. Skipping.");
|
||||
continue;
|
||||
}
|
||||
doorsToControl.Add(_doors[key]);
|
||||
|
@ -78,11 +80,11 @@ namespace IngameScript
|
|||
|
||||
if (doorsToControl.Count == 0)
|
||||
{
|
||||
Echo("No doors found. Not creating new job.");
|
||||
_console.Print("No doors found. Not creating new job.");
|
||||
}
|
||||
else
|
||||
{
|
||||
Echo("Creating new job.");
|
||||
_console.Print("Creating new job.");
|
||||
if (_cli.Switch("close")) _jobs.Add(closeDoors(doorsToControl));
|
||||
else _jobs.Add(openDoors(doorsToControl));
|
||||
Runtime.UpdateFrequency = UpdateFrequency.Update1;
|
||||
|
@ -97,7 +99,7 @@ namespace IngameScript
|
|||
_jobs[i].Dispose();
|
||||
_jobs.Remove(_jobs[i]);
|
||||
i--;
|
||||
Echo("Operation Complete.");
|
||||
_console.Print("Operation Complete.");
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -109,7 +111,7 @@ namespace IngameScript
|
|||
|
||||
private IEnumerator<bool> openDoors(List<Door> doorsToControl)
|
||||
{
|
||||
Echo("Opening doors.");
|
||||
_console.Print("Opening doors.");
|
||||
foreach (Door door in doorsToControl)
|
||||
{
|
||||
door.OpenDoor();
|
||||
|
@ -119,7 +121,7 @@ namespace IngameScript
|
|||
|
||||
private IEnumerator<bool> closeDoors(List<Door> doorsToControl)
|
||||
{
|
||||
Echo("Closing doors.");
|
||||
_console.Print("Closing doors.");
|
||||
foreach (Door door in doorsToControl)
|
||||
{
|
||||
door.CloseDoor();
|
||||
|
@ -131,7 +133,7 @@ namespace IngameScript
|
|||
{
|
||||
while (true)
|
||||
{
|
||||
Echo("Actuating doors.");
|
||||
_console.Print("Actuating doors.");
|
||||
bool done = true; // assume we've finished, then falsify it below
|
||||
foreach (Door door in doorsToControl)
|
||||
{
|
||||
|
|
Loading…
Reference in New Issue
Block a user