local m=require(script.Parent:WaitForChild("\066\097\115\101\067\104\097\114\097\099\116\101\114\067\111\110\116\114\111\108\108\101\114"))local D=setmetatable({},m)D.__index=D function D.new()local j=setmetatable(m.new(),D)j.humanoid=nil j.tools={}j.toolEquipped=nil j.revertAutoJumpEnabledToFalse=false j.moveTouchObject=nil j.moveTouchStartPosition=nil j.startImage=nil j.endImage=nil j.middleImages={}j.startImageFadeTween=nil j.endImageFadeTween=nil j.middleImageFadeTweens={}j.isFirstTouch=true j.isFollowStick=false j.thumbstickFrame=nil j.onTouchMovedConn=nil j.onTouchEndedConn=nil j.onTouchActivateConn=nil j.onRenderSteppedConn=nil j.fadeInAndOutBalance=FADE_IN_OUT_BALANCE_DEFAULT j.fadeInAndOutHalfDuration=FADE_IN_OUT_HALF_DURATION_DEFAULT j.hasFadedBackgroundInPortrait=false j.hasFadedBackgroundInLandscape=false j.tweenInAlphaStart=nil j.tweenOutAlphaStart=nil j.shouldRevertAutoJumpOnDisable=false return j end
--[[ The Module ]]
--
local BaseCharacterController = require(script.Parent:WaitForChild("BaseCharacterController"))
local DynamicThumbstick = setmetatable({}, BaseCharacterController)
DynamicThumbstick.__index = DynamicThumbstick

function DynamicThumbstick.new()
	local self = setmetatable(BaseCharacterController.new(), DynamicThumbstick)

	self.humanoid = nil

	self.tools = {}
	self.toolEquipped = nil

	self.revertAutoJumpEnabledToFalse = false

	self.moveTouchObject = nil
	self.moveTouchStartPosition = nil

	self.startImage = nil
	self.endImage = nil
	self.middleImages = {}

	self.startImageFadeTween = nil
	self.endImageFadeTween = nil
	self.middleImageFadeTweens = {}

	self.isFirstTouch = true

	self.isFollowStick = false
	self.thumbstickFrame = nil
	self.onTouchMovedConn = nil
	self.onTouchEndedConn = nil
	self.onTouchActivateConn = nil
	self.onRenderSteppedConn = nil

	self.fadeInAndOutBalance = FADE_IN_OUT_BALANCE_DEFAULT
	self.fadeInAndOutHalfDuration = FADE_IN_OUT_HALF_DURATION_DEFAULT
	self.hasFadedBackgroundInPortrait = false
	self.hasFadedBackgroundInLandscape = false

	self.tweenInAlphaStart = nil
	self.tweenOutAlphaStart = nil

	-- If this module changes a player's humanoid's AutoJumpEnabled, it saves
	-- the previous state in this variable to revert to
	self.shouldRevertAutoJumpOnDisable = false

	return self
end
