Overview
| Comment: | Add a placeholder icon for the new move at the end of the move list |
|---|---|
| Downloads: | Tarball | ZIP archive |
| Timelines: | family | ancestors | descendants | both | trunk |
| Files: | files | file ages | folders |
| SHA1: |
7a6ec6b4a117db5851c3bda2c11025d0 |
| User & Date: | user on 2021-01-07 07:42:53.423 |
| Other Links: | manifest | tags |
Context
|
2021-01-08
| ||
| 00:32 | Change read_lump function; also add read_userstate and write_userstate. check-in: 7dab93e8a9 user: user tags: trunk | |
|
2021-01-07
| ||
| 07:42 | Add a placeholder icon for the new move at the end of the move list check-in: 7a6ec6b4a1 user: user tags: trunk | |
|
2021-01-06
| ||
| 22:33 | Write more about the WinLevel instruction check-in: 44aa200a8a user: user tags: trunk | |
Changes
Modified game.c
from [6379500623]
to [e1f2a7b97d].
| ︙ | ︙ | |||
109 110 111 112 113 114 115 116 117 118 119 120 121 122 |
draw_text(8,52,buf,0xF0,0xF9);
snprintf(buf,8,"%5d",replay_count);
draw_text(8,screen->h-8,buf,0xF0,0xFC);
for(y=44,x=replay_pos-(screen->h-68)/32;;x++) {
y+=16;
if(y+24>screen->h) break;
if(x>=0 && x<replay_count) draw_key(16,y,replay_list[x],0xF8,0xFB);
if(x==replay_pos) draw_text(0,y,"~~",0xF0,0xFE);
if(x==replay_mark) draw_text(32,y,"~~",0xF0,0xFD);
}
SDL_UnlockSurface(screen);
}
if(quiz_text) draw_popup(quiz_text);
SDL_Flip(screen);
| > | 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 |
draw_text(8,52,buf,0xF0,0xF9);
snprintf(buf,8,"%5d",replay_count);
draw_text(8,screen->h-8,buf,0xF0,0xFC);
for(y=44,x=replay_pos-(screen->h-68)/32;;x++) {
y+=16;
if(y+24>screen->h) break;
if(x>=0 && x<replay_count) draw_key(16,y,replay_list[x],0xF8,0xFB);
if(x==replay_count) draw_key(16,y,1,0xF0,0xF8);
if(x==replay_pos) draw_text(0,y,"~~",0xF0,0xFE);
if(x==replay_mark) draw_text(32,y,"~~",0xF0,0xFD);
}
SDL_UnlockSurface(screen);
}
if(quiz_text) draw_popup(quiz_text);
SDL_Flip(screen);
|
| ︙ | ︙ | |||
179 180 181 182 183 184 185 |
} else if(side_mode) {
// Inventory
x=(ev->button.y-52)/picture_size;
if(x<0 || x>=ninventory) strcpy(buf," "); else snprintf(buf,8,"%7d",inventory[x].value);
} else {
// Move list
x=replay_pos+(ev->button.y+4)/16-(screen->h-68)/32-4;
| | | 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 |
} else if(side_mode) {
// Inventory
x=(ev->button.y-52)/picture_size;
if(x<0 || x>=ninventory) strcpy(buf," "); else snprintf(buf,8,"%7d",inventory[x].value);
} else {
// Move list
x=replay_pos+(ev->button.y+4)/16-(screen->h-68)/32-4;
if(x<0 || x>replay_count) strcpy(buf," "); else snprintf(buf,8,"%c%6d",x<replay_pos?0xAE:x>replay_pos?0xAF:0xFE,x);
}
} else {
if(x>0 && y>0 && x<=pfwidth && y<=pfheight) snprintf(buf,8,"(%2d,%2d)",x,y);
else strcpy(buf," ");
}
SDL_LockSurface(screen);
draw_text(0,40,buf,0xF0,0xF1);
|
| ︙ | ︙ |
Modified keyicons.xbm
from [cde032d1fd]
to [9bb248112a].
1 2 3 4 5 6 |
#define keyicons_width 16
#define keyicons_height 4096
static unsigned char keyicons_bits[] = {
0x55, 0x00, 0xaa, 0x00, 0x55, 0x00, 0xaa, 0x00, 0x55, 0x00, 0xaa, 0x00,
0x55, 0x00, 0xaa, 0x00, 0x00, 0x55, 0x00, 0xaa, 0x00, 0x55, 0x00, 0xaa,
0x00, 0x55, 0x00, 0xaa, 0x00, 0x55, 0x00, 0xaa,
| | | | | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
#define keyicons_width 16
#define keyicons_height 4096
static unsigned char keyicons_bits[] = {
0x55, 0x00, 0xaa, 0x00, 0x55, 0x00, 0xaa, 0x00, 0x55, 0x00, 0xaa, 0x00,
0x55, 0x00, 0xaa, 0x00, 0x00, 0x55, 0x00, 0xaa, 0x00, 0x55, 0x00, 0xaa,
0x00, 0x55, 0x00, 0xaa, 0x00, 0x55, 0x00, 0xaa,
0x55, 0x55, 0x00, 0x80, 0x01, 0x00, 0x00, 0x80, 0x01, 0x00, 0x00, 0x80,
0x01, 0x00, 0x00, 0x80, 0x01, 0x00, 0x00, 0x80, 0x01, 0x00, 0x00, 0x80,
0x01, 0x00, 0x00, 0x80, 0x01, 0x00, 0xaa, 0xaa,
0x55, 0x00, 0xaa, 0x00, 0x55, 0x00, 0xaa, 0x00, 0x55, 0x00, 0xaa, 0x00,
0x55, 0x00, 0xaa, 0x00, 0x00, 0x55, 0x00, 0xaa, 0x00, 0x55, 0x00, 0xaa,
0x00, 0x55, 0x00, 0xaa, 0x00, 0x55, 0x00, 0xaa,
0x55, 0x00, 0xaa, 0x00, 0x55, 0x00, 0xaa, 0x00, 0x55, 0x00, 0xaa, 0x00,
0x55, 0x00, 0xaa, 0x00, 0x00, 0x55, 0x00, 0xaa, 0x00, 0x55, 0x00, 0xaa,
0x00, 0x55, 0x00, 0xaa, 0x00, 0x55, 0x00, 0xaa,
0x55, 0x00, 0xaa, 0x00, 0x55, 0x00, 0xaa, 0x00, 0x55, 0x00, 0xaa, 0x00,
|
| ︙ | ︙ |
Modified sql.doc
from [1e5a6a3c19]
to [8e507e60da].
| ︙ | ︙ | |||
123 124 125 126 127 128 129 130 131 132 133 134 135 136 |
Contains the user cache data for the .level and .solution files of each
puzzle set, in order to speed up loading and saving. The DATA will be
null unless the data has changed, in which case the new data is stored
here; it will later rewrite the Hamster archive with the new data and
then it will be set to null again. USERSTATE contains user data such as
the list of moves made by the player. FILE is the ID in the user cache
index, and indicates which Hamster archive file this lump belongs to.
CREATE TABLE "USERCACHEINDEX"("ID" INTEGER PRIMARY KEY, "NAME" TEXT,
"TIME" INT);
The user cache index; contains one record for each .level and .solution
file of all puzzle sets which have been loaded. NAME is the full path,
and TIME is the UNIX timestamp. If you want to delete a record, then
you should also delete all records from USERCACHEDATA whose FILE value
| > > | 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 |
Contains the user cache data for the .level and .solution files of each
puzzle set, in order to speed up loading and saving. The DATA will be
null unless the data has changed, in which case the new data is stored
here; it will later rewrite the Hamster archive with the new data and
then it will be set to null again. USERSTATE contains user data such as
the list of moves made by the player. FILE is the ID in the user cache
index, and indicates which Hamster archive file this lump belongs to.
(The USERSTATE column of this SQL table is not related to the UserState
variable of objects in the game.)
CREATE TABLE "USERCACHEINDEX"("ID" INTEGER PRIMARY KEY, "NAME" TEXT,
"TIME" INT);
The user cache index; contains one record for each .level and .solution
file of all puzzle sets which have been loaded. NAME is the full path,
and TIME is the UNIX timestamp. If you want to delete a record, then
you should also delete all records from USERCACHEDATA whose FILE value
|
| ︙ | ︙ |