#region Copyright & License Information /* * Copyright 2007-2010 The OpenRA Developers (see AUTHORS) * This file is part of OpenRA, which is free software. It is made * available to you under the terms of the GNU General Public License * as published by the Free Software Foundation. For more information, * see LICENSE. */ #endregion using System; namespace OpenRA.Server.Traits { // Returns true if order is handled public interface IInterpretCommand { bool InterpretCommand(Connection conn, string cmd); } public interface ITick { void Tick(); int TickTimeout { get; } } public interface INotifySyncLobbyInfo { void LobbyInfoSynced(); } public interface IStartServer { void ServerStarted(); } public interface IStartGame { void GameStarted(); } public interface IClientJoined { void ClientJoined(Connection conn); } public class DebugServerTrait : IInterpretCommand, IStartGame, INotifySyncLobbyInfo { public bool InterpretCommand(Connection conn, string cmd) { Console.WriteLine("Server received command from player {1}: {0}",cmd, conn.PlayerIndex); return false; } public void GameStarted() { Console.WriteLine("GameStarted()"); } public void LobbyInfoSynced() { Console.WriteLine("LobbyInfoSynced()"); } } }