summaryrefslogtreecommitdiffhomepage
path: root/animator.rb
diff options
context:
space:
mode:
authorrealtradam <[email protected]>2021-01-20 22:25:54 -0500
committerrealtradam <[email protected]>2021-01-20 22:25:54 -0500
commit178a62eb3b0244f975ec24eb28520d23349e3dfc (patch)
treed4bf34791590bc9150f59a54b752504590571519 /animator.rb
parentba1392414af9c18779c386af4f67325c546d9025 (diff)
downloadruby2d-camera-178a62eb3b0244f975ec24eb28520d23349e3dfc.tar.gz
ruby2d-camera-178a62eb3b0244f975ec24eb28520d23349e3dfc.zip
added camera zoom
Diffstat (limited to 'animator.rb')
-rw-r--r--animator.rb28
1 files changed, 21 insertions, 7 deletions
diff --git a/animator.rb b/animator.rb
index c2640f6..9fae771 100644
--- a/animator.rb
+++ b/animator.rb
@@ -16,6 +16,7 @@ class AnimatedSquare
def x= x
@square.x = x
end
+
def y
@square.y
end
@@ -23,18 +24,31 @@ class AnimatedSquare
@square.y = y
end
+ def size
+ @square.size
+ end
+ def size= size
+ @square.size = size
+ end
+
- def update offset
+ def update(offset, zoom)
+ width_zoom_offset = Window.width/2 * (zoom-1)
+ height_zoom_offset = Window.height/2 * (zoom-1)
if @axis == 0
- @square.x += @speed
- if @square.x > (@range[1] - offset[0]) or @square.x < (@range[0] - offset[0])
- @speed = -@speed
+ @square.x += @speed * zoom
+ if @square.x >= ((@range[1] - offset[0]))
+ @speed = -(@speed.abs)
+ elsif @square.x <= ((@range[0] - offset[0]))
+ @speed = @speed.abs
end
else
- @square.y += @speed
- if @square.y > (@range[1] - offset[1]) or @square.y < (@range[0] - offset[1])
- @speed = -@speed
+ @square.y += @speed * zoom
+ if @square.y >= ((@range[1] - offset[1]))
+ @speed = -(@speed.abs)
+ elsif @square.y <= ((@range[0] - offset[1]))
+ @speed = @speed.abs
end
end
end