nei, jeg er tysk.
And next time I'll visit Norway I'll be sure to take you on your offer
Add float adds the second value to the first. Maybe you had them the wrong way round?
As for the big jumps and stuff, it's hard to get that right. If you use tween actions they will behave weirdly if you zoom multiple times in subsequent frames.
So what I personally use is a rigidbody driven camera setup. I'm working on an rts, and that also works for nice up/down/left/right movements.
So first of all I added a rigidbody component to my camera and set the drag property to 2. This will make it stop smoothly but still rather swiftly after applying force to it.
Then as for my Fsm, it's just a GetAxis + floatMultiply + ForceAdd(self z axis) State.
The exception here is that you can't clamp the force add to clamp the camera position. Instead you need to use:
getPosition(get the self Z every frame as "Z value")
clampFloat(minDistance < Z value <maxDistance)
setPosition(every frame, self , Z as "Z value", lateUpdate)
You can just put those states right under the other ones, as long as they run
after the force add. If the current z value is not below or above the min/max values it's not clamped, so you will just set the position to the same value it already is at, which does nothing. If you're too far away or too close, this effectively nullifies any further rigidbody movements.