Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Blokada wielokrotnego kliknięcia

Ostatnio zmodyfikowano 2016-11-20 14:45
Autor Wiadomość
iGhost
Temat założony przez niniejszego użytkownika
Blokada wielokrotnego kliknięcia
» 2016-11-19 17:25:53
Witam
Napisałem gre na dwie osoby. Gracze poruszają sie WSAD lub strzałkami. Problem jest w tym, że chciałbym, żeby postac wykonała ruch wyłącznie po pojedynczym kliknięciu, a nie reagowała na przytrzymanie klawisza.
P-153921
michal11
» 2016-11-19 17:52:12
Moja magiczna kula podpowiada mi, że wystarczy:
C/C++
if( oneClick() )
{
    character.move();
}


A tak serio to jak myślisz skąd may widzieć jak ci pomóc skoro nie napisałś ani jakiej biblioteki używasz, jak teraz wykonujesz ruch, jak obsługujesz klawiaturę?
P-153926
mateczek
» 2016-11-20 14:39:27
Zobacz takie z winApi // choć to raczej ciekawostka bo biblioteki mają zdarzenia które można lepiej i wygodniej obsłużyć !!!
C/C++
#include<iostream>
#include<windows.h>
using namespace std;
int main()
{
    bool memory = false;
    bool klawisz_w, impuls;
    while( true ) {
        klawisz_w =( GetKeyState( 0x57 ) & 0x8000 ); //klawisz w
        impuls =( klawisz_w ) &&( !memory );
        memory = klawisz_w;
        if( impuls ) cout << "klik ";
       
    }
}
P-153974
iGhost
Temat założony przez niniejszego użytkownika
» 2016-11-20 14:45:40
Użyłem funkcje  if( kbhit() ) oraz switch case
Funkcja sterowania wygląda w ten sposób
C/C++
switch( Kierunek )
{
case 119: /*to dla W*/
   
   
    ZmienPozycjeKursora( Waz );
    cout << " ";
    if( Waz.Y != 1 )
    {
        Waz.Y -= 1;
       
    }
   
    ZmienPozycjeKursora( Waz ); /* Przejscie do nowej pozycji weza. */
   
    cout << "O";
P-153975
« 1 »
  Strona 1 z 1