Fix things
This commit is contained in:
parent
3b59606151
commit
c93350a44c
|
@ -0,0 +1 @@
|
|||
bool buckets_enabled();
|
|
@ -133,13 +133,14 @@ static int BucketItem_getUseDuration(__attribute__((unused)) FoodItem *item, Ite
|
|||
return 0;
|
||||
}
|
||||
|
||||
static void BucketItem_useTimeDepleted(FoodItem *item, uchar *param_1, ItemInstance *item_instance, Level *level, Player *player) {
|
||||
static ItemInstance BucketItem_useTimeDepleted(FoodItem *item, ItemInstance *item_instance, Level *level, Player *player) {
|
||||
if (item_instance->auxiliary == 1) {
|
||||
(*FoodItem_useTimeDepleted_vtable_addr)(item, param_1, item_instance, level, player);
|
||||
*item_instance = FoodItem_useTimeDepleted_non_virtual(item, item_instance, level, player);
|
||||
// Set it to a empty bucket
|
||||
item_instance->auxiliary = 0;
|
||||
item_instance->count = 1;
|
||||
}
|
||||
return *item_instance;
|
||||
}
|
||||
|
||||
static int BucketItem_getUseAnimation(__attribute__((unused)) FoodItem *item) {
|
||||
|
@ -349,9 +350,14 @@ static void Language_injection(__attribute__((unused)) void *null) {
|
|||
}
|
||||
|
||||
// Init
|
||||
bool buckets_enabled() {
|
||||
static bool ret = feature_has("Add Buckets", server_enabled);
|
||||
return ret;
|
||||
}
|
||||
|
||||
void init_bucket() {
|
||||
// Add Buckets
|
||||
if (feature_has("Add Buckets", server_enabled)) {
|
||||
if (buckets_enabled()) {
|
||||
// Add Items
|
||||
misc_run_on_items_setup(Item_initItems_injection);
|
||||
// Change Max Stack Size Based On Auxiliary
|
||||
|
|
|
@ -4,8 +4,9 @@
|
|||
#include <mods/feature/feature.h>
|
||||
#include <mods/init/init.h>
|
||||
#include <mods/misc/misc.h>
|
||||
#include <mods/bucket/bucket.h>
|
||||
|
||||
Tile *cake = NULL;
|
||||
static Tile *cake = NULL;
|
||||
|
||||
#define CAKE_LEN 0.0625F
|
||||
|
||||
|
@ -166,7 +167,7 @@ static void Inventory_setupDefault_FillingContainer_addItem_call_injection(Filli
|
|||
cake_instance->count = 255;
|
||||
cake_instance->auxiliary = 0;
|
||||
cake_instance->id = 92;
|
||||
(*FillingContainer_addItem)(filling_container, cake_instance);
|
||||
FillingContainer_addItem(filling_container, cake_instance);
|
||||
}
|
||||
|
||||
// Recipe (only when buckets are enabled)
|
||||
|
@ -234,7 +235,7 @@ void init_cake() {
|
|||
if (feature_has("Add Cake", server_enabled)) {
|
||||
misc_run_on_tiles_setup(Tile_initTiles_injection);
|
||||
misc_run_on_creative_inventory_setup(Inventory_setupDefault_FillingContainer_addItem_call_injection);
|
||||
if (feature_has("Add Buckets", server_enabled)) {
|
||||
if (buckets_enabled()) {
|
||||
// The recipe needs milk buckets
|
||||
misc_run_on_recipes_setup(Recipes_injection);
|
||||
}
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
extends Screen;
|
||||
|
||||
method void craftSelectedItem() = 0x2e0e4;
|
||||
method void recheckRecipes() = 0x2dc98;
|
||||
|
||||
property Minecraft *minecraft = 0x14;
|
||||
property CItem *item = 0x74;
|
||||
|
|
|
@ -11,8 +11,7 @@ virtual-method void setIcon(int texture_x, int texture_y) = 0x18;
|
|||
virtual-method int useOn(ItemInstance *item_instance, Player *player, Level *level, int x, int y, int z, int hit_side, float hit_x, float hit_y, float hit_z) = 0x20;
|
||||
// Normally returns 0
|
||||
virtual-method int getUseDuration(ItemInstance *item_instance) = 0x24;
|
||||
// I don't know much about param_1, it might be some partially initialized ItemInstance*
|
||||
virtual-method void useTimeDepleted(uchar *param_1, ItemInstance *item_instance, Level *level, Player *player) = 0x28;
|
||||
virtual-method ItemInstance useTimeDepleted(ItemInstance *item_instance, Level *level, Player *player) = 0x28;
|
||||
virtual-method int getDestorySpeed(ItemInstance *item_instance, Tile *tile) = 0x2c;
|
||||
virtual-method ItemInstance *use(ItemInstance *item_instance, Level *level, Player *player) = 0x30;
|
||||
virtual-method bool mineBlock(ItemInstance *instance, int tile_id, int x, int y, int z) = 0x48;
|
||||
|
|
Loading…
Reference in New Issue