Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- self.noiseFactor = self.noiseFactor + dt
- -- self.trauma = math.min(1, self.trauma) - dt * config.camera.traumaFactor
- self.trauma = math.max(0, self.trauma - dt * config.camera.traumaFactor)
- if self.cameraTarget then
- self.x = self.x + (self.cameraTarget.pos.x - self.x) * dt * self.slideFactor
- self.y = self.y + (self.cameraTarget.pos.y - self.y) * dt * self.slideFactor
- end
- -- Shake based on trauma
- local shake = self.trauma ^ 2
- local maxOffset, maxAngle = config.camera.shake.maxOffset, config.camera.shake.maxAngle
- local x = self.x - maxOffset / 2 * shake + maxOffset * shake * love.math.noise(self.noiseFactor * 10)
- local y = self.y - maxOffset / 2 * shake + maxOffset * shake * love.math.noise(self.noiseFactor * 11)
- local r = self.r - maxAngle / 2 * shake + maxAngle * shake * love.math.noise(self.noiseFactor * 12)
- self.camera:setPosition(x, y)
- self.camera:setAngle(r)
Add Comment
Please, Sign In to add comment