Backend gibt nun Nachrichten an Parser weiter
This commit is contained in:
@@ -1,3 +1,4 @@
|
|||||||
|
using System.Net.Sockets;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using WorldOfPeacecraft;
|
using WorldOfPeacecraft;
|
||||||
|
|
||||||
@@ -5,22 +6,28 @@ namespace Frontend
|
|||||||
{
|
{
|
||||||
public class Backend : IBackend
|
public class Backend : IBackend
|
||||||
{
|
{
|
||||||
|
private Receiver Rec;
|
||||||
|
private Parser Parse;
|
||||||
|
private TcpClient Client;
|
||||||
|
|
||||||
public Backend ()
|
public Backend ()
|
||||||
{
|
{
|
||||||
// Unsere Main-Methode
|
Parse = new Parser();
|
||||||
|
Client = new TcpClient("localhost",9999);
|
||||||
|
Rec = new Receiver(Client, Parse);
|
||||||
}
|
}
|
||||||
|
|
||||||
public List<Dragon> getDragons()
|
public List<IPositionable> getDragons()
|
||||||
{
|
{
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
public List<Player> getPlayers()
|
public List<IPositionable> getPlayers()
|
||||||
{
|
{
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
public Tile[][] getMap()
|
public ITile[][] getMap()
|
||||||
{
|
{
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,23 +1,41 @@
|
|||||||
using System;
|
using System;
|
||||||
using System.IO;
|
using System.IO;
|
||||||
using System.Net.Sockets;
|
using System.Net.Sockets;
|
||||||
|
using System.Threading;
|
||||||
|
|
||||||
namespace WorldOfPeacecraft
|
namespace WorldOfPeacecraft
|
||||||
{
|
{
|
||||||
class Receiver
|
class Receiver
|
||||||
{
|
{
|
||||||
|
private TcpClient Client;
|
||||||
private StreamReader Reader;
|
private StreamReader Reader;
|
||||||
private Parser Parser;
|
private Parser Parser;
|
||||||
|
private Thread ReceiverThread;
|
||||||
|
|
||||||
public Receiver (TcpClient client, Parser parser)
|
public Receiver (TcpClient client, Parser parser)
|
||||||
{
|
{
|
||||||
|
this.Client = client;
|
||||||
this.Parser = parser;
|
this.Parser = parser;
|
||||||
this.Reader = new StreamReader (client.GetStream ());
|
ReceiverThread = new Thread(new ThreadStart(this.doReceive));
|
||||||
|
ReceiverThread.Start();
|
||||||
}
|
}
|
||||||
|
|
||||||
public string Receive ()
|
public string Receive ()
|
||||||
{
|
{
|
||||||
return Reader.ReadLine ();
|
return Reader.ReadLine ();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void doReceive ()
|
||||||
|
{
|
||||||
|
this.Reader = new StreamReader (Client.GetStream ());
|
||||||
|
while (true) {
|
||||||
|
Parser.AddToBuffer(Receive());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void Stop()
|
||||||
|
{
|
||||||
|
ReceiverThread.Abort();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user