
CheckFindRestrictions()
***********************


FUNKTION
========

   varargs int CheckFindRestrictions(object ob, mixed restr, closure qp)


DEFINIERT IN
============

   /std/room/shop.c


ARGUMENTE
=========

   ob     - Objekt
   restr  - zusaetzliches Argument
   qp     - symbol_function("QueryProp",ob)


BESCHREIBUNG
============

   Funktion, die FindBestWeapon / FindBestArmours einschraenkt.
   Wird in Wert ungleich 0 zurueckgeliefert, so wird das Objekt
   nicht genommen.


RUECKGABEWERT
=============

   Normalerweise 0


SIEHE AUCH
==========

   FindBestWeapon(), FindBestArmours()
