SpringBall - mein erstes Game in PB

Spiele, Demos, Grafikzeug und anderes unterhaltendes.
Dare Devil
Beiträge: 237
Registriert: 17.10.2008 18:24
Kontaktdaten:

SpringBall - mein erstes Game in PB

Beitrag von Dare Devil »

Hallo
Da ich nun frisch von BB auf PB umgestiegen bin, habe ich mir gedacht, ich erstelle zur Uebung eine Springball-Variante... hat wunderbar geklappt und es gab kaum Probleme...

Ziel ist es mit dem Ballfaenger den Ball zum gruenen Block zu lenken.. (Koordinaten des gruenen Blocks werden durch Zufall bestimmt) Wenn man ihn trifft gibt es 5 Punkte ...

http://www.file-upload.net/download-120 ... l.exe.html

Naja ich hoffe euch gefaellt es und es laeuft auch bei euren Rechnern problemlos.
Bild + Bild

Bild
Benutzeravatar
X360 Andy
Beiträge: 1206
Registriert: 11.05.2008 00:22
Wohnort: Bodensee
Kontaktdaten:

Beitrag von X360 Andy »

Bekomme ne Virus meldung ?
Win32:KdCrypt [Cryp]
Virus/Wurm
Zuletzt geändert von X360 Andy am 26.10.2008 15:28, insgesamt 2-mal geändert.
Benutzeravatar
STARGÅTE
Kommando SG1
Beiträge: 7031
Registriert: 01.11.2005 13:34
Wohnort: Glienicke
Kontaktdaten:

Beitrag von STARGÅTE »

läuft problemlos.

ein Paar anmerkungen:
- Manchem prallt der Bild vom Grünen Balken falsch ab.
- Es wäre gut wenn man mit dem Schläger den ball noch ein bisschen besser steuern könnte, sodass er nicht immer genau mit 45° oder -45° durch den Raum fliegt ...
PB 6.01 ― Win 10, 21H2 ― Ryzen 9 3900X, 32 GB ― NVIDIA GeForce RTX 3080 ― Vivaldi 6.0 ― www.unionbytes.de
Aktuelles Projekt: Lizard - Skriptsprache für symbolische Berechnungen und mehr
Dare Devil
Beiträge: 237
Registriert: 17.10.2008 18:24
Kontaktdaten:

Beitrag von Dare Devil »

X360 Andy hat geschrieben:Bekomme ne Virus meldung ?
Win32:KdCrypt [Cryp]
Virus/Wurm
echt? :shock: naja ist definitiv kein Virus ... wenn du mir nicht traust dann kannst du den Code selbst kompilieren und testen:

Code: Alles auswählen

; ************************************
; SPRING-BALL - Projekt
; ************************************

If OpenWindow(0, 100, 100, 300, 300, "Spring Ball - by Dare Devil") = 0
  MessageRequester("Laufzeit - Fehler", "Konnte Spiel nicht starten. Programm wird beendet.")
  End
EndIf

If InitSprite() = 0
  MessageRequester("Laufzeit - Fehler", "Konnte Spiel nicht starten. Programm wird beendet.")
  End
EndIf

If OpenWindowedScreen(WindowID(0), 0, 0, 300, 300, 0, 0, 0) = 0
  MessageRequester("Laufzeit - Fehler", "Konnte Spiel nicht starten. Programm wird beendet.")
  End
EndIf

If InitKeyboard() = 0
  MessageRequester("Laufzeit - Fehler", "Konnte Tastatur nicht finden. Programm wird beendet.")
  End
EndIf

wandx.l = 100
wandy.l = 250
wandwidth.l = 50
wandheight.l = 10
ballx.l = 100
bally.l = 10
ballg.l = 1
ballgx.l = 0
punkte.l = 0
zufallx.l = Random(270)
zufally.l = Random(50)

