using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Frontend
{
///
/// Interface that should be implemented by the class that represents your backend.
///
public interface IBackend
{
///
/// Method to get an arbitrary collection of dragons
///
/// a list of dragons that are currently on the map
List getDragons();
///
/// Method to get an arbitrary collection of players
///
/// list of players that are currently on the map
List getPlayers();
///
/// Method to get a 2d-grid-representation of the map. The map doesn't actually has to be a 2d-array, but you should
/// somehow be able to convert it into one.
///
/// a 2d-array of ITiles, representing the map
ITile[][] getMap();
///
/// Sends a command to the server (such as ask:mv:dwn)
///
/// the command to send
void sendCommand(string command);
///
/// Sends a chatmessage to broadcast. This is basically any text, wrapped in the chat-command.
/// So this method will ultimately call sendCommand() after forming a chat-command from the text.
///
/// the text to send as chatmessage
void sendChat(string message);
}
}