glowstonemc / glowkit-legacy Goto Github PK
View Code? Open in Web Editor NEWThis project forked from bukkit/bukkit
A continuation of Bukkit for use with Glowstone
License: GNU General Public License v3.0
This project forked from bukkit/bukkit
A continuation of Bukkit for use with Glowstone
License: GNU General Public License v3.0
Since forking from the common ancestor https://github.com/Bukkit/Bukkit circa Minecraft 1.7, GlowstoneMC's updated Bukkit (Glowkit) and SpigotMC's updated Bukkit have diverged for new API added to support 1.8.x. There is some overlap, but SpigotMC has API that GlowstoneMC does not, and GlowstoneMC has also has API that SpigotMC does not have either. So I think it would be worth considering whether some of GlowstoneMC's API enhancements could be submitted to the SpigotMC team for inclusion in their updated version of Bukkit, towards the goal of a unified common API.
This would be advantageous for Glowstone since the new APIs would gain more widespread usage, and also for plugin developers since they would be able to target both Glowstone and Spigot with the same API methods, instead of having to code separately for Glowstone and Spigot, when using >1.7 features. A win-win scenario.
SpigotMC could also have feedback before merging which could be used to improve the specific APIs in both places, providing a unified interface to both implementations. Details on their submission process at: https://hub.spigotmc.org - the readme for their specific "Bukkit API" project https://hub.spigotmc.org/stash/projects/SPIGOT/repos/bukkit/browse says "The development team is very open to both bug and feature requests / suggestions". Worth a shot?
Here's a short list of non-conflicting (to my knowledge) APIs developed by GlowstoneMC, I believe would make sense to approach for submission to SpigotMC:
Tagging the original authors since it is probably best if they submit their code to SpigotMC if they choose to do so.
This is only an initial list, might have more to add as I progress through the changes.
Note this task issue is only concerning GlowstoneMC โ SpigotMC, the reverse direction SpigotMC โ GlowstoneMC has a separate issue: GlowstoneMC/Glowkit#18
Add in additional SportBukkit API support.
Since the actual Bukkit API isn't being worked on, thought I might as well see if we can get this into Glowkit at some point.
There is an event to tell when a plant block grows - EG, a pumpkin or a melon - But that event doesn't have a way to tell what plant the block grew from.
Even worse, if I'm looking for the plant that grew a pumpkin, I can't even iterate the blocks around it to find the attached plant.
Here is a simple idea.
Various events may be thrown when the server shuts down but in other cases too, like PlayerQuitEvent
. onDisable()
can also be called when shutting down or when simply disabled for other reason.
That's why I suggest that there is a way to see is the server is currently shutting down.
It would for example allow to execute code synchronously instead of launching asynchronous tasks.
Examples:
PlayerQuitEvent
usually done by an async task, but the server may shutdown at that point and kill this task.onDisable()
. Usually you don't need to do anything async here because the server shuts down, but it just slow downs the server if the plugin has actually been disabled dynamically. I'm not sure about that one, maybe the plugin is no longer able to do anything after it has been disabled.Spigot has added some useful events and misc changes that we may as well merge into Glowkit. These are:
A full changelist for SpigotAPI can be found here (first spigot change is "POM Changes":
https://github.com/SpigotMC/Spigot-API/commits/master
I know Glowstone is incomplete, but, it can be useful to at least add the notion of trading with Merchants into Glowkit.
I used to have a related PR for this: Bukkit#1077
As you can see when reading the PR, it went through many iterations and changes, and finally was very close to being accepted before the Bukkit shutdown.
Not sure if that's possible, but that's definitely missing. Should investigate.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.