Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht Das deutsche QBasic- und FreeBASIC-Forum
Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
 
FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen  RegistrierenRegistrieren
ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin
Zur Begleitseite des Forums / Chat / Impressum
Aktueller Forenpartner:

kleines Spiel
Gehe zu Seite Zurück  1, 2, 3, 4, 5  Weiter
 
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu QBasic.
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Skilltronic



Anmeldungsdatum: 10.09.2004
Beiträge: 1148
Wohnort: Köln

BeitragVerfasst am: 24.02.2008, 16:43    Titel: Antworten mit Zitat

Seb hat Folgendes geschrieben:
Sieht das Programm dann so aus?:


Nein, nein und nochmals nein. Du hast nur völlig wirr Stücke aus Nemoreds, Dreaels und meinen Beispielen aneinanderkopiert, ohne dir Gedanken darüber zu machen, was du bzw. "dein Programm" da eigentlich tut.

Von kleineren Fehlern wie dass z.B. der Wert von levelNr% nirgendwo festgelegt wird oder es LTRIM$ und nicht TRIM$ heißen muss etc. - du liest mit Dreaels Teil eine Leveldatei ein, aber benutzt sie dann gar nicht (???), sondern zeichnest weiterhin einfach das Kästchen aus meinem Beispiel und bewegst dich darin nach Nemoreds Methode, die ihrerseits aber wieder nicht zu den anderen Teilen passt. So wird z.B. geprüft, ob das Feld, auf das man will im gültigen Bereich liegt, obwohl das unnötig ist, wenn der Rand von Mauer umgeben ist.

Sorry, aber wenn du dir nicht etwas mehr Mühe gibst, zu verstehen, was du da programmierst, kann das nichts werden.

Gruß
Skilltronic
_________________
Elektronik und QB? www.skilltronics.de !
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Seb



Anmeldungsdatum: 29.11.2006
Beiträge: 120
Wohnort: Henfenfeld

BeitragVerfasst am: 24.02.2008, 19:18    Titel: Antworten mit Zitat

Ich weiß ja nicht, wie ich dann das ganze machen muss und alles am Schluss aussieht weinen
_________________
MfG
Seb
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen AIM-Name Yahoo Messenger MSN Messenger
dreael
Administrator


Anmeldungsdatum: 10.09.2004
Beiträge: 2529
Wohnort: Hofen SH (Schweiz)

BeitragVerfasst am: 24.02.2008, 19:30    Titel: Lauffähiges Beispiel Antworten mit Zitat

Seb hat Folgendes geschrieben:
Weiß jemand, was daran falsch ist?

Habe inzwischen eine ganz einfach gehaltene, aber voll lauffähige Version (LABSPIEL.BAS) zusammengestellt:

http://beilagen.dreael.ch/QB/LABSPIEL.ZIP

Hinweis: Levels sind mit einem Generator (als LEV_GEN.BAS ebenfalls dabei) erstellt, diese kannst Du jedoch mit einem beliebigen Texteditor noch anpassen.

Auf aufwändige Grafik und Sound wurde verzichtet.
_________________
Teste die PC-Sicherheit mit www.sec-check.net
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Skilltronic



Anmeldungsdatum: 10.09.2004
Beiträge: 1148
Wohnort: Köln

BeitragVerfasst am: 24.02.2008, 19:35    Titel: Antworten mit Zitat

Seb hat Folgendes geschrieben:
Ich weiß ja nicht, wie ich dann das ganze machen muss und alles am Schluss aussieht weinen


Wie schon gesagt: versuche nachzuvollziehen, was dir bisher erklärt wurde und mache es dann selbst! Wenn du etwas nicht verstehst, frage ganz konkret nach. Also z.B. "was genau passiert in der und der Zeile", "wie funktioniert dieser Befehl" usw.
_________________
Elektronik und QB? www.skilltronics.de !
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Seb



Anmeldungsdatum: 29.11.2006
Beiträge: 120
Wohnort: Henfenfeld

BeitragVerfasst am: 24.02.2008, 21:38    Titel: Antworten mit Zitat

