static void saveg_read_slidedoor_t(slidedoor_t *str) { int sector; int line; // thinker_t thinker; saveg_read_thinker_t(&str->thinker); // sdt_e type; str->type = saveg_read_enum(); // line_t *line1; line = saveg_read32(); str->line1 = &lines[line]; // line_t *line2; line = saveg_read32(); str->line2 = &lines[line]; // int frame; str->frame = saveg_read32(); // int whichDoorIndex; str->whichDoorIndex = saveg_read32(); // int timer; str->timer = saveg_read32(); // sector_t *frontsector; sector = saveg_read32(); str->frontsector = §ors[sector]; // sd_e status; str->status = saveg_read_enum(); }
// // mobj_t // static void saveg_read_mobj_t(mobj_t *str) { str->x = saveg_read32(); str->y = saveg_read32(); str->z = saveg_read32(); str->angle = saveg_read32(); str->sprite = (spritenum_t)saveg_read_enum(); str->frame = saveg_read32(); str->floorz = saveg_read32(); str->ceilingz = saveg_read32(); str->dropoffz = saveg_read32(); str->radius = saveg_read32(); str->height = saveg_read32(); str->momx = saveg_read32(); str->momy = saveg_read32(); str->momz = saveg_read32(); str->type = (mobjtype_t)saveg_read_enum(); str->tics = saveg_read32(); str->state = &states[saveg_read32()]; str->flags = saveg_read32(); str->flags2 = saveg_read32(); str->health = saveg_read32(); str->movedir = saveg_read32(); str->movecount = saveg_read32(); targets[thingindex] = saveg_read32(); str->reactiontime = saveg_read32(); str->threshold = saveg_read32(); if (saveg_read_bool()) { str->player = viewplayer; str->player->mo = str; } saveg_read_mapthing_t(&str->spawnpoint); tracers[thingindex] = saveg_read32(); lastenemies[thingindex] = saveg_read32(); str->floatbob = saveg_read32(); str->shadowoffset = saveg_read32(); str->gear = saveg_read16(); str->bloodsplats = saveg_read32(); str->blood = saveg_read32(); str->interpolate = saveg_read32(); str->oldx = saveg_read32(); str->oldy = saveg_read32(); str->oldz = saveg_read32(); str->oldangle = saveg_read32(); str->nudge = saveg_read32(); str->pitch = saveg_read32(); str->id = saveg_read32(); }
// // plat_t // static void saveg_read_plat_t(plat_t *str) { str->thinker.function = (saveg_read_bool() ? T_PlatRaise : NULL); str->sector = sectors + saveg_read32(); str->speed = saveg_read32(); str->low = saveg_read32(); str->high = saveg_read32(); str->wait = saveg_read32(); str->count = saveg_read32(); str->status = (plat_e)saveg_read_enum(); str->oldstatus = (plat_e)saveg_read_enum(); str->crush = saveg_read_bool(); str->tag = saveg_read32(); str->type = (plattype_e)saveg_read_enum(); }
static void saveg_read_floormove_t(floormove_t *str) { int sector; // thinker_t thinker; saveg_read_thinker_t(&str->thinker); // floor_e type; str->type = saveg_read_enum(); // boolean crush; str->crush = saveg_read32(); // sector_t* sector; sector = saveg_read32(); str->sector = §ors[sector]; // int direction; str->direction = saveg_read32(); // int newspecial; str->newspecial = saveg_read32(); // short texture; str->texture = saveg_read16(); // fixed_t floordestheight; str->floordestheight = saveg_read32(); // fixed_t speed; str->speed = saveg_read32(); }
static void saveg_read_ceiling_t(ceiling_t *str) { int sector; // thinker_t thinker; saveg_read_thinker_t(&str->thinker); // ceiling_e type; str->type = saveg_read_enum(); // sector_t* sector; sector = saveg_read32(); str->sector = §ors[sector]; // fixed_t bottomheight; str->bottomheight = saveg_read32(); // fixed_t topheight; str->topheight = saveg_read32(); // fixed_t speed; str->speed = saveg_read32(); // boolean crush; str->crush = saveg_read32(); // int direction; str->direction = saveg_read32(); // int tag; str->tag = saveg_read32(); // int olddirection; str->olddirection = saveg_read32(); }
static void saveg_read_vldoor_t(vldoor_t *str) { int sector; // thinker_t thinker; saveg_read_thinker_t(&str->thinker); // vldoor_e type; str->type = saveg_read_enum(); // sector_t* sector; sector = saveg_read32(); str->sector = §ors[sector]; // fixed_t topheight; str->topheight = saveg_read32(); // fixed_t speed; str->speed = saveg_read32(); // int direction; str->direction = saveg_read32(); // int topwait; str->topwait = saveg_read32(); // int topcountdown; str->topcountdown = saveg_read32(); }
static void saveg_read_elevator_t(elevator_t *str) { str->type = (elevator_e)saveg_read_enum(); str->sector = sectors + saveg_read32(); str->direction = saveg_read32(); str->floordestheight = saveg_read32(); str->ceilingdestheight = saveg_read32(); str->speed = saveg_read32(); }
static void saveg_read_button_t(button_t *str) { int line; str->line = ((line = saveg_read32()) >= 0 ? lines + line : NULL); str->where = (bwhere_e)saveg_read_enum(); str->btexture = saveg_read32(); str->btimer = saveg_read32(); }
static void saveg_read_pusher_t(pusher_t *str) { str->type = saveg_read_enum(); str->x_mag = saveg_read32(); str->y_mag = saveg_read32(); str->magnitude = saveg_read32(); str->radius = saveg_read32(); str->x = saveg_read32(); str->y = saveg_read32(); str->affectee = saveg_read32(); }
static void saveg_read_plat_t(plat_t *str) { int sector; // thinker_t thinker; saveg_read_thinker_t(&str->thinker); // sector_t* sector; sector = saveg_read32(); str->sector = §ors[sector]; // fixed_t speed; str->speed = saveg_read32(); // fixed_t low; str->low = saveg_read32(); // fixed_t high; str->high = saveg_read32(); // int wait; str->wait = saveg_read32(); // int count; str->count = saveg_read32(); // plat_e status; str->status = saveg_read_enum(); // plat_e oldstatus; str->oldstatus = saveg_read_enum(); // boolean crush; str->crush = saveg_read32(); // int tag; str->tag = saveg_read32(); // plattype_e type; str->type = saveg_read_enum(); }
static void saveg_read_scroll_t(scroll_t *str) { str->dx = saveg_read32(); str->dy = saveg_read32(); str->affectee = saveg_read32(); str->control = saveg_read32(); str->last_height = saveg_read32(); str->vdx = saveg_read32(); str->vdy = saveg_read32(); str->accel = saveg_read32(); str->type = saveg_read_enum(); }
// // floormove_t // static void saveg_read_floormove_t(floormove_t *str) { str->type = (floor_e)saveg_read_enum(); str->crush = saveg_read_bool(); str->sector = sectors + saveg_read32(); str->direction = saveg_read32(); str->newspecial = saveg_read32(); str->texture = saveg_read16(); str->floordestheight = saveg_read32(); str->speed = saveg_read32(); str->stopsound = saveg_read32(); }
// // vldoor_t // static void saveg_read_vldoor_t(vldoor_t *str) { int line; str->type = (vldoor_e)saveg_read_enum(); str->sector = sectors + saveg_read32(); str->topheight = saveg_read32(); str->speed = saveg_read32(); str->direction = saveg_read32(); str->topwait = saveg_read32(); str->topcountdown = saveg_read32(); str->line = ((line = saveg_read32()) >= 0 ? lines + line : NULL); str->lighttag = saveg_read32(); }
// // ceiling_t // static void saveg_read_ceiling_t(ceiling_t *str) { str->type = (ceiling_e)saveg_read_enum(); str->sector = sectors + saveg_read32(); str->bottomheight = saveg_read32(); str->topheight = saveg_read32(); str->speed = saveg_read32(); str->oldspeed = saveg_read32(); str->crush = saveg_read_bool(); str->newspecial = saveg_read32(); str->texture = saveg_read16(); str->direction = saveg_read32(); str->tag = saveg_read32(); str->olddirection = saveg_read32(); }
static void saveg_read_vldoor_t(vldoor_t *str) { int sector; // thinker_t thinker; saveg_read_thinker_t(&str->thinker); // vldoor_e type; str->type = saveg_read_enum(); // sector_t* sector; sector = saveg_read32(); str->sector = §ors[sector]; // fixed_t topheight; str->topheight = saveg_read32(); // fixed_t speed; str->speed = saveg_read32(); // int direction; str->direction = saveg_read32(); // int topwait; str->topwait = saveg_read32(); // int topcountdown; str->topcountdown = saveg_read32(); // villsa [STRIFE] new field - sound to play when opening //int opensound; str->opensound = saveg_read32(); // villsa [STRIFE] new field - sound to play when closing //int closesound; str->closesound = saveg_read32(); }
static void saveg_read_player_t(player_t *str) { int i; // mobj_t* mo; str->mo = saveg_readp(); // playerstate_t playerstate; str->playerstate = saveg_read_enum(); // ticcmd_t cmd; saveg_read_ticcmd_t(&str->cmd); // fixed_t viewz; str->viewz = saveg_read32(); // fixed_t viewheight; str->viewheight = saveg_read32(); // fixed_t deltaviewheight; str->deltaviewheight = saveg_read32(); // fixed_t bob; str->bob = saveg_read32(); // int health; str->health = saveg_read32(); // int armorpoints; str->armorpoints = saveg_read16(); // [STRIFE] 32 -> 16 // int armortype; str->armortype = saveg_read16(); // [STRIFE] 32 -> 16 // int powers[NUMPOWERS]; for (i=0; i<NUMPOWERS; ++i) { str->powers[i] = saveg_read32(); } // int sigiltype; str->sigiltype = saveg_read32(); // [STRIFE] // int nukagecount; str->nukagecount = saveg_read32(); // [STRIFE] // int questflags; str->questflags = saveg_read32(); // [STRIFE] // int pitch; str->pitch = saveg_read32(); // [STRIFE] // int centerview; str->centerview = saveg_read32(); // [STRIFE] // inventory_t inventory[NUMINVENTORY]; for(i = 0; i < NUMINVENTORY; i++) { saveg_read_inventory_t(&(str->inventory[i])); // [STRIFE] } // int st_update; str->st_update = saveg_read32(); // [STRIFE] // short numinventory; str->numinventory = saveg_read16(); // [STRIFE] // short inventorycursor; str->inventorycursor = saveg_read16(); // [STRIFE] // short accuracy; str->accuracy = saveg_read16(); // [STRIFE] // short stamina; str->stamina = saveg_read16(); // [STRIFE] // boolean cards[NUMCARDS]; for (i=0; i<NUMCARDS; ++i) { str->cards[i] = saveg_read32(); } // boolean backpack; str->backpack = saveg_read32(); // int attackdown; str->attackdown = saveg_read32(); // int usedown; str->usedown = saveg_read32(); // int inventorydown; str->inventorydown = saveg_read32(); // [STRIFE] // int frags[MAXPLAYERS]; for (i=0; i<MAXPLAYERS; ++i) { str->frags[i] = saveg_read32(); } // weapontype_t readyweapon; str->readyweapon = saveg_read_enum(); // weapontype_t pendingweapon; str->pendingweapon = saveg_read_enum(); // boolean weaponowned[NUMWEAPONS]; for (i=0; i<NUMWEAPONS; ++i) { str->weaponowned[i] = saveg_read32(); } // int ammo[NUMAMMO]; for (i=0; i<NUMAMMO; ++i) { str->ammo[i] = saveg_read32(); } // int maxammo[NUMAMMO]; for (i=0; i<NUMAMMO; ++i) { str->maxammo[i] = saveg_read32(); } // int cheats; str->cheats = saveg_read32(); // int refire; str->refire = saveg_read32(); // short killcount; str->killcount = saveg_read16(); // [STRIFE] 32 -> 16 // haleyjd 08/30/10 [STRIFE] No itemcount. // int itemcount; //str->itemcount = saveg_read32(); // haleyjd 08/30/10 [STRIFE] No secretcount. // int secretcount; //str->secretcount = saveg_read32(); // char* message; str->message = saveg_readp(); // int damagecount; str->damagecount = saveg_read32(); // int bonuscount; str->bonuscount = saveg_read32(); // mobj_t* attacker; str->attacker = saveg_readp(); // int extralight; str->extralight = saveg_read32(); // int fixedcolormap; str->fixedcolormap = saveg_read32(); // int colormap; - [STRIFE] no such field //str->colormap = saveg_read32(); // short allegiance; str->allegiance = saveg_read16(); // [STRIFE] // pspdef_t psprites[NUMPSPRITES]; for (i=0; i<NUMPSPRITES; ++i) { saveg_read_pspdef_t(&str->psprites[i]); } // int mapstate[40]; for(i = 0; i < 40; ++i) // [STRIFE] { str->mapstate[i] = saveg_read32(); } // haleyjd 08/30/10: [STRIFE] No intermission, no didsecret. // boolean didsecret; //str->didsecret = saveg_read32(); }
static void saveg_read_player_t(player_t *str) { int i; // mobj_t* mo; str->mo = saveg_readp(); // playerstate_t playerstate; str->playerstate = saveg_read_enum(); // ticcmd_t cmd; saveg_read_ticcmd_t(&str->cmd); // fixed_t viewz; str->viewz = saveg_read32(); // fixed_t viewheight; str->viewheight = saveg_read32(); // fixed_t deltaviewheight; str->deltaviewheight = saveg_read32(); // fixed_t bob; str->bob = saveg_read32(); // int health; str->health = saveg_read32(); // int armorpoints; str->armorpoints = saveg_read32(); // int armortype; str->armortype = saveg_read32(); // int powers[NUMPOWERS]; for (i=0; i<NUMPOWERS; ++i) { str->powers[i] = saveg_read32(); } // boolean cards[NUMCARDS]; for (i=0; i<NUMCARDS; ++i) { str->cards[i] = saveg_read32(); } // boolean backpack; str->backpack = saveg_read32(); // int frags[MAXPLAYERS]; for (i=0; i<MAXPLAYERS; ++i) { str->frags[i] = saveg_read32(); } // weapontype_t readyweapon; str->readyweapon = saveg_read_enum(); // weapontype_t pendingweapon; str->pendingweapon = saveg_read_enum(); // boolean weaponowned[NUMWEAPONS]; for (i=0; i<NUMWEAPONS; ++i) { str->weaponowned[i] = saveg_read32(); } // int ammo[NUMAMMO]; for (i=0; i<NUMAMMO; ++i) { str->ammo[i] = saveg_read32(); } // int maxammo[NUMAMMO]; for (i=0; i<NUMAMMO; ++i) { str->maxammo[i] = saveg_read32(); } // int attackdown; str->attackdown = saveg_read32(); // int usedown; str->usedown = saveg_read32(); // int cheats; str->cheats = saveg_read32(); // int refire; str->refire = saveg_read32(); // int killcount; str->killcount = saveg_read32(); // int itemcount; str->itemcount = saveg_read32(); // int secretcount; str->secretcount = saveg_read32(); // char* message; str->message = saveg_readp(); // int damagecount; str->damagecount = saveg_read32(); // int bonuscount; str->bonuscount = saveg_read32(); // mobj_t* attacker; str->attacker = saveg_readp(); // int extralight; str->extralight = saveg_read32(); // int fixedcolormap; str->fixedcolormap = saveg_read32(); // int colormap; str->colormap = saveg_read32(); // pspdef_t psprites[NUMPSPRITES]; for (i=0; i<NUMPSPRITES; ++i) { saveg_read_pspdef_t(&str->psprites[i]); } // boolean didsecret; str->didsecret = saveg_read32(); }
static void saveg_read_mobj_t(mobj_t *str) { int pl; // thinker_t thinker; saveg_read_thinker_t(&str->thinker); // fixed_t x; str->x = saveg_read32(); // fixed_t y; str->y = saveg_read32(); // fixed_t z; str->z = saveg_read32(); // struct mobj_s* snext; str->snext = saveg_readp(); // struct mobj_s* sprev; str->sprev = saveg_readp(); // angle_t angle; str->angle = saveg_read32(); // spritenum_t sprite; str->sprite = saveg_read_enum(); // int frame; str->frame = saveg_read32(); // struct mobj_s* bnext; str->bnext = saveg_readp(); // struct mobj_s* bprev; str->bprev = saveg_readp(); // struct subsector_s* subsector; str->subsector = saveg_readp(); // fixed_t floorz; str->floorz = saveg_read32(); // fixed_t ceilingz; str->ceilingz = saveg_read32(); // fixed_t radius; str->radius = saveg_read32(); // fixed_t height; str->height = saveg_read32(); // fixed_t momx; str->momx = saveg_read32(); // fixed_t momy; str->momy = saveg_read32(); // fixed_t momz; str->momz = saveg_read32(); // int validcount; str->validcount = saveg_read32(); // mobjtype_t type; str->type = saveg_read_enum(); // mobjinfo_t* info; str->info = saveg_readp(); // int tics; str->tics = saveg_read32(); // state_t* state; str->state = &states[saveg_read32()]; // int flags; str->flags = saveg_read32(); // int health; str->health = saveg_read32(); // int movedir; str->movedir = saveg_read32(); // int movecount; str->movecount = saveg_read32(); // struct mobj_s* target; str->target = saveg_readp(); // int reactiontime; str->reactiontime = saveg_read32(); // int threshold; str->threshold = saveg_read32(); // struct player_s* player; pl = saveg_read32(); if (pl > 0) { str->player = &players[pl - 1]; str->player->mo = str; } else { str->player = NULL; } // int lastlook; str->lastlook = saveg_read32(); // mapthing_t spawnpoint; saveg_read_mapthing_t(&str->spawnpoint); // struct mobj_s* tracer; str->tracer = saveg_readp(); }
// // player_t // static void saveg_read_player_t(void) { viewplayer->playerstate = (playerstate_t)saveg_read_enum(); saveg_read_ticcmd_t(&viewplayer->cmd); viewplayer->viewz = saveg_read32(); viewplayer->viewheight = saveg_read32(); viewplayer->deltaviewheight = saveg_read32(); viewplayer->momx = saveg_read32(); viewplayer->momy = saveg_read32(); viewplayer->health = saveg_read32(); oldhealth = saveg_read32(); viewplayer->armorpoints = saveg_read32(); viewplayer->armortype = (armortype_t)saveg_read_enum(); for (int i = 0; i < NUMPOWERS; i++) viewplayer->powers[i] = saveg_read32(); for (int i = 0; i < NUMCARDS; i++) { viewplayer->cards[i] = saveg_read32(); cardsfound = MAX(cardsfound, viewplayer->cards[i]); } viewplayer->neededcard = saveg_read32(); viewplayer->neededcardflash = saveg_read32(); viewplayer->backpack = saveg_read_bool(); viewplayer->readyweapon = (weapontype_t)saveg_read_enum(); viewplayer->pendingweapon = (weapontype_t)saveg_read_enum(); for (int i = 0; i < NUMWEAPONS; i++) viewplayer->weaponowned[i] = oldweaponsowned[i] = saveg_read32(); for (int i = 0; i < NUMAMMO; i++) viewplayer->ammo[i] = saveg_read32(); for (int i = 0; i < NUMAMMO; i++) viewplayer->maxammo[i] = saveg_read32(); viewplayer->attackdown = saveg_read_bool(); viewplayer->usedown = saveg_read_bool(); viewplayer->cheats = saveg_read32(); viewplayer->refire = saveg_read32(); viewplayer->killcount = saveg_read32(); viewplayer->itemcount = saveg_read32(); viewplayer->secretcount = saveg_read32(); viewplayer->damagecount = saveg_read32(); viewplayer->bonuscount = saveg_read32(); attacker = saveg_read32(); viewplayer->extralight = saveg_read32(); viewplayer->fixedcolormap = saveg_read32(); saveg_read_pspdef_t(&viewplayer->psprites[ps_weapon]); saveg_read_pspdef_t(&viewplayer->psprites[ps_flash]); viewplayer->didsecret = saveg_read_bool(); viewplayer->preferredshotgun = (weapontype_t)saveg_read_enum(); viewplayer->fistorchainsaw = (weapontype_t)saveg_read_enum(); viewplayer->invulnbeforechoppers = saveg_read_bool(); viewplayer->chainsawbeforechoppers = saveg_read_bool(); viewplayer->weaponbeforechoppers = (weapontype_t)saveg_read_enum(); viewplayer->oldviewz = saveg_read32(); viewplayer->lookdir = saveg_read32(); viewplayer->oldlookdir = saveg_read32(); viewplayer->recoil = saveg_read32(); viewplayer->oldrecoil = saveg_read32(); viewplayer->jumptics = saveg_read32(); if (!mouselook) { viewplayer->lookdir = 0; viewplayer->oldlookdir = 0; viewplayer->recoil = 0; viewplayer->oldrecoil = 0; } viewplayer->damageinflicted = saveg_read32(); viewplayer->damagereceived = saveg_read32(); viewplayer->cheated = saveg_read32(); viewplayer->shotshit = saveg_read32(); viewplayer->shotsfired = saveg_read32(); viewplayer->deaths = saveg_read32(); for (int i = 0; i < NUMMOBJTYPES; i++) viewplayer->mobjcount[i] = saveg_read32(); viewplayer->distancetraveled = saveg_read32(); viewplayer->itemspickedup_ammo_bullets = saveg_read32(); viewplayer->itemspickedup_ammo_cells = saveg_read32(); viewplayer->itemspickedup_ammo_rockets = saveg_read32(); viewplayer->itemspickedup_ammo_shells = saveg_read32(); viewplayer->itemspickedup_armor = saveg_read32(); viewplayer->itemspickedup_health = saveg_read32(); }