aboutsummaryrefslogtreecommitdiff
path: root/src/server_reqs.c
diff options
context:
space:
mode:
authorFranklin Wei <git@fwei.tk>2016-03-31 17:05:37 -0400
committerFranklin Wei <git@fwei.tk>2016-03-31 17:05:37 -0400
commit207850187986568b17ea9b2d9c29510cb00bf9da (patch)
treeaee87cf74280e8f9dd29aca88d12a638f37b2493 /src/server_reqs.c
parentb3699dd5df18db3c060bb88a74c1b05e37154c76 (diff)
downloadnetcosm-207850187986568b17ea9b2d9c29510cb00bf9da.zip
netcosm-207850187986568b17ea9b2d9c29510cb00bf9da.tar.gz
netcosm-207850187986568b17ea9b2d9c29510cb00bf9da.tar.bz2
netcosm-207850187986568b17ea9b2d9c29510cb00bf9da.tar.xz
lots of things
Diffstat (limited to 'src/server_reqs.c')
-rw-r--r--src/server_reqs.c62
1 files changed, 18 insertions, 44 deletions
diff --git a/src/server_reqs.c b/src/server_reqs.c
index 676403d..21787f4 100644
--- a/src/server_reqs.c
+++ b/src/server_reqs.c
@@ -150,7 +150,7 @@ static void req_send_desc(unsigned char *data, size_t datalen, struct child_data
send_packet(sender, REQ_BCASTMSG, (void*)room->data.desc, strlen(room->data.desc));
send_packet(sender, REQ_PRINTNEWLINE, NULL, 0);
-
+
/* list objects */
char buf[MSG_MAX];
buf[0] = 0;
@@ -189,7 +189,7 @@ static void req_send_desc(unsigned char *data, size_t datalen, struct child_data
{
strlcat(buf, "There are ", sizeof(buf));
char n[32];
- snprintf(n, sizeof(n), "%lu ", n_objs);
+ snprintf(n, sizeof(n), "%zu ", n_objs);
strlcat(buf, n, sizeof(buf));
strlcat(buf, name, sizeof(buf));
strlcat(buf, "s here.\n", sizeof(buf));
@@ -238,25 +238,25 @@ static void req_move_room(unsigned char *data, size_t datalen, struct child_data
/* TODO: bounds checking on `dir' */
room_id new = current->adjacent[dir];
-
+
if(new == ROOM_NONE)
{
- send_msg(sender, "You cannot go that way.\n");
+ send_msg(sender, "You cannot go that way.\n");
}
else
{
- struct room_t *new_room = room_get(new);
-
- if((!new_room->data.hook_enter ||
- (new_room->data.hook_enter && new_room->data.hook_enter(new, sender))) &&
- (!current->data.hook_leave ||
- (current->data.hook_leave && current->data.hook_leave(sender->room, sender))))
- {
- room_user_del(sender->room, sender);
-
- child_set_room(sender, new);
- status = 1;
- }
+ struct room_t *new_room = room_get(new);
+
+ if((!new_room->data.hook_enter ||
+ (new_room->data.hook_enter && new_room->data.hook_enter(new, sender))) &&
+ (!current->data.hook_leave ||
+ (current->data.hook_leave && current->data.hook_leave(sender->room, sender))))
+ {
+ room_user_del(sender->room, sender);
+
+ child_set_room(sender, new);
+ status = 1;
+ }
}
send_packet(sender, REQ_MOVE, &status, sizeof(status));
@@ -419,34 +419,8 @@ static void req_inventory(unsigned char *data, size_t datalen, struct child_data
struct object_t *obj = iter->val;
if(!strcmp(name, obj->name))
{
- if(n_objs == 1)
- {
- if(obj->default_article)
- {
- char *article = (is_vowel(name[0])?"An":"A");
- strlcat(buf, article, sizeof(buf));
- strlcat(buf, " ", sizeof(buf));
- strlcat(buf, name, sizeof(buf));
- }
- else
- {
- char tmp[2];
- tmp[0] = toupper(name[0]);
- tmp[1] = '\0';
- strlcat(buf, tmp, sizeof(buf));
- strlcat(buf, name + 1, sizeof(buf));
- }
- strlcat(buf, "\n", sizeof(buf));
- }
- else
- {
- char n[32];
- snprintf(n, sizeof(n), "%lu", n_objs);
- strlcat(buf, n, sizeof(buf));
- strlcat(buf, " ", sizeof(buf));
- strlcat(buf, name, sizeof(buf));
- strlcat(buf, "s\n", sizeof(buf));
- }
+ format_noun(buf, sizeof(buf), name, n_objs, obj->default_article, true);
+ strlcat(buf, "\n", sizeof(buf));
send_packet(sender, REQ_BCASTMSG, buf, strlen(buf));
}