Eigentlich verstehe ich fast den ganzen Code von http://forum.qbasic.at/viewtopic.php?p=73932#73932 nicht...
_________________
MfG
Seb
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen AIM-Name Yahoo Messenger MSN Messenger
nemored



Anmeldungsdatum: 22.02.2007
Beiträge: 4709
Wohnort: ~/

BeitragVerfasst am: 25.02.2008, 16:37    Titel: Antworten mit Zitat

Seb hat Folgendes geschrieben:
Eigentlich verstehe ich fast den ganzen Code von http://forum.qbasic.at/viewtopic.php?p=73932#73932 nicht...

Der Code öffnet eine Datei, um die Leveldaten auszulesen.
Code:
OPEN "level" + TRIM$(STR$(levelNr%)) + ".dat" FOR INPUT AS 1
FOR i%=1 TO 25
  LINE INPUT#1, z$
  [...]
NEXT i%
CLOSE 1

Die FOR-Schleife liest eine Zeile (LINE INPUT) nach der anderen aus der Datei, und das für insgesamt 25 Zeilen (weil i% bei 1 beginnt und bei 25 aufhört; bei jedem Schleifendurchlauf wird i% um 1 erhöht). Das bedeutet nebenbei, dass die Leveldaten auch 25 Zeilen beinhalten müssen.
Code:
  FOR j%=1 TO 40
    SELECT CASE MID$(z$, j%, 1)
    [...]
    END SELECT
  NEXT j%

Die eingelesene Zeile wird jetzt in ihre Einzelbuchstaben zerlegt. MID$(z$, j%, 1) liefert den j-ten Buchstaben des Strings z$, also deiner eingelesenen Zeile. Da j% von 1 bis 40 läuft, folgt daraus, dass jede Levelzeile aus 40 Zeichen bestehen muss.
Code:
    CASE "*"
      level%(j%, i%) = 219
    CASE " "
      level%(j%, i%) = 32
    CASE "S"
      xPosStart% = j%
      yPosStart% = i%
      level%(j%, i%) = 32
    CASE "Z"
      zielX% = j%
      zielY% = i%
      level%(j%, i%) = 32

Auswertung des eingelesenen Zeichens: Steht da ein *, dann ist an der Stelle eine Wand (Zeichen 219). Ein Leerzeichen steht für eine freie Stelle (Zeichen 32). Den Buchstaben S und Z haben eine besondere Bedeutung: Sie sind zum einen freie Felder (Zeichen 32), zum anderen der Start- bzw. Zielpunkt. Damit sich das Programm das merken kann, werden hier die Variablen xPosStart%, yPosStart%, zielX% und zielY% angelegt (d. h. du bist am Ziel, wenn du an der Stelle zielX% / zielY% bist).

Die Leveldaten werden im Array level%() gespeichert. Wenn z. B. level%(7, 5) den Wert 219 hat, bedeutet das, dass in der 5. Zeile, 7. Spalte eine Wand steht (beachte dabei, dass normalerweise der x-Wert von links nach rechts geht und der y-Wert von oben nach unten, dass es bei LOCATE aber anders herum ist: da steht erst die Zeile, dann die Spalte).

Probiere doch mal nur diesen Code aus - einfach nur die Daten aus einer Datei einlesen (dreael hat ja ein Beispiellevel gepostet, das kannst du unter level0.dat speichern und/oder modifizieren) und auf den Bildschirm bringen, oder einzelne Felder auslesen. Probier mal ein bisschen rum. Und wenn dieser Teil zu deiner Zufriedenheit funktioniert, kannst du weiterbauen.
_________________
Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Seb



Anmeldungsdatum: 29.11.2006
Beiträge: 120
Wohnort: Henfenfeld

BeitragVerfasst am: 27.02.2008, 16:19    Titel: Antworten mit Zitat

Danke nemored!

Ich habe jetzt einmal bisschen rumprobiert, aber es ist mir immer noch ein Rätsel, wie ich das einbaue?!

Immer kommen Fehler-Meldungen.

Kann bitte evtl. jemand einmal den einlese Code in meinen Code einbauen, weil bei mir wird das noch ewig dauern weinen ?
Ich würde mich freuen.
Danach könne ich auch nachvollziehen, wie man das macht...

