Probleme mit animation

Anfängerfragen zum Programmieren mit PureBasic.
Raphi
Beiträge: 175
Registriert: 06.08.2009 16:32
Computerausstattung: Intel Core 2 Duo Processor (2 x 3 Ghz), ATI Radeon HD 4870 (512 MB), 4 GB DDR-2 Ram, Microsoft Windows 7 Ultimate, MBox 2 Mini Soundkarte

Probleme mit animation

Beitrag von Raphi »

Hallo leute ich hab mal wieder ein problem mit der animaion

Code: Alles auswählen

;Initialisierung
InitSprite()
InitMouse()
InitKeyboard()
;Globale
Global x=10
Global y=10
Global sx=500
Global sy=350
Global mx=550
Global my=370
;Konstante
#ges=1
OpenScreen(1024,768,32,"Spritebewegung");Öffnet den Screen

;Laden der Sprites
For xg = 1  To 9
 LoadSprite(10+xg,"Figuren\Female Paladin\FP_000"+Str(xg) + ".bmp",0)
 TransparentSpriteColor(10+xg,RGB(0,0,128))
Next
For xg = 10  To 72
 LoadSprite(10+xg,"Figuren\Female Paladin\FP_00"+Str(xg) + ".bmp",0)
 TransparentSpriteColor(10+xg,RGB(0,0,128))
Next 

;Erstellen des Mauspunktes
CreateSprite(1,4,4)
  StartDrawing(SpriteOutput(1))
    Circle(2,2,2,RGB(0,100,200))
  StopDrawing()
  TransparentSpriteColor(1,0) 

 ;Die Hauptschleife
Repeat
 
  ExamineMouse(); Maus Aktivieren
  ExamineKeyboard(); Keyboard Aktivieren
 
  ClearScreen(0);Screen Löschen
 
DisplayTransparentSprite(1,MouseX(),MouseY());der Mauspunkt



