[Code] Zone Flag Problems

From: Julian Buckley (s348266@student.uq.edu.au)
Date: 05/12/99


Hello...

I'm trying to get zone flags up and running...all the OLC interfacing
etc work fine, my problem lies with actually calling ZONE_FLAGGED or
similar...the flags are set up I guess, identical to what the room_flags
are.  That is, #define ZONE_FLAGS(loc) (zone[(loc)].zone_flags) and
#define ZONE_FLAGGED(loc, flag) (IS_SET(ZONE_FLAGS(loc), (flag))).
Zone_flags declared as a bitvector_t (bpl15).

My problem lies in the fact that the following crashes:

ACMD(do_test)
{
  struct zone_data *zone;
  sprintbit(ZONE_FLAGS(ch->in_room), zone_bits, buf1);        <---
crashes here.
  sprintf(buf, "Zone: [ %s ]\r\n", buf1);
  send_to_char(buf, ch);
}

along with the infunctionallity of:
if (!zone_table[location].status_mode && !ZONE_FLAGGED(location,
ZONE_IMMOK)) {
(status_mode is an integer, declaring 0 if zone closed, and 1 if zone is
open).


OLC loads, saves etc the structure fine within the files.  I'm at a loss
as to work out what's wrong with ZONE_FLAGS()
and ZONE_FLAGGED(), so if someone else spots it and/or needs more
information, I'd be greatily appreciative.

-C.

---------------------------------------------------------------------
Julian Buckley, 3rd Year Computer Systems Engineering
Dept. Computer Science and Electrical Engineering, Univ. of Qld
E-Mail: s348266@student.uq.edu.au
Web Page: http://student.uq.edu.au/~s348266/index.html
-------------------------------------------------------------------


     +------------------------------------------------------------+
     | Ensure that you have read the CircleMUD Mailing List FAQ:  |
     |  http://qsilver.queensu.ca/~fletchra/Circle/list-faq.html  |
     +------------------------------------------------------------+



This archive was generated by hypermail 2b30 : 12/15/00 PST