#include "player.h"
#include "proto.h"
#include "prototypes.h"
+#include "server.h"
static int client_cmd(void);
static int coun_cmd(void);
time_t deadline;
char buf[128];
char space[128];
- int ac;
- int cmd;
- int res;
+ int res, ac, cmd, prev_state;
player->proc = empth_self();
break;
}
}
+ prev_state = player->state;
player->state = PS_SHUTDOWN;
+ if (prev_state == PS_PLAYING)
+ empth_rwlock_unlock(shutdown_lock);
pr_id(player, C_EXIT, "so long...\n");
player_delete(player);
empth_exit();
empth_set_name(empth_self(), buf);
logerror("%s logged in as country #%d", praddr(player), player->cnum);
pr_id(player, C_INIT, "%d\n", CLIENTPROTO);
+ empth_rwlock_rdlock(shutdown_lock);
player->state = PS_PLAYING;
player_main(player);
logerror("%s logged out, country #%d", praddr(player), player->cnum);