QueryGuest()
FUNKTION:
     int QueryGuest();

DEFINIERT IN:
     /std/player/base

BESCHREIBUNG:
     Auf der uid basierende Hilfsfunktion, um Gaeste zu identifizieren.

RUeCKGABEWERT:
     1, wenn Spielerobjekt ein Gast ist; 0 sonst

BEISPIELE:
     if(this_interactive()->QueryGuest())
     {
       (this_interactive()->ReceiveMsg(
          "Wir bedienen hier nur ordentliche Charaktere.",
          MT_LISTEN, MA_SAY,
          "Der Wirt sagt: ") != MSG_SENSE_BLOCK) ||
       (this_interactive()->ReceiveMsg(
          "Der Wirt gestikuliert dich hinaus.",
          MT_LOOK, MA_LOOK) != MSG_SENSE_BLOCK) ||
       (this_interactive()->ReceiveMsg(
          "Irgendwer stupst dich an. Du sollst wohl gehen.",
          MT_FEEL, MA_FEEL));
       return 1;
     }

SIEHE AUCH:
     getuid()

14. Mai 2015 Gloinson