Hier wäre nochmal der Code:
Code:
CLS
COLOR 13
Xy% = 2
Xx% = 2
LOCATE Xy%, Xx%
PRINT CHR$(1)
COLOR 12
LOCATE 9, 9
PRINT "X"

DO
COLOR 14
FOR a = 1 TO 10
LOCATE 1, a
PRINT CHR$(219)
LOCATE 10, a
PRINT CHR$(219)
NEXT

FOR b = 2 TO 9
LOCATE b, 1
PRINT CHR$(219)
LOCATE b, 10
PRINT CHR$(219)
NEXT

   Xpos% = -1
   SELECT CASE INKEY$
      CASE CHR$(0) + CHR$(&H4B)
         Xpos% = 0
      CASE CHR$(0) + CHR$(&H4D)
         Xpos% = 1
      CASE CHR$(0) + CHR$(&H48)
         Xpos% = 2
      CASE CHR$(0) + CHR$(&H50)
         Xpos% = 3
   END SELECT
   SELECT CASE Xpos%
      CASE 0: Xx% = Xx% - 1
      CASE 1: Xx% = Xx% + 1
      CASE 2: Xy% = Xy% - 1
      CASE 3: Xy% = Xy% + 1
   END SELECT
   IF Xx% < 1 THEN Xx% = 1
   IF Xx% > 10 THEN Xx% = 10
   IF Xy% < 1 THEN Xy% = 1
   IF Xy% > 10 THEN Xy% = 10
IF SCREEN(Xy%, Xx%) = 32 OR SCREEN(Xy%, Xx%) = ASC("X") THEN
   IF Xpos% > -1 THEN
   CLS
   COLOR 13
   LOCATE Xy%, Xx%
   PRINT CHR$(1)
   COLOR 12
   LOCATE 9, 9
   PRINT "X"
   END IF
ELSE
   SELECT CASE Xpos%
      CASE 0: Xx% = Xx% + 1
      CASE 1: Xx% = Xx% - 1
      CASE 2: Xy% = Xy% + 1
      CASE 3: Xy% = Xy% - 1
   END SELECT
END IF
LOOP UNTIL Xx% = 9 AND Xy% = 9

_________________
MfG
Seb
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen AIM-Name Yahoo Messenger MSN Messenger
Skilltronic



Anmeldungsdatum: 10.09.2004
Beiträge: 1148
Wohnort: Köln

BeitragVerfasst am: 29.02.2008, 14:58    Titel: Antworten mit Zitat

Aber du hast doch schon ein Beispiel von Dreael bekommen, das nemored ausführlich erklärt hat. Dann schreib doch mal ganz konkret, wenn du was nicht verstehst, am besten mit der Fehlermeldung.

Ich habe dir auch noch mal ein Beispiel geschrieben, der Einfachheit halber kannst du die Leveldateien von Dreael benutzen Ansonsten gehe ich in meinem Programm aber etwas anders vor. Bevor ich mir einen Wolf erkläre, warte ich lieber auf Rückfragen.

Code:
SCREEN 0
CLS
DIM byte AS STRING * 1
level = 1

