diff --git a/src/command.c b/src/command.c index a7b0d4bb8..f80dec82a 100644 --- a/src/command.c +++ b/src/command.c @@ -63,10 +63,6 @@ static const char *CV_StringValue(const char *var_name); static consvar_t *consvar_vars; // list of registered console variables static UINT16 consvar_number_of_netids = 0; -#ifdef OLD22DEMOCOMPAT -static old_demo_var_t *consvar_old_demo_vars; -#endif - static char com_token[1024]; static char *COM_Parse(char *data); @@ -1169,58 +1165,6 @@ consvar_t *CV_FindVar(const char *name) return NULL; } -#ifdef OLD22DEMOCOMPAT -/** Builds a unique Net Variable identifier number, which was used - * in network packets and demos instead of the full name. - * - * This function only still exists to keep compatibility with old demos. - * - * \param s Name of the variable. - * \return A new unique identifier. - */ -static inline UINT16 CV_ComputeOldDemoID(const char *s) -{ - UINT16 ret = 0, i = 0; - static UINT16 premiers[16] = {2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53}; - - while (*s) - { - ret = (UINT16)(ret + (*s)*premiers[i]); - s++; - i = (UINT16)((i+1) % 16); - } - return ret; -} - -/** Finds a net variable based on its old style hash. If a hash collides, a - * warning is printed and this function returns NULL. - * - * \param chk The variable's old style hash. - * \return A pointer to the variable itself if found, or NULL. - */ -static old_demo_var_t *CV_FindOldDemoVar(UINT16 chk) -{ - old_demo_var_t *demovar; - - for (demovar = consvar_old_demo_vars; demovar; demovar = demovar->next) - { - if (demovar->checksum == chk) - { - if (demovar->collides) - { - CONS_Alert(CONS_WARNING, - "Old demo netvar id %hu is a collision\n", chk); - return NULL; - } - - return demovar; - } - } - - return NULL; -} -#endif/*OLD22DEMOCOMPAT*/ - /** Finds a net variable based on its identifier number. * * \param netid The variable's identifier number. @@ -1245,32 +1189,6 @@ static consvar_t *CV_FindNetVar(UINT16 netid) static void Setvalue(consvar_t *var, const char *valstr, boolean stealth); -#ifdef OLD22DEMOCOMPAT -/* Sets up a netvar for compatibility with old demos. */ -static void CV_RegisterOldDemoVar(consvar_t *variable) -{ - old_demo_var_t *demovar; - UINT16 old_demo_id; - - old_demo_id = CV_ComputeOldDemoID(variable->name); - - demovar = CV_FindOldDemoVar(old_demo_id); - - if (demovar) - demovar->collides = true; - else - { - demovar = ZZ_Calloc(sizeof *demovar); - - demovar->checksum = old_demo_id; - demovar->cvar = variable; - - demovar->next = consvar_old_demo_vars; - consvar_old_demo_vars = demovar; - } -} -#endif - /** Registers a variable for later use from the console. * * \param variable The variable to register. @@ -1299,10 +1217,6 @@ void CV_RegisterVar(consvar_t *variable) /* in case of overflow... */ if (variable->netid > consvar_number_of_netids) I_Error("Way too many netvars"); - -#ifdef OLD22DEMOCOMPAT - CV_RegisterOldDemoVar(variable); -#endif } // link the variable in @@ -1596,38 +1510,6 @@ ReadNetVar (UINT8 **p, char **return_value, boolean *return_stealth) return cvar; } -#ifdef OLD22DEMOCOMPAT -static consvar_t * -ReadOldDemoVar (UINT8 **p, char **return_value, boolean *return_stealth) -{ - UINT16 id; - char *val; - boolean stealth; - - old_demo_var_t *demovar; - - id = READUINT16 (*p); - val = (char *)*p; - SKIPSTRING (*p); - stealth = READUINT8 (*p); - - demovar = CV_FindOldDemoVar(id); - - if (demovar) - { - (*return_value) = val; - (*return_stealth) = stealth; - - return demovar->cvar; - } - else - { - CONS_Alert(CONS_WARNING, "Netvar not found with old demo id %hu\n", id); - return NULL; - } -} -#endif/*OLD22DEMOCOMPAT*/ - static consvar_t * ReadDemoVar (UINT8 **p, char **return_value, boolean *return_stealth) { @@ -1755,13 +1637,6 @@ void CV_LoadNetVars(UINT8 **p) CV_LoadVars(p, ReadNetVar); } -#ifdef OLD22DEMOCOMPAT -void CV_LoadOldDemoVars(UINT8 **p) -{ - CV_LoadVars(p, ReadOldDemoVar); -} -#endif - void CV_LoadDemoVars(UINT8 **p) { CV_LoadVars(p, ReadDemoVar); diff --git a/src/command.h b/src/command.h index 27352bc80..0050da66a 100644 --- a/src/command.h +++ b/src/command.h @@ -148,19 +148,6 @@ typedef struct consvar_s //NULL, NULL, 0, NULL, NULL |, 0, NULL, NULL, 0, 0, NUL struct consvar_s *next; } consvar_t; -#ifdef OLD22DEMOCOMPAT -typedef struct old_demo_var old_demo_var_t; - -struct old_demo_var -{ - UINT16 checksum; - boolean collides;/* this var is a collision of multiple hashes */ - - consvar_t *cvar; - old_demo_var_t *next; -}; -#endif/*OLD22DEMOCOMPAT*/ - extern CV_PossibleValue_t CV_OnOff[]; extern CV_PossibleValue_t CV_YesNo[]; extern CV_PossibleValue_t CV_Unsigned[]; @@ -215,10 +202,6 @@ void CV_LoadNetVars(UINT8 **p); #define CV_SaveDemoVars(p) CV_SaveVars(p, true) void CV_LoadDemoVars(UINT8 **p); -#ifdef OLD22DEMOCOMPAT -void CV_LoadOldDemoVars(UINT8 **p); -#endif - // reset cheat netvars after cheats is deactivated void CV_ResetCheatNetVars(void); diff --git a/src/doomdef.h b/src/doomdef.h index 014d5f945..107bf7a57 100644 --- a/src/doomdef.h +++ b/src/doomdef.h @@ -685,7 +685,4 @@ extern const char *compdate, *comptime, *comprevision, *compbranch; /// MIDI support is really shitty -- we don't use it anyway, so lets throw it behind a define #define NO_MIDI -/// Maintain compatibility with older 2.2 demos -//#define OLD22DEMOCOMPAT - #endif // __DOOMDEF__ diff --git a/src/g_demo.c b/src/g_demo.c index 7635f15e8..ba6d03dfa 100644 --- a/src/g_demo.c +++ b/src/g_demo.c @@ -498,12 +498,8 @@ void G_ReadDemoTiccmd(ticcmd_t *cmd, INT32 playernum) if (ziptic & ZT_LATENCY) oldcmd[playernum].latency = READUINT8(demo_p); -<<<<<<< HEAD G_CopyTiccmd(cmd, &oldcmd[playernum], 1); -======= - G_CopyTiccmd(cmd, &oldcmd, 1); players[playernum].angleturn = cmd->angleturn; ->>>>>>> srb2/next if (!(demoflags & DF_GHOST) && *demo_p == DEMOMARKER) { @@ -1188,62 +1184,6 @@ void G_GhostTicker(void) if (g->mo->destscale != g->mo->scale) P_SetScale(g->mo, g->mo->destscale); } -<<<<<<< HEAD -======= - if (xziptic & EZT_THOKMASK) - { // Let's only spawn ONE of these per frame, thanks. - mobj_t *mobj; - UINT32 type = MT_NULL; - if (g->mo->skin) - { - skin_t *skin = (skin_t *)g->mo->skin; - switch (xziptic & EZT_THOKMASK) - { - case EZT_THOK: - type = skin->thokitem < 0 ? (UINT32)mobjinfo[MT_PLAYER].painchance : (UINT32)skin->thokitem; - break; - case EZT_SPIN: - type = skin->spinitem < 0 ? (UINT32)mobjinfo[MT_PLAYER].damage : (UINT32)skin->spinitem; - break; - case EZT_REV: - type = skin->revitem < 0 ? (UINT32)mobjinfo[MT_PLAYER].raisestate : (UINT32)skin->revitem; - break; - } - } - if (type != MT_NULL) - { - if (type == MT_GHOST) - { - mobj = P_SpawnGhostMobj(g->mo); // does a large portion of the work for us - mobj->frame = (mobj->frame & ~FF_FRAMEMASK)|tr_trans60<mo, 0, 0, -FixedDiv(FixedMul(g->mo->info->height, g->mo->scale) - g->mo->height,3*FRACUNIT), MT_THOK); - mobj->sprite = states[mobjinfo[type].spawnstate].sprite; - mobj->frame = (states[mobjinfo[type].spawnstate].frame & FF_FRAMEMASK) | tr_trans60<color = g->mo->color; - mobj->skin = g->mo->skin; - P_SetScale(mobj, (mobj->destscale = g->mo->scale)); - - if (type == MT_THOK) // spintrail-specific modification for MT_THOK - { - mobj->frame = FF_TRANS80; - mobj->fuse = mobj->tics; - } - mobj->tics = -1; // nope. - } - mobj->floorz = mobj->z; - mobj->ceilingz = mobj->z+mobj->height; - P_UnsetThingPosition(mobj); - mobj->flags = MF_NOBLOCKMAP|MF_NOCLIP|MF_NOCLIPHEIGHT|MF_NOGRAVITY; // make an ATTEMPT to curb crazy SOCs fucking stuff up... - P_SetThingPosition(mobj); - if (!mobj->fuse) - mobj->fuse = 8; - P_SetTarget(&mobj->target, g->mo); - } - } ->>>>>>> srb2/next if (xziptic & EZT_HIT) { // Spawn hit poofs for killing things! UINT16 i, count = READUINT16(g->p), health; @@ -1679,62 +1619,6 @@ void G_ReadMetalTic(mobj_t *metal) if (metal->destscale != metal->scale) P_SetScale(metal, metal->destscale); } -<<<<<<< HEAD -======= - if (xziptic & EZT_THOKMASK) - { // Let's only spawn ONE of these per frame, thanks. - mobj_t *mobj; - UINT32 type = MT_NULL; - if (metal->skin) - { - skin_t *skin = (skin_t *)metal->skin; - switch (xziptic & EZT_THOKMASK) - { - case EZT_THOK: - type = skin->thokitem < 0 ? (UINT32)mobjinfo[MT_PLAYER].painchance : (UINT32)skin->thokitem; - break; - case EZT_SPIN: - type = skin->spinitem < 0 ? (UINT32)mobjinfo[MT_PLAYER].damage : (UINT32)skin->spinitem; - break; - case EZT_REV: - type = skin->revitem < 0 ? (UINT32)mobjinfo[MT_PLAYER].raisestate : (UINT32)skin->revitem; - break; - } - } - if (type != MT_NULL) - { - if (type == MT_GHOST) - { - mobj = P_SpawnGhostMobj(metal); // does a large portion of the work for us - } - else - { - mobj = P_SpawnMobjFromMobj(metal, 0, 0, -FixedDiv(FixedMul(metal->info->height, metal->scale) - metal->height,3*FRACUNIT), MT_THOK); - mobj->sprite = states[mobjinfo[type].spawnstate].sprite; - mobj->frame = states[mobjinfo[type].spawnstate].frame; - mobj->angle = metal->angle; - mobj->color = metal->color; - mobj->skin = metal->skin; - P_SetScale(mobj, (mobj->destscale = metal->scale)); - - if (type == MT_THOK) // spintrail-specific modification for MT_THOK - { - mobj->frame = FF_TRANS70; - mobj->fuse = mobj->tics; - } - mobj->tics = -1; // nope. - } - mobj->floorz = mobj->z; - mobj->ceilingz = mobj->z+mobj->height; - P_UnsetThingPosition(mobj); - mobj->flags = MF_NOBLOCKMAP|MF_NOCLIP|MF_NOCLIPHEIGHT|MF_NOGRAVITY; // make an ATTEMPT to curb crazy SOCs fucking stuff up... - P_SetThingPosition(mobj); - if (!mobj->fuse) - mobj->fuse = 8; - P_SetTarget(&mobj->target, metal); - } - } ->>>>>>> srb2/next if (xziptic & EZT_SPRITE) metal->sprite = READUINT16(metal_p); } @@ -2091,8 +1975,8 @@ void G_BeginRecording(void) demoinfo_p = demo_p; WRITEUINT32(demo_p, 0); - // Save netvars - CV_SaveNetVars(&demo_p, true); + // Save netvar data + CV_SaveDemoVars(&demo_p); // Now store some info for each in-game player @@ -2159,17 +2043,12 @@ void G_BeginRecording(void) } } -<<<<<<< HEAD WRITEUINT8(demo_p, 0xFF); // Denote the end of the player listing // player lua vars, always saved even if empty LUA_ArchiveDemo(); WRITEUINT32(demo_p,P_GetInitSeed()); -======= - // Save netvar data - CV_SaveDemoVars(&demo_p); ->>>>>>> srb2/next memset(&oldcmd,0,sizeof(oldcmd)); memset(&oldghost,0,sizeof(oldghost)); @@ -2762,19 +2641,16 @@ void G_DoPlayDemo(char *defdemoname) pflags_t pflags; UINT32 randseed, followitem; char msg[1024]; -<<<<<<< HEAD boolean spectator; UINT8 slots[MAXPLAYERS], kartspeed[MAXPLAYERS], kartweight[MAXPLAYERS], numslots = 0; #if defined(SKIPERRORS) && !defined(DEVELOP) boolean skiperrors = false; #endif - - G_InitDemoRewind(); -======= #ifdef OLD22DEMOCOMPAT boolean use_old_demo_vars = false; #endif ->>>>>>> srb2/next + + G_InitDemoRewind(); skin[16] = '\0'; follower[16] = '\0';