Purebasic: Tipps und Tricks

Aus Wikibooks

Wechseln zu: Navigation, Suche

Zurück


[Bearbeiten] Code nicht mitkompilieren

Manchmal hat man das Problem, dass man sehr viel Code auskommentieren muss, weil man ihn vielleicht später mal noch gebrauchen kann (zum Beispiel zum Debuggen, Funktionen checken, usw.). Man kann sich die viele Mühe mittels

Compilerif 0=1
nicht gebrauchter code
...
Compilerendif

sparen, da Compilerif 0=1 immer falsch ergibt und dieser Code so nie vom Compiler in das fertige Programm eingebunden wird.

==================================================================
--------- Simple Spritessteuerung ------------
;===========  Spritessteuerung =========
 #FensterNr = 0
  #Auf       =100
  #Ab        =101
  #Rechts  =103
  #Links    =102
R=203:G=201:Bl=201 ;Bildschirmfarbe
Fensterbreite=400
Fensterhoehe =300
b=24       ;Breite des Sprite
h=24       ;Höhe des Sprite
InitSprite()
 
 ;-----------------  Fenster-Erzeugen  -------------------
OpenWindow(#FensterNr, 0, 0, Fensterbreite, Fensterhoehe, #PB_Window_MinimizeGadget| #PB_Window_ScreenCentered, "Erstes Window-Fenster") 
   OpenWindowedScreen(WindowID(), 0, 0, Fensterbreite, Fensterhoehe, 0, 0, 0) 
;---------------Cursor-Tasten hizufügen--------------------
If CreateGadgetList(WindowID())
     AddKeyboardShortcut(#FensterNr,#PB_Shortcut_Up,#Auf)
     AddKeyboardShortcut(#FensterNr,#PB_Shortcut_Down,#Ab)   
     AddKeyboardShortcut(#FensterNr,#PB_Shortcut_Right,#Rechts)         
     AddKeyboardShortcut(#FensterNr,#PB_Shortcut_Left,#Links)     
EndIf       
;=====================  Sprites ==== Viereck =============
    
          CreateSprite(1, b, h)    ;===  Speicher resevieren ==
          StartDrawing(SpriteOutput(1))
              Box(0, 0, b, h, RGB(61, 104, 194))   ;box zeichnen
          StopDrawing()
  ;===============   Haupt-Warte-Schleife  ===============
Repeat 
 EventID=WindowEvent()
  ClearScreen(R,G,Bl)
  If EventID=#PB_Event_Menu
 ;---------------   Steuerung  --------------
    TastenEvent=EventMenuID()
     If TastenEvent=#Auf   : ypos=ypos-5: EndIf     ;Auf
     If TastenEvent=#Ab    : ypos=ypos+5: EndIf     ;Ab  
     If TastenEvent=#Rechts: xpos=xpos+5: EndIf     ;rechts
     If TastenEvent=#Links : xpos=xpos-5: EndIf     ;links   
   EndIf 
;--------------------  Randbegrenzung  ------------------
     If ypos < 0:ypos=0:EndIf 
     If xpos > Fensterbreite-b:xpos=Fensterbreite-b:EndIf
     If xpos < 0:xpos=0:EndIf
     If ypos > Fensterhoehe-h:ypos=Fensterhoehe-h:EndIf
  
;---------------  Anzeige und Position der Sprites  -------------- 
    DisplaySprite(1,xpos,ypos)     
 FlipBuffers() ;Umschalten des Bildschirms
Until EventID=#PB_Event_CloseWindow
End


Zurück

Persönliche Werkzeuge