CreateSprite(1, 5, 5)
CreateSprite(2, wandwidth, wandheight)
CreateSprite(3, 30, 10)
Repeat
  ExamineKeyboard()
  ClearScreen(0)
  If StartDrawing(ScreenOutput()) = 0
    MessageRequester("Laufzeit - Fehler", "Konnte Spiel nicht starten. Programm wird beendet.")
    End
  EndIf
  
  Box(wandx, wandy, wandwidth, wandheight, RGB(0, 0, 255))
  Box(zufallx, zufally, 30, 10, RGB(0, 255, 0))
  Circle(ballx, bally, 5, RGB(255, 0, 0))
  DrawText(220, 270, "Punkte: " + Str(punkte), RGB(255, 255, 255), 0)
  
  StopDrawing()
  
  FlipBuffers()
  
  If KeyboardPushed(#PB_Key_Left) And wandx > 0
    wandx - 5
  ElseIf KeyboardPushed(#PB_Key_Right) And wandx < 250
    wandx + 5
  EndIf
  
  If ballg = 1
    bally + 1
  ElseIf ballg = 0
    bally - 1
  EndIf
  
  If SpriteCollision(1, ballx, bally, 2, wandx, wandy)
    ballg = 0
    If ballx < wandx + (wandwidth / 2)
      ballgx = 2
    ElseIf ballx > wandx + (wandwidth / 2)
      ballgx = 1
    ElseIf ballx = wandx + (wandwidth / 2)
      ballgx = 0
    EndIf
  ElseIf bally <= 0
    ballg = 1
  EndIf
  
  If ballgx = 1
    ballx + 1
  ElseIf ballgx = 2
    ballx - 1
  EndIf
  
  If ballx >= 300
    ballgx = 2
  ElseIf ballx <= 0
    ballgx = 1
  EndIf
  
  If SpriteCollision(1, ballx, bally, 3, zufallx, zufally)
    punkte + 5
    zufallx.l = Random(270)
    zufally.l = Random(50)
    
    If ballgx = 1
      ballgx = 2
    ElseIf ballgx = 2
      ballgx = 1
    EndIf
  EndIf
  
  If bally > wandy
    but = MessageRequester("Verloren!", "Sie haben leider verloren! Moechten Sie erneut spielen?", #PB_MessageRequester_YesNo)
    If but = #PB_MessageRequester_Yes
      ballx = 100
      bally = 10
      ballg = 1
      ballgx = 0
      punkte = 0
      zufallx = Random(270)
      zufally = Random(50)
    ElseIf but = #PB_MessageRequester_No
      End
    EndIf
  EndIf
  
  If WindowEvent() = #PB_Event_CloseWindow
    Break
  EndIf
  Delay(10)
ForEver
  
  
  
Dann koennt ihr auch gleich noch ueber mein Coding-Stil meckern :mrgreen:



STARGÅTE hat geschrieben:läuft problemlos.

ein Paar anmerkungen:
- Manchem prallt der Bild vom Grünen Balken falsch ab.
- Es wäre gut wenn man mit dem Schläger den ball noch ein bisschen besser steuern könnte, sodass er nicht immer genau mit 45° oder -45° durch den Raum fliegt ...
Zum ersteren: hab ich schon bemerkt, weiss auch nicht woran es liegt, muss noch guckn
Zum zweiteren: Das ist im Prinzip kein Problem ... werde mich darum kuemmern :D
Bild + Bild

Bild
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

Ich bekomme die selbe Virenmeldung...

die Scheiß Heuristik is mal wieder'n bissel Trigger-Happy.

hast du die exe irgendwie gepackt, oder ist das direktes Kompilat?

lad lieber ZIP oder RAR archive hoch, dann bekommt man's zumindest runtergeladen und er meckert erst beim entpacken.
wenn er beim downloaden selber meckert, muss man den Virenscanner komplett abschalten um die Daten überhaupt zu ziehen.

... leider sind die Virenchecker heutzutage nicht in der Lagen, einen effektiven "Ignorieren"-Button zur Verfügung zu stellen.
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Dare Devil
Beiträge: 237
Registriert: 17.10.2008 18:24
Kontaktdaten:

Beitrag von Dare Devil »

Hallo

Also warum die Virenmeldung bei euch kommt ist mir unklar...Vielleicht kann das mal jemand klaeren ... Mein McAffee jammert zumindest nicht ... :(

Jedenfalls sind beide Probleme die STARGATE bereits angesprochen hat behoben... Man kann den Winkel jetzt steuern (je nachdem wie man den Ball faengt) und ausserdem prallt der Ball korrekt ab, sobald man den gruenen Balken getroffen hat ^^

Das neue Spiel gibts jetzt hier im ZIP-Format

http://www.file-upload.net/download-120 ... l.zip.html
Bild + Bild

Bild
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

Dare Devil hat geschrieben:Also warum die Virenmeldung bei euch kommt ist mir unklar...Vielleicht kann das mal jemand klaeren ...
Kaeru Gaman hat geschrieben:die Scheiß Heuristik is mal wieder'n bissel Trigger-Happy.
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
PMTheQuick
Beiträge: 630
Registriert: 05.05.2005 19:06

Beitrag von PMTheQuick »

Kaeru Gaman hat geschrieben:
Dare Devil hat geschrieben:Also warum die Virenmeldung bei euch kommt ist mir unklar...Vielleicht kann das mal jemand klaeren ...
Kaeru Gaman hat geschrieben:die Scheiß Heuristik is mal wieder'n bissel Trigger-Happy.
Gutes Spiel, aber mit der Zeit etwas langweilig. Ideen:

- Mehr Hindernisse
- Mehr Spielfläche
- Wird immer schneller

OT: zippen/rarren bringt aber auch nich immer etwas. Wenn ich hier ne 5-fach gezippte/gerrate/was-weiss-ich Datei herunterlade, meckert er auch schon beim Download, sobald etwas erkannt wird. (bzw ne Signatur) (Ja auch mit 1x, 2x...)
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

in diesem fall hat es geholfen... er hat überhaupt nicht mehr gemeckert.


@topic

du solltest die verfehlt-bedingung überarbeiten:
scheint so zu sein, dass man verfehlt hat, wenn der mittelpunkt des kreises an der box vorbei fliegt.
eigentlich sollte er dann noch mit sehr flachem winkel abprallen...

ähnlich auch beim rand-abpraller:
der Ball fliegt bis zum Mittelpunkt aus dem Screen.
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Dare Devil
Beiträge: 237
Registriert: 17.10.2008 18:24
Kontaktdaten:

Beitrag von Dare Devil »

Kaeru Gaman hat geschrieben: @topic

du solltest die verfehlt-bedingung überarbeiten:
scheint so zu sein, dass man verfehlt hat, wenn der mittelpunkt des kreises an der box vorbei fliegt.
eigentlich sollte er dann noch mit sehr flachem winkel abprallen...

ähnlich auch beim rand-abpraller:
der Ball fliegt bis zum Mittelpunkt aus dem Screen.
Habe jetzt beide Bugs behoben.. Der Ball prallt jetzt richtig von den Waenden hab (ohne "geschnitten" zu werden).
Ausserdem muss der Ball jetzt bis ganz runter fliegen, dass man verliert... Und wenn man den Ball jetzt "gerade noch so" mit dem Rand der Box faengt, fliegt der Ball im flachen Winkel und sehr schnell weiter...

Hier die aktualisierte Version:
http://www.file-upload.net/download-120 ... l.zip.html

Falls ihr noch Bugs findet immer her damit ... Will ja, dass mein erstes Spiel in PB so ziemlich fehlerfrei wird :D

Und Level einbauen usw... ne... Das Spiel diente fuer mich nur zur Uebung... :D
Bild + Bild

Bild
Antworten