Camera::Camera(int w, int h, const Vector<float> &t)
: target(&t)
, offset(w/2, h/2)
-, zoom(0) {
+, zoom(1) {
}
}
void Camera::Update(float delta) {
+ zoom += zoom * zoomAcc * delta;
+ if (zoom < 0.0001) zoom = 0.0001;
+}
+
+void Camera::StartZoom() {
+ zoomAcc += 1;
+}
+void Camera::StopZoom() {
+ zoomAcc -= 1;
}
-void Camera::DoubleZoom() {
- zoom += 1;
+void Camera::StartShrink() {
+ zoomAcc -= 1;
}
-void Camera::HalfZoom() {
- zoom -= 1;
+void Camera::StopShrink() {
+ zoomAcc += 1;
}
}