mirror of
https://github.com/ChrisTitusTech/linutil.git
synced 2024-11-22 13:22:28 +00:00
Diablo 2 loot filters
This commit is contained in:
parent
e59b8574aa
commit
daf7b8d4ad
108
src/commands/gaming/diablo-ii/d2r-loot-filters.sh
Normal file → Executable file
108
src/commands/gaming/diablo-ii/d2r-loot-filters.sh
Normal file → Executable file
|
@ -1 +1,109 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Search for possible Diablo II Resurrected folder locations
|
||||||
|
echo "Searching for Diablo II Resurrected folders..."
|
||||||
|
possible_paths=$(find $HOME -type d -path "*/drive_c/Program Files (x86)/Diablo II Resurrected" 2>/dev/null)
|
||||||
|
|
||||||
|
if [ -z "$possible_paths" ]; then
|
||||||
|
echo "Error: No Diablo II Resurrected folders found."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Display possible paths and allow selection
|
||||||
|
echo "Possible Diablo II Resurrected folder locations:"
|
||||||
|
mapfile -t paths_array <<< "$possible_paths"
|
||||||
|
selected=0
|
||||||
|
total=${#paths_array[@]}
|
||||||
|
|
||||||
|
print_menu() {
|
||||||
|
clear
|
||||||
|
local max_display=$((total < 10 ? total : 10))
|
||||||
|
local start=$((selected - max_display/2))
|
||||||
|
if ((start < 0)); then start=0; fi
|
||||||
|
if ((start + max_display > total)); then start=$((total - max_display)); fi
|
||||||
|
if ((start < 0)); then start=0; fi
|
||||||
|
|
||||||
|
echo "Please select the Diablo II: Resurrected installation path:"
|
||||||
|
for i in $(seq 0 $((max_display - 1))); do
|
||||||
|
if ((i + start >= total)); then break; fi
|
||||||
|
if [ $((i + start)) -eq $selected ]; then
|
||||||
|
echo "> ${paths_array[$((i + start))]}"
|
||||||
|
else
|
||||||
|
echo " ${paths_array[$((i + start))]}"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
|
select_path() {
|
||||||
|
local last_selected=-1
|
||||||
|
|
||||||
|
while true; do
|
||||||
|
if [ $last_selected -ne $selected ]; then
|
||||||
|
print_menu
|
||||||
|
last_selected=$selected
|
||||||
|
fi
|
||||||
|
|
||||||
|
read -rsn1 key
|
||||||
|
case "$key" in
|
||||||
|
$'\x1B') # ESC key
|
||||||
|
read -rsn2 key
|
||||||
|
case "$key" in
|
||||||
|
'[A' | 'k')
|
||||||
|
if ((selected > 0)); then
|
||||||
|
((selected--))
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
'[B' | 'j')
|
||||||
|
if ((selected < total - 1)); then
|
||||||
|
((selected++))
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
;;
|
||||||
|
'') # Enter key
|
||||||
|
d2r_path="${paths_array[$selected]}"
|
||||||
|
break
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
|
||||||
|
clear # Clear the screen after selection
|
||||||
|
}
|
||||||
|
|
||||||
|
# Use the select_path function
|
||||||
|
select_path
|
||||||
|
|
||||||
|
# Validate the path
|
||||||
|
if [ ! -d "$d2r_path" ]; then
|
||||||
|
echo "Error: The specified path does not exist."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Create the mods folder if it doesn't exist
|
||||||
|
mods_path="$d2r_path/mods"
|
||||||
|
mkdir -p "$mods_path"
|
||||||
|
|
||||||
|
# Download the latest release
|
||||||
|
echo "Downloading the latest loot filter..."
|
||||||
|
wget -q --show-progress https://github.com/ChrisTitusTech/d2r-loot-filter/releases/latest/download/lootfilter.zip -O /tmp/lootfilter.zip
|
||||||
|
|
||||||
|
# Extract the contents to the mods folder
|
||||||
|
echo "Extracting loot filter to $mods_path..."
|
||||||
|
unzip -q -o /tmp/lootfilter.zip -d "$mods_path"
|
||||||
|
|
||||||
|
# Clean up
|
||||||
|
rm /tmp/lootfilter.zip
|
||||||
|
|
||||||
|
echo "Loot filter installed successfully in $mods_path"
|
||||||
|
|
||||||
|
# Add instructions for setting launch options
|
||||||
|
echo
|
||||||
|
echo "To complete the setup, please follow these steps to add launch options in Battle.net:"
|
||||||
|
echo "1. Open the Battle.net launcher"
|
||||||
|
echo "2. Select Diablo II: Resurrected"
|
||||||
|
echo "3. Click the gear icon next to the 'Play' button"
|
||||||
|
echo "4. Select 'Game Settings'"
|
||||||
|
echo "5. In the 'Additional command line arguments' field, enter: -mod lootfilter -txt"
|
||||||
|
echo "6. Click 'Done' to save the changes"
|
||||||
|
echo
|
||||||
|
echo "After completing these steps, launch Diablo II: Resurrected through Battle.net to use the loot filter."
|
Binary file not shown.
|
@ -1,7 +1,7 @@
|
||||||
name = "Gaming"
|
name = "Gaming"
|
||||||
|
|
||||||
[[data]]
|
[[data]]
|
||||||
name = Diablo II Ressurected
|
name = "Diablo II Ressurected"
|
||||||
|
|
||||||
[[data.entries]]
|
[[data.entries]]
|
||||||
name = "Loot Filter Install"
|
name = "Loot Filter Install"
|
||||||
|
|
Loading…
Reference in New Issue
Block a user