X-Git-Url: http://deadsoftware.ru/gitweb?p=flatwaifu.git;a=blobdiff_plain;f=src%2Fgame.c;h=1846b5760ee06854dd05e1b8d2f84fbe7828bf20;hp=1b35f7eb5469c3ed164c92c607d13602fbe1e77e;hb=da79be9b6a4134aa9cd19e6f5909fedb20d318cb;hpb=e5c2eddc151a59db4e611a77901732d7c15fde90 diff --git a/src/game.c b/src/game.c index 1b35f7e..1846b57 100644 --- a/src/game.c +++ b/src/game.c @@ -112,29 +112,57 @@ static void set_trans(int st) { } void G_savegame(FILE* h) { - myfwrite(&_2pl,1,1,h);myfwrite(&g_dm,1,1,h);myfwrite(&g_exit,1,1,h);myfwrite(&g_map,1,1,h); - myfwrite(&g_time,1,4,h);myfwrite(&dm_pl1p,1,4,h);myfwrite(&dm_pl2p,1,4,h); - myfwrite(&dm_pnum,1,4,h);myfwrite(dm_pos,1,dm_pnum*sizeof(pos_t),h); - myfwrite(&cheat,1,1,h); - myfwrite(g_music,1,8,h); + myfwrite8(_2pl, h); + myfwrite8(g_dm, h); + myfwrite8(g_exit, h); + myfwrite8(g_map, h); + myfwrite32(g_time, h); + myfwrite32(dm_pl1p, h); + myfwrite32(dm_pl2p, h); + myfwrite32(dm_pnum, h); + int i = 0; + while (i < dm_pnum) { + myfwrite32(dm_pos[i].x, h); + myfwrite32(dm_pos[i].y, h); + myfwrite8(dm_pos[i].d, h); + i += 1; + } + myfwrite8(cheat, h); + myfwrite(g_music, 8, 1, h); } void G_loadgame(FILE* h) { - myfread(&_2pl,1,1,h);myfread(&g_dm,1,1,h);myfread(&g_exit,1,1,h);myfread(&g_map,1,1,h); - myfread(&g_time,1,4,h);myfread(&dm_pl1p,1,4,h);myfread(&dm_pl2p,1,4,h); - myfread(&dm_pnum,1,4,h);myfread(dm_pos,1,dm_pnum*sizeof(pos_t),h); - myfread(&cheat,1,1,h); - myfread(g_music,1,8,h);F_loadmus(g_music); + myfread8(&_2pl, h); + myfread8(&g_dm, h); + myfread8(&g_exit, h); + myfread8(&g_map, h); + myfread32(&g_time, h); + myfread32(&dm_pl1p, h); + myfread32(&dm_pl2p, h); + myfread32(&dm_pnum, h); + int i = 0; + while (i < dm_pnum) { + myfread32(&dm_pos[i].x, h); + myfread32(&dm_pos[i].y, h); + myfread8(&dm_pos[i].d, h); + i += 1; + } + myfread8(&cheat, h); + myfread(g_music, 8, 1, h); + F_loadmus(g_music); } -int G_load(FILE* h) { - switch(blk.t) { +int G_load (FILE *h) { + switch (blk.t) { case MB_MUSIC: - myfread(g_music,1,8,h); - if (music_random) F_randmus(g_music); - F_loadmus(g_music); + myfread(g_music, 8, 1, h); + if (music_random) { + F_randmus(g_music); + } + F_loadmus(g_music); return 1; - }return 0; + } + return 0; } void load_game(int n) {