Browse Source

Add TreeScene & TreeWorld.

main
Colin McMillen 4 years ago
parent
commit
56bc1abe06
  1. 1
      Shared/IWorld.cs
  2. 2
      Shared/Shared.projitems
  3. 6
      Shared/SneakGame.cs
  4. 25
      Shared/TreeScene.cs
  5. 15
      Shared/TreeWorld.cs

1
Shared/IWorld.cs

@ -3,6 +3,5 @@
namespace SemiColinGames {
public interface IWorld : IDisposable {
void Update(float modelTime, History<Input> input);
Camera Camera { get; }
}
}

2
Shared/Shared.projitems

@ -34,6 +34,8 @@
<Compile Include="$(MSBuildThisFileDirectory)Scene.cs" />
<Compile Include="$(MSBuildThisFileDirectory)SneakGame.cs" />
<Compile Include="$(MSBuildThisFileDirectory)Timer.cs" />
<Compile Include="$(MSBuildThisFileDirectory)TreeScene.cs" />
<Compile Include="$(MSBuildThisFileDirectory)TreeWorld.cs" />
<Compile Include="$(MSBuildThisFileDirectory)World.cs" />
</ItemGroup>
</Project>

6
Shared/SneakGame.cs

@ -64,9 +64,11 @@ namespace SemiColinGames {
private void LoadLevel() {
world?.Dispose();
world = new World(GraphicsDevice, Content.LoadString("levels/demo.json"));
// world = new World(GraphicsDevice, Content.LoadString("levels/demo.json"));
world = new TreeWorld();
scene?.Dispose();
scene = new Scene(GraphicsDevice, world.Camera);
// scene = new Scene(GraphicsDevice, ((World) world).Camera);
scene = new TreeScene(GraphicsDevice);
GC.Collect();
GC.WaitForPendingFinalizers();

25
Shared/TreeScene.cs

@ -0,0 +1,25 @@
using Microsoft.Xna.Framework;
using Microsoft.Xna.Framework.Audio;
using Microsoft.Xna.Framework.Graphics;
using System;
namespace SemiColinGames {
public sealed class TreeScene : IScene {
readonly Color backgroundColor = Color.SkyBlue;
readonly GraphicsDevice graphics;
public TreeScene(GraphicsDevice graphics) {
this.graphics = graphics;
}
public void Dispose() {
GC.SuppressFinalize(this);
}
public void Draw(bool isRunningSlowly, IWorld iworld, bool paused) {
graphics.Clear(backgroundColor);
}
}
}

15
Shared/TreeWorld.cs

@ -0,0 +1,15 @@
using Microsoft.Xna.Framework;
using Microsoft.Xna.Framework.Graphics;
using System;
using System.Collections.Generic;
namespace SemiColinGames {
public sealed class TreeWorld : IWorld {
public void Dispose() {
GC.SuppressFinalize(this);
}
public void Update(float modelTime, History<Input> input) {
}
}
}
Loading…
Cancel
Save