chunk model refresh fix

This commit is contained in:
MihailRis 2024-02-18 22:28:00 +03:00
parent 8341485aef
commit 853ee0fc6f
2 changed files with 7 additions and 2 deletions

View File

@ -434,13 +434,14 @@ int l_set_block_rotation(lua_State* L) {
lua::luaint y = lua_tointeger(L, 2);
lua::luaint z = lua_tointeger(L, 3);
lua::luaint value = lua_tointeger(L, 4) & BLOCK_ROT_MASK;
lua::luaint value = lua_tointeger(L, 4);
voxel* vox = scripting::level->chunks->get(x, y, z);
if (vox == nullptr) {
return 0;
}
vox->states = (vox->states & (~BLOCK_ROT_MASK)) | value;
vox->setRotation(value);
scripting::level->chunks->getChunkByVoxel(x, y, z)->setModified(true);
return 0;
}

View File

@ -22,6 +22,10 @@ struct voxel {
inline uint8_t rotation() const {
return states & BLOCK_ROT_MASK;
}
inline void setRotation(uint8_t rotation) {
states = (states & (~BLOCK_ROT_MASK)) | rotation & BLOCK_ROT_MASK;
}
};
#endif /* VOXELS_VOXEL_H_ */