This repository is a fork of WorldGuard specifically modified to work with Folia. The main difference lies in the use of a patch file to apply the necessary changes. This guide will explain how to set up, use, and maintain this fork.
Before starting, make sure you have the following tools installed on your system:
- Git
- Bash (if you are on Windows, you can use Git Bash or WSL)
- Java Development Kit 21 (JDK) to compile the plugin
You can download the plugins here: https://github.com/Euphillya/WorldGuard-Folia/actions
Clone this repository to your local machine:
git clone https://github.com/Euphillya/WorldGuard-Folia.git
cd WorldGuard-Folia
A Bash script is provided to manage recloning, creating, and applying patches. Here's how to use it:
To update the source code by deleting and recloning the original WorldGuard repository:
./script.sh updateUpstream
This command will:
- Remove the local directories
WorldGuard
andWorldGuard-Patchs
. - Re-clone the
WorldGuard
repository into theWorldGuard
directory. - Copy the contents of
WorldGuard
toWorldGuard-Patchs
.
To create patches from changes made in the WorldGuard-Patchs
directory:
./script.sh createPatches
Patches will be generated in the patches/plugins
directory.
To apply existing patches to the WorldGuard-Patchs
directory:
./script.sh applyPatches
This command will apply each patch found in patches/plugins
and create a commit for each applied patch.
WorldGuard/
: Cloned directory from the original WorldGuardX repository.WorldGuard-Patchs/
: Working directory where modifications are made and patches are applied.patches/plugins/
: Directory containing the generated patch files.
If you wish to contribute to this project, please follow these steps:
- Fork this repository.
- Create a branch for your feature (
git checkout -b my-feature
). - Make your changes in the
WorldGuard-Patchs
directory. - Create patches with
./script.sh createPatches
. - Commit and push your patches to your fork.
- Create a pull request on this repository.
For any questions or issues, feel free to open an issue.
This project is licensed under the MIT License. For more information, please see the LICENSE file.