private void InterpretCommand(string command) { if (string.IsNullOrEmpty(command)) { return; } var parts = command.Split(' ').ToList(); var head = GetCommandHead(parts); // spawn if (head.StartsWith("sp")) { InterpretSpawnCommand(parts); return; } // sleep if (head.StartsWith("sl")) { _timeToSleep = float.Parse(GetCommandHead(parts)); return; } // order if (head.StartsWith("o")) { var secondPart = GetCommandHead(parts); if (secondPart.StartsWith("p")) { var pos = GetPos(parts); _townController.PushNewOrder(OrderType.PlantWheat, pos); return; } return; } // fastforward (ff) if (head.StartsWith("f")) { var secondPart = GetCommandHead(parts); var speed = int.Parse(secondPart); GameApplication.Instance.ChangeTimeSpeed(speed); return; } // save if (head.StartsWith("sav")) { LoadSaveGame.SaveGameData(); return; } // reload if (head.StartsWith("rel")) { LoadSaveGame.Instance.ReloadGame(); return; } // reset if (head.StartsWith("res")) { LoadSaveGame.Instance.ResetGame(); return; } // erase if (head.StartsWith("er")) { LoadSaveGame.Instance.EraseGame(); return; } // add if (head.StartsWith("add")) { var secondPart = GetCommandHead(parts); DropItemType type; // meat if (secondPart.StartsWith("m")) { type = DropItemType.Meat; } else if (secondPart.StartsWith("b")) { type = DropItemType.Bread; } else { Debug.LogError($"DropItemType {secondPart} not supported"); return; } var ammountString = GetCommandHead(parts); var ammount = uint.Parse(ammountString); _townController.AddToStorage(type, ammount); return; } Debug.LogError("Unrecognized command " + command); }
public void GoToMainMenu() { LoadSaveGame.SaveGameData(); PlayerPrefs.SetInt(PlayerPrefsKeys.HasActiveGame.ToString(), 1); LevelManager.Instance.RestartGame(); }