public override void Render() { if (Terminal == null) { return; } if (Units == Components.Units.Viewport) { for (int i = 0; i < Terminal.Size.X; i++) { for (int j = 0; j < Terminal.Size.Y; j++) { GlyphSheet.Draw(Window, i, j, Terminal.Get(i, j)); } } } else { for (int i = 0; i < Terminal.Size.X; i++) { for (int j = 0; j < Terminal.Size.Y; j++) { if (Game.ViewPort.Contains(new Bramble.Core.Vector2D(i, j))) { GlyphSheet.Draw(Window, i, j, Terminal.Get(i, j)); } } } } Terminal.Clear(); }
public override void Render() { if (Units == Components.Units.World) { if (Game.ViewPort.Contains(GameObject.Position + Offset)) { GlyphSheet.Draw(Window, GameObject.Position.X + Offset.X - Game.ViewPortOffset.X, GameObject.Position.Y + Offset.Y - Game.ViewPortOffset.Y, Character); } } else { GlyphSheet.Draw(Window, GameObject.Position.X, GameObject.Position.Y, Character); } }
public override void Render() { foreach (var node in Nodes) { if (Units == Components.Units.Viewport) { GlyphSheet.Draw(Window, node.X + Offset.X, node.Y + Offset.Y, Character); } else { if (Game.ViewPort.Contains(node + Offset)) { GlyphSheet.Draw(Window, node.X + Offset.X - Game.ViewPortOffset.X, node.Y + Offset.Y - Game.ViewPortOffset.Y, Character); } } } }
static void Main() { var width = 80u; var height = 48u; var videoMode = new VideoMode(width * 16, height * 16); var sheetTexture = new Texture(@"Resources/cp437_16x16.png"); var sheet = new GlyphSheet(sheetTexture, 16, 16); //var terminal = new Terminal((int)width, (int)height, Encoding.GetEncoding(437)); var window = new RenderWindow(videoMode, "Praedium"); window.SetFramerateLimit(60); Game g = new Game(sheet, window); g.LoadLevel(new FarmLevel()); g.Run(); }
public Game(GlyphSheet defaultSheet, RenderWindow window) { RNG = new Random(); UI = new UserInterface(); entities = new List <GameObject>(); watch = Stopwatch.StartNew(); Window = window; GlyphSheet = defaultSheet; window.KeyPressed += window_KeyPressed; window.KeyReleased += window_KeyReleased; window.MouseButtonPressed += window_MouseButtonPressed; window.MouseButtonReleased += window_MouseButtonReleased; window.MouseMoved += window_MouseMoved; window.MouseEntered += window_MouseEntered; window.MouseLeft += window_MouseLeft; window.MouseWheelMoved += window_MouseWheelMoved; window.Closed += window_Closed; window.Resized += window_Resized; }