X-Git-Url: http://git.shiar.net/netris.git/blobdiff_plain/2708de3d9437a12ee943f0740830aa97d9c3c136..93d1d285b606413a0c60905f8b43389661ac30ec:/server.c diff --git a/server.c b/server.c index 3d6652a..814ac4e 100644 --- a/server.c +++ b/server.c @@ -21,6 +21,7 @@ #include "netris.h" #include +#include #include #include #include @@ -32,6 +33,7 @@ #include #include "util.h" +#include "msg.h" #define HEADER_SIZE sizeof(netint4[3]) @@ -83,7 +85,7 @@ void SendPacketTo(short playa, short uid, NetPacketType type, int size, void *da if (netGen[playa].fd >= 0) { if (verbose) - fprintf(stderr, ": send %d from %d to %d\n", type, uid, playa); + fprintf(stderr, MSG_SERVER_DBG_SEND "\n", type, uid, playa); header[0] = hton4(uid); header[1] = hton4(type); header[2] = hton4(size + HEADER_SIZE); @@ -119,10 +121,10 @@ void CloseNets(void) { //nou oogjes dicht en snaveltjes toe int i; - fprintf(stderr, "- Closing connections...\n"); + fprintf(stderr, MSG_SERVER_CLOSE_ALL "\n"); for (i = 1; i < MAX_SCREENS; i++) SCloseNet(i); // bye everybuddy - fprintf(stderr, "* All Done\n\n"); + fprintf(stderr, MSG_SERVER_CLOSE_ALL_DONE "\n\n"); } MyEventType NetGenFunc(EventGenRec *gen, MyEvent *event) @@ -134,7 +136,7 @@ MyEventType NetGenFunc(EventGenRec *gen, MyEvent *event) result = MyRead(gen->fd, gen->buf + gen->bufSize, gen->bufGoal - gen->bufSize); if (result < 0) { - fprintf(stderr, "- Closed connection to player #%d\n", gen->player); + fprintf(stderr, MSG_SERVER_PLAYER_CLOSED "\n", gen->player); return E_lostConn; } gen->bufSize += result; @@ -155,7 +157,7 @@ MyEventType NetGenFunc(EventGenRec *gen, MyEvent *event) event->u.net.size = size - HEADER_SIZE; event->u.net.data = gen->buf + HEADER_SIZE; if (type == NP_endConn) { - fprintf(stderr, "- Quit player #%d\n", gen->player); + fprintf(stderr, MSG_SERVER_PLAYER_QUIT "\n", gen->player); return E_lostConn; } //client sent quit signal return E_net; @@ -177,7 +179,7 @@ static MyEventType ConnGenFunc(EventGenRec *gen, MyEvent *event) netGen[new].fd = accept(gen->fd, (struct sockaddr *)&addr, &addrLen) ) < 0) die("accept"); - fprintf(stderr, "+ Connection: %s\n", inet_ntoa(addr.sin_addr)); + fprintf(stderr, MSG_SERVER_CONNECT "\n", inet_ntoa(addr.sin_addr)); val2.l_onoff = 1; val2.l_linger = 0; setsockopt(netGen[new].fd, SOL_SOCKET, SO_LINGER,(void *)&val2, @@ -222,12 +224,8 @@ int StartServer(void) MyEvent event; netint2 currentpiece[MAX_SCREENS]; int playersReady = 0; - int paused = 1; + bool paused = 1; int i; - char teams[10][7] = { - "", "Green", "Cyan", "Blue", "Purple", - "Red", "Grey", "White", "*Orange" - }; do { switch (WaitMyEvent(&event, EM_any)) { @@ -241,7 +239,7 @@ int StartServer(void) SCloseNet(event.u.net.sender); break; //NP_endConn case E_net: - if (verbose) fprintf(stderr, ": %d sent %d\n", + if (verbose) fprintf(stderr, MSG_SERVER_DBG_RECV "\n", netGen[event.u.net.sender].fd, event.u.net.type); switch(event.u.net.type) { case NP_hello: @@ -260,13 +258,13 @@ int StartServer(void) snprintf(data, sizeof(data), "Version mismatch: received %d.%d", major, protocolVersion); - fprintf(stderr, "= Wrong version player #%d (%s)\n", + fprintf(stderr, MSG_SERVER_PLAYER_EVERSION "\n", event.u.net.sender, data); SendPacketTo(event.u.net.sender, 0, NP_error, strlen(data)+1, data); SCloseNet(event.u.net.sender); } //version mismatch - fprintf(stderr, "* Accepted player #%d\n", + fprintf(stderr, MSG_SERVER_PLAYER_ACCEPT "\n", event.u.net.sender); break; } //NP_hello @@ -294,8 +292,8 @@ int StartServer(void) if (!Game.continuous && Game.started >= 2) { char data[40]; strcpy(data, "Can't join: Game has already started"); - fprintf(stderr, "- Can't join player #%d in " - "non-continuous game\n", event.u.net.sender); + fprintf(stderr, MSG_SERVER_PLAYER_JOIN_ESTARTED, + event.u.net.sender); SendPacketTo(event.u.net.sender, 0, NP_error, strlen(data)+1, data); // SCloseNet(event.u.net.sender, 0); @@ -327,11 +325,11 @@ int StartServer(void) SendPacketTo(i, event.u.net.sender, NP_newPlayer, sizeof(_Player), &Players[event.u.net.sender]); } //send (to) players - fprintf(stderr, "> Joined player #%d: %s <%s> (%s)\n", + fprintf(stderr, MSG_SERVER_PLAYER_JOIN "\n", event.u.net.sender, Players[event.u.net.sender].name, Players[event.u.net.sender].host, - teams[Players[event.u.net.sender].team]); + teamname[Players[event.u.net.sender].team]); if (++playersReady >= minplayers) { if (Game.started > 1) SendPacketTo(event.u.net.sender, 0, @@ -351,7 +349,7 @@ int StartServer(void) goto sendtoall; case NP_argghhh: Players[event.u.net.sender].alive = 0; - fprintf(stderr, "< Player #%d died\n", + fprintf(stderr, MSG_SERVER_PLAYER_DIE "\n", event.u.net.sender); //check for unpaused game case NP_pause: @@ -360,10 +358,9 @@ int StartServer(void) paused = Game.started < 1; for (i = 1; i < MAX_SCREENS; i++) if (Players[i].alive > 0) - paused |= Players[i].flags & SCF_paused; - fprintf(stderr, "* Player #%d (un)paused (pause=%d)\n", + paused |= (Players[i].flags & SCF_paused) != 0; + fprintf(stderr, MSG_SERVER_PLAYER_PAUSE "\n", event.u.net.sender, paused); - if (paused) paused = 1; goto sendtoall; } //NP_pause default: //relay data to all players @@ -395,13 +392,13 @@ int StartServer(void) CountPlayers(); if (Game.started < 1) { if (playercount >= 2) { - fprintf(stderr, "* Game (%010d) ready to start\n", Game.seed); + fprintf(stderr, MSG_SERVER_GAME_READY "\n", Game.seed); Game.started++; } //give goahead } //game not yet started else { if (playercount < 2) { - fprintf(stderr, "* Stopping game\n"); + fprintf(stderr, MSG_SERVER_GAME_STOP "\n"); if (Game.seed) Game.seed++; if (Game.started > 1) for (i = 1; i < MAX_SCREENS; i++) { if (Players[i].alive >= 0) { @@ -416,7 +413,7 @@ int StartServer(void) } //too few players for game if (Game.started == 1 && !paused) { Game.started++; - fprintf(stderr, "* Game starts\n"); + fprintf(stderr, MSG_SERVER_GAME_START "\n"); for (i = 1; i < MAX_SCREENS; i++) if (Players[i].alive > 0) SendPacketTo(i, 0, NP_start, 0, NULL); @@ -429,9 +426,7 @@ int StartServer(void) void SHeader(void) { - fprintf(stderr, - "NETRIS Server %s\t(c) 2002 Shiar \n\n", - version_string); + fprintf(stderr, MSG_SERVER_TITLE "\n\n", version_string); } void SUsage(void)