Exemple #1
0
        private static void DustEdgesOnRender(On.Celeste.DustEdges.orig_Render orig, DustEdges self)
        {
            Vector2?origCameraPosition = null;
            Camera  camera             = self.SceneAs <Level>()?.Camera;

            if (Settings.CenterCamera && savedCameraPosition != null && camera != null)
            {
                origCameraPosition = camera.Position;
                camera.Position    = savedCameraPosition.Value;
            }

            orig(self);

            if (origCameraPosition != null)
            {
                camera.Position = origCameraPosition.Value;
            }
        }
Exemple #2
0
        private static void onDustEdgesBeforeRender(On.Celeste.DustEdges.orig_BeforeRender orig, DustEdges self)
        {
            orig(self);

            // draw our image in ""substractive"" mode over the resort dust layer.
            float shift = (Engine.Scene.TimeActive * speed) % image.Width;

            Draw.SpriteBatch.Begin(SpriteSortMode.Deferred, substractive, SamplerState.PointClamp, DepthStencilState.None, RasterizerState.CullNone, null, Matrix.Identity);
            for (float offset = -shift; offset < 320; offset += image.Width)
            {
                Draw.SpriteBatch.Draw(image.Texture.Texture, new Vector2(offset, 0), Color.White);
            }
            Draw.SpriteBatch.End();
        }
Exemple #3
0
 private static void DustEdgesOnBeforeRender(On.Celeste.DustEdges.orig_BeforeRender orig, DustEdges self)
 {
     CenterTheCamera(() => orig(self));
 }