diff --git a/source/src/server.cpp b/source/src/server.cpp index b2bbd99c..5f11616e 100644 --- a/source/src/server.cpp +++ b/source/src/server.cpp @@ -652,9 +652,16 @@ void process(ENetPacket *packet, int sender, int chan) // sender may be -1 }; loopi(3) clients[cn]->pos[i] = getuint(p); getuint(p); - loopi(6) getint(p); + loopi(5) getint(p); + int state = (getint(p)>>5)&7; if(cl->type==ST_TCPIP) { + if(state!=CS_DEAD && state!=CS_ALIVE && (smode!=1 || state!=CS_EDITING)) + { + disconnect_client(sender, DISC_TAGT); + return; + }; + cl->position.setsizenodelete(0); while(curmsg