bedroom is now archived, it'll never be finished and i will never work on it again.
bedroom is a latest version fabric client api for minecraft. this was made to serve as the base for beach house, i'm just making it public so others can use it and learn from it.
bedroom is intended for use as a latest version fabric base for minecraft anarchy clients, it can serve as a good starting tool for anyone to make the client they want.
this is not a cheat. it's intent is for minecraft anarchy clients, and it's use for otherwise is redundant. either way bedroom itself is not a cheat, nor are it's intended targets. also, due to previous events, i would like to remind u that fabric is "free to use for everyone. No exceptions." thank you :)
plans for bedroom 5
- no static
plans for bedroom 4
✔ make it a useable api via gradle
- JSON config
- font renderer
bedroom 3
✔ command javadoc
✔ main class tweaked a bit
✔ fix module class... automatic event subscribing and event subscribing on launch fix
✔ command sysetm overhaul
✔ onUpdate method added
✔ refactorization
bedroom 2
✔ improved command system
✔ color system
✔ improved main class
✔ improved code
✔ example settings
✔ documentation
bedroom 1
✔ events
✔ configs
✔ module system
✔ setting system
✔ command system
✔ ui stuff
this readme section is dedicated to use of the bedroom 4 api, if you are using bedroom 3, it's quite a bit different :P, sorry but stuff will be a little messy here until i get bedroom 4 fully working.
for eclipse
- drag .zip release to a new folder
- open folder in cmd
- type gradlew eclipse
- type gradlew genSources
- boom... use
gradle
add bedrom under your dependencies in your gradle file using implementation "com.github.beach-house-development:bedroom:4-pre1"
.
main class
you have to create your own main class, within it make sure to implement ModInitializer
from fabric.
@Override
public void onInitialize() {
// all you have to do is initialize bedroom along with your variables.
Bedroom.init(modid, modname, modversion);
}
command system
you can use the current commands as examples.
- the prefix to start out is , (comma).
- to add a command, you have to use the
onCommand(String[] args, String command) {
method, also make sure to use the@Override
annotation with this. - you can use the
args
to figure out if what is typed is what you want typed, for example, you can check if the args length is correct withif(args.length > 0) {
(or whatever length you want). or you can check if the args is equal to a word that you want typed, likeif(moduleIn.equalsIgnoreCase(args[0])) {
(this is in the toggle command), this checks if what is typed in the first argument is equal to a module name. - the CommandManager includes two methods to help send messages to the chat that include
addChatMessage(String message) {
, you can use this to send any message you would like, you can also use TextFormatting to change color mid text. andcorrectUsageMsg(String name, String syntax) {
simply sends a message that shows the usage of a command, u can use this if the args is less the or equal to 0
module system w/ settings
to create a module class, just extend the class from Module.
theres a few methods you need here, onEnable()
will perform your code when the module is enabled, and onDisable()
will perform your code when the module is disabled.
onUpdate()
will preform your code every tick, for example, if you set sprinting true in onUpdate
, sprinting will costantly be true. make sure to use @Override
above these methods.
events and mixins
most events and mixins tie into eachother here, so one good example you can use is the EventDrawOverlay events, which is posted in the MixinInGameHud mixin and used in the UI class, this is pretty much the simplest one i use.
bedroom uses Alpine 1.9 for it's event system, you can use their own repo for further help on this, they explain it pretty well.
please respect the license in this repo!! and thank you to anyone who uses this :)
also please check the projects that make this possible...
Fabric
Alpine 1.9