void Awake() { Subject.addObserver(new Observer("details", (message) => { //難易度変更 if (message.isMemberOf("difficultButton")) { if (mMusicData == null) { return; } changeDifficult(EnumParser.parse <ScoreDifficult>(message.name)); return; } //音声再生位置変更 if (message.name == "playPositionListButtonPushed") { playMusic(); return; } //難易度初期設定 if (message.name == "initialDifficult") { mDifficultToggle.memberPushed(message.getParameter <ScoreDifficult>("difficult").ToString()); return; } })); }
static public KeyCode convertToCode(string s) { if (s == " ") { return(KeyCode.Space); } else { return(EnumParser.parse <KeyCode>(s.ToString())); } }
public override void getMessage(Message aMessage) { if (aMessage.name == "hittedNote" || aMessage.name == "missedNote")//タイピングの評価 { productHit(aMessage.getParameter <Note>("note"), aMessage.getParameter <TypeEvaluation.Evaluation>("evaluation")); displayTimeDifference(aMessage.getParameter <Note>("note"), aMessage.getParameter <float>("difference")); return; } if (aMessage.name == "practiceButtonPushed") //練習ボタン { parent.changeState(new PracticeState(parent)); return; } if (aMessage.name == "difficultButtonPushed") //難易度ボタン { MusicScoreData.mSelectedDifficult = EnumParser.parse <ScoreDifficult>(aMessage.getParameter <string>("selected")); parent.mScore.resetBars(); return; } }
public override void getMessage(Message aMessage) { if (aMessage.name == "endButtonPushed")//終了ボタン { MySceneManager.changeScene("selection"); return; } if (aMessage.name == "practiceButtonPushed")//練習ボタン { parent.changeState(new PracticePlayState(parent)); return; } if (aMessage.name == "difficultButtonPushed")//難易度ボタン { MusicScoreData.mSelectedDifficult = EnumParser.parse <ScoreDifficult>(aMessage.getParameter <string>("selected")); parent.mScore.resetBars(); return; } if (aMessage.name == "clickNote" || aMessage.name == "clickLyrics") //譜面クリック { parent.mScore.mCurrentQuarterBeat = aMessage.getParameter <float>("time"); return; } }
public static Mas create(Arg aData) { switch (aData.get <string>("type")) { case "land": Land tLand = new Land(); tLand.mType = MasStatus.MasType.land; tLand.position = aData.get <Vector2>("position"); tLand.mName = aData.get <string>("name"); tLand.mValue = aData.get <int>("value"); List <string> tAttribute = aData.get <List <string> >("attribute"); tLand.mAttribute1 = EnumParser.parse <LandMasStatus.LandAttribute>(tAttribute[0]); tLand.mAttribute2 = EnumParser.parse <LandMasStatus.LandAttribute>(tAttribute[1]); return(tLand); case "start": Start tStart = new Start(); tStart.mType = MasStatus.MasType.start; tStart.position = aData.get <Vector2>("position"); return(tStart); case "heart": case "bat": case "god": case "gear": case "question": Accident tAccident = new Accident(); tAccident.mType = MasStatus.MasType.accident; tAccident.position = aData.get <Vector2>("position"); tAccident.mAccidentType = aData.get <string>("type"); return(tAccident); default: throw new System.Exception("StageData-Mas : 不正なマスタイプ「" + aData.get <string>("type") + "」"); } }
/// <summary>文字列からFlagItemを生成</summary> static public MyFlagItem create(string a) { if (a == "") { return(null); } if (a.StartsWith("<", System.StringComparison.Ordinal)) { MyTag tTag = new MyTag(a); if (tTag.mTagName == "and") { MyFlagAndItems andItem = new MyFlagAndItems(); andItem.mItems = new MyFlagSingleItem[tTag.mArguments.Length]; for (int i = 0; i < tTag.mArguments.Length; ++i) { andItem.mItems[i] = (MyFlagSingleItem)create(tTag.mArguments[i]); } return(andItem); } else if (tTag.mTagName == "or") { MyFlagOrItems orItem = new MyFlagOrItems(); orItem.mItems = new MyFlagSingleItem[tTag.mArguments.Length]; for (int i = 0; i < tTag.mArguments.Length; ++i) { orItem.mItems[i] = (MyFlagSingleItem)create(tTag.mArguments[i]); } return(orItem); } else { throw new System.Exception("MyFlagItem : FlagItemの生成失敗「" + a + "」"); } } else { string[] tElements = a.Split(':'); //bool if (tElements[1] == "true" || tElements[1] == "True") { MyFlagBoolItem bItem = new MyFlagBoolItem(); bItem.mPath = tElements[0]; bItem.mValue = true; return(bItem); } if (tElements[1] == "false" || tElements[1] == "False") { MyFlagBoolItem bItem = new MyFlagBoolItem(); bItem.mPath = tElements[0]; bItem.mValue = false; return(bItem); } //float if (tElements.Length == 3) { MyFlagFloatItem fItem = new MyFlagFloatItem(); fItem.mPath = tElements[0]; fItem.mValue = float.Parse(tElements[1]); fItem.mCompare = EnumParser.parse <MyFlagFloatItem.Compare>(tElements[2]); return(fItem); } //string MyFlagStringItem sItem = new MyFlagStringItem(); sItem.mPath = tElements[0]; sItem.mValue = tElements[1]; return(sItem); } }