From fe6f195f1b548baf743552162f613784706eb18c Mon Sep 17 00:00:00 2001 From: sheychen Date: Mon, 10 Oct 2016 16:37:58 +0200 Subject: [PATCH 1/8] Ajout de OpenGL multi-plateforme --- .../Content/Content.mgcb | 15 ++++ .../Galactic Colors Control GUI.csproj | 76 ++++++++++++++++ Galactic Colors Control GUI/Game1.cs | 83 ++++++++++++++++++ Galactic Colors Control GUI/Icon.ico | Bin 0 -> 147541 bytes Galactic Colors Control GUI/OpenTK.dll.config | 25 ++++++ Galactic Colors Control GUI/Program.cs | 20 +++++ .../Properties/AssemblyInfo.cs | 36 ++++++++ Galactic Colors Control.sln | 18 ++++ 8 files changed, 273 insertions(+) create mode 100644 Galactic Colors Control GUI/Content/Content.mgcb create mode 100644 Galactic Colors Control GUI/Galactic Colors Control GUI.csproj create mode 100644 Galactic Colors Control GUI/Game1.cs create mode 100644 Galactic Colors Control GUI/Icon.ico create mode 100644 Galactic Colors Control GUI/OpenTK.dll.config create mode 100644 Galactic Colors Control GUI/Program.cs create mode 100644 Galactic Colors Control GUI/Properties/AssemblyInfo.cs diff --git a/Galactic Colors Control GUI/Content/Content.mgcb b/Galactic Colors Control GUI/Content/Content.mgcb new file mode 100644 index 0000000..ddc4c36 --- /dev/null +++ b/Galactic Colors Control GUI/Content/Content.mgcb @@ -0,0 +1,15 @@ + +#----------------------------- Global Properties ----------------------------# + +/outputDir:bin/$(Platform) +/intermediateDir:obj/$(Platform) +/platform:DesktopGL +/config: +/profile:Reach +/compress:False + +#-------------------------------- References --------------------------------# + + +#---------------------------------- Content ---------------------------------# + diff --git a/Galactic Colors Control GUI/Galactic Colors Control GUI.csproj b/Galactic Colors Control GUI/Galactic Colors Control GUI.csproj new file mode 100644 index 0000000..72dac9c --- /dev/null +++ b/Galactic Colors Control GUI/Galactic Colors Control GUI.csproj @@ -0,0 +1,76 @@ + + + + + Debug + x86 + 8.0.30703 + 2.0 + {F6CDDF1B-5A57-4A84-B57C-749FFF9AE031} + WinExe + Properties + Galactic_Colors_Control_GUI + Galactic Colors Control GUI + 512 + DesktopGL + v4.5 + + + x86 + true + full + false + bin\$(MonoGamePlatform)\$(Platform)\$(Configuration)\ + DEBUG;TRACE;LINUX + prompt + 4 + + + x86 + pdbonly + true + bin\$(MonoGamePlatform)\$(Platform)\$(Configuration)\ + TRACE;LINUX + prompt + 4 + + + Icon.ico + + + + + + + + + $(MonoGameInstallDirectory)\MonoGame\v3.0\Assemblies\DesktopGL\OpenTK.dll + + + $(MonoGameInstallDirectory)\MonoGame\v3.0\Assemblies\DesktopGL\NVorbis.dll + + + $(MonoGameInstallDirectory)\MonoGame\v3.0\Assemblies\DesktopGL\MonoGame.Framework.dll + + + + + + + + Always + + + + + + + + + \ No newline at end of file diff --git a/Galactic Colors Control GUI/Game1.cs b/Galactic Colors Control GUI/Game1.cs new file mode 100644 index 0000000..13a10bd --- /dev/null +++ b/Galactic Colors Control GUI/Game1.cs @@ -0,0 +1,83 @@ +using Microsoft.Xna.Framework; +using Microsoft.Xna.Framework.Graphics; +using Microsoft.Xna.Framework.Input; + +namespace Galactic_Colors_Control_GUI +{ + /// + /// This is the main type for your game. + /// + public class Game1 : Game + { + GraphicsDeviceManager graphics; + SpriteBatch spriteBatch; + + public Game1() + { + graphics = new GraphicsDeviceManager(this); + Content.RootDirectory = "Content"; + } + + /// + /// Allows the game to perform any initialization it needs to before starting to run. + /// This is where it can query for any required services and load any non-graphic + /// related content. Calling base.Initialize will enumerate through any components + /// and initialize them as well. + /// + protected override void Initialize() + { + // TODO: Add your initialization logic here + + base.Initialize(); + } + + /// + /// LoadContent will be called once per game and is the place to load + /// all of your content. + /// + protected override void LoadContent() + { + // Create a new SpriteBatch, which can be used to draw textures. + spriteBatch = new SpriteBatch(GraphicsDevice); + + // TODO: use this.Content to load your game content here + } + + /// + /// UnloadContent will be called once per game and is the place to unload + /// game-specific content. + /// + protected override void UnloadContent() + { + // TODO: Unload any non ContentManager content here + } + + /// + /// Allows the game to run logic such as updating the world, + /// checking for collisions, gathering input, and playing audio. + /// + /// Provides a snapshot of timing values. + protected override void Update(GameTime gameTime) + { + if (GamePad.GetState(PlayerIndex.One).Buttons.Back == ButtonState.Pressed || Keyboard.GetState().IsKeyDown(Keys.Escape)) + Exit(); + + // TODO: Add your update logic here + + base.Update(gameTime); + } + + /// + /// This is called when the game should draw itself. + /// + /// Provides a snapshot of timing values. + protected override void Draw(GameTime gameTime) + { + GraphicsDevice.Clear(Color.CornflowerBlue); + + // TODO: Add your drawing code here + + base.Draw(gameTime); + } + } +} diff --git a/Galactic Colors Control GUI/Icon.ico b/Galactic Colors Control GUI/Icon.ico new file mode 100644 index 0000000000000000000000000000000000000000..7d9dec18704053ee43cd7c956022ddbdb34d8de1 GIT binary patch literal 147541 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 RJoIeLznU7AhJ`o~_y6Yy51#-4 literal 0 HcmV?d00001 diff --git a/Galactic Colors Control GUI/OpenTK.dll.config b/Galactic Colors Control GUI/OpenTK.dll.config new file mode 100644 index 0000000..3f888cc --- /dev/null +++ b/Galactic Colors Control GUI/OpenTK.dll.config @@ -0,0 +1,25 @@ + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Galactic Colors Control GUI/Program.cs b/Galactic Colors Control GUI/Program.cs new file mode 100644 index 0000000..7360770 --- /dev/null +++ b/Galactic Colors Control GUI/Program.cs @@ -0,0 +1,20 @@ +using System; + +namespace Galactic_Colors_Control_GUI +{ + /// + /// The main class. + /// + public static class Program + { + /// + /// The main entry point for the application. + /// + [STAThread] + static void Main() + { + using (var game = new Game1()) + game.Run(); + } + } +} diff --git a/Galactic Colors Control GUI/Properties/AssemblyInfo.cs b/Galactic Colors Control GUI/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..24abb85 --- /dev/null +++ b/Galactic Colors Control GUI/Properties/AssemblyInfo.cs @@ -0,0 +1,36 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyTitle("Galactic Colors Control GUI")] +[assembly: AssemblyProduct("Galactic Colors Control GUI")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyCompany("")] +[assembly: AssemblyCopyright("Copyright © 2016")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[assembly: Guid("606d35be-02e8-4a7e-978e-04c2aca6ccd7")] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +// You can specify all the values or you can default the Build and Revision Numbers +// by using the '*' as shown below: +// [assembly: AssemblyVersion("1.0.*")] +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/Galactic Colors Control.sln b/Galactic Colors Control.sln index 0ad449f..2680dda 100644 --- a/Galactic Colors Control.sln +++ b/Galactic Colors Control.sln @@ -7,20 +7,38 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Galactic Colors Control Ser EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Galactic Colors Control", "Galactic Colors Control\Galactic Colors Control.csproj", "{93582CE8-C8C8-4E19-908B-D671ECBADE25}" EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Galactic Colors Control GUI", "Galactic Colors Control GUI\Galactic Colors Control GUI.csproj", "{F6CDDF1B-5A57-4A84-B57C-749FFF9AE031}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU + Debug|x86 = Debug|x86 Release|Any CPU = Release|Any CPU + Release|x86 = Release|x86 EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution {9E3AF4E1-88C6-4139-A15C-B4F633E80612}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {9E3AF4E1-88C6-4139-A15C-B4F633E80612}.Debug|Any CPU.Build.0 = Debug|Any CPU + {9E3AF4E1-88C6-4139-A15C-B4F633E80612}.Debug|x86.ActiveCfg = Debug|Any CPU + {9E3AF4E1-88C6-4139-A15C-B4F633E80612}.Debug|x86.Build.0 = Debug|Any CPU {9E3AF4E1-88C6-4139-A15C-B4F633E80612}.Release|Any CPU.ActiveCfg = Release|Any CPU {9E3AF4E1-88C6-4139-A15C-B4F633E80612}.Release|Any CPU.Build.0 = Release|Any CPU + {9E3AF4E1-88C6-4139-A15C-B4F633E80612}.Release|x86.ActiveCfg = Release|Any CPU + {9E3AF4E1-88C6-4139-A15C-B4F633E80612}.Release|x86.Build.0 = Release|Any CPU {93582CE8-C8C8-4E19-908B-D671ECBADE25}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {93582CE8-C8C8-4E19-908B-D671ECBADE25}.Debug|Any CPU.Build.0 = Debug|Any CPU + {93582CE8-C8C8-4E19-908B-D671ECBADE25}.Debug|x86.ActiveCfg = Debug|Any CPU + {93582CE8-C8C8-4E19-908B-D671ECBADE25}.Debug|x86.Build.0 = Debug|Any CPU {93582CE8-C8C8-4E19-908B-D671ECBADE25}.Release|Any CPU.ActiveCfg = Release|Any CPU {93582CE8-C8C8-4E19-908B-D671ECBADE25}.Release|Any CPU.Build.0 = Release|Any CPU + {93582CE8-C8C8-4E19-908B-D671ECBADE25}.Release|x86.ActiveCfg = Release|Any CPU + {93582CE8-C8C8-4E19-908B-D671ECBADE25}.Release|x86.Build.0 = Release|Any CPU + {F6CDDF1B-5A57-4A84-B57C-749FFF9AE031}.Debug|Any CPU.ActiveCfg = Debug|x86 + {F6CDDF1B-5A57-4A84-B57C-749FFF9AE031}.Debug|x86.ActiveCfg = Debug|x86 + {F6CDDF1B-5A57-4A84-B57C-749FFF9AE031}.Debug|x86.Build.0 = Debug|x86 + {F6CDDF1B-5A57-4A84-B57C-749FFF9AE031}.Release|Any CPU.ActiveCfg = Release|x86 + {F6CDDF1B-5A57-4A84-B57C-749FFF9AE031}.Release|x86.ActiveCfg = Release|x86 + {F6CDDF1B-5A57-4A84-B57C-749FFF9AE031}.Release|x86.Build.0 = Release|x86 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE From 9108f24cf9b5dd662e10814b930439fe06ae3127 Mon Sep 17 00:00:00 2001 From: sheychen Date: Mon, 10 Oct 2016 17:38:15 +0200 Subject: [PATCH 2/8] =?UTF-8?q?Mise=20en=20place=20de=20d=C3=A9part?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Content/Content.mgcb | 42 ++++++ .../Content/Textures/Hub/pointer0.png | Bin 0 -> 252 bytes .../Galactic Colors Control GUI.csproj | 3 + Galactic Colors Control GUI/Game1.cs | 131 +++++++++++++++++- .../Properties/AssemblyInfo.cs | 6 +- Galactic Colors Control.sln | 12 +- .../Properties/AssemblyInfo.cs | 6 +- 7 files changed, 186 insertions(+), 14 deletions(-) create mode 100644 Galactic Colors Control GUI/Content/Textures/Hub/pointer0.png diff --git a/Galactic Colors Control GUI/Content/Content.mgcb b/Galactic Colors Control GUI/Content/Content.mgcb index ddc4c36..e38ff20 100644 --- a/Galactic Colors Control GUI/Content/Content.mgcb +++ b/Galactic Colors Control GUI/Content/Content.mgcb @@ -13,3 +13,45 @@ #---------------------------------- Content ---------------------------------# +#begin Fonts/basic.spritefont +/importer:FontDescriptionImporter +/processor:FontDescriptionProcessor +/processorParam:TextureFormat=Compressed +/build:Fonts/basic.spritefont + +#begin Fonts/small.spritefont +/importer:FontDescriptionImporter +/processor:FontDescriptionProcessor +/processorParam:TextureFormat=Compressed +/build:Fonts/small.spritefont + +#begin Fonts/title.spritefont +/importer:FontDescriptionImporter +/processor:FontDescriptionProcessor +/processorParam:TextureFormat=Compressed +/build:Fonts/title.spritefont + +#begin Sounds/alert.mp3 +/importer:Mp3Importer +/processor:SoundEffectProcessor +/processorParam:Quality=Best +/build:Sounds/alert.mp3 + +#begin Sounds/bip.mp3 +/importer:Mp3Importer +/processor:SoundEffectProcessor +/processorParam:Quality=Best +/build:Sounds/bip.mp3 + +#begin Sounds/change.mp3 +/importer:Mp3Importer +/processor:SoundEffectProcessor +/processorParam:Quality=Best +/build:Sounds/change.mp3 + +#begin Sounds/valid.mp3 +/importer:Mp3Importer +/processor:SoundEffectProcessor +/processorParam:Quality=Best +/build:Sounds/valid.mp3 + diff --git a/Galactic Colors Control GUI/Content/Textures/Hub/pointer0.png b/Galactic Colors Control GUI/Content/Textures/Hub/pointer0.png new file mode 100644 index 0000000000000000000000000000000000000000..0c44a504813abb32b28b53fcb851d8b107b38eed GIT binary patch literal 252 zcmeAS@N?(olHy`uVBq!ia0vp^A|TAc1|)ksWqE-VOS+@4BLl<6e(pbstUx|zfk$L9 z0|Vb75M~tB@M-`GN|d-plmzFem6RtIr7{#GX6BXX<)xM=nCKbkS>_nm`2p2bdAc}; zSopu48pw4(fydc)`t;BB(?4azD!)CUV8K@RBk{paA*TX^4Kr?vZ{3>4VEt1l(ODTSeZ6Io!M$JFt*4MB0N*`Ef)VX?J-U1O<=RMjBvuhWg-#Y)z@hKd9NA-$3 nO=bpnD1xZJ+;ipq8>ULDJ~_+S{PLI@&=m}xu6{1-oD!M + + PreserveNewest + Always diff --git a/Galactic Colors Control GUI/Game1.cs b/Galactic Colors Control GUI/Game1.cs index 13a10bd..8361fea 100644 --- a/Galactic Colors Control GUI/Game1.cs +++ b/Galactic Colors Control GUI/Game1.cs @@ -1,6 +1,11 @@ using Microsoft.Xna.Framework; +using Microsoft.Xna.Framework.Audio; +using Microsoft.Xna.Framework.Content; using Microsoft.Xna.Framework.Graphics; using Microsoft.Xna.Framework.Input; +using System; +using System.IO; +using System.Reflection; namespace Galactic_Colors_Control_GUI { @@ -11,11 +16,39 @@ namespace Galactic_Colors_Control_GUI { GraphicsDeviceManager graphics; SpriteBatch spriteBatch; + ContentManager content; + + private SoundEffect[] effects = new SoundEffect[4]; + + private SpriteFont smallFont; + private SpriteFont basicFont; + private SpriteFont titleFont; + + private Texture2D nullSprite; + private Texture2D[] pointerSprites = new Texture2D[1]; + + Version version; + + private MouseState oldState; + private MouseState newState; + private int mouseX; + private int mouseY; + private bool haveOverButton = false; + + private string skinName; + + private enum GameStatus { Home, Options, Game, Pause, End, Thanks } + private GameStatus gameStatus; public Game1() { graphics = new GraphicsDeviceManager(this); + graphics.PreferredBackBufferWidth = 1280; + graphics.PreferredBackBufferHeight = 720; + graphics.IsFullScreen = false; + graphics.ApplyChanges(); Content.RootDirectory = "Content"; + content = Content; } /// @@ -26,7 +59,9 @@ namespace Galactic_Colors_Control_GUI /// protected override void Initialize() { - // TODO: Add your initialization logic here + version = Assembly.GetEntryAssembly().GetName().Version; + nullSprite = new Texture2D(GraphicsDevice, 1, 1); + nullSprite.SetData(new Color[1 * 1] { Color.White }); base.Initialize(); } @@ -40,6 +75,33 @@ namespace Galactic_Colors_Control_GUI // Create a new SpriteBatch, which can be used to draw textures. spriteBatch = new SpriteBatch(GraphicsDevice); + //effects[0] = content.Load("Sounds/alert"); + //effects[1] = content.Load("Sounds/bip"); + //effects[2] = content.Load("Sounds/change"); + //effects[3] = content.Load("Sounds/valid"); + + smallFont = content.Load("Fonts/small"); + basicFont = content.Load("Fonts/basic"); + titleFont = content.Load("Fonts/title"); + + for (int i = 0; i < pointerSprites.Length; i++) { + Console.WriteLine("Load pointer" + i); + pointerSprites[i] = content.Load("Textures/Hub/pointer" + i); + } + + if (Directory.Exists("Skin/" + skinName)) + { + if (File.Exists("Skin/" + skinName + "/Sounds/alert.mp3")) using (FileStream fileStream = new FileStream("Skin/" + skinName + "/Sounds/alert.mp3", FileMode.Open)) { effects[0] = SoundEffect.FromStream(fileStream); } + if (File.Exists("Skin/" + skinName + "/Sounds/bip.mp3")) using (FileStream fileStream = new FileStream("Skin/" + skinName + "/Sounds/bip.mp3", FileMode.Open)) { effects[1] = SoundEffect.FromStream(fileStream); } + if (File.Exists("Skin/" + skinName + "/Sounds/change.mp3")) using (FileStream fileStream = new FileStream("Skin/" + skinName + "/Sounds/change.mp3", FileMode.Open)) { effects[2] = SoundEffect.FromStream(fileStream); } + if (File.Exists("Skin/" + skinName + "/Sounds/valid.mp3")) using (FileStream fileStream = new FileStream("Skin/" + skinName + "/Sounds/valid.mp3", FileMode.Open)) { effects[3] = SoundEffect.FromStream(fileStream); } + + for (int i = 0; i < pointerSprites.Length; i++) + { + if (File.Exists("Skin/" + skinName + "/Textures/Hub/pointer" + i + ".png")) using (FileStream fileStream = new FileStream("Skin/" + skinName + "/Textures/Hub/pointer" + i + ".png", FileMode.Open)) { pointerSprites[i] = Texture2D.FromStream(GraphicsDevice, fileStream); } + } + } + // TODO: use this.Content to load your game content here } @@ -62,8 +124,40 @@ namespace Galactic_Colors_Control_GUI if (GamePad.GetState(PlayerIndex.One).Buttons.Back == ButtonState.Pressed || Keyboard.GetState().IsKeyDown(Keys.Escape)) Exit(); - // TODO: Add your update logic here + mouseX = Mouse.GetState().X; + mouseY = Mouse.GetState().Y; + if (IsActive) + { + } + + switch (gameStatus) + { + case GameStatus.Home: + + break; + + case GameStatus.Options: + + break; + + case GameStatus.Game: + + break; + + case GameStatus.Pause: + + break; + + case GameStatus.End: + + break; + + case GameStatus.Thanks: + + break; + } + base.Update(gameTime); } @@ -75,7 +169,38 @@ namespace Galactic_Colors_Control_GUI { GraphicsDevice.Clear(Color.CornflowerBlue); - // TODO: Add your drawing code here + spriteBatch.Begin(); + + switch (gameStatus) + { + case GameStatus.Home: + + break; + + case GameStatus.Options: + + break; + + case GameStatus.Game: + + break; + + case GameStatus.Pause: + + break; + + case GameStatus.End: + + break; + + case GameStatus.Thanks: + + break; + } + + spriteBatch.Draw(pointerSprites[0], new Rectangle(mouseX - 10, mouseY - 10, 20, 20), Color.Red); + + spriteBatch.End(); base.Draw(gameTime); } diff --git a/Galactic Colors Control GUI/Properties/AssemblyInfo.cs b/Galactic Colors Control GUI/Properties/AssemblyInfo.cs index 24abb85..3f6f76e 100644 --- a/Galactic Colors Control GUI/Properties/AssemblyInfo.cs +++ b/Galactic Colors Control GUI/Properties/AssemblyInfo.cs @@ -9,7 +9,7 @@ using System.Runtime.InteropServices; [assembly: AssemblyProduct("Galactic Colors Control GUI")] [assembly: AssemblyConfiguration("")] [assembly: AssemblyDescription("")] -[assembly: AssemblyCompany("")] +[assembly: AssemblyCompany("sheychen")] [assembly: AssemblyCopyright("Copyright © 2016")] [assembly: AssemblyTrademark("")] [assembly: AssemblyCulture("")] @@ -32,5 +32,5 @@ using System.Runtime.InteropServices; // You can specify all the values or you can default the Build and Revision Numbers // by using the '*' as shown below: // [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("1.0.0.0")] -[assembly: AssemblyFileVersion("1.0.0.0")] +[assembly: AssemblyVersion("1.0.0.1")] +[assembly: AssemblyFileVersion("1.0.0.1")] diff --git a/Galactic Colors Control.sln b/Galactic Colors Control.sln index 2680dda..8fb8b73 100644 --- a/Galactic Colors Control.sln +++ b/Galactic Colors Control.sln @@ -17,26 +17,28 @@ Global Release|x86 = Release|x86 EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution - {9E3AF4E1-88C6-4139-A15C-B4F633E80612}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {9E3AF4E1-88C6-4139-A15C-B4F633E80612}.Debug|Any CPU.Build.0 = Debug|Any CPU + {9E3AF4E1-88C6-4139-A15C-B4F633E80612}.Debug|Any CPU.ActiveCfg = Release|Any CPU + {9E3AF4E1-88C6-4139-A15C-B4F633E80612}.Debug|Any CPU.Build.0 = Release|Any CPU {9E3AF4E1-88C6-4139-A15C-B4F633E80612}.Debug|x86.ActiveCfg = Debug|Any CPU {9E3AF4E1-88C6-4139-A15C-B4F633E80612}.Debug|x86.Build.0 = Debug|Any CPU {9E3AF4E1-88C6-4139-A15C-B4F633E80612}.Release|Any CPU.ActiveCfg = Release|Any CPU {9E3AF4E1-88C6-4139-A15C-B4F633E80612}.Release|Any CPU.Build.0 = Release|Any CPU {9E3AF4E1-88C6-4139-A15C-B4F633E80612}.Release|x86.ActiveCfg = Release|Any CPU {9E3AF4E1-88C6-4139-A15C-B4F633E80612}.Release|x86.Build.0 = Release|Any CPU - {93582CE8-C8C8-4E19-908B-D671ECBADE25}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {93582CE8-C8C8-4E19-908B-D671ECBADE25}.Debug|Any CPU.Build.0 = Debug|Any CPU + {93582CE8-C8C8-4E19-908B-D671ECBADE25}.Debug|Any CPU.ActiveCfg = Release|Any CPU + {93582CE8-C8C8-4E19-908B-D671ECBADE25}.Debug|Any CPU.Build.0 = Release|Any CPU {93582CE8-C8C8-4E19-908B-D671ECBADE25}.Debug|x86.ActiveCfg = Debug|Any CPU {93582CE8-C8C8-4E19-908B-D671ECBADE25}.Debug|x86.Build.0 = Debug|Any CPU {93582CE8-C8C8-4E19-908B-D671ECBADE25}.Release|Any CPU.ActiveCfg = Release|Any CPU {93582CE8-C8C8-4E19-908B-D671ECBADE25}.Release|Any CPU.Build.0 = Release|Any CPU {93582CE8-C8C8-4E19-908B-D671ECBADE25}.Release|x86.ActiveCfg = Release|Any CPU {93582CE8-C8C8-4E19-908B-D671ECBADE25}.Release|x86.Build.0 = Release|Any CPU - {F6CDDF1B-5A57-4A84-B57C-749FFF9AE031}.Debug|Any CPU.ActiveCfg = Debug|x86 + {F6CDDF1B-5A57-4A84-B57C-749FFF9AE031}.Debug|Any CPU.ActiveCfg = Release|x86 + {F6CDDF1B-5A57-4A84-B57C-749FFF9AE031}.Debug|Any CPU.Build.0 = Release|x86 {F6CDDF1B-5A57-4A84-B57C-749FFF9AE031}.Debug|x86.ActiveCfg = Debug|x86 {F6CDDF1B-5A57-4A84-B57C-749FFF9AE031}.Debug|x86.Build.0 = Debug|x86 {F6CDDF1B-5A57-4A84-B57C-749FFF9AE031}.Release|Any CPU.ActiveCfg = Release|x86 + {F6CDDF1B-5A57-4A84-B57C-749FFF9AE031}.Release|Any CPU.Build.0 = Release|x86 {F6CDDF1B-5A57-4A84-B57C-749FFF9AE031}.Release|x86.ActiveCfg = Release|x86 {F6CDDF1B-5A57-4A84-B57C-749FFF9AE031}.Release|x86.Build.0 = Release|x86 EndGlobalSection diff --git a/Galactic Colors Control/Properties/AssemblyInfo.cs b/Galactic Colors Control/Properties/AssemblyInfo.cs index 8684608..70f1170 100644 --- a/Galactic Colors Control/Properties/AssemblyInfo.cs +++ b/Galactic Colors Control/Properties/AssemblyInfo.cs @@ -8,7 +8,7 @@ using System.Runtime.InteropServices; [assembly: AssemblyTitle("Galactic Colors Control")] [assembly: AssemblyDescription("")] [assembly: AssemblyConfiguration("")] -[assembly: AssemblyCompany("")] +[assembly: AssemblyCompany("sheychen")] [assembly: AssemblyProduct("Galactic Colors Control")] [assembly: AssemblyCopyright("Copyright © 2016")] [assembly: AssemblyTrademark("")] @@ -32,5 +32,5 @@ using System.Runtime.InteropServices; // Vous pouvez spécifier toutes les valeurs ou indiquer les numéros de build et de révision par défaut // en utilisant '*', comme indiqué ci-dessous : // [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("1.0.0.0")] -[assembly: AssemblyFileVersion("1.0.0.0")] +[assembly: AssemblyVersion("1.0.0.1")] +[assembly: AssemblyFileVersion("1.0.0.1")] From ba9d086ea88acf601ae012a9d9787d6876eb15dc Mon Sep 17 00:00:00 2001 From: sheychen Date: Tue, 11 Oct 2016 20:57:59 +0200 Subject: [PATCH 3/8] Ajout des elements graphiques basiques Nettoyage du ignore --- .gitignore | 2 +- .../Content/Fonts/basic.spritefont | 60 ++++++ .../Content/Fonts/small.spritefont | 60 ++++++ .../Content/Fonts/title.spritefont | 60 ++++++ .../Content/Sounds/alert.mp3 | Bin 0 -> 23274 bytes .../Content/Sounds/bip.mp3 | Bin 0 -> 12416 bytes .../Content/Sounds/change.mp3 | Bin 0 -> 71808 bytes .../Content/Sounds/valid.mp3 | Bin 0 -> 24393 bytes .../Textures/Hub/Buttons/0/bottomCenter.png | Bin 0 -> 167 bytes .../Textures/Hub/Buttons/0/bottomLeft.png | Bin 0 -> 306 bytes .../Textures/Hub/Buttons/0/bottomRight.png | Bin 0 -> 297 bytes .../Textures/Hub/Buttons/0/centerCenter.png | Bin 0 -> 167 bytes .../Textures/Hub/Buttons/0/centerLeft.png | Bin 0 -> 168 bytes .../Textures/Hub/Buttons/0/centerRight.png | Bin 0 -> 173 bytes .../Textures/Hub/Buttons/0/topCenter.png | Bin 0 -> 166 bytes .../Textures/Hub/Buttons/0/topLeft.png | Bin 0 -> 305 bytes .../Textures/Hub/Buttons/0/topRight.png | Bin 0 -> 300 bytes Galactic Colors Control GUI/GUI/Button.cs | 112 ++++++++++ Galactic Colors Control GUI/GUI/Element.cs | 44 ++++ Galactic Colors Control GUI/GUI/Label.cs | 75 +++++++ Galactic Colors Control GUI/GUI/Mouse.cs | 16 ++ .../GUI/TexturedButton.cs | 113 ++++++++++ Galactic Colors Control GUI/GUI/Vector.cs | 20 ++ .../GUI/buttonSprites.cs | 17 ++ .../Galactic Colors Control GUI.csproj | 36 ++++ Galactic Colors Control GUI/Game1.cs | 197 ++++++++++++++++-- .../Properties/AssemblyInfo.cs | 4 +- Galactic Colors Control GUI/Utilities.cs | 30 +++ 28 files changed, 820 insertions(+), 26 deletions(-) create mode 100644 Galactic Colors Control GUI/Content/Fonts/basic.spritefont create mode 100644 Galactic Colors Control GUI/Content/Fonts/small.spritefont create mode 100644 Galactic Colors Control GUI/Content/Fonts/title.spritefont create mode 100644 Galactic Colors Control GUI/Content/Sounds/alert.mp3 create mode 100644 Galactic Colors Control GUI/Content/Sounds/bip.mp3 create mode 100644 Galactic Colors Control GUI/Content/Sounds/change.mp3 create mode 100644 Galactic Colors Control GUI/Content/Sounds/valid.mp3 create mode 100644 Galactic Colors Control GUI/Content/Textures/Hub/Buttons/0/bottomCenter.png create mode 100644 Galactic Colors Control GUI/Content/Textures/Hub/Buttons/0/bottomLeft.png create mode 100644 Galactic Colors Control GUI/Content/Textures/Hub/Buttons/0/bottomRight.png create mode 100644 Galactic Colors Control GUI/Content/Textures/Hub/Buttons/0/centerCenter.png create mode 100644 Galactic Colors Control GUI/Content/Textures/Hub/Buttons/0/centerLeft.png create mode 100644 Galactic Colors Control GUI/Content/Textures/Hub/Buttons/0/centerRight.png create mode 100644 Galactic Colors Control GUI/Content/Textures/Hub/Buttons/0/topCenter.png create mode 100644 Galactic Colors Control GUI/Content/Textures/Hub/Buttons/0/topLeft.png create mode 100644 Galactic Colors Control GUI/Content/Textures/Hub/Buttons/0/topRight.png create mode 100644 Galactic Colors Control GUI/GUI/Button.cs create mode 100644 Galactic Colors Control GUI/GUI/Element.cs create mode 100644 Galactic Colors Control GUI/GUI/Label.cs create mode 100644 Galactic Colors Control GUI/GUI/Mouse.cs create mode 100644 Galactic Colors Control GUI/GUI/TexturedButton.cs create mode 100644 Galactic Colors Control GUI/GUI/Vector.cs create mode 100644 Galactic Colors Control GUI/GUI/buttonSprites.cs create mode 100644 Galactic Colors Control GUI/Utilities.cs diff --git a/.gitignore b/.gitignore index b06e864..42f6fca 100644 --- a/.gitignore +++ b/.gitignore @@ -209,4 +209,4 @@ FakesAssemblies/ # LightSwitch generated files GeneratedArtifacts/ _Pvt_Extensions/ -ModelManifest.xml +ModelManifest.xml \ No newline at end of file diff --git a/Galactic Colors Control GUI/Content/Fonts/basic.spritefont b/Galactic Colors Control GUI/Content/Fonts/basic.spritefont new file mode 100644 index 0000000..4095b04 --- /dev/null +++ b/Galactic Colors Control GUI/Content/Fonts/basic.spritefont @@ -0,0 +1,60 @@ + + + + + + + editundo + + + 16 + + + 0 + + + true + + + + + + + + + + + + ~ + + + + diff --git a/Galactic Colors Control GUI/Content/Fonts/small.spritefont b/Galactic Colors Control GUI/Content/Fonts/small.spritefont new file mode 100644 index 0000000..f4d712e --- /dev/null +++ b/Galactic Colors Control GUI/Content/Fonts/small.spritefont @@ -0,0 +1,60 @@ + + + + + + + Tahoma + + + 8 + + + 0 + + + true + + + + + + + + + + + + ~ + + + + \ No newline at end of file diff --git a/Galactic Colors Control GUI/Content/Fonts/title.spritefont b/Galactic Colors Control GUI/Content/Fonts/title.spritefont new file mode 100644 index 0000000..2504324 --- /dev/null +++ b/Galactic Colors Control GUI/Content/Fonts/title.spritefont @@ -0,0 +1,60 @@ + + + + + + + MV Boli + + + 50 + + + 0 + + + true + + + + + + + + + + + + ~ + + + + diff --git a/Galactic Colors Control GUI/Content/Sounds/alert.mp3 b/Galactic Colors Control GUI/Content/Sounds/alert.mp3 new file mode 100644 index 0000000000000000000000000000000000000000..d80aed4f5f2c83bd07ebc27349adfb59285303c3 GIT binary patch literal 23274 zcmdpd^;=Y5)bF9Y8$r6eySuvtq@_bb!k9sjZt0M2kd`n8R2l&(MMad56qOK(nSBr6 z_r1T~Kj5C{;SA3+XI8JZKWpuM478RCG*CoSeM8!s6m`a;ln|`uZj& zmiG2ePVVlv0s?N|z7rFJM8?M_r>AFU7nGD#RMgfsx3zV5_w~Ja{d#0%a%N_J{^Q3l z-@dJ{Z*A=!9Q^rn^!M+-f9K~HXfy@`U|#aZ8YVhYq6+e%IBow|zGHT7f>sjIc7G=5duww zh%>EH2>>XN5LKs>F;X8x@uKemBmV(m0JYLtih&&Lsq5a*QWrx5$REV?}DJS^*LeoIJBk;fQDs8H-@ghcWW^<7UvlDgva>E2m; z=B7%9Pd@nCmh$PeF7}{+Nj1)IU2!4&K|;<#LM$$qG80|4M=cFgtWcIX>jdv z1;hwhe(brvoZ*0=bv{L~&$eSdhH^Wt;xdGBEP{VA?USV}>n-y8hq$+kp3gJve6Q0M zgiz(+XL}(vtRqRFHr=v$EUs!XemI6c-ItO`Px)UWOW zT58ui1gIWr-Wp*JrxSgyU?(V-5?KlWIQ{7{(dL-%rZ>eErKhE1M2aa_ z{r#~>it{h{A%Omb0Fy#LFaQ2lU}Mue{qqkXUY`B?NzZ0sP0ELtIQCspyk<#>bl&(Z z$J6A?mr{+ib-!a;7FF1COaCa2WcvpP(YBbPaH+*f`?V=l) z%B(IEeT!$V@Xnm1qezw(xLDEE>!?Rt|YPxH*pNy0%wOGD$N7f>~uH4_s zH=AB4BWsd-r#Zkq5rBfkV3_)0vCozLy_qefcrst4XAeU0EO>(s2lcW?;ZrU?_*N|; zKa0J84~~&9s{7oeG7BdCZ8%}u6Jdeh5iJIQM+E}^)j_QTj~#l?qNpKVRQbFFfVUrc z%3-QUyzuSf{oR5bjd4l{!o`M+rYIhS-;IiYB>O3JJ+Ag!yYtzp{pmYuz6Ebfk-N3q zo$kNAW&8qA;1tVA>MVs>n+EqYW~V|z{i$*?w)RnlS_J^-lhyBG&fvWoeEX~ZrS4&3 zW5;Q-m3Rn5NT@RY^(LD6rCgWR_mZrsgXNq<_A(CArRbLZiIQ4iubd12CJ9_rsMAB( zL!Jv~#R1s%q=qgOf%;}Ud3vof46o%R1$ydazgse#<7QXQpq3VL3uk$axKoq4t9JGf zVBz~u6imYk0Shwkz%u?=eR-5K3uzA5Pf?mG=kas_qsCg&S96HV$VQ_DPEv&`9k;|L z9o`-Aw4JdLw)EOm?Uqf2VR_B7{c)u-_691Z)agTi0RELETf&5a`Um*-UUgVDOmc;h z7S3M@=R{BXx>q?r)zBK>)3Fyb-(X(62_x25URt1*GjLxOi7aWHIiKzyv?r)u1(*h8 z8PB}wbFa0BGkoX%CQ`Q>_;~mDs`bwz7(l_~K~b>}wMQDwA4$*0Ci9*1CekPDafsPg zDO~{m0K%lKOt0th_?pmqcI`ee%-=|8&Wd(qSi;N!?GBafg1G=^MvS%lzpuxM<@z z`IR9ObQVs}l(=J1?{b*)+Evat-&BV?JuRd6q%Nq2iS}z26BnT$SafWZyFk2q4;$ln zW%fnkQIp>z$Q2@lj91f4(yctgM6+Vn?-TshAHdVVd6`~4(>7iJ8qD8;Qgs&I?Jw!5 z6Pa41wnk3v)z(@mOW2CPP0BuBVG` zeP^wyxL+u!e<-Zy0I-q!wK?T`GXhTbHdwB`5*d8~gD$87A||(%t7&x&R3dPhpc*Et zJb%oOO^0)Xch;! zf^Q$_Cv!vH)~bgf2_zPuA!WAD2q`Oy>aUBylFhHksJFUKZ08hZc3MB)NgsEHH9?0i zM+Kl#{$_d%|4Pbr1xvG&rbmq04~Hc4Ehi$u#hO7dO!Vq{Dwk`?Ia%BdAt7?cbhn|# z`a+)(3=~Bf4jLHMO`o8bC33-Wth^TdENpCQB(|id%^8`{ZzJIt6Jvr|5}wC;-OEU< zTb=yRI@F;PLds{y7VlHRzZ=Q~N_xEjJc|2|4}6oqm-3J+z?B?{3+cb+j+UnOpn!zv z9i-_$@nDf)RlT*ro!1Fiq(yx&FJ}WO1B(YSFHx6*;l|rH6!*a8=L%=z|E2U--qgUp z!8tS>3yvp34U)#^4ZDK#6vNUg#KXL}emKgM>J1OGG-KZ{Net`U*P|3m{OH30yT#ah z;@wJ~tR4bWCsGyCV0VMCAQ+${a>sBG|3ev_!s{dOaa;*5b~so$>{+6UGtuup^ip~g zJnHHPA9mz;3D|LQapIjPee5E5Zz=d7J+ z6U*@bC5-93{*e5ZjYw0`uGbY(;~MCRL9q3?-7mz)E5s#xk*0t*g~j$Twlay^vjfXB zRv;N%47$=Hi4b1%2a!mq(tr2olr}^)u3_bLj>PI~5JIJk z#(RUVIK+fg5WP4hS);tPSx@fIyK%^%I5L}zp(^b<97Y`E#^A#R;n(cBy#fub1H6Z$ zU+Z%<{IYYD(|Mz79Rej zQ1lb&(tDkQ7Qx>->ZVJ8orz6#rjk1@z(zsM>WzC%ggO7Ln*cJP8R3;b<6PgNkxjnm2Tp* z8NKVsR#nx}XBvqU;S=1+v)4R14!@J}JzQsxeWNYAMH08Hp2RRV!bULhJhS7=y#y+` zKLMn&W5M&5bW+of-?;&I)<4#y zB6H5~p;J>OmM)-Up2I}6+AIR{E361QvlJ<}UPfgK%Unye7 zhxZ=*T|`M-Q#GfNOs%SU(1m=fjN0QiQtq>G8U`Tq4R7Zjp+zH&3jjjW^Z}3j4PfjN z*T;<$YIK!zk*IgH?juRgY)plEi(aiN0tO|DKa%`?5yPkh|u zPQT3CJN8#wzA-or3ZP2~ z`?lGUP`nF=>2Sqxk&{AuVs4h@@Hc7mn4CBd#C8N_xq3o9Fdkr)|ELCt<#g9L_`v0< zS9E1gCM>8S$)_e*@(FAm6fErD9n7$|R}v|b&L})Q)=+w?Pz0)Ck{jgVZ5$`zx%3gT#L2 zv-mICVm9I@bD7s}A-QjxN##zx#-OynO3f3W0Y|MKFMUVvBH6zkUrU93$s;{kGkStf zd+VyiHNW~ZfCZ|@_2-23TQu*n|K*mcp@l30HW(YuSHa~FrMj9$(lM;Z08zXcEI%+q z9N1pM?HE>Wqnf`F4?|tpOvo+&W*eSDvAU6)aiifpFE&U7Kf1Gcb`w%uSB}0UNPgYP z8-!7sSQlGGWj=3S-2EGNON1YDvF(=4|22-=i%AXqi7H)88f5Xu%W&T~YNg$V*da)0eSTW;AdMC??4>wiH~P2ugNyB5 zsL{M%qiSl*Iy|Acp_ZEKUhg+(g@tnC5wb>jzx3Wcfb;JY=EnhUoCDJ-BKgbpq^HqFRPUCtDVL=0mu#xiFAhW(&nV!KDTt2>9zOO^rug$H(Oq2(G zLexUbli-j{VoUSezQAuCXY_SD}93s_9*}MYuLgelx6@_r&7mK6ROif zQ0stQ%%^6%!^RaY+2w^3p7Rv$3*orWSeN-(`FWe&*^Z6=rB-_HosE_>@X~y)F*dAS z7{`YMJagF;PZ$>ezRd~%W!4~Z14lXBW~7PYT;nnVpdu1h5EK3N&uTMKk3|kd3K8N5 z){Nz=Mx3O0WZWJQ%=g9F`Iki`qjqU^%tlNe{7;A%4FB9OY;gcU*OP4`ec~nDsx~*K z2*EK}u_Fh=@#jYTI1pAn%5dNBC;jBEPS$nPmrrSr)j#ntp$n}JzA3O@}R9rmIs6sSvvo6%B!A-J|Ye7chz_TwkqOuzzw z-M{Dsk0wJHJ75RYudm!2eUvZ)?U~@yl4*vJsH;NeviLA4sTqaUBlP77Re1(D!ipaIi-0W&^z zm{i1@nRke!xsQZ#5DuQzr_awm2ckF3wH1dR_GwG7NW2eY@OiWp9@SxelbVAbu;Z8>}dg6@ASVz1Ww04cClQT$|g7VF?7R&$DqY3;qrj^mY zz34^*uG!bQ&p+_@1E5B>x~cXvS@oS@hVap=(!`)mxTT3ccU+y43rroHLr-aM{CeCm z?&1wUdwwp2UJaY+Kd~Xvzf?b)vO|Tbgk6~lcGq1e4B`}k!h1nxb|Q1uulLao_Y)Cn zV4idh8#bRSH})d9fFHc<6uMr}PGm)3?8(dAoW(clm!$V5tF5NkT#85%R%V#0*1(~sZQDeaSrwo9*>hSh36zsUHq8>IU?$N*cEF*Z4gvh{aY8zu%1^(khh_?`sY$|l~v7vSs>fuaZc@V8P`Eg5*GJ#j$wp^TUEv4AjI|R zR-Gx0!=`qUJYfS*1$o=hc5N2RP>EQaZJ+4@yXJv!CpT zs9&pK5RDBN&$ac_Pt+vN*&Iw|zHZgExWF^Ax~HvHf);)eeuvlR!-)uvr0Y7);x);P zniLc`6Bq1l3WTd_4_rzC`pFL?Ojj{8W3n}bC2(pnR6-VQ@5)Vzg+qSNp@N<2udlT{ zFjy^(I8iiQ`+m?Ady}E;RZX!3Mej**OT^*1LoDwMnB{)c@brhl^tEOHzW>|x-u(;* z&&_GL@BvI0--)1sD-;6Z>NB~N=u@)%`#axE+eYMa^q4=|h?#_hZLCz1*I;G(d%^E1 zfRR94s)%891=D|_`>XV=7}&2#p9F)8h3h0$r9@yO1=zK2pBTEirMk&U%~z%uBP(2>cj_eWZPxh&t31=Dy3K zl#77b2P^Nj+MZ99yAneXbyrY*+)2uvPkNRVtdSzYJFgnejWwR9i3=L}JibN9J-Vuw zu6Ocu{jE#zMRH~DIZ@nrflX)U{4E}}rDF0ZQcof-%U#_cwRpV%V@l;i{j{D}sSN;B zFs$c|+Re^1DvpOkDW6%eSRjb?3*O>o(_cSt^@_`=#$ zVkt8|iAoM?W1r(cI>Mp(vH9ldy(j8A^I9KhY+};=*p~6+Fk{4V(0I+x6B!c(Kx6f- zMOc>uF!dbP>-_MjNAKx`jZetcbVNJ%WtKs9nXSyQA%r~4)rljdbw?UQvHbV%%k2X_C)qXBW?@}9o1v}(OfR&){Shro9Y zmSM%+1OOIG>6yitLlXz?=h6K=OOU>|3II^yX{h4(N)Xx34nh8Izd~~^Bi3Sm_y1JX z_&BVpm^^6kk6ke94TnZ{a(_C#bG1b*V}ztwA$y~ue#;=Imb*+V9iBeHsJQCxkK|jm z)wFU;-ESkFZGKa5EZFl)T|h3UH)gE*J`^_`HnN^)1E`B+ecoCF1US!Lgqfe@d5MU| zdg;y8lMA;)@(`Y3pXWk^m-5EQX==79x84ton*Sa<1v7T*Tk?#Jb0#tEj8owqbHaW+ zaQ9lOCfoTMAusQX!IdXB>p`bM9-V$&;|WYPo18b`VUF?p4*;yf@CBS7n}{lTksABxGWZ(hmeIYf}BH_z8P%kk50AqRZwfS(rfnV-1}v@6zPsOWQ(^vXo4(8 zKHE79F=*q~tS-5m2tSDC;q?jzBMKgwwasB3O7QeG=+@E=IuMM`=*c{VnVIBORk@8W zvHBokEJ}DS!YF{&RPX`XnD-ig#_R*-oHp`}{E7}YhR^@LHQAOsjq&k)#$# zs!~mY-an4|e&=n|rtL}@M^<2;l)qGH2+p_(#Yu%KciRd1Ohi>r+GfI@4A>(e5_Hkj zuP`F_R$K+kO(NvahM2(-nw)Wr(|-?6na1gBl0+G&OFEu|u-1h{?3cFAn~gUv=;vSP z7cr?lVa&&_$x@~tRJNY5c)OD8YUbx@SzuX8SGC4=Oi+nBsk_DH{<(8DCX*Xrdg%EF zYohTbG{gYLQ>#q5&iDxSX-yL`to`NGasu)nskS*1P8EneJ7@6o*lB749y{@y-)i%_ zeHLWc=45sF>CioFb8I~51D*cUhm9z{;##u$S@l;8`fF^R=_ba6=^$G9yjjpX_CyHy z-SQYe^!fOXfPY~XJRN&XBEkC3csPnGfA=ipF+HsAlGdH_V=AI(RN*$(X(?w|{K@3jne<_ago^vw{TXLAm%T_k z#gGm}j&5^sL9SnPgY=GX?AG~onI|I0x0Ppr)dfuf7Jqo1I?m5_{AA9$k`EW+3F5B( z`i@@zw*(fq7DxVD1Hb*RX|CmiHCUbWFNnYG#fI?WbY1({PATXS4#2b=w zLK##g=pxtH)pLDmQrYKL346+e?jlt;aVzETjg9r&?Dt<;I>hyGZt6ROFkHLKR{=54 z#q5A?AlRbo^aUQ$tQ8RC9_Z2>^#x^e+}-yfWVO(n^(YEa24q0Ad&f%T2O#BldYgCincC%aGH@k>NiSO9<)090}Z|OJ>$OBlPV{*;~1A6fBk{`v}V`uQ|#mhAt9&=S>kZ8 zHSgigF!x*{zmKcRtmyEdh99?`OoEw3BM5sxB-3(-+fyaJFzfp8I(LpFcd`d}j)BD) z4SgZ^p5D{i)cEAKg;neAun7UhGUiu%9-Ir;2Ecjh8`fEb2LNrNVRC;B=tNl75n$n@ zDm+)mKah(XF}*k-4nc{I@%0*$@|&Tr9DU$Oa3zFrB7Hvi2L$wazPlzyLF`ECT=e?bi%Xh1ajQ5+Jn`pxCo;PV^Gdy#7hpCG& zOMi6?XQkghFP>Zs>Xehh-Op>1J%R#FhrjJmj4Bhb0p~jBwO*&k5wGfC7~om(7wxB1 zWC#rsTytQtN~Udb=U3*%;Z01vRKH-(5vF?@xQaR~+Ws24q~f;_cVwldQ+zjzme*OW z`6Iu{<*H-l_v~`;hAQfxweao4VsC)_11g1QKxvb4;uDn8GaZ=6@J`?idbY&_jy*~t zVV|jYC8s}IK9c;Q;2_D^zVn$WXJhm4bt9Dzd@0LM*1n}a7~zWl032UxzODYZuQ!=2 zsX1N_j#EkL7dsxRoiEV65jt7iH9OC_J<&`v>9V-$0xx^d3dDnVp7?LWjgKVvqtiR7 z_epT?Twh`+ipnh8`$7A~Hha&h>^M&xDO)LVPJVBeo*A(}-6BB-*iYm_@*Tlhbp*fh zxg02rgt3I%k4#p*2D81-Fc3S;n2QpP?$o$180C7EIjF!#WRZN$gzgUiNFr&&F~zJC zv0kQYT*M&3ja>5n8<6!#V?gXIK2ZpV6R~D>Z1;rDz#pDW6slQKuir+4Kez^H6lfxJ z*Kym1(HLxcdxjbk5miVai+!kwGz=_ZjCd*g_ zsfh+=!U>&hh|61!wQ3W6J)V$eQjT?|%7>pOW0l!N(iXUF>o%rRnMa)0&2{TsJv|3Q zIw20O$b%j_?k~b2+~XGQf>!&&=XP2nZ7*~1oWI#%PSRaiF_m9dl)GL|seD#3dPf7d zEfxy0Y}5xoa$L?SsWi%)^*-AH9hzjWt`WN{RnaP-U&kxm&k15_<+RV65H^&kUm+J^ z&cU5t(`EAcq;{;`oaSJbG(~!FJpZ>A`)3iUyQZi|yGAB<7wtg=g2=)C?BJ&|DH%%o z$HCb8nj^Se)8SxWCQ^eBJcyhtmVv(Im17$g#k3~Ut<`f(>B|3|3qX+HjH zkClkybq#C{8QTgS1m-I3sBpECeQo#5tUg8(4WPWXQb}%CJ8t;aeZSA!h^~7w7G#~# zV^~|1SKRval|*p%Npi$XZ_K7y13A_&U%Q(37t-{PVtb~;f9_5@#bDt~=CJRA#s&t@ zdbK)lu$7a(NH}V8g%&Z>-Mii^jLi$|S0Pkv>-dX)&n)O^Eq$?b{%S9eu5wodk5;Ar z@!g~ZwGr9KcvCL9HDPXxwzNqR_E`R#9R>Z*0%0IHJpNertgF=4Dc#;*v)Ur=G1$tI zHkC6Z&o(>p#ClV&u;LV<#CNU1-?GyeWGjsM*7EPa4j?+GI+s(d!{+s~8R`^!;m? zgq$XNnEa`QpE?#iU3f5t>+koj?Zdof|t^djX3u9+82-gcb z*Q>OXM7}=pwY@8%H0In`>`Y=JOp2~{+<)=QEr8eeU1HuJ5u9m~r>Q4%=Y_fic^`(7 z@-HoBB2AQR07OOI1ep0x&|BX$vR#ijds|{WWA>o>{Fa>b^Wd2DzM!4QLitQ*PsD(44ARY zW<)0u>0Oox)Rm@al$K%QU4xFciBr&(Omq8br&5e=Pi)pL zKL-mwJG}nYCeP>F!yiNVG49@fQyw2TGTPT4#ZWNZ!hy#=UL<;w$%sqXWVhQe7L=5Q z;q!u}S?uhP0P5@K7E>(?1yBEN1={l$ulw)y=J|C|^@h*M`&~*&DTtO7MwZ{u@4mu4 z3=l58&&LZ=)rQ;q#lT?qE}55%iHY>H*vdNJOK0gm>COHOnuEWpbG@5cU6cDgYl*8L zbAy~hzaL4*ybyBtFVX7eyM8NsaqM4Ht<9eQ((;j-Q+{YwyXgM<)ADWWDr!*v5gg?j zS{dasBd$yU(B^kq;lU)K*Rq|MvN5|;rA#Qcl*hxjgk-)ni;}N0!(X+Y-r&s1eZoSR zS>V0cY*wgw@4L^dbI@@xjUTJN@(N7E4h`5Wf8LMAB5WT`bGBb|#3bo5K&tdJVKRIY z_tkc*=5of=?CRl4hbCP*+x$1%RtXU*IC_1VjN0wF!^dH{?RGfXKJ-Nl+w8~C6NYxL z=<&hwNdCKz^1P!j`XpC;_N8@l|GBX;2Rv?kn!Kj5FW&I1o?KqR(Sp~U&bS;TkRUlm z?bQKByu8)1aCHZZafA{VfU^mCQKnW;c#jhz>A_jop4?9$xs#MA_Tz|>2rDHbtCy8z62jFuP#iP2ZdZ+VGK^L)R|>}P;-fO4xz+8O!6ND;thKjjba7l_ z8Upillw{%L8sf4>S!a(JZ+NaLP+T+qw^N>s3%0U_r8pt?)we&pIvR#10I1{>q}jJYomEmw zV7w?c(=oMV48{DnD?IQ1$HHPIcV;n3g;*ahFc6k#PyU`i3y2`OJflRW@mzNdi2GK5 zw5Gk(-t_IqtV;aS1UYhQX-VnbK#(Y5oFA&rNil~Qc91J;JdS{`)rE=hpqWAOjH;j= z*;%VmOONGHG4D>#BgsCpobsCZgOmwT9ka`PZGpi|bw2Rc5mTnN|1hrXkrpcoz!w^2 z%ak$#!(IrQw|9In+mq(j6hAFcTOs^-k(ej>n^%kQ#UTT>xSYS51H8XhgBQ7anC4#^us0^l3u@STQmZ-W@_M!Xv5>|zyxfO zzWb@k%gH8@VV!mKYl0=}BffpE=%di^`)aWCp#H?YWO5%#3gIl*AHHGrK3kjE5a1xz zag=-_%HJa$MSAbIVA^xqmzRxqH5DUn`Y0Ow$)Y6N^}qM}4d?bZOEQ;jjNd|a5jYp3 zQw${;r2%Or2kxokCXsYWY`={DU2^6%$&hdF!<_!TY=q#w8=}a(-6=D!%UFU~F|1E% zvE$)5NN-+^McAz=mw33^ajW|e zhf-Z*Hw%CJZ6=giaW_>>HVR!dm}Fu#(hAmR&Kb@9JQhaLEWeZV^=pc3_pa20fjZlj zi+8F zf1%$os+4LA{3q`*CZ_~~@qx+hv0<(QhPms4_?ElNUqbX{FG70dqxlyKLZ;m-QR{T) zE`XQQE2aK{&C7C5i4w4DTubbuX$IbxqhFF^It`Q*2*=>%7>#dZe`Nr|r+JH9QSX95 zpvs1BG_pPP3oXsL(bd957Oy4XV|hWQ-07Znj&Rc{G?%G0Y7y_kLh||^pYZmHIg~Cu z7+FaB%k&tR(k6A6wLXuYN40TqKM-iVubDShJ8WIp>fqo6$A>NKlG#5|$B0Fb#&?LN zbuK;SsMPxyprVk_=9&rEq)s3PYXKP8{Hd9W-`Q-lm;@(JBLbHP@+g5 z_IERMWC7bb)EQu0ul9Gb2L|)T0XYsXU1=WEe_5!f|W`a(SF z`BQs*9G611y2{{hS3pNb;tkU${U4rw^gh@B%HC8-YlOgbruTV+W3c!f7{y^p(G5R` zvqS?}Mu6dqTAK{wB=jD)j{>g zpDSXHQ*Y~(ys;cC`e~^2P;SNjElcgjC?CDfOKY5l9s@qin*prvLU$%*qctVIQCs(d zMV(zC>Mx^WV13Xn%yBwgt`N+=|MNU0LnB7c1vcWA^Nm~g`>RKC`XHQq|E`23G;=Vsy%!Zef%w|# zg|FM4CWY8eKWnKq68O_Bw#6vODJTAV(*YiH3#wG`E?h;T$k?o5WppE2NO=elRx9wcM8%4)iI7X&xhWqUb-IT*0qagydXD4DZSLk{^P$Nzqdy7$WK^*3`R@8+#jr5m66KVc5zgErIe z^5c=|qd=Mcw~i7|uwbc&(K!`E^WvO8p&+7$M}sU+bAG`}vVVQK)z}}@yXR4{*)Ba7 zz4z4M;Kobt-&AFI1Z%9{?%4GgMGYv%%klNlQe1wg4ZbL4)1B;8k$xcRAs+XTMCkA8 z9iL6Y#6a@Lpu0RbFGw5Vm_@n%g_~FGN*DCar+1DsH0T?@LC_#X68dR{B_;5)ADiKe zCK<8u6aGhKSr2ivIOxy2@HOg8Ci2fT9MsPCJDbmDwzVJOSK(%zf@5}hMjZDoR!Z(2 zFoxK+nga4kH~82EZ>wD~xI930>9t&qHi=$j%6mM{mmCX7!Vs?z0gq7;)5^?Mru8>UaA@)a7Swjg;_XEwZa4yUnCpX@)r@TCW>Yuv%sz zH#+Tp)yNB4#uLpe9S-{>@SreZ(3%_Xa2JC=8N|yTYVXLTYBk<$^YWPpX^9Cr(P3u8gDKfY!fA3 zY`vfv;U(2}ZYW&&#{Er74H8y|Iv_Q`>tAw{B0&G}avzrz`+5efD} z+B*ljXZ9l1?+AkD_B%T+euK`g_9m>;2vU?^h(|6gcv*cY%MMucUaBE zCcHlZV5D1aFNhnU&db{r8S&OMR?ndXFSjeg;4k>MlEn@|F%xTP14}BBl3uY2mA@Zj z#gm=RQp(gzt2T<|i?|?yW|HM>J~yy5(nuhH4J}2cW_)ZS9{`4zCZNSh zgcEzviVd9KY|Dy*4^=}g!6WvWw`n+sn1ZwoyVn`n&t}OTSJ>YlKQio#$U(%lGFZv56$^hG>&?5CXdR4Tc z>Wwn>9ce7xrCEA+uktRz^m+FHjZ(?cKa9fj<6td7OIV!19;wG?^wB3C9X7rkp zspEq^6JF3eD#p@pV`>G_bjpFsSv&&&*kN!ca-pIMHd%Q0eIAU#Cdf>|cR~pFn1|YkUGHhLxiyZVczJy$xV|0TqoOE< zplg9m5@)tsTQ!=w0$+-F)hvF8Tr|n*u&xdGI4JDB9YhP>r^-9a1!Ap)$>~6-r z)d{!H?6Gh{(`7268)?(j8POzuludknXrtXWP_qkou2vSuLVIEg?Q3My~u8G;6q0X#na*PWBu?WSxS~=sLb^|Nk1{j?8 zkz{L|=5;@ipq0rr0kdOkHWA*cD*;RbuU*A+?25R z#mES!>62N0U1S9=etG?%=4tT$TKm6r9d{wbf0|z8#k9jfVyxU%ZyVRulAk6@7$t-C zkau&NTeG{@aznEG^$MB)9P+ag>Q5V{Yn8ve6l0v&1P>eR@9K#Iz$JcPf&WzQ2 z!4<0&z%B~RD)TvM`T5YY18(eiS;iiSLlVAQE$exwY{#96gVlN1d@fhw?!13B9UBH) zkT7BHl4fp7J8f2~OMIWVDv7S8i;_N~jBMlm;X2jBFY~7KpdN7O%ticFpl-z>u1;nu z0BiW{;-Sk_G?^o-zba!#+^7@3c@b@_Qb(VN$w7g)FXX^>l z`DL#5TUwr&X=av@Ho`55+Z45@JYX7mE~d3yh%74sC*pl8Gvev+ArKkU;H`v7B@^X` zsK_c8CoccTRthOC(xuswk{Qh3FT?stNd*Wdt>+s{_nHOVoL>t_1+B5R5=k2yd&-sn``y6v1` zT$8Ejh)y+=F_2cn(sjEH{JC=-$9@li{&}9lD8JFv_&L2Fn}fp+OZ(cDpWuxsi60RD zMy?yx!@G9|;v1y|4pyOo1Mh9`bFJg21v`QPPiijTs9KZ2yJevs1VL`7C*@9WGQj1f z8A-los0{*RfwI=zYfL??D^#Z92#+DdyG18)TA=rwW#G^EmRP;JfxHT}1)~gsJxfY+DaGU&w=2{n?hT>~)`LIoO-WbF} z`b5_`cYJThJ3-AxaKbBX#4RSMYXT=w;O}m-AXe#py z`HERUhqm$W2FJzJXpTo-9ZsCp#i~tAQGT3AVsd4FSImXEek!?sjWd6l%ymK4)jdTp zUzY%%9<$NrrWT{JUj0wW;G^py{aFxA$5aBUXpc;sFL#jR8N2M}8l}U%X9WJP;y)Ky zq-o#zJt;D_tutN;;Ad)!L`D_5NJbPCD8`b6#D1C4X>_p?(t1OOz|3J|rAX*y7J$1k zxpAa=$zAs)*?%x=csarWPSpHZ!mK~pfBMK!M0T{df)LJ> z@r*y0D$>`tamDLVAxW~7MyqrOhjDGaZ*7V_9dpL3-4%j&q2KI>S3$*lbbXGXJNJ>A z3Rji*<&gQmt1*M^kq;bfrd-m@BgJ?0R0Npl+3-j|r4^nIxxSwIw>XifUYpGv{0rZwjhAcLJ<8ZVukT?$u}W-UxVc|L<}|MIxqm0j9}mc&%?lc8AwbNqlw=P*grseu7` zD15eb7Xhee2v@K)3&@jX{kX~Y^^ z&p&7GdDYMZ;w*qr%4RDhNU^|&{4CzS$;f`-NESdgf_ln|M2mj9{1>N zY6Yo+{QR!!1+Ofk@b{LpK`Fea>P0)w1L+nKY28Li)!WYx8nced34cr&N9NRnb3RO~ z*$2#|qNS)QtE96zJcFj4;Ky6-D8~>bEa!PlJ^EZ>HlIAY;e?AK;h$Pm=^HH@MwgQ#Gxgs|wFnFsIWbpqA`K|?2O^ZGk>KI=K?hxRI@$CQ zwbRz!UB~Gcb3P`eCCSGglV299riYV6r55f_U-OmG>JWR3v%CkYC`O1eHGjPmP2p4J zxyU10N`PTkyV#jO;Z{^fV`FPh6vEpmjy*FpG+S(x!+B?%?~PLbLl#KQMdSB7f0TU8 zy&KU4BEl3*wPGgH$FVvkyw1;3vdWN}g$nnGj(#5|ER<`cO{BOlx8jnRG$zd+Pc+J% zxK+2*e`@$tsI$g@Mm-J&-rY72E_MWk-}<>Xjr8Uc2v2gz_nFiwfw zhBm6#CC2BH|{#zCQ{0 zgbgcY)GEJi##-0aHL&t`q>*)Oyy_;ISNLb$6*p_>(Z8=s1_UWaCV{0^k6&2&d2bQ5 zD%_7&d}lvG4pE}nN-?;!6%qmZ=uN`Aqb6my=M5_bsS&_^D>J?5<2p=e75ri= z$r*$PHDbplP?|`81o`3Ori@G&GoG`GZwHncBKb?soqlm?rz{Vuo9l01@k5fMpwQv# zo3|>Pj-{&O@aYctbs#cnW;u|Fa9V|T#@vRuoe9UY3?Qi4NL_KF5z8sr{P_>%JNKrh z2BX_Ei{6KKiU_IWb5ZLe}DYRWdC|nFL<&JznQuPjy=lYzF|8DTlNEZkJ98E zyS==FCR6qk3+1%twt-^^EA=+{kw`F!YgP3XN+2NBVm2|hVpeK5{4riYpeIbVEF&Dq zeXcQ4SG!ZqpwHOopzpf3`&)!ePGF6Y<}Y0zOaDRXqP?H#itR7ycKf@;;P&&jpVwV; zqN|5dw)>eG6xj$cQEaRu!x-MFhJO3=a@aIc?T8qs?`$YLdkK!I9m83Ox2g~?=2;Cx zf13Dk+Uyt6);Q!MoT~OQ8Kv1obvPW;$}FPlw>Z21PchH^Pvsl-a~vGUJob!ZhU|Ha zI94{tC`8#?MP-(bdF(=Vgffm%c1B+r*-B)DhCRv%5yE-i#}Ds+@P0n;^Lc)_pI@%$ zy039x>%OifjZPw~H0Z%X+n&@x`rvMHp@X#PH67ri7!1yk#@&WuHy`tJcPH82##lRm z!fx2l57>Ms#&imz?;m7P#_;vf>V~F*D9yy zQLX}ifx}{3Bj9r-F1p7Eoqz|>zP8xdL~UV)oK%l$zeskG6Dv9Q;oWqizcjFGTVyxf z9us22M1(7%?`q4)xLyq4(&;<13l@<3-K75a@`#YK=(C(>;&Abp0B%D~+}4Qsn*w z@58Q7YcZ4!hc15Fh+E>tqiWdK1FAYS12(RkTjKJ1O-(54-~A-7FE9R~D;X-$CMs5p z=V~WFu6<-`x^YRO#qLUir?++)jklOGcA>P`rL3&tX<19WqyD~gvcC-0QbIx%JVb$# z7cPOsJ~n@B5Ef8`Q{Cb99NrtnH7ZE>daio$T+2;OJ9TWW3XP@RdW+TbJPPw)Q?#VS z=gCY`r{?{MrS`QIiCc6XA$fmFwpw%ux(>jIv6djof|ioD6TPSjt}E@#!eL@2F$o@G zVz@)Q4?7n)f-LQZq?4;>l!W6D+fCV)^b!VQMUor1`;S^t$_&k4-A03QSe`Zi(&8Ct z3*ei%b@fTUkoG9rgP2Z1&?G@TI^;pO#B-ZNs+%2wTx)nq`R4CPv5mn6e`^Wa!HBIVv>pOq6LOXVsGFKxav;O@P92Mf0tyw1#Bh!c&WPF|0 zSPfVOfp#F~a<(wdDpcNwiuW67iEr0HVI$kQ^jKB@xb`lc__4o2&+9`YM`_N9jUw0n z&-9~}q(rCb&x-E|YF_GCdBx)8l|g?I5wTLX)LW9Z&HSmop9!+&OD*He^DbzSA2Vrn z^&Z~wI?_Ic$y{P7+2C%uC*lP)GdK)3H=mKO>JS)Q(a?2V%};L_ZnRGh(#S*>joWQ? zK2ZA_d+Q8AMi2aUPj{F&@$4$G~5aZtj4CECZaicQg>8GA1vxq(9BByi~2mb z-;ncytpBja4fEG2;Um5@tgVu&X!nEFGjN17e1f0g$-c;^m=2JA&vXr+3L8lk=TD_K z&L~m>Kk``YnpeZbxN`X)x|6-j`6K?|K0H@&aS>#|l8Z<`KkDP+B5;p3#8)!O#_IND zXlTB(d|S4=Xkt@W2*e|4AkUHbQ9Nw}Zx2A_2SWbv`c7#%~? zkx`6R7|uJl9f6Rf)>Br23`+6MvNErO=id~;;rC$`ROE4*j}L>wV&=sEa|QS4@Zet# zX??kP>=U-iakk1hlVk-q-o~jnP3#Jzf>hdFKL-BozMlQl{!y=Yqp?~->FxEAYGzYj zcIt1VFS=qM+r~jQhVgDzDi8DZbfXyem~68{Z&-Q3RB9R85A*bkq;nHZNZ~?RT&=i;hO}iS516X#g+JeAcip=8SEluO8<)1dny7DJdT> zPjrCI(8)pc(sWJCViTM9ycNT!JQBcQv>I_UXWmGEe4hMC6G|uF{wr3{tzGoHwnAIj z(e-z-EKrj>m$VTGDu+qtS*PIX-k6Rg1WY?&SlLL06(U+q{Z~35xdDwbrD_GVeCQ(p z03n%NWFt(>lyiR{U6wz-m>8g5PcK=0L$+gT1<5%l=x6Ad)S0}*cdiX= zuXJ=!D!bj+nL43~jwz_~#dEXq6lJxsDOMX{77;g_Ka1p=UN_!YTZ|=W$yP9*xcSs* zJ^5IZ?^4A$29iRG=^2q|s3HL!3YP@}g(xFnS(|8fFQ-*luN2pD(jE3Arx~^&`4687 zFFLK)y)QD5iwg2$-(6g$-MGM>txvj2DBZq#7F_b9Gh{))v2IRVSRawI+xhSuBB(+y zV7(Z_4y`t@u<+b_ZQzK(OR>9NIgB)l4KAnAv`4S(!{NODrPuXQ0<=%ppWGWjve^ax zi7muXdcVcL%)I|t?S4&h9vuRzd`Ng{tBw=S>j~hR%2JHwl8-t7DBt--i{DwBjFQEP zIoCA_)7%c|CvH-E)A#&LVj^6f=pF zr{k9wGcDQgvgca4QS#hrN`}0uol!xT-FX-8c>GBEv05%Ae2*7T)Fo~kGZ>P^vK03= z;=waK2(~&{nUh1jPHtn;+^sm^V*++&o(bg=_Jqj?9FU^_sAfAk1H5aPIWdwNl%<-1 zmpoj9*i^#!g>Ik7b~BwU%Jj{2d)LXZwk{s`kyJI<7EP(mG z;Y~}}lICyCsDZC0KUyM8#q-<_{7UjFv}3YgK3B)jkC^NQa2TzYa^RC}ycgRd=p!GG9s zng;K-c0*SiVi@eVG}!A($ny;^7|-UTXMamv>Hv>CBqhj!>;f!oGBGpf>+Mgi1l;7G zIFnwsKLN5YKVL>&@KJ7biLakOy6uvDGvu-Hl#mK|;t$PI=*}}W!Kqq!=?vOcLjEsu zU`86dq8G`RyJ8}#OAN%X$&Oqzo69_2W@W`W&Dkqo6-e$MAfD&Rz!R2x>vjWBMs@2b zT4LAE0w=%_!bzo>jm;R@?iLUJ5yu^VKb1vEbQ)(q)$y-xv$lM;{H$8(5`K(iopD9Q zj^Ugp;F5bfRB&N0i;Us#d!>UaQwC_6X6>VrzjHtMoL0@R6whv$=tyLxN#ge|wy2w* zo9|>+KCQmFYG8=JwkmtT+fs8@co4sm+uI`zMQ3EJF`qvwQEB3?b}w$m88J~g_ecx} zCaV)PP2R+KEEXU;MFtc()eVvs8q)6R@*FoDB=Wd1yak6Z3(lQ|8?<$R_QZ)V-t$(;jUN}*xMEW*^ zJg@VL19)ahfpsjJ)7Sj9P_E^XJ(-q8nxpf~iLFFn|H9jo8@r#=eX%QVM&jx?p3!oarz#>Y{F4 z%$#=jzcA&afs1w>nL;YNp?8d$b6>T^xW-=h1et#Rmq_yW*; zA{QC6CV^F#1b;&Ol_`)4q`5ZDuN>tS@odB?s?Iekd}~WARo+v1w4XNBEiS6tl>=R| zSKM&1U02(Fae!yJIGndox8?D&wSCROxs+ar(Y|jo#G&f#WLPTZi7=Hwc3qN~U(u_e z%q?B#AvS4LCKZAckrH=^zs@BJyeAc)0MyK4v1@Xf(YnJh+!(rZ@M%y6hgsRxglNNU zAtGkkbGPSV5Y0ih`70ovcTOM)>gg82jv z6aQqfu4qBWQov*N*iXgOU(sYE$6yN}{uCuUW=Xm6!SaV7 zytC!qg3rYr@dypKxQlr$qXJMPm%kGWd6b3H5Vs^tr@BZ&He6ED2=hsNv$noVj!W1y zJJB}oXSxud)3%^U$G*^)DSWS7jXpG&4o^zM<`hLhZGDFyBUqYVMObN@_hOdW40I$ht`9{uQ^ zs|kYRSOCkvwFN-(@G&+zGj#J@C zK=m``DHqBY&HF+kg=9{*v<^N^xA(@A-UVn*fUj~rI49JgWPH0(VRDJ@s z{wbJB<5~;9joaz61ZRGlyDJ3OOq#vvo{rx49?gFY$EtD78%~91=rSn#htCI?J5^vZ zJ`wejEd(OpDn-s+_jAJ0L@y@iK;OsMPRkv z(@M^^v0V(gNIn zoDhF1n0fq6G8pQL@2uGQi|rhgb>0X~+%b6S7tG6?@K86q0*Oy>x=FqpR6xId5hs05 zbFdW~3BYz73L<0WUKV5&%a;1DxO~F}-JKw(zhG*e(TVwX(E8aXW3e;|%`O+iSlXgY;1z)yCOjnmc!#V?4l$JA zLoN0kT=2rW$y@Nm$%&n+YhT_7V`pKh*J@RXqNca)l6aCe$SxqZ06(+IM^`0)Jq z?7QRxXiCXT;25iMD}v7_1fZ>TlN}QT1XH&S{ss-Z8axQ$AE?fv?7sT_N|1EbDH2|{ zrb3C4J}I&PH*bUd!BQ3v(DXOnj$@lEq`|Ku;I5n*#5D`1@b25i{aI^26@m?DFO-S!t|%b@5!Qom;l#K1$9pkf zXFRr981=(h5#{A*j-T1LjVvU6yV#SDjXB_UusS(JzD>bJ@j}8aS#x6kOIhu9|nU znr^-;aCm0HD>gWcle%)|k7x^<1f&cgZ>2z2MK`JePaby8Iz)WhP4*!S#?DKT>}VC? zBSBf>Ea0>f8}XKAIhiNFw(L6@hx>mBxLy`~x`FhCg}jyF)^yyd8^^T#W-S#1fcQ2T zk;tC&VR?vN3-@HQ#h;GR*yx=O^5*sTB?4xnO3$y{G>vELak-NNbDq1^@fU2h;RJva zV)nLIMna!k_uiIKBSmNxeku+zCpTZO9x9LZuM8P;7%R)r_!*o9kIky46?Z$r@NHSvLw6uU1UH+O zWJpO)$gDAv!T@iv=y5a((g}cG)%&sHav-(xLMy^ZQ}__?0E2kDZS@ zgXqc%;(z{f*1Qop7=xP4_P93_d~YyNW=g9{0$})rY|;8z9L;n3=;gNHatEFIm%0RD zR?-D4Y6b8_2Frj8@=M8ztnrE*l9!S zWj|E;%vqG8nUj%*$xg8?ky*DoX@mJhJLfKEX?`~q#3{a3#Sf(cC{gk65Pb+VvTckq zA5!5EZcbDQC=&bdI)jQR-{SEtSezLAq4TAp%X(;^gw==e_(l!tMp0TLvrNgXhgGM< zZvbHUF$n4sE3ZXh0R>0gg>iTtl}R3xfbN@%dvl_G*kOOpaGfa*-G+t6!Dl^j(QwBB zgzU*G$=cQ*KvR%~e1%B@R^3_;(8m4#>MHe-JRj#M2E?HX>_$q!eu=?Twb;?l%SFxvK{rbE{4;I((H^Tu=GloVOCSUTD_#rG zidCYAO0C?giYM=|)wWC(!ikg;6XP;=+6!lq|*W}!j=}kL;!8Fm@ zZ1dlNvTgpj?6x7L|Bl`K{uIxM18A;#ER&AK#WB8YnN-Fz}*wNU(M&qW&tp7VNSxT<5^87!P3_Aee4aEpl g06>R^@PXbE=o4BhL_mzF{6BcCwe%r~|8EcYKZs|At^fc4 literal 0 HcmV?d00001 diff --git a/Galactic Colors Control GUI/Content/Sounds/bip.mp3 b/Galactic Colors Control GUI/Content/Sounds/bip.mp3 new file mode 100644 index 0000000000000000000000000000000000000000..a28b4309f882ce43d5a121080544b9cf5337f220 GIT binary patch literal 12416 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 literal 0 HcmV?d00001 diff --git a/Galactic Colors Control GUI/Content/Sounds/change.mp3 b/Galactic Colors Control GUI/Content/Sounds/change.mp3 new file mode 100644 index 0000000000000000000000000000000000000000..71a3922c10c120a755c69bc489476167e0ff5b1d GIT binary patch literal 71808 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 E058}o3jhEB literal 0 HcmV?d00001 diff --git a/Galactic Colors Control GUI/Content/Textures/Hub/Buttons/0/bottomLeft.png b/Galactic Colors Control GUI/Content/Textures/Hub/Buttons/0/bottomLeft.png new file mode 100644 index 0000000000000000000000000000000000000000..0565eb699b91780a8aaeb95d8af7983948eda6cc GIT binary patch literal 306 zcmeAS@N?(olHy`uVBq!ia0vp^{20#LT=By}Z;C1rt33 zJS^pBf-L-yLJP1y&Ris;^CjcE+_irU1zgP~nuONw{_Q`xz%b2d-QW#T(db8P!;$6MF9){5nC* vMmMSDD|`RGOb4!Q2c&j37kd1+`^7o&>WZU2S%Oo6&Smg)^>bP0l+XkKbdYA) literal 0 HcmV?d00001 diff --git a/Galactic Colors Control GUI/Content/Textures/Hub/Buttons/0/bottomRight.png b/Galactic Colors Control GUI/Content/Textures/Hub/Buttons/0/bottomRight.png new file mode 100644 index 0000000000000000000000000000000000000000..f4030d15d02d3a6013bb30c72bb1e2b297a20197 GIT binary patch literal 297 zcmeAS@N?(olHy`uVBq!ia0vp^{20#LT=By}Z;C1rt33 zJN(N6?KbLh*2~7YbR%^2W literal 0 HcmV?d00001 diff --git a/Galactic Colors Control GUI/Content/Textures/Hub/Buttons/0/centerCenter.png b/Galactic Colors Control GUI/Content/Textures/Hub/Buttons/0/centerCenter.png new file mode 100644 index 0000000000000000000000000000000000000000..cfff39006c08613b8800dd8a75e8de42f46edec0 GIT binary patch literal 167 zcmeAS@N?(olHy`uVBq!ia0vp^{2jKx9jP7LeL$-D$|SkfJR9T^xl z_H+M9WCij$3p^r=85sBugD~Uq{1qucL5ULAh?3y^w370~qEv>0#LT=By}Z;C1rt33 zJcz5oCK literal 0 HcmV?d00001 diff --git a/Galactic Colors Control GUI/Content/Textures/Hub/Buttons/0/centerLeft.png b/Galactic Colors Control GUI/Content/Textures/Hub/Buttons/0/centerLeft.png new file mode 100644 index 0000000000000000000000000000000000000000..09042466ae84a8694b9d679c5bcae0b0fbe07941 GIT binary patch literal 168 zcmeAS@N?(olHy`uVBq!ia0vp^{2jKx9jP7LeL$-D$|SkfJR9T^xl z_H+M9WCij$3p^r=85sBugD~Uq{1qucL5ULAh?3y^w370~qEv>0#LT=By}Z;C1rt33 zJk33h!7RK(!v>gTe~ HDWM4f0MRfs literal 0 HcmV?d00001 diff --git a/Galactic Colors Control GUI/Content/Textures/Hub/Buttons/0/centerRight.png b/Galactic Colors Control GUI/Content/Textures/Hub/Buttons/0/centerRight.png new file mode 100644 index 0000000000000000000000000000000000000000..9547c0ab5dbbf00f8ea41aad4f315eff8d4b616a GIT binary patch literal 173 zcmeAS@N?(olHy`uVBq!ia0vp^{2jKx9jP7LeL$-D$|SkfJR9T^xl z_H+M9WCij$3p^r=85sBugD~Uq{1qucL5ULAh?3y^w370~qEv>0#LT=By}Z;C1rt33 zJewsFK0c L)z4*}Q$iB}OlvHa literal 0 HcmV?d00001 diff --git a/Galactic Colors Control GUI/Content/Textures/Hub/Buttons/0/topCenter.png b/Galactic Colors Control GUI/Content/Textures/Hub/Buttons/0/topCenter.png new file mode 100644 index 0000000000000000000000000000000000000000..af78ce6e9887b62cf81e3dfd27c32fb0cdccd510 GIT binary patch literal 166 zcmeAS@N?(olHy`uVBq!ia0vp^{2jKx9jP7LeL$-D$|SkfJR9T^xl z_H+M9WCij$3p^r=85sBugD~Uq{1qucL5ULAh?3y^w370~qEv>0#LT=By}Z;C1rt33 zJ0#LT=By}Z;C1rt33 zJB>Ar}5eCmj@JQsi;54d8hiz#|*TlN!Ln-uKw2#x16lRsY}jXIp;G zcG$sC!O7{9#C3Vbxfh3v?{!RE8CNjPGidu6p5F&r1SSMIX|k?0{cN=&!?XMQEE7_wQ`Fca){<$AJQr=$7D-}Qa wjbTe)tjg`mt;b_y?CcsuWB#?)pFAMCz-Pr#-IsC4fv#onboFyt=akR{0O>Mwj{pDw literal 0 HcmV?d00001 diff --git a/Galactic Colors Control GUI/Content/Textures/Hub/Buttons/0/topRight.png b/Galactic Colors Control GUI/Content/Textures/Hub/Buttons/0/topRight.png new file mode 100644 index 0000000000000000000000000000000000000000..e581211d71b2d5635e816ba59d1b9b280be059d8 GIT binary patch literal 300 zcmeAS@N?(olHy`uVBq!ia0vp^{20#LT=By}Z;C1rt33 zJR( z+02I=JbDF5OD6d!HEdY4=8 + + + + + + + + @@ -57,6 +65,33 @@ + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + PreserveNewest @@ -67,6 +102,7 @@ + - editundo + Trebuchet MS + \ No newline at end of file diff --git a/Galactic Colors Control Console/Program.cs b/Galactic Colors Control Console/Program.cs new file mode 100644 index 0000000..9d5bf8d --- /dev/null +++ b/Galactic Colors Control Console/Program.cs @@ -0,0 +1,98 @@ +using System; +using Galactic_Colors_Control; +using System.Threading; +using System.Reflection; + +namespace Galactic_Colors_Control_Console +{ + internal class Program + { + private static Client client; + private static bool run = true; + private static Thread Writer; + + private static void Main() + { + client = new Client(); + Console.Title = "Galactic Colors Control Client"; + Console.Write(">"); + Write("Galactic Colors Control Client"); + Write("Console " + Assembly.GetEntryAssembly().GetName().Version.ToString()); + bool hostSet = false; + while(!hostSet) + { + Write("Enter server host:"); + string host = client.ValidateHost(Console.ReadLine()); + if(host == null) + { + foreach (string output in client.Output.ToArray()) + { + Write(output); + } + client.Output.Clear(); + client.ResetHost(); + } + else + { + Write("Use " + host + "? y/n"); + ConsoleKeyInfo c = new ConsoleKeyInfo(); + while(c.Key != ConsoleKey.Y && c.Key != ConsoleKey.N) + { + c = Console.ReadKey(); + } + if(c.Key == ConsoleKey.Y) + { + hostSet = true; + } + else + { + client.ResetHost(); + } + } + } + if (client.ConnectHost()) + { + run = true; + Writer = new Thread(OutputWriter); + Writer.Start(); + while (run) + { + client.SendRequest(Console.ReadLine()); + if (!client.isRunning) { run = false; } + } + Writer.Join(); + Console.Read(); + } + else + { + foreach (string output in client.Output.ToArray()) + { + Write(output); + } + client.Output.Clear(); + Console.Read(); + } + } + + private static void OutputWriter() + { + while (run || client.Output.Count > 0) + { + if (client.Output.Count > 0) + { + string text = client.Output[0]; + Write(text); + client.Output.Remove(text); + } + Thread.Sleep(200); + } + } + + private static void Write( string text) + { + Console.Write("\b"); + Console.WriteLine(text); + Console.Write(">"); + } + } +} \ No newline at end of file diff --git a/Galactic Colors Control Console/Properties/AssemblyInfo.cs b/Galactic Colors Control Console/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..4a2e9d8 --- /dev/null +++ b/Galactic Colors Control Console/Properties/AssemblyInfo.cs @@ -0,0 +1,36 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// Les informations générales relatives à un assembly dépendent de +// l'ensemble d'attributs suivant. Changez les valeurs de ces attributs pour modifier les informations +// associées à un assembly. +[assembly: AssemblyTitle("Galactic Colors Control Console")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("sheychen")] +[assembly: AssemblyProduct("Galactic Colors Control Console")] +[assembly: AssemblyCopyright("Copyright © 2016")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// L'affectation de la valeur false à ComVisible rend les types invisibles dans cet assembly +// aux composants COM. Si vous devez accéder à un type dans cet assembly à partir de +// COM, affectez la valeur true à l'attribut ComVisible sur ce type. +[assembly: ComVisible(false)] + +// Le GUID suivant est pour l'ID de la typelib si ce projet est exposé à COM +[assembly: Guid("5d6a09d1-dcab-4fd8-b4e6-62d9f41ae8f0")] + +// Les informations de version pour un assembly se composent des quatre valeurs suivantes : +// +// Version principale +// Version secondaire +// Numéro de build +// Révision +// +// Vous pouvez spécifier toutes les valeurs ou indiquer les numéros de build et de révision par défaut +// en utilisant '*', comme indiqué ci-dessous : +// [assembly: AssemblyVersion("1.0.*")] +[assembly: AssemblyVersion("1.0.1.1")] +[assembly: AssemblyFileVersion("1.0.1.1")] diff --git a/Galactic Colors Control GUI/Galactic Colors Control GUI.csproj b/Galactic Colors Control GUI/Galactic Colors Control GUI.csproj index 65f971b..8a5784c 100644 --- a/Galactic Colors Control GUI/Galactic Colors Control GUI.csproj +++ b/Galactic Colors Control GUI/Galactic Colors Control GUI.csproj @@ -110,6 +110,12 @@ + + + {93582ce8-c8c8-4e19-908b-d671ecbade25} + Galactic Colors Control + +