Here's how I had it set up, brief example to give you an idea:
Firstly I had a new table that stored flags for various zones. If a zone required special flags for entry, it was in this table. It had the following: charid, zoneid, flag. They should be obvious, charid is the ID of the character attempting to enter the zone, zoneid is the ID of the zone they're attempting to enter. Flag was 1 for yes, 0 for no. If it was 0, the player got a message "You do not meet the requirements to enter this zone." much like when there aren't enough zone servers.
I then added a function which checked this table, and put it within the zoning function itself. That's basically it. I also added quest functions to add a specific zone which required the flag.
|