Software-Emitting
Der programmierte Erfolg

Kolonie

Jap, ich hab mal wieder ein Spiel programmiert.
Es soll eher mal an das Spiel Kolonie für den ZX81 1Kb erinnern. Ich habe es in der Grundphase Programmiert und erweitert. Die Funktionen sind in Kommentaren im Programm erklärt.

/*
   Kolonie
    -- ein Spiel von Software-Emitting
   
   Anleitung:
             Sie sind Vorsitzender der Kolonie: Mars-Mission
             Sie werden dort 20 Jahre lang Leben
             Sie haben folgende Optionen:
                 -- Nahrung: Sie müssen genügend Nahrung kaufen
                 -- Land: Wenn sie Land kaufen wollen
                 -- Arbeiter: Wenn sie Arbeiter kaufen wollen
                 -- Sauerstoff: Wenn sie O2 brauchen
            
             Wenn diese Optionen nicht richtig erfüllt werden,
             dann stirbt ein Teil der Bevölkerung
             Dieses Spiel verdeutlicht die Schwierigkeit
             eine Kolonie am Leben zu erhalten
*/
#include <iostream>

using namespace std;

/* Definitionen */
int personen = 500;
int cash = 1000;
int arbeiter = 0;
int land = 1;
int sauerstoff = 1000;
int nahrung;
int l;
int a;
int s;
int jahr;

void Zuende() {
     cout << "***Ende*** " << endl;
     cout << "Amtszeit zuende!" << endl;
     cout << "Geld:" << cash << endl;
     system("PAUSE");
}

void lose() {
     cout << "***Ende***" << endl;
     cout << "Du hast verloren. " << endl;
     system("PAUSE");
     system("EXIT");
}

int main()
{
    system("COLOR 0f");
    cout << "***Kolonie***" << endl;
    cout << endl;
    cout << "(C)Software-Emitting" << endl;  
    for(jahr=0;jahr < 11;jahr++) {
    cout << endl;
    cout << "Jahr:" << jahr << endl;
    cout << "Personen:" << personen << endl;
    cout << "Geld:" << cash << endl;
    cout << "Land:" << land << endl;
    cout << "Sauerstoff:" << sauerstoff << endl;
    cout << endl;
    essen:
    cout << "Wieviel Nahrung:";
    cin >> nahrung;
    if(cash < nahrung * 2) { goto essen; }
    lan:
    cout << "Wieviel Land:";
    cin >> l;
    if(cash < l * 10) { goto lan; }
    land = land + l;
    arbeit:
    cout << "Wieviel Arbeiter:";
    cin >> a;
    if(cash < a * 20) { goto arbeit; }
    personen = personen + a;
    sauerst:
    cout << "Wieviel Sauerstoff:";
    cin >> s;
    if(cash < s) { goto sauerst; }
    sauerstoff = sauerstoff + s;
    /* Berechnungen */
    if(cash == 0) { lose(); }
    if(nahrung == 0) { personen = personen - (cash / 10); }
    if(nahrung < personen) { personen = personen - (nahrung / 5); }
    if(nahrung >= personen) { personen = personen + (nahrung / 10); }
    if(sauerstoff < personen) { personen = personen - (sauerstoff / 10); }
    if(personen <= 0) { lose(); }
    if(cash <= 0) { lose(); }
    sauerstoff = sauerstoff - (personen / 10);
    if(sauerstoff <= 0) { lose(); }
    cash = cash + (personen / 10);
    }
   
    Zuende();
    return 0;
}






Kommentar zu dieser Seite hinzufügen:
Ihr Name:
Ihre Nachricht: