Już jest wersja 0.1
http://www.mediafire.com/?yow9tacwmm3hrf4 - dodałem troszkę kolorków , muzyczkę , nową lokację - las , a co za tym idzie kilka potworków , skille zrobię może w wersji 0.3 , to zależy od tego czy mi się będzie chciało , jak macie jakieś bugi to napiszcie
PS. Gra na chwilę obecną ma ok. 550 linijek
PS2. Hellkillera na razie nie dołączam do autorów , bo jedyne co zrobił , to poproszenie mnie o kod

PS3. Jak ktoś chce kod tej wersji to proszę bardzo , to jest lekko zmodyfikowany kod wersji 0.1 , bo już zaczynałem pisać 0.2
#include <cstdlib>
#include <iostream>
#include <ctime>
#include <conio.h>
#include <stdlib.h>
#include <windows.h>
#include <string>
#include <dos.h>
#include <stdio.h>
#include "console.ddt"
using namespace ddt::console;
using namespace std;
int wybor;
string imie;
int zrobic;
int klasa;
int heromaxhp = 70;
int heronowhp = 70;
int herohp;
int heromaxmp = 70;
int heronowmp = 70;
int herofizatk;
int heromagatk;
int opmaxhp = 70;
int opnowhp = 70;
int ophp;
int opmaxmp = 70;
int opnowmp = 70;
int opfizatk;
int opmagatk;
int lokacja;
string op;
int atak;
int dostales;
int zabrales;
int jeszczeraz;
int wolnepkt = 36;
int dodajpkt;
int przeciwnik = 0;
int skleppytania;
bool pomiescie = false;
bool koniec;
int laswyb;
int potwor;
int random( int nMin, int nMax) { return rand() % (nMax-nMin+1) + nMin;}
int walka ();
int miasto();
int powyborze();
void las()
{
opnowhp = opmaxhp;
opnowmp = opmaxmp;
heronowhp = heromaxhp;
heronowmp = heromaxmp;
laswyb = 0;
potwor = 0;
op = "";
_beep(700,100);
_beep(750,100);
_beep(800,100);
SetConsoleTitle("Console Adventure");
while(laswyb < 1 ||laswyb > 2)
{
cout<<"Co chcesz robic w lesie?"<<endl;
cout<<"1.Poszukac potwora"<<endl;
cout<<"2.Wrocic do miasta"<<endl;
cin>>laswyb;
switch(laswyb)
{
case 1 : srand (static_cast<unsigned int>(time(NULL)));
potwor = random(1,4);
cout<<"Twoim przeciwnikiem bedzie ";
if(potwor == 1)
{
op = "Wilk";
opfizatk = 10;
opmagatk = 0;
cout<<op<<endl;
getch();
system("cls");
walka();
}
if(potwor == 2)
{
op = "Wielki pajak";
opfizatk = 14;
opmagatk = 0;
cout<<op<<endl;
getch();
system("cls");
walka();
}
if(potwor == 3)
{
op = "Trujacy waz";
opfizatk = 20;
opmagatk = 5;
cout<<op<<endl;
getch();
system("cls");
walka();
}
if(potwor == 4)
{
op = "Ogr";
opfizatk = 35;
opmagatk = 5;
cout<<op<<endl;
getch();
system("cls");
walka();
}
if(potwor == 5)
{
op = "Troll mag";
opfizatk = 15;
opmagatk = 35;
cout<<op<<endl;
getch();
system("cls");
walka();
break;
case 2 :
miasto();
break;
default : cout<<"Nieznana opcja"<<endl;
}
}
}
int sklep ()
{
system("cls");
cout<<"Sklep jest pusty , masz jakies pytania?"<<endl;
cout<<"1.Dlaczego sklep jest pusty?"<<endl;
cout<<"2.Nie , nie mam pytan"<<endl;
cin>>skleppytania;
switch(skleppytania)
{
case 1 : cout<<"Bo to za wczesna wersja :D"<<endl;
getch();
system("cls");
break;
case 2 : cout<<"To sie ciesze"<<endl;
getch();
system("cls");
break;
default : cout<<"Nieznana opcja"<<endl;
break;
}
}
int miasto ()
{
system("cls");
cout<<"Jestes w miescie , gdzie chcesz isc ?"<<endl;
cout<<"1.Sklep"<<endl;
cout<<"2.Arena"<<endl;
cout<<"3.Las"<<endl;
cin>>lokacja;
switch (lokacja)
{
case 1 : sklep();
miasto();
break;
case 2 : pomiescie = true;
powyborze();
break;
case 3 : cout<<"Jestes w lesie"<<endl;
getch();
system("cls");
las();
break;
default : cout<<"Nieznana opcja"<<endl;
miasto();
break;
}
}
int walka ()
{
jeszczeraz = 0;
while (heronowhp > 0 || opnowhp > 0 )
{
srand (static_cast<unsigned int>(time(NULL)));
cout<<imie<<"\t\t\t\t"<<op<<endl;
cout<<"HP\t\t\t\tHP"<<endl;
if (heronowhp <= 30)
{
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 4);
cout<<heronowhp<<"/"<<heromaxhp;
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 15);
}
else
{
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 2);
cout<<heronowhp<<"/"<<heromaxhp;
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 15);
}
cout<<"\t\t\t\t";
if (opnowhp <= 30)
{
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 4);
cout<<opnowhp<<"/"<<opmaxhp<<endl;
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 15);
}
else
{
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 2);
cout<<opnowhp<<"/"<<opmaxhp<<endl;
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 15);
}
cout<<"MP\t\t\t\tMP"<<endl;
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 3);
cout<<heronowmp<<"/"<<heromaxmp<<"\t\t\t\t"<<opnowmp<<"/"<<opmaxmp<<endl;
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 15);
cout<<"Max. obrazenia fizyczne\t\tMax. obrazenia fizyczne"<<endl;
cout<<herofizatk<<"\t\t\t\t"<<opfizatk<<endl;
cout<<"Max. obrazenia magiczne\t\tMax. obrazenia magiczne"<<endl;
cout<<heromagatk<<"\t\t\t\t"<<opmagatk<<endl<<endl<<endl;
cout<<"Twoj ruch"<<endl;
cout<<"Co robic?"<<endl;
cout<<"1.Atak mieczem"<<endl;
cout<<"2.Atak magiczny"<<endl;
cin>>atak;
switch(atak)
{
case 1 : cout<<"Wybrales atak mieczem"<<endl;
opnowhp = opnowhp - random(0, herofizatk);
break;
case 2 : cout<<"Wybrales atak magiczny"<<endl;
if(heronowmp <= 0)
{
cout<<"Nie masz mp ;p"<<endl;
}
else
{
heronowmp = heronowmp - 5;
opnowhp = opnowhp - random(0, heromagatk);
}
break;
default : cout<<"Nieznana opcja"<<endl;
break;
}
cout<<"Ruch komputera"<<endl;
int akcja = rand() % 2 + 1;
if (akcja == 1)
{
cout<<"Komputer wybral atak mieczem"<<endl;
heronowhp = heronowhp - random(0, opfizatk);
}
else
{
cout<<"Komputer wybral atak magiczny"<<endl;
if(opnowmp <= 0)
{
cout<<"Komputer nie ma mp"<<endl;
}
else
{
opnowmp = opnowmp - 5;
heronowhp == heronowhp - random(0, opmagatk);
}
}
cout<<"Nacisnij cos zeby kontynuowac"<<endl;
getch();
system("cls");
if (heronowhp <= 0 )
{
cout<<"Przegrales :("<<endl;
Beep(100,150);
Beep(200,150);
Beep(120,100);
Beep(110,100);
Beep(100,100);
Beep(90,100);
Beep(80,100);
Beep(70,100);
Beep(60,100);
Beep(50,400);
while (jeszczeraz <= 0 || jeszczeraz > 2)
{
cout<<"Jeszcze raz?"<<endl;
cout<<"1.Tak"<<endl;
cout<<"2.Nie"<<endl;
cin>>jeszczeraz;
switch (jeszczeraz)
{
case 1 : heronowhp = heromaxhp;
heronowmp = heromaxmp;
opnowhp = opmaxhp;
opnowmp = opmaxmp;
cout<<"No , to jeszcze raz"<<endl;
getch();
system("cls");
walka();
break;
case 2 : miasto();
break;
default : system("cls");
cout<<"Nieznana opcja"<<endl;
break;
}
}
}
if (opnowhp <= 0 )
{
cout<<"Wygrales :)"<<endl;
Beep(210, 150);
Beep(280, 150);
Beep(350, 150);
Beep(420, 200);
Beep(350, 150);
Beep(420, 300);
getch();
while (jeszczeraz <= 0 || jeszczeraz > 2)
{
cout<<"Jeszcze raz?"<<endl;
cout<<"1.Tak"<<endl;
cout<<"2.Nie"<<endl;
cin>>jeszczeraz;
switch (jeszczeraz)
{
case 1 : heronowhp = heromaxhp;
heronowmp = heromaxmp;
opnowhp = opmaxhp;
opnowmp = opmaxmp;
cout<<"No , to jeszcze raz"<<endl;
getch();
system("cls");
walka();
break;
case 2 : miasto();
break;
default : system("cls");
cout<<"Nieznana opcja"<<endl;
break;
}
}
}
}
}
int powyborze ()
{
if(pomiescie = false)
{
miasto();
}
else
{
while (przeciwnik <= 0 || przeciwnik >= 3)
{
cout<<"Wybierz przeciwnika :"<<endl;
cout<<"1.Bandyta"<<endl;
cout<<"2.Czarodziej"<<endl;
cin>>przeciwnik;
switch (przeciwnik)
{
case 1 : system("cls");
cout<<"Twoim przeciwnikiem bedzie bandyta"<<endl;
op = "Bandyta";
opfizatk = 30;//0-30
opmagatk = 6;//0-6
getch();
system("cls");
walka();
while (heronowhp > 0 || opnowhp > 0)
{
walka();
}
break;
case 2 : system("cls");
cout<<"Twoim przeciwnikiem bedzie czarodziej"<<endl;
op = "Czarodziej";
opfizatk = 6;//0-6
opmagatk = 30;//0-30
getch();
system("cls");
walka();
while (heronowhp > 0 || opnowhp > 0)
{
walka();
}
break;
default : cout<<"Nieznana opcja"<<endl;
getch();
system("cls");
}//switch
}//while
}//else
}//funkcja
int wyborklasy ()
{
cout<<"Wolisz maga(1) , rycerza(2) , czy sam zrobisz swoja klase(3)?"<<endl;//wybór klasy
cin>>klasa;
switch(klasa)
{
case 1 : herofizatk = 6;//0-6
heromagatk = 30;//0-30
system("cls");
cout<<"Jestes magiem"<<endl;
miasto();
break;
case 2 : herofizatk = 30;//0-30
heromagatk = 6;//0-6
system("cls");
cout<<"Jestes rycerzem"<<endl;
miasto();
break;
case 3 :
cout<<"Robisz swoja klase"<<endl;
cout<<"Powodzenia"<<endl;
getch();
while(wolnepkt >= 0)
{
system("cls");
cout<<"Atrybuty"<<endl;
cout<<"Atak fizyczny : "<<herofizatk<<endl;
cout<<"Atak magiczny : "<<heromagatk<<endl;
cout<<"Masz jescze "<<wolnepkt<<"pkt."<<endl;
cout<<"Do czego chcesz dodac 1 punkt?"<<endl;
cout<<"1.Atak fizyczny"<<endl;
cout<<"2.Atak magiczny"<<endl;
cout<<"3.Do niczego[walka]"<<endl;
dodajpkt=getch();
switch(dodajpkt)
{
case 49 : cout<<"Wybrales wzmocnienie ataku fizycznego"<<endl;
herofizatk++;
wolnepkt--;
getch();
break;
case 50 : cout<<"Wybrales wzmocnienie ataku magicznego"<<endl;
heromagatk++;
wolnepkt--;
getch();
break;
case 51 : cout<<"Gratulacje , stworzyles wlasna klase"<<endl;
miasto();
break;
default : cout<<"Nieznana opcja"<<endl;
getch();
system("cls");
break;
}
}
break;
default : cout<<"Nieznana opcja"<<endl;
getch();
system("cls");
wyborklasy();
break;
}
}
int main(int argc, char *argv[])
{
SetConsoleTitle("Console Adventure");
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 11);
cout<<" CCCCCCC OOOOOO NNNN NN SSSSS OOOOOO LL EEEEEE"<<endl;//Intro
cout<<" CCC OO OO NN NN NN SS SS OO OO LL E"<<endl;
cout<<" CCC OO OO NN NN NN SS OO OO LL E"<<endl;
cout<<" CCC OO OO NN NN NN SS OO OO LL EEEEEE"<<endl;
cout<<" CCC OO OO NN NN NN SS OO OO LL E"<<endl;
cout<<" CCC OO OO NN NN NN SS SS OO OO LL E"<<endl;
cout<<" CCCCCCC OOOOOO NN NN SSSSS OOOOOO LLLLLLLL EEEEEE"<<endl;
cout<<""<<endl;
cout<<""<<endl;
cout<<" Adventure"<<endl;
cout<<"\n\n\n\n\n\n\n\n\n\n\n\n\t\t\t\t\t\t\t\tWersja 0.1"<<endl;
Beep(100,500);
Beep(150,500);
Beep(200,500);
Beep(250,500);
Beep(270,500);
Beep(300,500);
Beep(300,100);
Beep(270,100);
Beep(250,100);
Beep(200,100);
Beep(150,100);
Beep(100,100);
Beep(50,500);
cout<<"\n\t\tNacisnij dowolny klawisz aby kontynuowac";
getch();
etymenu :
system("cls");
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 15);
cout<<"-----Menu-----"<<endl;//menu
cout<<"1.Nowa gra"<<endl;
cout<<"2.Wyjscie"<<endl;
cout<<"3.O grze"<<endl;
cin>>wybor;
switch (wybor)
{
case 1 : system("cls");//Nowa gra
cout<<"Wpisz swoje imie"<<endl;
cin>>imie;
etywitaj:
system("cls");
cout<<"Witaj "<<imie<<"!"<<endl;
cout<<"Co chcesz teraz zrobic?"<<endl;
cout<<"1.Wybrac klase\n2.Wyjsc"<<endl;
cin>>zrobic;
switch(zrobic)
{
case 1 : wyborklasy();
powyborze();
break;
case 2 : EXIT_SUCCESS;break;
default : cout<<"Nieznana opcja"<<endl;
getch();
goto etywitaj;
break;
}
break;
case 2 : EXIT_SUCCESS;break;
case 3 : system("cls");
cout<<"Console Adventure 0.1 (nazwa zmieniona z 'Fight')"<<endl;
cout<<"Gra poczatkowo miala byc samym systemem walki,ale chyba bedzie z tego cos wiecej"<<endl;
cout<<"Autorzy :"<<endl;
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 3);
cout<<"Maciejo54 - glowny pomyslodawca i realizator projektu"<<endl;
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 2);
cout<<"Noruj - 'doradca'"<<endl;
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 15);
getch();
system("cls");
goto etymenu;
break;
default : cout<<"Nieznana opcja"<<endl;
getch();
goto etymenu;
break;
}
cout<<"Nacisnij cos , aby zakonczyc program"<<endl;
getch();
}
Jeśli chcesz aby program poprawnie działał musisz ściągnąć bibliotekę console.ddt ze strony ddt.pl
http://kursy.ddt.pl/?LessonId=9wystarczy troszkę poczytać