Ihr konntet mir bis jetzt leider noch nicht helfen, deshalb überlasse ich euch einfach mal den Code.
Code: Alles auswählen
; ################
; # #
; # Dreschen #
; # #
; ################
;
;
;****************************************************************************************************************************
; Windowsfenster erstellen
If OpenWindow(0, 312, 184, 400, 400,#PB_WINDOW_SYSTEMMENU,"Dreschen")
LoadImage(5, "Grafik\Bild.bmp")
CreateGadgetList(WindowID())
ImageGadget (0, 23, 10, 352, 260, UseImage(5))
ButtonGadget(1, 140, 280, 120, 30, "Spiel Starten")
ButtonGadget(2, 140, 350, 120, 30, "Verlassen" )
Repeat
EventID.l = WaitWindowEvent()
If EventID = #PB_EventGadget
Select EventGadgetID()
Case 1
Goto Start
Case 2
EventID = #PB_EventCloseWindow
EndSelect
EndIf
Until EventID = #PB_EventCloseWindow
EndIf
End
;****************************************************************************************************************************
; Vollbildfenster erstellen
Start:
If InitSprite() = 0
MessageRequester("Fehler", "Konnte dx nicht finden", 0)
EndIf
If InitKeyboard() = 0
MessageRequester("Fehler", "Konnte dx nicht finden", 0)
EndIf
If OpenScreen(800, 600, 32, "Dreschen")
Else
MessageRequester("Fehler", "Konnte kein Vollbild erstellen", 0)
EndIf
Anfang:
;****************************************************************************************************************************
; Grafiken laden, Koordinaten
LoadSprite(12, "Grafik\Gewonnen.bmp", 0)
LoadSprite(15, "Grafik\Verloren.bmp", 0)
LoadSprite(19, "Grafik\Ziel.bmp", 0)
LoadSprite(25, "Grafik\Stein_1.bmp", 0)
LoadSprite(32, "Grafik\Stein_2.bmp", 0)
For car = 1 To 4
LoadSprite(car, "Grafik\Maschine_"+Str(car)+".bmp", 0)
Next
LoadSprite(back,"Grafik\Feld_1.bmp", 0)
car = 0
position_x = 350
position_y = 450
aa = 0
ab = 50
ac = 100
ad = 150
ae = 200
af = 250
ag = 300
ah = 350
ai = 400
aj = 450
ak = 500
al = 550
am = 600
an = 650
ao = 700
ap = 750
aq = 800
ba = 500
bb = 450
bc = 300
bd = 200
be = 100
bf = 50
bg = -100
bh = -150
bi = -200
bj = -300
bk = -350
bl = -400
bn = -500
bm = -550
bo = -600
bp = -650
bq = -700
br = -750
bs = -800
bt = -850
bu = -950
bv = -1000
bw = -1050
bx = -1150
by = -1250
bz = -1300
ca = -1350
cb = -1400
cc = -1450
cd = -1500
ce = -1550
cf = -1650
cg = -1750
ch = -1850
ci = -1900
cj = -1950
ck = -2000
cl = -2050
cm = -2100
cn = -2150
co = -2300
cp = -2350
cq = -2400
cr = -2500
cs = -2550
ct = -2600
cu = -2650
cv = -2700
cw = -2850
cx = -2900
cy = -2950
cz = -3000
da = -3100
db = -3200
dc = -3300
dd = -3350
de = -3450
df = -3500
dg = -3550
dh = -3650
di = -3700
dj = -3750
dk = -3850
dl = -4000
dm = -4100
Repeat
; Hintergrund erstellen
For BackX = 0 To 800 Step 72
For BackY = -72 To 600 Step 72
DisplaySprite(back, BackX, BackY + ScrollY)
Next
Next
If ScrollDelay = 0
ScrollY + 1
ScrollDelay = 0
Else
ScrollDelay - 1
EndIf
If ScrollY > 71
ScrollY = 0
EndIf
Gosub Stein
Gosub Steine
Gosub Kollision
Gosub Ziel
ba + 1
bb + 1
bc + 1
bd + 1
be + 1
bf + 1
bg + 1
bh + 1
bi + 1
bj + 1
bk + 1
bl + 1
bm + 1
bn + 1
bo + 1
bp + 1
bq + 1
br + 1
bs + 1
bt + 1
bu + 1
bv + 1
bw + 1
bx + 1
by + 1
bz + 1
ca + 1
cb + 1
cc + 1
cd + 1
ce + 1
cf + 1
cg + 1
ch + 1
ci + 1
cj + 1
ck + 1
cl + 1
cm + 1
cn + 1
co + 1
cp + 1
cq + 1
cr + 1
cs + 1
ct + 1
cu + 1
cv + 1
cw + 1
cx + 1
cy + 1
cz + 1
da + 1
db + 1
dc + 1
dd + 1
de + 1
df + 1
dg + 1
dh + 1
di + 1
dj + 1
dk + 1
dl + 1
dm + 1
; Animation des Mähdreschers
If car = 4
car = 1
EndIf
car + 1
DisplayTransparentSprite(car, position_x, position_y)
FlipBuffers()
;****************************************************************************************************************************
; Tastenabfrage
ExamineKeyboard()
If KeyboardPushed(#PB_Key_Right)
position_x + 2
If position_x > 700
position_x = 700
EndIf
EndIf
If KeyboardPushed(#PB_Key_Left)
position_x - 2
If position_x < 0
position_x = 0
EndIf
EndIf
If KeyboardPushed(#PB_Key_Up)
position_y - 1
If position_x < 0
position_y = 0
EndIf
EndIf
If KeyboardPushed(#PB_Key_Down)
position_y + 1
If position_y > 450
position_y = 450
EndIf
EndIf
If KeyboardPushed(#PB_Key_F2)
Goto Anfang
EndIf
If KeyboardPushed(#PB_Key_Escape)
End
EndIf
ForEver
;****************************************************************************************************************************
; Erstellen der Steine
Stein:
DisplayTransparentSprite(25, am, ba)
DisplayTransparentSprite(25, af, bb)
DisplayTransparentSprite(25, ab, bd)
DisplayTransparentSprite(25, ai, be)
DisplayTransparentSprite(25, ap, bf)
DisplayTransparentSprite(25, ag, bi)
DisplayTransparentSprite(25, aa, bj)
DisplayTransparentSprite(25, ad, bk)
DisplayTransparentSprite(25, an, bm)
DisplayTransparentSprite(25, ap, bh)
DisplayTransparentSprite(25, ak, bo)
DisplayTransparentSprite(25, ah, bp)
DisplayTransparentSprite(25, ai, bs)
DisplayTransparentSprite(25, ad, bt)
DisplayTransparentSprite(25, ap, bu)
DisplayTransparentSprite(25, ai, bv)
DisplayTransparentSprite(25, ai, bz)
DisplayTransparentSprite(25, af, cb)
DisplayTransparentSprite(25, ab, cc)
DisplayTransparentSprite(25, ad, ce)
DisplayTransparentSprite(25, ah, cf)
DisplayTransparentSprite(25, ap, ci)
DisplayTransparentSprite(25, af, ck)
DisplayTransparentSprite(25, aa, cl)
DisplayTransparentSprite(25, ah, cm)
DisplayTransparentSprite(25, ao, cm)
DisplayTransparentSprite(25, ah, cp)
DisplayTransparentSprite(25, ad, cs)
DisplayTransparentSprite(25, ag, cv)
DisplayTransparentSprite(25, ab, cw)
DisplayTransparentSprite(25, an, cw)
DisplayTransparentSprite(25, ak, cx)
DisplayTransparentSprite(25, ab, cy)
DisplayTransparentSprite(25, an, cz)
DisplayTransparentSprite(25, ae, da)
DisplayTransparentSprite(25, ai, db)
DisplayTransparentSprite(25, ap, db)
DisplayTransparentSprite(25, al, de)
DisplayTransparentSprite(25, af, df)
DisplayTransparentSprite(25, ab, dg)
DisplayTransparentSprite(25, aa, dh)
DisplayTransparentSprite(25, ak, di)
DisplayTransparentSprite(25, an, dj)
DisplayTransparentSprite(25, ac, dk)
DisplayTransparentSprite(25, ah, dl)
DisplayTransparentSprite(25, ap, dl)
Return
Steine:
DisplayTransparentSprite(32, ab, bb)
DisplayTransparentSprite(32, ao, bc)
DisplayTransparentSprite(32, al, bd)
DisplayTransparentSprite(32, ae, bf)
DisplayTransparentSprite(32, ao, bg)
DisplayTransparentSprite(32, ac, bh)
DisplayTransparentSprite(32, am, bi)
DisplayTransparentSprite(32, al, bl)
DisplayTransparentSprite(32, ac, bh)
DisplayTransparentSprite(32, ab, bq)
DisplayTransparentSprite(32, an, br)
DisplayTransparentSprite(32, ae, bw)
DisplayTransparentSprite(32, ah, bx)
DisplayTransparentSprite(32, am, bx)
DisplayTransparentSprite(32, ab, by)
DisplayTransparentSprite(32, ao, ca)
DisplayTransparentSprite(32, aj, cd)
DisplayTransparentSprite(32, ao, cf)
DisplayTransparentSprite(32, ab, cg)
DisplayTransparentSprite(32, ad, ch)
DisplayTransparentSprite(32, ak, cj)
DisplayTransparentSprite(32, ac, cn)
DisplayTransparentSprite(32, ac, co)
DisplayTransparentSprite(32, am, co)
DisplayTransparentSprite(32, ao, cp)
DisplayTransparentSprite(32, ak, cq)
DisplayTransparentSprite(32, ak, cr)
DisplayTransparentSprite(32, an, cs)
DisplayTransparentSprite(32, ab, ct)
DisplayTransparentSprite(32, af, cu)
DisplayTransparentSprite(32, ae, cw)
DisplayTransparentSprite(32, af, cz)
DisplayTransparentSprite(32, al, da)
DisplayTransparentSprite(32, ab, db)
DisplayTransparentSprite(32, ae, dc)
DisplayTransparentSprite(32, an, dd)
DisplayTransparentSprite(32, aj, df)
DisplayTransparentSprite(32, af, di)
DisplayTransparentSprite(32, af, dk)
DisplayTransparentSprite(32, al, dk)
DisplayTransparentSprite(32, ad, dl)
DisplayTransparentSprite(32, al, dl)
Return
Ziel:
DisplaySprite(19, aa, dm)
Return
Kollision:
If SpritePixelCollision(car, position_x, position_y, 25, am, ba): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 25, af, bb): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 25, ab, bd): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 25, ai, be): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 25, ap, bf): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 25, ag, bi): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 25, aa, bj): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 25, ad, bk): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 25, an, bm): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 25, ap, bh): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 25, ak, bo): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 25, ah, bp): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 25, ai, bs): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 25, ad, bt): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 25, ap, bu): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 25, ai, bv): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 25, ai, bz): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 25, af, cb): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 25, ab, cc): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 25, ad, ce): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 25, ah, cf): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 25, ap, ci): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 25, af, ck): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 25, aa, cl): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 25, ah, cm): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 25, ao, cm): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 25, ah, cp): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 25, ad, cs): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 25, ag, cv): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 25, ab, cw): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 25, an, cw): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 25, ak, cx): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 25, ab, cy): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 25, an, cz): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 25, ae, da): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 25, ai, db): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 25, ap, db): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 25, al, de): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 25, af, df): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 25, ab, dg): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 25, aa, dh): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 25, ak, di): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 25, an, dj): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 25, ac, dk): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 25, ah, dl): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 25, ap, dl): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 32, ab, bb): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 32, ao, bc): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 32, al, bd): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 32, ae, bf): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 32, ao, bg): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 32, ac, bh): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 32, am, bi): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 32, al, bl): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 32, ac, bh): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 32, ab, bq): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 32, an, br): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 32, ae, bw): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 32, ah, bx): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 32, am, bx): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 32, ab, by): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 32, ao, ca): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 32, aj, cd): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 32, ao, cf): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 32, ab, cg): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 32, ad, ch): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 32, ak, cj): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 32, ac, cn): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 32, ac, co): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 32, am, co): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 32, ao, cp): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 32, ak, cq): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 32, ak, cr): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 32, an, cs): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 32, ab, ct): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 32, af, cu): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 32, ae, cw): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 32, af, cz): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 32, al, da): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 32, ab, db): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 32, ae, dc): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 32, an, dd): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 32, aj, df): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 32, af, di): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 32, af, dk): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 32, al, dk): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 32, ad, dl): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 32, al, dl): Goto Schleife: EndIf
If SpritePixelCollision(car, position_x, position_y, 19, aa, dm): Goto Schleifen: EndIf
Return
Schleife:
DisplaySprite(15, 250, 210)
Return
Schleifen:
DisplaySprite(12, 250, 210)
Return
Return
bis die Tasten Esc (Beenden) oder F2 (neues Spiel) gedrückt werden.