DO
 CLS
 datei$ = "level" + LTRIM$(STR$(level)) + ".txt"
 OPEN datei$ FOR BINARY AS #1
 IF LOF(1) = 0 THEN
  LOCATE 1, 1
  COLOR 15, 0
  PRINT "Leveldatei nicht gefunden."
  CLOSE #1
  END
 END IF
 spalte = 1
 zeile = 1
 FOR zeichen = 1 TO LOF(1)
  GET #1, zeichen, byte
  IF byte = CHR$(13) THEN
   zeile = zeile + 1
   spalte = 1
   zeichen = zeichen + 1
  ELSE
   SELECT CASE byte
    CASE "*"
     byte = CHR$(219)
     COLOR 14, 0
    CASE "S"
     zmerk = zeile
     smerk = spalte
     merk = ASC(byte)
     fmerk = 12
     byte = CHR$(1)
     COLOR 13, 0
    CASE "Z"
     byte = "X"
     COLOR 12, 0
   END SELECT
   LOCATE zeile, spalte
   PRINT byte;
   spalte = spalte + 1
  END IF
 NEXT

 CLOSE #1

 zeile = zmerk
 spalte = smerk

 DO
 
  DO
   taste$ = INKEY$
  LOOP WHILE taste$ = ""

  neuezeile = zeile
  neuespalte = spalte

  SELECT CASE taste$
   CASE CHR$(0) + "K"
    neuespalte = spalte - 1
   CASE CHR$(0) + "M"
    neuespalte = spalte + 1
   CASE CHR$(0) + "H"
    neuezeile = zeile - 1
   CASE CHR$(0) + "P"
    neuezeile = zeile + 1
   CASE CHR$(27)               'Ende mit Escape
    END
  END SELECT

  IF SCREEN(neuezeile, neuespalte) <> 219 THEN
   LOCATE zeile, spalte
   COLOR fmerk, 0
   PRINT CHR$(merk);
   spalte = neuespalte
   zeile = neuezeile
   merk = SCREEN(zeile, spalte)
   fmerk = SCREEN(zeile, spalte, 1)
   LOCATE zeile, spalte
   COLOR 13, 0
   PRINT CHR$(1);
  END IF

 LOOP UNTIL merk = ASC("X")

 level = level + 1

LOOP


Gruß
Skilltronic
_________________
Elektronik und QB? www.skilltronics.de !


Zuletzt bearbeitet von Skilltronic am 01.03.2008, 21:07, insgesamt einmal bearbeitet
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Seb



Anmeldungsdatum: 29.11.2006
Beiträge: 120
Wohnort: Henfenfeld

BeitragVerfasst am: 01.03.2008, 09:00    Titel: Antworten mit Zitat

Danke!

Jetzt weiß ich, was ich falsch gemacht habe!
Ich habe paar Zeilen ausgelassen.

Skilltronic hat Folgendes geschrieben:
Bevor ich mir einen Wolf erkläre, warte ich lieber auf Rückfragen.

OK zwinkern
Eins verstehe ich nicht:
Was macht...
Code:
LOF(1)

...???
_________________
MfG
Seb
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen AIM-Name Yahoo Messenger MSN Messenger
Jojo
alter Rang


Anmeldungsdatum: 12.02.2005
Beiträge: 9736
Wohnort: Neben der Festplatte

BeitragVerfasst am: 01.03.2008, 13:45    Titel: Antworten mit Zitat

Was hab ich gesagt? F1 drücken! Die QB-hilfe erklärt das soooo toll... Deswegen verzichte ich jetzt auf eine Erklärung Zunge rausstrecken
_________________
» Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Seb



Anmeldungsdatum: 29.11.2006
Beiträge: 120
Wohnort: Henfenfeld

BeitragVerfasst am: 01.03.2008, 19:08    Titel: Antworten mit Zitat

Oh, stimmt!

Das muss ich mir jetzt mal merken grinsen
_________________
MfG
Seb
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen AIM-Name Yahoo Messenger MSN Messenger
RatsDevSoftware



Anmeldungsdatum: 22.11.2007
Beiträge: 48

BeitragVerfasst am: 01.03.2008, 21:10    Titel: Antworten mit Zitat

kauf dir ne seniorentastatur, die die üblichen funktionen gleich mit auf den tasten hat grmll...
_________________
visit our Homepage!
shift ist verschwendung...
...o gott - ich fang schon wieder an zu spammen...
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Skilltronic



Anmeldungsdatum: 10.09.2004
Beiträge: 1148
Wohnort: Köln

BeitragVerfasst am: 01.03.2008, 21:26    Titel: Antworten mit Zitat

Seb hat Folgendes geschrieben:
Jetzt weiß ich, was ich falsch gemacht habe!
Ich habe paar Zeilen ausgelassen.


