private void MakeReadyAndStartGame() { if (!TryLoadNewestWorld()) // for one reason or another, loading saved world failed, so we'll create a new one. { WorldGenerationData.Reset(); WorldGenerator.GenerateWorld(); GameDataSaver.SaveWorld(Current.World); Log.Message("QuickStart :: World created"); } else { Log.Message("QuickStart :: World loaded"); } Rand.RandomizeSeedFromTime(); MapInitData.difficulty = DefDatabase <DifficultyDef> .GetRandom(); MapInitData.chosenStoryteller = DefDatabase <StorytellerDef> .GetRandom(); MapInitData.ChooseDecentLandingSite(); MapInitData.GenerateDefaultColonistsWithFaction(); // set faction into world. MethodInfo SCFIW_MI = typeof(MapInitData).GetMethod("SetColonyFactionIntoWorld", BindingFlags.Static | BindingFlags.NonPublic); SCFIW_MI.Invoke(null, null); MapInitData.mapSize = 150; // set started from entry to true to make sure InitNewGeneratedMap() doesn't override our settings, // and we get the fancy guitar riff intro. MapInitData.startedFromEntry = true; Application.LoadLevel("Gameplay"); }
private void Start() { // load local resources // (moving all logic from start function to this first time function) gameDataSaver = GetComponent <GameDataSaver>(); logoutButton.onClick.AddListener(onLogout); exitButton.onClick.AddListener(onExit); logoutCanvas = FindObjectOfType <LogoutCanvas>(); questWindowUI = FindObjectOfType <QuestWindowUI>(); reviveController = FindObjectOfType <ReviveController>(); hud = FindObjectOfType <HUDController>(); dialogueUI = FindObjectOfType <DialogueUI>(); actionBar = GetComponentInChildren <ActionBarController>(); inventoryManager = gameObject.GetComponentInChildren <InventoryManager>(true); inventory = inventoryManager.inventory; equipment = gameObject.GetComponentInChildren <EquipmentPanel>(true).equipment; // set up component logoutCanvas.gameObject.SetActive(false); hud.gameObject.SetActive(false); QuestManager.instance.questWindowUI = questWindowUI; DialogueManager.instance.dialogueUI = dialogueUI; StartCoroutine(LoadGameScene()); exitButton.enabled = false; logoutButton.gameObject.SetActive(false); exitButton.gameObject.SetActive(false); // If game data exists in the database // Override the first stats load using the user data if (User.GetActiveCharacter().GameState.isDirty) { GameCharacter.Stats = GameCharacter.GetStatsFromData(UserService.Instance.User.GetActiveCharacter().GameState.Stats); GameCharacter.Stats.Setup(); } }
public override void ClickAction() { LongEventHandler.QueueLongEvent( () => { GameDataSaver.SaveGame(Find.Map, Find.Map.info.permadeathModeUniqueName); LongEventHandler.ExecuteWhenFinished(Root.Shutdown); }, "SavingLongEvent", false, null ); }
public override void ClickAction() { LongEventHandler.QueueLongEvent( () => { GameDataSaver.SaveGame(Find.Map, Find.Map.info.permadeathModeUniqueName); }, "Entry", "SavingLongEvent", false, null ); }
public void Save() { GameDataSaver gds = FindObjectOfType <GameDataSaver>(); bool success = false; if (gds != null && rotators.Count >= 1) { Debug.Log(rotators.Count + " " + speeds.Count + " " + startAngles.Length); success = gds.AddLevel(speeds.ToArray(), startAngles); } SaveDialog.gameObject.SetActive(true); if (success) { SaveResultTxt.text = "level saved"; } else { SaveResultTxt.text = "failed to save"; } }
private void loadLevel(LevelData level, LevelButton btn) { Image image = btn.GetComponentInChildren <Image>(); Sprite levelSpr = null; if (image != null) { Texture2D texture = null; if (level is LevelDataLoaded) { texture = GameDataSaver.LoadTexture((level as LevelDataLoaded).TexturePath); } else if (level is LevelDataDefault) { texture = (level as LevelDataDefault).Texture; } if (texture != null) { levelSpr = Sprite.Create(texture, new Rect(0, 0, 512, 512), Vector2.zero, 100); } image.sprite = levelSpr; } btn.onClick.AddListener(() => { if (LevelButton.LastBtnClicked != btn) { LevelButton.LastBtnClicked = btn; LevelButton.ClickCount = 0; } LevelButton.ClickCount++; if (LevelButton.ClickCount == 1) { showStats(level); } else if (LevelButton.ClickCount == 2) { LevelButton.LastBtnClicked = null; LevelButton.ClickCount = 0; FindObjectOfType <GameDataSaver>().LoadLevel(level); } }); if (level is LevelDataLoaded) { btn.onPressing.AddListener(() => { DeletelevelDialogPanel.position = btn.transform.position; DeletelevelDialogPanel.sizeDelta = btn.GetComponent <RectTransform>().sizeDelta; DeletelevelDialogPanel.gameObject.SetActive(true); DeleteBtn.onClick.RemoveAllListeners(); DeleteBtn.onClick.AddListener(() => { FindObjectOfType <GameDataSaver>().DeleteLevel(level); DeletelevelDialogPanel.gameObject.SetActive(false); Destroy(btn.gameObject); loadLevel(GameDataSaver.LastLevel, LastLevelImg); }); }); } }