Ich muss euch leider schon wieder belästigen.
Da ich gerade an dem Teddy-Script schreibe, hab ich da noch ein Problem.
Ich lade das Bild mit
_ResourceLoadImage(@scriptdir & "\gfx.dat","Teddy")
[/autoit]
dies funktioniert auch super.
Danach starte ich diese Funktion:
dim $bitmap[13][$data[12][4]+$data[0][4]+$data[1][4]+$data[2][4]+$data[3][4]+$data[4][4]+$data[5][4]+$data[6][4]+$data[7][4]+$data[8][4]+$data[9][4]+$data[10][4]+$data[11][4]+$data[12][4]+1]
For $l = 0 To 12 Step 1
$spr = $data[$l][2]/$data[$l][4] ;Länge eines Sprites
For $i = 0 To $data[$l][4] Step 1
$bitmap[$l][$i] = _GDIPlus_BitmapCloneArea($sprite, $data[$l][0]+$spr*$i, $data[$l][1], $spr, $data[$l][3])
next
Next
Diese Funktion ließt aus dieser Liste:
Spoiler anzeigen
; 0 = die
$data[0][0] = 157 ;x
$data[0][1] = 0 ;y
$data[0][2] = 204 ;l
$data[0][3] = 52 ;h
$data[0][4] = 4 ;n
; 1 = rechts unten
$data[1][0] = 52 ;x
$data[1][1] = 0 ;y
$data[1][2] = 52 ;l
$data[1][3] = 52 ;h
$data[1][4] = 1 ;n
; 2 = links unten
$data[2][0] = 0 ;x
$data[2][1] = 0 ;y
$data[2][2] = 52 ;l
$data[2][3] = 52 ;h
$data[2][4] = 1 ;n
; 3 = oben (Rechtsausrichtung)
$data[3][0] = 52 ;x
$data[3][1] = 0 ;y
$data[3][2] = 52 ;l
$data[3][3] = 52 ;h
$data[3][4] = 1 ;n
; 4 = oben (Linksausrichtung)
$data[4][0] = 0 ;x
$data[4][1] = 0 ;y
$data[4][2] = 52 ;l
$data[4][3] = 52 ;h
$data[4][4] = 1 ;n
; 5 = rechts oben
$data[5][0] = 52 ;x
$data[5][1] = 0 ;y
$data[5][2] = 52 ;l
$data[5][3] = 52 ;h
$data[5][4] = 1 ;n
; 6 = links oben
$data[6][0] = 0 ;x
$data[6][1] = 0 ;y
$data[6][2] = 52 ;l
$data[6][3] = 52 ;h
$data[6][4] = 1 ;n
; 7 = rechts
$data[7][0] = 0 ;x
$data[7][1] = 102 ;y
$data[7][2] = 416 ;l
$data[7][3] = 52 ;h
$data[7][4] = 8 ;n
; 8 = links
$data[8][0] = 0 ;x
$data[8][1] = 50 ;y
$data[8][2] = 416 ;l
$data[8][3] = 52 ;h
$data[8][4] = 8 ;n
; 9 = unten (Rechtsausrichtung)
$data[9][0] = 52 ;x
$data[9][1] = 0 ;y
$data[9][2] = 52 ;l
$data[9][3] = 52 ;h
$data[9][4] = 1 ;n
; 10 = unten (Linksausrichtung)
$data[10][0] = 0 ;x
$data[10][1] = 0 ;y
$data[10][2] = 52 ;l
$data[10][3] = 52 ;h
$data[10][4] = 1 ;n
; 11 = keine Bewegung (Linksausrichtung)
$data[11][0] = 0 ;x
$data[11][1] = 154 ;y
$data[11][2] = 260 ;l
$data[11][3] = 52 ;h
$data[11][4] = 5 ;n
; 12 = keine Bewegung (Rechtsausrichtung)
$data[12][0] = 0 ;x
$data[12][1] = 206 ;y
$data[12][2] = 260 ;l
$data[12][3] = 52 ;h
$data[12][4] = 5 ;n
Die Sprite-Positionen, mit der sie dann das Bild in Einzelbilder unter der Varbiable " $bitmap[$l][$i]" abspeichert.
Dies funktioniert auch super.
Problem:
Das Gesamtbild ist an manchen Stellen transparent. Die Sprites(Einzelbilder) jedoch nicht, die Stellen werden entweder schwarz oder grün angezeigt.
An der "_ResourceLoadImage(@scriptdir & "\gfx.dat","Teddy")"-Funkion liegt es nicht. Die läd die Bilder richtig.
Entweder bei:
- dem Abspeichern der Bilder(mit Gimp)
- dem Zerlegen des Bildes mit " _GDIPlus_BitmapCloneArea"
entsteht dieser Fehler.
Nun meine Frage: Kann man das umgehen.
Das zu ladene Bild, Script und die GFX.dat hängen an.