• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Pomoc przy kodzie

VPS Starter Arubacloud
+1 głos
133 wizyt
pytanie zadane 19 czerwca 2016 w C i C++ przez Regolin542 Użytkownik (990 p.)

Witam. Piszę grę i chciałbym się zapytać czy da się zrobić tak aby nie pisać tego kodu za każdym razem przy nowym poziomie.

while(stopgame==false&&lvl==1)
    {
        system("cls");
        for (int y = 0; y<10; y++)
        {
            cout<<map[y]<<endl;
        }
        cout<<"HP:"<<hp<<"/"<<"Max HP:"<<mhp<<endl;
        cout<<"Pieniadze: "<<pieniadze<<endl;
        cout<<"Imie: "<<imie<<endl;
        for(int y=0; y<10; y++)
        {
            for(int x =0; x<10; x++)
            {
                switch (map[y][x])
                {

                case '*':
                    {
                       cout<<"Obudziles sie na nieznanym ci terenie..." <<endl;
                    }break;
                    case '#':
                    {
                        map[y][x] = 219;
                    }
                case '@':
                {
                    if (GetAsyncKeyState(VK_UP) !=0)
                    {
                        int y2=(y-1);
                        switch(map[y2][x])
                        {
                        case ' ' :
                        {
                            map[y][x] = ' ';
                            y -=1;
                            map[y2][x] = '@';
                        }break;
                        case '*':
                        {
                            cout<<"Obudziles sie na nieznanym ci terenie..." <<endl;
                            map[y][x] = ' ';
                            y -=1;
                            map[y2][x] = '@';
                        }break;
                        case '!':
                            {
                                lvl = 2;

                            }break;
                        }
                    }
                    if(GetAsyncKeyState(VK_DOWN) !=0)
                    {
                       int y2 = (y+1);
                       switch(map[y2][x])
                       {
                     case ' ' :
                        {
                            map[y][x] = ' ';
                            y +=1;
                            map[y2][x] = '@';
                        }break;
                        case '*':
                    {
                       cout<<"Obudziles sie na nieznanym ci terenie..." <<endl;
                    }break;
                        case '!':
                            {
                                lvl = 2;
                            }break;
                       }
                    }
                    if(GetAsyncKeyState(VK_RIGHT) !=0)
                    {
                      int x2 = (x+1);
                      switch(map[y][x2])
                      {
                     case ' ':
                        {
                            map[y][x] = ' ';
                            x +=1;
                            map[y][x2] = '@';
                        }break;
                        case '9':
                        {
                            hp-100;
                            map[y][x2] = ' ';
                            y -=1;
                            map[y][x] = '@';
                        }
                        case '*':
                    {
                       cout<<"Obudziles sie na nieznanym ci terenie..." <<endl;
                    }break;
                        case '!':
                            {
                                lvl = 2;
                            }break;
                      }
                    }
                    if(GetAsyncKeyState(VK_LEFT) !=0)
                    {
                        int x2 =(x-1);
                        switch(map [y][x2])
                        {
                            case ' ':
                            {
                                map[y][x] = ' ';
                            x -=1;
                            map[y][x2] = '@';
                            }break;
                            case '*':
                    {
                       cout<<"Obudziles sie na nieznanym ci terenie..." <<endl;
                    }break;
                            case '!':
                            {
                                lvl = 2;
                            }break;
                        }
                    }
                }break;
                }
            }
        }
        Sleep(gamespeed);
    }

Liczę na dobrą odpowiedź.

2 odpowiedzi

+1 głos
odpowiedź 19 czerwca 2016 przez jako6 Bywalec (2,550 p.)
Ja bym zrobił funkcję.
0 głosów
odpowiedź 19 czerwca 2016 przez niezalogowany
Funkcje.
komentarz 19 czerwca 2016 przez Regolin542 Użytkownik (990 p.)
Czyli robie funkcje wpisuje tak kod i co dalej. Jak mam to wywołać i jak mam zmienić informacje, ktore ma zrobic np znak ,,!"
komentarz 19 czerwca 2016 przez criss Mędrzec (172,590 p.)
Po prostu poczytaj, nie oczekuje że ktoś ci zrobi cały tutorial w poście na forum.

Podobne pytania

0 głosów
1 odpowiedź 151 wizyt
pytanie zadane 21 grudnia 2020 w C i C++ przez repcaq Nowicjusz (120 p.)
+1 głos
3 odpowiedzi 204 wizyt
pytanie zadane 6 września 2015 w C i C++ przez karmar435 Nowicjusz (240 p.)
0 głosów
1 odpowiedź 603 wizyt
pytanie zadane 23 marca 2017 w Java przez Wittano Początkujący (450 p.)

92,452 zapytań

141,262 odpowiedzi

319,085 komentarzy

61,854 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Akademia Sekuraka 2024 zapewnia dostęp do minimum 15 szkoleń online z bezpieczeństwa IT oraz dostęp także do materiałów z edycji Sekurak Academy z roku 2023!

Przy zakupie możecie skorzystać z kodu: pasja-akademia - użyjcie go w koszyku, a uzyskacie rabat -30% na bilety w wersji "Standard"! Więcej informacji na temat akademii 2024 znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...