parent
d231b154e9
commit
4004a200cc
74
AxiosCommandConsole.md
Normal file
74
AxiosCommandConsole.md
Normal file
@ -0,0 +1,74 @@
|
|||||||
|
# AxiosCommandConsole
|
||||||
|
|
||||||
|
AxiosCommandConsole is a sample class to make XNACC easy to use with Axios.
|
||||||
|
|
||||||
|
# Windows
|
||||||
|
|
||||||
|
The CommandConsole won't work on WP7/Xbox 360 (currently, this may change in the future) and thus require #if WINDOWS if you are developing crossplatform games. The following is an example of how to get it into your game.
|
||||||
|
|
||||||
|
Sample code:
|
||||||
|
|
||||||
|
```csharp
|
||||||
|
#if WINDOWS
|
||||||
|
class GameConsole : AxiosCommandConsole
|
||||||
|
{
|
||||||
|
public static void attachConsole(AxiosGameScreen gs)
|
||||||
|
{
|
||||||
|
GameConsole c;
|
||||||
|
c = Cache.Instance.get<GameConsole>("commandconsole");
|
||||||
|
if (c == null)
|
||||||
|
{
|
||||||
|
c = new GameConsole(gs);
|
||||||
|
c.KeepRunning = true;
|
||||||
|
Cache.Instance.set("commandconsole", c);
|
||||||
|
gs.AddGameObject(c);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
gs.Console = c;
|
||||||
|
c.GameScreen = gs;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
public GameConsole(AxiosGameScreen gameScreen)
|
||||||
|
: base(gameScreen)
|
||||||
|
{
|
||||||
|
//LoadDefault();
|
||||||
|
PreCommandExecutedEvent += new EventHandler<CommandConsoleEventArgs>(GameConsole_PreCommandExecutedEvent);
|
||||||
|
}
|
||||||
|
|
||||||
|
void GameConsole_PreCommandExecutedEvent(object sender, XNACC.Console.CommandConsoleBase.CommandConsoleEventArgs e)
|
||||||
|
{
|
||||||
|
Console.WriteLine(e.CmdLine.ToString());
|
||||||
|
}
|
||||||
|
|
||||||
|
protected override void LoadContent()
|
||||||
|
{
|
||||||
|
LoadDefault();
|
||||||
|
base.LoadContent();
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
```
|
||||||
|
|
||||||
|
Inside of your activate method use the following code too attach to that screen:
|
||||||
|
|
||||||
|
<pre class="brush: csharp">
|
||||||
|
#if WINDOWS
|
||||||
|
GameConsole.attachConsole(this);
|
||||||
|
#endif
|
||||||
|
</pre>
|
||||||
|
|
||||||
|
# Restricting commands
|
||||||
|
|
||||||
|
Inside of the constructor add whatever commands you want to remove to the RestrictedCommands list.
|
||||||
|
Example:
|
||||||
|
|
||||||
|
```csharp
|
||||||
|
public GameConsole(AxiosGameScreen gameScreen)
|
||||||
|
: base(gameScreen)
|
||||||
|
{
|
||||||
|
RestrictedCommands.AddRange(new string[] {"help"});
|
||||||
|
}
|
||||||
|
|
||||||
|
```
|
Loading…
Reference in New Issue
Block a user