⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 music_2d_hitfeedback.luac.lua

📁 htc manila 2 sourcecode
💻 LUA
字号:
-- Decompiled using luadec 0.4 by sztupy (http://winmo.sztupy.hu)
-- Command line was: -l ;0;0,1,2,3,4;0,1,2,3,4;0,8,20,31;0;0;; 0d1c1bd9_manila.luac 

require("common")
Music_2D_HitFeedback = class()
Music_2D_HitFeedback.__init = function(l_1_0, l_1_1)
   l_1_0.Item = l_1_1
   l_1_0.State = false
   l_1_0.PressOriginX = 0
   l_1_0.PressOriginY = 0
   l_1_0.TimerStarted = false
   l_1_0.PressTimer = timer(0.04998779296875)
   l_1_0.PressTimer:Stop()
   l_1_0.PressTimer.OnElapsed:connect(Music_2D_HitFeedback.TimerElapsed, l_1_0)
   Object_Original_X = l_1_0.Item.Position.x
   Object_Original_Y = l_1_0.Item.Position.y
   Offset_CX = l_1_0.Item.Size.width * 0.04998779296875 / 2
   Offset_CY = l_1_0.Item.Size.height * 0.04998779296875 / 2
   trace("Object_Original_X: " .. tostring(Object_Original_X) .. ", Object_Original_Y: " .. tostring(Object_Original_Y))
end

Music_2D_HitFeedback.AnimatePress = function(l_2_0)
   local l_2_1 = 1
   local l_2_2 = 0.94999694824219
   local l_2_3 = 0
   local l_2_4 = Interpolate_Linear
   l_2_0.Item.Scale:Interpolate(Vector3(l_2_1, l_2_1, 1), Vector3(l_2_2, l_2_2, 1), l_2_3, 0, l_2_4)
   l_2_0.Item.Position:Interpolate(Vector3(Object_Original_X, Object_Original_Y, 0), Vector3(Object_Original_X + Offset_CX, Object_Original_Y - Offset_CY, 0), l_2_3, 0, l_2_4)
end

Music_2D_HitFeedback.AnimateRelease = function(l_3_0)
   local l_3_1 = 0.94999694824219
   local l_3_2 = 1
   local l_3_3 = 5
   local l_3_4 = Interpolate_EaseOutQuad
   l_3_0.Item.Scale:Interpolate(Vector3(l_3_1, l_3_1, 1), Vector3(l_3_2, l_3_2, 1), l_3_3, 0, l_3_4)
   l_3_0.Item.Position:Interpolate(Vector3(Object_Original_X + Offset_CX, Object_Original_Y - Offset_CY, 0), Vector3(Object_Original_X, Object_Original_Y, 0), l_3_3, 0, l_3_4)
end

Music_2D_HitFeedback.TimerElapsed = function(l_4_0)
   trace("Press timer elapsed.")
   l_4_0.TimerStarted = false
   l_4_0.PressTimer:Stop()
   if l_4_0.Item ~= nil and l_4_0.State == false then
      local xmouse = l_4_0.Item._xmouse - l_4_0.PressOriginX
      local ymouse = l_4_0.Item._ymouse - l_4_0.PressOriginY
      local delta = Vector3F(xmouse, ymouse, 0):Length()
      trace("DeltaX: " .. tostring(xmouse) .. " - DeltaY: " .. tostring(ymouse))
      trace("Delta: " .. delta)
      if delta < 30 then
         trace("Animating press for the current item.")
         l_4_0.State = true
         l_4_0:AnimatePress()
      else
         trace("Not animating press for the current item.")
         l_4_0.State = false
      end
   else
     trace("Timer elapsed but current pressed item was nil or was already pressed! - State: " .. tostring(l_4_0.State))
   end
end

Music_2D_HitFeedback.Press = function(l_5_0)
   if l_5_0.TimerStarted or l_5_0.State == true then
      return 
   end
   l_5_0.PressOriginX = l_5_0.Item._xmouse
   l_5_0.PressOriginY = l_5_0.Item._ymouse
   l_5_0.TimerStarted = true
   l_5_0.PressTimer:Start()
end

Music_2D_HitFeedback.Release = function(l_6_0)
   l_6_0.TimerStarted = false
   l_6_0.PressTimer:Stop()
   if l_6_0.State == true then
      l_6_0.State = false
      l_6_0:AnimateRelease()
   end
end

Music_2D_HitFeedback.SetImagePosition = function(l_7_0, l_7_1, l_7_2)
   l_7_0.Item.Position.x = l_7_1
   l_7_0.Item.Position.y = l_7_2
   Object_Original_X = l_7_0.Item.Position.x
   Object_Original_Y = l_7_0.Item.Position.y
   Offset_CX = l_7_0.Item.Size.width * 0.04998779296875 / 2
   Offset_CY = l_7_0.Item.Size.height * 0.04998779296875 / 2
   trace("Object_Original_X: " .. tostring(Object_Original_X) .. ", Object_Original_Y: " .. tostring(Object_Original_Y))
end


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -