Kleines 2D Kanonenspiel

Übersicht BlitzBasic Codearchiv

Neue Antwort erstellen

 

xXThunderXx

Betreff: Kleines 2D Kanonenspiel

BeitragSa, Apr 04, 2009 19:36
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi,
hab hir ein kleines Kanonenspiel programmiert ist bisher mein drittes und größtes Projekt.
Programmiere erst seit 4 Wochen seit bitte nicht zu streng mit mir wenn das Spiel nicht gerade euren Anforderungen entspricht. Würde mir gerne jedoch etwas Feedback von euch wünschen.

Hier Download:

https://www.blitzforum.de/upload/file.php?id=5215





sry hier der code
Hauptprogramm:
Code: [AUSKLAPPEN]
Print "Wollen sie (Vollbild) oder (Fenstermodus)
Print "Vollbild = 1"
Print "Fenstermodus = 2"
 
mo = Input("")
If mo = 1 Then Graphics 800,600,16,1
If mo = 2 Then  Graphics 800,600,16,2




Global jetztzeit,startzeit,geszeit,nr,grund,pl1,pl2,menu,pl3,pl4, mouse,monsterw,kanonenk,kugel,kugel3,raus,fnrz1,fnrz2, fnrz3,fnrz4,schanz1,schanz2, exs1,knopf3,exs2,knopf32,am1,am2,player

Include ".\Kanone\Funktionen zu Ballerburg.bb"
Include ".\Kanone\Typunit.bb"
SetBuffer BackBuffer()
SeedRnd MilliSecs()
;_________________________________________
;Grafik für Menü
;------------------------------------------------------------------
grund = LoadImage (".\Kanone\Hgrund.png")
pl1 = LoadImage(".\Kanone\1PLayer.png")
pl2 = LoadImage (".\Kanone\2PLayer.png")
menu = LoadImage(".\Kanone\Menü.png")
mouse = LoadImage (".\Kanone\Maus9.bmp")
pl3 = LoadImage(".\Kanone\1PLayer1.png")
pl4 = LoadImage(".\Kanone\2PLayer2.png")
;------------------------------------------------------------------
;Grafik für Monster
;------------------------------------------------------------------
.grafikmonster

For  i = 0 To 24
monsterm(i)\richtung = Rand(1,4)
   monsterm(i)\aktiv = 1
   monsterm(i)\x = Rand(30,700) 
   monsterm(i)\y = Rand(30,500)
   monsterm(i)\leben# = 100
   monsterm(i)\lspeicher = 100
   monsterm(i)\fnrz1 =0
   monsterm(i)\fnrz2 =0
   monsterm(i)\fnrz3 =0
   monsterm(i)\fnrz4 =0
   monsterm(i)\zh = 0
   monsterm(i)\nlevel = 1
   monsterm(i)\treffer = 0
   monsterm(i)\treffer2 = 0
   monsterw = LoadAnimImage(".\Kanone\Monster1.png",24,32,0,96)
Next

fnr = 0
gold = 0
gold2# = 10
gold1 = 0
gold3# = 10
speed = 5
punkt_vergabe2 = 2
punkt_vergabe1 = 2
;------------------------------------------------------------------
;Werte für kugel
;------------------------------------------------------------------
;kanone oben


kanonenk = LoadImage(".\Kanone\Kugel1.png")
 For i = 0 To schanz1()
kugel1(i)\start = 1
kugel1(i)\kraft = 100
Next
am1 = 25
zam1 = 0
bam1 = 25
gpreis1# = 10
gpreis_am1# = 10
kspeed_unten# = 2
gpreis_sp1# = 7.5
gpreis_po1# = 10
spz1 = 0

kanonenk1 = LoadImage(".\Kanone\Kugel.png")
 For i = 0 To schanz2()
kugel2(i)\start = 1
kugel2(i)\kraft1 = 100
Next
am2 = 25
zam2 = 0
bam2 = 25
gpreis2# = 10
gpreis_am2#= 10
kspeed_oben# = 2
gpreis_sp2# = 7.5
gpreis_po2# = 10
spz2 = 0
;Next

;kanone unten
;For kugel1.kugel1= Each kugel1
;;kanonenk1 = LoadImage(".\Kanone\Kugel.png")
;kugel1\x = 400
;kugel1\y = 500

 ;Next

