mirror of
https://github.com/1dot13/source.git
synced 2026-08-26 14:30:26 +02:00
Nothing was left in it but the include of profiler.h, and 132 translation units were including it for that alone. Fifteen files were leaning on profiler.h to drag in <set>, <vector> and <ostream> for them; those now include what they use. This is the commit that moves line numbers. Removing an include line shifts __LINE__ by one for everything below it, and __LINE__ is an immediate operand in every Assert() and DebugMsg() call, so the four game executables differ from their predecessors by roughly a thousand 32-bit constants each. Every one of those is accounted for: each is a single immediate that moved by -1 where the builddefines.h include went away, or +1 where a <set>/<vector> include was added. Nothing else in .text, .rdata or .data moves, no object file's section sizes change, and symbolize_crash and Ja2Export stay bit-identical. The one non-immediate difference is that the 24 Editor translation units of the non-editor apps stop emitting __Avx2WmemEnabledWeakValue, a 4-byte weak COMDAT they only ever instantiated through profiler.h's <vector>. It is a UCRT weak default that other translation units still provide. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
48 lines
1.5 KiB
C
48 lines
1.5 KiB
C
|
|
#ifdef JA2EDITOR
|
|
#ifndef __SMARTMETHOD_H
|
|
#define __SMARTMETHOD_H
|
|
|
|
void CalcSmartWallDefault( UINT16 *pusObjIndex, UINT16 *pusUseIndex );
|
|
void CalcSmartDoorDefault( UINT16 *pusObjIndex, UINT16 *pusUseIndex );
|
|
void CalcSmartWindowDefault( UINT16 *pusObjIndex, UINT16 *pusUseIndex );
|
|
void CalcSmartBrokenWallDefault( UINT16 *pusObjIndex, UINT16 *pusUseIndex );
|
|
|
|
UINT16 CalcSmartWindowIndex( UINT16 usWallOrientation );
|
|
UINT16 CalcSmartDoorIndex( UINT16 usWallOrientation );
|
|
UINT16 CalcSmartBrokenWallIndex( UINT16 usWallOrientation );
|
|
UINT16 CalcSmartDoorType();
|
|
|
|
void IncSmartWallUIValue();
|
|
void DecSmartWallUIValue();
|
|
void IncSmartDoorUIValue();
|
|
void DecSmartDoorUIValue();
|
|
void IncSmartWindowUIValue();
|
|
void DecSmartWindowUIValue();
|
|
void IncSmartBrokenWallUIValue();
|
|
void DecSmartBrokenWallUIValue();
|
|
|
|
BOOLEAN CalcWallInfoUsingSmartMethod( INT32 iMapIndex, UINT16 *pusWallType, UINT16 *pusIndex );
|
|
BOOLEAN CalcDoorInfoUsingSmartMethod( INT32 iMapIndex, UINT16 *pusDoorType, UINT16 *pusIndex );
|
|
BOOLEAN CalcWindowInfoUsingSmartMethod( INT32 iMapIndex, UINT16 *pusWallType, UINT16 *pusIndex );
|
|
BOOLEAN CalcBrokenWallInfoUsingSmartMethod( INT32 iMapIndex, UINT16 *pusWallType, UINT16 *pusIndex );
|
|
|
|
void PasteSmartWall( INT32 iMapIndex );
|
|
void PasteSmartDoor( INT32 iMapIndex );
|
|
void PasteSmartWindow( INT32 iMapIndex );
|
|
void PasteSmartBrokenWall( INT32 iMapIndex );
|
|
|
|
extern UINT8 gubDoorUIValue;
|
|
extern UINT8 gubWindowUIValue;
|
|
extern UINT8 gubWallUIValue;
|
|
extern UINT8 gubBrokenWallUIValue;
|
|
|
|
#endif
|
|
#endif
|
|
|
|
|
|
|
|
|
|
|
|
|