Nur mal so aus Interesse - wie meinst du das? Mein Beispiel, also sowohl das Laden als auch die Steuerung, funktioniert doch ganz anders als die vorigen. Wie kann dir das zeigen, dass du ein paar Zeilen ausgelassen hast und welche Zeilen meinst du? Ist dir denn aufgefallen, dass ich z.B. kein Array benutze, und der Hintergrund trotzdem erhalten bleibt, wenn man drüber läuft, wie beim Startsymbol "S"? Dass das Laden der Leveldatei unabhängig von der Grösse funktioniert und die Steuerung über die Pfeiltasten - wie ich finde - weniger umständlich ist, als die, die du bisher hattest?

Gruß
Skilltronic
_________________
Elektronik und QB? www.skilltronics.de !
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Jojo
alter Rang


Anmeldungsdatum: 12.02.2005
Beiträge: 9736
Wohnort: Neben der Festplatte

BeitragVerfasst am: 01.03.2008, 21:28    Titel: Antworten mit Zitat

RatsDevSoftware hat Folgendes geschrieben:
kauf dir ne seniorentastatur, die die üblichen funktionen gleich mit auf den tasten hat grmll...

hattest du nicht mal was von einem neuanfang ohne sinnlose postings gesagt...? Ô_ò
_________________
» Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Seb



Anmeldungsdatum: 29.11.2006
Beiträge: 120
Wohnort: Henfenfeld

BeitragVerfasst am: 02.03.2008, 08:52    Titel: Antworten mit Zitat

Skilltronic hat Folgendes geschrieben:
Nur mal so aus Interesse - wie meinst du das? Mein Beispiel, also sowohl das Laden als auch die Steuerung, funktioniert doch ganz anders als die vorigen. Wie kann dir das zeigen, dass du ein paar Zeilen ausgelassen hast und welche Zeilen meinst du?

Da hab ich mich vll. bisschen falsch ausgedrückt.

Ich meinte, dass ich viele Teile des Codes anders hatte und ab dem CLOSE #1 viel flasch...
_________________
MfG
Seb
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen AIM-Name Yahoo Messenger MSN Messenger
Seb



Anmeldungsdatum: 29.11.2006
Beiträge: 120
Wohnort: Henfenfeld

BeitragVerfasst am: 03.03.2008, 18:21    Titel: Antworten mit Zitat

Ich möchte jetzt noch machen, dass man Punkt(oder was auch immer) einsammeln muss, um ins Ziel zu kommen.

Hab mal probiert:
Zitat:
Zitat:
P% = <hier Anzahl der "P"s, die in der jeweiligen Leveldatei vorhanden sind>
OPEN% = 0

Zitat:
IF byte = CHR$(13) THEN
zeile = zeile + 1
spalte = 1
zeichen = zeichen + 1
ELSE
SELECT CASE byte
CASE "P"
COLOR 15
P% = P% - 1
IF P% = 0 THEN OPEN% = 1

CASE "*"
byte = CHR$(219)
COLOR 14, 0
CASE "S"
zmerk = zeile
smerk = spalte
merk = ASC(byte)
fmerk = 12
byte = CHR$(1)
COLOR 13, 0
CASE "Z"
byte = "X"
COLOR 12, 0
END SELECT

Zitat:
LOOP UNTIL merk = ASC("X") AND OPEN% = 1

Wie kann das Programm "zählen", wie viele "P"s da in der jeweiligen Leveldatei sind?
Das mit den "P" einsammeln weiß ich jetzt nicht mehr weiter...
Kann mir jemand helfen?
_________________
MfG
Seb
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen AIM-Name Yahoo Messenger MSN Messenger
nemored



Anmeldungsdatum: 22.02.2007
Beiträge: 4709
Wohnort: ~/

BeitragVerfasst am: 03.03.2008, 21:38    Titel: Antworten mit Zitat

Das Zählen der Punkte kannst du machen, wenn du das Level am Anfang zeichnest. Allerdings werde ich aus dem geposteten Codeabschnitt nicht schlau - was passiert denn an dieser Stelle? Mir kommt es so vor, als ob dieser Abschnitt für das anfängliche Zeichnen zuständig ist, dann scheint mir aber der rot markierte Abschnitt nicht reinzupassen.
_________________
Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
dreael
Administrator


Anmeldungsdatum: 10.09.2004
Beiträge: 2529
Wohnort: Hofen SH (Schweiz)

