void SetupInstructions() { var instructions = new Text() { Value = "Use WASD keys and mouse/touch to move", HorizontalAlignment = HorizontalAlignment.Center, VerticalAlignment = VerticalAlignment.Center }; var font = ResourceCache.GetFont("Fonts/Anonymous Pro.ttf"); instructions.SetFont(font, 15); UI.Root.AddChild(instructions); // Animating text Text text = new Text(); text.Name = "animatingText"; text.SetFont(font, 15); text.HorizontalAlignment = HorizontalAlignment.Center; text.VerticalAlignment = VerticalAlignment.Center; text.SetPosition(0, UI.Root.Height/4 + 20); UI.Root.AddChild(text); }
Slider CreateSlider(int x, int y, int xSize, int ySize, string text) { UIElement root = UI.Root; ResourceCache cache = ResourceCache; Font font = cache.GetFont("Fonts/Anonymous Pro.ttf"); // Create text and slider below it Text sliderText = new Text(); root.AddChild(sliderText); sliderText.SetPosition(x, y); sliderText.SetFont(font, 12); sliderText.Value = text; Slider slider = new Slider(); root.AddChild(slider); slider.SetStyleAuto(null); slider.SetPosition(x, y + 20); slider.SetSize(xSize, ySize); // Use 0-1 range for controlling sound/music master volume slider.Range = 1.0f; return slider; }
void CreateUI() { var cache = ResourceCache; // Create a Cursor UI element because we want to be able to hide and show it at will. When hidden, the mouse cursor will // control the camera, and when visible, it will point the raycast target XmlFile style = cache.GetXmlFile("UI/DefaultStyle.xml"); Cursor cursor = new Cursor(); cursor.SetStyleAuto(style); UI.Cursor = cursor; // Set starting position of the cursor at the rendering window center var graphics = Graphics; cursor.SetPosition(graphics.Width / 2, graphics.Height / 2); // Construct new Text object, set string to display and font to use var instructionText = new Text(); instructionText.Value = "Use WASD keys to move, RMB to rotate view\n" + "LMB to set destination, SHIFT+LMB to spawn a Jack\n" + "CTRL+LMB to teleport main agent\n" + "MMB to add obstacles or remove obstacles/agents\n" + "F5 to save scene, F7 to load\n" + "Space to toggle debug geometry"; instructionText.SetFont(cache.GetFont("Fonts/Anonymous Pro.ttf"), 15); // The text has multiple rows. Center them in relation to each other instructionText.TextAlignment = HorizontalAlignment.Center; // Position the text relative to the screen center instructionText.HorizontalAlignment = HorizontalAlignment.Center; instructionText.VerticalAlignment = VerticalAlignment.Center; instructionText.SetPosition(0, UI.Root.Height / 4); UI.Root.AddChild(instructionText); }
void CreateInstructions() { var cache = ResourceCache; UI ui = UI; // Construct new Text object, set string to display and font to use var instructionText = new Text(); instructionText.Value = "Drag on the buttons to move them around.\nMulti- button drag also supported."; instructionText.SetFont(cache.GetFont("Fonts/Anonymous Pro.ttf"), 15); ui.Root.AddChild(instructionText); // Position the text relative to the screen center instructionText.HorizontalAlignment = HorizontalAlignment.Center; instructionText.VerticalAlignment = VerticalAlignment.Center; instructionText.SetPosition(0, ui.Root.Height/4); }
void CreateInstructions() { var cache = ResourceCache; UI ui = UI; // Construct new Text object, set string to display and font to use instructionText = new Text(); instructionText.Value = ("Use arrow up and down to control sound filtering"); instructionText.SetFont(cache.GetFont("Fonts/Anonymous Pro.ttf"), 15); // Position the text relative to the screen center instructionText.TextAlignment = HorizontalAlignment.Center; instructionText.HorizontalAlignment = HorizontalAlignment.Center; instructionText.VerticalAlignment = VerticalAlignment.Center; instructionText.SetPosition(0, ui.Root.Height/4); ui.Root.AddChild(instructionText); }
static void Main() { Clutter.Application.Init (); Stage = new Stage (); Stage.Title = "Deal!"; Stage.Add (new Texture ("Pixmaps/Table.png")); Stage.SetSize (800, 480); Stage.KeyPressEvent += HandleKeyPress; Texture C = new Texture ("Pixmaps/Coin.png"); C.SetSize (50, 50); C.SetPosition (35, 405); Stage.Add (C); Bet = 0; BetButton = new BetButton (); BetButton.ButtonPressEvent += IncreaseBet; Stage.Add (BetButton); DealButton = new DealButton (); DealButton.ButtonPressEvent += NewGame; Stage.Add (DealButton); StepButton = new StepButton (); StepButton.ButtonPressEvent += NextStep; Stage.Add (StepButton); Stack = new Stack (); Stack.Decrease (20); ScoreText = new Text ("Droid Sans Bold 21", "" + Stack.GetAmount()); ScoreText.SetColor (new Clutter.Color (0xff, 0xff, 0xff, 0xff)); ScoreText.SetPosition (100, 413); Stage.Add (ScoreText); Coins = new Coin [5]; Coins [0] = new Coin (); Coins [1] = new Coin (); Coins [2] = new Coin (); Coins [3] = new Coin (); Coins [4] = new Coin (); for (int i = 0; i < 5; i++) { Coins [i].SetPosition (35, 405); Stage.Add (Coins [i]); } Deck = new Deck (); PlayerHand = new Hand (Deck.Draw (), Deck.Draw (), Deck.Draw (), Deck.Draw (), Deck.Draw ()); OpponentHand = new Hand (Deck.Draw (), Deck.Draw (), Deck.Draw (), Deck.Draw (), Deck.Draw ()); SetupAnimation (); Stage.ShowAll(); Clutter.Application.Run (); }
void CreateUpgradeBars() { var contBase = GameInstance.ResourceCache.GetTexture2D(AssetsCoordinates.Generic.Garage.ContBase.ResourcePath); // UPDGRADES _contUpgrade = _root.CreateSprite(); _contUpgrade.Texture = contBase; _contUpgrade.SetSize((int)(_dim.XScreenRatio * 1200), (int)(_dim.YScreenRatio * 300)); _contUpgrade.SetPosition((int)(_dim.XScreenRatio * 0), (int)(_dim.YScreenRatio * 750)); _contUpgrade.ImageRect = AssetsCoordinates.Generic.Garage.ContBase.TrasparentItem; _performanceBar = new BorderImage(); _contUpgrade.AddChild(_performanceBar); _performanceBar.Texture = GameInstance.ResourceCache.GetTexture2D(AssetsCoordinates.Generic.Boxes.ResourcePath); _performanceBar.ImageRect = AssetsCoordinates.Generic.Boxes.BoxPerformanceUpgrade; _performanceBar.SetSize((int)(_dim.XScreenRatio * 550), (int)(_dim.YScreenRatio * 95)); _performanceBar.SetPosition((int)(_dim.XScreenRatio * 1000), (int)(_dim.YScreenRatio * 100)); _suspensionsBar = new BorderImage(); _contUpgrade.AddChild(_suspensionsBar); _suspensionsBar.Texture = GameInstance.ResourceCache.GetTexture2D(AssetsCoordinates.Generic.Boxes.ResourcePath); _suspensionsBar.ImageRect = AssetsCoordinates.Generic.Boxes.BoxSuspensionUpgrade; _suspensionsBar.SetSize((int)(_dim.XScreenRatio * 550), (int)(_dim.YScreenRatio * 95)); _suspensionsBar.SetPosition((int)(_dim.XScreenRatio * 1000), (int)(_dim.YScreenRatio * 200)); _wheelBar = new BorderImage(); _contUpgrade.AddChild(_wheelBar); _wheelBar.Texture = GameInstance.ResourceCache.GetTexture2D(AssetsCoordinates.Generic.Boxes.ResourcePath); _wheelBar.ImageRect = AssetsCoordinates.Generic.Boxes.BoxWheelUpgrade; _wheelBar.SetSize((int)(_dim.XScreenRatio * 550), (int)(_dim.YScreenRatio * 95)); _wheelBar.SetPosition((int)(_dim.XScreenRatio * 440), (int)(_dim.YScreenRatio * 100)); _brakeBar = new BorderImage(); _contUpgrade.AddChild(_brakeBar); _brakeBar.Texture = GameInstance.ResourceCache.GetTexture2D(AssetsCoordinates.Generic.Boxes.ResourcePath); _brakeBar.ImageRect = AssetsCoordinates.Generic.Boxes.BoxBrakeUpgrade; _brakeBar.SetSize((int)(_dim.XScreenRatio * 550), (int)(_dim.YScreenRatio * 95)); _brakeBar.SetPosition((int)(_dim.XScreenRatio * 440), (int)(_dim.YScreenRatio * 200)); // COMPONENTS _contComponents = _root.CreateSprite(); _contComponents.Texture = contBase; _contComponents.SetSize(_dim.SetX(1920), _dim.SetY(300)); _contComponents.SetPosition(_dim.SetX(0), _dim.SetY(720)); _contComponents.ImageRect = new IntRect(0, 0, 56, 56); Body = new BorderImage(); _contComponents.AddChild(Body); Body.Texture = GameInstance.ResourceCache.GetTexture2D(AssetsCoordinates.Generic.Boxes.ResourcePath); Body.ImageRect = AssetsCoordinates.Generic.Boxes.ComponentBodyRed; Body.SetSize(_dim.SetX(150), _dim.SetY(150)); Body.SetPosition(_dim.SetX(-300), _dim.SetY(150)); Body.SetAlignment(HorizontalAlignment.Center, VerticalAlignment.Top); Engine = new BorderImage(); _contComponents.AddChild(Engine); Engine.Texture = GameInstance.ResourceCache.GetTexture2D(AssetsCoordinates.Generic.Boxes.ResourcePath); Engine.ImageRect = AssetsCoordinates.Generic.Boxes.ComponentEngineRed; Engine.SetSize(_dim.SetX(150), _dim.SetY(150)); Engine.SetPosition(_dim.SetX(-130), _dim.SetY(150)); Engine.SetAlignment(HorizontalAlignment.Center, VerticalAlignment.Top); Suspensions = new BorderImage(); _contComponents.AddChild(Suspensions); Suspensions.Texture = GameInstance.ResourceCache.GetTexture2D(AssetsCoordinates.Generic.Boxes.ResourcePath); Suspensions.ImageRect = AssetsCoordinates.Generic.Boxes.ComponentSuspensionRed; Suspensions.SetSize(_dim.SetX(150), _dim.SetY(150)); Suspensions.SetPosition(_dim.SetX(130), _dim.SetY(150)); Suspensions.SetAlignment(HorizontalAlignment.Center, VerticalAlignment.Top); Wheel = new BorderImage(); _contComponents.AddChild(Wheel); Wheel.Texture = GameInstance.ResourceCache.GetTexture2D(AssetsCoordinates.Generic.Boxes.ResourcePath); Wheel.ImageRect = AssetsCoordinates.Generic.Boxes.ComponentWheelRed; Wheel.SetSize(_dim.SetX(150), _dim.SetY(150)); Wheel.SetPosition(_dim.SetX(300), _dim.SetY(150)); Wheel.SetAlignment(HorizontalAlignment.Center, VerticalAlignment.Top); // UPDGRADES _contUpgradeCost = _root.CreateSprite(); _contUpgradeCost.Texture = contBase; _contUpgradeCost.SetSize((int)(_dim.XScreenRatio * 1200), (int)(_dim.YScreenRatio * 300)); _contUpgradeCost.SetPosition((int)(_dim.XScreenRatio * 0), (int)(_dim.YScreenRatio * 750)); _contUpgradeCost.ImageRect = AssetsCoordinates.Generic.Garage.ContBase.TrasparentItem; _performanceCost = new BorderImage(); _contUpgradeCost.AddChild(_performanceCost); _performanceCost.Texture = GameInstance.ResourceCache.GetTexture2D(AssetsCoordinates.Generic.Icons.ResourcePath); _performanceCost.ImageRect = AssetsCoordinates.Generic.Icons.UpgradeCost; _performanceCost.SetSize((int)(_dim.XScreenRatio * 90), (int)(_dim.YScreenRatio * 90)); _performanceCost.SetPosition((int)(_dim.XScreenRatio * 1550), (int)(_dim.YScreenRatio * 100)); _performanceUpBtn = new Button(); _performanceCost.AddChild(_performanceUpBtn); _performanceUpBtn.Texture = GameInstance.ResourceCache.GetTexture2D(AssetsCoordinates.Generic.Icons.ResourcePath); _performanceUpBtn.ImageRect = AssetsCoordinates.Generic.Icons.UpgradeRight; _performanceUpBtn.SetSize((int)(_dim.XScreenRatio * 85), (int)(_dim.YScreenRatio * 90)); _performanceUpBtn.SetPosition((int)(_dim.XScreenRatio * 100), (int)(_dim.YScreenRatio * 0)); _performanceUpBtn.Pressed += args => { UpgradeComponent(0); }; perCost = new Text(); _performanceCost.AddChild(perCost); perCost.SetPosition((int)(_dim.XScreenRatio * 0), (int)(_dim.YScreenRatio * 0)); perCost.SetAlignment(HorizontalAlignment.Center, VerticalAlignment.Center); perCost.SetFont(_font, _dim.XScreenRatio * 20); perCost.SetColor(Color.Black); _wheelCost = new BorderImage(); _contUpgradeCost.AddChild(_wheelCost); _wheelCost.Texture = GameInstance.ResourceCache.GetTexture2D(AssetsCoordinates.Generic.Icons.ResourcePath); _wheelCost.ImageRect = AssetsCoordinates.Generic.Icons.UpgradeCost; _wheelCost.SetSize((int)(_dim.XScreenRatio * 90), (int)(_dim.YScreenRatio * 90)); _wheelCost.SetPosition((int)(_dim.XScreenRatio * 345), (int)(_dim.YScreenRatio * 100)); _wheelUpBtn = new Button(); _wheelCost.AddChild(_wheelUpBtn); _wheelUpBtn.Texture = GameInstance.ResourceCache.GetTexture2D(AssetsCoordinates.Generic.Icons.ResourcePath); _wheelUpBtn.ImageRect = AssetsCoordinates.Generic.Icons.UpgradeLeft; _wheelUpBtn.SetSize((int)(_dim.XScreenRatio * 85), (int)(_dim.YScreenRatio * 90)); _wheelUpBtn.SetPosition((int)(_dim.XScreenRatio * -100), (int)(_dim.YScreenRatio * 0)); _wheelUpBtn.Pressed += args => { UpgradeComponent(1); }; wheCost = new Text(); _wheelCost.AddChild(wheCost); wheCost.SetPosition((int)(_dim.XScreenRatio * 0), (int)(_dim.YScreenRatio * 0)); wheCost.SetAlignment(HorizontalAlignment.Center, VerticalAlignment.Center); wheCost.SetFont(_font, _dim.XScreenRatio * 20); wheCost.SetColor(Color.Black); _suspensionsCost = new BorderImage(); _contUpgradeCost.AddChild(_suspensionsCost); _suspensionsCost.Texture = GameInstance.ResourceCache.GetTexture2D(AssetsCoordinates.Generic.Icons.ResourcePath); _suspensionsCost.ImageRect = AssetsCoordinates.Generic.Icons.UpgradeCost; _suspensionsCost.SetSize((int)(_dim.XScreenRatio * 90), (int)(_dim.YScreenRatio * 90)); _suspensionsCost.SetPosition((int)(_dim.XScreenRatio * 1550), (int)(_dim.YScreenRatio * 200)); _suspensionsUpBtn = new Button(); _suspensionsCost.AddChild(_suspensionsUpBtn); _suspensionsUpBtn.Texture = GameInstance.ResourceCache.GetTexture2D(AssetsCoordinates.Generic.Icons.ResourcePath); _suspensionsUpBtn.ImageRect = AssetsCoordinates.Generic.Icons.UpgradeRight; _suspensionsUpBtn.SetSize((int)(_dim.XScreenRatio * 85), (int)(_dim.YScreenRatio * 90)); _suspensionsUpBtn.SetPosition((int)(_dim.XScreenRatio * 100), (int)(_dim.YScreenRatio * 0)); _suspensionsUpBtn.Pressed += args => { UpgradeComponent(2); }; susCost = new Text(); _suspensionsCost.AddChild(susCost); susCost.SetPosition((int)(_dim.XScreenRatio * 0), (int)(_dim.YScreenRatio * 0)); susCost.SetAlignment(HorizontalAlignment.Center, VerticalAlignment.Center); susCost.SetFont(_font, _dim.XScreenRatio * 20); susCost.SetColor(Color.Black); _brakeCost = new BorderImage(); _contUpgradeCost.AddChild(_brakeCost); _brakeCost.Texture = GameInstance.ResourceCache.GetTexture2D(AssetsCoordinates.Generic.Icons.ResourcePath); _brakeCost.ImageRect = AssetsCoordinates.Generic.Icons.UpgradeCost; _brakeCost.SetSize((int)(_dim.XScreenRatio * 90), (int)(_dim.YScreenRatio * 90)); _brakeCost.SetPosition((int)(_dim.XScreenRatio * 345), (int)(_dim.YScreenRatio * 200)); _brakeUpBtn = new Button(); _brakeCost.AddChild(_brakeUpBtn); _brakeUpBtn.Texture = GameInstance.ResourceCache.GetTexture2D(AssetsCoordinates.Generic.Icons.ResourcePath); _brakeUpBtn.ImageRect = AssetsCoordinates.Generic.Icons.UpgradeLeft; _brakeUpBtn.SetSize((int)(_dim.XScreenRatio * 85), (int)(_dim.YScreenRatio * 90)); _brakeUpBtn.SetPosition((int)(_dim.XScreenRatio * -100), (int)(_dim.YScreenRatio * 0)); _brakeUpBtn.Pressed += args => { UpgradeComponent(3); }; SetUpgrade(); SetCollectedComponents(); GetCarImg(); }
void CreateRightSection() { var audio = GameInstance.Audio; var cont_base = GameInstance.ResourceCache.GetTexture2D("Textures/Garage/cont_base.png"); Sprite containerR = new Sprite(); containerR = GameInstance.UI.Root.CreateSprite(); containerR.Texture = cont_base; containerR.SetSize(GameInstance.ScreenInfo.SetX(960), GameInstance.ScreenInfo.SetY(1080)); containerR.SetPosition(GameInstance.ScreenInfo.SetX(960), GameInstance.ScreenInfo.SetY(0)); containerR.ImageRect = new IntRect(0, 0, 56, 56); //green sprite Sprite SFX = new Sprite(); SFX.Texture = GameInstance.ResourceCache.GetTexture2D(AssetsCoordinates.Generic.Boxes.ResourcePath); SFX.ImageRect = AssetsCoordinates.Generic.Boxes.VolumeBarGreen; SFX.SetSize(GameInstance.ScreenInfo.SetX(170), GameInstance.ScreenInfo.SetY(100)); SFX.SetAlignment(HorizontalAlignment.Left, VerticalAlignment.Top); SFX.SetPosition(GameInstance.ScreenInfo.SetX(50), GameInstance.ScreenInfo.SetY(225)); containerR.AddChild(SFX); Text SFXtext = new Text(); SFX.AddChild(SFXtext); SFXtext.SetAlignment(HorizontalAlignment.Center, VerticalAlignment.Center); SFXtext.SetPosition(GameInstance.ScreenInfo.SetX(-10), 0); SFXtext.SetFont(_baseFont, GameInstance.ScreenInfo.SetX(30)); SFXtext.Value = "SFX"; //slider Slider sfxSlider = new Slider { Size = new IntVector2(GameInstance.ScreenInfo.SetX(500), GameInstance.ScreenInfo.SetY(100)), Position = new IntVector2(GameInstance.ScreenInfo.SetX(230), GameInstance.ScreenInfo.SetY(225)), HorizontalAlignment = HorizontalAlignment.Left, VerticalAlignment = VerticalAlignment.Top, Texture = GameInstance.ResourceCache.GetTexture2D(AssetsCoordinates.Generic.Boxes.ResourcePath), ImageRect = AssetsCoordinates.Generic.Boxes.VolumeBarWhite, Range = 1.0f }; containerR.AddChild(sfxSlider); sfxSlider.SetStyleAuto(null); sfxSlider.Range = 1.0f; var knob = sfxSlider.Knob; knob.Texture = GameInstance.ResourceCache.GetTexture2D(AssetsCoordinates.Generic.Boxes.ResourcePath); knob.ImageRect = AssetsCoordinates.Generic.Boxes.VolumeBarKnob; knob.SetFixedSize(GameInstance.ScreenInfo.SetX(45), GameInstance.ScreenInfo.SetY(100)); sfxSlider.Value = audio.GetMasterGain(SoundType.Effect.ToString()); sfxSlider.SliderChanged += (SliderChangedEventArgs args) => { audio.SetMasterGain(SoundType.Effect.ToString(), args.Value); SoundManager.Instance.EffectsGain = args.Value; }; //"MAX" text Sprite MAX = new Sprite(); MAX.Texture = GameInstance.ResourceCache.GetTexture2D(AssetsCoordinates.Generic.Boxes.ResourcePath); MAX.ImageRect = AssetsCoordinates.Generic.Boxes.VolumeBarMAX; MAX.SetSize(GameInstance.ScreenInfo.SetX(130), GameInstance.ScreenInfo.SetY(100)); MAX.SetAlignment(HorizontalAlignment.Left, VerticalAlignment.Top); MAX.SetPosition(GameInstance.ScreenInfo.SetX(750), GameInstance.ScreenInfo.SetY(225)); containerR.AddChild(MAX); //green sprite Sprite Music = new Sprite(); Music.Texture = GameInstance.ResourceCache.GetTexture2D(AssetsCoordinates.Generic.Boxes.ResourcePath); Music.ImageRect = AssetsCoordinates.Generic.Boxes.VolumeBarGreen; Music.SetSize(GameInstance.ScreenInfo.SetX(170), GameInstance.ScreenInfo.SetY(100)); Music.SetAlignment(HorizontalAlignment.Left, VerticalAlignment.Top); Music.SetPosition(GameInstance.ScreenInfo.SetX(50), GameInstance.ScreenInfo.SetY(350)); containerR.AddChild(Music); Text MusicText = new Text(); Music.AddChild(MusicText); MusicText.SetAlignment(HorizontalAlignment.Center, VerticalAlignment.Center); MusicText.SetPosition(GameInstance.ScreenInfo.SetX(-10), 0); MusicText.SetFont(_baseFont, GameInstance.ScreenInfo.SetX(30)); MusicText.Value = "MUSIC"; //slider Slider musicSlider = new Slider(); containerR.AddChild(musicSlider); musicSlider.SetStyleAuto(null); musicSlider.SetPosition(GameInstance.ScreenInfo.SetX(230), GameInstance.ScreenInfo.SetY(350)); musicSlider.SetSize(GameInstance.ScreenInfo.SetX(500), GameInstance.ScreenInfo.SetY(100)); musicSlider.Texture = GameInstance.ResourceCache.GetTexture2D(AssetsCoordinates.Generic.Boxes.ResourcePath); musicSlider.ImageRect = AssetsCoordinates.Generic.Boxes.VolumeBarWhite; musicSlider.Range = 1.0f; var knobM = musicSlider.Knob; knobM.SetFixedSize(GameInstance.ScreenInfo.SetX(45), GameInstance.ScreenInfo.SetY(100)); knobM.Texture = GameInstance.ResourceCache.GetTexture2D(AssetsCoordinates.Generic.Boxes.ResourcePath); knobM.ImageRect = AssetsCoordinates.Generic.Boxes.VolumeBarKnob; musicSlider.Value = audio.GetMasterGain(SoundType.Music.ToString()); musicSlider.SliderChanged += (SliderChangedEventArgs args) => { audio.SetMasterGain(SoundType.Music.ToString(), args.Value); SoundManager.Instance.MusicGain = args.Value; }; //"MAX" text Sprite MAX2 = new Sprite(); MAX2.Texture = GameInstance.ResourceCache.GetTexture2D(AssetsCoordinates.Generic.Boxes.ResourcePath); MAX2.ImageRect = AssetsCoordinates.Generic.Boxes.VolumeBarMAX; MAX2.SetSize(GameInstance.ScreenInfo.SetX(130), GameInstance.ScreenInfo.SetY(100)); MAX2.SetAlignment(HorizontalAlignment.Left, VerticalAlignment.Top); MAX2.SetPosition(GameInstance.ScreenInfo.SetX(750), GameInstance.ScreenInfo.SetY(350)); containerR.AddChild(MAX2); // FB Button Facebook = new Button(); containerR.AddChild(Facebook); Facebook.Texture = GameInstance.ResourceCache.GetTexture2D(AssetsCoordinates.Generic.Boxes.ResourcePath); Facebook.ImageRect = AssetsCoordinates.Generic.Boxes.Facebook; Facebook.SetSize(GameInstance.ScreenInfo.SetX(150), GameInstance.ScreenInfo.SetY(150)); Facebook.SetAlignment(HorizontalAlignment.Left, VerticalAlignment.Top); Facebook.SetPosition(GameInstance.ScreenInfo.SetX(300), GameInstance.ScreenInfo.SetY(500)); Facebook.Pressed += args => { OpenBrowser("https://www.facebook.com/smartroadsense/"); }; // TWITTER Button Twitter = new Button(); containerR.AddChild(Twitter); Twitter.Texture = GameInstance.ResourceCache.GetTexture2D(AssetsCoordinates.Generic.Boxes.ResourcePath); Twitter.ImageRect = AssetsCoordinates.Generic.Boxes.Tweeter; Twitter.SetSize(GameInstance.ScreenInfo.SetX(150), GameInstance.ScreenInfo.SetY(150)); Twitter.SetAlignment(HorizontalAlignment.Left, VerticalAlignment.Top); Twitter.SetPosition(GameInstance.ScreenInfo.SetX(500), GameInstance.ScreenInfo.SetY(500)); Twitter.Pressed += args => { OpenBrowser("https://twitter.com/smartroadsense"); }; Button Credits = new Button(); containerR.AddChild(Credits); Credits.Texture = GameInstance.ResourceCache.GetTexture2D(AssetsCoordinates.Generic.Boxes.ResourcePath); Credits.ImageRect = AssetsCoordinates.Generic.Boxes.Credits; Credits.SetSize(GameInstance.ScreenInfo.SetX(600), GameInstance.ScreenInfo.SetY(100)); Credits.SetAlignment(HorizontalAlignment.Left, VerticalAlignment.Top); Credits.SetPosition(GameInstance.ScreenInfo.SetX(200), GameInstance.ScreenInfo.SetY(800)); Credits.Pressed += args => { GameInstance.LaunchScene(GameScenesEnumeration.CREDITS); }; Text CreditsText = new Text(); Credits.AddChild(CreditsText); CreditsText.SetAlignment(HorizontalAlignment.Center, VerticalAlignment.Center); CreditsText.SetPosition(0, 0); CreditsText.SetFont(_baseFont, GameInstance.ScreenInfo.SetX(30)); CreditsText.Value = "CREDITS"; Credits.Visible = false; }
void CreateTopBar() { _blackBar = _root.CreateSprite(); _root.AddChild(_blackBar); _blackBar.Texture = GameInstance.ResourceCache.GetTexture2D(AssetsCoordinates.Generic.TopBar.ResourcePath); _blackBar.Opacity = 0.5f; _blackBar.SetPosition(0, (int)(_dim.YScreenRatio * 30)); _blackBar.SetSize((int)(_dim.XScreenRatio * 2000), (int)(_dim.YScreenRatio * 140)); _blackBar.ImageRect = AssetsCoordinates.Generic.TopBar.Rectangle; btnBack = new Button(); _blackBar.AddChild(btnBack); btnBack.UseDerivedOpacity = false; btnBack.SetStyleAuto(null); btnBack.SetPosition(_dim.SetX(10), _dim.SetY(0)); btnBack.HorizontalAlignment = HorizontalAlignment.Left; btnBack.VerticalAlignment = VerticalAlignment.Center; btnBack.SetSize(_dim.SetX(120), _dim.SetY(120)); btnBack.Texture = GameInstance.ResourceCache.GetTexture2D(AssetsCoordinates.Generic.Icons.ResourcePath); btnBack.ImageRect = AssetsCoordinates.Generic.Icons.BntBack; btnBack.Pressed += args => { GameInstance.LaunchScene(GameScenesEnumeration.MENU); }; if (VehicleManager.Instance.UnlockedVehicles.VehicleModel.Count == 0) { #if __ANDROID__ btnBack.Visible = false; #else btnBack.Visible = true; #endif } //COINS Button coins = new Button(); _blackBar.AddChild(coins); coins.UseDerivedOpacity = false; coins.SetStyleAuto(null); coins.SetPosition(_dim.SetX(150), _dim.SetY(0)); coins.HorizontalAlignment = HorizontalAlignment.Left; coins.VerticalAlignment = VerticalAlignment.Center; coins.SetSize(_dim.SetX(70), _dim.SetY(70)); coins.Texture = GameInstance.ResourceCache.GetTexture2D(AssetsCoordinates.Generic.Icons.ResourcePath); coins.ImageRect = AssetsCoordinates.Generic.Icons.IconCoin; coins.UseDerivedOpacity = false; //Wallet text _wallet = new Text(); coins.AddChild(_wallet); _wallet.SetPosition((int)(_dim.XScreenRatio * 90), (int)(_dim.YScreenRatio * 10)); _wallet.SetFont(_font, _dim.XScreenRatio * 30); _wallet.Value = string.Format($"{CharacterManager.Instance.Wallet}"); // SCREEN TITLE Button screen_title = new Button(); _root.AddChild(screen_title); screen_title.SetStyleAuto(null); screen_title.SetPosition((int)(_dim.XScreenRatio * 1500), (int)(_dim.YScreenRatio * 50)); screen_title.SetSize((int)(_dim.XScreenRatio * 400), (int)(_dim.YScreenRatio * 100)); screen_title.Texture = GameInstance.ResourceCache.GetTexture2D(AssetsCoordinates.Generic.Boxes.ResourcePath); screen_title.ImageRect = AssetsCoordinates.Generic.Boxes.BoxTitle; screen_title.Enabled = false; Text buttonTitleText = new Text(); screen_title.AddChild(buttonTitleText); buttonTitleText.SetAlignment(HorizontalAlignment.Center, VerticalAlignment.Center); buttonTitleText.SetPosition(0, 0); buttonTitleText.SetFont(_font, _dim.XScreenRatio * 30); buttonTitleText.Value = "VEHICLE SELECT"; _screenInfo = new Text(); _root.AddChild(_screenInfo); _screenInfo.SetAlignment(HorizontalAlignment.Center, VerticalAlignment.Top); _screenInfo.SetPosition(_dim.SetX(0), _dim.SetY(220)); _screenInfo.SetFont(_font, _dim.SetX(40)); _screenInfo.SetColor(Color.White); if (VehicleManager.Instance.UnlockedVehicles == null || VehicleManager.Instance.UnlockedVehicles.VehicleModel.Count == 0) { _screenInfo.Value = "Please select a free starting vehicle."; } else { _screenInfo.Value = ""; } }
/// <summary> /// Sets the position of the internal text control. /// </summary> /// <param name="x"></param> /// <param name="y"></param> protected void SetTextPosition(int x, int y) { m_Text.SetPosition(x, y); }
private void FormatText(Text text, int yPosition) { text.SetPosition(-text.Width / 2, yPosition); text.SetColor(new Color(0, 0, 0, 1)); }
public void SetLabel(int xOffset, int yOffset, Text textObject) { _label = textObject; _label.SetPosition(PosX + xOffset, PosY + yOffset); }
public void SetLabel(int xOffset, int yOffset, string text, int size = 12, string font = "") { _label = new Text(text, font, size); _label.SetPosition(PosX + xOffset, PosY + yOffset); }
void CreateTopBar() { var black_bar = GameInstance.UI.Root.CreateSprite(); GameInstance.UI.Root.AddChild(black_bar); black_bar.Texture = GameInstance.ResourceCache.GetTexture2D(AssetsCoordinates.Generic.TopBar.ResourcePath); black_bar.Opacity = 0.5f; black_bar.SetPosition(GameInstance.ScreenInfo.SetX(0), GameInstance.ScreenInfo.SetY(30)); black_bar.SetSize(GameInstance.ScreenInfo.SetX(2000), GameInstance.ScreenInfo.SetY(140)); black_bar.ImageRect = AssetsCoordinates.Generic.TopBar.Rectangle; // BACK Button btn_back = new Button(); GameInstance.UI.Root.AddChild(btn_back); btn_back.SetStyleAuto(null); btn_back.SetPosition(GameInstance.ScreenInfo.SetX(40), GameInstance.ScreenInfo.SetY(40)); btn_back.SetSize(GameInstance.ScreenInfo.SetX(120), GameInstance.ScreenInfo.SetY(120)); btn_back.Texture = GameInstance.ResourceCache.GetTexture2D(AssetsCoordinates.Generic.Icons.ResourcePath); btn_back.ImageRect = AssetsCoordinates.Generic.Icons.BntBack; btn_back.Pressed += args => { GameInstance.LaunchScene(GameScenesEnumeration.MENU); }; //COINS Button coins = new Button(); GameInstance.UI.Root.AddChild(coins); coins.SetStyleAuto(null); coins.SetPosition(GameInstance.ScreenInfo.SetX(180), GameInstance.ScreenInfo.SetY(60)); coins.SetSize(GameInstance.ScreenInfo.SetX(75), GameInstance.ScreenInfo.SetY(70)); coins.Texture = GameInstance.ResourceCache.GetTexture2D(AssetsCoordinates.Generic.Icons.ResourcePath); coins.ImageRect = AssetsCoordinates.Generic.Icons.IconCoin; //Wallet text Text wallet = new Text(); coins.AddChild(wallet); wallet.SetPosition(GameInstance.ScreenInfo.SetX(90), GameInstance.ScreenInfo.SetY(10)); wallet.SetFont(_baseFont, GameInstance.ScreenInfo.SetX(30)); int wallet_tot = CharacterManager.Instance.Wallet; wallet.Value = "" + wallet_tot; // SCREEN TITLE Button screen_title = new Button(); GameInstance.UI.Root.AddChild(screen_title); screen_title.SetStyleAuto(null); screen_title.SetPosition(GameInstance.ScreenInfo.SetX(1500), GameInstance.ScreenInfo.SetY(50)); screen_title.SetSize(GameInstance.ScreenInfo.SetX(400), GameInstance.ScreenInfo.SetY(100)); screen_title.Texture = GameInstance.ResourceCache.GetTexture2D(AssetsCoordinates.Generic.Boxes.ResourcePath); screen_title.Enabled = false; screen_title.ImageRect = AssetsCoordinates.Generic.Boxes.BoxTitle; Text buttonTitleText = new Text(); screen_title.AddChild(buttonTitleText); buttonTitleText.SetAlignment(HorizontalAlignment.Center, VerticalAlignment.Center); buttonTitleText.SetPosition(0, 0); buttonTitleText.SetFont(_baseFont, GameInstance.ScreenInfo.SetX(30)); buttonTitleText.Value = "SETTINGS"; }
public void LoadAndAddNewTextEntryBelowPrevious(Text text) { text.LoadContent(ScreenManager.Content); Text previousText = null; foreach (UIElement uielement in ActiveUIElements) { if (uielement as Text != null) { if (previousText != null) { if (uielement.Position.Y > previousText.Position.Y) { previousText = (Text)uielement; } } else { previousText = (Text)uielement; } } } foreach (UIElement uielement in UIElementsToAdd) { if (uielement as Text != null) { if (previousText != null) { if (uielement.Position.Y > previousText.Position.Y) { previousText = (Text)uielement; } } else { previousText = (Text)uielement; } } } if (previousText != null) { text.SetPosition(new Vector2(0, 4 * previousText.TextOrigin.Y)); AddUIElementRelativeTo(text, previousText); } else { AddUIElement(text); } }
void DefineCurrVehicle() { if (_selectedVehicle != null) { _selectedVehicle.Remove(); } _selectedVehicle = new Button(); _vehicleBar.AddChild(_selectedVehicle); _selectedVehicle.UseDerivedOpacity = false; _selectedVehicle.Texture = GameInstance.ResourceCache.GetTexture2D(AssetsCoordinates.Generic.Garage.FullVehicles.ResourcePath); _currentVehicleModel = VehicleManager.Instance.GetVehicleFromId(_idDVehicle); _selectedVehicle.SetSize((int)(_dim.XScreenRatio * 600), (int)(_dim.YScreenRatio * 600)); _selectedVehicle.SetPosition((int)(_dim.XScreenRatio * 650), (int)(_dim.YScreenRatio * -100)); _selectedVehicle.Pressed += args => { if (VehicleManager.Instance.UnlockedVehicles.VehicleModel.Count == 0) { if (_currentVehicleModel.UnlockCost == -1) { ConfirmationWindow(string.Format("You can't select this vehicle at this moment."), true); } else { // Unlock vehicle VehicleManager.Instance.SelectedVehicleModel = VehicleManager.Instance.Vehicles.VehicleModel.First(v => v.IdVehicle == _idDVehicle); VehicleManager.Instance.UnlockVehicle(); Debug.WriteLine("Unlocked vehicle " + _currentVehicleModel.IdVehicle); ConfirmationWindow(string.Format("{0} unlocked!", _selectedVehicle.Name), false, true); } } else if (!VehicleManager.Instance.UnlockedVehicles.VehicleModel.Exists(v => v.IdVehicle == _currentVehicleModel.IdVehicle)) { // If selected and vehicle needs to be unlocked, unlock vehicle without changing scene if (_currentVehicleModel.UnlockCost != -1) { if (CharacterManager.Instance.Wallet >= _currentVehicleModel.UnlockCost) { CharacterManager.Instance.Wallet -= _currentVehicleModel.UnlockCost; _wallet.Value = CharacterManager.Instance.Wallet.ToString(); // Unlock vehicle VehicleManager.Instance.SelectedVehicleModel = VehicleManager.Instance.Vehicles.VehicleModel.First(v => v.IdVehicle == _idDVehicle); VehicleManager.Instance.UnlockVehicle(); Debug.WriteLine("Unlocked vehicle " + _currentVehicleModel.IdVehicle); ConfirmationWindow(string.Format("{0} unlocked!", _selectedVehicle.Name), false, true); } else { ConfirmationWindow(string.Format("Collect more coins to unlock this vehicle."), true); } } else { var components = VehicleManager.Instance.CollectedComponentsForVehicle(_currentVehicleModel.IdVehicle).VehicleComponents; if (components.Brakes && components.Performance && components.Suspensions && components.Wheels) { // Unlock vehicle VehicleManager.Instance.SelectedVehicleModel = VehicleManager.Instance.Vehicles.VehicleModel.First(v => v.IdVehicle == _idDVehicle); VehicleManager.Instance.UnlockVehicle(); Debug.WriteLine("Unlocked vehicle " + _currentVehicleModel.IdVehicle); ConfirmationWindow(string.Format(_selectedVehicle.Name + "unlocked!"), false, true); } else { ConfirmationWindow(string.Format("Collect all four components to unlock this vehicle."), true); } } } else { VehicleManager.Instance.SelectedVehicleModel = VehicleManager.Instance.Vehicles.VehicleModel.First(v => v.IdVehicle == _idDVehicle); GameInstance.LaunchScene(GameScenesEnumeration.MENU); } }; _carName = new Text(); _selectedVehicle.AddChild(_carName); _carName.SetPosition(_dim.SetX(0), _dim.SetY(-80)); _carName.SetAlignment(HorizontalAlignment.Center, VerticalAlignment.Bottom); _carName.SetFont(_font, _dim.SetX(40)); _unlockCost = new Text(); _selectedVehicle.AddChild(_unlockCost); _unlockCost.SetPosition(_dim.SetX(40), _dim.SetY(-30)); _unlockCost.SetAlignment(HorizontalAlignment.Center, VerticalAlignment.Bottom); _unlockCost.SetFont(_font, _dim.SetX(30)); _unlockCost.Visible = false; _coinIcon = new BorderImage(); _selectedVehicle.AddChild(_coinIcon); _coinIcon.SetPosition(_dim.SetX(-50), _dim.SetY(-30)); _coinIcon.SetAlignment(HorizontalAlignment.Center, VerticalAlignment.Bottom); _coinIcon.Visible = false; _coinIcon.SetSize(_dim.SetX(50), _dim.SetY(50)); _coinIcon.Texture = GameInstance.ResourceCache.GetTexture2D(AssetsCoordinates.Generic.Icons.ResourcePath); _coinIcon.ImageRect = AssetsCoordinates.Generic.Icons.IconCoin; _coinIcon.UseDerivedOpacity = false; _lockedVehicle = new Sprite(); _selectedVehicle.AddChild(_lockedVehicle); _lockedVehicle.SetPosition((int)(_dim.XScreenRatio * 630), (int)(_dim.YScreenRatio * 200)); _lockedVehicle.Texture = GameInstance.ResourceCache.GetTexture2D(AssetsCoordinates.Generic.Icons.ResourcePath); _lockedVehicle.ImageRect = AssetsCoordinates.Generic.Icons.IconLocked; _lockedVehicle.SetSize(_dim.SetX(100), _dim.SetY(100)); }
void CreateLeftSection() { Sprite MiniGameScene = new Sprite(); MiniGameScene.Texture = GameInstance.ResourceCache.GetTexture2D(AssetsCoordinates.Generic.Boxes.ResourcePath); MiniGameScene.ImageRect = AssetsCoordinates.Generic.Boxes.MiniGameScreen; MiniGameScene.SetSize(GameInstance.ScreenInfo.SetX(940), GameInstance.ScreenInfo.SetY(530)); MiniGameScene.SetAlignment(HorizontalAlignment.Left, VerticalAlignment.Top); MiniGameScene.SetPosition(GameInstance.ScreenInfo.SetX(50), GameInstance.ScreenInfo.SetY(230)); GameInstance.UI.Root.AddChild(MiniGameScene); Sprite PausaButton = new Sprite(); MiniGameScene.AddChild(PausaButton); PausaButton.Texture = GameInstance.ResourceCache.GetTexture2D(AssetsCoordinates.Generic.Boxes.ResourcePath); PausaButton.ImageRect = AssetsCoordinates.Generic.Boxes.PausaButton; PausaButton.SetSize(GameInstance.ScreenInfo.SetX(50), GameInstance.ScreenInfo.SetY(50)); PausaButton.SetAlignment(HorizontalAlignment.Left, VerticalAlignment.Top); PausaButton.SetPosition(GameInstance.ScreenInfo.SetX(40), GameInstance.ScreenInfo.SetY(40)); Buttons = new Sprite(); MiniGameScene.AddChild(Buttons); Buttons.Texture = GameInstance.ResourceCache.GetTexture2D(AssetsCoordinates.Generic.Boxes.ResourcePath); Buttons.ImageRect = AssetsCoordinates.Generic.Boxes.ButtonsLeft; Buttons.SetAlignment(HorizontalAlignment.Left, VerticalAlignment.Top); AccBrakeBtn = new Sprite(); MiniGameScene.AddChild(AccBrakeBtn); AccBrakeBtn.Texture = GameInstance.ResourceCache.GetTexture2D(AssetsCoordinates.Generic.Boxes.ResourcePath); AccBrakeBtn.ImageRect = AssetsCoordinates.Generic.Boxes.AccBrakeRight; AccBrakeBtn.SetAlignment(HorizontalAlignment.Left, VerticalAlignment.Top); Sprite ButtonsA = new Sprite(); ButtonsA.Texture = GameInstance.ResourceCache.GetTexture2D(AssetsCoordinates.Generic.Boxes.ResourcePath); ButtonsA.ImageRect = AssetsCoordinates.Generic.Boxes.SelectionBoxGreenPart; ButtonsA.SetSize(GameInstance.ScreenInfo.SetX(345), GameInstance.ScreenInfo.SetY(81)); ButtonsA.SetAlignment(HorizontalAlignment.Left, VerticalAlignment.Top); ButtonsA.SetPosition(GameInstance.ScreenInfo.SetX(50), GameInstance.ScreenInfo.SetY(800)); GameInstance.UI.Root.AddChild(ButtonsA); Text b1 = new Text(); ButtonsA.AddChild(b1); b1.SetAlignment(HorizontalAlignment.Center, VerticalAlignment.Center); b1.SetPosition(0, 0); b1.SetFont(_baseFont, GameInstance.ScreenInfo.SetX(30)); b1.Value = "BUTTONS"; Button ButtonsB = new Button(); ButtonsB.Texture = GameInstance.ResourceCache.GetTexture2D(AssetsCoordinates.Generic.Boxes.ResourcePath); ButtonsB.ImageRect = AssetsCoordinates.Generic.Boxes.SelectionBoxWhitePart; ButtonsB.SetSize(GameInstance.ScreenInfo.SetX(595), GameInstance.ScreenInfo.SetY(81)); ButtonsB.SetAlignment(HorizontalAlignment.Left, VerticalAlignment.Top); ButtonsB.SetPosition(GameInstance.ScreenInfo.SetX(395), GameInstance.ScreenInfo.SetY(800)); GameInstance.UI.Root.AddChild(ButtonsB); b2 = new Text(); ButtonsB.AddChild(b2); b2.SetAlignment(HorizontalAlignment.Center, VerticalAlignment.Center); b2.SetPosition(0, 0); b2.SetFont(_baseFont, GameInstance.ScreenInfo.SetX(30)); ButtonsB.Pressed += args => { switch (ButtonDimensions) { case GameplayButtonSize.SMALL: b2.Value = "MEDIUM"; ButtonDimensions = GameplayButtonSize.MEDIUM; SettingsManager.Instance.GameplayButtonSize = GameplayButtonSize.MEDIUM; SetButtonConfig(); break; case GameplayButtonSize.MEDIUM: b2.Value = "LARGE"; ButtonDimensions = GameplayButtonSize.LARGE; SettingsManager.Instance.GameplayButtonSize = GameplayButtonSize.LARGE; SetButtonConfig(); break; case GameplayButtonSize.LARGE: b2.Value = "SMALL"; ButtonDimensions = GameplayButtonSize.SMALL; SettingsManager.Instance.GameplayButtonSize = GameplayButtonSize.SMALL; SetButtonConfig(); break; } }; Sprite AccBrake = new Sprite(); AccBrake.Texture = GameInstance.ResourceCache.GetTexture2D(AssetsCoordinates.Generic.Boxes.ResourcePath); AccBrake.ImageRect = AssetsCoordinates.Generic.Boxes.SelectionBoxGreenPart; AccBrake.SetSize(GameInstance.ScreenInfo.SetX(345), GameInstance.ScreenInfo.SetY(81)); AccBrake.SetAlignment(HorizontalAlignment.Left, VerticalAlignment.Top); AccBrake.SetPosition(GameInstance.ScreenInfo.SetX(50), GameInstance.ScreenInfo.SetY(900)); GameInstance.UI.Root.AddChild(AccBrake); Text a1 = new Text(); AccBrake.AddChild(a1); a1.SetAlignment(HorizontalAlignment.Center, VerticalAlignment.Center); a1.SetPosition(0, 0); a1.SetFont(_baseFont, GameInstance.ScreenInfo.SetX(30)); a1.Value = "ACC./BRAKE"; Button AccBrakeB = new Button(); AccBrakeB.Texture = GameInstance.ResourceCache.GetTexture2D(AssetsCoordinates.Generic.Boxes.ResourcePath); AccBrakeB.ImageRect = AssetsCoordinates.Generic.Boxes.SelectionBoxWhitePart; AccBrakeB.SetSize(GameInstance.ScreenInfo.SetX(595), GameInstance.ScreenInfo.SetY(81)); AccBrakeB.SetAlignment(HorizontalAlignment.Left, VerticalAlignment.Top); AccBrakeB.SetPosition(GameInstance.ScreenInfo.SetX(395), GameInstance.ScreenInfo.SetY(900)); GameInstance.UI.Root.AddChild(AccBrakeB); a2 = new Text(); AccBrakeB.AddChild(a2); a2.SetAlignment(HorizontalAlignment.Center, VerticalAlignment.Center); a2.SetPosition(0, 0); a2.SetFont(_baseFont, GameInstance.ScreenInfo.SetX(30)); AccBrakeB.Pressed += args => { if (ButtonOrientation == ControllerPosition.LEFT_CONTROLLER) { ButtonOrientation = ControllerPosition.RIGHT_CONTROLLER; SettingsManager.Instance.ControllerLayout = ControllerPosition.RIGHT_CONTROLLER; SetButtonConfig(); } else { a2.Value = "RIGHT"; ButtonOrientation = ControllerPosition.LEFT_CONTROLLER; SettingsManager.Instance.ControllerLayout = ControllerPosition.LEFT_CONTROLLER; SetButtonConfig(); } }; }