diff --git a/CityGame/CityGame.csproj b/CityGame/CityGame.csproj index 94368f5..739ee12 100644 --- a/CityGame/CityGame.csproj +++ b/CityGame/CityGame.csproj @@ -124,6 +124,9 @@ PreserveNewest + + Always + PreserveNewest diff --git a/CityGame/Classes/Entities/Car.cs b/CityGame/Classes/Entities/Car.cs index 790154b..f666b06 100644 --- a/CityGame/Classes/Entities/Car.cs +++ b/CityGame/Classes/Entities/Car.cs @@ -49,6 +49,7 @@ namespace CityGame.Classes.Entities { OCanvas canvas = new OCanvas(); Image car = new SourcedImage(PNGFile); + car.Effects.Add(new OutlineEffect()); canvas.Children.Add(car); var light = new LightSource { Radius = 128, Angle = 64, Intensity = 2, Color = Color.White, Type = LightSourceType.Spotlight, Rotation = -90, RotationOrigin = new Point(MainWindow.TileSize / 2, MainWindow.TileSize / 2) }; diff --git a/CityGame/Classes/Entities/Entity.cs b/CityGame/Classes/Entities/Entity.cs index 8726c61..116d29d 100644 --- a/CityGame/Classes/Entities/Entity.cs +++ b/CityGame/Classes/Entities/Entity.cs @@ -17,7 +17,7 @@ namespace CityGame.Classes.Entities public float Rotation { get; set; } public long Time { get; set; } public OCanvas Object { get; set; } - + public bool SingleSelect { get; set; } public OCanvas GetImage() { return Object; diff --git a/CityGame/Classes/Entities/GasPipe.cs b/CityGame/Classes/Entities/GasPipe.cs new file mode 100644 index 0000000..a1ec760 --- /dev/null +++ b/CityGame/Classes/Entities/GasPipe.cs @@ -0,0 +1,30 @@ +using CityGame.Classes.Rendering; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using WPFGame; + +namespace CityGame.Classes.Entities +{ + public class GasPipe : Entity + { + public int Exploded { get; set; } + public GasPipe() + { + if (MainWindow.random.Next(0, 2) == 0) Rotation += 180; + SingleSelect = true; + } + + public override OCanvas Render() + { + return new SourcedImage("ManholeCover.png"); + } + + public override void Tick(long deltaTime) + { + + } + } +} diff --git a/CityGame/MainWindow.xaml.cs b/CityGame/MainWindow.xaml.cs index 5262c0e..265c178 100644 --- a/CityGame/MainWindow.xaml.cs +++ b/CityGame/MainWindow.xaml.cs @@ -427,6 +427,13 @@ namespace CityGame Entities.Add(new PoliceCar { X = x, Y = y }); } + var roads = SourcedImage.GetObjectsBySourceFile("Road1.png", "Road2.png", "Road2c.png", "Road3c.png", "Road4c.png"); + var pipeCount = NPCCount; + var pipeRoads = roads.OrderBy(x => random.Next(0, roads.Count)).Take(pipeCount).ToArray(); + foreach (Image image in pipeRoads) + { + Entities.Add(new GasPipe { X = (float)Canvas.GetLeft(image.Parent), Y = (float)Canvas.GetTop(image.Parent), Rotation = image.Rotation }); + } for (int n = 0; n < NPCCount; n++) { diff --git a/CityGame/Resources/ManholeCover.png b/CityGame/Resources/ManholeCover.png new file mode 100644 index 0000000..d143609 Binary files /dev/null and b/CityGame/Resources/ManholeCover.png differ