From 56f2b95e72af514cdf9435fcd2b4e822a0ca5028 Mon Sep 17 00:00:00 2001 From: Nathan Adams Date: Sat, 26 May 2012 19:08:33 -0500 Subject: [PATCH] Adding empty AxiosCommandConsole to not require #if WINDOWS/#endif precompiler statments on WP7/Xbox 360 Adjusting code in AxiosGameScreen to accept it on WP7/Xbox 360 but just store it --HG-- branch : xnacc-integration --- axios/Engine/AxiosCommandConsole.cs | 43 +++++++++++++++++++++++++++++ axios/Engine/AxiosGameScreen.cs | 9 +++--- 2 files changed, 47 insertions(+), 5 deletions(-) diff --git a/axios/Engine/AxiosCommandConsole.cs b/axios/Engine/AxiosCommandConsole.cs index 1251e09..8447878 100644 --- a/axios/Engine/AxiosCommandConsole.cs +++ b/axios/Engine/AxiosCommandConsole.cs @@ -5,6 +5,18 @@ using System.Linq; using System.Text; using XNACC.Console; using Microsoft.Xna.Framework.Graphics; +using Microsoft.Xna.Framework.Content; +using Microsoft.Xna.Framework; + +/* + * The empty AxiosCommandConsole is so that when you use the comamnd console + * in your game you don't need #if WINDOWS/#endif precompiler - when you attempt + * to use it on WP7/Xbox 360 it just won't do anything. + * + * Perhaps one day we should develop a customized console that doesn't require keyboard input + * to still allow debugging on WP7/Xbox 360 + * -- Nathan Adams [adamsna@datanethost.net] - 5/26/2012 + */ namespace Axios.Engine { @@ -21,6 +33,37 @@ namespace Axios.Engine { Keyboard = gameScreen.ScreenManager.InputState; } + + protected override void LoadContent() + { + FadeColor = Color.White * 0.5f; + Texture2D tmp = new Texture2D(GraphicsDevice, 1, 1); + tmp.SetData(new Color[] { Color.Black }); + FadeImage = tmp; + + base.LoadContent(); + } + } +} +#else +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using Microsoft.Xna.Framework.Graphics; +namespace Axios.Engine +{ + class AxiosCommandConsole + { + public AxiosCommandConsole(AxiosGameScreen gameScreen) + { + + } + + public AxiosCommandConsole(AxiosGameScreen gameScreen, SpriteFont font) + { + + } } } #endif \ No newline at end of file diff --git a/axios/Engine/AxiosGameScreen.cs b/axios/Engine/AxiosGameScreen.cs index ff1f445..6c31a84 100644 --- a/axios/Engine/AxiosGameScreen.cs +++ b/axios/Engine/AxiosGameScreen.cs @@ -41,9 +41,7 @@ namespace Axios.Engine private Camera camera; -#if WINDOWS AxiosCommandConsole _console = null; -#endif public AxiosGameScreen() : base() @@ -98,21 +96,22 @@ namespace Axios.Engine public void AddGameObject(object obj) { - -#if WINDOWS if (obj is AxiosCommandConsole) { if (_console != null) { //remove the current one first +#if WINDOWS ScreenManager.Game.Components.Remove(_console); _console.Dispose(); +#endif _console = null; } _console = (AxiosCommandConsole)obj; +#if WINDOWS ScreenManager.Game.Components.Add(_console); - } #endif + } if (obj is AxiosGameObject || obj is AxiosUIObject || obj is AxiosTimer) { AxiosGameObject tmp = obj as AxiosGameObject;