Lock / Lockpick Component

Here is a quick map of class structure, so you could understand, how you can work with those locks in future:

http://s1.uploadpics.ru/images/bJ_s3Z8b3x.jpg
Green and Red means what type of 3D vis class lockpick type uses.
Lock Component - Master class for all other lock components. Contains controls, start/end lockpicking logic, event dispatchers (lock opened, lockpicking started, ended, e.t.c.), 3D visualization creation and some variables.
Lock Rotation - Lock with rotation type of lockpicking (Like Fallout/TES). Contains all the logic it needs. Calls 3D visual class for rotation type.
Lock Pins - Master class for pin pressing types of lockpicking. Contains some setups, like number of pins, moving speed, pin returning logic and some more. Have some logic, that checks, if all the pins are in correct place.
Lock LineUP - Lock, where you need to line up all the pins. It’s a child from Lock Pins class, so it has same behaviour and uses same 3D visualization class. In addition, it have timers, wich return pins back to init positions.
Lock Realistic - Child from Lock Pins. Have additional logic for controling tension.

3D visualization BP - Class, that contains some components, that allow to render locks in 3D in front of everything.
Rotation 3D visual - Child from the previous class. In addition, have some logic, that gets info from lock component and moves lockpick and lock itself in accordance. Has animation of end opening.
Pins 3D visual - Child from 3D visualization BP. Also contains lock generation (generates pins according to number of pins from lock component) and lockpick/pins moving logic. Has animation of end opening as well.