function handler.rpc_create_object_writer(bs, data)
local objectId = data[1]
local data = data[2]
bswrite.uint16(bs, objectId)
bswrite.int32(bs, data.modelId)
bswrite.vector3d(bs, data.position)
bswrite.vector3d(bs, data.rotation)
bswrite.float(bs, data.drawDistance)
bswrite.bool8(bs, data.noCameraCol)
bswrite.uint16(bs, data.attachToVehicleId)
bswrite.uint16(bs, data.attachToObjectId)
if data.attachToVehicleId ~= 0xFFFF or data.attachToObjectId ~= 0xFFFF then
bswrite.vector3d(bs, data.attachOffsets)
bswrite.vector3d(bs, data.attachRotation)
bswrite.bool8(bs, data.syncRotation)
end
bswrite.uint8(bs, data.texturesCount)
for _, it in ipairs(data.materials) do
write_object_material(bs, it)
end
for _, it in ipairs(data.materialText) do
write_object_material_text(bs, it)
end
end