コード例 #1
0
        public void LoadReplayAndStart(SoundodgerLevel level, Replay replay,
                                       LevelSettings settings)
        {
            player    = new ReplayingPlayer(replay);
            Replay    = replay;
            ActiveMod = replay.Mod;

            hitIterator = new TimeIter <TsVal <InvincibilityType> >(
                replay.Hits, x => x.Time, OnNewHit);
            slomoIterator = new TimeIter <TsVal <bool> >(
                replay.SlomoToggles, x => x.Time, OnNewSlomo);

            BurstShot.InitRandom(replay.BurstSeed);

            watchingReplayText = new SimpleText
            {
                Text     = $"[ replay ]",
                Font     = Fonts.Content.Orkney13,
                Color    = new Color(Color.Gray, 0.8f),
                Position = new Vector2(NoisEvader.ScreenBounds.Width * 0.5f,
                                       NoisEvader.ScreenBounds.Height * 0.95f),
                YOrigin = YOrigin.Center,
                XOrigin = XOrigin.Center
            };

            InitAndStart(level, ActiveMod, settings);
        }
コード例 #2
0
ファイル: ReplayingPlayer.cs プロジェクト: sk-zk/NoisEvader
 public ReplayingPlayer(Replay replay) : base()
 {
     this.replay      = replay;
     positionIterator = new TimeIter <TsVal <Vector2> >(
         replay.PlayerPositions, x => x.Time, OnNewPosition);
     heartIterator = new TimeIter <float>(
         replay.Hearts, x => x, OnNewHeart);
 }