InitSprite()
InitMouse()
InitKeyboard()
InitSound()
InitSprite3D()
OpenScreen(800,600,32,"Kryz")

TransparentSpriteColor(-1,RGB(255,0,255))
LoadSprite(0,"Data\typ.bmp",0)
LoadSprite(1,"Data\typ2.bmp",0)
LoadSprite(2,"Data\fllor1.bmp",0)
LoadSprite(3,"Data\floor2.bmp",0)
LoadSprite(4,"Data\floor3.bmp",0)
LoadSprite(5,"Data\floor4.bmp",0)
LoadSprite(6,"Data\floor5.bmp",0)
LoadSprite(7,"Data\floor6.bmp",0)
LoadSprite(8,"Data\floor7.bmp",0)
LoadSprite(9,"Data\floor8.bmp",0)
LoadSprite(10,"Data\floor9.bmp",0)
LoadSprite(11,"Data\floor10.bmp",0)
LoadSprite(12,"Data\lava.bmp",#PB_Sprite_Texture)

LoadSprite(14,"Data\lava2.bmp",#PB_Sprite_Texture)
LoadSound(0,"Data\Dops.wav",0)
LoadSound(1,"Data\tot.wav",0)
LoadSound(2,"Data\musik.wav",0)
LoadSprite(15,"Data\hinter.bmp",0)
LoadSprite(16,"Data\mouse.bmp",0)
LoadSprite(17,"Data\stick.bmp",0)
LoadSprite(18,"Data\button.bmp",0)
LoadSprite(19,"Data\hintergrund.bmp",0)
LoadSprite(20,"Data\hintergrundcredits.bmp",0)
LoadSprite(21,"Data\hintergrundrecords.bmp",0)
LoadSprite(22,"Data\typrechtsoben.bmp",0)
LoadSprite(23,"Data\typlinkssoben.bmp",0)
LoadSprite(24,"Data\typrechts.bmp",0)

CreateSprite3D(0,12)
CreateSprite3D(1,14)

Structure Button
   X.w
   Y.w
   Bild.w
   Text.s
   Activated.w
   Nummer.w
   Clicked.w
EndStructure
Global NewList Button.Button()

Procedure setButton(X,Y,Bild,Text.s,Activated,Nummer)
   AddElement(Button())
   Button()\X=X
   Button()\Y=Y
   Button()\Bild=Bild
   Button()\Text=Text
   Button()\Activated=Activated
   Button()\Nummer=Nummer
EndProcedure 

Procedure showButton(Falio)
 SelectElement(Button(),Falio)
 If Button()\Activated=1
 ;If SelectElement(Button(),Falio)
   DisplayTransparentSprite(Button()\Bild,Button()\X,Button()\Y)
     If SpritePixelCollision(Button()\Bild,Button()\X,Button()\Y,16,MouseX(),MouseY())
     DisplayTransparentSprite(17,(SpriteWidth(Button()\Bild)+Button()\X)-60,Button()\Y+10)
     EndIf
     
  StartDrawing(ScreenOutput())
   If SpritePixelCollision(Button()\Bild,Button()\X,Button()\Y,16,MouseX(),MouseY())
   FrontColor(RGB(200,200,0))
   
   EndIf
   If SpritePixelCollision(Button()\Bild,Button()\X,Button()\Y,16,MouseX(),MouseY())=0
   FrontColor(RGB(0,0,0))
   EndIf
  
  DrawingMode(1)
  DrawText(Button()\X-(TextWidth(Button()\text)/2)+(SpriteWidth(Button()\Bild)/2),Button()\Y+((SpriteHeight(Button()\bild)/2)-(TextHeight(Button()\text)/2)),Button()\text)
  StopDrawing()
 ; Button()\Nummer = 1
;ElseIf SelectElement(Button(),Falio) = 0
;Button()\Nummer = 0
;EndIf
EndIf
EndProcedure

Procedure ShowButtons()
  ResetList(Button())
  While NextElement(Button())
     If Button()\activated=1
        ShowButton(ListIndex(Button()))
     EndIf
  Wend
EndProcedure

Procedure UpdateButtons()
   ResetList(Button())
   While NextElement(Button())
       If SpritePixelCollision(Button()\Bild,Button()\X,Button()\Y,16,MouseX(),MouseY())=1 And Button()\activated=1
       If MouseButton(1)
        button()\clicked = 2
       ElseIf button()\clicked = 2
        button()\clicked = 1
       Else
          Button()\clicked=0
       EndIf  
        
       Else
          Button()\clicked=0
       EndIf
   Wend
EndProcedure

Procedure.w ButtonClicked(nummer)





   SelectElement(Button(),nummer)

   If Button()\clicked=1
      ProcedureReturn 1
   Else
      ProcedureReturn 0
   EndIf
  
EndProcedure

Procedure.w ButtonActive(nummer)

   SelectElement(Button(),nummer)

      Button()\activated = 1

EndProcedure

Procedure.w ButtonDisActive(nummer)


   SelectElement(Button(),nummer)

      Button()\activated = 0
  
EndProcedure

Global x.f
Global y.f
Global y2.f
Global yspeed.f
Global best.f
Global bestfloor.f
Global floor.f
Global bestround.f
Global round.f
Global abc
Global let1.s
Global let2.s
Global let3.s
Global scorename1.s
Global scorename2.s
Global scorename3.s
Global floorname1.s
Global floorname2.s
Global floorname3.s
Global roundname1.s
Global roundname2.s
Global roundname3.s
Global wand.f
Global xa1.f
Global ya1.f
Global xa2.f
Global ya2.f
Global xa3.f
Global ya3.f
Global xa4.f
Global ya4.f
Global xa5.f
Global ya5.f
Global xa6.f
Global ya6.f
Global xa7.f
Global ya7.f
Global xa8.f
Global ya8.f
Global xspeed.f

setbutton(20,200,18,"Start Game",0,0)
setbutton(470,500,18,"Good Bye!",0,1)
setbutton(320,400,18,"Credits",0,2)
setbutton(170,300,18,"Records",0,3)
setbutton(20,500,18,"Back",0,4)
PlaySound(2,1)
Repeat 
ExamineKeyboard()
ExamineMouse()

;--menü
Repeat
ExamineMouse()
ExamineKeyboard()
DisplayTransparentSprite(19,0,0)
StartDrawing(ScreenOutput())
DrawingMode(1)
DrawText(20,580,"If You find bugs or misstakes, please tell me.")
DrawText(760,580,"V. 0.2")
StopDrawing()

buttonactive(1)
buttonactive(0)
buttonactive(2)
buttonactive(3)
buttondisactive(4)
showbutton(2)
showbutton(1)
showbutton(0)
showbutton(3)
If buttonclicked(3)
recordson=1
EndIf
If buttonclicked(2)
creditson = 1
EndIf
If ButtonClicked(0)
startgame = 1
EndIf
If buttonclicked(1)
endgame = 1
EndIf
Gosub mouse

updatebuttons()
FlipBuffers()
ClearScreen(RGB(195,230,255))
Until startgame = 1 Or KeyboardPushed(1) Or endgame = 1 Or creditson = 1 Or recordson = 1

If creditson = 1
Repeat
ExamineMouse()
ExamineKeyboard()
buttondisactive(0)
buttondisactive(1)
buttondisactive(3)
DisplayTransparentSprite(20,0,0)
buttonactive(4)
showbutton(4)
Gosub mouse
creditson = 0
FlipBuffers()
ClearScreen(RGB(0,0,0))
updatebuttons()
Until buttonclicked(4) Or KeyboardPushed(1)
EndIf 

If recordson = 1
OpenFile(0,"floor")
bestfloor=ReadInteger(0)
floorname1 =ReadString(0)
floorname2 =ReadString(0)
floorname3 =ReadString(0)
CloseFile(0)
OpenFile(1,"Round")
bestround=ReadInteger(1)
roundname1 = ReadString(1)
roundname2 = ReadString(1)
roundname3 = ReadString(1)
CloseFile(1)

OpenFile(2,"score")
best=ReadInteger(2)
scorename1=ReadString(2)
scorename2=ReadString(2)
scorename3=ReadString(2)
CloseFile(2)
Repeat
ExamineMouse()
ExamineKeyboard()
buttondisactive(0)
buttondisactive(1)
buttondisactive(3)
DisplayTransparentSprite(21,0,0)
recordson = 0
buttonactive(4)
showbutton(4)
StartDrawing(ScreenOutput())
DrawingMode(1)
FrontColor(RGB(0,0,0))
DrawText(380,260,"Best Score:   "+Str(best))
DrawText(380,280,"From:   " +scorename1+scorename2+scorename3)
DrawText(380,320,"Best Floor:   "+Str(bestfloor))
DrawText(380,340,"From:   " +floorname1+floorname2+floorname3)
DrawText(380,380,"Best Round:   "+Str(bestround))
DrawText(380,400,"From:   " +roundname1+roundname2+roundname3)
StopDrawing()
Gosub mouse
FlipBuffers()
ClearScreen(RGB(0,0,0))
updatebuttons()
Until buttonclicked(4) Or KeyboardPushed(1)
EndIf
If startgame = 1
Repeat
buttondisactive(0)
buttondisactive(1)
buttondisactive(2)
buttondisactive(4)
buttondisactive(3)
lub = 0
startgame = 0
suresave = 0
menue = 0
druck = 0
score = 0
y2 = 0
yspeed = 0
fy1 = 100
fy2 = 200
fy3 = 300
fy4 = 400
fy5 = 500
fy6 = 600
gesch = 1
ro = 1
floor = 0
round = 60
ziffer = 0
OpenFile(0,"floor")
bestfloor=ReadInteger(0)
floorname1 =ReadString(0)
floorname2 =ReadString(0)
floorname3 =ReadString(0)
CloseFile(0)
OpenFile(1,"Round")
bestround=ReadInteger(1)
roundname1 = ReadString(1)
roundname2 = ReadString(1)
roundname3 = ReadString(1)
CloseFile(1)

OpenFile(2,"score")
best=ReadInteger(2)
scorename1=ReadString(2)
scorename2=ReadString(2)
scorename3=ReadString(2)
CloseFile(2)

stufe = 2

;------- repeat 
Repeat
ExamineMouse()
ExamineKeyboard()

DisplayTransparentSprite(15,0,wand-1200)
DisplayTransparentSprite(15,0,wand-600)
DisplayTransparentSprite(15,0,wand)

If newstart = 0
If y2<600
wand+ro/4
If wand > 600
wand = 0
EndIf
EndIf
EndIf

Start3D()
DisplaySprite3D(0,lavax,550,255)
DisplaySprite3D(1,lavax2-99,560,120)
Stop3D()



;x + (MouseX()-x) / 10
;y + (MouseY()-y) / 10


y2+yspeed
If yspeed<10
yspeed+0.2
EndIf

If y2< 600
fy1 +gesch
fy2 +gesch
fy3 +gesch
fy4 +gesch
fy5 +gesch
fy6 +gesch
EndIf

DisplayTransparentSprite(stufe,fx1,fy1)
DisplayTransparentSprite(stufe,fx2,fy2)
DisplayTransparentSprite(stufe,fx3,fy3)
DisplayTransparentSprite(stufe,fx4,fy4)
DisplayTransparentSprite(stufe,fx5,fy5)
DisplayTransparentSprite(stufe,fx6,fy6)
If (SpritePixelCollision(stufe,fx1,fy1,1,x-30,y2+106) Or SpritePixelCollision(stufe,fx2,fy2,1,x-30,y2+106) Or SpritePixelCollision(stufe,fx3,fy3,1,x-30,y2+106) Or SpritePixelCollision(stufe,fx4,fy4,1,x-30,y2+106) Or SpritePixelCollision(stufe,fx5,fy5,1,x-30,y2+106) Or SpritePixelCollision(stufe,fx6,fy6,1,x-30,y2+106)) And yspeed > 0
yspeed=-7-gesch
PlaySound(0)
EndIf

If fy1 > 600
fy1 = 0
fx1 = Random(700)
score + 1 + ro
floor + 1
EndIf
If fy2 > 600
fy2 = 0
fx2 = Random(700)
score + 1 + ro
floor + 1
EndIf
If fy3 > 600
fy3 = 0
fx3 = Random(700)
score + 1 + ro
floor + 1
EndIf
If fy4 > 600
fy4 = 0
fx4 = Random(700)
score + 1 + ro
floor + 1
EndIf
If fy5 > 600
fy5 = 0
fx5 = Random(700)
score + 1 + ro
floor + 1
EndIf
If fy6 > 600
fy6 = 0
fx6 = Random(700)
score + 1 + ro
floor + 1
EndIf

If y2 < 600
round -0.05
If round <= 0
gesch + 1
ro +1
round = 60
EndIf
EndIf

If y2 < 4 And yspeed<0
fy1-yspeed
fy2-yspeed
fy3-yspeed
fy4-yspeed
fy5-yspeed
fy6-yspeed
wand-(yspeed/2)
y2-yspeed
EndIf
If floor = 50 And lub = 0
lub = 1
EndIf
If lub = 1
stufe +1
lub = 2
EndIf
If floor = 100 And lub = 2
lub = 3
EndIf
If lub = 3
stufe +1
lub = 4
EndIf
If floor = 150 And lub = 4
lub = 5
EndIf
If lub = 5
stufe +1
lub = 6
EndIf
If floor = 200 And lub = 6
lub = 7
EndIf
If lub = 7
stufe +1
lub = 8
EndIf
If floor = 300 And lub = 8
lub = 9
EndIf
If lub = 9
stufe +1
lub = 10
EndIf
If floor = 400 And lub = 10
lub = 11
EndIf
If lub = 11
stufe +1
lub = 12
EndIf
If floor = 500 And lub = 12
lub = 13
EndIf
If lub = 13
stufe +1
lub = 14
EndIf
If floor = 650 And lub = 14
lub = 15
EndIf
If lub = 15
stufe +1
lub = 16
EndIf
If floor = 800 And lub = 16
lub = 17
EndIf
If lub = 17
stufe +1
lub = 18
EndIf

Gosub mouse
StartDrawing(ScreenOutput())
FrontColor(RGB(100,100,255))
DrawingMode(1)
DrawText(10,5,"Score: "+Str(score))
DrawText(10,25,"Floor: "+Str(floor))
DrawText(10,45,"Next Round: " +Str(round))
DrawText(10,65,"Round: "+Str(ro))
; DrawText(10,95,"High Score: "+Str(best)+" Owner: " + scorename1+scorename2+scorename3)
; DrawText(10,115,"Best Floor: "+Str(bestfloor)+" Owner: " +floorname1+floorname2+floorname3)
;DrawText(10,135,"Best Round: "+Str(bestround)+" Owner: " +roundname1+roundname2+roundname3)

If y2 > 600 And y2<610
PlaySound(1)
EndIf
If y2 > 600
DrawText(340,240,"Push 'm' For Menu")
DrawText(340,260,"Push 'n' For newstart")
DrawText(350,290,"Your Score: "+Str(score))
DrawText(350,310,"Your Floor: "+Str(floor))
DrawText(350,330,"Your Round: "+Str(ro))
If (score>best And floor>bestfloor And round>bestround) = 0
suresave = 1
EndIf
If suresave = 1 And KeyboardPushed(#PB_Key_M)
menue = 1
EndIf
EndIf 

If score>best And y2 > 600
If gogo = 0
ready = 1
EndIf
If KeyboardPushed(#PB_Key_Return)  And ziffer = 3
druck +1
EndIf
If druck > 0
suresave = 1
FrontColor(RGB(180,0,0))
Else
FrontColor(RGB(255,0,0))
EndIf
DrawText(350,350,"NEW HIGH SCORE!!!")
IncludeFile "Schreibsystem.pb"
DrawText(500,350,"Write Your Name: " +let1+let2+let3)
If KeyboardPushed(#PB_Key_Back) And gluck = 0 And suresave = 0 And ziffer >= 1
ziffer - 1
gluck = 1
EndIf
If KeyboardPushed(#PB_Key_Back) = 0
gluck = 0
EndIf
If ziffer = 0
let1 = "_"
EndIf
If ziffer = 1
let2 = "_"
EndIf
If ziffer = 2
let3 = "_"
EndIf
If ziffer = 3 And KeyboardPushed(#PB_Key_Return)
ready = 0
gogo = 1
EndIf
EndIf
If floor>bestfloor And y2 > 600
If gogo = 0
ready = 1
EndIf
If KeyboardPushed(#PB_Key_Return)  And ziffer = 3
druck +1
EndIf
If druck > 0
suresave = 1
FrontColor(RGB(180,0,0))
Else
FrontColor(RGB(255,0,0))
EndIf
DrawText(350,370,"NEW BEST FLOOR!!!")
IncludeFile "Schreibsystem.pb"
DrawText(500,370,"Write Your Name: " +let1+let2+let3)
If KeyboardPushed(#PB_Key_Back) And gluck = 0 And suresave = 0 And ziffer >= 1
ziffer - 1
gluck = 1
EndIf
If KeyboardPushed(#PB_Key_Back) = 0
gluck = 0
EndIf
If ziffer = 0
let1 = "_"
EndIf
If ziffer = 1
let2 = "_"
EndIf
If ziffer = 2
let3 = "_"
EndIf
If ziffer = 3 And KeyboardPushed(#PB_Key_Return)
ready = 0
gogo = 1
EndIf
EndIf
If ro>bestround And y2 > 600
If gogo = 0
ready = 1
EndIf
If KeyboardPushed(#PB_Key_Return) And ziffer = 3
druck +1
EndIf
If druck > 0
suresave = 1
FrontColor(RGB(180,0,0))
Else
FrontColor(RGB(255,0,0))
EndIf
DrawText(350,390,"NEW BEST ROUND!!!")
IncludeFile "Schreibsystem.pb"
DrawText(500,390,"Write Your Name: " +let1+let2+let3)
If KeyboardPushed(#PB_Key_Back) And gluck = 0 And suresave = 0 And ziffer >= 1
ziffer - 1
gluck = 1
EndIf
If KeyboardPushed(#PB_Key_Back) = 0
gluck = 0
EndIf
If ziffer = 0
let1 = "_"
EndIf
If ziffer = 1
let2 = "_"
EndIf
If ziffer = 2
let3 = "_"
EndIf
If ziffer = 3 And KeyboardPushed(#PB_Key_Return)
ready = 0
gogo = 1
EndIf
EndIf


StopDrawing()

If yspeed >0 And xspeed >0
DisplayTransparentSprite(24,x-30,y2)
EndIf
If yspeed <0 And xspeed >0
DisplayTransparentSprite(22,x-30,y2)
EndIf
If yspeed <0 And xspeed <0
DisplayTransparentSprite(23,x-30,y2)
EndIf
If yspeed >0 And xspeed <0
DisplayTransparentSprite(0,x-30,y2)
EndIf
;----lava
Start3D()
DisplaySprite3D(0,lavax,570,100)
DisplaySprite3D(1,lavax2-99,580,100)
Stop3D()

If lava = 0
lavax - 1
lavax2 +1
EndIf
If lava = 1
lavax + 1
lavax2 - 1
EndIf
If lavax = -99
lava = 1
EndIf
If lavax = 0
lava = 0
EndIf


FlipBuffers()

ClearScreen(RGB(255,255,255))

If KeyboardPushed(#PB_Key_N) And y2 > 600  And ready = 0 And suresave = 1
newstart = 1
EndIf

If KeyboardPushed(#PB_Key_N)=0
newstart = 0
EndIf
Until KeyboardPushed(1) Or newstart = 1 Or menue = 1 Or endgame = 1

If floor>bestfloor And suresave = 1
   bestfloor=floor
   floorname1 = let1
   floorname2 = let2
   floorname3 = let3
   CreateFile(0, "floor")
   WriteInteger(0,bestfloor)
   WriteString(0,floorname1)
   WriteString(0,floorname2)
   WriteString(0,floorname3)
   CloseFile(0)
EndIf
If ro>bestround And suresave = 1
  bestround = ro
  roundname1 = let1
  roundname2 = let2
  roundname3 = let3
  CreateFile(1, "Round")
  WriteInteger(1,bestround)
  WriteString(1,roundname1)
  WriteString(1,roundname2)
  WriteString(1,roundname3)
  CloseFile(1)
EndIf  
If score>best And suresave = 1
    best=score
    scorename1 = let1
    scorename2 = let2
    scorename3 = let3
    CreateFile(2, "score")
    WriteInteger(2,best)
    WriteString(2,scorename1)
    WriteString(2,scorename2)
    WriteString(2,scorename3)
    CloseFile(2)
EndIf     



Until KeyboardPushed(1) Or menue = 1 Or endgame = 1
EndIf

Until KeyboardPushed(1) Or endgame = 1

End

mouse:
x + (MouseX()-x) / 10
xspeed = MouseX()-x
y + (MouseY()-y) / 10
xa1 + (MouseX()-xa1) / 9
ya1 + (MouseY()-ya1) / 9
xa2 + (MouseX()-xa2) / 8
ya2 + (MouseY()-ya2) / 8
xa3 + (MouseX()-xa3) / 7
ya3 + (MouseY()-ya3) / 7
xa4 + (MouseX()-xa4) / 6
ya4 + (MouseY()-ya4) / 6
xa5 + (MouseX()-xa5) / 5
ya5 + (MouseY()-ya5) / 5
xa6 + (MouseX()-xa6) / 4
ya6 + (MouseY()-ya6) / 4
xa7 + (MouseX()-xa7) / 3
ya7 + (MouseY()-ya7) / 3
xa8 + (MouseX()-xa8) / 2
ya8 + (MouseY()-ya8) / 2
StartDrawing(ScreenOutput())
FrontColor(RGB(0,100,200))
LineXY(MouseX()+2,MouseY()+2,xa8+2,ya8+2)
LineXY(MouseX()-2,MouseY()-2,xa8-2,ya8-2)
LineXY(MouseX()-2,MouseY()+2,xa8-2,ya8+2)
LineXY(MouseX()+2,MouseY()-2,xa8+2,ya8-2)
LineXY(MouseX()+1,MouseY()+1,xa8+1,ya8+1)
LineXY(MouseX()-1,MouseY()-1,xa8-1,ya8-1)
LineXY(MouseX()-1,MouseY()+1,xa8-1,ya8+1)
LineXY(MouseX()+1,MouseY()-1,xa8+1,ya8-1)
LineXY(MouseX(),MouseY(),xa8,ya8)
LineXY(xa8+2,ya8+2,xa7+2,ya7+2)
LineXY(xa8-2,ya8-2,xa7-2,ya7-2)
LineXY(xa8-2,ya8+2,xa7-2,ya7+2)
LineXY(xa8+2,ya8-2,xa7+2,ya7-2)
LineXY(xa8+1,ya8+1,xa7+1,ya7+1)
LineXY(xa8-1,ya8-1,xa7-1,ya7-1)
LineXY(xa8-1,ya8+1,xa7-1,ya7+1)
LineXY(xa8+1,ya8-1,xa7+1,ya7-1)
LineXY(xa8,ya8,xa7,ya7)
LineXY(xa7+2,ya7+2,xa6+2,ya6+2)
LineXY(xa7-2,ya7-2,xa6-2,ya6-2)
LineXY(xa7-2,ya7+2,xa6-2,ya6+2)
LineXY(xa7+2,ya7-2,xa6+2,ya6-2)
LineXY(xa7+1,ya7+1,xa6+1,ya6+1)
LineXY(xa7-1,ya7-1,xa6-1,ya6-1)
LineXY(xa7-1,ya7+1,xa6-1,ya6+1)
LineXY(xa7+1,ya7-1,xa6+1,ya6-1)
LineXY(xa7,ya7,xa6,ya6)
LineXY(xa6+2,ya6+2,xa5+2,ya5+2)
LineXY(xa6-2,ya6-2,xa5-2,ya5-2)
LineXY(xa6-2,ya6+2,xa5-2,ya5+2)
LineXY(xa6+2,ya6-2,xa5+2,ya5-2)
LineXY(xa6+1,ya6+1,xa5+1,ya5+1)
LineXY(xa6-1,ya6-1,xa5-1,ya5-1)
LineXY(xa6-1,ya6+1,xa5-1,ya5+1)
LineXY(xa6+1,ya6-1,xa5+1,ya5-1)
LineXY(xa6,ya6,xa5,ya5)
LineXY(xa5+2,ya5+2,xa4+2,ya4+2)
LineXY(xa5-2,ya5-2,xa4-2,ya4-2)
LineXY(xa5-2,ya5+2,xa4-2,ya4+2)
LineXY(xa5+2,ya5-2,xa4+2,ya4-2)
LineXY(xa5+1,ya5+1,xa4+1,ya4+1)
LineXY(xa5-1,ya5-1,xa4-1,ya4-1)
LineXY(xa5-1,ya5+1,xa4-1,ya4+1)
LineXY(xa5+1,ya5-1,xa4+1,ya4-1)
LineXY(xa5,ya5,xa4,ya4)
LineXY(xa4+2,ya4+2,xa3+2,ya3+2)
LineXY(xa4-2,ya4-2,xa3-2,ya3-2)
LineXY(xa4-2,ya4+2,xa3-2,ya3+2)
LineXY(xa4+2,ya4-2,xa3+2,ya3-2)
LineXY(xa4+1,ya4+1,xa3+1,ya3+1)
LineXY(xa4-1,ya4-1,xa3-1,ya3-1)
LineXY(xa4-1,ya4+1,xa3-1,ya3+1)
LineXY(xa4+1,ya4-1,xa3+1,ya3-1)
LineXY(xa4,ya4,xa3,ya3)
LineXY(xa3+2,ya3+2,xa2+2,ya2+2)
LineXY(xa3-2,ya3-2,xa2-2,ya2-2)
LineXY(xa3-2,ya3+2,xa2-2,ya2+2)
LineXY(xa3+2,ya3-2,xa2+2,ya2-2)
LineXY(xa3+1,ya3+1,xa2+1,ya2+1)
LineXY(xa3-1,ya3-1,xa2-1,ya2-1)
LineXY(xa3-1,ya3+1,xa2-1,ya2+1)
LineXY(xa3+1,ya3-1,xa2+1,ya2-1)
LineXY(xa3,ya3,xa2,ya2)
LineXY(xa2+2,ya2+2,xa1+2,ya1+2)
LineXY(xa2-2,ya2-2,xa1-2,ya1-2)
LineXY(xa2-2,ya2+2,xa1-2,ya1+2)
LineXY(xa2+2,ya2-2,xa1+2,ya1-2)
LineXY(xa2+1,ya2+1,xa1+1,ya1+1)
LineXY(xa2-1,ya2-1,xa1-1,ya1-1)
LineXY(xa2-1,ya2+1,xa1-1,ya1+1)
LineXY(xa2+1,ya2-1,xa1+1,ya1-1)
LineXY(xa2,ya2,xa1,ya1)
FrontColor(RGB(0,100,175))
Circle(MouseX(),MouseY(),5)
StopDrawing()
Return
FrontColor(RGB(0,100,200))
LineXY(MouseX(),MouseY(),x,y)
LineXY(MouseX()+2,MouseY()+2,x,y)
LineXY(MouseX()-2,MouseY()-2,x,y)
LineXY(MouseX()-2,MouseY()+2,x,y)
LineXY(MouseX()+2,MouseY()-2,x,y)
FrontColor(RGB(0,100,150))
LineXY(MouseX()+1,MouseY()+1,x,y)
LineXY(MouseX()-1,MouseY()-1,x,y)
LineXY(MouseX()-1,MouseY()+1,x,y)
LineXY(MouseX()+1,MouseY()-1,x,y)
FrontColor(RGB(0,100,175))
Circle(MouseX(),MouseY(),5)


; IDE Options = PureBasic 4.40 (Windows - x86)
; CursorPosition = 18
; FirstLine = 36
; Folding = A+
; EnableXP
; UseIcon = pogoico.ico
; Executable = ..\Pogojump 0.2.exe