;------------------------------------------------------------------
;Menü
;------------------------------------------------------------------

.menu
Repeat

menu()
Until player = 1 Or player = 2
;------------------------------------------------------------------

;------------------------------------------------------------------
;Kanone grafik
;------------------------------------------------------------------
.kanongrafik



;------------------------------------------------------------------

schrift = LoadFont ("Arial",14)
kanone = LoadAnimImage(".\Kanone\Kanone2.Png",141,98.25,0,20)
hgrund = LoadImage (".\Kanone\Hgrund.bmp")
tunten = LoadImage (".\Kanone\TUnten.png")
toben = LoadImage (".\Kanone\TOben.png")
kanone1 = LoadAnimImage (".\Kanone\Kanone3.png",141,98.25,0,20)
anzeige_oben= LoadImage (".\Kanone\anzeige.bmp")
anzeige_unten = LoadImage (".\Kanone\anzeige.bmp")
;treffer_kanone = LoadSound (".\Kaone\
MaskImage kanone, 255,0,255
MaskImage hgrund,255,255,255
MaskImage tunten,0,0,0
MaskImage toben ,0,0,0
MaskImage kanone1,255,0,255
MaskImage monsterw,32,156,0
MaskImage kanonenk,255,255,255
MaskImage kanonenk1,255,255,255
MaskImage anzeige_unten,255,0,30
MaskImage anzeige_oben,255,0,30
nr1 = 0
nr = 0
startzeit = MilliSecs()
level = 1


;------------------------------------------------------------------
;Hauptprogramm
;------------------------------------------------------------------
Repeat

   

DrawImage hgrund,0,0

Text 30,30, "Level: " + monsterm(1)\nlevel









If player = 2 Then DrawImage toben ,400,20

DrawImage tunten,400,580
DrawImage kanone,400,550,nr

If player = 2 Then DrawImage kanone1,400,50,nr1
DrawImage anzeige_unten,50,550
If player = 2 Then DrawImage anzeige_oben,550,0
MidHandle kanone1
MidHandle kanone
MidHandle tunten
MidHandle toben
MidHandle kanonenk
MidHandle kanonenk1
jetztzeit = MilliSecs()
;------------------------------------------------------------------
;Monstermalen
;------------------------------------------------------------------
zahler = zahler + 1
If zahler = 4 Then

For i = 0 To 24
If monsterm(i)\aktiv = 1 Then
   If monsterm(i)\richtung = 1 Then
   monsterm(i)\richtung = Rand(1,30)
   For a = 0 To 1
   If monsterm(i)\richtung = 3  Then
   monsterm(i)\y = monsterm(i)\y +speed: Exit 
   ElseIf monsterm(i)\richtung = 4 Then 
   monsterm(i)\y = monsterm(i)\y - speed  : Exit 
   Else
   monsterm(i)\x = monsterm(i)\x + speed : monsterm(i)\richtung = 1  : Exit
EndIf
;EndIf
Next 
EndIf
 
   If monsterm(i)\richtung = 2 Then   
   monsterm(i)\richtung = Rand(1,30)
   For a = 0 To 1
   If monsterm(i)\richtung = 3 Then
   monsterm(i)\y = monsterm(i)\y - speed : Exit
   ElseIf monsterm(i)\richtung = 4 Then
   monsterm(i)\y = monsterm(i)\y +speed : Exit
   Else
   monsterm(i)\x = monsterm(i)\x - speed : monsterm(i)\richtung = 2 : Exit
   
EndIf
;EndIf
Next
EndIf
   If monsterm(i)\richtung = 3  Then   
   monsterm(i)\richtung = Rand(1,30)
   For a = 0 To 1
   If monsterm(i)\richtung = 1 Then
   monsterm(i)\x = monsterm(i)\x + speed : Exit
   ElseIf monsterm(i)\richtung = 2 Then
   monsterm(i)\x= monsterm(i)\x - speed : Exit
   Else
   monsterm(i)\y = monsterm(i)\y - speed : monsterm(i)\richtung = 3 : Exit
   
EndIf
 ;EndIf
Next 
EndIf

   If monsterm(i)\richtung = 4  Then   
   monsterm(i)\richtung = Rand(1,30)
   For a = 0 To 1
   If monsterm(i)\richtung = 1 Then
   monsterm(i)\x = monsterm(i)\x + speed : Exit
   ElseIf monsterm(i)\richtung = 2 Then
   monsterm(i)\x = monsterm(i)\x - speed : Exit
   Else
   monsterm(i)\y = monsterm(i)\y + speed : monsterm(i)\richtung = 4 : Exit
   EndIf
   ;EndIf
   Next
 
EndIf 
EndIf 

Next


zahler = 0
EndIf

 
mx = 10
my = 10
;For i = 0 To 24
;my = my + 15
;Text mx,my, " Monster: "+monsterm(i)\leben# + " /treffer1: "+monsterm(i)\treffer + " /treffer2: "+monsterm(i)\treffer2
;Next
;spieler 1/schuss u. monster kollision
For i = 0 To 24
For a = 0 To schanz1() 
If ImagesCollide(kanonenk1, kugel2(a)\x1#,kugel2(a)\y1#,0 ,monsterw,monsterm(i)\x,monsterm(i)\y,fnr ) Then 
   monsterm(i)\leben# = monsterm(i)\leben# - kugel2(i)\kraft1
   kugel2(a)\aktiv1 = 0
   kugel2(a)\x1# = 900
   monsterm(i)\treffer2 = monsterm(i)\treffer2 + 1
   
   If    monsterm(i)\leben# <= 0 Then   monsterm(i)\aktiv = 0  :kugel2(a)\aktiv1 = 0 :kugel2(a)\x1# = 900  : monsterm(i)\x = 1000 : punkt = punkt + 2 * (monsterm(1)\nlevel * 0.75)+ (monsterm(i)\treffer2 * 0.25) :  gold = gold + gold2 : gold = gold + monsterm(i)\treffer2 * 2 :
   EndIf
   
   If ImagesCollide(kanonenk, kugel1(a)\x#,kugel1(a)\y#,0  ,monsterw,monsterm(i)\x,monsterm(i)\y,fnr ) Then 
   monsterm(i)\leben# = monsterm(i)\leben# - kugel1(i)\kraft
   kugel1(a)\aktiv = 0
   kugel1(a)\x# = 900
   monsterm(i)\treffer = monsterm(i)\treffer + 1
   If    monsterm(i)\leben# <= 0 Then   monsterm(i)\aktiv = 0  :kugel1(a)\aktiv = 0 :kugel1(a)\x# = 900    :monsterm(i)\x = 1900 : punkt1 = punkt1 + 2 * (monsterm(1)\nlevel * 0.75)+( monsterm(i)\treffer * 0.25) :  gold1 = gold1 + gold3 : gold1 = gold1 + monsterm(i)\treffer * 2

   EndIf
   
   If ImagesCollide(kanonenk, kugel1(a)\x#,kugel1(a)\y#,0  ,kanonenk1, kugel2(i)\x1#,kugel2(i)\y1#,0) Then
   kugel2(i)\aktiv1 = 0 :kugel2(i)\x1# = 900  :kugel1(a)\aktiv = 0 :kugel1(a)\x# = 900
   EndIf
   If ImagesCollide(tunten,400,580,0,kanonenk1, kugel1(a)\x#,kugel1(a)\y#,0) Then kugel1(a)\aktiv = 0  :kugel1(a)\x# = 2000
   If ImagesCollide(toben,400,20,0,kanonenk, kugel2(i)\x1#,kugel2(i)\y1#,0) Then kugel2(i)\aktiv1 = 0  :kugel2(i)\x1# = 2000
   Next
   
   For a = 0 To schanz2()
   If ImagesCollide(kanonenk1, kugel2(a)\x1#,kugel2(a)\y1#,0 ,monsterw,monsterm(i)\x,monsterm(i)\y,fnr ) Then 
   monsterm(i)\leben# = monsterm(i)\leben# - kugel2(i)\kraft1
   kugel2(a)\aktiv1 = 0
   kugel2(a)\x1# = 900
   monsterm(i)\treffer2 = monsterm(i)\treffer2 + 1
   If    monsterm(i)\leben# <= 0 Then   monsterm(i)\aktiv = 0  :kugel2(a)\aktiv1 = 0 :kugel2(a)\x1# = 900  : monsterm(i)\x = 1000 : punkt = punkt + 2 * (monsterm(1)\nlevel * 0.75) + (monsterm(i)\treffer2 * 0.25):  gold = gold + gold2 : gold = gold + monsterm(i)\treffer2 * 2
   
   EndIf
   
   If ImagesCollide(kanonenk, kugel1(a)\x#,kugel1(a)\y#,0  ,monsterw,monsterm(i)\x,monsterm(i)\y,fnr ) Then 
   monsterm(i)\leben# = monsterm(i)\leben# - kugel1(i)\kraft
   kugel1(a)\aktiv = 0
   kugel1(a)\x# = 900
   monsterm(i)\treffer = monsterm(i)\treffer + 1
   If    monsterm(i)\leben# <= 0 Then   monsterm(i)\aktiv = 0  :kugel1(a)\aktiv = 0 :kugel1(a)\x# = 900    :monsterm(i)\x = 1900 : punkt1 = punkt1 + 2 * (monsterm(1)\nlevel * 0.75) + (monsterm(i)\treffer * 0.25) :  gold1 = gold1 + gold3 : gold1 = gold1 + monsterm(i)\treffer * 2

   EndIf
   
   If ImagesCollide(kanonenk, kugel1(a)\x#,kugel1(a)\y#,0  ,kanonenk1, kugel2(i)\x1#,kugel2(i)\y1#,0) Then
   kugel2(i)\aktiv1 = 0 :kugel2(i)\x1# = 900  :kugel1(a)\aktiv = 0 :kugel1(a)\x# = 900
   EndIf
   If ImagesCollide(tunten,400,580,0,kanonenk1, kugel1(a)\x#,kugel1(a)\y#,0) Then kugel1(a)\aktiv = 0  :kugel1(a)\x# = 2000
   If ImagesCollide(toben,400,20,0,kanonenk, kugel2(i)\x1#,kugel2(i)\y1#,0) Then kugel2(i)\aktiv1 = 0  :kugel2(i)\x1# = 2000
   

Next   
Next


;spieler 2/schuss u. monster kollision
 
 
For i = 0 To 24


 If monsterm(i)\aktiv = 1 And monsterm(i)\richtung = 1 Then
   DrawImage monsterw,monsterm(i)\x,monsterm(i)\y,(fnr +12 +monsterm(i)\fnrz1)
   monsterm(i)\zh = monsterm(i)\zh + 1
   monsterm(i)\fnrz2 = 0
   monsterm(i)\fnrz3 = 0
   monsterm(i)\fnrz4 = 0
   
   If monsterm(i)\zh = 8 Then
   monsterm(i)\fnrz1 = monsterm(i)\fnrz1 + 1
   monsterm(i)\zh = 0
    EndIf
   If monsterm(i)\fnrz1 = 2 Then monsterm(i)\fnrz1 = 0 
 EndIf



 
 If monsterm(i)\aktiv = 1 And monsterm(i)\richtung = 2 Then
   DrawImage monsterw,monsterm(i)\x,monsterm(i)\y,(fnr + 36 + monsterm(i)\fnrz2)
   monsterm(i)\zh = monsterm(i)\zh + 1
   
      monsterm(i)\fnrz1 = 0
      monsterm(i)\fnrz3 = 0
      monsterm(i)\fnrz4 = 0
      
      If monsterm(i)\zh = 8 Then
      monsterm(i)\fnrz2 = monsterm(i)\fnrz2 + 1
      monsterm(i)\zh = 0
       EndIf
   If monsterm(i)\fnrz2 = 2 Then monsterm(i)\fnrz2 = 0
 EndIf
 


 If monsterm(i)\aktiv = 1 And monsterm(i)\richtung = 3 Then
   DrawImage monsterw,monsterm(i)\x,monsterm(i)\y,(fnr + 0 + monsterm(i)\fnrz3)
   monsterm(i)\zh = monsterm(i)\zh + 1
      monsterm(i)\fnrz1 = 0
      monsterm(i)\fnrz4 = 0
      monsterm(i)\fnrz2 = 0
      
   If monsterm(i)\zh = 8 Then 
      monsterm(i)\fnrz3 = monsterm(i)\fnrz3 + 1
      monsterm(i)\zh = 0
   EndIf       
   If monsterm(i)\fnrz3 = 2 Then monsterm(i)\fnrz3 = 0
 EndIf
 

 If monsterm(i)\aktiv = 1 And monsterm(i)\richtung = 4 Then
   DrawImage monsterw,monsterm(i)\x,monsterm(i)\y,(fnr + 24 + monsterm(i)\fnrz4)
   monsterm(i)\zh = monsterm(i)\zh +1
   monsterm(i)\fnrz1 = 0
   monsterm(i)\fnrz2 = 0
   monsterm(i)\fnrz3 = 0
   
   If monsterm(i)\zh = 8 Then
      monsterm(i)\fnrz4 = monsterm(i)\fnrz4 + 1
      monsterm(i)\zh = 0
   EndIf
   If monsterm(i)\fnrz4 = 2 Then monsterm(i)\fnrz4 = 0   
 EndIf


 
 If monsterm(i)\x <= 0 Then monsterm(i)\richtung = 1
 If monsterm(i)\x >= 780 Then monsterm(i)\richtung = 2
If monsterm(i)\y <= 0 Then monsterm(i)\richtung = 4
If monsterm(i)\y >= 568 Then monsterm(i)\richtung = 3
If ImagesCollide (tunten,400,580,0,monsterw,monsterm(i)\x,monsterm(i)\y,6) Then monsterm(i)\richtung = Rand(1,4) : monsterm(i)\y = monsterm(i)\y-8
If ImagesCollide (toben,400,20,0,monsterw,monsterm(i)\x,monsterm(i)\y,6) Then monsterm(i)\richtung = Rand(1,4)   : monsterm(i)\y = monsterm(i)\y +8
Next

For i = 0 To 24

If monsterm(i)\aktiv = 0 Then aktivz =aktivz + 1
If aktivz = 25 Then

For a = 0 To 24
monsterm(a)\aktiv = 1 : monsterm(a)\lspeicher = monsterm(i)\lspeicher * 2 :monsterm(a)\leben# = monsterm(a)\lspeicher : monsterm(a)\x = Rand(30,700) : aktivz  = 0
monsterm(a)\treffer2 = 0:monsterm(a)\treffer = 0: am1 = 25 + zam1  : am2 = 25 + zam2 : gold = gold + 4.2 : gold1 = gold1 + 4.2 : monsterm(a)\nlevel = monsterm(a)\nlevel + 1 : gespunkt1 = gespunkt1 + 2.1 : gespunkt2 =gespunkt2 + 2.1 
Next

fnr = fnr + 3: gold2# = gold2# * 1.5 : gold3# = gold3# * 1.5
EndIf   
Next
If aktivz <= 25 Then aktivz = 0
punkt_vergabe2 = punkt_vergabe2 * 2 : punkt_vergabe1 = punkt_vergabe1 * 2
If monsterm(1)\nlevel = 5 Or monsterm(1)\nlevel = 9 Or monsterm(1)\nlevel = 13 Or monsterm(1)\nlevel = 17 Then fnr = 0
;Text 60,550, "Zähler: "+ monsterm(12)\zh + "frame: "+ monsterm(12)\fnrz4
;_________________________________________
;Pause
;------------------------------------------------------------------
.pause
If KeyHit(25) Or KeyHit(1) Then
Repeat
FlushKeys
If KeyHit (25) Then Exit   
menu()
If KeyHit(1) Then End
Until GetKey()
EndIf
;------------------------------------------------------------------
;Bewegung Monster
;------------------------------------------------------------------


 
;_________________________________________
;Steuerung Kanone unten
;------------------------------------------------------------------

.kanoneunten
If KeyDown (205) And (zeitmesser(ges)>= 50) Then nr = nr +1
If KeyDown (203) And (zeitmesser(ges)>= 50) Then nr = nr -1
If nr <= 0 Then nr = 0
If nr >= 19 Then nr =19

;_________________________________________
;Steuerung für Kanone oben
;------------------------------------------------------------------
If player = 2 Then
.kanoneoben
If KeyDown(30) And (zeitmesser(ges)>= 50) Then nr1 = nr1 - 1
If KeyDown(32) And (zeitmesser(ges)>= 50) Then nr1 = nr1 + 1
If nr1 <= 0 Then nr1 = 0
If nr1 >= 19 Then nr1 =19
EndIf 
;------------------------------------------------------------------
;kugel bewegung/oben
;------------------------------------------------------------------

If player = 2 Then


If nr1 = 0 Or nr1 = 19 Then kugel1x# = -4
If nr1 = 1 Or nr1 = 18 Then kugel1x# = -3.95
If nr1 = 2 Or nr1 = 17 Then kugel1x# = -3.8
If nr1 = 3 Or nr1 = 16 Then kugel1x# = -3.564
If nr1 = 4 Or nr1 = 15 Then kugel1x# = -3.236
If nr1 = 5 Or nr1 = 14 Then kugel1x# = -2.82
If nr1 = 6 Or nr1 = 13 Then kugel1x# = -2.35
If nr1 = 7 Or nr1 = 12 Then kugel1x# = -1.816
If nr1 = 8 Or nr1 = 11 Then kugel1x# = -1.236
If nr1 = 9 Or nr1 = 10 Then kugel1x# = -0


If nr1 >= 10 Then kugel1x# = kugel1x# * -1
 



If KeyHit(56) Then
am1 = am1 - 1
bnr = bnr + 1
kugel1(bnr)\aktiv = 1
 

kugel1y# = Sqr((4^2 )- (kugel1x#^2))

kugel1(bnr)\flugx# = kugel1x# * kspeed_unten#
kugel1(bnr)\flugy# = kugel1y# * kspeed_unten#

verx1# = kugel1x#
very1# = kugel1y#
kugel1(bnr)\x# = (400 - verx1#)
kugel1(bnr)\y# = (27 - very1#)
EndIf
 
If bnr = 24 Then bnr = 0
If am1 <= 0 Then am1 = 0



For i = 0 To 25 

If am1 = 0 Then
kugel1(i)\aktiv = 0
kugel1(i)\x# = 2000
EndIf


If kugel1(i)\aktiv = 1 Then
   kugel1(i)\x# = kugel1(i)\x# + kugel1(i)\flugx#
   kugel1(i)\y# = kugel1(i)\y# + kugel1(i)\flugy#
   DrawImage kanonenk,kugel1(i)\x#,kugel1(i)\y#
EndIf

If kugel1(i)\x# >= 800 Or kugel1(i)\x# <= 0 Then
kugel1(i)\aktiv = 0
kugel1(i)\start = 1

EndIf
 
If kugel1(i)\y#>= 600 Or kugel1(i)\y# <= 0 Then
kugel1(i)\aktiv = 0
kugel1(i)\start = 1
EndIf
 
Next
If KeyHit (34) Then
For i = 0 To 24

monsterm(i)\aktiv = 0
Next
EndIf
gespunkt1 = treffer + punkt1


SetFont schrift
Text 552,29, "Schuss:   " + am1
Text 552,0, "Punkte:    " + gespunkt1
Text 665,0, "Gold:      " + gold1
;Extras
.extras
If KeyHit(5) Then
If gold1 >= gpreis1# * 1.1 Then
gpreis1# = gpreis1# * 1.1 
am1 = am1  + 1
gold1 = gold1 - gpreis1#
EndIf
EndIf

If KeyHit(4) Then
If gold1 >= gpreis_am1# * 1.5 Then
gpreis_am1# = gpreis_am1# * 1.5 
zam1 = zam1  + 5
gold1 = gold1 - gpreis_am1#
am1 = am1 + 5
EndIf
EndIf


If spz1 <= 7 Then
If KeyHit(3) Then
If gold1 >= gpreis_sp1# * 2 Then
gpreis_sp1# = gpreis_sp1# * 2 
kspeed_unten# = kspeed_unten# * 1.2
gold1 = gold1 - gpreis_sp1#
spz1 = spz1 + 1
EndIf
EndIf
EndIf





 
If KeyHit(2) Then
If gold1 >= gpreis_po1# * 2 Then
gpreis_po1# = gpreis_po1# * 2
For i = 0 To 25
kugel1(i)\kraft = kugel1(i)\kraft * 1.5
Next
gold1 = gold1 - gpreis_po1#

EndIf
EndIf
EndIf
;------------------------------------------------------------------
;kugel bewegung/unten
;------------------------------------------------------------------


If nr = 0 Or nr = 19 Then kugelx# = 4
If nr = 1 Or nr = 18 Then kugelx# = 3.95
If nr = 2 Or nr = 17 Then kugelx# = 3.8
If nr = 3 Or nr = 16 Then kugelx# = 3.564
If nr = 4 Or nr = 15 Then kugelx# = 3.236
If nr = 5 Or nr = 14 Then kugelx# = 2.82
If nr = 6 Or nr = 13 Then kugelx# = 2.35
If nr = 7 Or nr = 12 Then kugelx# = 1.816
If nr = 8 Or nr = 11 Then kugelx# = 1.236
If nr = 9 Or nr = 10 Then kugelx# = 0



If nr >= 10 Then kugelx# = kugelx# * -1



If KeyHit(28) Then

am2 = am2 - 1
bnr1 = bnr1 + 1
kugel2(bnr1)\aktiv1 = 1
;kugelx# = Sin (winkel) * 4
 
 


kugely# = Sqr((4^2 )- (kugelx#^2))

kugel2(bnr1)\flugx1# = kugelx# * kspeed_oben#
kugel2(bnr1)\flugy1# = kugely# * kspeed_oben#
 
verx# = kugelx#
very# = kugely#
kugel2(bnr1)\x1# = (400 - verx#)
kugel2(bnr1)\y1# = (573 - very#)
EndIf
If bnr1 = 24 Then bnr1 = 0
If am2 <= 0 Then am2 = 0

For i = 0 To 25

If am2 = 0 Then
kugel2(i)\aktiv1 = 0
 kugel2(i)\x1# = 2000
EndIf    
If kugel2(i)\aktiv1 = 1 Then
    kugel2(i)\x1# = kugel2(i)\x1# - kugel2(i)\flugx1#
   kugel2(i)\y1# = kugel2(i)\y1# - kugel2(i)\flugy1#
   DrawImage kanonenk1,kugel2(i)\x1#,kugel2(i)\y1#
EndIf

If kugel2(i)\x1# <= 0 Or kugel2(i)\x1# >= 800 Then
kugel2(i)\aktiv1 = 0

 kugel2(i)\start = 1
EndIf
If kugel2(i)\y1# <= 0 Or kugel2(i)\y1# >= 600 Then
kugel2(i)\aktiv1 = 0

kugel2(i)\start = 1
EndIf
Next
gespunkt2 = treffer2 + punkt
SetFont schrift
Text 53,549.5, "Punkte:    " + gespunkt2
Text 51,579, "Schuss:   " + am2
Text 165,549.5, "Gold:     " + gold 
;Text 100,100 ,"x: "+ kugel2(6)\x1#
;Text 200,100 ,"x: "+ kugel2(6)\y1#
If KeyHit(75) Then
If gold >= gpreis2# * 1.1 Then
gpreis2# = gpreis2# * 1.1 
am2 = am2  + 1
gold = gold - gpreis2#
EndIf
EndIf

If KeyHit(81) Then
If gold >= gpreis_am2# * 1.5 Then
gpreis_am2# = gpreis_am2# * 1.5 
zam2 = zam2  + 5
gold = gold - gpreis_am2#
am2 = am2 + 5
EndIf
EndIf 

If spz2 <= 7 Then
If KeyHit(80) Then
If gold >= gpreis_sp2# * 2 Then
gpreis_sp2# = gpreis_sp2# * 2 
kspeed_oben# = kspeed_oben# * 1.2
gold = gold - gpreis_sp2#
spz2 = spz2 + 1
EndIf
EndIf
EndIf

Text 60,60, "Speed: " + spz2

If KeyHit(79) Then
If gold >= gpreis_po2# * 2 Then
gpreis_po2# = gpreis_po2# * 2
For i = 0 To 25
kugel2(i)\kraft1 = kugel2(i)\kraft1 * 1.5
Next
gold = gold - gpreis_po2#

EndIf
EndIf

If KeyHit(46) Then gold = 99999

If KeyHit (34) Then
For i = 0 To 24

monsterm(i)\aktiv = 0
Next
EndIf
;------------------------------------------------------------------
;Kollisionen Mit Kugel und Monster
;------------------------------------------------------------------



;------------------------------------------------------------------
If geszeit >= 50  Then startzeit = startzeit + 50


Flip
Cls
Forever






MfG
xXThunderXx
  • Zuletzt bearbeitet von xXThunderXx am Sa, Apr 04, 2009 20:00, insgesamt 2-mal bearbeitet
 

da_poller

BeitragSa, Apr 04, 2009 19:42
Antworten mit Zitat
Benutzer-Profile anzeigen
im codearchiv solle auch code sein und nicht nur ein DL...

The_Nici

BeitragSa, Apr 04, 2009 23:50
Antworten mit Zitat
Benutzer-Profile anzeigen
https://www.blitzforum.de/foru...hp?t=30008
Keine kompletten Spiele.
MfG

Triton

BeitragSo, Apr 05, 2009 1:23
Antworten mit Zitat
Benutzer-Profile anzeigen
xXThunderXx: die anderen haben recht. Aber da du den Upload hier auf dem BlitzForum hochgeladen hast, gehe ich davon aus, dass der Link solange besteht, wie auch dieses Forum besteht. Insofern ist es ok.
Coding: silizium-net.de | Portfolio: Triton.ch.vu
 

xXThunderXx

BeitragSo, Apr 05, 2009 7:18
Antworten mit Zitat
Benutzer-Profile anzeigen
aso hab ich nicht gewusst sry!!!!!!
soll ich den donwloadlink weg machen ? oder was soll ich machen ???

Eingeproggt

BeitragSo, Apr 05, 2009 10:13
Antworten mit Zitat
Benutzer-Profile anzeigen
Naja... auch wenn du darum bittest, dich nicht mit Kritik zu-zubomben, ich hab da beim Überfliegen einiges gefunden...

Gleich in der ersten Zeile das schließende Anführungszeichen vergessen.
MidHandle in der Hauptschjleife ausgeführt -> Gehört an den Afang, dort wo du Bilder lädst.
Nicht sehr konsequent eingerückt. (zB For-Schleifen auch einrücken!)
Kein Timer. (Siehe FAQ und Tutorials "Hurra, 100% CPU Auslastung")

Nimm die Kritik nicht als zu negativ, es sind nur Verbesserungsvorschläge. und diese wurden rein aufgrund des Codes genannt, ich hab das Spiel noch nicht getestet. Werd ich gleich machen Smile

EDIT: Habs mal angespielt... Also die Maus im Menu is viel zu groß, die Kollisionsabfrage mit den Buttons viel zu ungenau. RectsOverlap würde da helfen.
Das Spiel selber ist recht akzeptabel, aber ich verstehs ned ganz... Meine Schüsse waren recht bald weg... Was dann? Und kann man überhaupt verlieren? Die Monster greifen ja nicht wirklich an.

mfG, Christoph.
Gewinner des BCC 18, 33 und 65 sowie MiniBCC 9

Silver_Knee

BeitragSo, Apr 05, 2009 13:44
Antworten mit Zitat
Benutzer-Profile anzeigen
Wenns mal fertig ist vielleicht etwas dafür:

https://www.blitzforum.de/foru...hp?t=30150
 

DjDETE

BeitragSo, Apr 05, 2009 14:52
Antworten mit Zitat
Benutzer-Profile anzeigen
ich finde das spiel an sich (den code außer acht gelassen) für die katz, da es ja eigentl darum geht, die viecher abzuschießen, sie aber viel zu schnell sind um sie gezielt zu treffen.
mfg
Aktuelles Projekt: XXX |XXX | 3% der v1b fertig
www.emu-soft.de.vu Für die Homepage suche ich noch Linktauschpartner, bei Interesse einfach melden.
 

xXThunderXx

BeitragSo, Apr 05, 2009 19:33
Antworten mit Zitat
Benutzer-Profile anzeigen
Hab vergessen zu schreiben das man mit den tasten 1-4 und num1-4 die 1=stärke, 2=speed, 3 = ammo die man anfang hat, 4 = extra schuss für den der des net weis

N0X

BeitragSo, Apr 05, 2009 20:17
Antworten mit Zitat
Benutzer-Profile anzeigen
Bei mir ist da ein Bug drin!
Wenn ich nur noch einen Schuss habe und schieße kommt kein Schuss!

Mfg,
N0X
Projekte: |Tibario| http://www.blitzforum.de/worklogs/325/ | 5%

Neue Antwort erstellen


Übersicht BlitzBasic Codearchiv

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group