com.amanotes.magictilescore 0.4.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (257) hide show
  1. package/CHANGELOG.md +240 -0
  2. package/CHANGELOG.md.meta +7 -0
  3. package/Docs/Class-Hierarchy.md +729 -0
  4. package/Docs/Class-Hierarchy.md.meta +7 -0
  5. package/Docs/Component-Architecture.md +43 -0
  6. package/Docs/Component-Architecture.md.meta +7 -0
  7. package/Docs/File-Structure.md +327 -0
  8. package/Docs/File-Structure.md.meta +7 -0
  9. package/Docs/Game-Architecture.md +41 -0
  10. package/Docs/Game-Architecture.md.meta +7 -0
  11. package/Docs/Input-System-Guide.md +419 -0
  12. package/Docs/Input-System-Guide.md.meta +7 -0
  13. package/Docs/Knot-System-Guide.md +309 -0
  14. package/Docs/Knot-System-Guide.md.meta +7 -0
  15. package/Docs/Meta-System-Guide.md +249 -0
  16. package/Docs/Meta-System-Guide.md.meta +7 -0
  17. package/Docs/New-Game-Checklist.md +102 -0
  18. package/Docs/New-Game-Checklist.md.meta +7 -0
  19. package/Docs/README.md +37 -0
  20. package/Docs/README.md.meta +7 -0
  21. package/Docs/RhythmCore-Architecture.md +373 -0
  22. package/Docs/RhythmCore-Architecture.md.meta +7 -0
  23. package/Docs/RhythmCore-Customize-Guide.md +391 -0
  24. package/Docs/RhythmCore-Customize-Guide.md.meta +7 -0
  25. package/Docs/Understanding-Rhythm-Core.md +483 -0
  26. package/Docs/Understanding-Rhythm-Core.md.meta +7 -0
  27. package/Docs/VisualWarp-System-Guide.md +377 -0
  28. package/Docs/VisualWarp-System-Guide.md.meta +7 -0
  29. package/Docs/Widget2D-System-Guide.md +450 -0
  30. package/Docs/Widget2D-System-Guide.md.meta +7 -0
  31. package/Docs.meta +8 -0
  32. package/Editor/AdjustHueEditor.cs +90 -0
  33. package/Editor/AdjustHueEditor.cs.meta +11 -0
  34. package/Editor/ClassInstanceDrawer.cs +256 -0
  35. package/Editor/ClassInstanceDrawer.cs.meta +11 -0
  36. package/Editor/CollapsibleGroupEditor.cs +142 -0
  37. package/Editor/CollapsibleGroupEditor.cs.meta +11 -0
  38. package/Editor/ListSongNoteEditor.cs +317 -0
  39. package/Editor/ListSongNoteEditor.cs.meta +11 -0
  40. package/Editor/MagicTilesCore.Editor.asmdef +20 -0
  41. package/Editor/MagicTilesCore.Editor.asmdef.meta +7 -0
  42. package/Editor/MetaLogicDrawer.cs +488 -0
  43. package/Editor/MetaLogicDrawer.cs.meta +11 -0
  44. package/Editor/RhythmContextEditor.EditorDrawer.cs +46 -0
  45. package/Editor/RhythmContextEditor.EditorDrawer.cs.meta +3 -0
  46. package/Editor/RhythmContextEditor.cs +587 -0
  47. package/Editor/RhythmContextEditor.cs.meta +3 -0
  48. package/Editor/RhythmGameEditor.cs +45 -0
  49. package/Editor/RhythmGameEditor.cs.meta +11 -0
  50. package/Editor/RhythmTileEditor.cs +93 -0
  51. package/Editor/RhythmTileEditor.cs.meta +11 -0
  52. package/Editor/TagConfigDrawer.cs +30 -0
  53. package/Editor/TagConfigDrawer.cs.meta +11 -0
  54. package/Editor.meta +8 -0
  55. package/LICENSE.md +7 -0
  56. package/LICENSE.md.meta +7 -0
  57. package/README.md +88 -0
  58. package/README.md.meta +7 -0
  59. package/Runtime/AssemblyInfo.cs +4 -0
  60. package/Runtime/AssemblyInfo.cs.meta +11 -0
  61. package/Runtime/Input/Base/BaseTileInput.cs +44 -0
  62. package/Runtime/Input/Base/BaseTileInput.cs.meta +11 -0
  63. package/Runtime/Input/Base/IInputHandler.cs +11 -0
  64. package/Runtime/Input/Base/IInputHandler.cs.meta +11 -0
  65. package/Runtime/Input/Base/InputData.cs +94 -0
  66. package/Runtime/Input/Base/InputData.cs.meta +3 -0
  67. package/Runtime/Input/Base/InputDirection.cs +17 -0
  68. package/Runtime/Input/Base/InputDirection.cs.meta +3 -0
  69. package/Runtime/Input/Base/InputPhase.cs +4 -0
  70. package/Runtime/Input/Base/InputPhase.cs.meta +3 -0
  71. package/Runtime/Input/Base.meta +3 -0
  72. package/Runtime/Input/Components/DragInput.cs +44 -0
  73. package/Runtime/Input/Components/DragInput.cs.meta +11 -0
  74. package/Runtime/Input/Components/HoldInput.cs +75 -0
  75. package/Runtime/Input/Components/HoldInput.cs.meta +12 -0
  76. package/Runtime/Input/Components/SwipeInput.cs +45 -0
  77. package/Runtime/Input/Components/SwipeInput.cs.meta +12 -0
  78. package/Runtime/Input/Components/TouchInput.cs +31 -0
  79. package/Runtime/Input/Components/TouchInput.cs.meta +11 -0
  80. package/Runtime/Input/Components.meta +8 -0
  81. package/Runtime/Input.meta +8 -0
  82. package/Runtime/MagicTilesCore.asmdef +24 -0
  83. package/Runtime/MagicTilesCore.asmdef.meta +7 -0
  84. package/Runtime/MoodChange/AdjustHue.ComponentInfo.cs +12 -0
  85. package/Runtime/MoodChange/AdjustHue.ComponentInfo.cs.meta +3 -0
  86. package/Runtime/MoodChange/AdjustHue.MaterialInfo.cs +115 -0
  87. package/Runtime/MoodChange/AdjustHue.MaterialInfo.cs.meta +3 -0
  88. package/Runtime/MoodChange/AdjustHue.ParticleSystemInfo.cs +36 -0
  89. package/Runtime/MoodChange/AdjustHue.ParticleSystemInfo.cs.meta +3 -0
  90. package/Runtime/MoodChange/AdjustHue.SpriteRendererInfo.cs +28 -0
  91. package/Runtime/MoodChange/AdjustHue.SpriteRendererInfo.cs.meta +3 -0
  92. package/Runtime/MoodChange/AdjustHue.TrailRendererInfo.cs +37 -0
  93. package/Runtime/MoodChange/AdjustHue.TrailRendererInfo.cs.meta +3 -0
  94. package/Runtime/MoodChange/AdjustHue.cs +219 -0
  95. package/Runtime/MoodChange/AdjustHue.cs.meta +11 -0
  96. package/Runtime/MoodChange/ColorHueExtensions.cs +227 -0
  97. package/Runtime/MoodChange/ColorHueExtensions.cs.meta +3 -0
  98. package/Runtime/MoodChange/HueCache.cs +167 -0
  99. package/Runtime/MoodChange/HueCache.cs.meta +11 -0
  100. package/Runtime/MoodChange/MoodChange.cs +52 -0
  101. package/Runtime/MoodChange/MoodChange.cs.meta +3 -0
  102. package/Runtime/MoodChange.meta +3 -0
  103. package/Runtime/Physics/TriggerCallback.cs +21 -0
  104. package/Runtime/Physics/TriggerCallback.cs.meta +3 -0
  105. package/Runtime/Physics.meta +8 -0
  106. package/Runtime/Preset/AudioSourcePlayer/AudioSourcePlayer.cs +153 -0
  107. package/Runtime/Preset/AudioSourcePlayer/AudioSourcePlayer.cs.meta +11 -0
  108. package/Runtime/Preset/AudioSourcePlayer/AudioSourcePlayer.prefab +145 -0
  109. package/Runtime/Preset/AudioSourcePlayer/AudioSourcePlayer.prefab.meta +7 -0
  110. package/Runtime/Preset/AudioSourcePlayer.meta +8 -0
  111. package/Runtime/Preset/AudioTimeText/AudioTimeText.cs +22 -0
  112. package/Runtime/Preset/AudioTimeText/AudioTimeText.cs.meta +11 -0
  113. package/Runtime/Preset/AudioTimeText/AudioTimeText.prefab +188 -0
  114. package/Runtime/Preset/AudioTimeText/AudioTimeText.prefab.meta +7 -0
  115. package/Runtime/Preset/AudioTimeText.meta +8 -0
  116. package/Runtime/Preset/ParticleSystemPlayer/ParticleSystemPlayer.cs +32 -0
  117. package/Runtime/Preset/ParticleSystemPlayer/ParticleSystemPlayer.cs.meta +11 -0
  118. package/Runtime/Preset/ParticleSystemPlayer.meta +8 -0
  119. package/Runtime/Preset/RendererAlpha.cs +56 -0
  120. package/Runtime/Preset/RendererAlpha.cs.meta +11 -0
  121. package/Runtime/Preset/ScoreText/ScoreText.anim +198 -0
  122. package/Runtime/Preset/ScoreText/ScoreText.anim.meta +8 -0
  123. package/Runtime/Preset/ScoreText/ScoreText.cs +32 -0
  124. package/Runtime/Preset/ScoreText/ScoreText.cs.meta +11 -0
  125. package/Runtime/Preset/ScoreText/ScoreText_2D.prefab +170 -0
  126. package/Runtime/Preset/ScoreText/ScoreText_2D.prefab.meta +7 -0
  127. package/Runtime/Preset/ScoreText/ScoreText_3D.prefab +206 -0
  128. package/Runtime/Preset/ScoreText/ScoreText_3D.prefab.meta +7 -0
  129. package/Runtime/Preset/ScoreText.meta +8 -0
  130. package/Runtime/Preset/StartHint/StartHint.cs +26 -0
  131. package/Runtime/Preset/StartHint/StartHint.cs.meta +3 -0
  132. package/Runtime/Preset/StartHint.meta +8 -0
  133. package/Runtime/Preset/WowText/WowText.cs +38 -0
  134. package/Runtime/Preset/WowText/WowText.cs.meta +3 -0
  135. package/Runtime/Preset/WowText.meta +8 -0
  136. package/Runtime/Preset.meta +8 -0
  137. package/Runtime/Rhythm/Components/Controls.meta +8 -0
  138. package/Runtime/Rhythm/Components/Helper/CameraFollow.cs +28 -0
  139. package/Runtime/Rhythm/Components/Helper/CameraFollow.cs.meta +11 -0
  140. package/Runtime/Rhythm/Components/Helper/MeshSpriteSorter.cs +89 -0
  141. package/Runtime/Rhythm/Components/Helper/MeshSpriteSorter.cs.meta +11 -0
  142. package/Runtime/Rhythm/Components/Helper/RecycleLayoutZ.cs +74 -0
  143. package/Runtime/Rhythm/Components/Helper/RecycleLayoutZ.cs.meta +11 -0
  144. package/Runtime/Rhythm/Components/Helper.meta +8 -0
  145. package/Runtime/Rhythm/Components.meta +8 -0
  146. package/Runtime/Rhythm/Core/GameMode.cs +10 -0
  147. package/Runtime/Rhythm/Core/GameMode.cs.meta +3 -0
  148. package/Runtime/Rhythm/Core/IAudioPlayer.cs +16 -0
  149. package/Runtime/Rhythm/Core/IAudioPlayer.cs.meta +3 -0
  150. package/Runtime/Rhythm/Core/IRhythmBehaviour.cs +10 -0
  151. package/Runtime/Rhythm/Core/IRhythmBehaviour.cs.meta +3 -0
  152. package/Runtime/Rhythm/Core/RhythmBehaviour.cs +57 -0
  153. package/Runtime/Rhythm/Core/RhythmBehaviour.cs.meta +11 -0
  154. package/Runtime/Rhythm/Core/RhythmDebug.cs +48 -0
  155. package/Runtime/Rhythm/Core/RhythmDebug.cs.meta +11 -0
  156. package/Runtime/Rhythm/Core/RhythmGameT.cs +323 -0
  157. package/Runtime/Rhythm/Core/RhythmGameT.cs.meta +3 -0
  158. package/Runtime/Rhythm/Core/RhythmMatch.cs +65 -0
  159. package/Runtime/Rhythm/Core/RhythmMatch.cs.meta +11 -0
  160. package/Runtime/Rhythm/Core/RhythmTile.cs +77 -0
  161. package/Runtime/Rhythm/Core/RhythmTile.cs.meta +3 -0
  162. package/Runtime/Rhythm/Core/RhythmTileHandler.cs +59 -0
  163. package/Runtime/Rhythm/Core/RhythmTileHandler.cs.meta +3 -0
  164. package/Runtime/Rhythm/Core.meta +8 -0
  165. package/Runtime/Rhythm/Extensions/CollectionExtensions.cs +120 -0
  166. package/Runtime/Rhythm/Extensions/CollectionExtensions.cs.meta +11 -0
  167. package/Runtime/Rhythm/Extensions/ColliderExtensions.cs +27 -0
  168. package/Runtime/Rhythm/Extensions/ColliderExtensions.cs.meta +11 -0
  169. package/Runtime/Rhythm/Extensions/GameHandlerExtensions.cs +56 -0
  170. package/Runtime/Rhythm/Extensions/GameHandlerExtensions.cs.meta +11 -0
  171. package/Runtime/Rhythm/Extensions/GameObjectExtensions.cs +61 -0
  172. package/Runtime/Rhythm/Extensions/GameObjectExtensions.cs.meta +11 -0
  173. package/Runtime/Rhythm/Extensions/InputDirectionExtensions.cs +76 -0
  174. package/Runtime/Rhythm/Extensions/InputDirectionExtensions.cs.meta +11 -0
  175. package/Runtime/Rhythm/Extensions/MTCListExtensions.cs +127 -0
  176. package/Runtime/Rhythm/Extensions/MTCListExtensions.cs.meta +11 -0
  177. package/Runtime/Rhythm/Extensions/MeshRendererExtensions.cs +81 -0
  178. package/Runtime/Rhythm/Extensions/MeshRendererExtensions.cs.meta +11 -0
  179. package/Runtime/Rhythm/Extensions/ParticleSystemExtensions.cs +54 -0
  180. package/Runtime/Rhythm/Extensions/ParticleSystemExtensions.cs.meta +11 -0
  181. package/Runtime/Rhythm/Extensions.meta +8 -0
  182. package/Runtime/Rhythm/Game/MTCSongAutoStart.cs +40 -0
  183. package/Runtime/Rhythm/Game/MTCSongAutoStart.cs.meta +11 -0
  184. package/Runtime/Rhythm/Game/RhythmConfig.cs +68 -0
  185. package/Runtime/Rhythm/Game/RhythmConfig.cs.meta +11 -0
  186. package/Runtime/Rhythm/Game/RhythmContext.Api.cs +533 -0
  187. package/Runtime/Rhythm/Game/RhythmContext.Api.cs.meta +11 -0
  188. package/Runtime/Rhythm/Game/RhythmContext.Dev.cs +121 -0
  189. package/Runtime/Rhythm/Game/RhythmContext.Dev.cs.meta +11 -0
  190. package/Runtime/Rhythm/Game/RhythmContext.Initialization.cs +114 -0
  191. package/Runtime/Rhythm/Game/RhythmContext.Initialization.cs.meta +11 -0
  192. package/Runtime/Rhythm/Game/RhythmContext.Runtime.cs +126 -0
  193. package/Runtime/Rhythm/Game/RhythmContext.Runtime.cs.meta +11 -0
  194. package/Runtime/Rhythm/Game/RhythmContext.State.cs +221 -0
  195. package/Runtime/Rhythm/Game/RhythmContext.State.cs.meta +11 -0
  196. package/Runtime/Rhythm/Game/RhythmContext.Tile.cs +90 -0
  197. package/Runtime/Rhythm/Game/RhythmContext.Tile.cs.meta +11 -0
  198. package/Runtime/Rhythm/Game/RhythmContext.TimeMachine.cs +315 -0
  199. package/Runtime/Rhythm/Game/RhythmContext.TimeMachine.cs.meta +11 -0
  200. package/Runtime/Rhythm/Game/RhythmContext.cs +312 -0
  201. package/Runtime/Rhythm/Game/RhythmContext.cs.meta +11 -0
  202. package/Runtime/Rhythm/Game/RhythmContextExtensions.cs +91 -0
  203. package/Runtime/Rhythm/Game/RhythmContextExtensions.cs.meta +11 -0
  204. package/Runtime/Rhythm/Game/Tile/ITileProgress.cs +7 -0
  205. package/Runtime/Rhythm/Game/Tile/ITileProgress.cs.meta +3 -0
  206. package/Runtime/Rhythm/Game/Tile/TileContext.cs +194 -0
  207. package/Runtime/Rhythm/Game/Tile/TileContext.cs.meta +11 -0
  208. package/Runtime/Rhythm/Game/Tile.meta +3 -0
  209. package/Runtime/Rhythm/Game.meta +3 -0
  210. package/Runtime/Rhythm/Math/Parabol.cs +35 -0
  211. package/Runtime/Rhythm/Math/Parabol.cs.meta +11 -0
  212. package/Runtime/Rhythm/Math.meta +8 -0
  213. package/Runtime/Rhythm/System/Event/GameEvent.cs +82 -0
  214. package/Runtime/Rhythm/System/Event/GameEvent.cs.meta +3 -0
  215. package/Runtime/Rhythm/System/Event.meta +8 -0
  216. package/Runtime/Rhythm/System/Meta/MetaLogic.cs +121 -0
  217. package/Runtime/Rhythm/System/Meta/MetaLogic.cs.meta +11 -0
  218. package/Runtime/Rhythm/System/Meta/VisualSpeedMeta.cs +132 -0
  219. package/Runtime/Rhythm/System/Meta/VisualSpeedMeta.cs.meta +11 -0
  220. package/Runtime/Rhythm/System/Meta.meta +8 -0
  221. package/Runtime/Rhythm/System/SongData/ListSongNote.cs +45 -0
  222. package/Runtime/Rhythm/System/SongData/ListSongNote.cs.meta +3 -0
  223. package/Runtime/Rhythm/System/SongData.meta +8 -0
  224. package/Runtime/Rhythm/System/StateMachine/RhythmStateMachine.State.cs +22 -0
  225. package/Runtime/Rhythm/System/StateMachine/RhythmStateMachine.State.cs.meta +11 -0
  226. package/Runtime/Rhythm/System/StateMachine/RhythmStateMachine.cs +138 -0
  227. package/Runtime/Rhythm/System/StateMachine/RhythmStateMachine.cs.meta +11 -0
  228. package/Runtime/Rhythm/System/StateMachine.meta +8 -0
  229. package/Runtime/Rhythm/System/TimeKnot/ListTimeKnots.cs +135 -0
  230. package/Runtime/Rhythm/System/TimeKnot/ListTimeKnots.cs.meta +11 -0
  231. package/Runtime/Rhythm/System/TimeKnot.meta +8 -0
  232. package/Runtime/Rhythm/System/TimeMachine/MTCTimeInterpolator.cs +365 -0
  233. package/Runtime/Rhythm/System/TimeMachine/MTCTimeInterpolator.cs.meta +11 -0
  234. package/Runtime/Rhythm/System/TimeMachine/MTCTimeMachine.TimeMarker.cs +107 -0
  235. package/Runtime/Rhythm/System/TimeMachine/MTCTimeMachine.TimeMarker.cs.meta +3 -0
  236. package/Runtime/Rhythm/System/TimeMachine/MTCTimeMachine.TimeNode.cs +14 -0
  237. package/Runtime/Rhythm/System/TimeMachine/MTCTimeMachine.TimeNode.cs.meta +3 -0
  238. package/Runtime/Rhythm/System/TimeMachine/MTCTimeMachine.TimeSpanNode.cs +21 -0
  239. package/Runtime/Rhythm/System/TimeMachine/MTCTimeMachine.TimeSpanNode.cs.meta +3 -0
  240. package/Runtime/Rhythm/System/TimeMachine/MTCTimeMachine.ZLaneSpeed.cs +28 -0
  241. package/Runtime/Rhythm/System/TimeMachine/MTCTimeMachine.ZLaneSpeed.cs.meta +3 -0
  242. package/Runtime/Rhythm/System/TimeMachine/MTCTimeMachine.cs +131 -0
  243. package/Runtime/Rhythm/System/TimeMachine/MTCTimeMachine.cs.meta +11 -0
  244. package/Runtime/Rhythm/System/TimeMachine.meta +8 -0
  245. package/Runtime/Rhythm/System/VisualKnot/VisualKnotLogic.cs +160 -0
  246. package/Runtime/Rhythm/System/VisualKnot/VisualKnotLogic.cs.meta +11 -0
  247. package/Runtime/Rhythm/System/VisualKnot.meta +8 -0
  248. package/Runtime/Rhythm/System/VisualWarp/IVisualWarp.cs +10 -0
  249. package/Runtime/Rhythm/System/VisualWarp/IVisualWarp.cs.meta +11 -0
  250. package/Runtime/Rhythm/System/VisualWarp/LinearVisualWarp.cs +27 -0
  251. package/Runtime/Rhythm/System/VisualWarp/LinearVisualWarp.cs.meta +11 -0
  252. package/Runtime/Rhythm/System/VisualWarp.meta +8 -0
  253. package/Runtime/Rhythm/System.meta +8 -0
  254. package/Runtime/Rhythm.meta +8 -0
  255. package/Runtime.meta +8 -0
  256. package/package.json +12 -0
  257. package/package.json.meta +7 -0
