Witam,
od 3 dni zacząłem swoją przygodę z c++ i postanowiłem napisać swoją 1 grę.
jeśli zdjęcie doszło to po napisaniu kodu o dziwo wszystko działa ale wygląda on jakby pisany przez małosprynte dziecko.
pozycja: x, y : poruszamy się "w","s","a","d" i zapisane jest to w void input();
a system opiera się o oś kartezjańską więc jest banalny ( "d" x+=1) cała filozofia systemu ruchów.
na początku wybieramy czy chcemy byc "wojownikiem" , "Magiem", "Łowcą".
po wyborze klasy są nadane atrybuty hp, dmg itp.
switch(command)
{ case 1: { hp=30; dmg=5;} ..... np. dla wojownika.
do tego oczywiście void walka, sklep, plecak bo tylko to na razie działa jak wchodzimy do różnych miast;p
z tym, że wszystkie wybory obsługuje 1 switch ;p więc plecak, zaklecia i mikstury to liczby a jak chcesz wejść do sklepu to musisz to wpisać nooo ale ;p
i teraz moje pytanie ...
po zobaczeniu czegoś takiego jak podejście obiektowe ;p próbuję poukładać to jakoś w głowię.
Chciałbym przepisać obecną grę w tym podejściu bo w sumie mam nawet na nią koncepcję itp ale nie wiem jak się zabrać myślowo.
to ja mam wszystko tworzyć jako klasy? gre; system ruchu; walki; czy walkę np umieszczamy w klasie ?
class Wojownik
{
string: imie;
int hp;
.......
void walka();
???
a jak zrobię przeciwnika klase i chcę żeby miał losowe parametry to czy mogę w konstruktorach zawierać tego typu polecenia rand? ? lub np. jakieś if'y dodawać??
a jak np. mam wybór klasy i tworzenie nowego gracza.
to stworzę ją za pomocą voida czy konstruktora?
jeśli konstruktora to czy w nim mogę normalnie zawrzeć komendy cout << " podaj imie wojownika"; cin>>imie; dla użytkownika aby to użytkownik nadał wartości?
czy konstruktor sam nadaje a użytkownik wtedy nie może?