warum kann ich in diesem code keine gif-Dateien verwenden ??

Anfängerfragen zum Programmieren mit PureBasic.
Benutzeravatar
bobobo
jaAdmin
Beiträge: 3873
Registriert: 13.09.2004 17:48
Kontaktdaten:

Beitrag von bobobo »

@Kiffi
ist aber Platzsparend :) . .und auf Grund der Antworten da oben, waren die Fragen ja eh eher fragwürdig. :)

@Groudon

Ein gif ? gar nicht .. Wandel die gif zu einem BMP .. dann wuppt das

ergoogel Dir mal IRVANView .. kostet für privat nix und kann u.a.
alles mögliche an Bildformaten ineinander umwandeln. Auch Dein Gif.
‮pb aktuel 6.2 windoof aktuell und sowas von 10
Ich hab Tinnitus im Auge. Ich seh nur Pfeifen.
Benutzeravatar
Xaby
Beiträge: 2144
Registriert: 12.11.2005 11:29
Wohnort: Berlin + Zehdenick
Kontaktdaten:

Beitrag von Xaby »

Code: Alles auswählen

; Autor: Folker Linstedt
; Erstellt am: 28.06.2006 für Groudon
; Demo: JA (läuft mit der Demo von PB 4.0 unter Windows Vista Business)


Procedure MachHeld(Sprite.l,Text.s)
  CreateSprite(Sprite,32,32)
  StartDrawing(SpriteOutput(Sprite)) ; Violett
  Box(0,0,32,32,RGB(255,0,255))
  Circle(16,16,16,RGB(0,255,255))
  DrawText(13,8,Text,0,RGB(0,255,255))
  StopDrawing()
EndProcedure

Procedure MachBaum(Sprite.l)
  CreateSprite(Sprite,32,64)
  StartDrawing(SpriteOutput(Sprite))
  Box(0,0,32,64,RGB(255,0,255)) ; Violett
  Box(12,30,8,34,RGB(128,64,0)) ; Stamm 
  Circle(16,16,16,RGB(0,255,0)) ; Busch
  StopDrawing()
EndProcedure

Procedure MachBett(Sprite.l)
  CreateSprite(Sprite,64,32)
  StartDrawing(SpriteOutput(Sprite))
  Box(0,0,64,32,RGB(255,0,255)) ; Violett
  Box(0,0,4,32,RGB(255,128,64)) 
  Box(60,0,4,32,RGB(255,128,64)) 
  Box(0,20,64,4,RGB(255,128,64)) 
  StopDrawing()
EndProcedure  

Procedure MachSand(Sprite.l)
  CreateSprite(Sprite,32,32)
  StartDrawing(SpriteOutput(Sprite))
  Box(0,0,32,32,RGB(255,255,0)) 
  For j=0 To 140 ; Plot macht Fehler
    Box(Random(31),Random(31),1,1,RGB(120+Random(20),60+Random(20),Random(20)))  
  Next
  StopDrawing()
EndProcedure  


;MessageRequester("ANLEITUNG","Steuerung: Pfeiltasten",0) 
InitSprite() 
InitMouse() 
InitKeyboard() 

If OpenScreen(640,480,32,"Game") 
  
  
  TransparentSpriteColor(#PB_Default, RGB(255,0,255)) ; für alle Sprites
  
  ;LoadSprite(1,"hallo.bmp",0); Pfad ersetzen!! 
  MachHeld(2,"\/")
  MachHeld(3,"/\")
  MachHeld(4,">")
  MachHeld(5,"<")
  
  CreateSprite(6,32,32) ; Anzeige-Sprite
  
  ; Peter 
  MachBaum(10)                     ;das hier meine ich 
  MachBett(12)
  MachSand(14)
  
  
  
  figurX=100 ; StartProsition vom Held
  figurY=100
  
  CopySprite(3, 6 ,0 ) ; Damit Sprite 6 nicht leer ist
  
  Repeat 
    ClearScreen(0)
    
    ExamineMouse() 
    ExamineKeyboard() 
    
    
    DisplayTransparentSprite(10,100,400-64) ; Baum
    DisplayTransparentSprite(10,200,400-64) ; Baum
    DisplayTransparentSprite(10,400,400-64) ; Baum
    
    DisplayTransparentSprite(12,300,400-32) ; Bett
    For i=0 To 200
      DisplayTransparentSprite(14,i*32,400) ; Sand
    Next
    
    
    If KeyboardPushed(#PB_Key_Up ) 
      figurY-10 
      CopySprite(3, 6 ,0 ) 
    EndIf 
    
    If KeyboardPushed(#PB_Key_Down ) 
      figurY+10 
      CopySprite(2, 6 ,0 ) 
    EndIf 
    
    If KeyboardPushed(#PB_Key_Left ) 
      figurX-10 
      CopySprite(5, 6 ,0 ) 
    EndIf    
    
    If KeyboardPushed(#PB_Key_Right ) 
      figurX+10 
      CopySprite(4, 6 ,0 )    
    EndIf 
    
    DisplayTransparentSprite(6,figurX,figurY) 
    
    StartDrawing(ScreenOutput())
    DrawText(0,0,"Hallo")
    StopDrawing()
    FlipBuffers()          
    
  Until KeyboardPushed(#PB_Key_Escape) 
  CloseScreen()
  
EndIf
Ich nehme an, du wolltest eher was wie Pokemon machen oder Zelda.
Hatte keine Bilder da. Peter hab ich jetzt nicht erstellt.

Schau dir den Code mal an, wenn du Fragen dazu hast, gib Bescheid.

Die Sprite-Nummern musst du durch echte Zahlen ersetzen.

Wenn #Sprite gemeint ist, bekommt das Sprite eine "echte" Nummer.

#Sprite=1

DisplaySprite(#Sprite ...)

oder halt DisplaySprite(1, ....)

Konstanten kannst du mit Enumeration automatisch mit Zahlen versehen lassen.

Solltest deinen Konstanten (Variablen mit festen Werten) sinnvolle Namen geben. Also zum Beispiel:

#Baum = 10
#Sand = 14

Wird schon werden.

Gruß, Folker :allright:
Kinder an die Macht http://scratch.mit.edu/
Antworten