X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fnetwork%2Fclient.cpp;h=15d0b407691fbb3e526f365aa877b55d105aa053;hb=53712fb06be78cb6383ed8a54467dad7aebbf369;hp=33e7feac274ea9628d6688ed9758fd81a3305dc4;hpb=fadc35133b1ebbd98af948c1fa529dcde6fddcfd;p=r2c2.git diff --git a/source/network/client.cpp b/source/network/client.cpp index 33e7fea..15d0b40 100644 --- a/source/network/client.cpp +++ b/source/network/client.cpp @@ -1,10 +1,4 @@ -/* $Id$ - -This file is part of R²C² -Copyright © 2009 Mikkosoft Productions, Mikko Rasa -Distributed under the GPL -*/ - +#include #include "client.h" using namespace std; @@ -12,7 +6,7 @@ using namespace Msp; namespace R2C2 { -Client::Client(const Catalogue &c): +Client::Client(Catalogue &c): catalogue(c), socket(0), comm(0), @@ -63,10 +57,7 @@ void Client::set_halt(bool h) NetTrain &Client::get_train(unsigned addr) const { - map::const_iterator i = trains.find(addr); - if(i==trains.end()) - throw KeyError("Unknown train"); - return *i->second; + return *get_item(trains, addr); } void Client::receive(const DriverStatePacket &pkt) @@ -105,6 +96,11 @@ void Client::receive(const TrainFunctionPacket &pkt) get_train(pkt.address).process_packet(pkt); } +void Client::receive(const TrainAIControlPacket &pkt) +{ + get_train(pkt.address).process_packet(pkt); +} + void Client::receive(const TrainStatusPacket &pkt) { get_train(pkt.address).process_packet(pkt);