KeyboardTheGame - ein nettes Spiel!

    • Beta
    • Open Source

    Es gibt 6 Antworten in diesem Thema. Der letzte Beitrag () ist von Andy2002.

      KeyboardTheGame - ein nettes Spiel!

      Moin! :)
      Ich habe heute ein kleines Spiel programmiert.
      Die Idee habe ich bekommen als ich eine Vertikale ProgressBar gefunden habe.
      Schaut euch das Spiel und den Code an.
      Und sagt mir ob ich sauber programmiere, da ich selbst den Code gut lesen und verstehen kann.
      Würde ich mich über euer Feedback freuen!
      BIG THX

      Name:
      KeyboardTheGame v0.01

      Beschreibung:
      Man kann gegen den Computer oder einen Menschlichen Gegner spielen.
      Es gibt auch die Möglichkeit die Schwierigkeit anzupassen.
      Steuerung: ----> Space für Spieler1 -----> A für Spieler2
      Ziel des Spiels ist es so schnell wie möglich die ProgressBar auf 100% zu bringen.
      In dem Sie die Tasten so schnell wie möglich drucken.

      Screenshot(s):


      Verwendete Programmiersprache(n):
      Visual Basic .NET

      Systemanforderungen:
      .NET Framework 2.00

      Systemveränderungen:
      keine - auch keine My.Settings!

      Download(s):
      KeyboardTheGame.zip
      Im Download befindet sich auch die EXE-Datei.


      Lizenz/Weitergabe:
      OpenSource
      Wer will darf den Code bearbeiten und verändern!
      Visual Basic.NET 8o
      MS-SQL
      8o

      Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Cheffboss“ ()

      Wenn Du Option Strict in den Projekteigenschaften festlegen würdest, müsstest Du es nicht immer in jede Datei schreiben.
      Bereinige mal Deine Verweise. Da ist ja bei den imp. Namespaces u.a. noch der VB6-Namespace drin.
      Deine klassenweiten Variablendeklarationen sind im Code verteilt. Geschmackssache.
      Stichwort OOP: Spielerklassen einführen, sodass sich die Formklasse nicht um alles kümmert.
      Wozu gibt es den tmrStatus? Der ist überflüssig.
      Application.Exit → Me.Close
      Ne Random-Instanz reicht doch 1x klassenweit. Am besten in ner Spielerklasse, ggf. als Shared.

      Das für den Anfang.
      Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von „VaporiZed“, mal wieder aus Grammatikgründen.

      Häufig von mir verwendete Abkürzungen: CEs = control elements (Labels, Buttons, DGVs, ...) und tDS (typisiertes DataSet)
      Aufgrund spontaner Selbsteintrübung sind all meine Glaskugeln beim Hersteller. Lasst mich daher bitte nicht in den Spekulatiusmodus gehen.
      @VaporiZed
      Vielen Dank, für dein Feedback. :)
      Ich habe den tmrStatus dazu da, um z.B die Informationen der Prozente in den Labels auszugeben.
      Welche Möglichkeit gibt es sonst?
      Wieso sollte man Me.Close verwenden, wenn man das Programm beenden möchte?
      Visual Basic.NET 8o
      MS-SQL
      8o
      Me.Close ist für dieses Form der Standard Schließweg, s. z.B. hier. Application.Exit ist eine der rabiateren Varianten.
      Bzgl. Status. Der sollte immer dann geprüft werden, wenn er sich verändert. Also der Spieler oder der Computer einen Fortschritt erreicht.
      Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von „VaporiZed“, mal wieder aus Grammatikgründen.

      Häufig von mir verwendete Abkürzungen: CEs = control elements (Labels, Buttons, DGVs, ...) und tDS (typisiertes DataSet)
      Aufgrund spontaner Selbsteintrübung sind all meine Glaskugeln beim Hersteller. Lasst mich daher bitte nicht in den Spekulatiusmodus gehen.
      Wirklich nettes Tastatur Test Programm.. :) Auf so eine Idee, muss man erst mal kommen..
      Zu dem Application.exit befehl kann ich nur sagen, er ist der bessere Me.close verwendet man nur innerhalb des Programmes um Formen zu Schließen. Ich hab es ebenso gelernt, immer Application.exit zu nutzen, wo es sinnvoll ist. statt me.close. Dafür gab es damals eine rüge vom Lehrer. Und ja Application.exit ist die Rabiate Methode, aber die die man nehmen sollte, sonst läuft man Gefahr das sich das Programm nicht richtig beendet.
      Ja, man verwendet Me.Close zum Formulare schließen. Und ein Programm ist so eingestellt, dass es regulär entweder dann beendet wird, wenn das Start-(= Haupt)formular oder das letzte Formular geschlossen wird. Dafür reicht Me.Close auch noch immer aus. Application.Exit hingegen schließt alles. Viel Spaß, wenn Formulare in einer bestimmten Reihenfolge geschlossen werden müssen, um Daten korrekt abzuspeichern. Keine Ahnung, ob es da ne festgelegte Reihenfolge bei Application.Exit gibt. Und solange ich das nicht weiß und Me.Close reicht, nehme ich das her. Da weiß ich, was mich erwartet und es hat bisher immer gereicht. Die Aussage von wegen man läuft Gefahr, dass das Programm nicht richtig beendet wird, erfordert ein Praxisbeispiel.
      Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von „VaporiZed“, mal wieder aus Grammatikgründen.

      Häufig von mir verwendete Abkürzungen: CEs = control elements (Labels, Buttons, DGVs, ...) und tDS (typisiertes DataSet)
      Aufgrund spontaner Selbsteintrübung sind all meine Glaskugeln beim Hersteller. Lasst mich daher bitte nicht in den Spekulatiusmodus gehen.
      Also einzelne Formulare, zb. form2,form3 etc... schließe ich immer mit me.close() form1 jedoch mit Application.exit. Du hast Recht, bei einen Formular, zb. Optionen etc.. kann Application.exit, zu Problemen der Speicherung führen. Me.close löscht zb. nicht die daten aus den Speicher beim Beenden, erst wenn der Ablauf abgschlossen wurde, also alle daten des Programmes gesichert wurden.. Application.exit, ist ehr zu vergleichen wie der Task Manager, wenn man dort ein Programm Schließt, wird es richtig beendet.. Egal was mit dem Programm ist.