mirror of
https://github.com/sfall-team/sfall.git
synced 2026-07-27 16:52:34 -07:00
Cosmetic edits: unified indentation of switch-case
This commit is contained in:
@@ -348,30 +348,30 @@ static void SetExplosionRadius(int arg1, int arg2) {
|
||||
static void SetExplosionDamage(int pid, int min, int max) {
|
||||
explosionsDamageReset = true;
|
||||
switch (pid) {
|
||||
case fo::ProtoID::PID_DYNAMITE:
|
||||
SafeWrite32(dynamite_min_dmg_addr, min);
|
||||
SafeWrite32(dynamite_max_dmg_addr, max);
|
||||
break;
|
||||
case fo::ProtoID::PID_PLASTIC_EXPLOSIVES:
|
||||
SafeWrite32(plastic_min_dmg_addr, min);
|
||||
SafeWrite32(plastic_max_dmg_addr, max);
|
||||
break;
|
||||
case fo::ProtoID::PID_DYNAMITE:
|
||||
SafeWrite32(dynamite_min_dmg_addr, min);
|
||||
SafeWrite32(dynamite_max_dmg_addr, max);
|
||||
break;
|
||||
case fo::ProtoID::PID_PLASTIC_EXPLOSIVES:
|
||||
SafeWrite32(plastic_min_dmg_addr, min);
|
||||
SafeWrite32(plastic_max_dmg_addr, max);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
static int GetExplosionDamage(int pid) {
|
||||
DWORD min = 0, max = 0;
|
||||
switch (pid) {
|
||||
case fo::ProtoID::PID_DYNAMITE:
|
||||
min = *(DWORD*)dynamite_min_dmg_addr;
|
||||
max = *(DWORD*)dynamite_max_dmg_addr;
|
||||
break;
|
||||
case fo::ProtoID::PID_PLASTIC_EXPLOSIVES:
|
||||
min = *(DWORD*)plastic_min_dmg_addr;
|
||||
max = *(DWORD*)plastic_max_dmg_addr;
|
||||
break;
|
||||
default:
|
||||
GetDamage(pid, min, max);
|
||||
case fo::ProtoID::PID_DYNAMITE:
|
||||
min = *(DWORD*)dynamite_min_dmg_addr;
|
||||
max = *(DWORD*)dynamite_max_dmg_addr;
|
||||
break;
|
||||
case fo::ProtoID::PID_PLASTIC_EXPLOSIVES:
|
||||
min = *(DWORD*)plastic_min_dmg_addr;
|
||||
max = *(DWORD*)plastic_max_dmg_addr;
|
||||
break;
|
||||
default:
|
||||
GetDamage(pid, min, max);
|
||||
}
|
||||
|
||||
DWORD arrayId = script::CreateTempArray(2, 0);
|
||||
@@ -395,47 +395,47 @@ enum MetaruleExplosionsMode {
|
||||
|
||||
int __stdcall ExplosionsMetaruleFunc(int mode, int arg1, int arg2) {
|
||||
switch (mode) {
|
||||
case EXPL_FORCE_EXPLOSION_PATTERN:
|
||||
if (arg1) {
|
||||
explosion_effect_starting_dir = 2; // bottom-right
|
||||
SafeWrite8(0x411B54, 4); // bottom-left + 1
|
||||
} else {
|
||||
explosion_effect_starting_dir = 0;
|
||||
SafeWrite8(0x411B54, 6); // last direction
|
||||
}
|
||||
break;
|
||||
case EXPL_FORCE_EXPLOSION_ART:
|
||||
SafeWriteBatch<DWORD>((BYTE)arg1, explosion_art_adr);
|
||||
break;
|
||||
case EXPL_FORCE_EXPLOSION_RADIUS:
|
||||
SetExplosionRadius(arg1, arg1);
|
||||
break;
|
||||
case EXPL_FORCE_EXPLOSION_DMGTYPE:
|
||||
SafeWriteBatch<BYTE>((BYTE)arg1, explosion_dmg_check_adr);
|
||||
break;
|
||||
case EXPL_STATIC_EXPLOSION_RADIUS:
|
||||
if (arg1 > 0) set_expl_radius_grenade = arg1;
|
||||
if (arg2 > 0) set_expl_radius_rocket = arg2;
|
||||
SetExplosionRadius(set_expl_radius_grenade, set_expl_radius_rocket);
|
||||
break;
|
||||
case EXPL_GET_EXPLOSION_DAMAGE:
|
||||
return GetExplosionDamage(arg1);
|
||||
case EXPL_SET_DYNAMITE_EXPLOSION_DAMAGE:
|
||||
SetExplosionDamage(fo::ProtoID::PID_DYNAMITE, arg1, arg2);
|
||||
case EXPL_FORCE_EXPLOSION_PATTERN:
|
||||
if (arg1) {
|
||||
explosion_effect_starting_dir = 2; // bottom-right
|
||||
SafeWrite8(0x411B54, 4); // bottom-left + 1
|
||||
} else {
|
||||
explosion_effect_starting_dir = 0;
|
||||
SafeWrite8(0x411B54, 6); // last direction
|
||||
}
|
||||
break;
|
||||
case EXPL_FORCE_EXPLOSION_ART:
|
||||
SafeWriteBatch<DWORD>((BYTE)arg1, explosion_art_adr);
|
||||
break;
|
||||
case EXPL_FORCE_EXPLOSION_RADIUS:
|
||||
SetExplosionRadius(arg1, arg1);
|
||||
break;
|
||||
case EXPL_FORCE_EXPLOSION_DMGTYPE:
|
||||
SafeWriteBatch<BYTE>((BYTE)arg1, explosion_dmg_check_adr);
|
||||
break;
|
||||
case EXPL_STATIC_EXPLOSION_RADIUS:
|
||||
if (arg1 > 0) set_expl_radius_grenade = arg1;
|
||||
if (arg2 > 0) set_expl_radius_rocket = arg2;
|
||||
SetExplosionRadius(set_expl_radius_grenade, set_expl_radius_rocket);
|
||||
break;
|
||||
case EXPL_GET_EXPLOSION_DAMAGE:
|
||||
return GetExplosionDamage(arg1);
|
||||
case EXPL_SET_DYNAMITE_EXPLOSION_DAMAGE:
|
||||
SetExplosionDamage(fo::ProtoID::PID_DYNAMITE, arg1, arg2);
|
||||
return 0;
|
||||
case EXPL_SET_PLASTIC_EXPLOSION_DAMAGE:
|
||||
SetExplosionDamage(fo::ProtoID::PID_PLASTIC_EXPLOSIVES, arg1, arg2);
|
||||
return 0;
|
||||
case EXPL_SET_EXPLOSION_MAX_TARGET:
|
||||
if (arg1 > 0 && arg1 < 7) {
|
||||
SafeWrite8(0x423C93, arg1);
|
||||
explosionMaxTargetReset = true;
|
||||
} else {
|
||||
return 0;
|
||||
case EXPL_SET_PLASTIC_EXPLOSION_DAMAGE:
|
||||
SetExplosionDamage(fo::ProtoID::PID_PLASTIC_EXPLOSIVES, arg1, arg2);
|
||||
return 0;
|
||||
case EXPL_SET_EXPLOSION_MAX_TARGET:
|
||||
if (arg1 > 0 && arg1 < 7) {
|
||||
SafeWrite8(0x423C93, arg1);
|
||||
explosionMaxTargetReset = true;
|
||||
} else {
|
||||
return 0;
|
||||
}
|
||||
break;
|
||||
default:
|
||||
return -1;
|
||||
}
|
||||
break;
|
||||
default:
|
||||
return -1;
|
||||
}
|
||||
if (mode != EXPL_STATIC_EXPLOSION_RADIUS) explosionsMetaruleReset = true;
|
||||
return 0;
|
||||
|
||||
@@ -197,32 +197,32 @@ static void SetPageNum() {
|
||||
|
||||
static long __fastcall CheckPage(long button) {
|
||||
switch (button) {
|
||||
case 0x14B: // left button
|
||||
LSPageOffset -= 10;
|
||||
if (LSPageOffset < 0) LSPageOffset += 10000; // to the last page
|
||||
__asm call fo::funcoffs::gsound_red_butt_press_;
|
||||
break;
|
||||
case 0x149: // fast left PGUP button
|
||||
LSPageOffset -= 100;
|
||||
if (LSPageOffset < 0) LSPageOffset += 10000;
|
||||
__asm call fo::funcoffs::gsound_red_butt_press_;
|
||||
break;
|
||||
case 0x14D: // right button
|
||||
LSPageOffset += 10;
|
||||
if (LSPageOffset >= 10000) LSPageOffset -= 10000; // to the first page
|
||||
__asm call fo::funcoffs::gsound_red_butt_press_;
|
||||
break;
|
||||
case 0x151: // fast right PGDN button
|
||||
LSPageOffset += 100;
|
||||
if (LSPageOffset >= 10000) LSPageOffset -= 10000;
|
||||
__asm call fo::funcoffs::gsound_red_butt_press_;
|
||||
break;
|
||||
case 'p': // p/P button pressed - start SetPageNum func
|
||||
case 'P':
|
||||
SetPageNum();
|
||||
break;
|
||||
default:
|
||||
if (button < 0x500) return 1; // button in down state
|
||||
case 0x14B: // left button
|
||||
LSPageOffset -= 10;
|
||||
if (LSPageOffset < 0) LSPageOffset += 10000; // to the last page
|
||||
__asm call fo::funcoffs::gsound_red_butt_press_;
|
||||
break;
|
||||
case 0x149: // fast left PGUP button
|
||||
LSPageOffset -= 100;
|
||||
if (LSPageOffset < 0) LSPageOffset += 10000;
|
||||
__asm call fo::funcoffs::gsound_red_butt_press_;
|
||||
break;
|
||||
case 0x14D: // right button
|
||||
LSPageOffset += 10;
|
||||
if (LSPageOffset >= 10000) LSPageOffset -= 10000; // to the first page
|
||||
__asm call fo::funcoffs::gsound_red_butt_press_;
|
||||
break;
|
||||
case 0x151: // fast right PGDN button
|
||||
LSPageOffset += 100;
|
||||
if (LSPageOffset >= 10000) LSPageOffset -= 10000;
|
||||
__asm call fo::funcoffs::gsound_red_butt_press_;
|
||||
break;
|
||||
case 'p': // p/P button pressed - start SetPageNum func
|
||||
case 'P':
|
||||
SetPageNum();
|
||||
break;
|
||||
default:
|
||||
if (button < 0x500) return 1; // button in down state
|
||||
}
|
||||
|
||||
LSButtDN = button;
|
||||
|
||||
@@ -1203,7 +1203,7 @@ void Graphics::init() {
|
||||
if (Graphics::mode < 4 || Graphics::mode > 6) {
|
||||
Graphics::mode = 0;
|
||||
}
|
||||
IsWindowedMode = (Graphics::mode >= 5);
|
||||
Graphics::IsWindowedMode = (Graphics::mode >= 5);
|
||||
|
||||
if (Graphics::mode >= 4) {
|
||||
dlog("Applying DX9 graphics patch.", DL_INIT);
|
||||
@@ -1218,7 +1218,7 @@ void Graphics::init() {
|
||||
}
|
||||
FreeLibrary(h);
|
||||
|
||||
SafeWrite8(0x50FB6B, '2'); // Set call DirectDrawCreate2
|
||||
SafeWrite8(0x50FB6B, '2'); // Set call DirectDrawCreat2
|
||||
HookCall(0x44260C, game_init_hook);
|
||||
|
||||
MakeJump(fo::funcoffs::GNW95_SetPaletteEntries_ + 1, GNW95_SetPaletteEntries_replacement); // 0x4CB310
|
||||
|
||||
@@ -53,45 +53,45 @@ static long __fastcall op_metarule3_ext(long metafunc, long* args) {
|
||||
long result = 0;
|
||||
|
||||
switch (static_cast<MetaruleFunction>(metafunc)) {
|
||||
case SET_HORRIGAN_ENCOUNTER: {
|
||||
long argValue = args[0]; // arg1
|
||||
if (argValue <= 0) { // disable Horrigan encounter
|
||||
if (*(BYTE*)HorriganEncounterCheck == CodeType::JumpNZ) {
|
||||
SafeWrite8(HorriganEncounterCheck, CodeType::JumpShort); // skip the Horrigan encounter check
|
||||
HorriganEncounterDisabled = true;
|
||||
}
|
||||
} else {
|
||||
if (argValue > 127) argValue = 127;
|
||||
SafeWrite8(HorriganEncounterDays, static_cast<BYTE>(argValue));
|
||||
HorriganEncounterSetDays = static_cast<signed char>(argValue);
|
||||
case SET_HORRIGAN_ENCOUNTER: {
|
||||
long argValue = args[0]; // arg1
|
||||
if (argValue <= 0) { // disable Horrigan encounter
|
||||
if (*(BYTE*)HorriganEncounterCheck == CodeType::JumpNZ) {
|
||||
SafeWrite8(HorriganEncounterCheck, CodeType::JumpShort); // skip the Horrigan encounter check
|
||||
HorriganEncounterDisabled = true;
|
||||
}
|
||||
break;
|
||||
} else {
|
||||
if (argValue > 127) argValue = 127;
|
||||
SafeWrite8(HorriganEncounterDays, static_cast<BYTE>(argValue));
|
||||
HorriganEncounterSetDays = static_cast<signed char>(argValue);
|
||||
}
|
||||
case CLEAR_KEYBOARD_BUFFER:
|
||||
__asm call fo::funcoffs::kb_clear_;
|
||||
break;
|
||||
case PARTY_ORDER_ATTACK:
|
||||
PartyControl::OrderAttackPatch();
|
||||
break;
|
||||
case GET_CURRENT_SAVE_SLOT:
|
||||
result = ExtraSaveSlots::GetSaveSlot();
|
||||
break;
|
||||
case SET_CURRENT_SAVE_SLOT:
|
||||
ExtraSaveSlots::SetSaveSlot(args[0], args[1]);
|
||||
break;
|
||||
case GET_CURRENT_QSAVE_PAGE:
|
||||
result = ExtraSaveSlots::GetQuickSavePage();
|
||||
break;
|
||||
case GET_CURRENT_QSAVE_SLOT:
|
||||
result = ExtraSaveSlots::GetQuickSaveSlot();
|
||||
break;
|
||||
case SET_CURRENT_QSAVE_SLOT:
|
||||
ExtraSaveSlots::SetQuickSaveSlot(args[0], args[1], args[2]);
|
||||
break;
|
||||
default:
|
||||
fo::func::debug_printf("\nOPCODE ERROR: metarule3(%d, ...) - metarule function number does not exist.\n > Script: %s, procedure %s.",
|
||||
metafunc, (*fo::ptr::currentProgram)->fileName, fo::func::findCurrentProc(*fo::ptr::currentProgram));
|
||||
break;
|
||||
break;
|
||||
}
|
||||
case CLEAR_KEYBOARD_BUFFER:
|
||||
__asm call fo::funcoffs::kb_clear_;
|
||||
break;
|
||||
case PARTY_ORDER_ATTACK:
|
||||
PartyControl::OrderAttackPatch();
|
||||
break;
|
||||
case GET_CURRENT_SAVE_SLOT:
|
||||
result = ExtraSaveSlots::GetSaveSlot();
|
||||
break;
|
||||
case SET_CURRENT_SAVE_SLOT:
|
||||
ExtraSaveSlots::SetSaveSlot(args[0], args[1]);
|
||||
break;
|
||||
case GET_CURRENT_QSAVE_PAGE:
|
||||
result = ExtraSaveSlots::GetQuickSavePage();
|
||||
break;
|
||||
case GET_CURRENT_QSAVE_SLOT:
|
||||
result = ExtraSaveSlots::GetQuickSaveSlot();
|
||||
break;
|
||||
case SET_CURRENT_QSAVE_SLOT:
|
||||
ExtraSaveSlots::SetQuickSaveSlot(args[0], args[1], args[2]);
|
||||
break;
|
||||
default:
|
||||
fo::func::debug_printf("\nOPCODE ERROR: metarule3(%d, ...) - metarule function number does not exist.\n > Script: %s, procedure %s.",
|
||||
metafunc, (*fo::ptr::currentProgram)->fileName, fo::func::findCurrentProc(*fo::ptr::currentProgram));
|
||||
break;
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
@@ -359,20 +359,20 @@ void mf_inventory_redraw(OpcodeContext& ctx) {
|
||||
int mode;
|
||||
DWORD loopFlag = GetLoopFlags() & (INVENTORY | INTFACEUSE | INTFACELOOT | BARTER);
|
||||
switch (loopFlag) {
|
||||
case INVENTORY:
|
||||
mode = 0;
|
||||
break;
|
||||
case INTFACEUSE:
|
||||
mode = 1;
|
||||
break;
|
||||
case INTFACELOOT:
|
||||
mode = 2;
|
||||
break;
|
||||
case BARTER:
|
||||
mode = 3;
|
||||
break;
|
||||
default:
|
||||
return;
|
||||
case INVENTORY:
|
||||
mode = 0;
|
||||
break;
|
||||
case INTFACEUSE:
|
||||
mode = 1;
|
||||
break;
|
||||
case INTFACELOOT:
|
||||
mode = 2;
|
||||
break;
|
||||
case BARTER:
|
||||
mode = 3;
|
||||
break;
|
||||
default:
|
||||
return;
|
||||
}
|
||||
long redrawSide = (ctx.numArgs() > 0) ? ctx.arg(0).rawValue() : -1; // -1 - both
|
||||
if (redrawSide <= 0) {
|
||||
@@ -442,14 +442,14 @@ void mf_hide_window(OpcodeContext& ctx) {
|
||||
void mf_set_window_flag(OpcodeContext& ctx) {
|
||||
long bitFlag = ctx.arg(1).rawValue();
|
||||
switch (bitFlag) {
|
||||
case fo::WinFlags::DontMoveTop:
|
||||
case fo::WinFlags::MoveOnTop:
|
||||
case fo::WinFlags::Hidden:
|
||||
case fo::WinFlags::Exclusive:
|
||||
case fo::WinFlags::Transparent:
|
||||
break;
|
||||
default:
|
||||
return; // unsupported set flag
|
||||
case fo::WinFlags::DontMoveTop:
|
||||
case fo::WinFlags::MoveOnTop:
|
||||
case fo::WinFlags::Hidden:
|
||||
case fo::WinFlags::Exclusive:
|
||||
case fo::WinFlags::Transparent:
|
||||
break;
|
||||
default:
|
||||
return; // unsupported set flag
|
||||
}
|
||||
bool mode = ctx.arg(2).asBool();
|
||||
if (ctx.arg(0).isString()) {
|
||||
|
||||
@@ -248,18 +248,18 @@ void mf_test(OpcodeContext& ctx) {
|
||||
const ScriptValue &arg = ctx.arg(i);
|
||||
sstream << ", ";
|
||||
switch (arg.type()) {
|
||||
case DATATYPE_INT:
|
||||
sstream << arg.asInt();
|
||||
break;
|
||||
case DATATYPE_FLOAT:
|
||||
sstream << arg.asFloat();
|
||||
break;
|
||||
case DATATYPE_STR:
|
||||
sstream << '"' << arg.asString() << '"';
|
||||
break;
|
||||
default:
|
||||
sstream << "???";
|
||||
break;
|
||||
case DATATYPE_INT:
|
||||
sstream << arg.asInt();
|
||||
break;
|
||||
case DATATYPE_FLOAT:
|
||||
sstream << arg.asFloat();
|
||||
break;
|
||||
case DATATYPE_STR:
|
||||
sstream << '"' << arg.asString() << '"';
|
||||
break;
|
||||
default:
|
||||
sstream << "???";
|
||||
break;
|
||||
}
|
||||
}
|
||||
sstream << ")";
|
||||
|
||||
@@ -185,30 +185,30 @@ void __stdcall OpcodeContext::handleOpcodeStatic(fo::Program* program, DWORD opc
|
||||
/*
|
||||
const char* OpcodeContext::getSfallTypeName(DWORD dataType) {
|
||||
switch (dataType) {
|
||||
case DATATYPE_NONE:
|
||||
return "(none)";
|
||||
case DATATYPE_STR:
|
||||
return "string";
|
||||
case DATATYPE_FLOAT:
|
||||
return "float";
|
||||
case DATATYPE_INT:
|
||||
return "integer";
|
||||
default:
|
||||
return "(unknown)";
|
||||
case DATATYPE_NONE:
|
||||
return "(none)";
|
||||
case DATATYPE_STR:
|
||||
return "string";
|
||||
case DATATYPE_FLOAT:
|
||||
return "float";
|
||||
case DATATYPE_INT:
|
||||
return "integer";
|
||||
default:
|
||||
return "(unknown)";
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
||||
DataType OpcodeContext::getSfallTypeByScriptType(DWORD varType) {
|
||||
switch (varType & 0xFFFF) {
|
||||
case VAR_TYPE_STR2:
|
||||
case VAR_TYPE_STR:
|
||||
return DATATYPE_STR;
|
||||
case VAR_TYPE_FLOAT:
|
||||
return DATATYPE_FLOAT;
|
||||
case VAR_TYPE_INT:
|
||||
default:
|
||||
return DATATYPE_INT;
|
||||
case VAR_TYPE_STR2:
|
||||
case VAR_TYPE_STR:
|
||||
return DATATYPE_STR;
|
||||
case VAR_TYPE_FLOAT:
|
||||
return DATATYPE_FLOAT;
|
||||
case VAR_TYPE_INT:
|
||||
default:
|
||||
return DATATYPE_INT;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
+33
-33
@@ -317,39 +317,39 @@ defaultIni:
|
||||
|
||||
static void LoadOriginalDll(DWORD fdwReason) {
|
||||
switch (fdwReason) {
|
||||
case DLL_PROCESS_ATTACH:
|
||||
char path[MAX_PATH];
|
||||
CopyMemory(path + GetSystemDirectoryA(path , MAX_PATH - 10), "\\ddraw.dll", 11); // path to original dll
|
||||
ddraw.dll = LoadLibraryA(path);
|
||||
if (ddraw.dll) {
|
||||
ddraw.AcquireDDThreadLock = GetProcAddress(ddraw.dll, "AcquireDDThreadLock");
|
||||
ddraw.CheckFullscreen = GetProcAddress(ddraw.dll, "CheckFullscreen");
|
||||
ddraw.CompleteCreateSysmemSurface = GetProcAddress(ddraw.dll, "CompleteCreateSysmemSurface");
|
||||
ddraw.D3DParseUnknownCommand = GetProcAddress(ddraw.dll, "D3DParseUnknownCommand");
|
||||
ddraw.DDGetAttachedSurfaceLcl = GetProcAddress(ddraw.dll, "DDGetAttachedSurfaceLcl");
|
||||
ddraw.DDInternalLock = GetProcAddress(ddraw.dll, "DDInternalLock");
|
||||
ddraw.DDInternalUnlock = GetProcAddress(ddraw.dll, "DDInternalUnlock");
|
||||
ddraw.DSoundHelp = GetProcAddress(ddraw.dll, "DSoundHelp");
|
||||
ddraw.DirectDrawCreateClipper = GetProcAddress(ddraw.dll, "DirectDrawCreateClipper");
|
||||
ddraw.DirectDrawCreate = GetProcAddress(ddraw.dll, "DirectDrawCreate");
|
||||
ddraw.DirectDrawCreateEx = GetProcAddress(ddraw.dll, "DirectDrawCreateEx");
|
||||
ddraw.DirectDrawEnumerateA = GetProcAddress(ddraw.dll, "DirectDrawEnumerateA");
|
||||
ddraw.DirectDrawEnumerateExA = GetProcAddress(ddraw.dll, "DirectDrawEnumerateExA");
|
||||
ddraw.DirectDrawEnumerateExW = GetProcAddress(ddraw.dll, "DirectDrawEnumerateExW");
|
||||
ddraw.DirectDrawEnumerateW = GetProcAddress(ddraw.dll, "DirectDrawEnumerateW");
|
||||
ddraw.DllCanUnloadNow = GetProcAddress(ddraw.dll, "DllCanUnloadNow");
|
||||
ddraw.DllGetClassObject = GetProcAddress(ddraw.dll, "DllGetClassObject");
|
||||
ddraw.GetDDSurfaceLocal = GetProcAddress(ddraw.dll, "GetDDSurfaceLocal");
|
||||
ddraw.GetOLEThunkData = GetProcAddress(ddraw.dll, "GetOLEThunkData");
|
||||
ddraw.GetSurfaceFromDC = GetProcAddress(ddraw.dll, "GetSurfaceFromDC");
|
||||
ddraw.RegisterSpecialCase = GetProcAddress(ddraw.dll, "RegisterSpecialCase");
|
||||
ddraw.ReleaseDDThreadLock = GetProcAddress(ddraw.dll, "ReleaseDDThreadLock");
|
||||
ddraw.SetAppCompatData = GetProcAddress(ddraw.dll, "SetAppCompatData");
|
||||
}
|
||||
break;
|
||||
case DLL_PROCESS_DETACH:
|
||||
if (ddraw.dll) FreeLibrary(ddraw.dll);
|
||||
break;
|
||||
case DLL_PROCESS_ATTACH:
|
||||
char path[MAX_PATH];
|
||||
CopyMemory(path + GetSystemDirectoryA(path , MAX_PATH - 10), "\\ddraw.dll", 11); // path to original dll
|
||||
ddraw.dll = LoadLibraryA(path);
|
||||
if (ddraw.dll) {
|
||||
ddraw.AcquireDDThreadLock = GetProcAddress(ddraw.dll, "AcquireDDThreadLock");
|
||||
ddraw.CheckFullscreen = GetProcAddress(ddraw.dll, "CheckFullscreen");
|
||||
ddraw.CompleteCreateSysmemSurface = GetProcAddress(ddraw.dll, "CompleteCreateSysmemSurface");
|
||||
ddraw.D3DParseUnknownCommand = GetProcAddress(ddraw.dll, "D3DParseUnknownCommand");
|
||||
ddraw.DDGetAttachedSurfaceLcl = GetProcAddress(ddraw.dll, "DDGetAttachedSurfaceLcl");
|
||||
ddraw.DDInternalLock = GetProcAddress(ddraw.dll, "DDInternalLock");
|
||||
ddraw.DDInternalUnlock = GetProcAddress(ddraw.dll, "DDInternalUnlock");
|
||||
ddraw.DSoundHelp = GetProcAddress(ddraw.dll, "DSoundHelp");
|
||||
ddraw.DirectDrawCreateClipper = GetProcAddress(ddraw.dll, "DirectDrawCreateClipper");
|
||||
ddraw.DirectDrawCreate = GetProcAddress(ddraw.dll, "DirectDrawCreate");
|
||||
ddraw.DirectDrawCreateEx = GetProcAddress(ddraw.dll, "DirectDrawCreateEx");
|
||||
ddraw.DirectDrawEnumerateA = GetProcAddress(ddraw.dll, "DirectDrawEnumerateA");
|
||||
ddraw.DirectDrawEnumerateExA = GetProcAddress(ddraw.dll, "DirectDrawEnumerateExA");
|
||||
ddraw.DirectDrawEnumerateExW = GetProcAddress(ddraw.dll, "DirectDrawEnumerateExW");
|
||||
ddraw.DirectDrawEnumerateW = GetProcAddress(ddraw.dll, "DirectDrawEnumerateW");
|
||||
ddraw.DllCanUnloadNow = GetProcAddress(ddraw.dll, "DllCanUnloadNow");
|
||||
ddraw.DllGetClassObject = GetProcAddress(ddraw.dll, "DllGetClassObject");
|
||||
ddraw.GetDDSurfaceLocal = GetProcAddress(ddraw.dll, "GetDDSurfaceLocal");
|
||||
ddraw.GetOLEThunkData = GetProcAddress(ddraw.dll, "GetOLEThunkData");
|
||||
ddraw.GetSurfaceFromDC = GetProcAddress(ddraw.dll, "GetSurfaceFromDC");
|
||||
ddraw.RegisterSpecialCase = GetProcAddress(ddraw.dll, "RegisterSpecialCase");
|
||||
ddraw.ReleaseDDThreadLock = GetProcAddress(ddraw.dll, "ReleaseDDThreadLock");
|
||||
ddraw.SetAppCompatData = GetProcAddress(ddraw.dll, "SetAppCompatData");
|
||||
}
|
||||
break;
|
||||
case DLL_PROCESS_DETACH:
|
||||
if (ddraw.dll) FreeLibrary(ddraw.dll);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user