Summon

     summon - syntax: summon(CH1,options) 

Note: Summon cannot be used in room or object progs. See 'movechar' for equivalent function. Summon is used to transfer another mob or player to the mob the program is running on. In mobprogs, transfer was used for this purpose. Because of the added complexity in transfer, creating a separate function to bring characters to the mob was more intuitive.

Summon is typically used when a prog needs to transfer helpers to itself, but can also be used to check if the mob has an active target and summon it back to the room. Any potential target that is already in the same room as the mob will be ignored.

The CH1 argument can either be an existing variable of type 'CH', a character name or a mob key. Options can be used to limit the targets selected. With the exception of SEEALL, these options are ignored if a CH type variable is given rather than a name:

  LP_SEEALL No visibility checks, if the target exists it will be transferred. 
  LP_ZONEONLY Only look in the current zone for targets. 
  LP_PLRONLY Only summon players, ignore mobs. 
  LP_MOBONLY Only summon mobs, ignore players. 
  LP_ACTIVEONLY Only summon target if they are in-game. Players in note or edit mode will be ignored. 
  LP_ALLMOBS Only used with mobkey - if this option is set, all mobs with the same key will be summoned. 
  LP_NOERR By default, an error is thrown is target is not found. Set this option to suppress error messages on target not found. 

The CH1 argument can either be an existing variable of type 'CH', or a character name. Options can be used to limit the targets selected:

   --- Summon all my guards, but only in current area. 
   --- Summon even if I can't see them.
   summon("aylor-212",LP_ALLMOBS+LP_SEEALL+LP_ZONEONLY);