Dokumentation zu: QueryLight(L)

HR Image


FUNKTION:
	varargs int QueryLight(int emitting)

IMPLEMENTIERT:
	/std/thing/light.c
	/std/room/description.c

ARGUMENTE:
	emitting (optional): Welches Licht wollen wir?

BESCHREIBUNG:
	Diese Funktion berechnet immer das gerade aktuelle Gesamtlichtlevel
	an oder in einem Objekt. Es bildet also dynamisch die Summe aller
	im oder am Objekt befindlichen Lichtquellen und der Grundhelligkeit
	des Raumes.

	Wenn 'emitting' nicht gesetzt ist, so wird zurueckgegeben, welche
	Helligkeit 'innerhalb' des Objektes herrscht. Also z.B. wie hell es
	in einem Raum ist. Dies ist die gebraeuchlichste Variante. Man kann
	auch berechnen lassen, wie hell es in/bei einem Spieler oder NPC
	ist, indem man lebewesen->QueryLight() aufruft.

	Ist 'emitting' gesetzt, so wird zurueckgegeben, wieviel Licht von
	diesem Objekt und seinem Inhalt nach 'aussen' ausgeht. Ist natuer-
	lich nur dann sinnvoll, wenn das Objekt lichtdurchlaessig
	(P_TRANSLUCENT gesetzt) ist.

	In Raeumen wird hier automatisch beruecksichtigt ob der Raum
	in einem Gebaeude ist oder draussen und ob dort Nacht oder
	Tag herrscht. Bei nicht in Gebaeuden liegenden Raeumen (P_INDOORS
	nicht gesetzt) wird nachts 1 vom Lichtlevel abgezogen, wenn der
	Raum keine weiteren Umgebungsraeume hat. Liegt der Raum wiederum
	in einem anderen Raum, wird nur beim aeussersten Raum der
	Tag-/Nachtunterschied eingerechnet, damit es nicht zu Dopplungen
	kommt.

RÜCKGABEWERT:
	Der 'Lichtwert', siehe dazu auch P_LIGHT.

BEACHTE:
	Im Wunderland wird die gesamte Lichtverwaltung von der MUDLib
	uebernommen. DIE EFUN set_light(E) HAT KEINERLEI FUNKTION MEHR.

BEISPIEL:
	if (environment(this_player())->QueryLight() > 0)
		write("Es ist hell!\n");
	else
		write("Es ist dunkel!\n");

SIEHE AUCH:
	P_LIGHT, P_TRANSLUCENT, P_INDOORS, uhr(WL), P_LIGHT_CHANGE,
	set_light(E)


Start » Magierhandbuch » Docu » Lfun » QueryLight Letzte Generierung: 25.04.2021, 01:58
Email an: mud@wl.mud.de
Valid HTML 4.01!