Code: Alles auswählen
InitSprite() ; Initialisiert die Sprite Umgebung, womit wir sprite-Befehle nutzen können
InitKeyboard() ; Das selbe nur initialisiert es die Tastatur, die wir nun auch verwenden können
playerX.l = 250
playerY.l = 200
kameraX.l = 5
kameraY.l = 5
TastaturObenRechts.l = 0
Enumeration
;window
#window_1
; Sprites
#Sprite_Mage01SchrittLinks
#Sprite_Mage01SchrittRechts
#Sprite_Mage02
#Sprite_Player
#Sprite_Player4
#Sprite_Mage067
#Sprite_Mage0532
; Umgebung
#Sprite_Grass01
EndEnumeration
; char allgemein
HP.l
AP.l
PROFESSION.l
EXP.l
Level.l
Level = 1
If Level = 1
HP = 20
AP = 30
EndIf
If Level = Level + 1 And PROFESSION = Mage
HP + 15
AP + 30
EndIf
; Mage 01
;schritt
SchrittMage01.l = #Sprite_Mage01SchrittLinks
SchrittMage02.l = #Sprite_Mage01SchrittRechts
AnimMageVonVorneSchritt.l = SchrittMage01
msPerFrame.l = 20
ActTimer = ElapsedMilliseconds() + msPerFrame
OpenWindow(#window_1,0,0,500,400,#PB_Window_SystemMenu | #PB_Window_MinimizeGadget | #PB_Window_BorderLess | #PB_Window_ScreenCentered, "Mage of Fear")
OpenWindowedScreen(WindowID(),0,0,500,400,0,0,0)
; Sprite Gecatche
CatchSprite(#Sprite_Mage01SchrittLinks, ?Sprite_MageVonVorneSchrittLinks)
CatchSprite(#Sprite_Mage01SchrittRechts, ?Sprite_MageVonVorneSchrittRechts)
CatchSprite(#Sprite_Grass01, ?Sprite_Grass01)
TransparentSpriteColor(#Sprite_Mage01SchrittLinks,255,0,255)
TransparentSpriteColor(#Sprite_Mage01SchrittRechts,255,0,255)
; Main
Repeat
StartDrawing(WindowOutput())
DrawingMode(1)
Locate(10,10)
FrontColor(0,0,0)
DrawText("HP: "+ Str(HP))
StopDrawing()
ClearScreen(255,0,255)
ExamineKeyboard()
DisplaySprite(#Sprite_Grass01, 0-kameraX,0-kameraY)
DisplaySprite(#Sprite_Grass01, 50-kameraX,0-kameraY)
DisplaySprite(#Sprite_Grass01, 100-kameraX,0-kameraY)
DisplaySprite(#Sprite_Grass01, 150-kameraX,0-kameraY)
DisplaySprite(#Sprite_Grass01, 200-kameraX,0-kameraY)
DisplaySprite(#Sprite_Grass01, 250-kameraX,0-kameraY)
DisplaySprite(#Sprite_Grass01, 300-kameraX,0-kameraY)
DisplaySprite(#Sprite_Grass01, 350-kameraX,0-kameraY)
DisplaySprite(#Sprite_Grass01, 400-kameraX,0-kameraY)
DisplaySprite(#Sprite_Grass01, 450-kameraX,0-kameraY)
DisplaySprite(#Sprite_Grass01, 0-kameraX,50-kameraY)
DisplaySprite(#Sprite_Grass01, 50-kameraX,50-kameraY)
DisplaySprite(#Sprite_Grass01, 100-kameraX,50-kameraY)
DisplaySprite(#Sprite_Grass01, 150-kameraX,50-kameraY)
DisplaySprite(#Sprite_Grass01, 200-kameraX,50-kameraY)
DisplaySprite(#Sprite_Grass01, 250-kameraX,50-kameraY)
DisplaySprite(#Sprite_Grass01, 300-kameraX,50-kameraY)
DisplaySprite(#Sprite_Grass01, 350-kameraX,50-kameraY)
DisplaySprite(#Sprite_Grass01, 400-kameraX,50-kameraY)
DisplaySprite(#Sprite_Grass01, 450-kameraX,50-kameraY)
DisplaySprite(#Sprite_Grass01, 0-kameraX,100-kameraY)
DisplaySprite(#Sprite_Grass01, 50-kameraX,100-kameraY)
DisplaySprite(#Sprite_Grass01, 100-kameraX,100-kameraY)
DisplaySprite(#Sprite_Grass01, 150-kameraX,100-kameraY)
DisplaySprite(#Sprite_Grass01, 200-kameraX,100-kameraY)
DisplaySprite(#Sprite_Grass01, 250-kameraX,100-kameraY)
DisplaySprite(#Sprite_Grass01, 300-kameraX,100-kameraY)
DisplaySprite(#Sprite_Grass01, 350-kameraX,100-kameraY)
DisplaySprite(#Sprite_Grass01, 400-kameraX,100-kameraY)
DisplaySprite(#Sprite_Grass01, 450-kameraX,100-kameraY)
DisplaySprite(#Sprite_Grass01, 0-kameraX,150-kameraY)
DisplaySprite(#Sprite_Grass01, 50-kameraX,150-kameraY)
DisplaySprite(#Sprite_Grass01, 100-kameraX,150-kameraY)
DisplaySprite(#Sprite_Grass01, 150-kameraX,150-kameraY)
DisplaySprite(#Sprite_Grass01, 200-kameraX,150-kameraY)
DisplaySprite(#Sprite_Grass01, 250-kameraX,150-kameraY)
DisplaySprite(#Sprite_Grass01, 300-kameraX,150-kameraY)
DisplaySprite(#Sprite_Grass01, 350-kameraX,150-kameraY)
DisplaySprite(#Sprite_Grass01, 400-kameraX,150-kameraY)
DisplaySprite(#Sprite_Grass01, 450-kameraX,150-kameraY)
DisplaySprite(#Sprite_Grass01, 0-kameraX,200-kameraY)
DisplaySprite(#Sprite_Grass01, 50-kameraX,200-kameraY)
DisplaySprite(#Sprite_Grass01, 100-kameraX,200-kameraY)
DisplaySprite(#Sprite_Grass01, 150-kameraX,200-kameraY)
DisplaySprite(#Sprite_Grass01, 200-kameraX,200-kameraY)
DisplaySprite(#Sprite_Grass01, 250-kameraX,200-kameraY)
DisplaySprite(#Sprite_Grass01, 300-kameraX,200-kameraY)
DisplaySprite(#Sprite_Grass01, 350-kameraX,200-kameraY)
DisplaySprite(#Sprite_Grass01, 400-kameraX,200-kameraY)
DisplaySprite(#Sprite_Grass01, 450-kameraX,200-kameraY)
DisplaySprite(#Sprite_Grass01, 0-kameraX,250-kameraY)
DisplaySprite(#Sprite_Grass01, 50-kameraX,250-kameraY)
DisplaySprite(#Sprite_Grass01, 100-kameraX,250-kameraY)
DisplaySprite(#Sprite_Grass01, 150-kameraX,250-kameraY)
DisplaySprite(#Sprite_Grass01, 200-kameraX,250-kameraY)
DisplaySprite(#Sprite_Grass01, 250-kameraX,250-kameraY)
DisplaySprite(#Sprite_Grass01, 300-kameraX,250-kameraY)
DisplaySprite(#Sprite_Grass01, 350-kameraX,250-kameraY)
DisplaySprite(#Sprite_Grass01, 400-kameraX,250-kameraY)
DisplaySprite(#Sprite_Grass01, 450-kameraX,250-kameraY)
DisplaySprite(#Sprite_Grass01, 0-kameraX,300-kameraY)
DisplaySprite(#Sprite_Grass01, 50-kameraX,300-kameraY)
DisplaySprite(#Sprite_Grass01, 100-kameraX,300-kameraY)
DisplaySprite(#Sprite_Grass01, 150-kameraX,300-kameraY)
DisplaySprite(#Sprite_Grass01, 200-kameraX,300-kameraY)
DisplaySprite(#Sprite_Grass01, 250-kameraX,300-kameraY)
DisplaySprite(#Sprite_Grass01, 300-kameraX,300-kameraY)
DisplaySprite(#Sprite_Grass01, 350-kameraX,300-kameraY)
DisplaySprite(#Sprite_Grass01, 400-kameraX,300-kameraY)
DisplaySprite(#Sprite_Grass01, 450-kameraX,300-kameraY)
DisplaySprite(#Sprite_Grass01, 0-kameraX,350-kameraY)
DisplaySprite(#Sprite_Grass01, 50-kameraX,350-kameraY)
DisplaySprite(#Sprite_Grass01, 100-kameraX,350-kameraY)
DisplaySprite(#Sprite_Grass01, 150-kameraX,350-kameraY)
DisplaySprite(#Sprite_Grass01, 200-kameraX,350-kameraY)
DisplaySprite(#Sprite_Grass01, 250-kameraX,350-kameraY)
DisplaySprite(#Sprite_Grass01, 300-kameraX,350-kameraY)
DisplaySprite(#Sprite_Grass01, 350-kameraX,350-kameraY)
DisplaySprite(#Sprite_Grass01, 400-kameraX,350-kameraY)
DisplaySprite(#Sprite_Grass01, 450-kameraX,350-kameraY)
DisplayTransparentSprite(AnimMageVonVorneSchritt,playerX,playerY)
If KeyboardPushed(#PB_Key_Right)
playerX + 1
kameraX + 2
EndIf
If KeyboardPushed(#PB_Key_Up)
playerY - 1
kameraY - 2
EndIf
If KeyboardPushed(#PB_Key_Down)
AnimMageVonVorneSchritt + 1
If AnimMageVonVorneSchritt > SchrittMage02
AnimMageVonVorneSchritt = SchrittMage01
EndIf
playerY + 1
kameraY + 2
EndIf
If KeyboardPushed(#PB_Key_Left)
playerX - 1
kameraX - 2
EndIf
Repeat:Delay(100):Until ElapsedMilliseconds() > ActTimer
ActTimer + msPerFrame
FlipBuffers()
Until KeyboardPushed(#PB_Key_Escape)
; Sprite Sprungmarken
Sprite_MageVonVorneSchrittLinks: IncludeBinary "GFX\Mage01\MageVonVorneSchritt1.bmp"
Sprite_MageVonVorneSchrittRechts: IncludeBinary "GFX\Mage01\MageVonVorneSchritt2.bmp"
Sprite_Grass01: IncludeBinary "GFX\GrassTile01.bmp"