public void LoadStageMaster(StageID id, Action <StageMaster> onLoad) { var path = $"{MasterDirPath}/{id}"; var master = Resources.Load(path) as StageMaster; onLoad.SafeCall(master); }
// 화면 페이드하면서 스테이지를 바꾸고 플레이어 위치를 스테이지 시작지점으로 이동 IEnumerator Change(StageID stageID, Transform stagePoint) { CameraController.Fade(1, false); yield return(new WaitForSeconds(1.5f)); // 현재 스테이지가 있으면 비활성화 if (_currentStage != null) { _currentStage.gameObject.SetActive(false); } // 매개변수로 들어온 다음 스테이지ID에 맞는 스테이지를 리스트에서 찾아 현재스테이지에 저장 후 활성화 _currentStage = _stageList[(int)stageID]; _currentStage.gameObject.SetActive(true); // 플레이어 트랜스폼 정보를 글로벌에서 가져옴 Transform playerTransfom = Global.shared <Player>().transform.parent; // 매개변수로 넘어온 포인트가 널이고 스테이지 시작 지점은 존재할때 스테이지 시작지점으로 플레이어 위치 이동 if (stagePoint == null && _currentStage.GetStartPoint() != null) { playerTransfom.position = _currentStage.GetStartPoint().position; } // 매개변수로 넘어온 포인트가 존재할때 포인트로 플레이어 이동 else if (stagePoint != null) { playerTransfom.position = stagePoint.position; } // 가지고 있는 파편 초기화 _currentFragment = 0; CameraController.Fade(1, true); }
///-------------------------------------------------------------------------------- /// <summary>This method determines whether or not any metadata is /// different between the input instance and the current instance.</summary> /// /// <param name="inputStep">The step to compare metadata.</param> ///-------------------------------------------------------------------------------- public bool IsIdenticalMetadata(Step inputStep) { if (StepName.GetString() != inputStep.StepName.GetString()) { return(false); } if (StageID.GetGuid() != inputStep.StageID.GetGuid()) { return(false); } if (Order.GetInt() != inputStep.Order.GetInt()) { return(false); } if (IsAutoUpdated.GetBool() != inputStep.IsAutoUpdated.GetBool()) { return(false); } if (Description.GetString() != inputStep.Description.GetString()) { return(false); } #region protected #endregion protected return(true); }
public void OpenMessage(StageID ID) { stageID = ID; WritingGuide(ID); massge.SetActive(true); returnBase = false; }
private void SetDefaultStage(StageID DefaultID) { if (Stages_.ContainsKey(DefaultID)) { DefaultStage_ = Stages_[DefaultID]; } }
public void WritingGuide(StageID ID) { switch (ID) { case StageID.Stage0: guideText.text = "1"; break; case StageID.Stage1: guideText.text = "平原:敵部隊の殲滅\n報酬:1500 出撃可能数:3\n平原に現れた敵部隊を殲滅せよ!"; break; case StageID.Stage2: guideText.text = "都市:敵部隊の殲滅\n報酬:1500 出撃可能数:5\n都市部の敵部隊を殲滅せよ!"; break; case StageID.Stage3: guideText.text = "森林地帯:森林横断任務\n報酬:2000 出撃可能数:4\n森林地帯を占拠する敵部隊の防衛を突破せよ!"; break; case StageID.Stage4: guideText.text = "山岳基地:起動兵器ギガントの破壊\n報酬:5000 出撃可能数:5\n山岳基地を守る起動兵器ギガントを破壊せよ!"; break; case StageID.Stage5: guideText.text = "平原:戦車部隊の撃滅\n報酬:2000 出撃可能数:4\n平原に敵の重戦車部隊が確認された、これを全て破壊せよ!"; break; case StageID.Stage6: guideText.text = "平原:平原横断任務\n報酬:3000 出撃可能数:3\n平原に展開する敵部隊の包囲網を突破せよ!"; break; case StageID.Stage7: guideText.text = "都市:対空砲装備部隊の撃滅\n報酬:3000 出撃可能数:5\n都市部にて対空砲装備部隊が確認された、これを全て破壊せよ!"; break; case StageID.Stage8: guideText.text = "都市:敵重装部隊の殲滅\n報酬:1000 出撃可能数:4\n都市部に展開する敵重装甲部隊を殲滅せよ!"; break; case StageID.Stage9: guideText.text = "森林地帯:敵部隊の殲滅\n報酬:2000 出撃可能数:4\n森林地帯で敵部隊に囲まれた、これを返り討ちにせよ!"; break; case StageID.Stage10: guideText.text = "森林地帯:敵重装甲部隊の撃滅\n報酬:3000 出撃可能数:5\n森林地帯にて重装甲部隊が確認された、これを全て破壊せよ!"; break; case StageID.Stage11: guideText.text = "山岳基地:大型起動兵器迎撃作戦\n報酬:1000 出撃可能数:4\n山岳基地にて大型起動兵器の襲撃を確認!迎撃せよ!"; break; case StageID.Stage12: guideText.text = "山岳基地:基地からの脱出\n報酬:1000 出撃可能数:4\n山岳基地より脱出せよ!"; break; default: break; } }
/// <summary> /// Makes the result. /// </summary> /// <param name='exp'> /// 獲得経験値 /// </param> public void MakeResult(int exp, StageID thisStageId) { if(Global.isClear){ Label_1.Text = "Stage Cleared!"; Label_1.TextColor = new UIColor(247f / 255f, 255f / 255f, 0f / 255f, 255f / 255f); Global.isStageOpened[(int)thisStageId + 1] = true; }else{ Label_1.Text = "Stage Failed..."; Label_1.TextColor = new UIColor(255f / 255f, 10f / 255f, 10f / 255f, 255f / 255f); } var newExp = Global.characterExp + exp; Label_3.Text = ""+exp; if(Global.characterLevel < Global.maxLevel){ if(newExp >= Global.expTable[Global.characterLevel+1]){ while(newExp >= Global.expTable[Global.characterLevel+1]){ Global.characterExp = newExp - Global.expTable[Global.characterLevel+1]; Global.characterLevel++; if(Global.characterLevel == Global.maxLevel){ Global.characterExp = 0; break; } } Label_4.Text = "レベルアップ!"; }else{ Global.characterExp = newExp; Label_4.Text = ""; } FileIO.SaveData(); } }
public void AddStage(IStage Stage, StageID NextStageID) { if (!Stages_.ContainsKey(Stage.GetStageID())) { Stages_.Add(Stage.GetStageID(), Stage); Stage.SetNextStageID(NextStageID); } }
public Result(int exp, StageID thisStageId) : base(null, null) { InitializeWidget(); MakeResult(exp,thisStageId); this.Button_1.TouchEventReceived += new EventHandler<TouchEventArgs>(dialogClose); }
/// <summary> /// Obtains the pointers for a specific stage's start/ending/bragging positions to override with the custom /// defined ones. /// </summary> /// <param name="stageId">The individual stage index to get the information for.</param> public static StageInfo GetStageInfo(StageID stageId) { // Categorize the individual stage and decide if to take 1P or 2P path. StageTags.StageTag stageTags = StageTags.CategorizeStage((int)stageId); StageInfo stageInfo = new StageInfo(); // Check if 2 player to perform or 1 player. if (stageTags.HasFlag(StageTags.StageTag.TwoPlayer)) { #region Get Multiplayer Start for (int x = 0; x < Pointers.MULTI_PLAYER_START_ENTRY_LENGTH; x++) { if (Pointers.MultiPlayerStartPointer[x].StageID == stageId) { stageInfo.MultiPlayerStartPointer = &Pointers.MultiPlayerStartPointer[x]; break; } } #endregion #region Get Multiplayer Brag for (int x = 0; x < Pointers.MULTI_PLAYER_BRAG_ENTRY_LENGTH; x++) { if (Pointers.MultiPlayerBragPointer[x].StageID == stageId) { stageInfo.MultiPlayerBragPointer = &Pointers.MultiPlayerBragPointer[x]; break; } } #endregion } else { #region Get Singleplayer Start for (int x = 0; x < Pointers.SINGLE_PLAYER_START_ENTRY_LENGTH; x++) { if (Pointers.SinglePlayerStartPointer[x].StageID == stageId) { stageInfo.SinglePlayerStartPointer = &Pointers.SinglePlayerStartPointer[x]; break; } } #endregion } #region Find Ending Position for (int x = 0; x < Pointers.BOTH_PLAYER_END_ENTRY_LENGTH; x++) { if (Pointers.BothPlayerEndPointer[x].StageID == stageId) { stageInfo.BothPlayerEndPointer = &Pointers.BothPlayerEndPointer[x]; break; } } #endregion return(stageInfo); }
/// <summary> /// Method the same as SceneManager.LoadScene() but with ability to adjust InjectBox, clear resources and call garbage collector. /// </summary> /// <param name="stageId"></param> /// <param name="mode"></param> public static void LoadStage(StageID stageId, LoadSceneMode mode = LoadSceneMode.Single) { InjectBox.ClearNonGlobalInjectables(); InjectBox.Get <PoolManager>().ClearPools(); EventManager.UnsubscribeAllEvents(); SceneManager.LoadScene(stageId.ToString(), mode); Resources.UnloadUnusedAssets(); GC.Collect(); }
public static StageID NextStage(StageID cleared) { if (cleared.stage == 1 && cleared.number == 1) { return new StageID { stage = 1, number = 2 } } ; return(StageID.None); }
private void TranslateTo(StageID NextID) { if (Stages_.ContainsKey(NextID)) { DstStage_ = Stages_[NextID]; } else { TranslateTo(StageID.Error); } }
public StageInformation() { ID = 0; StageName = "No Name"; Discription = "No Discription"; Difficulty = 99; DataFileName = ""; StartPosition = Vector3.zero; StartRotation = Quaternion.identity; TimeLimit = 60; }
public int GetEnemyNumber(StageID ID) { int i = 0; switch (ID) { case StageID.Stage0: break; case StageID.Stage1: break; case StageID.Stage2: break; case StageID.Stage3: break; case StageID.Stage4: break; case StageID.Stage5: break; case StageID.Stage6: break; case StageID.Stage7: break; case StageID.Stage8: break; case StageID.Stage9: break; case StageID.Stage10: break; case StageID.Stage11: break; case StageID.Stage12: break; default: break; } return(i); }
public void GoToStage(StageID newStageID, ILootLockerStageData stageData) { Stage stage = stages.Find(s => s.stageID == newStageID); activeStage = stage; foreach (Stage loopStage in stages) { loopStage.stageObject?.GetComponent <ScreenCloser>()?.Close(); } //update the screen with data stage.stageObject?.GetComponent <ILootLockerStageOwner>()?.UpdateScreenData(stageData); stage.stageObject?.GetComponent <ScreenOpener>()?.Open(); }
public static StageID StageMove(StageID now, Way way) { if (now.stage == 1 && now.number == 1) { if ((way == Way.down) || (way == Way.right)) { return(new StageID { stage = 1, number = 2 }); } } else if (now.stage == 1 && now.number == 2) { if ((way == Way.up) || (way == Way.left)) { return(new StageID { stage = 1, number = 1 }); } } return(StageID.None); }
private void LoadStageMaster(StageID id, Action <StageMaster> onLoad) { _stageSelect.LoadStageMaster(id, onLoad); }
public bool GetStageFlag(StageID ID) { return(false); }
private void SetupStage(StageID stageID) { Enemies = new List <CharacterController>(); CreatePlayer(); }
public PanelStage(StageID stageID) { stageId = stageID; InitializeWidget(stageID); this.Button_1.TouchEventReceived += new EventHandler<TouchEventArgs>(ChangeToGameScene); }
public void SetStageID(StageID ID) { StageCode = ID; StartChange(5); }
public string GetStageName(StageID ID) { string name = ""; switch (ID) { case StageID.Stage0: name = "訓練場"; break; case StageID.Stage1: name = "平原"; break; case StageID.Stage2: name = "都市"; break; case StageID.Stage3: name = "森林地帯"; break; case StageID.Stage4: name = "山岳基地"; break; case StageID.Stage5: name = "平原"; break; case StageID.Stage6: name = "平原"; break; case StageID.Stage7: name = "都市"; break; case StageID.Stage8: name = "都市"; break; case StageID.Stage9: name = "森林地帯"; break; case StageID.Stage10: name = "森林地帯"; break; case StageID.Stage11: name = "山岳基地"; break; case StageID.Stage12: name = "山岳基地"; break; default: break; } return(name); }
public void WritingGuide(StageID ID) { dataGuide.WritingGuide(ID); }
/// <summary> /// ステージの説明を表示させる /// </summary> /// <param name="typeName"></param> private void DiscriptStage(StageID id) { Text nameText = StageDiscriptionPanel.FindChild("StageNameText").GetComponent<Text>(); InputField discriptionField = StageDiscriptionPanel.FindChild("DiscriptionField").GetComponent<InputField>(); StageInformation info = StageScript.GetInformation(id); nameText.text = info.StageName; discriptionField.text = info.Discription; SetDifficulty(info.Difficulty); }
public int GetPlayerNumber(StageID ID) { int i = 0; switch (ID) { case StageID.Stage0: i = 3; break; case StageID.Stage1: i = 3; break; case StageID.Stage2: i = 5; break; case StageID.Stage3: i = 4; break; case StageID.Stage4: i = 5; break; case StageID.Stage5: i = 4; break; case StageID.Stage6: i = 3; break; case StageID.Stage7: i = 5; break; case StageID.Stage8: i = 4; break; case StageID.Stage9: i = 4; break; case StageID.Stage10: i = 5; break; case StageID.Stage11: i = 4; break; case StageID.Stage12: i = 4; break; default: break; } return(i); }
public void ReadINIConfig(string FileName) { StartPositions = new List <StartPositionEntry>(); EndPositions = new List <EndPositionEntry>(); BragPositions = new List <EndPositionEntry>(); StartPositionEntry SonicStartPosition = new StartPositionEntry(); StartPositionEntry DarkStartPosition = new StartPositionEntry(); StartPositionEntry RoseStartPosition = new StartPositionEntry(); StartPositionEntry ChaotixStartPosition = new StartPositionEntry(); StartPositionEntry ForeditStartPosition = new StartPositionEntry(); EndPositionEntry SonicEndPosition = new EndPositionEntry(); EndPositionEntry DarkEndPosition = new EndPositionEntry(); EndPositionEntry RoseEndPosition = new EndPositionEntry(); EndPositionEntry ChaotixEndPosition = new EndPositionEntry(); EndPositionEntry ForeditEndPosition = new EndPositionEntry(); EndPositionEntry SonicBragPosition = new EndPositionEntry(); EndPositionEntry DarkBragPosition = new EndPositionEntry(); EndPositionEntry RoseBragPosition = new EndPositionEntry(); EndPositionEntry ChaotixBragPosition = new EndPositionEntry(); EndPositionEntry ForeditBragPosition = new EndPositionEntry(); string[] ConfigFile = File.ReadAllLines(FileName); if (ConfigFile[0] != "HEROES_MOD_LOADER_LEVEL_CONFIG_FILE") { throw new Exception("Error: unsupported file."); } string seename; if (ConfigFile[1].Contains("LEVEL_FLAG")) { seename = ConfigFile[1].Split('=')[1]; } else { throw new Exception("Error: unsupported file."); } currentID = StageID.Null; foreach (StageID i in Enum.GetValues(typeof(StageID))) { if (i.ToString() == seename) { currentID = i; break; } } if (currentID == StageID.Null) { throw new Exception("Error: unsupported file."); } for (int x = 2; x < ConfigFile.Length; x++) { string Value = ConfigFile[x].Substring(ConfigFile[x].IndexOf("=") + 1); if (ConfigFile[x].StartsWith("SONIC_")) { if (ConfigFile[x].Contains("START_")) { if (ConfigFile[x].Contains("POSITIONX")) { SonicStartPosition.PositionX = Convert.ToSingle(Value); continue; } else if (ConfigFile[x].Contains("POSITIONY")) { SonicStartPosition.PositionY = Convert.ToSingle(Value); continue; } else if (ConfigFile[x].Contains("POSITIONZ")) { SonicStartPosition.PositionZ = Convert.ToSingle(Value); continue; } else if (ConfigFile[x].Contains("PITCH")) { SonicStartPosition.Pitch = Convert.ToUInt16(Value); continue; } else if (ConfigFile[x].Contains("MODE")) { SonicStartPosition.Mode = (GenericStageInjectionCommon.Structs.Enums.StartPositionMode)Convert.ToByte(Value); continue; } else if (ConfigFile[x].Contains("RUNNING")) { SonicStartPosition.HoldTime = Convert.ToInt32(Value); continue; } } else if (ConfigFile[x].Contains("END_")) { if (ConfigFile[x].Contains("POSITIONX")) { SonicEndPosition.PositionX = Convert.ToSingle(Value); continue; } else if (ConfigFile[x].Contains("POSITIONY")) { SonicEndPosition.PositionY = Convert.ToSingle(Value); continue; } else if (ConfigFile[x].Contains("POSITIONZ")) { SonicEndPosition.PositionZ = Convert.ToSingle(Value); continue; } else if (ConfigFile[x].Contains("PITCH")) { SonicEndPosition.Pitch = Convert.ToUInt16(Value); continue; } } else if (ConfigFile[x].Contains("BRAG_")) { if (ConfigFile[x].Contains("POSITIONX")) { SonicBragPosition.PositionX = Convert.ToSingle(Value); continue; } else if (ConfigFile[x].Contains("POSITIONY")) { SonicBragPosition.PositionY = Convert.ToSingle(Value); continue; } else if (ConfigFile[x].Contains("POSITIONZ")) { SonicBragPosition.PositionZ = Convert.ToSingle(Value); continue; } else if (ConfigFile[x].Contains("PITCH")) { SonicBragPosition.Pitch = Convert.ToUInt16(Value); continue; } } } else if (ConfigFile[x].StartsWith("DARK_")) { if (ConfigFile[x].Contains("START_")) { if (ConfigFile[x].Contains("POSITIONX")) { DarkStartPosition.PositionX = Convert.ToSingle(Value); continue; } else if (ConfigFile[x].Contains("POSITIONY")) { DarkStartPosition.PositionY = Convert.ToSingle(Value); continue; } else if (ConfigFile[x].Contains("POSITIONZ")) { DarkStartPosition.PositionZ = Convert.ToSingle(Value); continue; } else if (ConfigFile[x].Contains("PITCH")) { DarkStartPosition.Pitch = Convert.ToUInt16(Value); continue; } else if (ConfigFile[x].Contains("MODE")) { DarkStartPosition.Mode = (GenericStageInjectionCommon.Structs.Enums.StartPositionMode)Convert.ToByte(Value); continue; } else if (ConfigFile[x].Contains("RUNNING")) { DarkStartPosition.HoldTime = Convert.ToInt32(Value); continue; } } else if (ConfigFile[x].Contains("END_")) { if (ConfigFile[x].Contains("POSITIONX")) { DarkEndPosition.PositionX = Convert.ToSingle(Value); continue; } else if (ConfigFile[x].Contains("POSITIONY")) { DarkEndPosition.PositionY = Convert.ToSingle(Value); continue; } else if (ConfigFile[x].Contains("POSITIONZ")) { DarkEndPosition.PositionZ = Convert.ToSingle(Value); continue; } else if (ConfigFile[x].Contains("PITCH")) { DarkEndPosition.Pitch = Convert.ToUInt16(Value); continue; } } else if (ConfigFile[x].Contains("BRAG_")) { if (ConfigFile[x].Contains("POSITIONX")) { DarkBragPosition.PositionX = Convert.ToSingle(Value); continue; } else if (ConfigFile[x].Contains("POSITIONY")) { DarkBragPosition.PositionY = Convert.ToSingle(Value); continue; } else if (ConfigFile[x].Contains("POSITIONZ")) { DarkBragPosition.PositionZ = Convert.ToSingle(Value); continue; } else if (ConfigFile[x].Contains("PITCH")) { DarkBragPosition.Pitch = Convert.ToUInt16(Value); continue; } } } else if (ConfigFile[x].StartsWith("ROSE_")) { if (ConfigFile[x].Contains("START_")) { if (ConfigFile[x].Contains("POSITIONX")) { RoseStartPosition.PositionX = Convert.ToSingle(Value); continue; } else if (ConfigFile[x].Contains("POSITIONY")) { RoseStartPosition.PositionY = Convert.ToSingle(Value); continue; } else if (ConfigFile[x].Contains("POSITIONZ")) { RoseStartPosition.PositionZ = Convert.ToSingle(Value); continue; } else if (ConfigFile[x].Contains("PITCH")) { RoseStartPosition.Pitch = Convert.ToUInt16(Value); continue; } else if (ConfigFile[x].Contains("MODE")) { RoseStartPosition.Mode = (GenericStageInjectionCommon.Structs.Enums.StartPositionMode)Convert.ToByte(Value); continue; } else if (ConfigFile[x].Contains("RUNNING")) { RoseStartPosition.HoldTime = Convert.ToInt32(Value); continue; } } else if (ConfigFile[x].Contains("END_")) { if (ConfigFile[x].Contains("POSITIONX")) { RoseEndPosition.PositionX = Convert.ToSingle(Value); continue; } else if (ConfigFile[x].Contains("POSITIONY")) { RoseEndPosition.PositionY = Convert.ToSingle(Value); continue; } else if (ConfigFile[x].Contains("POSITIONZ")) { RoseEndPosition.PositionZ = Convert.ToSingle(Value); continue; } else if (ConfigFile[x].Contains("PITCH")) { RoseEndPosition.Pitch = Convert.ToUInt16(Value); continue; } } else if (ConfigFile[x].Contains("BRAG_")) { if (ConfigFile[x].Contains("POSITIONX")) { RoseBragPosition.PositionX = Convert.ToSingle(Value); continue; } else if (ConfigFile[x].Contains("POSITIONY")) { RoseBragPosition.PositionY = Convert.ToSingle(Value); continue; } else if (ConfigFile[x].Contains("POSITIONZ")) { RoseBragPosition.PositionZ = Convert.ToSingle(Value); continue; } else if (ConfigFile[x].Contains("PITCH")) { RoseBragPosition.Pitch = Convert.ToUInt16(Value); continue; } } } else if (ConfigFile[x].StartsWith("CHAOTIX_")) { if (ConfigFile[x].Contains("START_")) { if (ConfigFile[x].Contains("POSITIONX")) { ChaotixStartPosition.PositionX = Convert.ToSingle(Value); continue; } else if (ConfigFile[x].Contains("POSITIONY")) { ChaotixStartPosition.PositionY = Convert.ToSingle(Value); continue; } else if (ConfigFile[x].Contains("POSITIONZ")) { ChaotixStartPosition.PositionZ = Convert.ToSingle(Value); continue; } else if (ConfigFile[x].Contains("PITCH")) { ChaotixStartPosition.Pitch = Convert.ToUInt16(Value); continue; } else if (ConfigFile[x].Contains("MODE")) { ChaotixStartPosition.Mode = (GenericStageInjectionCommon.Structs.Enums.StartPositionMode)Convert.ToByte(Value); continue; } else if (ConfigFile[x].Contains("RUNNING")) { ChaotixStartPosition.HoldTime = Convert.ToInt32(Value); continue; } } else if (ConfigFile[x].Contains("END_")) { if (ConfigFile[x].Contains("POSITIONX")) { ChaotixEndPosition.PositionX = Convert.ToSingle(Value); continue; } else if (ConfigFile[x].Contains("POSITIONY")) { ChaotixEndPosition.PositionY = Convert.ToSingle(Value); continue; } else if (ConfigFile[x].Contains("POSITIONZ")) { ChaotixEndPosition.PositionZ = Convert.ToSingle(Value); continue; } else if (ConfigFile[x].Contains("PITCH")) { ChaotixEndPosition.Pitch = Convert.ToUInt16(Value); continue; } } else if (ConfigFile[x].Contains("BRAG_")) { if (ConfigFile[x].Contains("POSITIONX")) { ChaotixBragPosition.PositionX = Convert.ToSingle(Value); continue; } else if (ConfigFile[x].Contains("POSITIONY")) { ChaotixBragPosition.PositionY = Convert.ToSingle(Value); continue; } else if (ConfigFile[x].Contains("POSITIONZ")) { ChaotixBragPosition.PositionZ = Convert.ToSingle(Value); continue; } else if (ConfigFile[x].Contains("PITCH")) { ChaotixBragPosition.Pitch = Convert.ToUInt16(Value); continue; } } } else if (ConfigFile[x].StartsWith("FOREDIT_")) { if (ConfigFile[x].Contains("START_")) { if (ConfigFile[x].Contains("POSITIONX")) { ForeditStartPosition.PositionX = Convert.ToSingle(Value); continue; } else if (ConfigFile[x].Contains("POSITIONY")) { ForeditStartPosition.PositionY = Convert.ToSingle(Value); continue; } else if (ConfigFile[x].Contains("POSITIONZ")) { ForeditStartPosition.PositionZ = Convert.ToSingle(Value); continue; } else if (ConfigFile[x].Contains("PITCH")) { ForeditStartPosition.Pitch = Convert.ToUInt16(Value); continue; } else if (ConfigFile[x].Contains("MODE")) { ForeditStartPosition.Mode = (GenericStageInjectionCommon.Structs.Enums.StartPositionMode)Convert.ToByte(Value); continue; } else if (ConfigFile[x].Contains("RUNNING")) { ForeditStartPosition.HoldTime = Convert.ToInt32(Value); continue; } } else if (ConfigFile[x].Contains("END_")) { if (ConfigFile[x].Contains("POSITIONX")) { ForeditEndPosition.PositionX = Convert.ToSingle(Value); continue; } else if (ConfigFile[x].Contains("POSITIONY")) { ForeditEndPosition.PositionY = Convert.ToSingle(Value); continue; } else if (ConfigFile[x].Contains("POSITIONZ")) { ForeditEndPosition.PositionZ = Convert.ToSingle(Value); continue; } else if (ConfigFile[x].Contains("PITCH")) { ForeditEndPosition.Pitch = Convert.ToUInt16(Value); continue; } } else if (ConfigFile[x].Contains("BRAG_")) { if (ConfigFile[x].Contains("POSITIONX")) { ForeditBragPosition.PositionX = Convert.ToSingle(Value); continue; } else if (ConfigFile[x].Contains("POSITIONY")) { ForeditBragPosition.PositionY = Convert.ToSingle(Value); continue; } else if (ConfigFile[x].Contains("POSITIONZ")) { ForeditBragPosition.PositionZ = Convert.ToSingle(Value); continue; } else if (ConfigFile[x].Contains("PITCH")) { ForeditBragPosition.Pitch = Convert.ToUInt16(Value); continue; } } } } StartPositions.Add(SonicStartPosition); StartPositions.Add(DarkStartPosition); StartPositions.Add(RoseStartPosition); StartPositions.Add(ChaotixStartPosition); StartPositions.Add(ForeditStartPosition); StartPositions[0].NewColor(Color.Blue.ToVector3()); StartPositions[1].NewColor(Color.Red.ToVector3()); StartPositions[2].NewColor(Color.HotPink.ToVector3()); StartPositions[3].NewColor(Color.Green.ToVector3()); StartPositions[4].NewColor(Color.Orange.ToVector3()); EndPositions.Add(SonicEndPosition); EndPositions.Add(DarkEndPosition); EndPositions.Add(RoseEndPosition); EndPositions.Add(ChaotixEndPosition); EndPositions.Add(ForeditEndPosition); EndPositions[0].NewColor(Color.LightBlue.ToVector3()); EndPositions[1].NewColor(Color.IndianRed.ToVector3()); EndPositions[2].NewColor(Color.Pink.ToVector3()); EndPositions[3].NewColor(Color.LightGreen.ToVector3()); EndPositions[4].NewColor(Color.Yellow.ToVector3()); BragPositions.Add(SonicBragPosition); BragPositions.Add(DarkBragPosition); BragPositions.Add(RoseBragPosition); BragPositions.Add(ChaotixBragPosition); BragPositions.Add(ForeditBragPosition); BragPositions[0].NewColor(Color.DarkBlue.ToVector3()); BragPositions[1].NewColor(Color.DarkRed.ToVector3()); BragPositions[2].NewColor(Color.DarkMagenta.ToVector3()); BragPositions[3].NewColor(Color.DarkGreen.ToVector3()); BragPositions[4].NewColor(Color.DarkOrange.ToVector3()); ComboLevelConfig.SelectedItem = currentID; ComboBoxTeam.SelectedIndex = 0; }
/// <summary> /// This method is quite ugly. The quality of it is the same as the edginess of this class. /// </summary> public static string GetDescription(StageID stageId, CurrentMission mission) { switch (stageId) { // 100 case StageID.Westopolis: return(Westopolis.GetDescription(mission)); // 200 case StageID.DigitalCircuit: return(DigitalCircuit.GetDescription(mission)); case StageID.GlyphicCanyon: return(GlyphicCanyon.GetDescription(mission)); case StageID.LethalHighway: return(LethalHighway.GetDescription(mission)); // 300 case StageID.CrypticCastle: return(CrypticCastle.GetDescription(mission)); case StageID.PrisonIsland: return(PrisonIsland.GetDescription(mission)); case StageID.CircusPark: return(CircusPark.GetDescription(mission)); // 400 case StageID.CentralCity: return(CentralCity.GetDescription(mission)); case StageID.TheDoom: return(TheDoom.GetDescription(mission)); case StageID.SkyTroops: return(SkyTroops.GetDescription(mission)); case StageID.MadMatrix: return(MadMatrix.GetDescription(mission)); case StageID.DeathRuins: return(DeathRuins.GetDescription(mission)); // 500 case StageID.TheARK: return(TheArk.GetDescription(mission)); case StageID.AirFleet: return(AirFleet.GetDescription(mission)); case StageID.IronJungle: return(IronJungle.GetDescription(mission)); case StageID.SpaceGadget: return(SpaceGadget.GetDescription(mission)); case StageID.LostImpact: return(LostImpact.GetDescription(mission)); // 600 case StageID.GUNFortress: return(GunFortress.GetDescription(mission)); case StageID.BlackComet: return(BlackComet.GetDescription(mission)); case StageID.LavaShelter: return(LavaShelter.GetDescription(mission)); case StageID.CosmicFall: return(CosmicFall.GetDescription(mission)); case StageID.FinalHaunt: return(FinalHaunt.GetDescription(mission)); } return(""); }
private void ReadJSONConfig(string fileName) { GenericStageInjectionCommon.Shared.Config c = GenericStageInjectionCommon.Shared.Config.ParseConfig(fileName); StartPositions.Clear(); EndPositions.Clear(); BragPositions.Clear(); if (c.StartPositions != null) { foreach (PositionStart s in c.StartPositions) { StartPositions.Add(new StartPositionEntry() { PositionX = s.Position.X, PositionY = s.Position.Y, PositionZ = s.Position.Z, HoldTime = s.HoldTime, Mode = s.Mode, Pitch = s.Pitch }); } } while (StartPositions.Count < 5) { StartPositions.Add(new StartPositionEntry()); } while (StartPositions.Count > 5) { StartPositions.RemoveAt(StartPositions.Count - 1); } if (c.EndPositions != null) { foreach (PositionEnd s in c.EndPositions) { EndPositions.Add(new EndPositionEntry() { PositionX = s.Position.X, PositionY = s.Position.Y, PositionZ = s.Position.Z, Pitch = s.Pitch }); } } while (EndPositions.Count < 5) { EndPositions.Add(new EndPositionEntry()); } while (EndPositions.Count > 5) { EndPositions.RemoveAt(EndPositions.Count - 1); } if (c.BragPositions != null) { foreach (PositionEnd s in c.BragPositions) { BragPositions.Add(new EndPositionEntry() { PositionX = s.Position.X, PositionY = s.Position.Y, PositionZ = s.Position.Z, Pitch = s.Pitch }); } } while (BragPositions.Count < 5) { BragPositions.Add(new EndPositionEntry()); } while (BragPositions.Count > 5) { BragPositions.RemoveAt(BragPositions.Count - 1); } StartPositions[0].NewColor(Color.Blue.ToVector3()); StartPositions[1].NewColor(Color.Red.ToVector3()); StartPositions[2].NewColor(Color.HotPink.ToVector3()); StartPositions[3].NewColor(Color.Green.ToVector3()); StartPositions[4].NewColor(Color.Orange.ToVector3()); EndPositions[0].NewColor(Color.LightBlue.ToVector3()); EndPositions[1].NewColor(Color.IndianRed.ToVector3()); EndPositions[2].NewColor(Color.Pink.ToVector3()); EndPositions[3].NewColor(Color.LightGreen.ToVector3()); EndPositions[4].NewColor(Color.Yellow.ToVector3()); BragPositions[0].NewColor(Color.DarkBlue.ToVector3()); BragPositions[1].NewColor(Color.DarkRed.ToVector3()); BragPositions[2].NewColor(Color.DarkMagenta.ToVector3()); BragPositions[3].NewColor(Color.DarkGreen.ToVector3()); BragPositions[4].NewColor(Color.DarkOrange.ToVector3()); currentID = c.StageId; ComboLevelConfig.SelectedItem = currentID; }
public IStage(Updater Updater, StageID StageID) { StageID_ = StageID; Updater_ = Updater; NextStageID_ = StageID.Error; }
public void Update(StageID stageID) { Button_1.Text = ""+stageId; Label_1.Text = ""+stageId; if(Global.isStageOpened[(int)stageID]){ if(stageID == StageID.Stage1){ ImageBox_1.Image = new ImageAsset("/Application/assets/statusbg.jpg"); Label_2.Text = "市街地ステージ"; } }else{ ImageBox_1.Image = new ImageAsset(new Image(ImageMode.Rgba,new ImageSize(960,544),new ImageColor(0,0,0,255))); ; Button_1.Enabled = false; Label_2.Text = "Stage " + ((int)stageId-1) + "クリアで開放"; } }
/// <summary> /// gにidで指定されたStageのScriptをアタッチする /// </summary> /// <param name="id"></param> /// <param name="g"></param> public static void AttachInstance(StageID id, GameObject g) { switch(id) { case StageID.TestStage: g.AddComponent<TestStageScript>(); break; case StageID.Tutorial: g.AddComponent<TutorialStageScript>(); break; } }
private void InitializeWidget(LayoutOrientation orientation, StageID stageID) { ImageBox_1 = new ImageBox(); ImageBox_1.Name = "ImageBox_1"; Button_1 = new Button(); Button_1.Name = "Button_1"; Panel_1 = new Panel(); Panel_1.Name = "Panel_1"; Label_1 = new Label(); Label_1.Name = "Label_1"; Label_2 = new Label(); Label_2.Name = "Label_2"; // ImageBox_1 ImageBox_1.ImageScaleType = ImageScaleType.Center; // Button_1 Button_1.TextColor = new UIColor(255f / 255f, 255f / 255f, 255f / 255f, 255f / 255f); Button_1.TextFont = new UIFont(FontAlias.System, 25, FontStyle.Regular); // Panel_1 Panel_1.BackgroundColor = new UIColor(153f / 255f, 153f / 255f, 153f / 255f, 255f / 255f); Panel_1.Clip = true; Panel_1.AddChildLast(ImageBox_1); Panel_1.AddChildLast(Button_1); // Label_1 Label_1.TextColor = new UIColor(255f / 255f, 255f / 255f, 255f / 255f, 255f / 255f); Label_1.Font = new UIFont(FontAlias.System, 80, FontStyle.Bold); Label_1.LineBreak = LineBreak.Character; Label_1.HorizontalAlignment = HorizontalAlignment.Center; Label_1.TextShadow = new TextShadowSettings() { Color = new UIColor(128f / 255f, 128f / 255f, 128f / 255f, 127f / 255f), HorizontalOffset = 2f, VerticalOffset = 2f, }; // Label_2 Label_2.TextColor = new UIColor(255f / 255f, 255f / 255f, 255f / 255f, 255f / 255f); Label_2.Font = new UIFont(FontAlias.System, 50, FontStyle.Bold); Label_2.LineBreak = LineBreak.Character; Label_2.HorizontalAlignment = HorizontalAlignment.Center; Label_2.TextShadow = new TextShadowSettings() { Color = new UIColor(128f / 255f, 128f / 255f, 128f / 255f, 127f / 255f), HorizontalOffset = 2f, VerticalOffset = 2f, }; // PanelStage this.BackgroundColor = new UIColor(153f / 255f, 153f / 255f, 153f / 255f, 255f / 255f); this.Clip = true; this.AddChildLast(Panel_1); this.AddChildLast(Label_1); this.AddChildLast(Label_2); SetWidgetLayout(orientation); Update(stageID); }
public static StageInformation GetInformation(StageID id) { switch(id) { case StageID.Tutorial: return TutorialStageScript.Information; case StageID.TestStage: return TestStageScript.Information; case StageID.TestStage1: return TestStageScript.Information; case StageID.TestStage2: return TestStage2.Information; case StageID.TestStage3: return TestStage3.Information; case StageID.NFStage: return NFStageScript.Information; } return null; }
/// <summary> /// ゲームを開始するメソッド /// </summary> /// <param name='stageId'> /// 開始するステージID /// </param> public static void StartGame(StageID stageId) { Scenes.sceneOnGame.Cleanup(); // 背景テクスチャをロード backGroundTexture = new Texture2D("Application/resourses/background1.jpg", false); backGroundTextureInfo = new Sce.PlayStation.HighLevel.GameEngine2D.Base.TextureInfo(backGroundTexture); // 自機テクスチャをロード myShipTexture = new Texture2D("Application/resourses/myCharacter.gif", false); myShipTextureInfo = new Sce.PlayStation.HighLevel.GameEngine2D.Base.TextureInfo(myShipTexture); // スプライト作成 backGroundSprite = new SpriteUV(){TextureInfo = backGroundTextureInfo}; backGroundSprite.Quad.S = backGroundTextureInfo.TextureSizef; myShipSprite = new SpriteUV(){TextureInfo = myShipTextureInfo}; myShipSprite.Quad.S = myShipTextureInfo.TextureSizef; myShipSprite.Scale = new Vector2(0.8f,0.8f); // スプライトの中心をテクスチャの中心に設定 backGroundSprite.CenterSprite(); myShipSprite.CenterSprite(); // スプライトの表示位置をカメラの中央に配置 backGroundSprite.Position = Scenes.sceneOnGame.Camera.CalcBounds().Center; myShipSprite.Position = new Vector2(100,272); // シーンの子要素としてスプライトを追加 Scenes.sceneOnGame.AddChild(backGroundSprite); Scenes.sceneOnGame.AddChild(myShipSprite); Enemy.InitEnemy(); MyBullet.InitMyBullet(); EnemyBullet.InitEnemyBullet(); Item.InitItem(); Rayer.InitRayer(); // 乱数発生インスタンスを生成 random = new Random(); // 削除待ちキュー作成 myBulletDeleteQueue = new ArrayList(); enemyBulletDeleteQueue = new ArrayList(); enemyDeleteQueue = new ArrayList(); itemDeleteQueue = new ArrayList(); Global.characterStack = 4; Global.characterActive = true; Global.score = 0; Global.skillPoint = 0; Global.isClear = false; Global.isGameOver = false; Rayer.UpdateScore(0); Rayer.UpdateCharacterStack(0); Rayer.UpdateSkillPoint(0); time = 0; tickCount = 0; playingStageId = stageId; SkillTimeCount = 0.0f; defaultSkillInTime = false; Stage.StartStage1(); Director.Instance.Update (); Scenes.sceneOnGame.RegisterDisposeOnExitRecursive(); Scheduler.Instance.Schedule(Scenes.sceneOnGame,Tick,0.01f,false); }
// 스테이지를 바꾸는 코루틴 호출 함수 public static void ChangeStage(StageID stageID, Transform stagePoint = null) { Instance.StartCoroutine(Instance.Change(stageID, stagePoint)); }
private void InitializeWidget(StageID stageID) { InitializeWidget(LayoutOrientation.Horizontal, stageID); }
public int GetReward(StageID ID) { int reward = 0; switch (ID) { case StageID.Stage0: reward = 500; break; case StageID.Stage1: reward = 1500; break; case StageID.Stage2: reward = 1500; break; case StageID.Stage3: reward = 2000; break; case StageID.Stage4: reward = 5000; break; case StageID.Stage5: reward = 2000; break; case StageID.Stage6: reward = 3000; break; case StageID.Stage7: reward = 3000; break; case StageID.Stage8: reward = 1000; break; case StageID.Stage9: reward = 2000; break; case StageID.Stage10: reward = 3000; break; case StageID.Stage11: reward = 1000; break; case StageID.Stage12: reward = 1000; break; default: break; } return(reward); }
public void SetNextStageID(StageID NextStageID) { NextStageID_ = NextStageID; }