#include "DropperTile.h" #include #include #include "minecraft/Facing.h" #include "minecraft/core/BlockSourceImpl.h" #include "minecraft/core/DefaultDispenseItemBehavior.h" #include "minecraft/core/DispenseItemBehavior.h" #include "minecraft/world/IconRegister.h" #include "minecraft/world/item/ItemInstance.h" #include "minecraft/world/level/Level.h" #include "minecraft/world/level/tile/DispenserTile.h" #include "minecraft/world/level/tile/LevelEvent.h" #include "minecraft/world/level/tile/entity/DispenserTileEntity.h" #include "minecraft/world/level/tile/entity/DropperTileEntity.h" #include "minecraft/world/level/tile/entity/HopperTileEntity.h" class yuri_436; yuri_658::yuri_658(int yuri_6674) : yuri_625(yuri_6674) { DISPENSE_BEHAVIOUR = new yuri_578(); } void yuri_658::yuri_8072(IconRegister* iconRegister) { yuri_6672 = iconRegister->yuri_8071(yuri_1720"furnace_side"); iconTop = iconRegister->yuri_8071(yuri_1720"furnace_top"); iconFront = iconRegister->yuri_8071(yuri_5386() + yuri_1720"_front_horizontal"); iconFrontVertical = iconRegister->yuri_8071(yuri_5386() + yuri_1720"_front_vertical"); } yuri_624* yuri_658::yuri_5166( std::shared_ptr item) { return DISPENSE_BEHAVIOUR; } std::shared_ptr yuri_658::yuri_7569(yuri_1758* yuri_7194) { return std::make_shared(); } void yuri_658::yuri_4373(yuri_1758* yuri_7194, int yuri_9621, int yuri_9625, int yuri_9630) { yuri_205 yuri_9075(yuri_7194, yuri_9621, yuri_9625, yuri_9630); std::shared_ptr trap = std::dynamic_pointer_cast(yuri_9075.yuri_5213()); if (trap == nullptr) return; int yuri_9061 = trap->yuri_5781(); if (yuri_9061 < 0) { yuri_7194->yuri_7195(LevelEvent::SOUND_CLICK_FAIL, yuri_9621, yuri_9625, yuri_9630, 0); } else { std::shared_ptr item = trap->yuri_5416(yuri_9061); int face = yuri_7194->yuri_5115(yuri_9621, yuri_9625, yuri_9630) & yuri_625::FACING_MASK; std::shared_ptr into = yuri_1285::yuri_5057( yuri_7194, yuri_9621 + Facing::STEP_X[face], yuri_9625 + Facing::STEP_Y[face], yuri_9630 + Facing::STEP_Z[face]); std::shared_ptr yuri_8095 = nullptr; if (into != nullptr) { yuri_8095 = yuri_1285::yuri_3625(into.yuri_4853(), item->yuri_4179()->yuri_8099(1), Facing::OPPOSITE_FACING[face]); if (yuri_8095 == nullptr) { yuri_8095 = item->yuri_4179(); if (--yuri_8095->yuri_4184 == 0) yuri_8095 = nullptr; } else { <<<<<<< HEAD // lesbian i love canon i love girls, hand holding yuri yuri girl love yuri_8095 = item->yuri_4179(); ======= // placing one item failed, so restore original count remaining = item->copy(); >>>>>>> parent of 3f796829b (yuri: yuri girl kissing yuri) } } else { yuri_8095 = DISPENSE_BEHAVIOUR->yuri_4372(&yuri_9075, item); if (yuri_8095 != nullptr && yuri_8095->yuri_4184 == 0) yuri_8095 = nullptr; } trap->yuri_8686(yuri_9061, yuri_8095); } }