summaryrefslogtreecommitdiff
path: root/src/map/atcommand.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/map/atcommand.c')
-rw-r--r--src/map/atcommand.c20
1 files changed, 17 insertions, 3 deletions
diff --git a/src/map/atcommand.c b/src/map/atcommand.c
index bf816faa7..13eab74ec 100644
--- a/src/map/atcommand.c
+++ b/src/map/atcommand.c
@@ -1714,7 +1714,21 @@ ACMD(bodystyle)
memset(atcmd_output, '\0', sizeof(atcmd_output));
- if (!*message || sscanf(message, "%d", &body_style) < 1) {
+ if ((sd->job & MAPID_THIRDMASK) != MAPID_GUILLOTINE_CROSS
+ && (sd->job & MAPID_THIRDMASK) != MAPID_GENETIC
+ && (sd->job & MAPID_THIRDMASK) != MAPID_MECHANIC
+ && (sd->job & MAPID_THIRDMASK) != MAPID_ROYAL_GUARD
+ && (sd->job & MAPID_THIRDMASK) != MAPID_ARCH_BISHOP
+ && (sd->job & MAPID_THIRDMASK) != MAPID_RANGER
+ && (sd->job & MAPID_THIRDMASK) != MAPID_WARLOCK
+ && (sd->job & MAPID_THIRDMASK) != MAPID_SHADOW_CHASER
+ && (sd->job & MAPID_THIRDMASK) != MAPID_MINSTRELWANDERER
+ ) {
+ clif->message(fd, msg_fd(fd, 35)); // This job has no alternate body styles.
+ return false;
+ }
+
+ if (*message == '\0' || sscanf(message, "%d", &body_style) < 1) {
sprintf(atcmd_output, "Please, enter a body style (usage: @bodystyle <body ID: %d-%d>).", MIN_BODY_STYLE, MAX_BODY_STYLE);
clif->message(fd, atcmd_output);
return false;
@@ -1722,9 +1736,9 @@ ACMD(bodystyle)
if (body_style >= MIN_BODY_STYLE && body_style <= MAX_BODY_STYLE) {
pc->changelook(sd, LOOK_BODY2, body_style);
- clif->message(fd, msg_txt(36)); // Appearence changed.
+ clif->message(fd, msg_fd(fd, 36)); // Appearence changed.
} else {
- clif->message(fd, msg_txt(37)); // An invalid number was specified.
+ clif->message(fd, msg_fd(fd, 37)); // An invalid number was specified.
return false;
}