[Dec 23 2009] - Rumble

Added zone flags and min/max level to show zone # and stat zone #.
  Changed show zone # reset mode from a # to the actual string description.
  Changed Message Type on stat object from a number to the actual message type. i.e. pierce.
This commit is contained in:
Rumble 2009-12-23 06:45:53 +00:00
parent 577d67041f
commit 018e07b76e
3 changed files with 26 additions and 7 deletions

View file

@ -36,6 +36,10 @@ Xlist (mlist, olist, rlist, zlist, slist, tlist, qlist)
(lots of major bugfixes too)
@
tbaMUD 3.61
[Dec 23 2009] - Rumble
Added zone flags and min/max level to show zone # and stat zone #.
Changed show zone # reset mode from a # to the actual string description.
Changed Message Type on stat object from a number to the actual message type. i.e. pierce.
[Dec 22 2009] - Rumble
Made copyover save loadroom so players stay in the same room during copyover.
Added scan command.

View file

@ -50,6 +50,7 @@ static void trg_checkload(struct char_data *ch, trig_vnum tvnum);
static void mod_llog_entry(struct last_entry *llast,int type);
const char *get_spec_func_name(SPECIAL(*func));
bool zedit_get_levels(struct descriptor_data *d, char *buf);
int purge_room(room_rnum room)
{
@ -650,8 +651,8 @@ static void do_stat_object(struct char_data *ch, struct obj_data *j)
GET_OBJ_VAL(j, 2), GET_OBJ_VAL(j, 1));
break;
case ITEM_WEAPON:
send_to_char(ch, "Todam: %dd%d, Avg Damage: %.1f. Message type: %d\r\n",
GET_OBJ_VAL(j, 1), GET_OBJ_VAL(j, 2), ((GET_OBJ_VAL(j, 2) + 1) / 2.0) * GET_OBJ_VAL(j, 1), GET_OBJ_VAL(j, 3));
send_to_char(ch, "Todam: %dd%d, Avg Damage: %.1f. Message type: %s\r\n",
GET_OBJ_VAL(j, 1), GET_OBJ_VAL(j, 2), ((GET_OBJ_VAL(j, 2) + 1) / 2.0) * GET_OBJ_VAL(j, 1), attack_hit_text[GET_OBJ_VAL(j, 3)].singular);
break;
case ITEM_ARMOR:
send_to_char(ch, "AC-apply: [%d]\r\n", GET_OBJ_VAL(j, 0));
@ -2366,12 +2367,15 @@ static size_t print_zone_to_buf(char *bufptr, size_t left, zone_rnum zone, int l
if (listall) {
int i, j, k, l, m, n, o;
char buf[MAX_STRING_LENGTH];
sprintbitarray(zone_table[zone].zone_flags, zone_bits, ZN_ARRAY_MAX, buf);
tmp = snprintf(bufptr, left,
"%3d %-30.30s%s By: %-10.10s%s Age: %3d; Reset: %3d (%1d); Range: %5d-%5d\r\n",
"%3d %-30.30s%s By: %-10.10s%s Age: %3d; Reset: %3d (%s); Range: %5d-%5d\r\n",
zone_table[zone].number, zone_table[zone].name, KNRM, zone_table[zone].builders, KNRM,
zone_table[zone].age, zone_table[zone].lifespan,
zone_table[zone].reset_mode,
zone_table[zone].reset_mode ? ((zone_table[zone].reset_mode == 1) ? "Reset when no players are in zone" : "Normal reset") : "Never reset",
zone_table[zone].bot, zone_table[zone].top);
i = j = k = l = m = n = o = 0;
@ -2400,13 +2404,17 @@ static size_t print_zone_to_buf(char *bufptr, size_t left, zone_rnum zone, int l
tmp += snprintf(bufptr + tmp, left - tmp,
" Zone stats:\r\n"
" ---------------\r\n"
" Flags: %s\r\n"
" Min Lev: %2d\r\n"
" Max Lev: %2d\r\n"
" Rooms: %2d\r\n"
" Objects: %2d\r\n"
" Mobiles: %2d\r\n"
" Shops: %2d\r\n"
" Triggers: %2d\r\n"
" Quests: %2d\r\n",
j, k, l, m, n, o);
buf, zone_table[zone].min_level, zone_table[zone].max_level,
j, k, l, m, n, o);
return tmp;
}

View file

@ -441,9 +441,9 @@ static void list_zones(struct char_data *ch, zone_rnum rnum, zone_vnum vmin, zon
void print_zone(struct char_data *ch, zone_vnum vnum)
{
zone_rnum rnum;
int size_rooms, size_objects, size_mobiles, size_quests, size_shops, size_trigs, i;
int size_rooms, size_objects, size_mobiles, size_quests, size_shops, size_trigs, i, largest_table;
room_vnum top, bottom;
int largest_table;
char buf[MAX_STRING_LENGTH];
if ((rnum = real_zone(vnum)) == NOWHERE) {
send_to_char(ch, "Zone #%d does not exist in the database.\r\n", vnum);
@ -490,6 +490,7 @@ void print_zone(struct char_data *ch, zone_vnum vnum)
size_trigs++;
size_quests = count_quests(bottom, top);
sprintbitarray(zone_table[rnum].zone_flags, zone_bits, ZN_ARRAY_MAX, buf);
/* Display all of the zone information at once. */
send_to_char(ch,
@ -501,6 +502,9 @@ void print_zone(struct char_data *ch, zone_vnum vnum)
"%sBottom of Zone = %s%d\r\n"
"%sTop of Zone = %s%d\r\n"
"%sReset Mode = %s%s\r\n"
"%sZone Flags = %s%s\r\n"
"%sMin Level = %s%d\r\n"
"%sMax Level = %s%d\r\n"
"%sSize\r\n"
"%s Rooms = %s%d\r\n"
"%s Objects = %s%d\r\n"
@ -517,6 +521,9 @@ void print_zone(struct char_data *ch, zone_vnum vnum)
QGRN, QCYN, zone_table[rnum].top,
QGRN, QCYN, zone_table[rnum].reset_mode ? ((zone_table[rnum].reset_mode == 1) ?
"Reset when no players are in zone." : "Normal reset.") : "Never reset",
QGRN, QCYN, buf,
QGRN, QCYN, zone_table[rnum].min_level,
QGRN, QCYN, zone_table[rnum].max_level,
QGRN,
QGRN, QCYN, size_rooms,
QGRN, QCYN, size_objects,