Rotationsproblem
Übersicht

MädeBetreff: Rotationsproblem |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Ja, hallo erstmal. ^^
ICh hab vor kurzem angefangen mit BB zu programmieren und hab schon ein wenig rum probiert. Nun stehe ich ovr einem Problem, für dessen Lösung ich wohl zu unerfahren bin. ^^" [syntax="bb"] Graphics 600, 600 SetBuffer BackBuffer () Global ball = LoadImage("ball.bmp") MaskImage ball, 255, 0, 255 Global levelorg=LoadImage("level.bmp") Global leben=3 Const rechts = 205, links = 203, unten=208, oben=200, space = 57 Global level_x=200 Global level_y=150 Global ball_x=300 Global ball_y=300 Dim level(359); Levelarray TFormFilter 0 For winkel = 0 To 359; Rotation in Grad 360mal level(winkel)=CopyImage(levelorg) RotateImage level(winkel),winkel MaskImage level(winkel),255,0,255 Print winkel Next winkel=0 Repeat Cls DrawLevel() DrawBall() MoveLevel() Collision() Flip Until KeyHit(1) End Function DrawBall() DrawImage ball, ball_x, ball_y; Ball zeichnen End Function Function DrawLevel() DrawImage level(winkel), level_x, level_y;Level zeichnen End Function Function MoveLevel(); Level bewegen If KeyDown(links) Then level_x=level_x-2 EndIf If KeyDown(rechts) Then level_x=level_x+2 EndIf If KeyDown(unten) Then level_y=level_y+2 EndIf If KeyDown(oben) Then level_y=level_y-2 EndIf If KeyDown(space) Then winkel=winkel+5 EndIf End Function Function Collision() If ImagesCollide(ball, ball_x, ball_y, frame0, level(winkel), level_x, level_y, frame0) Then ;Kollision abfragen level_x=200; x und y zurücksetzten level_y=150; leben=leben-1;Leben vermindern EndIf End Function[/syntax] Joa, also. Problem: Das Level sollte sich bei Druck auf Space drehen. Tut es aber nicht. Bewegen des Levels klappt. Warum? ^^ |
||
![]() |
Goodjee |
![]() Antworten mit Zitat ![]() |
---|---|---|
die variable winkel ist nocht global, deshalb gilt sie nur für die function movelevel | ||
"Ideen sind keine Coladosen, man kann sie nicht recyclen"-Dr. House
http://deeebian.redio.de/ http://goodjee.redio.de/ |
![]() |
Hubsi |
![]() Antworten mit Zitat ![]() |
---|---|---|
winkel ist nicht global und bleibt somit 0 ![]() ![]() |
||
Den ganzen Doag im Bett umanandflagga und iaz daherkema und meine Hendl`n fressn... |
HW |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Du solltest nach oder vor der For...Each Schleife die Variable "winkel" als Global markieren. Dann müsste es gehen.
Edit: Mist, zu spät. |
||
- Zuletzt bearbeitet von HW am Sa, Feb 04, 2006 13:15, insgesamt einmal bearbeitet
![]() |
Goodjee |
![]() Antworten mit Zitat ![]() |
---|---|---|
ha, ich war schneller, als ihr alle | ||
"Ideen sind keine Coladosen, man kann sie nicht recyclen"-Dr. House
http://deeebian.redio.de/ http://goodjee.redio.de/ |
Mäde |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Danke, hat geklappt. =) | ||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group