[Circle] Spec_Prov Problem

From: linebacker (linebacker@microlink.net)
Date: 07/30/96


I have a spewcial procedure that is supposed to load and object at
a certain tine and then rmove it at a certain time. My problem is,
that is keep loading the object while the time is 8:00. I know,
because each time it  pulses the spec_proc.

Also, I know there is an easier way of doing this, I want to load an
object for a certain reason.

Here is what I have:


SPECIAL(dockmaster)
{
  struct obj_data *i, *ship;
  int ship_num = 10039, dock_num = 2113, ship_count = 1;  

while (time_info.hours == 10) {
  for (i = world[ch->in_room].contents; i; i = i->next_content) {
    act("The Moonshadow has left dock and headed down river.", FALSE, ch, 0, 0, TO_ROOM);
    obj_from_room(i);
    ship_count = 1;
    return TRUE;
    }
   }

while ((time_info.hours == 8) && (ship_count == 1)) {
    ship = read_object(ship_num, VIRTUAL);
    obj_to_room(ship, real_room(dock_num));
    act("The Moonshadow has quietly pulled into dock.", FALSE, ch, 0, 0, TO_ROOM);
    ship_count=0;
    return TRUE;
    } 

  return FALSE;
}


Now, each time the spec_proc is checked, ship_count is intialized to 0, and it
will keep loading ships while the time is 8:00. How can I make this spec-proc
so it will load only one ship at 8:00?

Any help will be _greatly_ appreciated, for I have torn out all my hair, trying
to get such a 'simple' piece of code to work.

Chuck

+-----------------------------------------------------------+
| Ensure that you have read the CircleMUD Mailing List FAQ: |
|   http://cspo.queensu.ca/~fletcher/Circle/list_faq.html   |
+-----------------------------------------------------------+



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