diff options
42 files changed, 586 insertions, 41 deletions
diff --git a/Penguloon/Content/Content.mgcb b/Penguloon/Content/Content.mgcb index 36eaa5e..09b34a0 100644 --- a/Penguloon/Content/Content.mgcb +++ b/Penguloon/Content/Content.mgcb @@ -1027,3 +1027,147 @@ /processorParam:TextureFormat=Color /build:UI/circle.png +#begin UI/checkbox-empty.png +/importer:TextureImporter +/processor:TextureProcessor +/processorParam:ColorKeyColor=255,0,255,255 +/processorParam:ColorKeyEnabled=True +/processorParam:GenerateMipmaps=False +/processorParam:PremultiplyAlpha=True +/processorParam:ResizeToPowerOfTwo=False +/processorParam:MakeSquare=False +/processorParam:TextureFormat=Color +/build:UI/checkbox-empty.png + +#begin UI/checkbox-selected.png +/importer:TextureImporter +/processor:TextureProcessor +/processorParam:ColorKeyColor=255,0,255,255 +/processorParam:ColorKeyEnabled=True +/processorParam:GenerateMipmaps=False +/processorParam:PremultiplyAlpha=True +/processorParam:ResizeToPowerOfTwo=False +/processorParam:MakeSquare=False +/processorParam:TextureFormat=Color +/build:UI/checkbox-selected.png + +#begin SplashArt/6.png +/importer:TextureImporter +/processor:TextureProcessor +/processorParam:ColorKeyColor=255,0,255,255 +/processorParam:ColorKeyEnabled=True +/processorParam:GenerateMipmaps=False +/processorParam:PremultiplyAlpha=True +/processorParam:ResizeToPowerOfTwo=False +/processorParam:MakeSquare=False +/processorParam:TextureFormat=Color +/build:SplashArt/6.png + +#begin Tiles/space.png +/importer:TextureImporter +/processor:TextureProcessor +/processorParam:ColorKeyColor=255,0,255,255 +/processorParam:ColorKeyEnabled=True +/processorParam:GenerateMipmaps=False +/processorParam:PremultiplyAlpha=True +/processorParam:ResizeToPowerOfTwo=False +/processorParam:MakeSquare=False +/processorParam:TextureFormat=Color +/build:Tiles/space.png + +#begin Tiles/spaceCornerLeftDown.png +/importer:TextureImporter +/processor:TextureProcessor +/processorParam:ColorKeyColor=255,0,255,255 +/processorParam:ColorKeyEnabled=True +/processorParam:GenerateMipmaps=False +/processorParam:PremultiplyAlpha=True +/processorParam:ResizeToPowerOfTwo=False +/processorParam:MakeSquare=False +/processorParam:TextureFormat=Color +/build:Tiles/spaceCornerLeftDown.png + +#begin Tiles/spaceCornerLeftTop.png +/importer:TextureImporter +/processor:TextureProcessor +/processorParam:ColorKeyColor=255,0,255,255 +/processorParam:ColorKeyEnabled=True +/processorParam:GenerateMipmaps=False +/processorParam:PremultiplyAlpha=True +/processorParam:ResizeToPowerOfTwo=False +/processorParam:MakeSquare=False +/processorParam:TextureFormat=Color +/build:Tiles/spaceCornerLeftTop.png + +#begin Tiles/spaceCornerRightDown.png +/importer:TextureImporter +/processor:TextureProcessor +/processorParam:ColorKeyColor=255,0,255,255 +/processorParam:ColorKeyEnabled=True +/processorParam:GenerateMipmaps=False +/processorParam:PremultiplyAlpha=True +/processorParam:ResizeToPowerOfTwo=False +/processorParam:MakeSquare=False +/processorParam:TextureFormat=Color +/build:Tiles/spaceCornerRightDown.png + +#begin Tiles/spaceCornerRightTop.png +/importer:TextureImporter +/processor:TextureProcessor +/processorParam:ColorKeyColor=255,0,255,255 +/processorParam:ColorKeyEnabled=True +/processorParam:GenerateMipmaps=False +/processorParam:PremultiplyAlpha=True +/processorParam:ResizeToPowerOfTwo=False +/processorParam:MakeSquare=False +/processorParam:TextureFormat=Color +/build:Tiles/spaceCornerRightTop.png + +#begin Tiles/spaceHorizontal.png +/importer:TextureImporter +/processor:TextureProcessor +/processorParam:ColorKeyColor=255,0,255,255 +/processorParam:ColorKeyEnabled=True +/processorParam:GenerateMipmaps=False +/processorParam:PremultiplyAlpha=True +/processorParam:ResizeToPowerOfTwo=False +/processorParam:MakeSquare=False +/processorParam:TextureFormat=Color +/build:Tiles/spaceHorizontal.png + +#begin Tiles/spaceVertical.png +/importer:TextureImporter +/processor:TextureProcessor +/processorParam:ColorKeyColor=255,0,255,255 +/processorParam:ColorKeyEnabled=True +/processorParam:GenerateMipmaps=False +/processorParam:PremultiplyAlpha=True +/processorParam:ResizeToPowerOfTwo=False +/processorParam:MakeSquare=False +/processorParam:TextureFormat=Color +/build:Tiles/spaceVertical.png + +#begin SplashArt/8.png +/importer:TextureImporter +/processor:TextureProcessor +/processorParam:ColorKeyColor=255,0,255,255 +/processorParam:ColorKeyEnabled=True +/processorParam:GenerateMipmaps=False +/processorParam:PremultiplyAlpha=True +/processorParam:ResizeToPowerOfTwo=False +/processorParam:MakeSquare=False +/processorParam:TextureFormat=Color +/build:SplashArt/8.png + +#begin SplashArt/7.png +/importer:TextureImporter +/processor:TextureProcessor +/processorParam:ColorKeyColor=255,0,255,255 +/processorParam:ColorKeyEnabled=True +/processorParam:GenerateMipmaps=False +/processorParam:PremultiplyAlpha=True +/processorParam:ResizeToPowerOfTwo=False +/processorParam:MakeSquare=False +/processorParam:TextureFormat=Color +/build:SplashArt/7.png + diff --git a/Penguloon/Content/SplashArt/6.png b/Penguloon/Content/SplashArt/6.png Binary files differnew file mode 100644 index 0000000..916d36b --- /dev/null +++ b/Penguloon/Content/SplashArt/6.png diff --git a/Penguloon/Content/SplashArt/7.png b/Penguloon/Content/SplashArt/7.png Binary files differnew file mode 100644 index 0000000..71e5a8b --- /dev/null +++ b/Penguloon/Content/SplashArt/7.png diff --git a/Penguloon/Content/SplashArt/8.png b/Penguloon/Content/SplashArt/8.png Binary files differnew file mode 100644 index 0000000..242f80a --- /dev/null +++ b/Penguloon/Content/SplashArt/8.png diff --git a/Penguloon/Content/Tiles/space.png b/Penguloon/Content/Tiles/space.png Binary files differnew file mode 100644 index 0000000..512a43e --- /dev/null +++ b/Penguloon/Content/Tiles/space.png diff --git a/Penguloon/Content/Tiles/spaceCornerLeftDown.png b/Penguloon/Content/Tiles/spaceCornerLeftDown.png Binary files differnew file mode 100644 index 0000000..0381213 --- /dev/null +++ b/Penguloon/Content/Tiles/spaceCornerLeftDown.png diff --git a/Penguloon/Content/Tiles/spaceCornerLeftTop.png b/Penguloon/Content/Tiles/spaceCornerLeftTop.png Binary files differnew file mode 100644 index 0000000..2307e23 --- /dev/null +++ b/Penguloon/Content/Tiles/spaceCornerLeftTop.png diff --git a/Penguloon/Content/Tiles/spaceCornerRightDown.png b/Penguloon/Content/Tiles/spaceCornerRightDown.png Binary files differnew file mode 100644 index 0000000..43dda45 --- /dev/null +++ b/Penguloon/Content/Tiles/spaceCornerRightDown.png diff --git a/Penguloon/Content/Tiles/spaceCornerRightTop.png b/Penguloon/Content/Tiles/spaceCornerRightTop.png Binary files differnew file mode 100644 index 0000000..c42453e --- /dev/null +++ b/Penguloon/Content/Tiles/spaceCornerRightTop.png diff --git a/Penguloon/Content/Tiles/spaceHorizontal.png b/Penguloon/Content/Tiles/spaceHorizontal.png Binary files differnew file mode 100644 index 0000000..241ca3b --- /dev/null +++ b/Penguloon/Content/Tiles/spaceHorizontal.png diff --git a/Penguloon/Content/Tiles/spaceVertical.png b/Penguloon/Content/Tiles/spaceVertical.png Binary files differnew file mode 100644 index 0000000..046a7d9 --- /dev/null +++ b/Penguloon/Content/Tiles/spaceVertical.png diff --git a/Penguloon/Content/UI/checkbox-empty.png b/Penguloon/Content/UI/checkbox-empty.png Binary files differnew file mode 100644 index 0000000..4cf5e2f --- /dev/null +++ b/Penguloon/Content/UI/checkbox-empty.png diff --git a/Penguloon/Content/UI/checkbox-selected.png b/Penguloon/Content/UI/checkbox-selected.png Binary files differnew file mode 100644 index 0000000..72826a1 --- /dev/null +++ b/Penguloon/Content/UI/checkbox-selected.png diff --git a/Penguloon/Content/UI/sand.png b/Penguloon/Content/UI/sand.png Binary files differdeleted file mode 100644 index abd640e..0000000 --- a/Penguloon/Content/UI/sand.png +++ /dev/null diff --git a/Penguloon/Content/UI/sandCornerLeftDown.png b/Penguloon/Content/UI/sandCornerLeftDown.png Binary files differdeleted file mode 100644 index f4c453e..0000000 --- a/Penguloon/Content/UI/sandCornerLeftDown.png +++ /dev/null diff --git a/Penguloon/Content/UI/sandCornerLeftTop.png b/Penguloon/Content/UI/sandCornerLeftTop.png Binary files differdeleted file mode 100644 index a6cc065..0000000 --- a/Penguloon/Content/UI/sandCornerLeftTop.png +++ /dev/null diff --git a/Penguloon/Content/UI/sandCornerRightDown.png b/Penguloon/Content/UI/sandCornerRightDown.png Binary files differdeleted file mode 100644 index 279f15a..0000000 --- a/Penguloon/Content/UI/sandCornerRightDown.png +++ /dev/null diff --git a/Penguloon/Content/UI/sandCornerRightTop.png b/Penguloon/Content/UI/sandCornerRightTop.png Binary files differdeleted file mode 100644 index 9289be5..0000000 --- a/Penguloon/Content/UI/sandCornerRightTop.png +++ /dev/null diff --git a/Penguloon/Content/UI/sandHorizontal.png b/Penguloon/Content/UI/sandHorizontal.png Binary files differdeleted file mode 100644 index 859ae74..0000000 --- a/Penguloon/Content/UI/sandHorizontal.png +++ /dev/null diff --git a/Penguloon/Content/UI/sandVertical.png b/Penguloon/Content/UI/sandVertical.png Binary files differdeleted file mode 100644 index 3e17fad..0000000 --- a/Penguloon/Content/UI/sandVertical.png +++ /dev/null diff --git a/Penguloon/ContentManager.cs b/Penguloon/ContentManager.cs index 561eead..175aa32 100644 --- a/Penguloon/ContentManager.cs +++ b/Penguloon/ContentManager.cs @@ -158,6 +158,29 @@ namespace Penguloon return null; } + public static Texture2D GetSpaceTileTextureByType(int type) + { + switch (type) + { + case 0: + return GetTexture("Tiles/space"); + case 1: + return GetTexture("Tiles/spaceCornerLeftDown"); + case 2: + return GetTexture("Tiles/spaceCornerLeftTop"); + case 3: + return GetTexture("Tiles/spaceCornerRightDown"); + case 4: + return GetTexture("Tiles/spaceCornerRightTop"); + case 5: + return GetTexture("Tiles/spaceHorizontal"); + case 6: + return GetTexture("Tiles/spaceVertical"); + } + + return null; + } + public static void DisposeContent() { foreach (var entry in TextureDictionary) diff --git a/Penguloon/ContentPathManager.cs b/Penguloon/ContentPathManager.cs index 71b17e9..825f5d7 100644 --- a/Penguloon/ContentPathManager.cs +++ b/Penguloon/ContentPathManager.cs @@ -43,6 +43,14 @@ namespace Penguloon "Tiles/sandHorizontal", "Tiles/sandVertical", + "Tiles/space", + "Tiles/spaceCornerLeftDown", + "Tiles/spaceCornerLeftTop", + "Tiles/spaceCornerRightDown", + "Tiles/spaceCornerRightTop", + "Tiles/spaceHorizontal", + "Tiles/spaceVertical", + "UI/btnDisabled", "UI/btnIdle", "UI/btnPressed", @@ -69,6 +77,8 @@ namespace Penguloon "UI/BtnMutePressed", "UI/BtnUnmuteIdle", "UI/BtnUnmutePressed", + "UI/checkbox-empty", + "UI/checkbox-selected", "UI/speed", "UI/money", @@ -82,6 +92,9 @@ namespace Penguloon "SplashArt/3", "SplashArt/4", "SplashArt/5", + "SplashArt/6", + "SplashArt/7", + "SplashArt/8", "Enemies/pop", "Enemies/red", diff --git a/Penguloon/Controls/Checkbox.cs b/Penguloon/Controls/Checkbox.cs new file mode 100644 index 0000000..7db93f5 --- /dev/null +++ b/Penguloon/Controls/Checkbox.cs @@ -0,0 +1,44 @@ +using Microsoft.Xna.Framework; +using Penguloon.Scenes; + +namespace Penguloon.Controls +{ + public class Checkbox : ControlBase + { + public bool Selected { get; set; } = false; + + public Checkbox(SceneBase parentScene, Vector2 position, Vector2 size) : base(parentScene, position, size) + { + this.BackgroundIdle = ContentManager.GetTexture("UI/checkbox-empty"); + this.BackgroundPressed = ContentManager.GetTexture("UI/checkbox-empty"); + this.BackgroundDisabled = ContentManager.GetTexture("UI/checkbox-empty"); + + this.ForeColor = Color.White; + this.BorderColor = Color.Gray; + this.BorderWidth = 0; + this.Font = ContentManager.GetFont(StaticUIValues.MenuFont); + + OnClick += Button_OnClick; + } + + private void Button_OnClick(object sender, ClickArgs e) + { + Selected = !Selected; + + if (Selected) + { + this.BackgroundIdle = ContentManager.GetTexture("UI/checkbox-selected"); + this.BackgroundPressed = ContentManager.GetTexture("UI/checkbox-selected"); + this.BackgroundDisabled = ContentManager.GetTexture("UI/checkbox-selected"); + } + else + { + this.BackgroundIdle = ContentManager.GetTexture("UI/checkbox-empty"); + this.BackgroundPressed = ContentManager.GetTexture("UI/checkbox-empty"); + this.BackgroundDisabled = ContentManager.GetTexture("UI/checkbox-empty"); + } + + SoundManager.PlayClickSound(); + } + } +}
\ No newline at end of file diff --git a/Penguloon/Controls/IngameOptions.cs b/Penguloon/Controls/IngameOptions.cs index f59379d..0e2616c 100644 --- a/Penguloon/Controls/IngameOptions.cs +++ b/Penguloon/Controls/IngameOptions.cs @@ -25,6 +25,12 @@ namespace Penguloon.Controls public MuteButton BtnMute { get; set; } + public Checkbox CheckboxAutoStart { get; set; } + + Vector2 BtnSize; + Vector2 AutoStartTextPos; + string autoStartText; + public IngameOptions(SceneBase parentScene, Vector2 position, Vector2 size) : base(parentScene, position, size) { this.DrawText = false; @@ -32,7 +38,7 @@ namespace Penguloon.Controls this.BackgroundPressed = ContentManager.GetTexture("UI/optionsMenuBackground"); this.BackgroundDisabled = ContentManager.GetTexture("UI/optionsMenuBackground"); - Vector2 BtnSize = new Vector2(Size.X - 90, StaticUIValues.IngameUIPlayButtonHeight); + BtnSize = new Vector2(Size.X - 90, StaticUIValues.IngameUIPlayButtonHeight); Vector2 MsgBoxSize = new Vector2(900, 550); BtnMute = new MuteButton(parentScene, @@ -49,7 +55,18 @@ namespace Penguloon.Controls QuitConfirmationBox = new MessageBox(parentScene, new Vector2((StaticUIValues.ScreenViewport.X / 2) - (MsgBoxSize.X / 2), (StaticUIValues.ScreenViewport.Y / 2) - (MsgBoxSize.Y / 2)), - MsgBoxSize, parentScene.Main.Resources.GetString(Resource.String.IngameOptionsQuitConfirmation)); + MsgBoxSize, parentScene.Main.Resources.GetString(Resource.String.IngameOptionsQuitConfirmation)); + + CheckboxAutoStart = new Checkbox(parentScene, + new Vector2(position.X + (Size.X / 2) - (BtnSize.X / 2) + 20 + StaticUIValues.MenuButtonSize.Y, Position.Y + Size.Y - (50 * 2) - (BtnSize.Y * 2)), + new Vector2(StaticUIValues.MenuButtonSize.Y, StaticUIValues.MenuButtonSize.Y)); + + Font = ContentManager.GetFont(StaticUIValues.IngameFont); + + AutoStartTextPos = new Vector2(Position.X + (Size.X / 2) - (BtnSize.X / 2) + 20 + StaticUIValues.MenuButtonSize.Y + 20 + StaticUIValues.MenuButtonSize.Y, + Position.Y + Size.Y - (50 * 2) - (BtnSize.Y * 2) + (StaticUIValues.MenuButtonSize.Y / 2) - (Font.MeasureString("boeit niet").Y / 2)); + + autoStartText = parentScene.Main.Resources.GetString(Resource.String.IngameOptionsAutoStart); BtnContinue.OnClick += BtnContinue_OnClick; BtnQuit.OnClick += BtnQuit_OnClick; @@ -102,6 +119,11 @@ namespace Penguloon.Controls BtnContinue.Draw(deltaTime); BtnQuit.Draw(deltaTime); BtnMute.Draw(deltaTime); + CheckboxAutoStart.Draw(deltaTime); + + ParentScene.DrawText(Font, "Auto Start", + AutoStartTextPos, new Vector2(), TextAllignment.LeftTop, Color.White, Color.Gray, 2); + QuitConfirmationBox.Draw(deltaTime); } @@ -120,6 +142,7 @@ namespace Penguloon.Controls BtnContinue.Update(deltaTime, touchLocations); BtnQuit.Update(deltaTime, touchLocations); BtnMute.Update(deltaTime, touchLocations); + CheckboxAutoStart.Update(deltaTime, touchLocations); } } }
\ No newline at end of file diff --git a/Penguloon/Controls/LevelSelector.cs b/Penguloon/Controls/LevelSelector.cs index b5f0b26..885d6c1 100644 --- a/Penguloon/Controls/LevelSelector.cs +++ b/Penguloon/Controls/LevelSelector.cs @@ -108,6 +108,10 @@ namespace Penguloon.Controls Levels.Add(new SandLevel1()); Levels.Add(new SandLevel2()); + Levels.Add(new SandLevel3()); + + Levels.Add(new SpaceLevel1()); + Levels.Add(new SpaceLevel2()); } public override void Draw(float deltaTime) diff --git a/Penguloon/Enums.cs b/Penguloon/Enums.cs index d501087..0b800a6 100644 --- a/Penguloon/Enums.cs +++ b/Penguloon/Enums.cs @@ -61,6 +61,7 @@ namespace Penguloon public enum LevelType { Ice, - Sand + Sand, + Space } }
\ No newline at end of file diff --git a/Penguloon/Levels/IceLevel.cs b/Penguloon/Levels/IceLevel.cs index 07d57b7..d041095 100644 --- a/Penguloon/Levels/IceLevel.cs +++ b/Penguloon/Levels/IceLevel.cs @@ -11,7 +11,7 @@ namespace Penguloon.Levels public IceLevel() : base() { this.SplashArt = ContentManager.GetTexture("SplashArt/1"); - this.Money = 123350; + this.Money = 350; this.Health = 200; this.ID = 1; this.MinimumLevel = 1; diff --git a/Penguloon/Levels/IceLevel3.cs b/Penguloon/Levels/IceLevel3.cs index f7a46e4..491a0dd 100644 --- a/Penguloon/Levels/IceLevel3.cs +++ b/Penguloon/Levels/IceLevel3.cs @@ -11,7 +11,7 @@ namespace Penguloon.Levels public IceLevel3() : base() { this.SplashArt = ContentManager.GetTexture("SplashArt/3"); - this.Money = 123550; + this.Money = 350; this.Health = 200; this.ID = 3; this.MinimumLevel = 10; diff --git a/Penguloon/Levels/LevelBase.cs b/Penguloon/Levels/LevelBase.cs index f2d8234..933b817 100644 --- a/Penguloon/Levels/LevelBase.cs +++ b/Penguloon/Levels/LevelBase.cs @@ -74,10 +74,15 @@ namespace Penguloon.Levels string time = ""; - if (!Finished) - time = (DateTime.Now - StartDate).ToString("hh':'mm':'ss"); - else - time = (EndDate - StartDate).ToString("hh':'mm':'ss"); + TimeSpan span = (DateTime.Now - StartDate); + if (Finished) + span = (EndDate - StartDate); + + string format = "mm':'ss"; + if (span.TotalHours > 1) + format = "hh':'mm':'ss"; + + time = span.ToString(format); ParentScene.DrawText(ContentManager.GetFont("Fonts/GWENT/36"), time, new Vector2(10, StaticUIValues.ScreenViewport.Y - ContentManager.GetFont("Fonts/GWENT/36").MeasureString("XD").Y - 10), new Vector2(), TextAllignment.LeftTop, Color.White, Color.Black, 2); diff --git a/Penguloon/Levels/Map.cs b/Penguloon/Levels/Map.cs index 43a701e..1ca9ee4 100644 --- a/Penguloon/Levels/Map.cs +++ b/Penguloon/Levels/Map.cs @@ -101,6 +101,7 @@ namespace Penguloon.Levels { case LevelType.Ice: tileTexture = ContentManager.GetTileTextureByType(TileMap[y, x].Type); break; case LevelType.Sand: tileTexture = ContentManager.GetSandTileTextureByType(TileMap[y, x].Type); break; + case LevelType.Space: tileTexture = ContentManager.GetSpaceTileTextureByType(TileMap[y, x].Type); break; } if (tileTexture != null) @@ -121,6 +122,7 @@ namespace Penguloon.Levels { case LevelType.Ice: tileTextureSpare = ContentManager.GetTileTextureByType(0); break; case LevelType.Sand: tileTextureSpare = ContentManager.GetSandTileTextureByType(0); break; + case LevelType.Space: tileTextureSpare = ContentManager.GetSpaceTileTextureByType(0); break; } // draw spare tiles diff --git a/Penguloon/Levels/SandLevel2.cs b/Penguloon/Levels/SandLevel2.cs index 5662e84..006737a 100644 --- a/Penguloon/Levels/SandLevel2.cs +++ b/Penguloon/Levels/SandLevel2.cs @@ -13,7 +13,7 @@ namespace Penguloon.Levels this.SplashArt = ContentManager.GetTexture("SplashArt/5"); this.Money = 350; this.Health = 200; - this.ID = 4; + this.ID = 5; this.MinimumLevel = 20; LevelType = LevelType.Sand; } diff --git a/Penguloon/Levels/SandLevel3.cs b/Penguloon/Levels/SandLevel3.cs new file mode 100644 index 0000000..a158544 --- /dev/null +++ b/Penguloon/Levels/SandLevel3.cs @@ -0,0 +1,89 @@ +using Microsoft.Xna.Framework; +using Microsoft.Xna.Framework.Input.Touch; +using Penguloon.Enemies; +using Penguloon.Objects; +using Penguloon.Scenes; + +namespace Penguloon.Levels +{ + public class SandLevel3 : LevelBase + { + public SandLevel3() : base() + { + this.SplashArt = ContentManager.GetTexture("SplashArt/6"); + this.Money = 350; + this.Health = 200; + this.ID = 6; + this.MinimumLevel = 25; + LevelType = LevelType.Sand; + } + + public override void DrawUnique(float deltaTime) + { + base.DrawUnique(deltaTime); + } + + public override void UpdateUnique(float deltaTime, TouchLocation[] touchLocations) + { + base.UpdateUnique(deltaTime, touchLocations); + } + + public override void CreateMap() + { + Map = new Map(ParentScene, this); + Map.SpawnPoint = new Vector2(4 * Map.TileWidth, -1 * Map.TileHeight); + Map.SpawnPointTargetPos = new Vector2(4 * Map.TileWidth, 0 * Map.TileHeight); + Map.FinishPoint = new Vector2(-1 * Map.TileWidth, 11 * Map.TileHeight); + + Tile OO = new Tile(0, Direction.None); + + Tile DN = new Tile(6, Direction.Down); + Tile RT = new Tile(5, Direction.Right); + Tile LT = new Tile(5, Direction.Left); + Tile UP = new Tile(6, Direction.Up); + + Tile TR = new Tile(4, Direction.Right); + Tile RU = new Tile(4, Direction.Up); + Tile DR = new Tile(3, Direction.Right); + + Tile DL = new Tile(1, Direction.Down); + Tile RD = new Tile(3, Direction.Down); + Tile LD = new Tile(1, Direction.Left); + Tile LU = new Tile(2, Direction.Left); + Tile TL = new Tile(2, Direction.Up); + + Tile FN = new Tile(5, Direction.Finish); + + Map.TileMap = new Tile[13, 18] + { + { OO,OO,OO,OO,DN,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO }, + { OO,OO,OO,OO,DN,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO }, + { OO,OO,RD,LT,LU,OO,OO,OO,OO,OO,OO,DR,RT,RT,RT,DL,OO,OO }, + { OO,OO,DN,OO,OO,OO,OO,OO,OO,OO,OO,UP,OO,OO,OO,DN,OO,OO }, + { OO,OO,DN,OO,OO,OO,OO,OO,OO,OO,OO,UP,OO,OO,OO,DN,OO,OO }, + { OO,OO,TR,RT,RT,RT,RT,RT,RT,RT,RT,TL,OO,OO,OO,DN,OO,OO }, + { OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,DN,OO,OO }, + { OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,DN,OO,OO }, + { OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,DN,OO,OO }, + { OO,OO,RD,LT,LT,LT,LT,LT,LT,LT,LT,LT,LT,LT,LT,LU,OO,OO }, + { OO,OO,DN,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO }, + { FN,LT,LU,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO }, + { OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO }, + }; + + // { OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO }, + // { OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO }, + // { OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO }, + // { OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO }, + // { OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO }, + // { OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO }, + // { OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO }, + // { OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO }, + // { OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO }, + // { OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO }, + // { OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO }, + // { OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO }, + // { OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO }, + } + } +}
\ No newline at end of file diff --git a/Penguloon/Levels/SpaceLevel1.cs b/Penguloon/Levels/SpaceLevel1.cs new file mode 100644 index 0000000..b52db2f --- /dev/null +++ b/Penguloon/Levels/SpaceLevel1.cs @@ -0,0 +1,89 @@ +using Microsoft.Xna.Framework; +using Microsoft.Xna.Framework.Input.Touch; +using Penguloon.Enemies; +using Penguloon.Objects; +using Penguloon.Scenes; + +namespace Penguloon.Levels +{ + public class SpaceLevel1 : LevelBase + { + public SpaceLevel1() : base() + { + this.SplashArt = ContentManager.GetTexture("SplashArt/7"); + this.Money = 350; + this.Health = 200; + this.ID = 7; + this.MinimumLevel = 1; + LevelType = LevelType.Space; + } + + public override void DrawUnique(float deltaTime) + { + base.DrawUnique(deltaTime); + } + + public override void UpdateUnique(float deltaTime, TouchLocation[] touchLocations) + { + base.UpdateUnique(deltaTime, touchLocations); + } + + public override void CreateMap() + { + Map = new Map(ParentScene, this); + Map.SpawnPoint = new Vector2(-1 * Map.TileWidth, 3 * Map.TileHeight); + Map.SpawnPointTargetPos = new Vector2(0 * Map.TileWidth, 3 * Map.TileHeight); + Map.FinishPoint = new Vector2(-1 * Map.TileWidth, 9 * Map.TileHeight); + + Tile OO = new Tile(0, Direction.None); + + Tile DN = new Tile(6, Direction.Down); + Tile RT = new Tile(5, Direction.Right); + Tile LT = new Tile(5, Direction.Left); + Tile UP = new Tile(6, Direction.Up); + + Tile TR = new Tile(4, Direction.Right); + Tile RU = new Tile(4, Direction.Up); + Tile DR = new Tile(3, Direction.Right); + + Tile DL = new Tile(1, Direction.Down); + Tile RD = new Tile(3, Direction.Down); + Tile LD = new Tile(1, Direction.Left); + Tile LU = new Tile(2, Direction.Left); + Tile TL = new Tile(2, Direction.Up); + + Tile FN = new Tile(5, Direction.Finish); + + Map.TileMap = new Tile[13, 18] + { + { OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO }, + { OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO }, + { OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO }, + { RT,RT,RT,RT,RT,RT,RT,RT,RT,RT,RT,RT,RT,RT,DL,OO,OO,OO }, + { OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,DN,OO,OO,OO }, + { OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,DN,OO,OO,OO }, + { OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,DN,OO,OO,OO }, + { OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,DN,OO,OO,OO }, + { OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,DN,OO,OO,OO }, + { FN,LT,LT,LT,LT,LT,LT,LT,LT,LT,LT,LT,LT,LT,LU,OO,OO,OO }, + { OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO }, + { OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO }, + { OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO }, + }; + + // { OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO }, + // { OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO }, + // { OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO }, + // { OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO }, + // { OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO }, + // { OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO }, + // { OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO }, + // { OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO }, + // { OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO }, + // { OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO }, + // { OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO }, + // { OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO }, + // { OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO }, + } + } +}
\ No newline at end of file diff --git a/Penguloon/Levels/SpaceLevel2.cs b/Penguloon/Levels/SpaceLevel2.cs new file mode 100644 index 0000000..6de68ba --- /dev/null +++ b/Penguloon/Levels/SpaceLevel2.cs @@ -0,0 +1,89 @@ +using Microsoft.Xna.Framework; +using Microsoft.Xna.Framework.Input.Touch; +using Penguloon.Enemies; +using Penguloon.Objects; +using Penguloon.Scenes; + +namespace Penguloon.Levels +{ + public class SpaceLevel2 : LevelBase + { + public SpaceLevel2() : base() + { + this.SplashArt = ContentManager.GetTexture("SplashArt/8"); + this.Money = 350; + this.Health = 200; + this.ID = 8; + this.MinimumLevel = 35; + LevelType = LevelType.Space; + } + + public override void DrawUnique(float deltaTime) + { + base.DrawUnique(deltaTime); + } + + public override void UpdateUnique(float deltaTime, TouchLocation[] touchLocations) + { + base.UpdateUnique(deltaTime, touchLocations); + } + + public override void CreateMap() + { + Map = new Map(ParentScene, this); + Map.SpawnPoint = new Vector2(-1 * Map.TileWidth, 6 * Map.TileHeight); + Map.SpawnPointTargetPos = new Vector2(0 * Map.TileWidth, 6 * Map.TileHeight); + Map.FinishPoint = new Vector2(18 * Map.TileWidth, 6 * Map.TileHeight); + + Tile OO = new Tile(0, Direction.None); + + Tile DN = new Tile(6, Direction.Down); + Tile RT = new Tile(5, Direction.Right); + Tile LT = new Tile(5, Direction.Left); + Tile UP = new Tile(6, Direction.Up); + + Tile TR = new Tile(4, Direction.Right); + Tile RU = new Tile(4, Direction.Up); + Tile DR = new Tile(3, Direction.Right); + + Tile DL = new Tile(1, Direction.Down); + Tile RD = new Tile(3, Direction.Down); + Tile LD = new Tile(1, Direction.Left); + Tile LU = new Tile(2, Direction.Left); + Tile TL = new Tile(2, Direction.Up); + + Tile FN = new Tile(5, Direction.Finish); + + Map.TileMap = new Tile[13, 18] + { + { OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO }, + { OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO }, + { OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO }, + { OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO }, + { OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO }, + { OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO }, + { RT,RT,RT,RT,RT,RT,RT,RT,RT,RT,RT,RT,RT,RT,RT,RT,RT,FN }, + { OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO }, + { OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO }, + { OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO }, + { OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO }, + { OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO }, + { OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO }, + }; + + // { OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO }, + // { OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO }, + // { OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO }, + // { OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO }, + // { OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO }, + // { OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO }, + // { OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO }, + // { OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO }, + // { OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO }, + // { OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO }, + // { OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO }, + // { OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO }, + // { OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO }, + } + } +}
\ No newline at end of file diff --git a/Penguloon/Levels/WaveManager.cs b/Penguloon/Levels/WaveManager.cs index cb17596..96efa6d 100644 --- a/Penguloon/Levels/WaveManager.cs +++ b/Penguloon/Levels/WaveManager.cs @@ -85,7 +85,16 @@ namespace Penguloon.Levels internal void FinishRound() { if (!Map.Level.Finished) - CurrentWave++; + { + CurrentWave++; + + // auto start round if checkbox is selected in options menu + if (Map.Level.ParentScene.OptionsMenu.CheckboxAutoStart.Selected) + { + Map.Level.Map.WaveManager.StartSpawningEnemies(); + Map.Level.ParentScene.StartRoundBtn.ControlState = ControlState.Disabled; + } + } } } diff --git a/Penguloon/Objects/CannonObject.cs b/Penguloon/Objects/CannonObject.cs index 01afab8..e75639b 100644 --- a/Penguloon/Objects/CannonObject.cs +++ b/Penguloon/Objects/CannonObject.cs @@ -63,7 +63,7 @@ namespace Penguloon.Objects public override void SpawnUnique() { - Projectiles.Add(new SnowballProjectile(this, this.Rotation, extraPops)); + Projectiles.Add(new CannonballProjectile(this, this.Rotation, extraPops)); } } }
\ No newline at end of file diff --git a/Penguloon/Penguloon.csproj b/Penguloon/Penguloon.csproj index a5330ce..3503e27 100644 --- a/Penguloon/Penguloon.csproj +++ b/Penguloon/Penguloon.csproj @@ -65,6 +65,7 @@ <Compile Include="ContentManager.cs" /> <Compile Include="ContentPathManager.cs" /> <Compile Include="Controls\Alert.cs" /> + <Compile Include="Controls\Checkbox.cs" /> <Compile Include="Controls\MuteButton.cs" /> <Compile Include="Controls\ButtonUpgradeMenu.cs" /> <Compile Include="Controls\ButtonReset.cs" /> @@ -86,6 +87,9 @@ <Compile Include="Enemies\RainbowBalloon.cs" /> <Compile Include="Enemies\RedBalloon.cs" /> <Compile Include="Enemies\YellowBalloon.cs" /> + <Compile Include="Levels\SpaceLevel1.cs" /> + <Compile Include="Levels\SpaceLevel2.cs" /> + <Compile Include="Levels\SandLevel3.cs" /> <Compile Include="Levels\SandLevel2.cs" /> <Compile Include="Levels\SandLevel1.cs" /> <Compile Include="Levels\IceLevel3.cs" /> diff --git a/Penguloon/Projectiles/CannonballProjectile.cs b/Penguloon/Projectiles/CannonballProjectile.cs index bfe04e0..dd3f7b6 100644 --- a/Penguloon/Projectiles/CannonballProjectile.cs +++ b/Penguloon/Projectiles/CannonballProjectile.cs @@ -5,13 +5,13 @@ namespace Penguloon.Projectiles { class CannonballProjectile : ProjectileBase { - public CannonballProjectile(ObjectBase ParentObject, float RotationAngle) : base(ParentObject, RotationAngle) + public CannonballProjectile(ObjectBase ParentObject, float RotationAngle, int extraPops = 0) : base(ParentObject, RotationAngle) { this.Texture = ContentManager.GetTexture("Bullets/cannon-ammo"); this.Speed = 450f; this.RotationSpeed = 5f; this.Size = new Vector2(ParentObject.Map.TileWidth / 2, ParentObject.Map.TileHeight / 2); - this.MaxBalloonPops = 5; + this.MaxBalloonPops = 5 + extraPops; Rectangle parentRec = new Rectangle(ParentObject.Position.ToPoint(), new Point(ParentObject.TileSpanX * ParentObject.Map.TileWidth, ParentObject.TileSpanY * ParentObject.Map.TileHeight)); diff --git a/Penguloon/Resources/Drawable/Icon.png b/Penguloon/Resources/Drawable/Icon.png Binary files differindex 1a66b18..466f5a7 100644 --- a/Penguloon/Resources/Drawable/Icon.png +++ b/Penguloon/Resources/Drawable/Icon.png diff --git a/Penguloon/Resources/Resource.Designer.cs b/Penguloon/Resources/Resource.Designer.cs index d3a404b..32f9c1d 100644 --- a/Penguloon/Resources/Resource.Designer.cs +++ b/Penguloon/Resources/Resource.Designer.cs @@ -90,20 +90,23 @@ namespace Penguloon // aapt resource value: 0x7f03000e public const int IngameHealth = 2130903054; - // aapt resource value: 0x7f03001d - public const int IngameNo = 2130903069; + // aapt resource value: 0x7f03001e + public const int IngameNo = 2130903070; // aapt resource value: 0x7f03000c public const int IngameOptions = 2130903052; + // aapt resource value: 0x7f03001b + public const int IngameOptionsAutoStart = 2130903067; + // aapt resource value: 0x7f030019 public const int IngameOptionsContinue = 2130903065; // aapt resource value: 0x7f03001a public const int IngameOptionsQuit = 2130903066; - // aapt resource value: 0x7f03001b - public const int IngameOptionsQuitConfirmation = 2130903067; + // aapt resource value: 0x7f03001c + public const int IngameOptionsQuitConfirmation = 2130903068; // aapt resource value: 0x7f03000d public const int IngameStart = 2130903053; @@ -111,8 +114,8 @@ namespace Penguloon // aapt resource value: 0x7f030010 public const int IngameWave = 2130903056; - // aapt resource value: 0x7f03001c - public const int IngameYes = 2130903068; + // aapt resource value: 0x7f03001d + public const int IngameYes = 2130903069; // aapt resource value: 0x7f030005 public const int LevelSelectionBack = 2130903045; @@ -147,38 +150,38 @@ namespace Penguloon // aapt resource value: 0x7f030013 public const int ObjectPenguin = 2130903059; - // aapt resource value: 0x7f030027 - public const int StatsBestKills = 2130903079; - // aapt resource value: 0x7f030028 - public const int StatsBestRound = 2130903080; + public const int StatsBestKills = 2130903080; - // aapt resource value: 0x7f030026 - public const int StatsBestStatsTitle = 2130903078; + // aapt resource value: 0x7f030029 + public const int StatsBestRound = 2130903081; - // aapt resource value: 0x7f030020 - public const int StatsLevel = 2130903072; + // aapt resource value: 0x7f030027 + public const int StatsBestStatsTitle = 2130903079; // aapt resource value: 0x7f030021 - public const int StatsResetConfirmation = 2130903073; + public const int StatsLevel = 2130903073; + + // aapt resource value: 0x7f030022 + public const int StatsResetConfirmation = 2130903074; + + // aapt resource value: 0x7f030025 + public const int StatsTotalGames = 2130903077; // aapt resource value: 0x7f030024 - public const int StatsTotalGames = 2130903076; + public const int StatsTotalKills = 2130903076; - // aapt resource value: 0x7f030023 - public const int StatsTotalKills = 2130903075; + // aapt resource value: 0x7f030026 + public const int StatsTotalMoneySpent = 2130903078; - // aapt resource value: 0x7f030025 - public const int StatsTotalMoneySpent = 2130903077; + // aapt resource value: 0x7f030023 + public const int StatsTotalStatsTitle = 2130903075; - // aapt resource value: 0x7f030022 - public const int StatsTotalStatsTitle = 2130903074; + // aapt resource value: 0x7f030020 + public const int SupportDonate = 2130903072; // aapt resource value: 0x7f03001f - public const int SupportDonate = 2130903071; - - // aapt resource value: 0x7f03001e - public const int SupportRate = 2130903070; + public const int SupportRate = 2130903071; // aapt resource value: 0x7f030011 public const int UpgradeMenuSell = 2130903057; diff --git a/Penguloon/Resources/Values/Strings.xml b/Penguloon/Resources/Values/Strings.xml index 55b842a..311e278 100644 --- a/Penguloon/Resources/Values/Strings.xml +++ b/Penguloon/Resources/Values/Strings.xml @@ -40,7 +40,8 @@ <!-- ingame options menu --> <string name="IngameOptionsContinue">Continue</string> <string name="IngameOptionsQuit">Quit</string> - + <string name="IngameOptionsAutoStart">Auto start</string> + <string name="IngameOptionsQuitConfirmation">Are you sure you want to quit?</string> <string name="IngameYes">Yes</string> <string name="IngameNo">No</string> diff --git a/Penguloon/Scenes/MenuScene.cs b/Penguloon/Scenes/MenuScene.cs index b8cbc78..44502ba 100644 --- a/Penguloon/Scenes/MenuScene.cs +++ b/Penguloon/Scenes/MenuScene.cs @@ -44,6 +44,8 @@ namespace Penguloon.Scenes Controls.Add(btnCredits); Controls.Add(BtnMute); //Controls.Add(btnSupport); + + } private void BtnSupport_OnClick(object sender, ClickArgs e) |
