Add Minecraft/Modded/Offline-Forceload-Toggle.sh
Makes it easy to change "Force Load Chunks When Offline" on and off instead of going through each file individually. Works with the openpartiesandclaims mod.
This commit is contained in:
		
							parent
							
								
									f4e10ca404
								
							
						
					
					
						commit
						29e1755efa
					
				
					 1 changed files with 46 additions and 0 deletions
				
			
		
							
								
								
									
										46
									
								
								Minecraft/Modded/Offline-Forceload-Toggle.sh
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										46
									
								
								Minecraft/Modded/Offline-Forceload-Toggle.sh
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,46 @@
 | 
				
			||||||
 | 
					#!/bin/bash
 | 
				
			||||||
 | 
					#Toggle openpartiesandclaims to keep force loaded chunks active even when the player is offline
 | 
				
			||||||
 | 
					#designed for bettermc and clay's custom pack.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# The directory where you want to search for .toml files
 | 
				
			||||||
 | 
					search_dir="/home/moddedmc/BetterMC/world/serverconfig/"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Check if the script was provided with an argument
 | 
				
			||||||
 | 
					if [ $# -ne 1 ]; then
 | 
				
			||||||
 | 
					    echo "Usage: $0 on/off"
 | 
				
			||||||
 | 
					    echo
 | 
				
			||||||
 | 
					    echo "Toggle openpartiesandclaims to keep force loaded chunks active even when the player is offline"
 | 
				
			||||||
 | 
					    exit 1
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Check if the first argument is "off"
 | 
				
			||||||
 | 
					if [ "$1" = "off" ]; then
 | 
				
			||||||
 | 
					    action="false"
 | 
				
			||||||
 | 
					    # Use 'find' to locate all .toml files and then use 'grep' to find the line containing 'offlineForceload = true'
 | 
				
			||||||
 | 
					    # Finally, use 'sed' to toggle the value based on the action
 | 
				
			||||||
 | 
					    find "$search_dir" -type f -name "*.toml" -exec grep -l 'offlineForceload = true' {} \; | while read -r toml_file
 | 
				
			||||||
 | 
					    do
 | 
				
			||||||
 | 
						# Use 'sed' to toggle the value in the file
 | 
				
			||||||
 | 
						sed -i 's/offlineForceload = true/offlineForceload = '"$action"'/' "$toml_file"
 | 
				
			||||||
 | 
						echo "Modified: $toml_file"
 | 
				
			||||||
 | 
					    done
 | 
				
			||||||
 | 
					    message="offlineForceload has been set to FALSE."
 | 
				
			||||||
 | 
					elif [ "$1" = "on" ]; then
 | 
				
			||||||
 | 
					    action="true"
 | 
				
			||||||
 | 
					    # Use 'find' to locate all .toml files and then use 'grep' to find the line containing 'offlineForceload = false'
 | 
				
			||||||
 | 
					    # Finally, use 'sed' to toggle the value based on the action
 | 
				
			||||||
 | 
					    find "$search_dir" -type f -name "*.toml" -exec grep -l 'offlineForceload = false' {} \; | while read -r toml_file
 | 
				
			||||||
 | 
					    do
 | 
				
			||||||
 | 
						# Use 'sed' to toggle the value in the file
 | 
				
			||||||
 | 
						sed -i 's/offlineForceload = false/offlineForceload = '"$action"'/' "$toml_file"
 | 
				
			||||||
 | 
						echo "Modified: $toml_file"
 | 
				
			||||||
 | 
					    done
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					echo "$message"
 | 
				
			||||||
 | 
					    message="offlineForceload has been set to TRUE."
 | 
				
			||||||
 | 
					else
 | 
				
			||||||
 | 
					    echo "Invalid argument. Use 'on' or 'off'."
 | 
				
			||||||
 | 
					    exit 1
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					exit
 | 
				
			||||||
		Loading…
	
	Add table
		
		Reference in a new issue