Files
MinecraftConsoles/Minecraft.World/MilkBucketItem.cpp
ModMaker101 a9be52c41a Project modernization (#630)
* Fixed boats falling and a TP glitch #266

* Replaced every C-style cast with C++ ones

* Replaced every C-style cast with C++ ones

* Fixed boats falling and a TP glitch #266

* Updated NULL to nullptr and fixing some type issues

* Modernized and fixed a few bugs

- Replaced most instances of `NULL` with `nullptr`.
- Replaced most `shared_ptr(new ...)` with `make_shared`.
- Removed the `nullptr` macro as it was interfering with the actual nullptr keyword in some instances.

* Fixing more conflicts

* Replace int loops with size_t and start work on overrides
2026-03-08 09:56:03 +07:00

41 lines
996 B
C++

#include "stdafx.h"
#include "net.minecraft.world.level.h"
#include "net.minecraft.world.entity.player.h"
#include "MilkBucketItem.h"
MilkBucketItem::MilkBucketItem(int id) : Item( id )
{
setMaxStackSize(1);
}
shared_ptr<ItemInstance> MilkBucketItem::useTimeDepleted(shared_ptr<ItemInstance> instance, Level *level, shared_ptr<Player> player)
{
if (!player->abilities.instabuild) instance->count--;
if (!level->isClientSide)
{
player->removeAllEffects();
}
if (instance->count <= 0)
{
return std::make_shared<ItemInstance>(Item::bucket_empty);
}
return instance;
}
int MilkBucketItem::getUseDuration(shared_ptr<ItemInstance> itemInstance)
{
return DRINK_DURATION;
}
UseAnim MilkBucketItem::getUseAnimation(shared_ptr<ItemInstance> itemInstance)
{
return UseAnim_drink;
}
shared_ptr<ItemInstance> MilkBucketItem::use(shared_ptr<ItemInstance> instance, Level *level, shared_ptr<Player> player)
{
player->startUsingItem(instance, getUseDuration(instance));
return instance;
}