Heute habe ich an neuen Freeze- und Damge-Overlays gearbeitet, denn für die bisher verwendeten, hatten wir nicht alle Nutzungsrechte, zudem war das Damage-Overlay noch etwas zu blutig.
Das Damage-Overlay wird angezeigt wenn der Spieler beispielsweise von einem herunterfallenden Stein getroffen wird oder sich im Explosionsradius einer Stangedynamit befindet. Dieses Overlay besteht aus zwei PNGs. Das eine ist einfach komplett rot, das andere ein roter Gradient der zur Mitte hin transparent wird. Im Spiel konnte ich einen puls Effekt erzeugen in dem ich die beiden Bilder übereinander legte und ihre Alphawerte entsprechend anpasste für jedes Frame. Ein Alphawert ist eine Zahl zwischen null und eins die bestimmt wie stark decken ein Bild ist, bei null wäre es beispielsweise völlig transparent.
Kurve der Alphawerte
Das Freeze-Overlay wird angezeigt wenn der Spieler sich selber einfriert mit einem Eisblock oder von jemandem eingefroren wird durch einen Stern. Dieses Overlay ist aus drei PNGs aufgebaut:
Ein komplett weisses
Ein weisser Gradient der zur Mitte hin transparent wird
Grau-blaue Risse auf transparentem Hintergrund
Auch hier konnte wieder mit entsprechenden Anpassungen der Alphawerten ein Effekt erzeugt werden, dieser soll an Abschmelzendes Eis erinnern soll.
Die Overlays erstellte ich in Photoshop, in relativ kurzer Zeit. Heute am aufwendigsten war definitiv die darauf folgende Integration in den Code. Denn es viel mir Anfangs schwer einen geeigneten „Triggerpoint“ zu finden, für das Freeze-Overlay (Triggerpoint: Stelle im Programmcode der das Anzeigen auslösen soll). Das Freeze-Overlay sollte nämlich sofort neugestartet werden, jedes Mal wenn der Spieler gefreezed wird, also auch im speziellen Fall, dass der Spieler bereits gefreezed ist und das Overlay bereits angezeigt wird. Durch einen Tipp von Matthias liess sich jedoch auch hier eine gute Lösung finden.