Example #1
0
void help(void)
{
    gfx_fillscreen(0);
    txt_printcenter(0, SPR_FONTS, "MAP EDITOR HELP");
    txt_printcenter(16, SPR_FONTS, "F1 - LOAD MAP");
    txt_printcenter(24, SPR_FONTS, "F2 - SAVE MAP");
    txt_printcenter(32, SPR_FONTS, "F3 - LOAD BLOCKS");
    txt_printcenter(40, SPR_FONTS, "F4 - LOAD PALETTE");
    txt_printcenter(48, SPR_FONTS, "F10 - THIS SCREEN");
    txt_printcenter(56, SPR_FONTS, "F12 - SWITCH SCREENMODE");
    txt_printcenter(64, SPR_FONTS, "ESC - EXIT PROGRAM");
    txt_printcenter(80, SPR_FONTS, "1,2,3,4 - SELECT LAYER TO WORK ON");
    txt_printcenter(88, SPR_FONTS, "5,6,7,8 - TOGGLE LAYER VISIBILITY");
    txt_printcenter(96, SPR_FONTS, "L - LAYER SIZE & OPTIONS");
    txt_printcenter(104, SPR_FONTS, "G - GRAB BLOCK UNDER CURSOR");
    txt_printcenter(112, SPR_FONTS, "C - COPY MARKED AREA");
    txt_printcenter(120, SPR_FONTS, "F,B - FILL MARKED AREA");
    txt_printcenter(128, SPR_FONTS, "P - PASTE MARKED AREA");
    txt_printcenter(136, SPR_FONTS, "Z,X - SELECT BLOCK");
    txt_printcenter(144, SPR_FONTS, "A,S - SELECT BLOCK FAST");
    txt_printcenter(152, SPR_FONTS, "SCROLLLOCK - TOGGLE MOUSE SCROLLING");
    txt_printcenter(160, SPR_FONTS, "I,J,K,M - CHANGE SIZE FAST IN LAYER OPT.");
    txt_printcenter(176, SPR_FONTS, "USE LEFT MOUSEBUTTON TO DRAW AND RIGHT");
    txt_printcenter(184, SPR_FONTS, "MOUSEBUTTON TO MARK AREAS.");
    gfx_updatepage();

    for (;;)
    {
        win_getspeed(60);
        key = kbd_getkey();
        getmousemove();
        getmousebuttons();
        if ((mouseb) || (key)) break;
    }
}
Example #2
0
void help(void)
{
    gfx_fillscreen(0);
    txt_printcenter(0, SPR_FONTS, "BLOCKINFO EDITOR HELP");
    txt_printcenter(16, SPR_FONTS, "F1 - LOAD BLOCKINFO");
    txt_printcenter(24, SPR_FONTS, "F2 - SAVE BLOCKINFO");
    txt_printcenter(32, SPR_FONTS, "F3 - LOAD MAP");
    txt_printcenter(40, SPR_FONTS, "F4 - SAVE MAP");
    txt_printcenter(48, SPR_FONTS, "F10 - THIS SCREEN");
    txt_printcenter(56, SPR_FONTS, "F12 - SWITCH SCREENMODE");
    txt_printcenter(64, SPR_FONTS, "ESC - EXIT PROGRAM");
    txt_printcenter(80, SPR_FONTS, "Z,X,A,S - SELECT BLOCK");
    txt_printcenter(88, SPR_FONTS, "C - CLEAR BLOCKINFO FOR CURRENT BLOCK");
    txt_printcenter(96, SPR_FONTS, "P,T - PUT/TAKE BLOCKINFO TO COPYBUFFER");
    txt_printcenter(112, SPR_FONTS, "LEFT MOUSEBUTTON SETS A BIT");
    txt_printcenter(120, SPR_FONTS, "RIGHT MOUSEBUTTON CLEARS A BIT");
    gfx_updatepage();

    for (;;)
    {
        win_getspeed(60);
        key = kbd_getkey();
        getmousemove();
        getmousebuttons();
        if ((mouseb) || (key)) break;
    }
}
Example #3
0
void enterfilename(char *text, char *buffer)
{
    int c;
    for (c = strlen(buffer); c < 13; c++) buffer[c] = 0;

    kbd_getascii();

    for (;;)
    {
        int ascii;
        int cursorpos;

        win_getspeed(60);
        key = kbd_getkey();
        ascii = kbd_getascii();
        getmousemove();
        getmousebuttons();

        cursorpos = strlen(buffer);
        if (ascii == 8)
        {
            if (cursorpos)
            {
                buffer[cursorpos-1] = 0;
            }
        }
        if (ascii == 27)
        {
            memset(buffer, 0, 13);
            return;
        }
        if (ascii == 13) return;
        if ((ascii >= 32) && (cursorpos < 12))
        {
            buffer[cursorpos] = ascii;
        }

        gfx_fillscreen(0);
        txt_printcenter(80, SPR_FONTS, text);
        txt_printcenter(90, SPR_FONTS, buffer);
        gfx_updatepage();
    }
}
Example #4
0
void mainloop(void)
{
    gfx_calcpalette(64, 0, 0, 0);
    gfx_setpalette();
    win_getspeed(60);

    for (;;)
    {
        speed = win_getspeed(60);
        key = kbd_getkey();
        getmousemove();
        getmousebuttons();
        if ((key == KEY_ESC) || (win_quitted)) break;
        generalcommands();
        gfx_fillscreen(0);
        printinfo();
        printstatus();
        gfx_drawsprite(mousex, mousey, 0x00010001);
        gfx_updatepage();
    }
}
Example #5
0
void mainloop(void)
{
    gfx_calcpalette(64, 0, 0, 0);
    gfx_setpalette();

    win_getspeed(60);
    for (;;)
    {
        speed = win_getspeed(60);
        if (speed > 10) speed = 10;
        key = kbd_getkey();
        getmousemove();
        getmousebuttons();
        if ((key == KEY_ESC) || (win_quitted)) break;
        blockediting();
        scrollmap();
        generalcommands();
        gfx_fillscreen(transparent);
        drawalllayers();
        printstatus();
        if (mark)
        {
            int mx, my;
            if (layer[cl].xdivisor) mx = markx1*gfx_blockxsize-xpos/layer[cl].xdivisor;
            else mx = markx1*gfx_blockxsize;
            if (layer[cl].xsize)
            {
                while (mx < 0)
                {
                    mx += layer[cl].xsize*gfx_blockxsize;
                }
                mx %= (layer[cl].xsize*gfx_blockxsize);
            }
            if (layer[cl].ydivisor) my = marky1*gfx_blockysize-ypos/layer[cl].ydivisor;
            else my = marky1*gfx_blockysize;
            if (layer[cl].ysize)
            {
                while (my < 0)
                {
                    my += layer[cl].ysize*gfx_blockysize;
                }
                my %= (layer[cl].ysize*gfx_blockysize);
            }
            gfx_drawsprite(mx,my,0x00010002);
        }
        if (mark==2)
        {
            int mx, my;
            if (layer[cl].xdivisor) mx = markx2*gfx_blockxsize-xpos/layer[cl].xdivisor;
            else mx = markx2*gfx_blockxsize;
            if (layer[cl].xsize)
            {
                while (mx < 0)
                {
                    mx += layer[cl].xsize*gfx_blockxsize;
                }
                mx %= (layer[cl].xsize*gfx_blockxsize);
            }
            if (layer[cl].ydivisor) my = marky2*gfx_blockysize-ypos/layer[cl].ydivisor;
            else my = marky2*gfx_blockysize;
            if (layer[cl].ysize)
            {
                while (my < 0)
                {
                    my += layer[cl].ysize*gfx_blockysize;
                }
                my %= (layer[cl].ysize*gfx_blockysize);
            }
            gfx_drawsprite(mx,my,0x00010003);
        }
        gfx_drawsprite(mousex,mousey,0x00010001);
        gfx_updatepage();

    }
}