BeitragVerfasst am: 03.03.2008, 23:40    Titel: Antworten mit Zitat

Ich sehe bereits, Dein kleines Spieleprojekt nähert sich meinem Zelda... :-)

Sonst zum Vorgehen: Soweit hast Du dies bereits korrekt erkannt mit dem zusätzlichen CASE-Abschnitt. Das Ganze aber schaut grob wie folgt aus.
1.) Leveldatei: Wir definieren ein Symbol, z.B. grosses "P" für Perle oder Punktelement (reiner Analyse & Design-Schritt)
2.) Beim Einlesen der Leveldatei: Zu Beginn unmittelbar vor dem OPEN definierst Du z.B.
Code:
restlichePerlen% = 0

und zählst diese bei jedem Vorkommen eines "P"s hoch, so dass nach dem CLOSE das Spiel "weiss", wieviele Juwelen einzusammeln sind.
3.) Spiel selber: Perlenfeld muss von Wand und Leerraum abweichender Code in Level%() bzw. SCREEN-Bildschirmspeicher besitzen, aber von der Bewegung her wie Leerfeld, z.B. zugelassen werden. Dabei aber Feld auf Perle prüfen, falls ja, Einsammelsound abspielen, restlichePerlen% um 1 erniedrigen + Level% an dieser Stelle mit Wert für Leerfeld füllen. Je nach Geschmack lässt Du beim Einsammeln der letzten Perle noch einen "Jetzt nur noch Ziel!"-Sound ertönen + je nach Geschmack das Zielfeld blinken (dies war z.B. beim Klassiker Boulder Dash auf dem Commodore 64 so).
4.) Ziel selber: Da gibt es zwei Varianten, wenn der Spieler noch nicht alle Perlen eingesammelt hat:
a) Du behandelst die Zielfelder wie Leerraum, d.h. man kann hineinlaufen, aber es bewirkt noch nichts. Evtl. Fehler "Noch nicht alles eingesammelt!" o.ä. erscheinen lassen
b) Du behandelst die Zielfelder wie Wand, d.h. man kann noch nicht hineinlaufen, solange man noch nicht alles hat
(Ob a oder b ist reine Geschmackssache von Dir)

Falls für Dich zum Umsetzen dies alles ein wenig kompliziert tönt, kann ich Dir sonst gerne mein LABSPIEL.BAS-Beispiel passend erweitern.
_________________
Teste die PC-Sicherheit mit www.sec-check.net
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Seb



Anmeldungsdatum: 29.11.2006
Beiträge: 120
Wohnort: Henfenfeld

BeitragVerfasst am: 04.03.2008, 19:24    Titel: Antworten mit Zitat

Also im groben hab ichs so verstanden...
(nur das Umsetzen nicht)


dreael hat Folgendes geschrieben:
Falls für Dich zum Umsetzen dies alles ein wenig kompliziert tönt, kann ich Dir sonst gerne mein LABSPIEL.BAS-Beispiel passend erweitern.

Ja, gerne, falls es geht.
_________________
MfG
Seb
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen AIM-Name Yahoo Messenger MSN Messenger
Skilltronic



Anmeldungsdatum: 10.09.2004
Beiträge: 1148
Wohnort: Köln

BeitragVerfasst am: 05.03.2008, 13:41    Titel: Antworten mit Zitat

Hallo

Ich habe das Laden der Leveldatei mal durch einen "Levelgenerator" ersetzt, der Labyrinthe nach dem Zufallsprinzip erzeugt.

http://www.skilltronics.de/runterlader/klspiel.rar

So etwas wie Spielspaß käme aber wohl erst dann auf, wenn man immer nur einen begrenzten Bereich rund um die Spielfigur sehen würde oder man durch ein Spielfeld scrollen könnte, das größer ist, als der Bildschirm.

Gruß
Skilltronic
_________________
Elektronik und QB? www.skilltronics.de !
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu QBasic. Alle Zeiten sind GMT + 1 Stunde
Gehe zu Seite Zurück  1, 2, 3, 4, 5  Weiter
Seite 4 von 5

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.

 Impressum :: Datenschutz