pub fn position_mut<T>(
    entity: Entity,
    dismount_volume: bool,
    f: impl for<'a> FnOnce(&'a mut Pos) -> T,
    id_maps: &IdMaps,
    is_volume_riders: &mut WriteStorage<'_, Is<VolumeRider>>,
    positions: impl GenericWriteStorage<Component = Pos>,
    force_updates: impl GenericWriteStorage<Component = ForceUpdate>,
    is_riders: impl GenericReadStorage<Component = Is<Rider>>,
    presences: impl GenericReadStorage<Component = Presence>,
    clients: impl GenericReadStorage<Component = Client>
) -> Result<T, Content>