package/CHANGELOG.md ADDED
@@ -0,0 +1,240 @@
1
+ # Changelog
2
+
3
+ All notable changes to this project will be documented in this file.
4
+
5
+ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
6
+ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
+
8
+ ## [Unreleased]
9
+
10
+ ## [0.4.2] - 2026-04-02
11
+
12
+ ### Fixed
13
+ - **[Editor]** Wrong target custom editor for RhythmTile (`CustomEditor` was targeting `MonoBehaviour` instead of `RhythmTile`)
14
+
15
+ ## [0.4.1] - 2026-01-28
16
+
17
+ ### Changed
18
+ - **[Dependencies]** Updated RhythmJson dependency to v2.1.0 for custom meta parser support
19
+
20
+ ## [0.4.0] - 2026-01-21
21
+
22
+ ### Added
23
+ - **[State Machine]** Rhythm StateMachine for better game state management
24
+ - **[Performance]** Async JSON parse support to improve loading performance
25
+ - Documentation consolidation and cursor rules
26
+
27
+ ### Changed
28
+ - **[RhythmEngine]** Complete restructure for better architecture
29
+ - **[Knot System]** Improved with pre-calculated values for better performance
30
+ - **[MaterialPool]** Simplified API to allow get/return using borrowId
31
+ - **[AdjustHue]** Complete refactor with simplified material hue handling
32
+ - **[DRMoodRunner]** Improved with proper animation support
33
+ - **[DRBall]** Performance improvements for logic handling
34
+ - **[Physics]** Updated layer settings for DR template
35
+ - **[ObjectPool]** Use ObjectPool for VisualKnots to improve GC
36
+ - **[AudioPlayer]** Warm-up in Prepare phase to prevent lag when starting game
37
+ - **[Seek]** Force immediate refresh on Seek for smoother experience
38
+ - **[SnapBeat]** Only enable gameMode logic for SnapBeat mode
39
+
40
+ ### Fixed
41
+ - **[THGame]** Inject first knot at t = 0 for smooth animation
42
+ - **[Road System]** Update only changed road parts instead of per-frame updates
43
+ - **[Road System]** Extend time for last road segment to prevent breaks
44
+ - **[Road System]** Segment interpolation now returns correct values
45
+ - **[JSON Parser]** Note variant parsing with legacy rhythm json (< v1.3)
46
+ - **[Speed System]** GetDistanceAtTime calculation for last speed segment
47
+ - **[DRBall]** Proper knot reset after game end
48
+ - **[DRBall]** Null exception when accessing knots
49
+ - **[TimeKnot]** Proper indexing implementation
50
+ - **[Shader]** Duplicated shader GUID
51
+
52
+ ### Removed
53
+ - **[Templates]** DR3 template cleanup
54
+ - **[Templates]** RhythmGameGenerator template
55
+ - **[Templates]** Luna templates from main branch
56
+ - **[CurvyTile]** Moved to separate package for better modularity
57
+
58
+ ### Dependencies
59
+ - **[RhythmJson]** Updated to v2.0.0
60
+
61
+ ## [0.3.0] - 2024-12-27
62
+
63
+ ### Added
64
+
65
+ **New Systems**
66
+ - **[Knot System]** Time-based events (TimeKnot) and path-based gameplay (VisualKnot) for smooth interpolation
67
+ - **[Visual Warp]** IVisualWarp interface for flexible visual transformations (curved paths, perspective effects)
68
+ - **[Input System]** Complete refactor with InputData, InputPhase, InputDirection and specialized handlers (DragInput, HoldInput, SwipeInput, TouchInput)
69
+ - **[Mood Change]** AdjustHue component with ColorHueExtensions and HueCache for dynamic color theming
70
+ - **[RhythmJson]** Separated JSON parsing into standalone package with proper extensions and parser
71
+ - **[Game Generator]** Template-based rapid prototyping system with configurable templates
72
+
73
+ **New Components**
74
+ - TriggerCallback for physics-based callbacks
75
+ - ScoreText 2D and 3D prefabs
76
+ - StartHint visual component
77
+ - Lifecycle callbacks: OnBeforeSeek, OnAfterSeek, OnInitDone
78
+
79
+ **Templates**
80
+ - **[DR]** Complete 3D path game with ball physics, curved road, and 9 tile types
81
+ - **[TH3]** Tap n Hold component and knot system integration
82
+ - **[MT3]** Miss note and wrong note support with TileUnknown
83
+
84
+ ### Changed
85
+ - **[Input]** Refactored from ITileInput to BaseTileInput with cleaner separation
86
+ - **[Meta & Knot]** Complete refactor for better extensibility and performance
87
+ - **[PrefabPool]** Enhanced with runtime pool creation and null safety
88
+ - **[RhythmContext]** Simplified GetZ calculation, configurable lane width
89
+ - **[AudioSourcePlayer]** Added extensive validation checks
90
+ - Minor improvements: CameraFollow frame-independent interpolation, TileLong/TileCurve visual feedback
91
+
92
+ ### Fixed
93
+ - **Core Systems:** LinearVisualWarp interpolation, RhythmContext score calculation, VisualSpeed null access, VisualWarp context requirement
94
+ - **Tiles:** TileLong & TileCurve effect rendering, tile status refresh
95
+ - **Compatibility:** Culture parsing (invariant culture), variant API, RhythmGameT shutdown
96
+ - **Build:** Compiler errors, MTCSongAutoStart in SnapBeat mode
97
+ - **Performance:** PrefabPool null pointer exception
98
+
99
+ ### Removed
100
+ - Deprecated extensions (SongNoteExtensions, StringExtensions)
101
+ - Legacy RhythmJson from Core (moved to separate package)
102
+ - Unused components (ITileInput, DirectionUtil)
103
+
104
+ ## [0.2.6] - 2025-11-20
105
+
106
+ ### Changed
107
+ - TileContext now uses `context.game.CreateRhythmTile(note)` instead of direct pool access for better extensibility
108
+
109
+ ## [0.2.5] - 2025-11-12
110
+
111
+ ### Added
112
+ - WowText system with MT3WowText and TH3WowText components
113
+ - MT3 CurvyTile with complete prefab, materials, and visual assets
114
+ - LongTile support for rotation (inclined tiles)
115
+ - New `FromJson(string json)` method for simplified JSON parsing in ListSongNote
116
+
117
+ ### Changed
118
+ - Improved ListSongNote editor with better UI and performance
119
+ - Updated MT3TileCurvy implementation with simplified architecture
120
+
121
+ ### Fixed
122
+ - Error in MoodChangeBehaviour component
123
+ - Should show config & songNotes fields on RhythmContext
124
+
125
+ ## [0.2.4] - 2025-11-10
126
+
127
+ ### Fixed
128
+ - Visual logic update for Tile Circular & TileLong
129
+ - VisualSpeed not registered properly
130
+ - OnValidate should not be triggered for Prefab
131
+
132
+ ## [0.2.3] - 2025-11-06
133
+
134
+ ### Added
135
+ - Improved strong note FX + Long tile progress
136
+
137
+ ## [0.2.2] - 2025-11-04
138
+
139
+ ### Added
140
+ - Support Strong variant for short tiles (moving, teleport, circular, fade up/down) & long tiles
141
+ - TH3 Luna template updates
142
+
143
+ ### Fixed
144
+ - Meta not trigger when reset
145
+ - Build error in MT3-Luna
146
+ - Temporary fixes for Swipe and WidgetTransform
147
+
148
+ ## [0.2.1] - 2025-11-02
149
+
150
+ ### Added
151
+ - Detailed documentation system
152
+ - SnapBeat loader scene for MT3 / TH3
153
+ - MetaLogic drawer with custom editor
154
+ - Fast path for constant speed (auto detect)
155
+ - Option to exclude Meta by id
156
+ - TileLong support for cap rendering
157
+ - Material Pool system for efficient resource management
158
+ - Ball trail effects
159
+ - FakeReal & Chain tile for TH3
160
+ - SpriteRendererWidget with 4-direction padding & fill
161
+ - Simple RhythmDebug system
162
+ - MT3Luna template
163
+ - RhythmJson wrapper (JSON_NET support)
164
+ - Package2Folder utility
165
+ - Size2D with pivot setting and XZ plane support
166
+
167
+ ### Changed
168
+ - Refactored SwipeArrow to RhythmTileHandler
169
+ - Refactored RhythmTile + Added RhythmTileHandler
170
+ - Refactored RhythmContext + RhythmConfig
171
+ - Restructured RhythmConfig
172
+ - Improved RhythmGame Inspector
173
+ - Simplified event system
174
+ - Updated to Unity v2022.3.62f2
175
+ - Removed DOTweenPro dependency
176
+ - Removed VS2 dependency on SwipeArrow
177
+ - Removed support for Physics2D
178
+
179
+ ### Fixed
180
+ - AlignHandler should respect pivot settings
181
+ - Wrong height calculation for long tile
182
+ - Wrong touchable logic (based on firstTouchable note, not time)
183
+ - FirstActiveTileContext does not update to non-missed tiles
184
+ - Abrupt changes in ball position at the end of long tile
185
+ - Proper support for useZ on WidgetTransform
186
+ - Better time-based handling for audio speed
187
+ - Tiles did not refresh position right after attached
188
+ - PrefabPool: Reset rotation on tile spawn
189
+ - SwipeInput: Use screen coordinates for direction calculation
190
+ - AudioPlayer should be optional (check null)
191
+ - Widget should handle derived types
192
+ - Various fixes for MetaLogic system (including VisualSpeedMeta)
193
+ - Various fixes & improvements for InputSystem
194
+ - Wrong calculation for shortTileDuration
195
+ - Duplicated & wrong logic in handling Tile Miss
196
+ - Performance drop in AutoPlayHandler
197
+
198
+ ### Removed
199
+ - Game-specifics like MissedEffect & Theme from MTCore
200
+ - Unnecessary packages & updated project settings
201
+ - Unused bundleNames
202
+
203
+ ## [0.1.3] - 2025-07-13
204
+
205
+ ### Added
206
+ - CurvyTile system with advanced mesh generation
207
+ - Fill percentage support for CurvyTile
208
+ - Sliced sprite support for TileCap in CurvyTile
209
+ - Automatic diagonal support at corners
210
+ - Self-intersection handling for curvy tiles
211
+
212
+ ### Changed
213
+ - Improved generated mesh & UV mapping for CurvyTile
214
+ - Better corner handle for stretched curves
215
+ - Fill now maps progress with respect to the border
216
+
217
+ ### Fixed
218
+ - CurvyTile fill progress calculation
219
+ - Support automatic diagonal at corner
220
+ - Various fixes for curvy tile rendering
221
+ - Compiler errors + stop game before start
222
+ - Calculate progress & update view based on data
223
+ - Always update tile progress
224
+ - Update progress to duration for tile long
225
+
226
+ ### Removed
227
+ - Legacy auto calculation methods
228
+
229
+ ## [0.1.0] - 2025-06-27
230
+
231
+ ### Added
232
+ - Initial release of Magic Tiles Core
233
+ - Basic rhythm game framework
234
+ - Core tile system
235
+ - Input handling system
236
+ - Pool management system
237
+ - Widget2D system for UI scaling
238
+ - Basic rhythm context and configuration
239
+ - Time machine for rhythm synchronization
240
+ - Preset components for common game elements
@@ -0,0 +1,7 @@
1
+ fileFormatVersion: 2
2
+ guid: 2bb4927bbe2d54d1daf7d2b65ebd824a
3
+ TextScriptImporter:
4
+ externalObjects: {}
5
+ userData:
6
+ assetBundleName:
7
+ assetBundleVariant: