save fire/focus stats in the replay

This commit is contained in:
Andrew "Akari" Alexeyew 2012-08-07 08:01:57 +03:00
parent e4d0872ec6
commit 78c8c970fc
3 changed files with 12 additions and 0 deletions

View file

@ -38,6 +38,8 @@ ReplayStage* replay_init_stage(Replay *rpy, StageInfo *stage, int seed, Player *
s->points = global.points;
s->plr_pos = plr->pos;
s->plr_focus = plr->focus;
s->plr_fire = plr->fire;
s->plr_char = plr->cha;
s->plr_shot = plr->shot;
s->plr_lifes = plr->lifes;
@ -146,6 +148,8 @@ int replay_write(Replay *rpy, FILE *file) {
replay_write_int(file, stg->plr_char);
replay_write_int(file, stg->plr_shot);
replay_write_complex(file, stg->plr_pos);
replay_write_int(file, stg->plr_focus);
replay_write_int(file, stg->plr_fire);
replay_write_double(file, stg->plr_power);
replay_write_int(file, stg->plr_lifes);
replay_write_int(file, stg->plr_bombs);
@ -183,6 +187,8 @@ enum {
RPY_P_SHOT,
RPY_P_POSREAL,
RPY_P_POSIMAG,
RPY_P_FOCUS,
RPY_P_FIRE,
RPY_P_POWER,
RPY_P_LIFES,
RPY_P_BOMBS,
@ -251,6 +257,8 @@ int replay_read(Replay *rpy, FILE *file) {
case RPY_P_SHOT: s->plr_shot = INTOF(buf); break;
case RPY_P_POSREAL: s->plr_pos = INTOF(buf); break;
case RPY_P_POSIMAG: s->plr_pos += INTOF(buf) * I; break;
case RPY_P_FOCUS: s->plr_focus = INTOF(buf); break;
case RPY_P_FIRE: s->plr_fire = INTOF(buf); break;
case RPY_P_POWER: s->plr_power = FLOATOF(buf); break;
case RPY_P_LIFES: s->plr_lifes = INTOF(buf); break;
case RPY_P_BOMBS: s->plr_bombs = INTOF(buf); break;

View file

@ -29,6 +29,8 @@ typedef struct ReplayStage {
Character plr_char;
ShotMode plr_shot;
complex plr_pos;
short plr_focus;
short plr_fire;
float plr_power;
int plr_lifes;
int plr_bombs;

View file

@ -477,6 +477,8 @@ void stage_loop(StageInfo* info, StageRule start, StageRule end, StageRule draw,
global.plr.shot = stg->plr_shot;
global.plr.cha = stg->plr_char;
global.plr.pos = stg->plr_pos;
global.plr.focus = stg->plr_focus;
global.plr.fire = stg->plr_fire;
global.plr.lifes = stg->plr_lifes;
global.plr.bombs = stg->plr_bombs;
global.plr.power = stg->plr_power;