Lpc Manpages

ActionAllowed()

FUNKTION:
	int ActionAllowed(object player);
	void create(int actions, int resets);
	
DEFINIERT IN:
	/std/actions.c
	
ARGUMENTE:
	player:
		Spielerobjekt, das eine Aktion ausfuehren soll.
	actions:
		Anzahl der Aktionen, die pro Resetperiode ausfuehrbar
		sein sollen (default: 1).
	resets: Anzahl der Resets, die verstreichen sollen, ehe wieder
		eine Aktion ausgefuehrt werden kann (default: 1).

BESCHREIBUNG:
	Mit 'ActionAllowed' kann fuer einen Spieler getestet werden, ob
	dieser eine bestimmte Aktion ausfuehren darf oder nicht.
	Mit den Defaultwerten fuer 'actions' und 'resets' kann 'Action-
	Allowed' fuer jedes Spielerobjekt nur einmal pro Resetperiode
	erfolgreich ausgefuehrt werden.
	
BEMERKUNGEN:
	Wird vergessen, 'actions::create' auszufuehren, so loest 'Action-
	Allowed' einen Laufzeitfehler aus. Ohne 'actions::reset' wird
	'resets' faktisch zu 'reboots'.

RUECKGABEWERT:
	1 : Aktion kann ausgefuehrt werden
	0 : Aktion ist fuer 'player' gesperrt

BEISPIELE:
	inherit "std/actions";
	...
	create()
	{
		actions::create(3);  // pro reset 3x
		...
		AddCmd("nimm", "nimm");
		...
	}
	
	reset()
	{
		actions::reset();
		...
	}
	
	nimm(str)
	{
		...
		if (ActionAllowed(this_player())
		{
			write("Du nimmst eine Fackel.\n");
			...
		}
		else
		{	
			write("Es ist keine Fackel mehr da.\n");
			...
		}
		...
	}
	
SIEHE AUCH:
	create(), reset(), UndoAction()