- SDL_EnableKeyRepeat(400, 40);
- SDL_EnableUNICODE(true);
-
- while(waiting) {
- int i;
- SDL_WaitEvent(&evenement);
-
- switch(evenement.type) {
- case SDL_KEYDOWN:
- if(evenement.key.keysym.sym == SDLK_ESCAPE) {
- for(i=0;i<255;i++){
- displaytext[0][i]=' ';
- }
- displaychars[0]=0;
- displayselected=0;
- mainmenutogglekeydown=1;
- waiting=false;
- } else if(evenement.key.keysym.sym==SDLK_BACKSPACE&&displayselected!=0){
- for(i=displayselected-1;i<255;i++){
- displaytext[0][i]=displaytext[0][i+1];
- }
- displaytext[0][255]=' ';
- displayselected--;
- displaychars[0]--;
- } else if(evenement.key.keysym.sym==SDLK_DELETE&&displayselected!=0){
- for(i=displayselected;i<255;i++){
- displaytext[0][i]=displaytext[0][i+1];
- }
- displaytext[0][255]=' ';
- displaychars[0]--;
- } else if(evenement.key.keysym.sym==SDLK_LEFT&&displayselected!=0){
- displayselected--;
- } else if(evenement.key.keysym.sym==SDLK_RIGHT&&displayselected<displaychars[0]){
- displayselected++;
- } else if(evenement.key.keysym.sym==SDLK_RETURN) {
- if(displaychars[0]){
- accountactive = Account::add(string(displaytext[0]));
-
- mainmenu=8;
-
- flash();
-
- fireSound(firestartsound);
-
- for(i=0;i<255;i++){
- displaytext[0][i]=' ';
- }
- displaychars[0]=0;
+ int i;
+
+ if(!waiting) {
+ waiting=true;
+ SDL_EnableKeyRepeat(SDL_DEFAULT_REPEAT_DELAY,SDL_DEFAULT_REPEAT_INTERVAL);
+ SDL_EnableUNICODE(true);
+ }