Lichtschalter....
-
- Komplettlösungsnutzer
- Beiträge: 10
- Registriert: 06.08.2009, 14:42
Lichtschalter....
Hi erstmal. Bin gerade dabei mich in AGS 3.2 einzuarbeiten, nachdem ich schonmal vor etwa einem jahr mit der 2.7ner Version ein Adventure erstellt hatte.
gerade arbeite ich an einem Raum an dem ich einen lichtschalter eingebaut habe. Wenn man dort draufdrückt ändert sich nicht nur das Licht sondern gleich der ganze background frame. Dazu hab ich erstmal die Funktion ins Script gesetzt, dass wenn man auf den Schalter drückt sich der Hintergrund zu einem Nachtbild ändert. Das Bild mit dem dunklem Raum hab ich als Background 1 und das Licht mit dem hellen Raum als Mainbackground geladen. also in der leiste in der man hintergründe für einen animierten Hintergrund lädt. Jetzt hab ich nur folgendes Problem:
Ich will ja das sich der Hintergrund nur ändert wenn man den Schalter drückt. Aber die "Backgroundanimationdelay" ist auf 5 gestellt. Hab schon versucht die Zahl zu ändern aber damit ändert sich nur die Geschwindigkeit der Animation.
Jetzt meine Frage: Kann man die Hintergrund animation ausstellen??
Wär echt super wenn einer eine Lösung weiß.
Mir ist halt wichtig das sich nicht bloß der Lichteinfall ändert sondern das Erscheinungsbild des ganzen raumes.
gerade arbeite ich an einem Raum an dem ich einen lichtschalter eingebaut habe. Wenn man dort draufdrückt ändert sich nicht nur das Licht sondern gleich der ganze background frame. Dazu hab ich erstmal die Funktion ins Script gesetzt, dass wenn man auf den Schalter drückt sich der Hintergrund zu einem Nachtbild ändert. Das Bild mit dem dunklem Raum hab ich als Background 1 und das Licht mit dem hellen Raum als Mainbackground geladen. also in der leiste in der man hintergründe für einen animierten Hintergrund lädt. Jetzt hab ich nur folgendes Problem:
Ich will ja das sich der Hintergrund nur ändert wenn man den Schalter drückt. Aber die "Backgroundanimationdelay" ist auf 5 gestellt. Hab schon versucht die Zahl zu ändern aber damit ändert sich nur die Geschwindigkeit der Animation.
Jetzt meine Frage: Kann man die Hintergrund animation ausstellen??
Wär echt super wenn einer eine Lösung weiß.
Mir ist halt wichtig das sich nicht bloß der Lichteinfall ändert sondern das Erscheinungsbild des ganzen raumes.
- Azrael
- Hobby-Archäologe
- Beiträge: 124
- Registriert: 13.05.2003, 16:46
- Kontaktdaten:
Re: Lichtschalter....
Hallo,
ich habe das in meinem Adventure wie folgt gelöst:
if (GetGlobalInt(1)==0) {
SetBackgroundFrame(1);
SetAreaLightLevel(1,-80);
SetAreaLightLevel(2,-80);
SetAreaLightLevel(3,-80);
SetAreaLightLevel(4,-80);
SetAreaLightLevel(5,-80);
DisableHotspot(4);
EnableHotspot(3);
}
else {
SetBackgroundFrame(0);
SetAreaLightLevel(1,0);
SetAreaLightLevel(2,-15);
SetAreaLightLevel(3,-30);
SetAreaLightLevel(4,-40);
SetAreaLightLevel(5,-50);
DisableHotspot(3);
EnableHotspot(4);
}
Beim Eintreten in den Raum ist das Licht ausgeschaltet. Die globale Variable wird mit 0 initialisiert, also greift zuerst der if-Teil. Gleichzeitig werden die Regionen 1 bis 5 um die Lichtquelle auf dunkel (-80) gestellt. Mit SetBackgroundFrame(1); definiere ich, dass nur Frame 1 des Hintergrundbildes gezogen wird, um die von dir beschriebene Animation zu vermeiden.
Drücke ich den Lichtschalter, wird auf Hintergrundframe 0 umgestellt und die Regionen unterschiedlich beleuchtet. Dadurch wird der Charakter um die Lichtquelle hell und etwas dünkler, je weiter er sich vom Licht entfernt.
Viele Grüße,
Azrael
ich habe das in meinem Adventure wie folgt gelöst:
if (GetGlobalInt(1)==0) {
SetBackgroundFrame(1);
SetAreaLightLevel(1,-80);
SetAreaLightLevel(2,-80);
SetAreaLightLevel(3,-80);
SetAreaLightLevel(4,-80);
SetAreaLightLevel(5,-80);
DisableHotspot(4);
EnableHotspot(3);
}
else {
SetBackgroundFrame(0);
SetAreaLightLevel(1,0);
SetAreaLightLevel(2,-15);
SetAreaLightLevel(3,-30);
SetAreaLightLevel(4,-40);
SetAreaLightLevel(5,-50);
DisableHotspot(3);
EnableHotspot(4);
}
Beim Eintreten in den Raum ist das Licht ausgeschaltet. Die globale Variable wird mit 0 initialisiert, also greift zuerst der if-Teil. Gleichzeitig werden die Regionen 1 bis 5 um die Lichtquelle auf dunkel (-80) gestellt. Mit SetBackgroundFrame(1); definiere ich, dass nur Frame 1 des Hintergrundbildes gezogen wird, um die von dir beschriebene Animation zu vermeiden.
Drücke ich den Lichtschalter, wird auf Hintergrundframe 0 umgestellt und die Regionen unterschiedlich beleuchtet. Dadurch wird der Charakter um die Lichtquelle hell und etwas dünkler, je weiter er sich vom Licht entfernt.
Viele Grüße,
Azrael
-
- Komplettlösungsnutzer
- Beiträge: 10
- Registriert: 06.08.2009, 14:42
Re: Lichtschalter....
hab das jetzt mal so umgesetzt. Aber nach einiger Zeit wechselt der Hintergrund dann selbstständig wieder. Keine Ahnung was ich übersehen hab. Das mit dem Licht war aber ein guter Tipp, dank auch.
-
- Komplettlösungsnutzer
- Beiträge: 10
- Registriert: 06.08.2009, 14:42
Re: Lichtschalter....
Habs hinbekommen. Hatte irgendwo im script einen fehler. Danke aber für die Hilfe.
- Azrael
- Hobby-Archäologe
- Beiträge: 124
- Registriert: 13.05.2003, 16:46
- Kontaktdaten:
Re: Lichtschalter....
Super, freut mich, dass ich dir helfen konnte
- KhrisMUC
- Adventure-Gott
- Beiträge: 4674
- Registriert: 14.03.2005, 00:55
- Wohnort: München
Re: Lichtschalter....
SetBackgroundFrame(0); im player enters screen event sollte genügen.
Use gopher repellent on funny little man
-
- Verpackungs-Wegwerfer
- Beiträge: 61
- Registriert: 18.09.2008, 14:54
Re: Lichtschalter....
Würde mit diesem Script auch die Taschenlampe funktionieren?
BG
der Volltanker
BG
der Volltanker
Tage sind eigentlich wie Nächte...nur nicht ganz so spät! ...hörte ich einmal einen sehr klugen, weisen Mann beim Erdnüsse sortieren in einer Kneipe sagen, kurz bevor er vom Hocker rutschte.
- KhrisMUC
- Adventure-Gott
- Beiträge: 4674
- Registriert: 14.03.2005, 00:55
- Wohnort: München
Re: Lichtschalter....
Nein...
Wenn Du mit Taschenlampe meinst, dass um die Maus herum ein heller Kreis im ansonsten schwarzen Hintergrund ist, dann sicher nicht mit diesem Script, das lediglich von ein paar Regionen die Beleuchtung ändert.
Wenn Du mit Taschenlampe meinst, dass um die Maus herum ein heller Kreis im ansonsten schwarzen Hintergrund ist, dann sicher nicht mit diesem Script, das lediglich von ein paar Regionen die Beleuchtung ändert.
Use gopher repellent on funny little man