If x=0 And y=0; überbrüfen ob Graphik das Zile erreicht hat
 If MouseButton(#PB_MouseButton_Left);überprüft ob die Linke Maustaste gedrückt wurde
   mx=  MouseX() ; gleichsetzen mit Maus
   my=   MouseY()
   x = mx;gleichsetztung Mauskoordinate X
  y = my;gleichsetztung Mauskoordinate Y
   ; gleichsetzen mit Maus
  Else 
  DisplayTransparentSprite(11,sx,sy); ansonsten bild anzeigen
  EndIf
Else
  
 
 x = mx;gleichsetztung Mauskoordinate X
 y = my;gleichsetztung Mauskoordinate Y
 
 
  x - sx; subtrahieren ZielX - StandX
 y - sy ; subtrahiern ZielY- StandY
 
 
 ;Richtungsüberprüfung
 If x<0 And Y=0
    DisplayTransparentSprite(13,sx,sy) 
    sx-#ges
 ;2
 ElseIf x<0 And y>0
    DisplayTransparentSprite(12,sx,sy) 
    sx-#ges
    sy+#ges
 ;3
 ElseIf x=0 And y>0
    DisplayTransparentSprite(11,sx,sy) 
    sy+#ges
 ;4
 ElseIf x>0 And y>0
    DisplayTransparentSprite(18,sx,sy) 
    sx+#ges
    sy+#ges
 ;5
 ElseIf x>0 And y=0
    DisplayTransparentSprite(17,sx,sy) 
    sx+#ges
 ;6
 ElseIf x>0 And y<0
    DisplayTransparentSprite(16,sx,sy) 
    sx+#ges
    sy-#ges
 ;7
 ElseIf x=0 And y<0
    DisplayTransparentSprite(15,sx,sy) 
    sy-#ges
 ;8
 ElseIf x<0 And y<0
    DisplayTransparentSprite(14,sx,sy) 
    sx-#ges
    sy-#ges
 
 EndIf
 
 EndIf
 
FlipBuffers();Vertauscht die Buffer 

Until KeyboardPushed(#PB_Key_Escape)
eigenlich soll die graphik sich jetzt drehen und dorthin "schweben" wo ich hindrücke .Aber sie bleibt auf dem gleichen fleck?

Edit:

So hier ist der (fast ganz) fertige code.
Funktioniert soweit, bloß das ich die Graphiken noch änern muss!
(Männel dreht sich in die falsche richtung!)

Edit2:

So jetzt isser ganz fertig!
Das einzige was nicht geht ist da männel schneller zu machen.
(weil dann etwas anderes im Code nicht Hinnhaut)
Zuletzt geändert von Raphi am 20.08.2009 18:58, insgesamt 5-mal geändert.
Benutzeravatar
Kurzer
Beiträge: 1617
Registriert: 25.04.2006 17:29
Wohnort: Nähe Hamburg

Beitrag von Kurzer »

Hallo leute ich hab mal wieder ein problem mit der animaion
Stimmt.

Allerdings bekomme ich unter 4.31 eine Fehlermeldung, daß ein Sprite nicht initialisiert wäre.
"Never run a changing system!" | "Unterhalten sich zwei Alleinunterhalter... Paradox, oder?"
PB 6.12 x64, OS: Win 11 24H2 x64, Desktopscaling: 150%, CPU: I7 12700 H, RAM: 32 GB, GPU: Intel(R) Iris(R) Xe Graphics | NVIDIA GeForce RTX 3070
Useralter in 2025: 57 Jahre.
Raphi
Beiträge: 175
Registriert: 06.08.2009 16:32
Computerausstattung: Intel Core 2 Duo Processor (2 x 3 Ghz), ATI Radeon HD 4870 (512 MB), 4 GB DDR-2 Ram, Microsoft Windows 7 Ultimate, MBox 2 Mini Soundkarte

Beitrag von Raphi »

Is doch logisch, du hast die sprites ja nich auf deinem computer
Zuletzt geändert von Raphi am 20.08.2009 16:55, insgesamt 1-mal geändert.
Raphi
Beiträge: 175
Registriert: 06.08.2009 16:32
Computerausstattung: Intel Core 2 Duo Processor (2 x 3 Ghz), ATI Radeon HD 4870 (512 MB), 4 GB DDR-2 Ram, Microsoft Windows 7 Ultimate, MBox 2 Mini Soundkarte

Beitrag von Raphi »

Du kannst auch einfach Figuren\Male Barbar\MB einsetzen und meinen link

Dateien.zip
zugreifen
Benutzeravatar
STARGÅTE
Kommando SG1
Beiträge: 7031
Registriert: 01.11.2005 13:34
Wohnort: Glienicke
Kontaktdaten:

Beitrag von STARGÅTE »

ich verstehe garnicht was die "simmlosen" Proceduren da sollen:

Code: Alles auswählen

Procedure X_() 
If 0>x 
EndIf 
EndProcedure 
Hat keinen Rückgarbewert (ProcedurerReturn) bzw. 0

wie soll dann eine vernünftige Abfrage unten zu standen kommen ?`

Code: Alles auswählen

If X_() And Y=0 
    DisplayTransparentSprite(11,sx,sy) 
    sx-#ges 
 EndIf 
die wird immer Falsch sein!

Baue das If 0>x doch gleich an der stelle ein wo es hingehört
PB 6.01 ― Win 10, 21H2 ― Ryzen 9 3900X, 32 GB ― NVIDIA GeForce RTX 3080 ― Vivaldi 6.0 ― www.unionbytes.de
Aktuelles Projekt: Lizard - Skriptsprache für symbolische Berechnungen und mehr
Benutzeravatar
Kurzer
Beiträge: 1617
Registriert: 25.04.2006 17:29
Wohnort: Nähe Hamburg

Beitrag von Kurzer »

Raphi hat geschrieben:Is doch logisch, du hast die spites ja nich auf deinem computer
Hach, jetzt wo Du es sagst... Mist aber auch.
Warte, ich zeichne mir jetzt einfach mal 72 Sprites, damit ich Deinen code ausprobieren kann...
"Never run a changing system!" | "Unterhalten sich zwei Alleinunterhalter... Paradox, oder?"
PB 6.12 x64, OS: Win 11 24H2 x64, Desktopscaling: 150%, CPU: I7 12700 H, RAM: 32 GB, GPU: Intel(R) Iris(R) Xe Graphics | NVIDIA GeForce RTX 3070
Useralter in 2025: 57 Jahre.
Benutzeravatar
Mok
BotHunter
Beiträge: 1484
Registriert: 26.12.2005 14:14
Computerausstattung: MSI GX780R
Intel Core i5-2410M
Nvidia GT 555M
Windows 7 Home Premium 64 bit
Wohnort:   

Beitrag von Mok »

Kurzer hat geschrieben:
Raphi hat geschrieben:Is doch logisch, du hast die spites ja nich auf deinem computer
Hach, jetzt wo Du es sagst... Mist aber auch.
Warte, ich zeichne mir jetzt einfach mal 72 Sprites, damit ich Deinen code ausprobieren kann...
Da sind bei dir wohl 0,5 Promille Blut im Alkohol
Win 7 Home Premium 64 bit | PureBasic 5.20 - x86 und x86-64 | Firefox [aktuelle stable-Version hier einfügen]
"Jeder macht irgendwann mal Fehler, darum gibt's auch Bleistifte mit Radiergummi." --Carl
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

yo, jetzt gehts mit den sarkastischen Antworten los.... :mrgreen:


@Raphi

reiß dich ab jetzt einfach zusammen, poste nicht jeden Furz und nicht auch noch unvollständig.
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Benutzeravatar
NicTheQuick
Ein Admin
Beiträge: 8809
Registriert: 29.08.2004 20:20
Computerausstattung: Ryzen 7 5800X, 64 GB DDR4-3200
Ubuntu 24.04.2 LTS
GeForce RTX 3080 Ti
Wohnort: Saarbrücken

Beitrag von NicTheQuick »

Sorry, wollte nur schnell schreiben, dass ich grad sehr viel Spaß habe. :lol:
Raphi
Beiträge: 175
Registriert: 06.08.2009 16:32
Computerausstattung: Intel Core 2 Duo Processor (2 x 3 Ghz), ATI Radeon HD 4870 (512 MB), 4 GB DDR-2 Ram, Microsoft Windows 7 Ultimate, MBox 2 Mini Soundkarte

Beitrag von Raphi »

Jo, lag an den Proceduren Danke <)
Antworten