VORLAEUFIG, GESCHUETZT SYNOPSIS #include <sys/rtlimits.h> void set_limits(int tag, int value...); void set_limits(int *limits); BESCHREIBUNG Setzt die standardmaessigen Laufzeitlimiten entsprechend den angegebenen Argumenten. Die neuen Limiten treten als 'max limits' mit Beginn des naechsten Ausfuehrungszyklus in Kraft. Die Argumente koennen in zwei Formen angegeben werden: als ein Array (wie jenes, das query_limits() liefert) oder als eine Liste von Tags und Werten. Dabei werden zwei spezielle Werte erkannt: LIMIT_UNLIMITED: das Limit wird deaktiviert LIMIT_KEEP: die letzte Einstellung wird beibehalten Fuer LIMIT_COST, die Spezialwerte haben diese Bedeutung: LIMIT_UNLIMITED: die Ausfuehrung kosten lediglich einen Tick LIMIT_KEEP: LIMIT_COST wird auf 0 gesetzt LIMIT_DEFAULT: LIMIT_COST wird auf -100 gesetzt Die Efun verursacht eine Schutzverletzung ("set_limits", current_object, limits-array). BEISPIELE set_limits( ({ 200000 }) ); set_limits( LIMIT_EVAL, 200000 ); --> setzt das Limit fuer Eval-Kosten auf 200000. set_limits( ({ LIMIT_UNLIMITED, LIMIT_KEEP, 5000 }) ); set_limits( LIMIT_EVAL, LIMIT_UNLIMITED, LIMIT_ARRAY, LIMIT_KEEP, LIMIT_MAPPING, 5000); --> setzt die maximalen Eval-Kosten auf unlimitiert, behaelt das Limit fuer die Array-Groesse und setzt die maximal Mappinggroesse auf 5000. AENDERUNGEN Eingefuehrt in LDMud 3.2.7. LDMud 3.3.563 fuehrte LIMIT_COST ein. SIEHE AUCH limited(E), query_limits(E)