mirror of
https://github.com/sfall-team/sfall.git
synced 2026-07-27 16:52:34 -07:00
Code refactoring in Arrays.cpp & ScriptArrays.hpp.
Added new example mods gl_ammomod & gl_highlighting_lite to modderspack. Renamed Bugs.cpp to BugFixes.cpp.
This commit is contained in:
@@ -0,0 +1,201 @@
|
||||
;Glovz's Damage Fix
|
||||
|
||||
; PID_EXPLOSIVE_ROCKET
|
||||
[1]
|
||||
pid=14
|
||||
ac_adjust=-10
|
||||
dr_adjust=0
|
||||
dam_mult=1
|
||||
dam_div=1
|
||||
|
||||
; PID_10MM_JHP
|
||||
[2]
|
||||
pid=29
|
||||
ac_adjust=0
|
||||
dr_adjust=0
|
||||
dam_mult=2
|
||||
dam_div=1
|
||||
|
||||
; PID_10MM_AP
|
||||
[3]
|
||||
pid=30
|
||||
ac_adjust=-5
|
||||
dr_adjust=0
|
||||
dam_mult=1
|
||||
dam_div=2
|
||||
|
||||
; PID_44_MAGNUM_JHP
|
||||
[4]
|
||||
pid=31
|
||||
ac_adjust=0
|
||||
dr_adjust=-10
|
||||
dam_mult=2
|
||||
dam_div=1
|
||||
|
||||
; PID_FLAMETHROWER_FUEL
|
||||
[5]
|
||||
pid=32
|
||||
ac_adjust=-20
|
||||
dr_adjust=0
|
||||
dam_mult=1
|
||||
dam_div=1
|
||||
|
||||
; PID_14MM_AP
|
||||
[6]
|
||||
pid=33
|
||||
ac_adjust=-5
|
||||
dr_adjust=-30
|
||||
dam_mult=1
|
||||
dam_div=2
|
||||
|
||||
; PID_223_FMJ
|
||||
[7]
|
||||
pid=34
|
||||
ac_adjust=-15
|
||||
dr_adjust=-15
|
||||
dam_mult=2
|
||||
dam_div=2
|
||||
|
||||
; PID_5MM_JHP
|
||||
[8]
|
||||
pid=35
|
||||
ac_adjust=0
|
||||
dr_adjust=-15
|
||||
dam_mult=2
|
||||
dam_div=1
|
||||
|
||||
; PID_5MM_AP
|
||||
[9]
|
||||
pid=36
|
||||
ac_adjust=-5
|
||||
dr_adjust=-15
|
||||
dam_mult=1
|
||||
dam_div=2
|
||||
|
||||
; PID_ROCKET_AP
|
||||
[10]
|
||||
pid=37
|
||||
ac_adjust=-10
|
||||
dr_adjust=0
|
||||
dam_mult=1
|
||||
dam_div=2
|
||||
|
||||
; PID_SMALL_ENERGY_CELL
|
||||
[11]
|
||||
pid=38
|
||||
ac_adjust=-20
|
||||
dr_adjust=0
|
||||
dam_mult=2
|
||||
dam_div=1
|
||||
|
||||
; PID_MICRO_FUSION_CELL
|
||||
[12]
|
||||
pid=39
|
||||
ac_adjust=-20
|
||||
dr_adjust=0
|
||||
dam_mult=2
|
||||
dam_div=1
|
||||
|
||||
; PID_SHOTGUN_SHELLS
|
||||
[13]
|
||||
pid=95
|
||||
ac_adjust=-15
|
||||
dr_adjust=0
|
||||
dam_mult=3
|
||||
dam_div=1
|
||||
|
||||
; PID_44_FMJ_MAGNUM
|
||||
[14]
|
||||
pid=111
|
||||
ac_adjust=-5
|
||||
dr_adjust=-10
|
||||
dam_mult=2
|
||||
dam_div=2
|
||||
|
||||
; PID_9MM_BALL
|
||||
[15]
|
||||
pid=121
|
||||
ac_adjust=0
|
||||
dr_adjust=0
|
||||
dam_mult=1
|
||||
dam_div=1
|
||||
|
||||
; PID_BBS
|
||||
[16]
|
||||
pid=163
|
||||
ac_adjust=0
|
||||
dr_adjust=0
|
||||
dam_mult=1
|
||||
dam_div=1
|
||||
|
||||
; PID_ROBO_ROCKET_AMMO
|
||||
[17]
|
||||
pid=274
|
||||
ac_adjust=-10
|
||||
dr_adjust=-10
|
||||
dam_mult=1
|
||||
dam_div=1
|
||||
|
||||
; PID_45_CALIBER_AMMO
|
||||
[18]
|
||||
pid=357
|
||||
ac_adjust=0
|
||||
dr_adjust=-5
|
||||
dam_mult=2
|
||||
dam_div=1
|
||||
|
||||
; PID_2MM_EC_AMMO
|
||||
[19]
|
||||
pid=358
|
||||
ac_adjust=-25
|
||||
dr_adjust=-20
|
||||
dam_mult=1
|
||||
dam_div=3
|
||||
|
||||
; PID_4_7MM_CASELESS
|
||||
[20]
|
||||
pid=359
|
||||
ac_adjust=-5
|
||||
dr_adjust=-25
|
||||
dam_mult=1
|
||||
dam_div=2
|
||||
|
||||
; PID_9MM_AMMO
|
||||
[21]
|
||||
pid=360
|
||||
ac_adjust=0
|
||||
dr_adjust=0
|
||||
dam_mult=2
|
||||
dam_div=1
|
||||
|
||||
; PID_HN_NEEDLER_CARTRIDGE
|
||||
[22]
|
||||
pid=361
|
||||
ac_adjust=-20
|
||||
dr_adjust=-5
|
||||
dam_mult=1
|
||||
dam_div=1
|
||||
|
||||
; PID_HN_AP_NEEDLER_CARTRIDGE
|
||||
[23]
|
||||
pid=362
|
||||
ac_adjust=-20
|
||||
dr_adjust=-5
|
||||
dam_mult=1
|
||||
dam_div=2
|
||||
|
||||
; PID_7_62MM_AMMO
|
||||
[24]
|
||||
pid=363
|
||||
ac_adjust=-10
|
||||
dr_adjust=-20
|
||||
dam_mult=2
|
||||
dam_div=2
|
||||
|
||||
; PID_FLAMETHROWER_FUEL_MK_II
|
||||
[25]
|
||||
pid=382
|
||||
ac_adjust=-20
|
||||
dr_adjust=-15
|
||||
dam_mult=1
|
||||
dam_div=1
|
||||
@@ -0,0 +1,201 @@
|
||||
;YAAM
|
||||
|
||||
; PID_EXPLOSIVE_ROCKET
|
||||
[1]
|
||||
pid=14
|
||||
ac_adjust=0
|
||||
dr_adjust=0
|
||||
dam_mult=3
|
||||
dam_div=2
|
||||
|
||||
; PID_10MM_JHP
|
||||
[2]
|
||||
pid=29
|
||||
ac_adjust=0
|
||||
dr_adjust=0
|
||||
dam_mult=3
|
||||
dam_div=2
|
||||
|
||||
; PID_10MM_AP
|
||||
[3]
|
||||
pid=30
|
||||
ac_adjust=0
|
||||
dr_adjust=4
|
||||
dam_mult=1
|
||||
dam_div=1
|
||||
|
||||
; PID_44_MAGNUM_JHP
|
||||
[4]
|
||||
pid=31
|
||||
ac_adjust=0
|
||||
dr_adjust=0
|
||||
dam_mult=3
|
||||
dam_div=2
|
||||
|
||||
; PID_FLAMETHROWER_FUEL
|
||||
[5]
|
||||
pid=32
|
||||
ac_adjust=-20
|
||||
dr_adjust=0
|
||||
dam_mult=3
|
||||
dam_div=4
|
||||
|
||||
; PID_14MM_AP
|
||||
[6]
|
||||
pid=33
|
||||
ac_adjust=0
|
||||
dr_adjust=8
|
||||
dam_mult=1
|
||||
dam_div=1
|
||||
|
||||
; PID_223_FMJ
|
||||
[7]
|
||||
pid=34
|
||||
ac_adjust=-20
|
||||
dr_adjust=5
|
||||
dam_mult=1
|
||||
dam_div=1
|
||||
|
||||
; PID_5MM_JHP
|
||||
[8]
|
||||
pid=35
|
||||
ac_adjust=0
|
||||
dr_adjust=0
|
||||
dam_mult=3
|
||||
dam_div=2
|
||||
|
||||
; PID_5MM_AP
|
||||
[9]
|
||||
pid=36
|
||||
ac_adjust=0
|
||||
dr_adjust=4
|
||||
dam_mult=1
|
||||
dam_div=1
|
||||
|
||||
; PID_ROCKET_AP
|
||||
[10]
|
||||
pid=37
|
||||
ac_adjust=0
|
||||
dr_adjust=20
|
||||
dam_mult=1
|
||||
dam_div=1
|
||||
|
||||
; PID_SMALL_ENERGY_CELL
|
||||
[11]
|
||||
pid=38
|
||||
ac_adjust=0
|
||||
dr_adjust=0
|
||||
dam_mult=1
|
||||
dam_div=1
|
||||
|
||||
; PID_MICRO_FUSION_CELL
|
||||
[12]
|
||||
pid=39
|
||||
ac_adjust=0
|
||||
dr_adjust=0
|
||||
dam_mult=1
|
||||
dam_div=1
|
||||
|
||||
; PID_SHOTGUN_SHELLS
|
||||
[13]
|
||||
pid=95
|
||||
ac_adjust=-10
|
||||
dr_adjust=0
|
||||
dam_mult=1
|
||||
dam_div=1
|
||||
|
||||
; PID_44_FMJ_MAGNUM
|
||||
[14]
|
||||
pid=111
|
||||
ac_adjust=0
|
||||
dr_adjust=5
|
||||
dam_mult=1
|
||||
dam_div=1
|
||||
|
||||
; PID_9MM_BALL
|
||||
[15]
|
||||
pid=121
|
||||
ac_adjust=0
|
||||
dr_adjust=2
|
||||
dam_mult=3
|
||||
dam_div=2
|
||||
|
||||
; PID_BBS
|
||||
[16]
|
||||
pid=163
|
||||
ac_adjust=0
|
||||
dr_adjust=0
|
||||
dam_mult=1
|
||||
dam_div=1
|
||||
|
||||
; PID_ROBO_ROCKET_AMMO
|
||||
[17]
|
||||
pid=274
|
||||
ac_adjust=0
|
||||
dr_adjust=10
|
||||
dam_mult=1
|
||||
dam_div=1
|
||||
|
||||
; PID_45_CALIBER_AMMO
|
||||
[18]
|
||||
pid=357
|
||||
ac_adjust=0
|
||||
dr_adjust=0
|
||||
dam_mult=1
|
||||
dam_div=1
|
||||
|
||||
; PID_2MM_EC_AMMO
|
||||
[19]
|
||||
pid=358
|
||||
ac_adjust=-30
|
||||
dr_adjust=9
|
||||
dam_mult=3
|
||||
dam_div=2
|
||||
|
||||
; PID_4_7MM_CASELESS
|
||||
[20]
|
||||
pid=359
|
||||
ac_adjust=-5
|
||||
dr_adjust=7
|
||||
dam_mult=3
|
||||
dam_div=2
|
||||
|
||||
; PID_9MM_AMMO
|
||||
[21]
|
||||
pid=360
|
||||
ac_adjust=0
|
||||
dr_adjust=2
|
||||
dam_mult=1
|
||||
dam_div=1
|
||||
|
||||
; PID_HN_NEEDLER_CARTRIDGE
|
||||
[22]
|
||||
pid=361
|
||||
ac_adjust=-10
|
||||
dr_adjust=2
|
||||
dam_mult=1
|
||||
dam_div=1
|
||||
|
||||
; PID_HN_AP_NEEDLER_CARTRIDGE
|
||||
[23]
|
||||
pid=362
|
||||
ac_adjust=-10
|
||||
dr_adjust=5
|
||||
dam_mult=2
|
||||
dam_div=1
|
||||
|
||||
; PID_7_62MM_AMMO
|
||||
[24]
|
||||
pid=363
|
||||
ac_adjust=-5
|
||||
dr_adjust=2
|
||||
dam_mult=1
|
||||
dam_div=1
|
||||
|
||||
; PID_FLAMETHROWER_FUEL_MK_II
|
||||
[25]
|
||||
pid=382
|
||||
ac_adjust=-20
|
||||
dr_adjust=0
|
||||
dam_mult=1
|
||||
dam_div=1
|
||||
Binary file not shown.
@@ -0,0 +1,63 @@
|
||||
/*
|
||||
|
||||
Ammo INI Loader mod for Fallout 2 by NovaRain
|
||||
---------------------------------------------
|
||||
|
||||
- modifies ammo protos with data from an INI file:
|
||||
* AmmoGlovz.ini if DamageFormula=1 or 2 in ddraw.ini
|
||||
* AmmoYAAM.ini if DamageFormula=5 in ddraw.ini
|
||||
* AmmoMod.ini if not using any bulit-in damage formula
|
||||
|
||||
Requires sfall 3.5 or higher
|
||||
|
||||
*/
|
||||
|
||||
#include "..\headers\define_extra.h"
|
||||
|
||||
procedure set_ammo_mod;
|
||||
procedure start;
|
||||
procedure map_enter_p_proc;
|
||||
|
||||
variable ammoIni;
|
||||
variable enabled;
|
||||
|
||||
procedure set_ammo_mod begin
|
||||
variable pid, dmg_mod, i := 1;
|
||||
|
||||
while (i > 0) do begin
|
||||
pid := get_ini_setting(ammoIni + "|" + i + "|pid");
|
||||
if (pid < 1) then break;
|
||||
set_proto_data(pid, PROTO_AM_AC_MOD, get_ini_setting(ammoIni + "|" + i + "|ac_adjust"));
|
||||
set_proto_data(pid, PROTO_AM_DR_MOD, get_ini_setting(ammoIni + "|" + i + "|dr_adjust"));
|
||||
|
||||
// dam_mult and dam_div must be positive integers
|
||||
dmg_mod := get_ini_setting(ammoIni + "|" + i + "|dam_mult");
|
||||
if (dmg_mod < 1) then dmg_mod := 1;
|
||||
set_proto_data(pid, PROTO_AM_DMG_MULT, dmg_mod);
|
||||
dmg_mod := get_ini_setting(ammoIni + "|" + i + "|dam_div");
|
||||
if (dmg_mod < 1) then dmg_mod := 1;
|
||||
set_proto_data(pid, PROTO_AM_DMG_DIV, dmg_mod);
|
||||
|
||||
i++;
|
||||
end
|
||||
//debug_msg("AmmoMod: " + ammoIni + " - set " + (i - 1) + " ammo protos.");
|
||||
end
|
||||
|
||||
procedure start begin
|
||||
if game_loaded then begin
|
||||
ammoIni := get_ini_setting("ddraw.ini|Misc|DamageFormula");
|
||||
switch (ammoIni) begin
|
||||
case 1: ammoIni := "AmmoGlovz.ini";
|
||||
case 2: ammoIni := "AmmoGlovz.ini";
|
||||
case 5: ammoIni := "AmmoYAAM.ini";
|
||||
default: ammoIni := "AmmoMod.ini";
|
||||
end
|
||||
|
||||
enabled := get_ini_setting(ammoIni + "|1|pid");
|
||||
if (enabled > 0) then call set_ammo_mod;
|
||||
end
|
||||
end
|
||||
|
||||
procedure map_enter_p_proc begin
|
||||
if (enabled > 0) then call set_ammo_mod;
|
||||
end
|
||||
@@ -0,0 +1,12 @@
|
||||
Ammo INI Loader mod for Fallout 2 by NovaRain
|
||||
---------------------------------------------
|
||||
|
||||
- modifies ammo protos with data from an INI file:
|
||||
* AmmoGlovz.ini if DamageFormula=1 or 2 in ddraw.ini
|
||||
* AmmoYAAM.ini if DamageFormula=5 in ddraw.ini
|
||||
* AmmoMod.ini if not using any bulit-in damage formula
|
||||
|
||||
|
||||
Requires sfall 3.5 or higher.
|
||||
|
||||
To use, copy gl_ammomod.int to your scripts folder, and copy the INI files to the same directory as sfall.
|
||||
Binary file not shown.
@@ -0,0 +1,120 @@
|
||||
/**
|
||||
|
||||
Item Highlight mod (Lite version)
|
||||
|
||||
A cut-down version of the mod included in sfall 4.x, offers a bit more features than the built-in function.
|
||||
Features:
|
||||
- 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)
|
||||
- motion scanner charges are decreased on each use (optional)
|
||||
|
||||
Requires sfall 3.8.12 or higher
|
||||
|
||||
NOTE: this script requires compiler from sfall modderspack with -s option
|
||||
(short circuit evaluation)
|
||||
|
||||
version 1.1
|
||||
|
||||
**/
|
||||
|
||||
#include "main.h"
|
||||
//#include "..\..\..\!SRC\headers\define.h"
|
||||
|
||||
#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;
|
||||
variable isHighlight;
|
||||
variable alsoContainer;
|
||||
variable alsoCorpse;
|
||||
variable checkLOS;
|
||||
variable outlineColor;
|
||||
variable motionScanner;
|
||||
variable highlightFailMsg1;
|
||||
variable highlightFailMsg2;
|
||||
|
||||
procedure ToggleHighlightObject(variable obj, variable enable) begin
|
||||
if obj and (not enable or not checkLOS or not obj_blocking_line(dude_obj, tile_num(obj), BLOCKING_TYPE_SHOOT)) then begin
|
||||
if (alsoContainer and obj_item_subtype(obj) == item_type_container) or (not NO_HIGHLIGHT(obj)) then begin
|
||||
if (enable) then set_outline(obj, outlineColor);
|
||||
else set_outline(obj, 0);
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
procedure ToggleHighlight(variable enable) begin
|
||||
variable obj;
|
||||
foreach obj in list_as_array(LIST_GROUNDITEMS) begin
|
||||
if obj != outlined_object then begin
|
||||
call ToggleHighlightObject(obj, enable);
|
||||
end
|
||||
end
|
||||
if (alsoCorpse) then begin
|
||||
foreach obj in list_as_array(LIST_CRITTERS) begin
|
||||
if critter_state(obj) == CRITTER_IS_DEAD and not NO_STEAL(obj) then begin
|
||||
call ToggleHighlightObject(obj, enable);
|
||||
end
|
||||
end
|
||||
end
|
||||
tile_refresh_display;
|
||||
end
|
||||
|
||||
procedure KeyPressHandler begin
|
||||
variable pressed := get_sfall_arg,
|
||||
scanCode := get_sfall_arg,
|
||||
scanner, charges;
|
||||
|
||||
if scanCode == highlightKey and not(get_game_mode bwand (INTFACELOOT bwor BARTER)) then begin
|
||||
if pressed then begin
|
||||
isHighlight := true;
|
||||
if motionScanner then begin
|
||||
scanner := obj_carrying_pid_obj(dude_obj, PID_MOTION_SENSOR);
|
||||
if scanner then begin
|
||||
if motionScanner >= 2 then begin
|
||||
charges := get_weapon_ammo_count(scanner);
|
||||
if charges > 0 then begin
|
||||
set_weapon_ammo_count(scanner, charges - 1);
|
||||
intface_redraw;
|
||||
call ToggleHighlight(true);
|
||||
end else begin
|
||||
display_msg(highlightFailMsg2);
|
||||
end
|
||||
end else begin
|
||||
call ToggleHighlight(true);
|
||||
end
|
||||
end else begin
|
||||
display_msg(highlightFailMsg1);
|
||||
end
|
||||
end else begin
|
||||
call ToggleHighlight(true);
|
||||
end
|
||||
end else begin
|
||||
isHighlight := false;
|
||||
call ToggleHighlight(false);
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
procedure start begin
|
||||
if game_loaded and (sfall_ver_major < 4) then begin
|
||||
call InitConfigs;
|
||||
|
||||
highlightKey := GetConfig(configSection, "Key", 0);
|
||||
alsoContainer := GetConfig(configSection, "Containers", 0);
|
||||
alsoCorpse := GetConfig(configSection, "Corpses", 0);
|
||||
checkLOS := GetConfig(configSection, "CheckLOS", 0);
|
||||
outlineColor := GetConfig(configSection, "OutlineColor", 16);
|
||||
if (outlineColor < 1) then outlineColor := 64;
|
||||
motionScanner := GetConfig(configSection, "MotionScanner", 0);
|
||||
|
||||
highlightFailMsg1 := Translate("HighlightFail1", "You aren't carrying a motion sensor.");
|
||||
highlightFailMsg2 := Translate("HighlightFail2", "Your motion sensor is out of charge.");
|
||||
|
||||
register_hook_proc(HOOK_KEYPRESS, KeyPressHandler);
|
||||
end
|
||||
end
|
||||
@@ -0,0 +1,57 @@
|
||||
|
||||
#include "..\scripting\headers\sfall.h"
|
||||
#include "..\scripting\headers\define_lite.h"
|
||||
#include "..\scripting\headers\define_extra.h"
|
||||
|
||||
#include "..\scripting\headers\lib.arrays.h"
|
||||
#include "..\scripting\headers\lib.strings.h"
|
||||
// #include "..\scripting\headers\lib.inven.h"
|
||||
|
||||
variable ini := "sfall-mods.ini";
|
||||
variable translationIni;
|
||||
|
||||
// Gets the integer value from ini
|
||||
procedure GetConfig(variable section, variable key, variable def) begin
|
||||
variable val := get_ini_setting(ini + "|" + section + "|" + key);
|
||||
if val == -1 then val := def;
|
||||
return val;
|
||||
end
|
||||
|
||||
// Gets the string value from ini
|
||||
procedure GetConfigStr(variable section, variable key, variable def) begin
|
||||
variable val := get_ini_string(ini + "|" + section + "|" + key);
|
||||
if val == -1 or val == "" then val := def;
|
||||
return val;
|
||||
end
|
||||
|
||||
// Gets the value from ini as a temp array of strings
|
||||
procedure GetConfigList(variable section, variable key) begin
|
||||
variable val := get_ini_string(ini + "|" + section + "|" + key);
|
||||
if val == -1 or val == "" then return [];
|
||||
|
||||
return string_split(val, ",");
|
||||
end
|
||||
|
||||
// Gets the value from ini as a temp array of ints
|
||||
procedure GetConfigListInt(variable section, variable key) begin
|
||||
variable arr, i, item;
|
||||
|
||||
arr := GetConfigList(section, key);
|
||||
for (i := 0; i < len_array(arr); i++) begin
|
||||
arr[i] := atoi(arr[i]);
|
||||
end
|
||||
return arr;
|
||||
end
|
||||
|
||||
// Translates given string using Translations.ini
|
||||
procedure Translate(variable id, variable def) begin
|
||||
variable str := get_ini_string(translationIni + "|Sfall|" + id);
|
||||
if not str or (strlen(str) == 0) then begin
|
||||
str := def;
|
||||
end
|
||||
return str;
|
||||
end
|
||||
|
||||
procedure InitConfigs begin
|
||||
translationIni := GetConfigStr("Main", "TranslationsINI", "./Translations.ini");
|
||||
end
|
||||
@@ -0,0 +1,21 @@
|
||||
Item Highlight mod (Lite version) for sfall 3.8.x
|
||||
-------------------------------------------------
|
||||
|
||||
A cut-down version of the mod included in sfall 4.x, offers a bit more features than the built-in function.
|
||||
Features:
|
||||
- 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)
|
||||
- motion scanner charges are decreased on each use (optional)
|
||||
|
||||
|
||||
Requires sfall 3.8.12 or higher.
|
||||
|
||||
To use, copy gl_highlighting_lite.int to your scripts folder, and copy sfall-mods.ini to the same directory as sfall.
|
||||
Also, you should disable the built-in function in ddraw.ini (ToggleItemHighlightsKey=0).
|
||||
|
||||
Note that due to the lack of newer game hooks in sfall 3.8.x, there are some minor visual glitches with the lite version:
|
||||
- items will be kept highlighted when entering combat while holding the highlight key.
|
||||
- when you pick up items while holding the highlight key, they will be kept highlighted if you drop them on the ground.
|
||||
Both glitches can bo solved by pressing and releasing the highlight key again.
|
||||
@@ -0,0 +1,30 @@
|
||||
[Highlighting]
|
||||
|
||||
; DX scancode of a key to press to highlight items on the ground
|
||||
; 42 - SHIFT key
|
||||
Key=42
|
||||
|
||||
; Set to 1 to also highlight containers
|
||||
Containers=1
|
||||
|
||||
; Set to 1 to also highlight lootable corpses
|
||||
Corpses=1
|
||||
|
||||
; Set to 1 to only highlight objects in the player's line-of-sight
|
||||
CheckLOS=0
|
||||
|
||||
; Set the color of outlines, available colors:
|
||||
; 1 - glowing red
|
||||
; 2 - red
|
||||
; 4 - grey
|
||||
; 8 - glowing green
|
||||
; 16 - bright yellow
|
||||
; 32 - dark yellow
|
||||
; 64 - purple
|
||||
OutlineColor=16
|
||||
|
||||
; Motion Scanner mode:
|
||||
; 0 - ignored
|
||||
; 1 - requires Motion Scanner present in player inventory to activate highlighting
|
||||
; 2 - requires Motion Scanner and also requires 1 charge on every use (depleted scanner will not work anymore)
|
||||
MotionScanner=0
|
||||
Reference in New Issue
Block a user