//產生亂數�E�E�E�數字不要E�E��E�褁E�E��E�允E private int GetRandomValue(SingleHitObjectConvertParameter singleTupleHitObjects, int index) { //getTheTotal var totalHitObject = singleTupleHitObjects.ListBaseHitObject.Count; return((int)singleTupleHitObjects.StartTime + index * (totalHitObject - 1)); }
/// <summary> /// 產生隨機參數 /// </summary> /// <returns></returns> private int CalRandNumber(SingleHitObjectConvertParameter singleTuple, int index) { var addNumber = 0; if (index == 1) //第二個物件 { addNumber = 2; } if (index == 2) //第三個物件 { addNumber = 1; } if (index == 2) //第四個物件 { addNumber = 3; } return(singleTuple.MultiNumber + (int)singleTuple.StartTime + singleTuple.ListBaseHitObject.Count + addNumber); //BPM,為了避免BPM 200 的譜特別簡單 var periodTime = (int)(60 / (double)(int)_singleSlideParameter.SliceConvertParameter.BPM) * 1000; // return(singleTuple.MultiNumber + (int)singleTuple.StartTime % periodTime + singleTuple.ListBaseHitObject.Count); }
internal void Process(SingleHitObjectConvertParameter singleTuple) { for (var i = 0; i < singleTuple.ListBaseHitObject.Count; i++) { singleTuple.ListBaseHitObject[i].Shape = CalRandomShape(singleTuple, i); } }
internal void Process(SingleHitObjectConvertParameter singleTuple, int nowIndex) { //上一個群組的物件 _lastHitObjectTuple = _singleSlideParameter.HitObjectConvertParameter.ListSingleHitObjectConvertParameter[nowIndex - 1]; if (FisrtConbo) { OptimizeBetterHitExperiance(); FisrtConbo = false; } if (convert) { for (var i = 0; i < singleTuple.ListBaseHitObject.Count; i++) { if (_lastHitObjectTuple.ListBaseHitObject.Count > i) { singleTuple.ListBaseHitObject[i].Shape = FindNext(_lastHitObjectTuple.ListBaseHitObject[i].Shape); } } convert = false; } else { for (var i = 0; i < singleTuple.ListBaseHitObject.Count; i++) { if (_lastHitObjectTuple.ListBaseHitObject.Count > i) { singleTuple.ListBaseHitObject[i].Shape = FindPrevious(_lastHitObjectTuple.ListBaseHitObject[i].Shape); } } convert = true; } }
public RpHitObject GenerateRpHitObject(SingleHitObjectConvertParameter singleHitObject, ConvertParameter single) { var rpHitObject = new RpHitObject(single.ContainerConvertParameter.ListObjectContainer[0].ListContainObject[0], singleHitObject.StartTime); //fake sample return(rpHitObject); }
//指定Combo public void AssignComboTupleShapes(SingleHitObjectConvertParameter singleTuple, int index) { if (index != 0) { _processComboObject.Process(singleTuple, index); } else { AssignNormalTupleShapes(singleTuple); } }
/// <summary> /// 計算隨機形狀 /// </summary> /// <returns></returns> private RpBaseHitObjectType.Shape CalRandomShape(SingleHitObjectConvertParameter singleTuple, int index) { var randNum = CalRandNumber(singleTuple, index); switch (randNum % 4) { case 0: return(RpBaseHitObjectType.Shape.Up); case 1: return(RpBaseHitObjectType.Shape.Left); case 2: return(RpBaseHitObjectType.Shape.Down); case 3: return(RpBaseHitObjectType.Shape.Right); } return(RpBaseHitObjectType.Shape.Down); }
/// <summary> /// 計算隨機形狀 /// </summary> /// <returns></returns> private Direction CalRandomShape(SingleHitObjectConvertParameter singleTuple, int index) { var randNum = CalRandNumber(singleTuple, index); switch (randNum % 4) { case 0: return(Direction.Up); case 1: return(Direction.Left); case 2: return(Direction.Down); case 3: return(Direction.Right); } return(Direction.Down); }
public RpHitObject GenerateRpHitObject(SingleHitObjectConvertParameter singleHitObject) { var rpHitObject = new RpHitObject(); //fake sample rpHitObject.Samples.Clear(); rpHitObject.Samples.Add( new SampleInfo { Bank = "whistle", Name = "soft" } ); //fake position rpHitObject.Position = new Vector2(100, 100); rpHitObject.StartTime = singleHitObject.StartTime; return(rpHitObject); }
public HitObjectConvertParameter Analyse(ConvertParameter single) { //打擊物件的參數 var parameter = new HitObjectConvertParameter(); for (var i = 0; i < single.ListRefrenceObject.Count; i++) { //單一參數 var singleParameter = new SingleHitObjectConvertParameter(); //有無combo singleParameter.IsCombo = AnaylseCombo.IsCombo(single, i); //出現物件數量 singleParameter.MultiNumber = AnaylseMulti.GetMultiNumber(single, i); //開始時間 singleParameter.StartTime = single.ListRefrenceObject[i].StartTime; //結束時間 singleParameter.EndTime = single.ListRefrenceObject[i].StartTime; //增加物件 parameter.ListSingleHitObjectConvertParameter.Add(singleParameter); } return(parameter); }
/// <summary> /// 產生隨機參數 /// 目前先保存下來 /// </summary> /// <returns></returns> private int OLD_CalRandNumber(SingleHitObjectConvertParameter singleTuple) { return(singleTuple.MultiNumber + (int)singleTuple.StartTime + singleTuple.ListBaseHitObject.Count); }
/// <summary> /// 處理單一個打擊物體 /// </summary> private void processSingeNote(SingleHitObjectConvertParameter singleRpBaseHitObject) { //產生中間捕間的路徑 singleRpBaseHitObject.ListBaseHitObject[0].Curve.AntoGenerateEndPosition(_direction); }
/// <summary> /// 處理單一個打擊物體 /// </summary> private void processSingeNote(SingleHitObjectConvertParameter singleRpBaseHitObject) { //產生中間捕間的路徑 singleRpBaseHitObject.ListBaseHitObject[0].Curve.GenrtateMiddlePath(); }
//指定一般 public void AssignNormalTupleShapes(SingleHitObjectConvertParameter singleTuple) { _processObjectTypeRandom.Process(singleTuple); _processComboObject.FisrtConbo = true; }