Nerdy's Curios API Plugin

Supported MCreator versions
2023.1
2023.2
2023.3
2023.4
2024.1
2024.2
Tags / plugin type
API support
Global triggers
Java plugin
Procedures
Templates
curiosapi
Downloads:
20213
Upvotes: 174
About the plugin

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.

 

element

 

Example

expleaa

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…

Plugin forum topic
License
MIT License

Plugin downloads
Nerdy's Curios API Plugin v3 (Outdated) - Curious_Plugin_V3.zip Uploaded on: 10/05/2022 - 12:58   File size: 11.37 KB
Nerdy's Curios API Plugin v4.5.1 (MCreator 2023.1 ONLY) - Nerdys_CuriosAPI_Plugin_0.zip Uploaded on: 03/08/2023 - 12:14   File size: 64.74 KB
Nerdy's Curios API Plugin v4.6 (MCreator 2023.2 ONLY) - Nerdys_CuriosAPI_Plugin.zip Uploaded on: 04/28/2023 - 23:38   File size: 81.33 KB
Nerdy's Curios API Plugin v4.7 (MCreator 2023.3 ONLY) - Nerdys_CuriosAPI_Plugin.zip Uploaded on: 12/01/2023 - 12:36   File size: 97.83 KB
Nerdy's Curios API Plugin v4.9 (MCreator 2023.4 ONLY) - Nerdys_CuriosAPI_Plugin_1.zip Uploaded on: 01/26/2024 - 20:10   File size: 119.9 KB
Nerdy's Curios API Plugin v5.0 (MCreator 2024.1 ONLY) - Nerdys_CuriosAPI_Plugin.zip Uploaded on: 04/13/2024 - 05:23   File size: 139.56 KB
Nerdy's Curios API Plugin v5.2 (MCreator 2024.2 ONLY) - Nerdys_CuriosAPI_Plugin_0.zip Uploaded on: 08/21/2024 - 03:22   File size: 83.84 KB

Comments

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.