Spieleprogrammierung

Tutorials.at
Verfügbare Informationen zu "Spieleprogrammierung"

  • Qualität des Beitrags: 0 Sterne
  • Beteiligte Poster: dani93 - Dragorad - Moritz - DrPhil_Guth - nerd753
  • Forum: Tutorials.at
  • Forenbeschreibung: Programmierforum
  • aus dem Unterforum: Spiele
  • Antworten: 11
  • Forum gestartet am: Mittwoch 19.04.2006
  • Sprache: deutsch
  • Link zum Originaltopic: Spieleprogrammierung
  • Letzte Antwort: vor 15 Jahren, 10 Monaten, 30 Tagen, 2 Stunden, 58 Minuten
  • Alle Beiträge und Antworten zu "Spieleprogrammierung"

    Re: Spieleprogrammierung

    dani93 - 04.12.2007, 19:44

    Spieleprogrammierung
    Kann hier jemand mal bitte den Quellcode von nem einfachen spiel reinschreiben und kurz erklären wie sowas funktioniert mich interessiiert das sehr hab aber (noch) total keine ahnung



    Re: Spieleprogrammierung

    Dragorad - 04.12.2007, 22:01


    Code: PROGRAM gewinnspiel;
    USES    crt;
    VAR     a,b,geld,kapital,m,n:integer;

    BEGIN   textcolor(white);
            kapital:=1000;
            m:=1;
            n:=0;
            REPEAT
             clrscr;
             randomize;
             writeln('G E W I N N S P I E L!');
             writeln('Kapital: ',kapital,' EURO');
             IF kapital=0 THEN
             writeln('Game over  Zum Beenden n drücken und mit ENTER bestätigen.')
             ELSE
             begin
              writeln('Wieviel möchten Sie setzen?');
              readln(geld);
              IF geld>kapital THEN
              writeln('So viel Geld haben Sie nicht! /n drücken und mit ENTER bestätigen')
              ELSE
              begin
               kapital:=kapital-geld;
               writeln('Wie lautet die Zufallszahl (0-',m,')?');
               readln(a);
               b:=random(2+n);
               IF a=b THEN
               begin
                textcolor(red+blink);
                writeln('GEWONNEN');
                textcolor(white);
                kapital:=kapital+3*geld;
                n:=n+1;
                m:=m+1;
               end
               ELSE
               begin
                writeln('verloren');
                writeln('Die Zufallszahl wäre ',b,' gewesen.');
               end;
               writeln('Noch einmal? j/n');
              end;
             end;
            UNTIL readkey='n';
            ClrScr;
            textcolor(blue);
            gotoxy(10,10);
            writeln('GAME OVER');
            readln;
    END.

    Hier hast du ein "einfaches" Spiel. Und was genau willst du nun wissen?



    Re: Spieleprogrammierung

    Moritz - 05.12.2007, 10:16

    Hier ist noch ein Spiel
    Hier noch eins (das entspricht vielleicht eher dani93's Vorstellung von einem spiel :wink:):


    Code:
                                       program game;
                                       uses crt;
                                       var i, j: integer;       {Variablen deklarieren}
                                           eingabe: char;
                                           x, y: integer;
                                           x1, y1: integer;
                                           _x, _y: integer;
                                           _i, _j: integer;
                                       begin
                                       i:= 0;
                                       randomize;
                                       clrscr;
                                       _x:=12;
                                       _y:=20;
                                       window(1,1,80,24);    {Fenster einrichten, }
                                       x:= 40;               {damit man das ganz unten funktioniert}
                                       y:= 12;
                                       gotoxy (x, y);
                                       write ('#');
                                       repeat
                                       clrscr;
                                       delay(5);
                                       gotoxy (_x, _y);
                                       write ('00000000000000000000');
                                       if (x>_x-1) and (x<(_x+20)) and (_y = y) then
                                         begin
                                         textcolor (red);
                                         gotoxy (x, y);
                                         write ('#');
                                         gotoxy (40, 12);
                                         writeln ('Game over');
                                         delay (3000);
                                         textcolor (white);
                                         write ('..............................zum beenden Taste druecken');
                                         readkey;
                                         delay (2);
                                         readkey;
                                         exit;
                                         end;
                                       gotoxy (x, y);
                                       write ('#');
                                       begin
                                       {--------------------------------}
                                       eingabe:=readkey;
                                       {--------------------------------------------------------}
                                       if (eingabe='a') then
                                       begin
                                       x:=x-1;
                                       gotoxy (x,y);
                                       write ('#');
                                       end;
                                       {--------------------------------------------------------}
                                       if (eingabe='d') then
                                       begin
                                       x:=x+1;
                                       gotoxy(x, y);
                                       write('#');
                                       end;
                                       {--------------------------------------------------------}
                                       if (eingabe='w') then
                                       begin
                                       y:=y-1;
                                       gotoxy (x, y);
                                       write('#');
                                       end;
                                       {--------------------------------------------------------}
                                       if (eingabe='s') then
                                       begin
                                       y:=y+1;
                                       gotoxy(x, y);
                                       write('#');
                                       end;
                                       {--------------------------------------------------------}
                                       textcolor (white);
                                         if (ord(eingabe)=32) then
                                         begin
                                         x1:=x;                     {zum bomben ablegen}
                                         y1:=y;
                                         textcolor (red);
                                         for i:=2 downto 0 do
                                         begin;
                                         clrscr;
                                         gotoxy (_x, _y);
                                         write ('00000000000000000000');
                                         gotoxy (x, y);
                                         write ('#');
                                         gotoxy (x+1, y);
                                         write (i);
                                         delay (1000);
                                         end;
                                         textcolor (yellow);
                                         gotoxy (x+2, y);
                                         write ('-');
                                         gotoxy (x+2, y+1);                        {Grafik der "Bombe bzw explosion}
                                         write ('\');
                                         gotoxy (x+1, y+1);
                                         write ('"');
                                         gotoxy (x, y+1);
                                         write ('/');
                                         gotoxy (x, y-1);
                                         write ('\');
                                         gotoxy (x+1, y-1);
                                         write ('"');
                                         gotoxy (x+2, y-1);
                                         write ('/');
                                         end;
                                         textcolor (white);
                                       if (x>78) then x:=2;      {wenn man ber den Bildschirmrand hinausgeht, landet man am anderem ende}
                                       if (y>22) then y:=2;      {deswegen das Fenster}
                                       if (x=2) then x:=78;
                                       if (y=1) then y:=22;
                                       end;
                                       until (ord(eingabe)=27);
                                       end.









    [/edit]

    ich habe das entfernt, das diente ursprünglich zum Laden des Levels aus einer Datei, hat aber nie funktioniert!



    Re: Spieleprogrammierung

    Dragorad - 05.12.2007, 11:01


    Ist die Init-Unit vorinstalliert? Bei mir ist sie nicht vorhanden (in TurboPascal)?



    Re: Spieleprogrammierung

    Moritz - 05.12.2007, 12:50


    Jetzt muesste es gehen! (ich habe sie rausgenommen)



    Re: Spieleprogrammierung

    dani93 - 05.12.2007, 17:44


    Danke für eure Bemühungen aber ich hab da eigentlich an ein Spiel in C gedacht. So was wie ein einfaches snake oder Tetris.



    Re: Spieleprogrammierung

    DrPhil_Guth - 05.12.2007, 18:35


    Selbst ein einfaches Spiel wie Tetris ist sehr sehr aufwändig.
    Da der quelltext zum Posten eindeutig zu lang ist, habe ich dir hier einen link herausgesucht, damit du dir eine vorstellung machen kannst, wie viel code das ist:

    http://www.google.de/codesearch?hl=de&q=show:5NRtfOiU54w:AoImSJD75iM&sa=N&ct=rdl&cs_p=http://www.angstrom-distribution.org/unstable/sources/gnome-games-2.6.1.tar.bz2&cs_f=gnome-games-2.6.1/gnometris

    Das ist zwar in C++, aber ich denke das müsste zum vorstellen dennoch genügen.



    Re: Spieleprogrammierung

    dani93 - 05.12.2007, 19:44


    Wow is ja ganz schön lang.
    Ich werde dann mit dem Spieleprogrammieren doch noch ein bisschen warten.



    Re: Spieleprogrammierung

    Moritz - 15.12.2007, 14:42


    hier gibt es eine coole seite von einem verrücktem DOS-freak

    http://igames.inside1.net/html/dosd1.htm



    Re: Spieleprogrammierung

    nerd753 - 27.05.2008, 19:28


    Hier ein nettes kleines Spiel in C:

    Gelöscht von Administrator.
    Wo ist das her?
    Selbst geschrieben?
    Das ist auch kein "Kopiere einen Quelltext aus dem Internet"-Forum.



    Re: Spieleprogrammierung

    dani93 - 28.05.2008, 17:04


    WTF?



    Mit folgendem Code, können Sie den Beitrag ganz bequem auf ihrer Homepage verlinken



    Weitere Beiträge aus dem Forum Tutorials.at

    TIMER - gepostet von Martix391 am Dienstag 20.06.2006
    schlüsselwörter - gepostet von AQE89 am Samstag 10.06.2006
    ASCII-Code ! - gepostet von EndSub am Donnerstag 10.08.2006
    Spiele-Trainer - gepostet von Cookie am Dienstag 20.02.2007
    Übersetzter - gepostet von Bratwurst am Donnerstag 06.09.2007
    Umstieg von DevCpp zu Visual C++ 6.0 - gepostet von DrPhil_Guth am Mittwoch 28.03.2007
    Zähler in C - gepostet von mitti am Montag 14.05.2007



    Ähnliche Beiträge wie "Spieleprogrammierung"

    Gute Ideen Mangelndes Fachwissen ( Spieleprogrammierung ) - Zuul (Samstag 06.01.2007)