aboutsummaryrefslogtreecommitdiff
path: root/Minecraft.World/StoneSlabTileItem.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'Minecraft.World/StoneSlabTileItem.cpp')
-rw-r--r--Minecraft.World/StoneSlabTileItem.cpp15
1 files changed, 6 insertions, 9 deletions
diff --git a/Minecraft.World/StoneSlabTileItem.cpp b/Minecraft.World/StoneSlabTileItem.cpp
index ea636f65..013ad03e 100644
--- a/Minecraft.World/StoneSlabTileItem.cpp
+++ b/Minecraft.World/StoneSlabTileItem.cpp
@@ -12,7 +12,7 @@ StoneSlabTileItem::StoneSlabTileItem(int id, HalfSlabTile *halfTile, HalfSlabTil
this->halfTile = halfTile;
this->fullTile = fullTile;
- this->isFull = full;
+ isFull = full;
setMaxDamage(0);
setStackedByData(true);
}
@@ -40,7 +40,7 @@ bool StoneSlabTileItem::useOn(shared_ptr<ItemInstance> instance, shared_ptr<Play
}
if (instance->count == 0) return false;
- if (!player->mayBuild(x, y, z)) return false;
+ if (!player->mayUseItemAt(x, y, z, face, instance)) return false;
int currentTile = level->getTile(x, y, z);
int currentData = level->getData(x, y, z);
@@ -54,11 +54,9 @@ bool StoneSlabTileItem::useOn(shared_ptr<ItemInstance> instance, shared_ptr<Play
return true;
}
- if (level->isUnobstructed(fullTile->getAABB(level, x, y, z)) && level->setTileAndData(x, y, z, fullTile->id, slabType))
+ if (level->isUnobstructed(fullTile->getAABB(level, x, y, z)) && level->setTileAndData(x, y, z, fullTile->id, slabType, Tile::UPDATE_ALL))
{
-// level.playSound(x + 0.5f, y + 0.5f, z + 0.5f, fullTile.soundType.getPlaceSound(), (fullTile.soundType.getVolume() + 1) / 2, fullTile.soundType.getPitch() * 0.8f);
-// instance.count--;
- level->playSound(x + 0.5f, y + 0.5f, z + 0.5f, fullTile->soundType->getStepSound(), (fullTile->soundType->getVolume() + 1) / 2, fullTile->soundType->getPitch() * 0.8f);
+ level->playSound(x + 0.5f, y + 0.5f, z + 0.5f, fullTile->soundType->getPlaceSound(), (fullTile->soundType->getVolume() + 1) / 2, fullTile->soundType->getPitch() * 0.8f);
instance->count--;
}
return true;
@@ -127,10 +125,9 @@ bool StoneSlabTileItem::tryConvertTargetTile(shared_ptr<ItemInstance> instance,
{
return true;
}
- if (level->isUnobstructed(fullTile->getAABB(level, x, y, z)) && level->setTileAndData(x, y, z, fullTile->id, slabType))
+ if (level->isUnobstructed(fullTile->getAABB(level, x, y, z)) && level->setTileAndData(x, y, z, fullTile->id, slabType, Tile::UPDATE_ALL))
{
- //level.playSound(x + 0.5f, y + 0.5f, z + 0.5f, fullTile.soundType.getPlaceSound(), (fullTile.soundType.getVolume() + 1) / 2, fullTile.soundType.getPitch() * 0.8f);
- level->playSound(x + 0.5f, y + 0.5f, z + 0.5f, fullTile->soundType->getStepSound(), (fullTile->soundType->getVolume() + 1) / 2, fullTile->soundType->getPitch() * 0.8f);
+ level->playSound(x + 0.5f, y + 0.5f, z + 0.5f, fullTile->soundType->getPlaceSound(), (fullTile->soundType->getVolume() + 1) / 2, fullTile->soundType->getPitch() * 0.8f);
instance->count--;
}
return true;