Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: C: SDL - hiiren klikkausten tunnistamiseen viivettä

Juice [04.04.2006 21:42:21]

#

Teen Othello-kloonia, joka toimii hienosti, mikä on jo ihme minun tekeleeltäni. Kuitenkin, jos hiiren painiketta painaa liian pitkään pohjassa, saattaa pelaaja vahingossa tulla tehneeksi vastustajankin siirron.
Eli kuinka saisin estettyä tuota tapahtumasta? SDL_Delay ei oikein toimi, sillä jos sen asettaa lyhyeksi aikaa, sillä ei ole mitään vaikutusta, ja useiden sekuntien pituinen viive on vähintäänkin harmittava. Tällä hetkellä poimin hiiren napsautuksen seuraavasti:

while(1) {
    switch( evt.type ) {
	        case SDL_QUIT:
                 return 0;
    }
    SDL_PollEvent(&evt);
    nappi = SDL_GetKeyState(NULL);
    if(nappi[SDLK_ESCAPE]) break;

    napit=SDL_GetMouseState(&x, &y);
    if(napit & SDL_BUTTON(1)) { magic(); }
    }

    SDL_Delay(200);
  }

Toivottavasti ymmärsitte, kiitos. Olen melko uusi SDL:n kanssa.

EDIT: Laitoin otsikkoon vahingossa pisteen. Kauheaa :( (ei hätää, terv. mod.)

rndprogy [04.04.2006 21:46:04]

#

Tee niin että vasta kun painike nostetaan, eli kun nappi ei ole seuraavan kerran pohjassa, vuoro siirtyy vastustajalle.

Juice [04.04.2006 21:52:37]

#

Tyhmä minä. Kiitos.

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta