Free Hero Mesh

Check-in [131e9f9ca6]
Login
This is a mirror of the main repository for Free Hero Mesh. New tickets and changes will not be accepted at this mirror.
Overview
Comment:Add editor help for objects, and add support for number pad in some more contexts.
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: 131e9f9ca6acf687a0fddf7b08c9e2419c93e5d6
User & Date: user on 2021-02-21 00:51:29
Other Links: manifest | tags
Context
2021-02-22
03:16
Add an assertion to check that the value of N_MESSAGES is correct. Also add a note about unused standard message names in class.doc. check-in: c8c249b7be user: user tags: trunk
2021-02-21
00:51
Add editor help for objects, and add support for number pad in some more contexts. check-in: 131e9f9ca6 user: user tags: trunk
00:43
Add saving levels. (Now it is probably ready for public testing.) check-in: d89808c09a user: user tags: trunk
Changes

Modified bindings.c from [f38d387928] to [ec2dd85ae4].

200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
  }
  SDL_UnlockSurface(screen);
  SDL_Flip(screen);
  while(SDL_WaitEvent(&ev)) switch(ev.type) {
    case SDL_KEYDOWN:
      switch(ev.key.keysym.sym) {
        case SDLK_ESCAPE: case SDLK_RETURN: case SDLK_KP_ENTER: goto done;
        case SDLK_UP: k-=8; if(k<0) k=0; break;
        case SDLK_DOWN: k+=8; break;
        case SDLK_HOME: k=0; break;
        case SDLK_PAGEUP: k-=screen->h; if(k<0) k=0; break;
        case SDLK_PAGEDOWN: k+=screen->h; break;
      }
      goto redraw;
    case SDL_VIDEOEXPOSE:
      goto redraw;
    case SDL_QUIT:
      SDL_PushEvent(&ev);
      goto done;







|
|
|
|
|







200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
  }
  SDL_UnlockSurface(screen);
  SDL_Flip(screen);
  while(SDL_WaitEvent(&ev)) switch(ev.type) {
    case SDL_KEYDOWN:
      switch(ev.key.keysym.sym) {
        case SDLK_ESCAPE: case SDLK_RETURN: case SDLK_KP_ENTER: goto done;
        case SDLK_UP: case SDLK_KP8: k-=8; if(k<0) k=0; break;
        case SDLK_DOWN: case SDLK_KP2: k+=8; break;
        case SDLK_HOME: case SDLK_KP7: k=0; break;
        case SDLK_PAGEUP: case SDLK_KP9: k-=screen->h; if(k<0) k=0; break;
        case SDLK_PAGEDOWN: case SDLK_KP3: k+=screen->h; break;
      }
      goto redraw;
    case SDL_VIDEOEXPOSE:
      goto redraw;
    case SDL_QUIT:
      SDL_PushEvent(&ev);
      goto done;

Modified edit.c from [19de92fbba] to [966e7a69cf].

506
507
508
509
510
511
512
513
514
515






516
517
518
519
520
521
522
              goto setclass;
            }
            for(i=0;i<clcount-1;i++) if(cl==cllist[i]) {
              cl=cllist[i+1];
              goto setclass;
            }
            break;
          case SDLK_RETURN:
            add_mru(cl,img);
            return;






          default:
            j=ev.key.keysym.unicode;
            if(j=='$' || j==21) {
              namei=0;
              goto redraw;
            }
            if(j==27) return;







|


>
>
>
>
>
>







506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
              goto setclass;
            }
            for(i=0;i<clcount-1;i++) if(cl==cllist[i]) {
              cl=cllist[i+1];
              goto setclass;
            }
            break;
          case SDLK_RETURN: case SDLK_KP_ENTER:
            add_mru(cl,img);
            return;
          case SDLK_F1:
            if(cl && classes[cl] && classes[cl]->gamehelp) modal_draw_popup(classes[cl]->gamehelp);
            goto redraw;
          case SDLK_F2:
            if(cl && classes[cl] && classes[cl]->edithelp) modal_draw_popup(classes[cl]->edithelp);
            goto redraw;
          default:
            j=ev.key.keysym.unicode;
            if(j=='$' || j==21) {
              namei=0;
              goto redraw;
            }
            if(j==27) return;
642
643
644
645
646
647
648


649
650
651
652
653
654
655
        case SDLK_KP4: m->dir=4; break;
        case SDLK_KP6: m->dir=0; break;
        case SDLK_KP7: m->dir=3; break;
        case SDLK_KP8: m->dir=2; break;
        case SDLK_KP9: m->dir=1; break;
        case SDLK_KP_PLUS: m->dir=(m->dir+1)&7; break;
        case SDLK_KP_MINUS: m->dir=(m->dir-1)&7; break;


      }
      goto redraw;
    case SDL_VIDEOEXPOSE:
      goto redraw;
    case SDL_QUIT:
      exit(0);
      break;







>
>







648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
        case SDLK_KP4: m->dir=4; break;
        case SDLK_KP6: m->dir=0; break;
        case SDLK_KP7: m->dir=3; break;
        case SDLK_KP8: m->dir=2; break;
        case SDLK_KP9: m->dir=1; break;
        case SDLK_KP_PLUS: m->dir=(m->dir+1)&7; break;
        case SDLK_KP_MINUS: m->dir=(m->dir-1)&7; break;
        case SDLK_F1: case SDLK_g: if(classes[m->class]->gamehelp) modal_draw_popup(classes[m->class]->gamehelp); break;
        case SDLK_F2: case SDLK_h: if(classes[m->class]->edithelp) modal_draw_popup(classes[m->class]->edithelp); break;
      }
      goto redraw;
    case SDL_VIDEOEXPOSE:
      goto redraw;
    case SDL_QUIT:
      exit(0);
      break;