Irgendwo ist der Wurm drin, aber wo ???
Übersicht

![]() |
[Ko5MoS]Betreff: Irgendwo ist der Wurm drin, aber wo ??? |
![]() Antworten mit Zitat ![]() |
---|---|---|
hi hab hier jetzt mal ein schon halbwegs spielbare version von meinem 2d shooter Nemos World hinbekommen, aber irgendwas funktioniert nicht richtig:
1: es wird langsamer nach einer bestimmten zeit 2: gegner kann man nicht abschiessen ... wie kann ich diese sachen beheben hier der Code: Nemo´s World Code: [AUSKLAPPEN] Graphics 640,480,16,1 ;VARS Global lvl,py,px,gegner.gegner_1,player.player,timer_ball,ball.ball,dmg,z,life Global ballcolor1,ballcolor2,gegner2.gegner_2,hp_bonus Global timer_ball2,ball2.lifeball,name$,shot.schuss,treffer,punkte,speedplus Global font1=LoadFont("arial",40,1,0,0) Global song_1=LoadSound("blabla.mp3") Global song_2=LoadSound("blabla2.mp3") Global sound_1=LoadSound("shot-1.wav") Global gegner_jpg=LoadImage(".jpg") Global gegner2_jpg=LoadImage(".jpg") Global player_jpg=LoadImage(".jpg") Global crash_pic=LoadImage(".png") Global life_jpg=LoadImage(".jpg") Global player_shot=LoadImage(".png") MaskImage player_shot,255,0,255 MaskImage gegner_jpg,255,0,255 MaskImage player_jpg,255,0,255 MaskImage gegner2_jpg,255,0,255 MaskImage life_jpg,255,0,255 SeedRnd MilliSecs() ;TYPES Type ball Field ball_x Field ball_y Field ball_speed Field ball_size Field farbe End Type Type lifeball Field ball_x Field ball_y Field ball_speed Field ball_size Field farbe Field grafik Field crash End Type Type gegner_1 Field x Field y Field grafik Field crash Field speed Field hp End Type Type player Field xx Field yy Field leben Field grafik_player End Type Type gegner_2 Field x Field y Field grafik Field crash Field speed Field hp End Type Type schuss Field x Field y Field speed Field kugel Field dmg End Type ;HAUPTPROGRAMM geschichte() name$=Input("Bitte geben sie ihren namen ein: ") Cls Repeat SetBuffer BackBuffer() anzeige_def() ball_def() schuss_def() lifeball_def() bewegung() player_def() If player\leben <=0 Then Gosub ende gegner_1def() gegner_2def() Cls level() kolligegner1() kolligegner2() DrawImage player\grafik_player,player\xx,player\yy anzeige_draw() schuss_draw() ball_draw() Flip Until KeyHit(1) WaitKey .ende ende() End ;FUNCTIONEN Function bewegung() If KeyDown(200) Then py=-5+py ElseIf KeyDown(208) Then py=5+py ElseIf KeyDown(203) Then px=-5+px ElseIf KeyDown(205) Then px=5+px EndIf End Function Function ball_def() timer_ball=timer_ball+1 If timer_ball>=4 Then timer_ball = 0 ball.ball=New ball ball\ball_x=640 ball\ball_y=Rand(1,479) ball\ball_speed=Rand(4,6) ball\farbe=Rand(50,255) ball\ball_size=Rand(15,30) EndIf End Function Function ball_draw() For ball.ball=Each ball ball\ball_x=ball\ball_x-ball\ball_speed Color ballcolor1,ballcolor2,ball\farbe Oval ball\ball_x,ball\ball_y,ball\ball_size,ball\ball_size If ball\ball_x < 0 Then Delete ball.ball Color 255,255,255 Next End Function Function gegner_1draw() For gegner.gegner_1=Each gegner_1 If ImagesCollide(player\grafik_player,player\xx,player\yy,0,gegner\grafik,gegner\x,gegner\y,0) Then dmg=dmg+1 Next gegner.gegner_1=First gegner_1 gegner\x=gegner\x-gegner\speed DrawImage gegner\grafik,gegner\x,gegner\y If gegner\x < -40 Then Delete gegner.gegner_1 gegner=After gegner gegner\x=gegner\x-gegner\speed DrawImage gegner\grafik,gegner\x,gegner\y If gegner\x < -40 Then Delete gegner.gegner_1 gegner=After gegner gegner\x=gegner\x-gegner\speed DrawImage gegner\grafik,gegner\x,gegner\y If gegner\x < -40 Then Delete gegner.gegner_1 End Function Function player_def() life=90 cheat() player.player=New player player\xx=40+px player\yy=230+py player\leben=life-dmg+hp_bonus player\grafik_player=player_jpg If player\xx <= -80 Then dmg=dmg+1 If player\xx >= 740 Then dmg=dmg+1 If player\yy <= -100 Then dmg=dmg+1 If player\yy >= 580 Then dmg=dmg+1 End Function Function gegner_1def() For t = 1 To 9 gegner.gegner_1=New gegner_1 gegner\x=645 gegner\y=Rand(15,465) gegner\speed=Rand(4,11)+speedplus gegner\grafik=gegner_jpg gegner\crash=crash_pic gegner\hp=10 Next End Function Function anzeige_def() z=z+1 If z/37=> 10*lvl*lvl Then lvl=lvl+1 hp_bonus=hp_bonus+10*lvl EndIf End Function Function anzeige_draw() Text 0,0, "HP: "+player\leben Text 0,10, "ZEIT: "+z/37 Text 0,20, "LVL: "+lvl Text 460,0, "DEINE PUNKTE: "+treffer/100 Text 0,465, name$ End Function Function ende() Cls SetFont font1 Color 255,0,0 Text 230,20, "E.N.D.E." Text 200,120, "IHR LEVEL: "+lvl Text 200,70, name$ Text 200,180, "IHRE ZEIT: "+z/37 Text 200,340, "IHRE PUNKTE: "+treffer/100 Flip Color 255,255,255 Delay 4000 End Function Function level() Select lvl Case 1 speedplus=0 gegner_1draw() lifeball_draw() Case 2 speedplus=0 gegner_1draw() ballcolor1=100 Case 3 speedplus=1 gegner_1draw() lifeball_draw() ballcolor2=100 Case 4 speedplus=2 gegner_2draw() ballcolor2=200 Case 5 speedplus=2 gegner_1draw() lifeball_draw() gegner_2draw() ballcolor1=255 ballcolor2=100 Case 6 speedplus=3 gegner_1draw() gegner_2draw() ballcolor1=100 ballcolor2=125 Case 7 speedplus=3 gegner_1draw() lifeball_draw() gegner_2draw() ballcolor1=175 ballcolor2=50 Case 8 speedplus=4 gegner_1draw() gegner_2draw() ballcolor1=255 ballcolor2=Rand(100,150) Case 9 speedplus=4 gegner_1draw() lifeball_draw() gegner_2draw() ballcolor1=Rand(50,75) ballcolor2=Rand(50,75) Case 10 speedplus=4 gegner_1draw() lifeball_draw() gegner_2draw() ballcolor1=Rand(100,200) ballcolor2=Rand(100,200) End Select End Function Function gegner_2def() gegner2.gegner_2=New gegner_2 gegner2\x=640 gegner2\y=Rand(20,420) gegner2\speed=Rand(4,10) gegner2\grafik=gegner2_jpg gegner2\crash=crash_pic gegner2\hp=23 End Function Function gegner_2draw() For gegner2.gegner_2=Each gegner_2 If ImagesCollide(player\grafik_player,player\xx,player\yy,0,gegner2\grafik,gegner2\x,gegner2\y,0) Then PlaySound sound_1 dmg=dmg+1 EndIf Next gegner2.gegner_2=First gegner_2 gegner2\x=gegner2\x-gegner2\speed DrawImage gegner2\grafik,gegner2\x,gegner2\y If gegner2\x < -40 Then Delete gegner2.gegner_2 End Function Function lifeball_def() timer_ball2=timer_ball2+1 If timer_ball2>=700 Then timer_ball2 = 0 ball2.lifeball=New lifeball ball2\ball_x=640 ball2\ball_y=Rand(1,479) ball2\ball_speed=Rand(2,8) ball2\grafik=life_jpg ball2\crash=crash_pic EndIf End Function Function lifeball_draw() For ball2.lifeball=Each lifeball ball2\ball_x=ball2\ball_x-ball2\ball_speed DrawImage ball2\grafik,ball2\ball_x,ball2\ball_y If ImagesCollide(player\grafik_player,player\xx,player\yy,0,ball2\grafik,ball2\ball_x,ball2\ball_y,0) Then hp_bonus=hp_bonus+50 DrawImage ball2\crash,ball2\ball_x,ball2\ball_y Delete ball2.lifeball:Exit ElseIf ball2\ball_x < -30 Then Delete ball2.lifeball:Exit EndIf Next End Function Function musik() LoopSound song_2 PlaySound song_2 End Function Function schuss_def() If KeyHit(57) Then shot.schuss=New schuss shot\x=player\xx+100 shot\y=player\yy+36 shot\speed=20 shot\kugel=player_shot shot\dmg=5 EndIf End Function Function schuss_draw() For shot.schuss=Each schuss shot\x=shot\x+shot\speed DrawImage shot\kugel,shot\x,shot\y Next End Function Function cheat() If name$="******" Then life=1000000000 End Function Function kolligegner1() For gegner.gegner_1=Each gegner_1 For shot.schuss=Each schuss If ImagesCollide(shot\kugel,shot\x,shot\y,0,gegner\grafik,gegner\x,gegner\y,0) Then gegner\hp=gegner\hp-shot\dmg punkte=punkte+1:Delete shot.schuss:Exit ElseIf gegner\hp <= 0 Then DrawImage gegner\crash,gegner\x,gegner\y treffer=treffer+punkte Delete gegner.gegner_1 : Exit ElseIf shot\x > 640 Then Delete shot.schuss:Exit ElseIf treffer/100 >= (lvl+lvl*lvl) Then shot\dmg=shot\dmg+5:Exit EndIf Next Next End Function Function kolligegner2() For gegner2.gegner_2=Each gegner_2 For shot.schuss=Each schuss If ImagesCollide(shot\kugel,shot\x,shot\y,0,gegner2\grafik,gegner2\x,gegner2\y,0) Then gegner2\hp=gegner2\hp-shot\dmg punkte=punkte+5:Delete shot.schuss:Exit ElseIf gegner2\hp <= 0 Then DrawImage gegner2\crash,gegner2\x,gegner2\y treffer=treffer+punkte Delete gegner2.gegner_2 : Exit ElseIf treffer/100 >= (lvl+lvl*lvl) Then shot\dmg=shot\dmg+5:Exit EndIf Next Next End Function Function geschichte() musik() Text 0,40, "Es war einmal vor langer langer zeit... " Text 0,60, ",als Fische noch schiessen konnten! " Text 0,80, "Nemo war nach einem harten Disco abend irgendwo im Meer aufgewacht, " Text 0,100, "ohne zu wissen wo er sich befand. Wie du Dir schon denken kannst, " Text 0,120, "...will Nemo nach hause. Aber auf seinem Weg lauern viele Gefahren!" Text 0,140, "Benutze die Feiltasten um Nemo an den Piraten vorbei zu steuern, " Text 0,160, "Space um zu schiessen, wenn du eine Illuminaten-Pyramide siehst, " Text 0,180, "versuche sie einzusammeln." Text 0,200, "Das ist auch schon alles an was sich Nemo noch erinnern kann, Viel Glück!!!" Text 270,380, "Drücke Enter" WaitKey Cls End Function wär echt nett wenn sich jemand das ding mal vornimmt, danke im voraus !!! |
||
Ich tippe schneller als ich denken kann und wenn ich auf ENTER drücke ist alles wieder weg ... |
DjDETEBetreff: grafik |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Kannst du das ganze Programm(inkl. Grafik, SOund, ...) ins Archiv stellen, damit ich mir ein besseres Bild von deinem Programm machen kann und auch die Fehler sehen kann.
Gruß DjDETE |
||
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. |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group