diff --git a/GreatSpringGameJam/Content/Textures/Backgrounds.aseprite b/GreatSpringGameJam/Content/Textures/Backgrounds.aseprite index 96e97eb..839cff4 100644 Binary files a/GreatSpringGameJam/Content/Textures/Backgrounds.aseprite and b/GreatSpringGameJam/Content/Textures/Backgrounds.aseprite differ diff --git a/GreatSpringGameJam/Content/Textures/Backgrounds.png b/GreatSpringGameJam/Content/Textures/Backgrounds.png index 0ff2821..450e256 100644 Binary files a/GreatSpringGameJam/Content/Textures/Backgrounds.png and b/GreatSpringGameJam/Content/Textures/Backgrounds.png differ diff --git a/GreatSpringGameJam/Entity.cs b/GreatSpringGameJam/Entity.cs index 19ab883..9a3c0f2 100644 --- a/GreatSpringGameJam/Entity.cs +++ b/GreatSpringGameJam/Entity.cs @@ -38,7 +38,7 @@ namespace GreatSpringGameJam { if (normal.Y > 0) { onGround = true; var (_, below) = this.GetTileBelow(); - if (below != null && below.Properties.GetBool("JumpPad") && velocity.Y > 0) { + if (below != null && below.Properties.GetBool("JumpPad") && velocity.Y > 0.1F) { velocity.Y = -velocity.Y; continue; } diff --git a/GreatSpringGameJam/GameImpl.cs b/GreatSpringGameJam/GameImpl.cs index 09fca02..9a470f5 100644 --- a/GreatSpringGameJam/GameImpl.cs +++ b/GreatSpringGameJam/GameImpl.cs @@ -82,7 +82,7 @@ namespace GreatSpringGameJam { buttons.AddChild(new Button(Anchor.AutoCenter, new Vector2(1, 60), " Play ") { OnPressed = e => { if (!this.IsInCutscene) - this.StartLevel("Level4", Color.White); + this.StartLevel("Overworld", Color.White); } }); buttons.AddChild(new VerticalSpace(10)); diff --git a/GreatSpringGameJam/Map.cs b/GreatSpringGameJam/Map.cs index 0b0e404..ddf99f4 100644 --- a/GreatSpringGameJam/Map.cs +++ b/GreatSpringGameJam/Map.cs @@ -114,10 +114,14 @@ namespace GreatSpringGameJam { var parallax = camera.Position * parallaxFactor; var (parW, parH) = this.SizeInPixels.ToVector2() * (1 - parallaxFactor) + camera.ScaledViewport * parallaxFactor; var mountains = BackgroundTexture[0, 0, 8, 4]; - for (var x = 0; x < parW; x += mountains.Width * 2) { + for (var x = 0; x < parW; x += mountains.Width * 2) batch.Draw(mountains, parallax + new Vector2(x, parH - mountains.Height * 2), Color.White * 0.5F, 0, Vector2.Zero, 2, SpriteEffects.None, 0); + var clouds = BackgroundTexture[0, 4, 8, 2]; + for (var x = -1; x < parW / clouds.Width / 2; x++) { + var pos = new Vector2(x * clouds.Width * 2, parH - mountains.Height * 2 - clouds.Height * 4); + batch.Draw(clouds, parallax + pos + new Vector2((float) time.TotalGameTime.TotalSeconds * 3 % (clouds.Width * 2), 0), Color.White * 0.5F, 0, Vector2.Zero, 2, SpriteEffects.None, 0); + batch.Draw(clouds, parallax + pos + new Vector2(clouds.Width + (float) time.TotalGameTime.TotalSeconds * 2.5F % (clouds.Width * 2), clouds.Height * 1.5F), Color.White * 0.5F, 0, Vector2.Zero, 2, SpriteEffects.None, 0); } - // render map etc. this.DrawLayer(batch, "Background", camera); this.DrawLayer(batch, "Ground", camera);