Upgraded and improved, Nerdy's Curios API plugin introduces a new mod element to MCreator, called the "Curios Bauble". This element allows you to create curios items that can be equipped in curios slots, and also gives you the option to render a custom 3D model on the player while worn. More functionality is provided by global triggers, procedure triggers of the element, and new procedure blocks.
Example
You can also create your own custom slots and use them instead
This is a Java Plugin and therefore requires the Java Plugins feature to be enabled
Changelog
Version 5.2 changelog
-Fixed curios baubles not being equippable in their slots
Version 5.1 changelog
-Ported to MCreator 2024.2 and neoforge 1.20.6
Version 5.0 changelog:
-Support for MCreator 2024.1
-Support for neoforge 1.20.4
Version 4.9 changelog:
-Added the curios slot mod element, so you can now use custom slots for your baubles
Version 4.8.1 changelog:
-Fixed curios element and global triggers causing build errors in 1.20.1
-Made it impossible to save curios mod elements without enabling the API first
Version 4.8 changelog:
-Support for MCreator 2023.4
-Bauble items can now have item states
Version 4.7 changelog:
-Ported to 1.20.1
Version 4.6 changelog:
-Support for 1.19.4 and 2023.2 EAP
-Dropped support for 2023.1 due to incompatibilities in the code
Version 4.5.1 changelog:
-Removed the version MCreator limit so I dont need to constantly update the plugin
Version 4.5 changelog:
-Support for the 2023.1 release
Version 4.4 changelog:
-Dropped support for 2023.1 snapshot 2
-Support for 2023.1 snapshot 3
Version 4.3 changelog:
-Dropped support for 2022.4 snapshot 1 due to incompatibilities in the code
-Updated to the 2023.1 snapshot 2
-Fixed the plugin attempting to load in unsupported versions
-Fixed the curios equip global triggers causing build errors with the world dependency
Version 4.2 changelog:
-Made model rotation while sneaking optional in bauble properties
-Made model pose translation while sneaking optional in bauble properties
Version 4.1 changelog:
-Fixed bauble models not rotating when the player sneaked.
Version 4 changelog:
-Dropped support for 1.16.5
-Dropped support for 2022.1, 2022.2
and 2022.3 due to incompatibility in the code
-Converted to a java plugin to add a new element
-Added the curios bauble element
-Curios slots are now assigned automatically
-Added new triggers and properties for curios baubles
-Added the option to render java models while the bauble is equipped
-Updated the curios api version of 1.18.2
-Removed the duplicate bauble is equipped/unequipped global triggers
-Added 3 new procedures under the Curios API category
Version 3 changelog:
-Added support for forge 1.19.2
Version 2 changelog:
-Added curios return triggers to 1.16.5
Version 1 changelog:
-Removed support for Curio unequipped trigger for generator 1.18.2
-Added new triggers exclusive to 1.18.2 generator:
On curios slot change, return equipped item
On curios slot change, return unequipped item
-Fixed world triggers causing build error
Old tutorial for version 3: https://mcreator.net/forum/91252/tutorial-creating-functional-curios-ba…
Comments
A player variable is bound to the player that sets it, so in theory, this should work on a server as well, but I am yet to test that out. All players will have their own gui and sets of variables.
To grant buffs to a player, you'll need to create a third procedure that checks for the variable, and then applies the buff you want. In mine, I am checking to see which ring I have equipped, and then applying a different potion effect depending on the ring. You can do this a few different ways, but the procedure will need to be set to run with a trigger from within that procedure (pick one from the menu in the green trigger block that applies to your situation) For you, you might try to find one when a player steps on a block, check to see if it is powered snow, and then check to see if the player is wearing the boots. Then apply whatever buff you want to apply with additional blocks of code.
I see. So I don't think this can help me, because "being able to walk on powder snow" is not a buff a procedure can grant, I have tried millions of ways. Literally the only way is to have the rights boots in the boots armour slot, but I want to give them the ability without overriding their actual boots slot.
I cannot say that I have tried this... but I'd imagine it is still possible with a custom procedure. Try checking to see what block the player is standing on, and if it is powered snow AND the player has the bots equipped, then move the player to the correct position each tick.... something like that.
Part One:
Well, I have no idea why that is, I have my account to show requests from anyone. I am pretty new to how discord works so I'll just try to explain below:
First: I am running Neoforge, 1.21.1 and Mcreator 2024.3
1. You need to create your GUI with input slot(s). Start with just one slot to make troubleshooting easier.
2. Make a "Player Persistent" variable - with the "itemstack" type. Make it start as empty. I called mine Ring_Slot_0 since I am making a jewelry making mod and that is what I'll refer to from now on.
3. Make the GUI keybind. I am using "U" but you can use whatever you want
4. Create the keybind procedure and set it to the GUI "On Key Pressed" trigger.
This procedure will do the following:
If the GUI is currently open = false{
Open the GUI for target entity,
Set 1 (get item stack from player variable Ring_slot_0 for target entity, in slot 0 of the event entity.)
}
Else{ } //nothing goes here
Part One:
Well, I have no idea why that is, I have my account to show requests from anyone. I am pretty new to how discord works so I'll just try to explain below:
First: I am running Neoforge, 1.21.1 and Mcreator 2024.3
1. You need to create your GUI with input slot(s). Start with just one slot to make troubleshooting easier.
2. Make a "Player Persistent" variable - with the "itemstack" type. Make it start as empty. I called mine Ring_Slot_0 since I am making a jewelry making mod and that is what I'll refer to from now on.
3. Make the GUI keybind. I am using "U" but you can use whatever you want
4. Create the keybind procedure and set it to the GUI "On Key Pressed" trigger.
This procedure will do the following:
If the GUI is currently open = false{
Open the GUI for target entity,
Set 1 (get item stack from player variable Ring_slot_0 for target entity, in slot 0 of the event entity.)
}
Else{ } //nothing goes here
Part 2
Repeat that third line for more slots with the respective slots and variables for additional slots.
In simpler terms: We check to make sure the GUI is open, and then if it is we are setting the saved variable item into the slot. (We will set that variable in the next step)
5. Create a procedure that will run "While the GUI is open tick". That trigger can be found by clicking the little "expand" text near the bottom left of the GUI screen page"
This procedure will do the following:
If the GUI is currently open = true AND Get the number of items in GUI slot 0 =0 {
SET itemstack global (ring_slot_0) to "empty itemstack" for event/target entity}
else{SET itemstack global (ring_slot_0) to "get item from slot (0) of the currently open GUI etc..." for event/target entity}
Part 3
Or in simpler terms: We are checking to see if the slot has an item. If not, we set the variable to nothing. If it does have an item, we are setting the variable to whatever is in that item slot.
And then if you have more slots, copy this If/else statement and copy it to the bottom of the first statement, and change the slot numbers and variable names.
That pretty much sums it up. Pretty simple actually. I was running into issues when I tried to use the slot triggers. If your item grants a buff, you can do this with a third procedure that gets the variable, and then depending on what it is, does whatever you want it to do... Hope that helps.
Thank you for helping me! I don't know how to look for people on Discord, it only allows me to look for servers. I'd love the pictures. I want to make an armour slot which is not accessible by the player (so no key bind), I will use procedures to place items in that slot or take them away.