public MainMenuScreen(ScreenComponent manager) : base(manager, new Point(400, 360)) { Controls.Add(new Panel(manager) { Position = new Rectangle(20, 20, 360, 40) }); Controls.Add(new Label(manager) { Text = "Hauptmenue", Position = new Rectangle(40, 30, 0, 0) }); Controls.Add(menu = new MenuList(manager) { Position = new Rectangle(20, 70, 360, 200) }); // Sichtbarkeiten anhand der Server/Client Stati ermitteln newGameItem.Visible = manager.Game.Server.State == ServerState.Closed && manager.Game.Client.State == ClientState.Closed; networkItem.Visible = manager.Game.Server.State == ServerState.Closed && manager.Game.Client.State == ClientState.Closed; stopServerItem.Visible = manager.Game.Server.State != ServerState.Closed; stopClientItem.Visible = manager.Game.Client.State != ClientState.Closed; menu.Items.Add(newGameItem); if (manager.Game.Server.ServerFeatureAvailable || manager.Game.Client.ClientFeatureAvailable) menu.Items.Add(networkItem); menu.Items.Add(stopServerItem); menu.Items.Add(stopClientItem); menu.Items.Add(optionsItem); menu.Items.Add(creditsItem); menu.Items.Add(exitItem); menu.SelectedItem = menu.Items.First(i => i.Visible && i.Enabled); menu.OnInteract += OnInteract; }
public Screen(ScreenComponent manager, Point size) : this(manager) { Point pos = new Point( (manager.GraphicsDevice.Viewport.Width - size.X) / 2, (manager.GraphicsDevice.Viewport.Height - size.Y) / 2); Position = new Rectangle(pos, size); }
public ShoutScreen(ScreenComponent manager, Item speaker, string message) : base(manager) { this.speaker = speaker; this.message = message; Position = new Rectangle(10, manager.GraphicsDevice.Viewport.Height - 54, manager.GraphicsDevice.Viewport.Width - 20, 44); Controls.Add(new Icon(manager) { Position = new Rectangle(10, 10, 24, 24), Texture = speaker.Icon }); Controls.Add(new Label(manager) { Text = message, Position = new Rectangle(45, 12, Position.Width - 20, Position.Height - 20) }); }
public RheinwerkGame() { graphics = new GraphicsDeviceManager(this); Content.RootDirectory = "Content"; graphics.IsFullScreen = false; IsMouseVisible = true; Input = new InputComponent(this); Input.UpdateOrder = 0; Components.Add(Input); Screen = new ScreenComponent(this); Screen.UpdateOrder = 1; Screen.DrawOrder = 2; Components.Add(Screen); Local = new LocalComponent(this); Local.UpdateOrder = 2; Components.Add(Local); var client = new ClientComponent(this); Client = client; client.UpdateOrder = 3; Components.Add(client); var server = new ServerComponent(this); Server = server; server.UpdateOrder = 4; Components.Add(server); Simulation = new SimulationComponent(this); Simulation.UpdateOrder = 5; Components.Add(Simulation); Scene = new SceneComponent(this); Scene.UpdateOrder = 6; Scene.DrawOrder = 0; Components.Add(Scene); Hud = new HudComponent(this); Hud.UpdateOrder = 7; Hud.DrawOrder = 1; Components.Add(Hud); Music = new MusicComponent(this); Music.UpdateOrder = 8; Components.Add(Music); Sound = new SoundComponent(this); Sound.UpdateOrder = 9; Components.Add(Sound); // Einstellungen laden Settings = Settings.LoadSettings(); }
public OptionsScreen(ScreenComponent manager) : base(manager, new Point(400, 360)) { Controls.Add(new Panel(manager) { Position = new Rectangle(20, 20, 360, 40) }); Controls.Add(new Label(manager) { Text = "Optionen", Position = new Rectangle(40, 30, 0, 0) }); Controls.Add(menu = new MenuList(manager) { Position = new Rectangle(20, 70, 360, 200) }); menu.Items.Add(musicVolumeItem); menu.Items.Add(soundVolumeItem); menu.SelectedItem = menu.Items.First(); RefreshText(); }
public DialogScreen(ScreenComponent manager, Item speaker, Player player, Dialog entry) : base(manager) { this.speaker = speaker; this.player = player; current = entry; Controls.Add(new Icon(manager) { Position = new Rectangle(10, 10, 24, 24), Texture = speaker.Icon }); Controls.Add(message = new Label(manager) { Position = new Rectangle(40, 10, manager.GraphicsDevice.Viewport.Width - 50, 30) }); Controls.Add(list = new DialogList(manager) { }); list.OnInteract += OnInteract; Refill(); }
public NetworkScreen(ScreenComponent manager) : base(manager, new Point(400, 360)) { Controls.Add(new Panel(manager) { Position = new Rectangle(20, 20, 360, 40) }); Controls.Add(new Label(manager) { Text = "Netzwerk", Position = new Rectangle(40, 30, 0, 0) }); Controls.Add(menu = new MenuList(manager) { Position = new Rectangle(20, 70, 360, 200) }); if (manager.Game.Server.ServerFeatureAvailable) menu.Items.Add(serverItem); if (manager.Game.Client.ClientFeatureAvailable) menu.Items.Add(clientItem); menu.Items.Add(cancelItem); menu.SelectedItem = menu.Items.First(); menu.OnInteract += OnInteract; }
public InventoryScreen(ScreenComponent manager) : base(manager, new Point(400, 300)) { Controls.Add(new Panel(manager) { Position = new Rectangle(20, 20, 360, 40) }); Controls.Add(new Label(manager) { Text = "Rucksack", Position = new Rectangle(40, 30, 0, 0) }); InventoryList list = new InventoryList(manager) { Position = new Rectangle(20, 70, 360, 200) }; foreach (var itemGroup in manager.Game.Local.Player.Inventory.GroupBy(i => i.GetType())) { list.Items.Add(new InventoryItem() { Text = itemGroup.First().Name, Icon = itemGroup.First().Icon, Count = itemGroup.Count() }); } Controls.Add(list); }
public ClientScreen(ScreenComponent manager) : base(manager, new Point(400, 360)) { Controls.Add(new Panel(manager) { Position = new Rectangle(20, 20, 360, 40) }); Controls.Add(new Label(manager) { Text = "Verbinden", Position = new Rectangle(40, 30, 0, 0) }); Controls.Add(new LoadingIcon(manager) { Position = new Rectangle(330, 30, 32, 24) }); Controls.Add(status = new Label(manager) { Position = new Rectangle(40, 80, 0, 0) }); DialogButtons buttons = new DialogButtons(manager) { Position = new Rectangle(20, 300 - 70, 360, 50) }; buttons.Items.Add(cancelItem); Controls.Add(buttons); buttons.SelectedItem = cancelItem; buttons.OnInteract += OnInteract; }
public CreditsScreen(ScreenComponent manager) : base(manager, new Point(400, 360)) { Controls.Add(new Panel(manager) { Position = new Rectangle(20, 20, 360, 40) }); Controls.Add(new Label(manager) { Text = "Credits", Position = new Rectangle(40, 30, 0, 0) }); Controls.Add(new Label(manager) { Text = "Vielen Dank an", Position = new Rectangle(40, 70, 0, 0) }); Controls.Add(new Label(manager) { Text = "Hyptosis, Lost Garden, Zabin", Position = new Rectangle(50, 100, 0, 0) }); Controls.Add(new Label(manager) { Text = "und Client Bellanger auf", Position = new Rectangle(50, 125, 0, 0) }); Controls.Add(new Label(manager) { Text = "opengameart.org", Position = new Rectangle(50, 150, 0, 0) }); Controls.Add(new Label(manager) { Text = "Mike Koenig, Mark DiAngelo und", Position = new Rectangle(50, 190, 0, 0) }); Controls.Add(new Label(manager) { Text = "Luke.RUSTLTD fuer die Sounds", Position = new Rectangle(50, 215, 0, 0) }); Controls.Add(new Label(manager) { Text = "Music Loop fuer die Musik", Position = new Rectangle(50, 255, 0, 0) }); Controls.Add(new Label(manager) { Text = "Special Thx to kenney.nl", Position = new Rectangle(50, 295, 0, 0) }); }
public TradeScreen(ScreenComponent manager, IInventory trader, IInventory player) : base(manager, new Point(400, 300)) { this.trader = trader; this.player = player; Controls.Add(new Panel(manager) { Position = new Rectangle(20, 20, 360, 40) }); Controls.Add(new Label(manager) { Text = "Shop", Position = new Rectangle(40, 30, 0, 0) }); // Verkaufbare Items des Trader-Inventars auf die Liste setzen list = new TraderList(manager) { Position = new Rectangle(20, 70, 360, 210) }; list.OnInteract += OnInteract; foreach (var item in trader.Inventory.Where(i => i.Value.HasValue).OrderBy(i => i.Value)) list.Items.Add(new TradingItem() { Tag = item, Text = item.Name, Icon = item.Icon, Value = item.Value.Value }); Controls.Add(list); CheckAvailability(); }
public LoadingIcon(ScreenComponent manager) : base(manager) { }
public Icon(ScreenComponent manager) : base(manager) { }
public Screen(ScreenComponent manager) { Manager = manager; Controls = new List<Control>(); }
public Panel(ScreenComponent manager) : base(manager) { }
public Control(ScreenComponent manager) { Manager = manager; }
public Label(ScreenComponent manager) : base(manager) { Font = manager.Font; Color = Color.White; }