Przesuwanie obiektu po tablicy (konsola)

0

Witam

Napisałem taki oto kod

void Weapon()
{
   weapon_x = player_x;
   weapon_y = player_y;
   int weapon_x2 = weapon_x + 1;

   if ( GetAsyncKeyState ( VK_SPACE ) && p_tex == 16 )
   {
      if (map[weapon_y][weapon_x2] == ' ')
      {
         for (weapon_x=player_x; weapon_x < player_x + 15; weapon_x++)
         {
            map[weapon_y][weapon_x] = 'f';
            // Sleep(10);
            // map[weapon_y][weapon_x] = ' ';
         }
      }
   }
}

Według pętli 'for' obiekt powinien się przesuwać przy każdym jej "obrocie", niestety tak się nie dzieje, a mój obiekt oznaczony 'f', nie przesuwa się, a kopiuje i pokazuje się we wszystkich 15 miejsach od punktu 'player_x'.
To jest pierwszy problem z którym nie wiem jak sobie poradzić, drugi jest prostszy otóż chodzi o to co jest oznaczone komentarzem, wziąłem pod uwagę że kod jest wykonywany od góry do dołu, więc najpierw powinien zostać wyświetlony obiekt 'f', a po 10 sekundach powinien zniknąć (zastąpiony ' '). Zamiast znikać po 10 sekundach w ogóle się nie wyświetla, więc co robię źle?

Byłbym bardzo wdzięczny za objaśnienie gdzie popełniłem błąd i na czym on polega.

PS. korzystam z iostream i windows.h.

2

przeciez Ty nie przesuwasz tylko rysujesz nowa. Przesuwanie polega na czyms takim

  1. znajdujesz miejsce z ktorego obiekt chcesz przesunac
  2. zapisujesz jego znak
  3. kasujesz go stamtad
  4. wpisujesz go w miejsce docelowe

Sleep dziala w milisekundach nie w sekundach. Czyta sie dokumentacje zanim sie cos uzyje ;)

1 użytkowników online, w tym zalogowanych: 0, gości: 1