Compare commits

..
11 Commits
Author SHA1 Message Date
NovaRain cc875291d1 Merge branch 'develop' 2018-02-13 09:50:43 +08:00
NovaRain 9e28f8bdfd Lined up some code in MiscPatches.cpp. 2018-02-12 21:07:02 +08:00
NovaRain b2894268f6 Reverted item highlighting mod to the previous status (commit 90485a205a). #132 2018-01-28 18:15:35 +08:00
NovaRain b3e2b8b5b8 Rearranged and simplified gl_highlighting.ssl from the previous commit a bit. 2018-01-17 21:22:37 +08:00
burner1024andNovaRain 3227966767 More highlighting (#130)
* allow to highlight alive critters

* allow to ignore NO_HIGHLIGHT flag

* don't highlight while in loot screen, so that it's not constantly toggled by shift-A ("Take All" hotkey)
2018-01-17 13:55:22 +08:00
NovaRain 9475b8c482 Fixed add_mult_objs_to_inven only adding 500 of an object when the value of "count" argument is over 99999. #129 2018-01-17 07:36:05 +08:00
NovaRain 8b356b1213 Fixed broken ExtraGameMsgFileList option. #127 2018-01-11 07:42:50 +08:00
NovaRain 90485a205a Changed item highlighting mod to only highlight lootable corpses. #126 2018-01-07 21:37:26 +08:00
NovaRain d5be2fdc9b Made sure the value of player's base EMP DR is set correctly. 2018-01-02 23:22:45 +08:00
NovaRain a705341e02 Updated version number and the year. 2018-01-02 10:16:32 +08:00
NovaRain ca3f59ad1e Fixed a bug in NPC combat control that kept increasing the perk rank of Gecko Skinning after the combat ended.
Condensed the code in ApplyHeaveHoFix a bit.
2018-01-02 09:58:30 +08:00
13 changed files with 24 additions and 20 deletions
+3 -3
View File
@@ -5,10 +5,10 @@
Key=42
; Set to 1 to also highlight containers
Containers=1
Containers=0
; Set to 1 to also highlight corpses
Corpses=1
; Set to 1 to also highlight lootable corpses
Corpses=0
; Set to 1 to only highlight objects in the player's line-of-sight
CheckLOS=0
+1 -1
View File
@@ -1,5 +1,5 @@
;sfall configuration settings
;v4.0.2
;v4.0.3
[Main]
;Change to 1 if you want to use command line args to tell sfall to use another ini file.
Binary file not shown.
+3 -2
View File
@@ -4,7 +4,7 @@
Previously was part of sfall itself, now a separate mod.
Features:
- highlighting items, containers (optional) and dead bodies (optional) on the ground
- highlighting items, containers (optional) and lootable corpses (optional) on the ground
- configurable hotkey is used to trigger highlight
- only objects in direct line-of-sight of player are highlighted (optional)
- motion scanner is required to enable highlight (optional)
@@ -23,6 +23,7 @@
#define CRITTER_IS_DEAD (1)
#define PID_MOTION_SENSOR (59)
#define NO_HIGHLIGHT(obj) (get_flags(obj) bwand FLAG_NOHIGHLIGHT)
#define NO_STEAL(obj) (get_proto_data(obj_pid(obj), PROTO_CR_FLAGS) bwand CFLG_NOSTEAL)
variable configSection := "Highlighting";
variable highlightKey;
@@ -52,7 +53,7 @@ procedure ToggleHighlight(variable enable) begin
end
if (alsoCorpse) then begin
foreach obj in list_as_array(LIST_CRITTERS) begin
if critter_state(obj) == CRITTER_IS_DEAD then begin
if critter_state(obj) == CRITTER_IS_DEAD and not NO_STEAL(obj) then begin
call ToggleHighlightObject(obj, enable);
end
end
Binary file not shown.
+1
View File
@@ -42,6 +42,7 @@ end
procedure start begin
if game_loaded and (sfall_ver_major >= 4) then begin
set_perk_ranks(PERK_gecko_skinning_perk, 1);
controlMode := GetConfig("CombatControl", "Mode", 0);
if (controlMode > 2) then controlMode := 0;
if (controlMode > 0) then begin
+3
View File
@@ -1389,6 +1389,9 @@ void BugFixes::init()
// Fix crash when calling partyMemberGetCurLevel_ on a critter that has no data in party.txt
MakeJump(0x495FF6, partyMemberGetCurLevel_hack);
// Fix for add_mult_objs_to_inven only adding 500 of an object when the value of "count" argument is over 99999
SafeWrite32(0x45A2A0, 0x1869F); // 99999
}
}
+1 -1
View File
@@ -34,7 +34,7 @@ static const char* ExtraLines[] = {
"#SFALL " VERSION_STRING,
"",
"sfall is free software, licensed under the GPL",
"Copyright 2008-2017 The sfall team",
"Copyright 2008-2018 The sfall team",
"",
"@Author",
"Timeslip",
+1 -1
View File
@@ -154,7 +154,7 @@ end:
static void __declspec(naked) SetPCBaseStatEMP() {
__asm {
mov ds:[29*4 + 0x51C394], 100; // set_pc_base_stat(STAT_dmg_resist_emp, 100)
mov dword ptr ds:[29*4 + 0x51C394], 100; // set_pc_base_stat(STAT_dmg_resist_emp, 100)
retn;
}
}
+1 -1
View File
@@ -89,7 +89,7 @@ void ClearReadExtraGameMsgFiles() {
}
void Message::init() {
LoadGameHook::OnGameInit() += ReadExtraGameMsgFiles;
LoadGameHook::OnBeforeGameStart() += ReadExtraGameMsgFiles;
}
void Message::exit() {
+4 -4
View File
@@ -154,13 +154,13 @@ static void __declspec(naked) register_object_take_out_hack() {
push ecx
push eax
mov ecx, edx // ID1
mov edx, [eax + 0x1C] // cur_rot
mov edx, [eax + 0x1C] // cur_rot
inc edx
push edx // ID3
xor ebx, ebx // ID2
mov edx, [eax + 0x20] // fid
and edx, 0xFFF // Index
xor eax, eax
mov edx, [eax + 0x20] // fid
and edx, 0xFFF // Index
xor eax, eax
inc eax // Obj_Type
call fo::funcoffs::art_id_
xor ebx, ebx
+1 -2
View File
@@ -613,8 +613,7 @@ lower:
}
void _stdcall ApplyHeaveHoFix() {
SafeWrite8(0x478AC4, 0xE9);
HookCall(0x478AC4, HeaveHoHook);
MakeJump(0x478AC4, HeaveHoHook);
perks[PERK_heave_ho].strengthMin = 0;
}
+5 -5
View File
@@ -1,6 +1,6 @@
/*
* sfall
* Copyright (C) 2008-2016 The sfall team
* Copyright (C) 2008-2018 The sfall team
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -20,17 +20,17 @@
#define TARGETVERSION "Fallout 2 v1.02 US"
#define LEGAL_COPYRIGHT "Copyright (C) 2006-2017, sfall team"
#define LEGAL_COPYRIGHT "Copyright (C) 2006-2018, sfall team"
#define VERSION_MAJOR 4
#define VERSION_MINOR 0
#define VERSION_BUILD 2
#define VERSION_BUILD 3
#define VERSION_REV 0
#ifdef WIN2K
#define VERSION_STRING "4.0.2 win2k"
#define VERSION_STRING "4.0.3 win2k"
#else
#define VERSION_STRING "4.0.2"
#define VERSION_STRING "4.0.3"
#endif
#define CHECK_VAL (4)