aboutsummaryrefslogtreecommitdiff
path: root/src/server.c
diff options
context:
space:
mode:
authorFranklin Wei <git@fwei.tk>2015-12-24 19:18:45 -0500
committerFranklin Wei <git@fwei.tk>2015-12-24 19:18:45 -0500
commit53c15b0461ee39a4c32e61ff484389efb1e91d84 (patch)
treec26e64930e1d73960eebc26b02d9d2185d2e1aef /src/server.c
parent28f94a54984fa7aa46fcb25e7991c1136329670f (diff)
downloadnetcosm-53c15b0461ee39a4c32e61ff484389efb1e91d84.zip
netcosm-53c15b0461ee39a4c32e61ff484389efb1e91d84.tar.gz
netcosm-53c15b0461ee39a4c32e61ff484389efb1e91d84.tar.bz2
netcosm-53c15b0461ee39a4c32e61ff484389efb1e91d84.tar.xz
stuff
Diffstat (limited to 'src/server.c')
-rw-r--r--src/server.c13
1 files changed, 12 insertions, 1 deletions
diff --git a/src/server.c b/src/server.c
index 598dd8d..a276a02 100644
--- a/src/server.c
+++ b/src/server.c
@@ -215,6 +215,15 @@ static void req_send_desc(unsigned char *data, size_t len, struct child_data *se
write(sender->outpipe[1], &newline, 1);
}
+static void req_send_roomname(unsigned char *data, size_t len, struct child_data *sender)
+{
+ struct room_t *room = room_get(sender->room);
+ write(sender->outpipe[1], room->data.name, strlen(room->data.name) + 1);
+
+ char newline = '\n';
+ write(sender->outpipe[1], &newline, 1);
+}
+
static void req_set_room(unsigned char *data, size_t len, struct child_data *sender)
{
room_id id = *((room_id*)data);
@@ -228,6 +237,7 @@ static void req_move_room(unsigned char *data, size_t len, struct child_data *se
struct room_t *current = room_get(sender->room);
/* TODO: checking */
+ sig_printf("Moving in direction %d\n", dir);
room_id new = current->adjacent[dir];
int status;
if(new != ROOM_NONE)
@@ -266,7 +276,8 @@ static const struct child_request {
{ REQ_CHANGEUSER, true, CHILD_SENDER, req_change_user, NULL, REQ_NOP },
{ REQ_KICK, true, CHILD_ALL, req_kick_client, NULL, REQ_NOP },
{ REQ_WAIT, false, CHILD_NONE, NULL, req_wait, REQ_NOP },
- { REQ_LOOK, false, CHILD_NONE, NULL, req_send_desc, REQ_BCASTMSG },
+ { REQ_GETROOMDESC, false, CHILD_NONE, NULL, req_send_desc, REQ_BCASTMSG },
+ { REQ_GETROOMNAME, false, CHILD_NONE, NULL, req_send_roomname, REQ_BCASTMSG },
{ REQ_SETROOM, true, CHILD_NONE, NULL, req_set_room, REQ_NOP },
{ REQ_MOVE, true, CHILD_NONE, NULL, req_move_room, REQ_MOVE },
};