/// <summary> /// This function creates a screen object and inserts it in an internal /// list and also inserts it in an interface list for external use /// </summary> public void CreateScreens() { fadeArea = new Rectangle(0, 0, Globals.ScreenWidth, Globals.ScreenHeight); selectedScreen = EScreen.MainScreen; Screen screen = new MainScreen(this); screens.Add(screen); iScreens.Add((IScreen)screen); screen = new GameScreen(this); screens.Add(screen); iScreens.Add((IScreen)screen); screen = new CreditsScreen(this); screens.Add(screen); iScreens.Add((IScreen)screen); screen = new SetupScreen(this); screens.Add(screen); iScreens.Add((IScreen)screen); screen = new MenuScreen(this); screens.Add(screen); iScreens.Add((IScreen)screen); screen = new WinScreen(this); screens.Add(screen); iScreens.Add((IScreen)screen); screen = new DialogScreen(this, ExitGame, LeaveDialog); iDialogScreens.Add((IScreen)screen); }
public void SwitchScreens(string screenName)//can it be changed to GameScreen NextScreen? { switch (screenName.ToLower()) { case "titlescreen": CurrentScreen = new TitleScreen(); break; case "dialogscreen": CurrentScreen = new DialogScreen(); break; case "mainmapscreen": CurrentScreen = new MainMapScreen(); break; default: CurrentScreen = new SplashScreen(); break; } //NextScreen = (GameScreen)Activator.CreateInstance(Type.GetType("Gangstarz.Models.Screens." + screenName)); xmlGameScreenManager = new XMLManager <GameScreen>(); xmlGameScreenManager.Type = CurrentScreen.Type; CurrentScreen = xmlGameScreenManager.Load(Path.Combine(ScreensConfig.PathToFolder, CurrentScreen.Type.Name + "." + ScreensConfig.FileExtension)); CurrentScreen.LoadContent(); }
private void RegisterViewModels() { SearchPageViewModel.Register(_searchPage); PrivacyModeViewModel.Register(_privacyMode); AddWalletPageViewModel.Register(_addWalletPage); SettingsPageViewModel.Register(_settingsPage); GeneralSettingsTabViewModel.RegisterLazy( () => { _settingsPage.SelectedTab = 0; return(_settingsPage); }); PrivacySettingsTabViewModel.RegisterLazy( () => { _settingsPage.SelectedTab = 1; return(_settingsPage); }); NetworkSettingsTabViewModel.RegisterLazy( () => { _settingsPage.SelectedTab = 2; return(_settingsPage); }); BitcoinTabSettingsViewModel.RegisterLazy( () => { _settingsPage.SelectedTab = 3; return(_settingsPage); }); AboutViewModel.RegisterLazy(() => new AboutViewModel()); BroadcastTransactionViewModel.RegisterAsyncLazy( async() => { var dialogResult = await DialogScreen.NavigateDialog(new LoadTransactionViewModel(_global.Network)); if (dialogResult.Result is { }) { while (_global.TransactionBroadcaster is null) { await Task.Delay(100); } return(new BroadcastTransactionViewModel( _global.BitcoinStore, _global.Network, _global.TransactionBroadcaster, dialogResult.Result)); } return(null); });
private void RegisterViewModels() { SearchPageViewModel.Register(_searchPage); PrivacyModeViewModel.Register(_privacyMode); AddWalletPageViewModel.Register(_addWalletPage); SettingsPageViewModel.Register(_settingsPage); GeneralSettingsTabViewModel.RegisterLazy( () => { _settingsPage.SelectedTab = 0; return(_settingsPage); }); PrivacySettingsTabViewModel.RegisterLazy( () => { _settingsPage.SelectedTab = 1; return(_settingsPage); }); NetworkSettingsTabViewModel.RegisterLazy( () => { _settingsPage.SelectedTab = 2; return(_settingsPage); }); BitcoinTabSettingsViewModel.RegisterLazy( () => { _settingsPage.SelectedTab = 3; return(_settingsPage); }); AboutViewModel.RegisterLazy(() => new AboutViewModel()); BroadcastTransactionViewModel.RegisterAsyncLazy( async() => { var dialogResult = await DialogScreen.NavigateDialogAsync(new LoadTransactionViewModel(Services.Config.Network)); if (dialogResult.Result is { }) { return(new BroadcastTransactionViewModel(Services.Config.Network, dialogResult.Result)); } return(null); });
public static void Main() { //Console.WriteLine("Good luck, you will need it."); string fontFileName = "terminal8x8.png"; int seed = (int)DateTime.UtcNow.Ticks; string consoleTitle = $"RoguelikeGame - Level {MapLevel}"; Random = new DotNetRandom(seed); MessageLog = new MessageLog(); SchedulingSystem = new SchedulingSystem(); MapGenerator mapGenerator = new MapGenerator(_mapWidth, _mapHeight, 20, 13, 7, MapLevel); DungeonMap = mapGenerator.CreateForrest(); DungeonMaps.Add(DungeonMap); _rootConsole = new RLRootConsole(fontFileName, _screenWidth, _screenHeight, 8, 8, 1f, consoleTitle); _mapConsole = new RLConsole(_mapWidth, _mapHeight); _messageConsole = new RLConsole(_messageWidth, _messageHeight); _statConsole = new RLConsole(_statWidth, _statHeight); _inventoryConsole = new RLConsole(_inventoryWidth, _inventoryHeight); CommandSystem = new CommandSystem(); TargetingSystem = new TargetingSystem(); InputSystem = new InputSystemPlaying(); InventoryScreen = new InventoryScreen(_popupWidth, _popupHeight); DialogScreen = new DialogScreen(_popupWidth, _dialogHeight); ShopSelectionScreen = new ShopSelectionScreen(_popupWidth, _dialogHeight); BuyScreen = new BuyScreen(_popupWidth, _popupHeight); SellScreen = new SellScreen(_popupWidth, _popupHeight); if (Player.GreetMessages != null) { Random random = new Random(); int i = random.Next(0, Player.GreetMessages.Length); MessageLog.Add($"{Player.GreetMessages[i]}", Colors.Gold); } else { MessageLog.Add("Good luck on your quest ", Colors.Gold); } // MessageLog.Add($"Level created with seed '{seed}'"); // debug _rootConsole.Update += OnIntroUpdate; _rootConsole.Render += OnIntroRender; Timer t = new Timer(UpdateColoredText, null, 0, 200); _rootConsole.Run(); }
public async ValueTask <T?> ShowDialogAsync <T>(DialogScreen <T> dialogScreen) { var view = _viewManager.CreateAndBindViewForModelIfNecessary(dialogScreen); void OnDialogOpened(object?sender, DialogOpenedEventArgs openArgs) { void OnScreenClosed(object?o, EventArgs closeArgs) { openArgs.Session.Close(); dialogScreen.Closed -= OnScreenClosed; } dialogScreen.Closed += OnScreenClosed; } await DialogHost.Show(view, OnDialogOpened); return(dialogScreen.DialogResult); }
void OnTriggerEnter2D(Collider2D collider) { if (dialog == null) { return; } if (oneTime && hasRun) { return; } if (collider.isTrigger) { return; } if (collider.gameObject != GameManager.Instance.Player?.gameObject) { return; } DialogScreen.Open(dialog); this.hasRun = true; }
public override void Bind(CityViewModel model) { base.Bind(model); ds = CityModel.GetDS; Name?.Bind(new BoundModel <string>(Model, nameof(Model.PortName))); Ask?.Bind(ValueModel.New(new ButtonViewModel { Label = "Select", OnClick = () => { //CityModel.GUI_BuyHint ds.Storage.SetValue("$known_city", Model.PortName); ds.Storage.SetValue("$known_city_ID", Model.City.settlementID); Debug.Log("We have clicked on button."); Globals.UI.Hide <TavernView>(); } })); /*Hire?.Bind(ValueModel.New(new ButtonViewModel { * Label = CityModel.CostToHire + " dr", * OnClick = CityModel.GUI_HireANavigator * }));*/ }
public void ClearStacks() { MainScreen.Clear(); DialogScreen.Clear(); FullScreen.Clear(); }
void OnValidate() { ds = GetComponent <DialogScreen>(); }
GameScreen ConvertDialog(Game game, Packet_Dialog p) { DialogScreen s = new DialogScreen(); s.widgets = new MenuWidget[p.WidgetsCount]; s.WidgetCount = p.WidgetsCount; for (int i = 0; i < p.WidgetsCount; i++) { Packet_Widget a = p.Widgets[i]; MenuWidget b = new MenuWidget(); if (a.Type == Packet_WidgetTypeEnum.Text) { b.type = WidgetType.Label; } if (a.Type == Packet_WidgetTypeEnum.Image) { b.type = WidgetType.Button; } if (a.Type == Packet_WidgetTypeEnum.TextBox) { b.type = WidgetType.Textbox; } b.x = a.X; b.y = a.Y; b.sizex = a.Width; b.sizey = a.Height_; b.text = a.Text; if (b.text != null) { b.text = game.platform.StringReplace(b.text, "!SERVER_IP!", game.ServerInfo.connectdata.Ip); } if (b.text != null) { b.text = game.platform.StringReplace(b.text, "!SERVER_PORT!", game.platform.IntToString(game.ServerInfo.connectdata.Port)); } b.color = a.Color; if (a.Font != null) { b.font = new FontCi(); b.font.family = game.ValidFont(a.Font.FamilyName); b.font.size = game.DeserializeFloat(a.Font.SizeFloat); b.font.style = a.Font.FontStyle; } b.id = a.Id; b.isbutton = a.ClickKey != 0; if (a.Image == "Solid") { b.image = null; } else if (a.Image != null) { b.image = StringTools.StringAppend(game.platform, a.Image, ".png"); } s.widgets[i] = b; } for (int i = 0; i < s.WidgetCount; i++) { if (s.widgets[i] == null) { continue; } if (s.widgets[i].type == WidgetType.Textbox) { s.widgets[i].editing = true; break; } } return s; }
public TavernViewModel(DialogScreen d) { Cities = ValueModel.Wrap(GameVars.playerShipVariables.ship.playerJournal.knownSettlements) //.Where(id => id != GameVars.currentSettlement.settlementID) .Select(id => new TavernCityViewModel(GameVars.GetSettlementFromID(id), d) as CityViewModel); }
GameScreen ConvertDialog(Game game, Packet_Dialog p) { DialogScreen s = new DialogScreen(); s.widgets = new MenuWidget[p.WidgetsCount]; s.WidgetCount = p.WidgetsCount; for (int i = 0; i < p.WidgetsCount; i++) { Packet_Widget a = p.Widgets[i]; MenuWidget b = new MenuWidget(); if (a.Type == Packet_WidgetTypeEnum.Text) { b.type = WidgetType.Label; } if (a.Type == Packet_WidgetTypeEnum.Image) { b.type = WidgetType.Button; } if (a.Type == Packet_WidgetTypeEnum.TextBox) { b.type = WidgetType.Textbox; } b.x = a.X; b.y = a.Y; b.sizex = a.Width; b.sizey = a.Height_; b.text = a.Text; if (b.text != null) { b.text = game.platform.StringReplace(b.text, "!SERVER_IP!", game.ServerInfo.connectdata.Ip); } if (b.text != null) { b.text = game.platform.StringReplace(b.text, "!SERVER_PORT!", game.platform.IntToString(game.ServerInfo.connectdata.Port)); } b.color = a.Color; if (a.Font != null) { b.font = new FontCi(); b.font.family = game.ValidFont(a.Font.FamilyName); b.font.size = game.DeserializeFloat(a.Font.SizeFloat); b.font.style = a.Font.FontStyle; } b.id = a.Id; b.isbutton = a.ClickKey != 0; if (a.Image == "Solid") { b.image = null; } else if (a.Image != null) { b.image = StringTools.StringAppend(game.platform, a.Image, ".png"); } s.widgets[i] = b; } for (int i = 0; i < s.WidgetCount; i++) { if (s.widgets[i] == null) { continue; } if (s.widgets[i].type == WidgetType.Textbox) { s.widgets[i].editing = true; break; } } return(s); }
public TavernCityViewModel(Settlement city, DialogScreen d) : base(city, null) { ds = d; }
/// <summary> /// Initializes a new instance of the <see cref="DialogScreenVM"/> class. /// </summary> /// <param name="screen">The dialog screen that owns the view model.</param> internal DialogScreenVM(DialogScreen screen) { Contract.Require(screen, nameof(screen)); this.screen = screen; }
internal void Awake() { // Start by hiding the container ds = GetComponent <DialogScreen>(); }
/// <summary> /// Initializes a new instance of the <see cref="DialogScreenVM"/> class. /// </summary> /// <param name="screen">The dialog screen that owns the view model.</param> internal DialogScreenVM(DialogScreen screen) { Contract.Require(screen, "screen"); this.screen = screen; }
public void LoadTextures() { editor = new Editor(size - new ZPoint(66, 62), new ZPoint(56, 52)); ZPoint dialogSize = new ZPoint(400, 200); dialogScreen = new DialogScreen(new ZPoint((int)(0.5f * (size.x - dialogSize.x)), size.y - 8 - dialogSize.y), dialogSize); fonts.ambient = game.Content.Load<SpriteFont>("fonts/ambient"); fonts.small = game.Content.Load<SpriteFont>("fonts/small"); fonts.verySmall = game.Content.Load<SpriteFont>("fonts/verySmall"); fonts.superSmall = game.Content.Load<SpriteFont>("fonts/superSmall"); fonts.verdana = game.Content.Load<SpriteFont>("fonts/verdana"); fonts.verdanaBold = game.Content.Load<SpriteFont>("fonts/verdanaBold"); }
/// <summary> /// Initializes a new instance of the <see cref="EscMenuDialog"/> class. /// </summary> /// <param name="owner">The screen that owns the dialog box.</param> public EscMenuDialog(GameScreenBase owner) { Contract.Require(owner, "owner"); this.screen = new DialogScreen(this, owner.GlobalContent); }