public override void init(BugMenuManager bugMenuManager) { AllEventManager eventMgr = AllEventManager.GetInstance(); AllSceneManager sceneMgr = AllSceneManager.GetInstance(); PlayerTrainerData playerTrainerData = PlayerTrainerData.GetInstance(); //習得できる技の保存 for (int i = 0; i < playerTrainerData.GetHaveSkillSize(); ++i) { bugMenuManager.SkillTradeActiveSkillsAdd(playerTrainerData.GetSkillDatas(i)); } //技の名前の反映 for (int i = 0; i < bugMenuManager.GetCommandParts().GetCommandWindowTextsCount(); ++i) { if (i < bugMenuManager.GetSkillTradeActiveSkillsCount()) { bugMenuManager.GetCommandParts().CommandWindowChoiceTextChange(i, " " + bugMenuManager.GetSkillTradeActiveSkills(i).skillName_); } } //技の情報の反映 bugMenuManager.GetInfoFrameParts().SkillInfoReflect(bugMenuManager.GetSkillTradeActiveSkills(0)); //技が表以上にあったら if (bugMenuManager.GetSkillTradeActiveSkillsCount() > bugMenuManager.GetCommandParts().GetCommandWindowTextsCount()) { bugMenuManager.GetDownCursor().gameObject.SetActive(true); } }
public void ContinueDataSave() { PlayerTrainerData playerData = PlayerTrainerData.GetInstance(); var SavePath = Application.persistentDataPath + "/DreamersAcademy.save"; Debug.Log("path: " + SavePath); // iOSでは下記設定を行わないとエラーになる #if UNITY_IPHONE Environment.SetEnvironmentVariable("MONO_REFLECTION_SERIALIZER", "yes"); #endif // 保存 GameSaveData save = new GameSaveData(); //モンスターのデータ for (int i = 0; i < 3; ++i) { //モンスターのデータの保存 save.haveMonsterNumber_[i] = playerData.GetMonsterDatas(i).tribesData_.monsterNumber_; //モンスターのデータの技の保存 save.haveMonsterSkillNumber_[i, 0] = playerData.GetMonsterDatas(i).GetSkillDatas(0).skillNumber_; save.haveMonsterSkillNumber_[i, 1] = playerData.GetMonsterDatas(i).GetSkillDatas(1).skillNumber_; save.haveMonsterSkillNumber_[i, 2] = playerData.GetMonsterDatas(i).GetSkillDatas(2).skillNumber_; save.haveMonsterSkillNumber_[i, 3] = playerData.GetMonsterDatas(i).GetSkillDatas(3).skillNumber_; } //技のデータ for (int i = 0; i < playerData.GetHaveSkillSize(); ++i) { save.haveSkillNumber_[i] = playerData.GetSkillDatas(i).skillNumber_; } //マップのデータ save.nowMapFloor_ = 0; save.clearTimes_ = playerData.clearTimes_ + 1; save.clearMapFloor_ = 0; //チュートリアルのデータ save.clearTutorial_ = playerData.clearTutorial_; using (FileStream fs = new FileStream(SavePath, FileMode.Create, FileAccess.Write)) { BinaryFormatter bf = new BinaryFormatter(); bf.Serialize(fs, save); } }
public override BugMenuSceneProcess Update(BugMenuManager bugMenuManager) { AllSceneManager sceneMgr = AllSceneManager.GetInstance(); AllEventManager eventMgr = AllEventManager.GetInstance(); PlayerTrainerData playerData = PlayerTrainerData.GetInstance(); eventMgr.EventUpdate(); if (sceneMgr.inputProvider_.UpSelect() || sceneMgr.inputProvider_.MouseWheelValue() > 0) { //表示する技がまだあったら if (skillSelectNum_ > 0) { //SE bugMenuManager.GetInputSoundProvider().UpSelect(); --skillSelectNum_; //一番上からスクロールさせようとしたら if (bugMenuManager.GetCommandParts().SelectNumber() == 0) { //技の名前を更新する for (int i = skillSelectNum_, j = 0; i < skillSelectNum_ + bugMenuManager.GetCommandParts().GetCommandWindowTextsCount(); ++i) { bugMenuManager.GetCommandParts().CommandWindowChoiceTextChange(j, " " + playerData.GetSkillDatas(i).skillName_); ++j; } //カーソルを戻す //bugMenuManager.GetCommandParts().CommandSelect(1, new Vector3(0, -1.0f, 0)); //downCursorの表示 bugMenuManager.GetDownCursor().gameObject.SetActive(true); if (skillSelectNum_ == 0) { //upCursorの表示 bugMenuManager.GetUpCursor().gameObject.SetActive(false); } } //選択肢の処理 bugMenuManager.GetCommandParts().CommandSelectUp(new Vector3(0, 1.0f, 0)); //技の情報の反映 bugMenuManager.GetInfoFrameParts().SkillInfoReflect(playerData.GetSkillDatas(skillSelectNum_)); } } else if (sceneMgr.inputProvider_.DownSelect() || sceneMgr.inputProvider_.MouseWheelValue() < 0) { //表示する技がまだあったら if (skillSelectNum_ < playerData.GetHaveSkillSize()-1) { //SE bugMenuManager.GetInputSoundProvider().DownSelect(); ++skillSelectNum_; //一番下からスクロールさせようとしたら if (bugMenuManager.GetCommandParts().SelectNumber() == bugMenuManager.GetCommandParts().GetCommandWindowTextsCount()-1) { //技の名前を更新する for (int i = skillSelectNum_ - bugMenuManager.GetCommandParts().GetCommandWindowTextsCount() + 1, j = 0; i < skillSelectNum_ + 1; ++i) { bugMenuManager.GetCommandParts().CommandWindowChoiceTextChange(j, " " + playerData.GetSkillDatas(i).skillName_); ++j; } //カーソルを戻す //bugMenuManager.GetCommandParts().CommandSelect(-1, new Vector3(0, 1.0f, 0)); //upCursorの表示 bugMenuManager.GetUpCursor().gameObject.SetActive(true); if(skillSelectNum_ == playerData.GetHaveSkillSize()-1) { //downCursorの表示 bugMenuManager.GetDownCursor().gameObject.SetActive(false); } } //選択肢の処理 bugMenuManager.GetCommandParts().CommandSelectDown(new Vector3(0, -1.0f, 0)); //技の情報の反映 bugMenuManager.GetInfoFrameParts().SkillInfoReflect(playerData.GetSkillDatas(skillSelectNum_)); } } else if (sceneMgr.inputProvider_.RightSelect()) { } else if (sceneMgr.inputProvider_.LeftSelect()) { } else if (sceneMgr.inputProvider_.SelectEnter()) { } else if (sceneMgr.inputProvider_.SelectBack() || sceneMgr.inputProvider_.SelectMouseRightTrigger()) { sceneMgr.inputProvider_ = new InactiveInputProvider(); //フェードアウト eventMgr.EventSpriteRendererSet( sceneMgr.GetPublicFrontScreen().GetEventScreenSprite() , null , new Color(sceneMgr.GetPublicFrontScreen().GetEventScreenSprite().GetSpriteRenderer().color.r, sceneMgr.GetPublicFrontScreen().GetEventScreenSprite().GetSpriteRenderer().color.g, sceneMgr.GetPublicFrontScreen().GetEventScreenSprite().GetSpriteRenderer().color.b, 255) ); eventMgr.EventSpriteRenderersUpdateExecuteSet(EventSpriteRendererEventManagerExecute.ChangeColor); eventMgr.AllUpdateEventExecute(0.4f); //シーンの切り替え eventMgr.SceneChangeEventSet(SceneState.Map, SceneChangeMode.Change); } else if (sceneMgr.inputProvider_.SelectNovelWindowActive()) { } else if (sceneMgr.inputProvider_.SelectMenu()) { } return bugMenuManager.GetProcessProvider().state_; }