High performance Spigot fork that aims to fix gameplay and mechanics inconsistencies
Go to file
Aikar 1953f52da1 SPIGOT-2439: Consistently fire Chunk(Load|Unload)Event
Clean up implementation and firing of both of these events by routing
both unload and load behaviors to consistent method calls.

This fixes issues where a few places would not call Load or Unload events
when it should have.

Additionally, reduces diff by moving the neighbor marking code into these
consistent points.

Additional benefits of the change include improving the neighbor marking
methods to use getChunkIfLoaded instead of getLoadedChunkAt in some places,
as the latter will cause chunks to be marked active and not unload.

Finally, this also updates CraftWorld.loadChunk to use the new methods, as the
previous logic did not properly handle the new unload queue.
2016-06-23 10:34:08 +10:00
nms-patches SPIGOT-2439: Consistently fire Chunk(Load|Unload)Event 2016-06-23 10:34:08 +10:00
src SPIGOT-2439: Consistently fire Chunk(Load|Unload)Event 2016-06-23 10:34:08 +10:00
.gitignore Update to Minecraft 1.8 2014-11-28 17:16:30 +11:00
applyPatches.sh Update to Minecraft 1.8.6 2015-05-25 22:04:32 +10:00
deprecation-mappings.csrg Update to Minecraft 1.9 2016-03-01 09:32:45 +11:00
LGPL.txt We're LGPL. 2011-01-02 10:58:11 +01:00
LICENCE.txt We're LGPL. 2011-01-02 10:58:11 +01:00
makePatches.sh Cut fluff from patch headers. 2015-05-25 20:37:24 +10:00
pom.xml Update to Minecraft 1.10 2016-06-09 11:43:49 +10:00
README.md Fix typo in README.md 2016-03-05 22:35:39 +11:00

CraftBukkit

An implementation of the Bukkit plugin API for Minecraft servers, currently maintained by SpigotMC.

Bug Reporting

The development team is very open to both bug and feature requests / suggestions. You can submit these on the JIRA Issue Tracker.

Compilation

CraftBukkit is a Java program which uses Maven 3 for compilation. To compile fresh from Git, simply perform the following steps:

  • Install Git using your preferred installation methods.
  • Download and run BuildTools

Some IDEs such as NetBeans can perform these steps for you. Any Maven capable Java IDE can be used to develop with CraftBukkit, however the current team's personal preference is to use NetBeans.

Contributing

Contributions of all sorts are welcome. To manage community contributions, we use the pull request functionality of Stash. In to gain access to Stash and create a pull request, you will first need to perform the following steps:

  • Create an account on JIRA.
  • Fill in the SpigotMC CLA and wait up to 24 hours for your Stash account to be activated. Please ensure that your username and email addresses match.
  • Log into Stash using your JIRA credentials.

Once you have performed these steps you can create a fork, push your code changes, and then submit it for review.

If you submit a PR involving both Bukkit and CraftBukkit, it's appreciated if each PR links the other. Additionally, every reference to an obfuscated field/method in NMS should be marked with // PAIL: Rename and optionally a suggested name, to make mapping creation easier. E.g.:

    entity.k.get(i).f(); // PAIL Rename pathfinders, navigateToHome 

Also, make sure to include // Craftbukkit comments to indicate modified NMS sources.