mirror of
https://github.com/4jcraft/4jcraft.git
synced 2026-04-25 11:23:43 +00:00
39 lines
1.4 KiB
C++
39 lines
1.4 KiB
C++
#include "../Platform/stdafx.h"
|
|
#include "../Headers/net.minecraft.stats.h"
|
|
#include "../Headers/net.minecraft.world.entity.player.h"
|
|
#include "../Headers/net.minecraft.world.item.h"
|
|
#include "../Headers/net.minecraft.world.level.h"
|
|
#include "DeadBushTile.h"
|
|
|
|
DeadBushTile::DeadBushTile(int id) : Bush(id, Material::replaceable_plant) {
|
|
updateDefaultShape();
|
|
}
|
|
|
|
// 4J Added override
|
|
void DeadBushTile::updateDefaultShape() {
|
|
float ss = 0.4f;
|
|
this->setShape(0.5f - ss, 0, 0.5f - ss, 0.5f + ss, 0.8f, 0.5f + ss);
|
|
}
|
|
|
|
bool DeadBushTile::mayPlaceOn(int tile) { return tile == Tile::sand_Id; }
|
|
|
|
int DeadBushTile::getResource(int data, Random* random, int playerBonusLevel) {
|
|
return -1;
|
|
}
|
|
|
|
void DeadBushTile::playerDestroy(Level* level, std::shared_ptr<Player> player,
|
|
int x, int y, int z, int data) {
|
|
if (!level->isClientSide && player->getSelectedItem() != NULL &&
|
|
player->getSelectedItem()->id == Item::shears_Id) {
|
|
player->awardStat(GenericStats::blocksMined(id),
|
|
GenericStats::param_blocksMined(id, data, 1));
|
|
|
|
// drop leaf block instead of sapling
|
|
popResource(level, x, y, z,
|
|
std::shared_ptr<ItemInstance>(
|
|
new ItemInstance(Tile::deadBush, 1, data)));
|
|
} else {
|
|
Bush::playerDestroy(level, player, x, y, z, data);
|
|
}
|
|
}
|