• Anmelden

1

Montag, 27. April 2009, 14:29

Lightmap Festtackern

Hallo zusammen.

Ich weiss, dass es dieses Thema schon einige male gab, hab die Suche auch benutzt, einiges gefunden, aber nicht was mir helfen kann.

Gut, ich suche ein Script, wo man eine gewisse Bild-ID festtackern lassen kann. Ihr wisst ja, für Lightmaps für Maps mit grösserer Grösse (omfg). TBCs Lightmap kann/will ich nicht gebrauchen, weil ich die Lightmaps selbst erstellen möchte, und diese auch individualisieren will. Und mit einem Fog möchte ich es auch nicht gerade lösen, da sich die Fog mitverfärbt und es für mich umständlicher ist, da ich die Lightmaps manchmal ja auch ,moven' möchte, von Intensität von 255 auf 100 usw. Das kann man mit dem Fog nicht (das heisst man kann, aber nicht wie Move Picture).

Ich hatte einmal ein solches Skript! Es war ein ganzes Skript, welches man einfach einbinden musste und voila!

Bin aber auch für alternativen offen.

Vielen herzlichen Dank.

3

Montag, 27. April 2009, 15:59

Ja, endlich mal etwas.

Wo soll ich das Call Script denn einfügen als Event? Als Parallel-Process funtkioniert das nicht.

Das Script habe ich eingefügt, doch dann muss man ja noch zb

Quellcode

1
picture_move_with_map(30)
(für die ID 30) einfügen. Per Call Script Befehl.

Aber wo?

4

Montag, 27. April 2009, 16:04

einfach direkt unter show picture setzen.
id steht für die picture id die du fixieren willst.

5

Montag, 27. April 2009, 16:52

Ich habe jetzt:

...
<>Show Picture: 30, @20, Upper Left (0,0), (100%, 100%), 0, Normal
<>Script: picture_move_with_map(30)
...

Wenn ich auf ner Map bin und jetzt der Befehl ,Screen Shake' kommt, dass der Bildschirm sich rüttelt, bewegt sich das Bild mit.

6

Freitag, 1. Mai 2009, 10:41

Ja soll doch auch o.O
Dann machste halt vor dem Screen-Shake nochmal den Befehl, dass das Picture sich doch nicht mit Map bewegen soll, und danach wieder den Befehl, dass es sich mit Map bewegen soll ^^
Dürfte so klappen. Wie die Befehle heißen muss im Skript stehen.

7

Sonntag, 3. Mai 2009, 19:39

Wieso doch nicht?

Das Skript ist dafür da, dass sich das Picture nicht mitbewegt. Das heisst laufe ich über eine mehr als Spielbildschirmgrösse grössere Karte, darf sich das Bild nicht mitbewegen. Mache ich jedoch den Befehl ,Shake-Screen', sollte sich das Bild auch nicht mitbewegen. Die Lichtquellen bleiben ja an der selben Stelle - kann doch nicht sein, dass wenn das Screen nach rechts geschüttelt wird das Bild mit nach rechts rückt und nicht dort bleibt, wo die Lichtquellen sind?

8

Donnerstag, 7. Mai 2009, 12:32

Die Lichtquellen werden doch beim Screen Shake mitgeschüttelt... Und Problem mit der obigen Lösung behoben?

9

Donnerstag, 7. Mai 2009, 19:56

Nein die Lichtquellen werden beim Shake Screen nicht mitgeschüttelt...
Ich versuchs mal so, dass vor dem Shake Screen das Skript aufgehoben wird für den Prozess dh dass die Lichtquellen mitschütteln und nach dem shake das Skript wieder läuft, dass es die Quellen antackert.

Wobei besteht dann da ein Problem, wenn es während dem dass der Held läuft und geschüttelt wird (zB Erdbeben) dann wird das Lichtquellenbild für kurze Zeit mitgezogen und erst dann wieder angetackert...

Wie soll das funktionieren?

10

Freitag, 8. Mai 2009, 20:50

Was sind denn deine Lichtquellen? Sind das keine Tiles?
Edit: Ich hab keine Ahnung wenn ich ehrlich bin, probier doch mit waits rum.
Ich verstehe wie gesagt nicht, warum sich die Lichtquellen nicht bewegen sollen...

11

Freitag, 8. Mai 2009, 23:03

Achso xD

Also.
Eine Lightmap ist ein Bild, das angezeigt wird.
Normalerweise bewegt sich das Bild mit - sagen wir mal beispielsweise Lebenspunkte.
Die Lebenspunkte müssen sich beim Screen immer oben rechts oder sonstwo in einer Ecke befinden - bewegt sich der Spieler, bewegt sich das Bild mit. Logisch, oder?

Möchte man aber ein Bild anzeigen lassen, welches immer da bleiben soll, bzw. von der oberen linken Ecke an abwärts und rechtswärts, zum Beispiel - eben für Lightmaps, dh. bei jeder Lichtquelle (Eingänge, Kerzen, Fenster...) wurde als Bild ein küntsliches zuvor mit einem Bildbearbeitungsprogramm erstelltes Licht als Bild hinzugefügt, um ein Lichteffekt besser erscheinen zu lassen. Es wäre unlogisch, wenn sich der Held bewegt und die Lichtquellen sich mitbewegen würden, oder?
Deshalb wurde dieses eine Skript erstellt.
Man kann einer Picture-ID sagen; du bleibst immer oben links (deshalb ist es ratsam, die Grösse der Lichtquellenbilder direkt so gross zu machen wie die Zielmap, auf der die Lichtquellen zu sehen sind)!

Es funktioniert auch, wenn die Pic-ID 30 (für mich die ID der Lightmaps) stehen bleiben soll wenn sich der Held bewegt.

Und jetzt kommen wir zu meinem Problem:
Erfolgt ein Shake-Screen, bewegt sich die Pic-ID 30 mit dem Bildschirm mit! Das heisst die Lichtquellen werden kurzerzeit verschoben und dann auf die andere Seite (je nach Stärke und Länge des Shakes ist es natürlich merkbarer). Das sollte eben nicht sein. Meine Frage:
Wie kann man das verhindern?

12

Samstag, 9. Mai 2009, 18:23

Danke für die Erklärung, aber ich weiß den Sinn von Lightmaps und warum man sie "festtackern" will ^^"
Nur stellt dir mal vor du hast ein Haus gemappt, und es wirft einen Schatten. Der Schatten ist auf dem Lightmap-Picture.
Ein Erdbeben kommt, das Haus wackelt - wie alles - hin und her.
Warum sollte der Schatten des Hauses denn stehen bleiben, und sich nicht mit dem Rest der Welt bewegen? Wenn die Licht- und Schattenquellen ruckeln, muss die Lightmap doch mitruckeln.
Wenn das doof aussieht, weil der linke Bildschirmrand in den rechten geschoben wird und umgekehrt, dann liegt das am eigentlichen Befehl "Screen Shake"...
Schiebt sich ja das Haus (wenn es links steht) teilweise in den rechten Rand, geht der Schatten folglich mit...

Suchst du vielleicht ein Skript dass diesen "übertrag" von einem Rand zum andern beim ScreenShake verhindert?

13

Montag, 11. Mai 2009, 00:53

Hm...Okay ich weiss wo das Problem liegt, die Lightmap wird ja eben festgettackert, deshalb bleibt sie ja da stehen während die Welt sich schüttelt. Wie kann man das Skirpt kurzzeitig während des Screen Shake Vorgangs ausschalten?

Und ja ich denke das andere Skript wäre auch nicht schlecht... wenn es gerade griffbereit wär.

Social Bookmarks