cigarette box

im modelling a cigarette box for an animation i am going to make in blender. it is my first attempt at a long animation in blender, so i know theres still a lot i dont know and need to learn. this became apparent when i made the cigarette box. when you rotate the top of the box (open the pack) the cigarettes stick out of the box mesh. its not cause theyre too big, they were scaled to match a real cigarette. its cause when you open or shut a cigarette box, it kinda pushes the cigarettes back a bit to accommodate. is there any way to replicate this?


I see the problem … my inglish is not so good so i make a draw with ur image…

and the real box here :

honestly, easiest way for such a case is just to cheat it.
constrain/parent all the cigarettes to an empty, and just move the empty when you need to. that would be only a few keyframes.

this works even if the box is moving, just make the empty a child of the box, so that it inherits the coordinate from of the box. now, if you move it along its local z axis (or x,y depending on orientation), it will move only in the required direction, no matter the rotation of the box.

If it really has to be automatic solution, you could create a driver so that the cigarettes position (or controlling empty) is driven by the rotation of the lid.