net.dreditor.minigames.debates 0.1.6 → 0.1.8

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 (513) hide show
  1. package/.attestation.p7m +0 -0
  2. package/Absorbing/AbsorbBulletModeMechanic.cs +132 -132
  3. package/Absorbing/AbsorbBulletModeMechanic.cs.meta +11 -11
  4. package/Absorbing/AbsorbInputHandler.cs +76 -76
  5. package/Absorbing/AbsorbInputHandler.cs.meta +1 -1
  6. package/Absorbing/AbsorbMechanic.cs +70 -70
  7. package/Absorbing/AbsorbMechanic.cs.meta +1 -1
  8. package/Absorbing/IPathosAnswer.cs +19 -19
  9. package/Absorbing/IPathosAnswer.cs.meta +1 -1
  10. package/Absorbing/PathosAnswerModifier.cs +33 -33
  11. package/Absorbing/PathosAnswerModifier.cs.meta +1 -1
  12. package/Absorbing/PathosEvaluator.cs +69 -69
  13. package/Absorbing/PathosEvaluator.cs.meta +11 -11
  14. package/Absorbing.meta +8 -8
  15. package/BulletAnswerModifier.cs +26 -26
  16. package/BulletAnswerModifier.cs.meta +11 -11
  17. package/BulletModeUpdater.cs +61 -61
  18. package/BulletModeUpdater.cs.meta +11 -11
  19. package/CorrectBulletHitListener.cs +36 -36
  20. package/CorrectBulletHitListener.cs.meta +1 -1
  21. package/Counters/BulletEvaluator.cs +25 -25
  22. package/Counters/BulletEvaluator.cs.meta +11 -11
  23. package/Counters/BulletEvaluatorManager.cs +221 -221
  24. package/Counters/BulletEvaluatorManager.cs.meta +11 -11
  25. package/Counters/CounterConsent.cs +86 -86
  26. package/Counters/CounterConsent.cs.meta +11 -11
  27. package/Counters/CounterHandler.cs +93 -93
  28. package/Counters/CounterHandler.cs.meta +11 -11
  29. package/Counters/CounterHandlerBase.cs +17 -17
  30. package/Counters/CounterHandlerBase.cs.meta +11 -11
  31. package/Counters/CounterType.cs +33 -33
  32. package/Counters/CounterType.cs.meta +11 -11
  33. package/Counters/CounterUIType.cs +94 -94
  34. package/Counters/CounterUIType.cs.meta +11 -11
  35. package/Counters/CounterVideo.cs +74 -74
  36. package/Counters/CounterVideo.cs.meta +11 -11
  37. package/Counters/DebateEvaluator.cs +20 -20
  38. package/Counters/DebateEvaluator.cs.meta +11 -11
  39. package/Counters.meta +8 -8
  40. package/Cycling/BulletChamberUI.cs +57 -57
  41. package/Cycling/BulletChamberUI.cs.meta +11 -11
  42. package/Cycling/BulletCycleUI.cs +204 -204
  43. package/Cycling/BulletCycleUI.cs.meta +11 -11
  44. package/Cycling/BulletCycleUISpawner.cs +122 -122
  45. package/Cycling/BulletCycleUISpawner.cs.meta +1 -1
  46. package/Cycling/BulletIndicators.cs +62 -62
  47. package/Cycling/BulletIndicators.cs.meta +11 -11
  48. package/Cycling/BulletIndicatorsBase.cs +49 -49
  49. package/Cycling/BulletIndicatorsBase.cs.meta +1 -1
  50. package/Cycling/BulletSwapper.cs +307 -307
  51. package/Cycling/BulletSwapper.cs.meta +11 -11
  52. package/Cycling/BulletTextHandler.cs +54 -54
  53. package/Cycling/BulletTextHandler.cs.meta +11 -11
  54. package/Cycling/BulletTextSwapper.cs +114 -114
  55. package/Cycling/BulletTextSwapper.cs.meta +11 -11
  56. package/Cycling/CyclePosition.cs +59 -59
  57. package/Cycling/CyclePosition.cs.meta +11 -11
  58. package/Cycling/CycleTrackHandler.cs +267 -267
  59. package/Cycling/CycleTrackHandler.cs.meta +11 -11
  60. package/Cycling/CycleUIBullet.cs +46 -46
  61. package/Cycling/CycleUIBullet.cs.meta +11 -11
  62. package/Cycling/CycleUIBulletBase.cs +22 -22
  63. package/Cycling/CycleUIBulletBase.cs.meta +11 -11
  64. package/Cycling/CycleUIIndenter.cs +39 -39
  65. package/Cycling/CycleUIIndenter.cs.meta +11 -11
  66. package/Cycling/CycleUISprite.cs +39 -39
  67. package/Cycling/CycleUISprite.cs.meta +11 -11
  68. package/Cycling/CycleUIText.cs +29 -29
  69. package/Cycling/CycleUIText.cs.meta +11 -11
  70. package/Cycling/ICycleTracker.cs +30 -30
  71. package/Cycling/ICycleTracker.cs.meta +1 -1
  72. package/Cycling/ICycleUIStateComponent.cs +15 -15
  73. package/Cycling/ICycleUIStateComponent.cs.meta +11 -11
  74. package/Cycling/ICycleUITextComponent.cs +14 -14
  75. package/Cycling/ICycleUITextComponent.cs.meta +11 -11
  76. package/Cycling/IntroBulletCycleHandler.cs +314 -314
  77. package/Cycling/IntroBulletCycleHandler.cs.meta +11 -11
  78. package/Cycling/SpawnedCycleBulletsClearer.cs +66 -66
  79. package/Cycling/SpawnedCycleBulletsClearer.cs.meta +1 -1
  80. package/Cycling/SwapProcess.cs +280 -280
  81. package/Cycling/SwapProcess.cs.meta +11 -11
  82. package/Cycling/SwapProcessBase.cs +150 -150
  83. package/Cycling/SwapProcessBase.cs.meta +1 -1
  84. package/Cycling/TrackPathCalculator.cs +183 -183
  85. package/Cycling/TrackPathCalculator.cs.meta +1 -1
  86. package/Cycling.meta +8 -8
  87. package/DREditor.Minigames.Debates.asmdef +28 -28
  88. package/DREditor.Minigames.Debates.asmdef.meta +7 -7
  89. package/DebateBuilder.cs +66 -66
  90. package/DebateBuilder.cs.meta +11 -11
  91. package/DebateTextCamera.cs +56 -56
  92. package/DebateTextCamera.cs.meta +11 -11
  93. package/DebateTruthBulletMenu.cs +237 -237
  94. package/DebateTruthBulletMenu.cs.meta +11 -11
  95. package/Editor/AnimationArchitectureEditor.cs +38 -38
  96. package/Editor/AnimationArchitectureEditor.cs.meta +11 -11
  97. package/Editor/DREditor.Minigames.Debates.Editor.asmdef +42 -42
  98. package/Editor/DREditor.Minigames.Debates.Editor.asmdef.meta +7 -7
  99. package/Editor/DebateTypeEditor.cs +238 -238
  100. package/Editor/DebateTypeEditor.cs.meta +11 -11
  101. package/Editor/IDebateEditor.cs +53 -53
  102. package/Editor/IDebateEditor.cs.meta +11 -11
  103. package/Editor/MenuItemDebateUtility.cs +52 -52
  104. package/Editor/MenuItemDebateUtility.cs.meta +11 -11
  105. package/Editor/MultiPanelLineEditor.cs +41 -41
  106. package/Editor/MultiPanelLineEditor.cs.meta +11 -11
  107. package/Editor/PanelEditorConstants.cs +18 -18
  108. package/Editor/PanelEditorConstants.cs.meta +11 -11
  109. package/Editor/PanelLineEditor.cs +274 -274
  110. package/Editor/PanelLineEditor.cs.meta +11 -11
  111. package/Editor/PanelPhrasesEditor.cs +296 -296
  112. package/Editor/PanelPhrasesEditor.cs.meta +11 -11
  113. package/Editor/PartlyHitEditor.cs +75 -75
  114. package/Editor/PartlyHitEditor.cs.meta +11 -11
  115. package/Editor/PhraseAnimationArchitectureList.cs +22 -22
  116. package/Editor/PhraseAnimationArchitectureList.cs.meta +11 -11
  117. package/Editor/PhraseBaseDataEditor.cs +75 -75
  118. package/Editor/PhraseBaseDataEditor.cs.meta +11 -11
  119. package/Editor/PhraseBaseEditor.cs +35 -35
  120. package/Editor/PhraseBaseEditor.cs.meta +11 -11
  121. package/Editor/PhraseDataEditor.cs +74 -74
  122. package/Editor/PhraseDataEditor.cs.meta +11 -11
  123. package/Editor/PhraseEditor.cs +26 -26
  124. package/Editor/PhraseEditor.cs.meta +11 -11
  125. package/Editor/PhraseEditorBase.cs +156 -156
  126. package/Editor/PhraseEditorBase.cs.meta +11 -11
  127. package/Editor/PhraseModifierEditor.cs +38 -38
  128. package/Editor/PhraseModifierEditor.cs.meta +11 -11
  129. package/Editor/PhraseModifierList.cs +22 -22
  130. package/Editor/PhraseModifierList.cs.meta +11 -11
  131. package/Editor/PhrasePreset.cs +30 -30
  132. package/Editor/PhrasePreset.cs.meta +11 -11
  133. package/Editor/PhrasePresetDatabase.cs +41 -41
  134. package/Editor/PhrasePresetDatabase.cs.meta +11 -11
  135. package/Editor/PhrasePresetEditor.cs +230 -230
  136. package/Editor/PhrasePresetEditor.cs.meta +11 -11
  137. package/Editor/PhraseSectionEditor.cs +225 -225
  138. package/Editor/PhraseSectionEditor.cs.meta +11 -11
  139. package/Editor/PhraseSectionEditorBase.cs +133 -133
  140. package/Editor/PhraseSectionEditorBase.cs.meta +11 -11
  141. package/Editor/PhraseTypeList.cs +22 -22
  142. package/Editor/PhraseTypeList.cs.meta +11 -11
  143. package/Editor/ReplaceDebateAssetTextEditor.cs +81 -81
  144. package/Editor/ReplaceDebateAssetTextEditor.cs.meta +11 -11
  145. package/Editor/TextByArrayEditor.cs +148 -148
  146. package/Editor/TextByArrayEditor.cs.meta +11 -11
  147. package/Editor/VerifyMinigames.cs +120 -120
  148. package/Editor/VerifyMinigames.cs.meta +11 -11
  149. package/Editor.meta +8 -8
  150. package/FadeSentEventPhrase.cs +41 -41
  151. package/FadeSentEventPhrase.cs.meta +1 -1
  152. package/Firing/BulletFirer.cs +87 -87
  153. package/Firing/BulletFirer.cs.meta +11 -11
  154. package/Firing/BulletSilencer.cs +201 -201
  155. package/Firing/BulletSilencer.cs.meta +11 -11
  156. package/Firing/FireBulletTextAnimation.cs +240 -240
  157. package/Firing/FireBulletTextAnimation.cs.meta +11 -11
  158. package/Firing/FireBulletTextAnimationBase.cs +138 -138
  159. package/Firing/FireBulletTextAnimationBase.cs.meta +11 -11
  160. package/Firing/FireBulletUIHandler.cs +192 -192
  161. package/Firing/FireBulletUIHandler.cs.meta +11 -11
  162. package/Firing/FireTransformCalculator.cs +113 -113
  163. package/Firing/FireTransformCalculator.cs.meta +11 -11
  164. package/Firing/FireTransformCalculatorBase.cs +22 -22
  165. package/Firing/FireTransformCalculatorBase.cs.meta +11 -11
  166. package/Firing/FireTruthAnimationBase.cs +22 -22
  167. package/Firing/FireTruthAnimationBase.cs.meta +11 -11
  168. package/Firing/FiredBulletHandler.cs +94 -94
  169. package/Firing/FiredBulletHandler.cs.meta +11 -11
  170. package/Firing/FiredTruthHandler.cs +102 -102
  171. package/Firing/FiredTruthHandler.cs.meta +11 -11
  172. package/Firing/IFireBulletUI.cs +14 -14
  173. package/Firing/IFireBulletUI.cs.meta +11 -11
  174. package/Firing/IFireBulletUIEvent.cs +16 -16
  175. package/Firing/IFireBulletUIEvent.cs.meta +11 -11
  176. package/Firing/IReloadBulletUI.cs +14 -14
  177. package/Firing/IReloadBulletUI.cs.meta +11 -11
  178. package/Firing/ReloadBulletUIHandler.cs +229 -229
  179. package/Firing/ReloadBulletUIHandler.cs.meta +11 -11
  180. package/Firing/TiltCalculator.cs +130 -130
  181. package/Firing/TiltCalculator.cs.meta +11 -11
  182. package/Firing/TiltCalculatorBase.cs +17 -17
  183. package/Firing/TiltCalculatorBase.cs.meta +11 -11
  184. package/Firing.meta +8 -8
  185. package/GradientOverrideModifier.cs +31 -31
  186. package/GradientOverrideModifier.cs.meta +11 -11
  187. package/HittableModifierBase.cs +10 -10
  188. package/HittableModifierBase.cs.meta +11 -11
  189. package/IBulletEvaluatorManager.cs +42 -42
  190. package/IBulletEvaluatorManager.cs.meta +11 -11
  191. package/IBulletSendable.cs +17 -17
  192. package/IBulletSendable.cs.meta +11 -11
  193. package/IDebateConverter.cs +14 -14
  194. package/IDebateConverter.cs.meta +11 -11
  195. package/IDebateScanner.cs +14 -14
  196. package/IDebateScanner.cs.meta +11 -11
  197. package/IDebateSequence.cs +21 -21
  198. package/IDebateSequence.cs.meta +11 -11
  199. package/IDebateUIVisibility.cs +9 -9
  200. package/IDebateUIVisibility.cs.meta +11 -11
  201. package/IGradientOverride.cs +14 -14
  202. package/IGradientOverride.cs.meta +11 -11
  203. package/IMistakeModifier.cs +14 -14
  204. package/IMistakeModifier.cs.meta +11 -11
  205. package/IPhraseAnimationArchitecture.cs +21 -21
  206. package/IPhraseAnimationArchitecture.cs.meta +11 -11
  207. package/IPhraseAnimationComponent.cs +14 -14
  208. package/IPhraseAnimationComponent.cs.meta +11 -11
  209. package/IPhraseHandlerComponent.cs +21 -21
  210. package/IPhraseHandlerComponent.cs.meta +11 -11
  211. package/IPhraseHitListener.cs +14 -14
  212. package/IPhraseHitListener.cs.meta +11 -11
  213. package/IPhraseHittable.cs +22 -22
  214. package/IPhraseHittable.cs.meta +11 -11
  215. package/IPhraseModifier.cs +9 -9
  216. package/IPhraseModifier.cs.meta +11 -11
  217. package/IPhraseResetter.cs +14 -14
  218. package/IPhraseResetter.cs.meta +11 -11
  219. package/IPhraseRetriever.cs +16 -16
  220. package/IPhraseRetriever.cs.meta +1 -1
  221. package/IPhraseShatterListener.cs +13 -13
  222. package/IPhraseShatterListener.cs.meta +11 -11
  223. package/IPhraseShatterable.cs +29 -29
  224. package/IPhraseShatterable.cs.meta +11 -11
  225. package/ITextByArray.cs +42 -42
  226. package/ITextByArray.cs.meta +11 -11
  227. package/InputModifier.cs +59 -59
  228. package/InputModifier.cs.meta +11 -11
  229. package/InputModifierType.cs +85 -85
  230. package/InputModifierType.cs.meta +11 -11
  231. package/Managers/DebateContainsPhrasesWithModifierType.cs +37 -37
  232. package/Managers/DebateContainsPhrasesWithModifierType.cs.meta +1 -1
  233. package/Managers/DebateGroupManagerBase.cs +137 -137
  234. package/Managers/DebateGroupManagerBase.cs.meta +11 -11
  235. package/Managers/DebateLineManager.cs +156 -156
  236. package/Managers/DebateLineManager.cs.meta +11 -11
  237. package/Managers/DebateManager.cs +102 -102
  238. package/Managers/DebateManager.cs.meta +11 -11
  239. package/Managers/DebateManagerBase.cs +292 -292
  240. package/Managers/DebateManagerBase.cs.meta +11 -11
  241. package/Managers/DebatePanelManager.cs +51 -51
  242. package/Managers/DebatePanelManager.cs.meta +11 -11
  243. package/Managers/IDebateGroupManager.cs +35 -35
  244. package/Managers/IDebateGroupManager.cs.meta +11 -11
  245. package/Managers/IDebateLineManager.cs +31 -31
  246. package/Managers/IDebateLineManager.cs.meta +11 -11
  247. package/Managers/IPanelManager.cs +16 -16
  248. package/Managers/IPanelManager.cs.meta +11 -11
  249. package/Managers/IPhraseManager.cs +29 -29
  250. package/Managers/IPhraseManager.cs.meta +11 -11
  251. package/Managers/IPhraseResetManager.cs +14 -14
  252. package/Managers/IPhraseResetManager.cs.meta +11 -11
  253. package/Managers/PhraseCameraOnReset.cs +37 -37
  254. package/Managers/PhraseCameraOnReset.cs.meta +11 -11
  255. package/Managers/PhraseManager.cs +89 -89
  256. package/Managers/PhraseManager.cs.meta +11 -11
  257. package/Managers/PhraseManagerBase.cs +54 -54
  258. package/Managers/PhraseManagerBase.cs.meta +11 -11
  259. package/Managers/PhraseResetManager.cs +95 -95
  260. package/Managers/PhraseResetManager.cs.meta +11 -11
  261. package/Managers/WhiteNoiseManager.cs +33 -33
  262. package/Managers/WhiteNoiseManager.cs.meta +11 -11
  263. package/Managers.meta +8 -8
  264. package/Mechanics/ChildIndexOffsetter.cs +50 -50
  265. package/Mechanics/ChildIndexOffsetter.cs.meta +11 -11
  266. package/Mechanics/DebateVolumeManager.cs +106 -106
  267. package/Mechanics/DebateVolumeManager.cs.meta +11 -11
  268. package/Mechanics/FastHandler.cs +48 -48
  269. package/Mechanics/FastHandler.cs.meta +11 -11
  270. package/Mechanics/IBulletCycleUI.cs +19 -19
  271. package/Mechanics/IBulletCycleUI.cs.meta +11 -11
  272. package/Mechanics/IBulletSwapperUI.cs +16 -16
  273. package/Mechanics/IBulletSwapperUI.cs.meta +11 -11
  274. package/Mechanics/ICycleListener.cs +15 -15
  275. package/Mechanics/ICycleListener.cs.meta +11 -11
  276. package/Mechanics/IPanelCounter.cs +15 -15
  277. package/Mechanics/IPanelCounter.cs.meta +11 -11
  278. package/Mechanics/IPanelLineListener.cs +16 -16
  279. package/Mechanics/IPanelLineListener.cs.meta +11 -11
  280. package/Mechanics/IPanelSendable.cs +15 -15
  281. package/Mechanics/IPanelSendable.cs.meta +11 -11
  282. package/Mechanics/IPanelsResolvedListener.cs +13 -13
  283. package/Mechanics/IPanelsResolvedListener.cs.meta +11 -11
  284. package/Mechanics/IPanelsStoppedListener.cs +13 -13
  285. package/Mechanics/IPanelsStoppedListener.cs.meta +11 -11
  286. package/Mechanics/IReloadResolverRoutine.cs +15 -15
  287. package/Mechanics/IReloadResolverRoutine.cs.meta +11 -11
  288. package/Mechanics/SlowHandler.cs +145 -145
  289. package/Mechanics/SlowHandler.cs.meta +11 -11
  290. package/Mechanics/SpeedHandlerBase.cs +278 -278
  291. package/Mechanics/SpeedHandlerBase.cs.meta +11 -11
  292. package/Mechanics.meta +8 -8
  293. package/Panel.cs +61 -61
  294. package/Panel.cs.meta +11 -11
  295. package/PartlyHitModifier.cs +78 -78
  296. package/PartlyHitModifier.cs.meta +11 -11
  297. package/Phrase.cs +69 -69
  298. package/Phrase.cs.meta +11 -11
  299. package/PhraseBase.cs +164 -164
  300. package/PhraseBase.cs.meta +11 -11
  301. package/PhraseHandling/IHitBoxOverride.cs +19 -19
  302. package/PhraseHandling/IHitBoxOverride.cs.meta +11 -11
  303. package/PhraseHandling/LineTextExtension.cs +85 -85
  304. package/PhraseHandling/LineTextExtension.cs.meta +11 -11
  305. package/PhraseHandling/PartlyHitHandler.cs +299 -299
  306. package/PhraseHandling/PartlyHitHandler.cs.meta +11 -11
  307. package/PhraseHandling/PhraseGradientHandler.cs +146 -146
  308. package/PhraseHandling/PhraseGradientHandler.cs.meta +11 -11
  309. package/PhraseHandling/PhraseHitboxHandler.cs +124 -124
  310. package/PhraseHandling/PhraseHitboxHandler.cs.meta +11 -11
  311. package/PhraseHandling/PhraseText.cs +41 -41
  312. package/PhraseHandling/PhraseText.cs.meta +11 -11
  313. package/PhraseHandling/PhraseTextComponentBase.cs +52 -52
  314. package/PhraseHandling/PhraseTextComponentBase.cs.meta +11 -11
  315. package/PhraseHandling/PhraseTextHandlerBase.cs +85 -85
  316. package/PhraseHandling/PhraseTextHandlerBase.cs.meta +11 -11
  317. package/PhraseHandling/ShatterablePhraseText.cs +123 -123
  318. package/PhraseHandling/ShatterablePhraseText.cs.meta +11 -11
  319. package/PhraseHandling/WhiteNoiseText.cs +22 -22
  320. package/PhraseHandling/WhiteNoiseText.cs.meta +11 -11
  321. package/PhraseHandling.meta +8 -8
  322. package/PhraseModifierBase.cs +20 -20
  323. package/PhraseModifierBase.cs.meta +11 -11
  324. package/PhraseTextBase.cs +68 -68
  325. package/PhraseTextBase.cs.meta +11 -11
  326. package/RailTextUpdater.cs +87 -87
  327. package/RailTextUpdater.cs.meta +1 -1
  328. package/{Samples → Samples~}/Absorbable.asset +14 -14
  329. package/{Samples → Samples~}/Absorbable.asset.meta +8 -8
  330. package/{Samples → Samples~}/Absorbing.asset +21 -21
  331. package/{Samples → Samples~}/Absorbing.asset.meta +8 -8
  332. package/{Samples → Samples~}/BulletEndPositionOffset.asset +25 -25
  333. package/{Samples → Samples~}/BulletEndPositionOffset.asset.meta +8 -8
  334. package/{Samples → Samples~}/BulletFired.asset +21 -21
  335. package/{Samples → Samples~}/BulletFired.asset.meta +8 -8
  336. package/{Samples → Samples~}/BulletRestPosition.asset +25 -25
  337. package/{Samples → Samples~}/BulletRestPosition.asset.meta +8 -8
  338. package/{Samples → Samples~}/BulletText.asset +21 -21
  339. package/{Samples → Samples~}/BulletText.asset.meta +8 -8
  340. package/{Samples → Samples~}/Bullet_Evaluator_Manager_Shell.prefab +75 -75
  341. package/{Samples → Samples~}/Bullet_Evaluator_Manager_Shell.prefab.meta +7 -7
  342. package/{Samples → Samples~}/Bullet_Evaluator_Manager_Template.prefab +378 -378
  343. package/{Samples → Samples~}/Bullet_Evaluator_Manager_Template.prefab.meta +7 -7
  344. package/{Samples → Samples~}/Bullet_Firer.prefab +149 -149
  345. package/{Samples → Samples~}/Bullet_Firer.prefab.meta +7 -7
  346. package/{Samples → Samples~}/Bullet_Indicator_ETemplate.prefab +78 -78
  347. package/{Samples → Samples~}/Bullet_Indicator_ETemplate.prefab.meta +7 -7
  348. package/{Samples → Samples~}/Bullet_Indicators_Shell.prefab +194 -194
  349. package/{Samples → Samples~}/Bullet_Indicators_Shell.prefab.meta +7 -7
  350. package/{Samples → Samples~}/Bullet_Indicators_Template.prefab +948 -948
  351. package/{Samples → Samples~}/Bullet_Indicators_Template.prefab.meta +7 -7
  352. package/{Samples → Samples~}/Bullet_Mode_Updater.prefab +56 -56
  353. package/{Samples → Samples~}/Bullet_Mode_Updater.prefab.meta +7 -7
  354. package/{Samples → Samples~}/Bullet_Silencer.prefab +92 -92
  355. package/{Samples → Samples~}/Bullet_Silencer.prefab.meta +7 -7
  356. package/{Samples → Samples~}/Bullet_UI_ETemplate.prefab +125 -125
  357. package/{Samples → Samples~}/Bullet_UI_ETemplate.prefab.meta +7 -7
  358. package/{Samples → Samples~}/Bullet_UI_Shell.prefab +533 -533
  359. package/{Samples → Samples~}/Bullet_UI_Shell.prefab.meta +7 -7
  360. package/{Samples → Samples~}/CanCycle.asset +21 -21
  361. package/{Samples → Samples~}/CanCycle.asset.meta +8 -8
  362. package/{Samples → Samples~}/CanFire.asset +21 -21
  363. package/{Samples → Samples~}/CanFire.asset.meta +8 -8
  364. package/{Samples → Samples~}/Check_Mode_Bullet_Hit.prefab +142 -142
  365. package/{Samples → Samples~}/Check_Mode_Bullet_Hit.prefab.meta +7 -7
  366. package/{Samples → Samples~}/Counter_Canvas_ETemplate.prefab +144 -144
  367. package/{Samples → Samples~}/Counter_Canvas_ETemplate.prefab.meta +7 -7
  368. package/{Samples → Samples~}/Counter_Handler_Shell.prefab +49 -49
  369. package/{Samples → Samples~}/Counter_Handler_Shell.prefab.meta +7 -7
  370. package/{Samples → Samples~}/Counter_Handler_Template.prefab +928 -928
  371. package/{Samples → Samples~}/Counter_Handler_Template.prefab.meta +7 -7
  372. package/{Samples → Samples~}/Create_Mode_Bullet_SFX.prefab +78 -78
  373. package/{Samples → Samples~}/Create_Mode_Bullet_SFX.prefab.meta +7 -7
  374. package/{Samples → Samples~}/CurrentBulletIndex.asset +21 -21
  375. package/{Samples → Samples~}/CurrentBulletIndex.asset.meta +8 -8
  376. package/{Samples → Samples~}/CyclePass.asset +21 -21
  377. package/{Samples → Samples~}/CyclePass.asset.meta +8 -8
  378. package/{Samples → Samples~}/Cycle_Bullet_ETemplate.prefab +287 -287
  379. package/{Samples → Samples~}/Cycle_Bullet_ETemplate.prefab.meta +7 -7
  380. package/{Samples → Samples~}/Cycle_Track_Handler.prefab +645 -645
  381. package/{Samples → Samples~}/Cycle_Track_Handler.prefab.meta +7 -7
  382. package/{Samples → Samples~}/Cycle_UI_Canvas_Shell.prefab +238 -238
  383. package/{Samples → Samples~}/Cycle_UI_Canvas_Shell.prefab.meta +7 -7
  384. package/{Samples → Samples~}/Cycle_UI_Canvas_Template.prefab +364 -364
  385. package/{Samples → Samples~}/Cycle_UI_Canvas_Template.prefab.meta +7 -7
  386. package/{Samples → Samples~}/Debate_Line_Manager.prefab +49 -49
  387. package/{Samples → Samples~}/Debate_Line_Manager.prefab.meta +7 -7
  388. package/{Samples → Samples~}/Debate_Line_Processes.prefab +513 -513
  389. package/{Samples → Samples~}/Debate_Line_Processes.prefab.meta +7 -7
  390. package/{Samples → Samples~}/Debate_Panel_Manager.prefab +47 -47
  391. package/{Samples → Samples~}/Debate_Panel_Manager.prefab.meta +7 -7
  392. package/{Samples → Samples~}/Debate_Truth_Bullet_Menu_Shell.prefab +55 -55
  393. package/{Samples → Samples~}/Debate_Truth_Bullet_Menu_Shell.prefab.meta +7 -7
  394. package/{Samples → Samples~}/Debate_Truth_Bullet_Menu_Template.prefab +213 -213
  395. package/{Samples → Samples~}/Debate_Truth_Bullet_Menu_Template.prefab.meta +7 -7
  396. package/{Samples → Samples~}/Debate_Volume_Manager.prefab +56 -56
  397. package/{Samples → Samples~}/Debate_Volume_Manager.prefab.meta +7 -7
  398. package/{Samples → Samples~}/DisplayEmpathyMode.asset +15 -15
  399. package/{Samples → Samples~}/DisplayEmpathyMode.asset.meta +8 -8
  400. package/{Samples → Samples~}/Empathy_Mechanic.prefab +224 -224
  401. package/{Samples → Samples~}/Empathy_Mechanic.prefab.meta +7 -7
  402. package/{Samples → Samples~}/EndEmpathyMode.asset +15 -15
  403. package/{Samples → Samples~}/EndEmpathyMode.asset.meta +8 -8
  404. package/{Samples → Samples~}/Fast_Handler_ETemplate.prefab +80 -80
  405. package/{Samples → Samples~}/Fast_Handler_ETemplate.prefab.meta +7 -7
  406. package/{Samples → Samples~}/FireBulletCameraEnabled.asset +21 -21
  407. package/{Samples → Samples~}/FireBulletCameraEnabled.asset.meta +8 -8
  408. package/{Samples → Samples~}/Fire_Bullet_Camera.prefab +144 -144
  409. package/{Samples → Samples~}/Fire_Bullet_Camera.prefab.meta +7 -7
  410. package/{Samples → Samples~}/Fire_Bullet_Condition.prefab +66 -66
  411. package/{Samples → Samples~}/Fire_Bullet_Condition.prefab.meta +7 -7
  412. package/{Samples → Samples~}/Fire_Bullet_Text_ETemplate.prefab +549 -549
  413. package/{Samples → Samples~}/Fire_Bullet_Text_ETemplate.prefab.meta +7 -7
  414. package/{Samples → Samples~}/Fire_Bullet_UI_Handler_Shell.prefab +151 -151
  415. package/{Samples → Samples~}/Fire_Bullet_UI_Handler_Shell.prefab.meta +7 -7
  416. package/{Samples → Samples~}/Fire_Bullet_UI_Handler_Template.prefab +272 -272
  417. package/{Samples → Samples~}/Fire_Bullet_UI_Handler_Template.prefab.meta +7 -7
  418. package/{Samples → Samples~}/Fired_Bullet_Handler_Shell.prefab +50 -50
  419. package/{Samples → Samples~}/Fired_Bullet_Handler_Shell.prefab.meta +7 -7
  420. package/{Samples → Samples~}/Fired_Bullet_Handler_Template.prefab +293 -293
  421. package/{Samples → Samples~}/Fired_Bullet_Handler_Template.prefab.meta +7 -7
  422. package/{Samples → Samples~}/Hittable.asset +15 -15
  423. package/{Samples → Samples~}/Hittable.asset.meta +8 -8
  424. package/{Samples → Samples~}/InCycle.asset +21 -21
  425. package/{Samples → Samples~}/InCycle.asset.meta +8 -8
  426. package/{Samples → Samples~}/InDebate.asset +21 -21
  427. package/{Samples → Samples~}/InDebate.asset.meta +8 -8
  428. package/{Samples → Samples~}/InEmpathy.asset +21 -21
  429. package/{Samples → Samples~}/InEmpathy.asset.meta +8 -8
  430. package/{Samples → Samples~}/InLieMode.asset +21 -21
  431. package/{Samples → Samples~}/InLieMode.asset.meta +8 -8
  432. package/{Samples → Samples~}/IsChangingSpeed.asset +21 -21
  433. package/{Samples → Samples~}/IsChangingSpeed.asset.meta +8 -8
  434. package/{Samples → Samples~}/IsReloading.asset +21 -21
  435. package/{Samples → Samples~}/IsReloading.asset.meta +8 -8
  436. package/{Samples → Samples~}/OnDebateIntroResolved.asset +15 -15
  437. package/{Samples → Samples~}/OnDebateIntroResolved.asset.meta +8 -8
  438. package/{Samples → Samples~}/OnPhraseShot.asset +15 -15
  439. package/{Samples → Samples~}/OnPhraseShot.asset.meta +8 -8
  440. package/{Samples → Samples~}/OnReloadStarted.asset +15 -15
  441. package/{Samples → Samples~}/OnReloadStarted.asset.meta +8 -8
  442. package/{Samples → Samples~}/On_End_Bullet_Mode.prefab +103 -103
  443. package/{Samples → Samples~}/On_End_Bullet_Mode.prefab.meta +7 -7
  444. package/{Samples → Samples~}/On_Start_Bullet_Mode.prefab +76 -76
  445. package/{Samples → Samples~}/On_Start_Bullet_Mode.prefab.meta +7 -7
  446. package/{Samples → Samples~}/Panel_Counter_Indicator_Shell.prefab +84 -84
  447. package/{Samples → Samples~}/Panel_Counter_Indicator_Shell.prefab.meta +7 -7
  448. package/{Samples → Samples~}/Panel_Counter_Indicator_Template.prefab +268 -268
  449. package/{Samples → Samples~}/Panel_Counter_Indicator_Template.prefab.meta +7 -7
  450. package/{Samples → Samples~}/Panel_Counter_Speaker_Shell.prefab +59 -59
  451. package/{Samples → Samples~}/Panel_Counter_Speaker_Shell.prefab.meta +7 -7
  452. package/{Samples → Samples~}/Panel_Counter_Speaker_Template.prefab +545 -545
  453. package/{Samples → Samples~}/Panel_Counter_Speaker_Template.prefab.meta +7 -7
  454. package/{Samples → Samples~}/Panel_Icon_ETemplate.prefab +78 -78
  455. package/{Samples → Samples~}/Panel_Icon_ETemplate.prefab.meta +7 -7
  456. package/{Samples → Samples~}/PhrasePresetDatabase.preset +533 -533
  457. package/{Samples → Samples~}/PhrasePresetDatabase.preset.meta +8 -8
  458. package/{Samples → Samples~}/Phrase_Is_Absorbable_Condition.prefab +57 -57
  459. package/{Samples → Samples~}/Phrase_Is_Absorbable_Condition.prefab.meta +7 -7
  460. package/{Samples → Samples~}/Phrase_Manager_Shell.prefab +47 -47
  461. package/{Samples → Samples~}/Phrase_Manager_Shell.prefab.meta +7 -7
  462. package/{Samples → Samples~}/Phrase_Manager_Template.prefab +1544 -1544
  463. package/{Samples → Samples~}/Phrase_Manager_Template.prefab.meta +7 -7
  464. package/{Samples → Samples~}/Phrase_Reset_Manager.prefab +47 -47
  465. package/{Samples → Samples~}/Phrase_Reset_Manager.prefab.meta +7 -7
  466. package/{Samples → Samples~}/Phrase_Shell.prefab +50 -50
  467. package/{Samples → Samples~}/Phrase_Shell.prefab.meta +7 -7
  468. package/{Samples → Samples~}/Phrase_Template.prefab +271 -271
  469. package/{Samples → Samples~}/Phrase_Template.prefab.meta +7 -7
  470. package/{Samples → Samples~}/Phrase_Text.prefab +125 -125
  471. package/{Samples → Samples~}/Phrase_Text.prefab.meta +7 -7
  472. package/{Samples → Samples~}/Phrase_Text_Shell.prefab +355 -355
  473. package/{Samples → Samples~}/Phrase_Text_Shell.prefab.meta +7 -7
  474. package/{Samples → Samples~}/Phrase_Text_White_Noise.prefab +201 -201
  475. package/{Samples → Samples~}/Phrase_Text_White_Noise.prefab.meta +7 -7
  476. package/{Samples → Samples~}/Reset_Mode_On_Reload.prefab +104 -104
  477. package/{Samples → Samples~}/Reset_Mode_On_Reload.prefab.meta +7 -7
  478. package/{Samples → Samples~}/SetBulletText.asset +15 -15
  479. package/{Samples → Samples~}/SetBulletText.asset.meta +8 -8
  480. package/{Samples → Samples~}/Set_Controls_On_Bullet_Mode.prefab +106 -106
  481. package/{Samples → Samples~}/Set_Controls_On_Bullet_Mode.prefab.meta +7 -7
  482. package/{Samples → Samples~}/Silencable.asset +14 -14
  483. package/{Samples → Samples~}/Silencable.asset.meta +8 -8
  484. package/{Samples → Samples~}/Slow_Handler_ETemplate.prefab +82 -82
  485. package/{Samples → Samples~}/Slow_Handler_ETemplate.prefab.meta +7 -7
  486. package/{Samples → Samples~}/StartEmpathyMode.asset +15 -15
  487. package/{Samples → Samples~}/StartEmpathyMode.asset.meta +8 -8
  488. package/{Samples → Samples~}/White_Noise_Manager_Shell.prefab +47 -47
  489. package/{Samples → Samples~}/White_Noise_Manager_Shell.prefab.meta +7 -7
  490. package/{Samples → Samples~}/White_Noise_Manager_Template.prefab +856 -856
  491. package/{Samples → Samples~}/White_Noise_Manager_Template.prefab.meta +7 -7
  492. package/{Samples → Samples~}/White_Noise_Template.prefab +239 -239
  493. package/{Samples → Samples~}/White_Noise_Template.prefab.meta +7 -7
  494. package/UI/BulletSwapperVisibility.cs +156 -156
  495. package/UI/BulletSwapperVisibility.cs.meta +11 -11
  496. package/UI/DebateVisibilityUI.cs +30 -30
  497. package/UI/DebateVisibilityUI.cs.meta +11 -11
  498. package/UI/PanelCounterBase.cs +78 -78
  499. package/UI/PanelCounterBase.cs.meta +11 -11
  500. package/UI/PanelCounterIndicator.cs +111 -111
  501. package/UI/PanelCounterIndicator.cs.meta +11 -11
  502. package/UI/PanelCounterSpeaker.cs +102 -102
  503. package/UI/PanelCounterSpeaker.cs.meta +11 -11
  504. package/UI/PhraseHasModifierType.cs +26 -26
  505. package/UI/PhraseHasModifierType.cs.meta +11 -11
  506. package/UI/PhraseMatchesInputType.cs +34 -34
  507. package/UI/PhraseMatchesInputType.cs.meta +1 -1
  508. package/UI.meta +8 -8
  509. package/WhiteNoise.cs +10 -10
  510. package/WhiteNoise.cs.meta +11 -11
  511. package/package.json +49 -44
  512. package/package.json.meta +7 -7
  513. package/Samples.meta +0 -8
@@ -1,315 +1,315 @@
1
- //Author: Benjamin "Sweden" Jillson : Discord: sweden_gaming For Project Eden's Garden
2
- using DREditor.Investigations;
3
- using DREditor.UIHandling;
4
- using System.Collections;
5
- using System.Collections.Generic;
6
- using TMPro;
7
- using UnityEngine;
8
- using UnityEngine.Events;
9
-
10
- namespace DREditor.Minigames.Debates.Cycling
11
- {
12
- /// <summary>
13
- ///
14
- /// </summary>
15
- [ClassHeader(nameof(UIVisibilityComponent) + ", " + nameof(IUIVisibility) + ", " + nameof(IBulletSendable) +
16
- "\n\n")]
17
- public class IntroBulletCycleHandler : UIVisibilityComponent, IBulletSendable
18
- {
19
- /// <summary>
20
- ///
21
- /// </summary>
22
- [Tooltip("")]
23
- [SerializeField] protected GameObject cycleBulletPrefab;
24
-
25
- /// <summary>
26
- ///
27
- /// </summary>
28
- [Tooltip("")]
29
- [SerializeField] protected UIVisibilityComponent track;
30
-
31
- /// <summary>
32
- ///
33
- /// </summary>
34
- [Tooltip("")]
35
- [SerializeField] protected Transform spawnTransform;
36
-
37
- /// <summary>
38
- ///
39
- /// </summary>
40
- [Tooltip("")]
41
- [SerializeField] protected UIVisibilityComponent visibilityComponent;
42
-
43
-
44
- /// <summary>
45
- ///
46
- /// </summary>
47
- [Header("")]
48
- [Divider]
49
- [Tooltip("")]
50
- [SerializeField] protected bool forcePrefabScaleToOne = true;
51
-
52
- /// <summary>
53
- ///
54
- /// </summary>
55
- [Tooltip("")]
56
- [SerializeField] protected float postIntroBufferDuration = 1;
57
-
58
-
59
- [Header("")]
60
- [SerializeField] protected UnityEvent OnLoadBullet;
61
-
62
-
63
- /// <summary>
64
- ///
65
- /// </summary>
66
- [Header("")]
67
- [Divider]
68
- [Tooltip("")]
69
- [SerializeField] protected List<TruthBullet> truthBullets = new();
70
-
71
- /// <summary>
72
- ///
73
- /// </summary>
74
- [Tooltip("")]
75
- [SerializeField] protected List<Transform> spawnedBullets = new();
76
-
77
-
78
- /// <summary>
79
- ///
80
- /// </summary>
81
- protected bool animating = false;
82
-
83
- /// <summary>
84
- ///
85
- /// </summary>
86
- protected bool debugging = false;
87
-
88
- /// <summary>
89
- ///
90
- /// </summary>
91
- protected Coroutine activeIntroCoroutine;
92
-
93
- /// <summary>
94
- ///
95
- /// </summary>
96
- protected ICycleTracker cycleTracker;
97
-
98
-
99
- /// <summary>
100
- ///
101
- /// </summary>
102
- private const float FallbackSpawnMultiplier = 1.5f;
103
-
104
- /// <summary>
105
- ///
106
- /// </summary>
107
- private const float FallbackSpawnDivisor = 2;
108
-
109
-
110
- protected virtual void Awake()
111
- {
112
- if (track is ICycleTracker trackToCycle)
113
- cycleTracker = trackToCycle;
114
- else
115
- UnityEngine.Debug.LogWarning($"ANALYSIS: Field {nameof(track)} on {gameObject.name} " +
116
- $"does not inherit expected type {nameof(ICycleTracker)} and therefore may not work as intended." +
117
- $"\nPROPOSAL: Assign a component inheriting type {nameof(ICycleTracker)}.");
118
- }
119
-
120
-
121
- /// <inheritdoc/>
122
- protected override void ShowUI()
123
- {
124
- if (animating)
125
- {
126
- UnityEngine.Debug.LogWarning("ALERT: Already animating, ignoring Show() call.");
127
-
128
- return;
129
- }
130
-
131
- debugging = false;
132
-
133
- activeIntroCoroutine = StartCoroutine(AnimateIntro());
134
- }
135
-
136
- /// <inheritdoc/>
137
- protected override void HideUI()
138
- {
139
- if (animating && activeIntroCoroutine != null)
140
- {
141
- StopCoroutine(activeIntroCoroutine);
142
-
143
- activeIntroCoroutine = null;
144
-
145
- animating = false;
146
- }
147
-
148
- StartCoroutine(HideRoutine());
149
- }
150
-
151
- /// <inheritdoc/>
152
- protected override IEnumerator WaitForUIToComplete()
153
- {
154
- if (animating)
155
- yield return new WaitUntil(() => !animating);
156
- else
157
- yield return visibilityComponent.WaitForChangeToComplete();
158
- }
159
-
160
- /// <summary>
161
- ///
162
- /// </summary>
163
- protected virtual IEnumerator AnimateIntro()
164
- {
165
- if (track == null)
166
- {
167
- UnityEngine.Debug.LogError("ALERT: Track handler not assigned, abandoning animation.");
168
-
169
- yield break;
170
- }
171
-
172
- animating = true;
173
-
174
- yield return ShowRoutine();
175
-
176
- yield return IntroCycle();
177
-
178
- yield return new WaitForSeconds(postIntroBufferDuration);
179
-
180
- yield return HideRoutine();
181
-
182
- animating = false;
183
-
184
- yield return null;
185
-
186
- if (!debugging)
187
- Destroy(gameObject);
188
- }
189
-
190
- /// <summary>
191
- ///
192
- /// </summary>
193
- protected virtual IEnumerator ShowRoutine()
194
- {
195
- if (visibilityComponent != null)
196
- yield return visibilityComponent.ShowTillComplete();
197
- }
198
-
199
- /// <summary>
200
- ///
201
- /// </summary>
202
- protected virtual IEnumerator IntroCycle()
203
- {
204
- for (int i = 0; i < spawnedBullets.Count; i++)
205
- {
206
- float wait = (float)(cycleTracker?.MoveToFirstPosition(spawnedBullets[i].transform));
207
-
208
- OnLoadBullet?.Invoke();
209
-
210
- cycleTracker?.MoveAll(true);
211
-
212
- yield return new WaitForSeconds(wait);
213
- }
214
-
215
- cycleTracker?.MoveAll(true);
216
- }
217
-
218
- /// <summary>
219
- ///
220
- /// </summary>
221
- protected virtual IEnumerator HideRoutine()
222
- {
223
- if (visibilityComponent != null)
224
- yield return visibilityComponent.HideTillComplete();
225
- }
226
-
227
-
228
- /// <inheritdoc/>
229
- public virtual void OnSentBullets(List<TruthBullet> bullets)
230
- {
231
- truthBullets = bullets;
232
-
233
- SpawnBullets(bullets);
234
- }
235
-
236
- /// <summary>
237
- ///
238
- /// </summary>
239
- /// <param name="bullets"></param>
240
- protected virtual void SpawnBullets(List<TruthBullet> bullets)
241
- {
242
- if (cycleBulletPrefab == null)
243
- {
244
- UnityEngine.Debug.LogError("ALERT: There is no " + nameof(cycleBulletPrefab) + " assigned!" +
245
- "\nAbandoning spawning bullets.");
246
-
247
- return;
248
- }
249
-
250
- foreach (TruthBullet bullet in bullets)
251
- {
252
- var spawn = Instantiate(cycleBulletPrefab, GetSpawnPosition(), cycleBulletPrefab.transform.rotation);
253
-
254
- spawn.transform.SetParent(transform, true);
255
-
256
- if (forcePrefabScaleToOne)
257
- spawn.transform.localScale = Vector3.one;
258
-
259
- if (spawn.GetComponentInChildren<TMP_Text>() is TMP_Text bulletText)
260
- bulletText.SetText(bullet.DisplayName);
261
-
262
- spawnedBullets.Add(spawn.transform);
263
- }
264
- }
265
-
266
- /// <summary>
267
- ///
268
- /// </summary>
269
- /// <returns></returns>
270
- protected virtual Vector3 GetSpawnPosition()
271
- => spawnTransform != null ?
272
- spawnTransform.localPosition : new(Screen.width * FallbackSpawnMultiplier, Screen.height / FallbackSpawnDivisor);
273
-
274
-
275
- /// <summary>
276
- ///
277
- /// </summary>
278
- [BehaviourButton]
279
- public void DebugTestAnimation()
280
- {
281
- if (animating)
282
- {
283
- UnityEngine.Debug.LogWarning("REPORT: You must wait for the already playing animation to finish.");
284
-
285
- return;
286
- }
287
-
288
- debugging = true;
289
-
290
- if (spawnedBullets.Count > 0)
291
- DestroySpawnedBullets();
292
-
293
- if (truthBullets.Count > 0)
294
- SpawnBullets(truthBullets);
295
- else
296
- UnityEngine.Debug.LogError("ALERT: This Intro is in debug mode yet no Truth Bullets have been assigned." +
297
- "\nPROPOSAL: Assign Truth Bullets in the inspector so that this animation will display properly.");
298
-
299
- StartCoroutine(AnimateIntro());
300
- }
301
-
302
- /// <summary>
303
- ///
304
- /// </summary>
305
- protected virtual void DestroySpawnedBullets()
306
- {
307
- foreach (var bullet in spawnedBullets)
308
- Destroy(bullet.gameObject);
309
-
310
- spawnedBullets.Clear();
311
-
312
- cycleTracker?.ClearTrack();
313
- }
314
- }
1
+ //Author: Benjamin "Sweden" Jillson : Discord: sweden_gaming For Project Eden's Garden
2
+ using DREditor.Investigations;
3
+ using DREditor.UIHandling;
4
+ using System.Collections;
5
+ using System.Collections.Generic;
6
+ using TMPro;
7
+ using UnityEngine;
8
+ using UnityEngine.Events;
9
+
10
+ namespace DREditor.Minigames.Debates.Cycling
11
+ {
12
+ /// <summary>
13
+ ///
14
+ /// </summary>
15
+ [ClassHeader(nameof(UIVisibilityComponent) + ", " + nameof(IUIVisibility) + ", " + nameof(IBulletSendable) +
16
+ "\n\n")]
17
+ public class IntroBulletCycleHandler : UIVisibilityComponent, IBulletSendable
18
+ {
19
+ /// <summary>
20
+ ///
21
+ /// </summary>
22
+ [Tooltip("")]
23
+ [SerializeField] protected GameObject cycleBulletPrefab;
24
+
25
+ /// <summary>
26
+ ///
27
+ /// </summary>
28
+ [Tooltip("")]
29
+ [SerializeField] protected UIVisibilityComponent track;
30
+
31
+ /// <summary>
32
+ ///
33
+ /// </summary>
34
+ [Tooltip("")]
35
+ [SerializeField] protected Transform spawnTransform;
36
+
37
+ /// <summary>
38
+ ///
39
+ /// </summary>
40
+ [Tooltip("")]
41
+ [SerializeField] protected UIVisibilityComponent visibilityComponent;
42
+
43
+
44
+ /// <summary>
45
+ ///
46
+ /// </summary>
47
+ [Header("")]
48
+ [Divider]
49
+ [Tooltip("")]
50
+ [SerializeField] protected bool forcePrefabScaleToOne = true;
51
+
52
+ /// <summary>
53
+ ///
54
+ /// </summary>
55
+ [Tooltip("")]
56
+ [SerializeField] protected float postIntroBufferDuration = 1;
57
+
58
+
59
+ [Header("")]
60
+ [SerializeField] protected UnityEvent OnLoadBullet;
61
+
62
+
63
+ /// <summary>
64
+ ///
65
+ /// </summary>
66
+ [Header("")]
67
+ [Divider]
68
+ [Tooltip("")]
69
+ [SerializeField] protected List<TruthBullet> truthBullets = new();
70
+
71
+ /// <summary>
72
+ ///
73
+ /// </summary>
74
+ [Tooltip("")]
75
+ [SerializeField] protected List<Transform> spawnedBullets = new();
76
+
77
+
78
+ /// <summary>
79
+ ///
80
+ /// </summary>
81
+ protected bool animating = false;
82
+
83
+ /// <summary>
84
+ ///
85
+ /// </summary>
86
+ protected bool debugging = false;
87
+
88
+ /// <summary>
89
+ ///
90
+ /// </summary>
91
+ protected Coroutine activeIntroCoroutine;
92
+
93
+ /// <summary>
94
+ ///
95
+ /// </summary>
96
+ protected ICycleTracker cycleTracker;
97
+
98
+
99
+ /// <summary>
100
+ ///
101
+ /// </summary>
102
+ private const float FallbackSpawnMultiplier = 1.5f;
103
+
104
+ /// <summary>
105
+ ///
106
+ /// </summary>
107
+ private const float FallbackSpawnDivisor = 2;
108
+
109
+
110
+ protected virtual void Awake()
111
+ {
112
+ if (track is ICycleTracker trackToCycle)
113
+ cycleTracker = trackToCycle;
114
+ else
115
+ UnityEngine.Debug.LogWarning($"ANALYSIS: Field {nameof(track)} on {gameObject.name} " +
116
+ $"does not inherit expected type {nameof(ICycleTracker)} and therefore may not work as intended." +
117
+ $"\nPROPOSAL: Assign a component inheriting type {nameof(ICycleTracker)}.");
118
+ }
119
+
120
+
121
+ /// <inheritdoc/>
122
+ protected override void ShowUI()
123
+ {
124
+ if (animating)
125
+ {
126
+ UnityEngine.Debug.LogWarning("ALERT: Already animating, ignoring Show() call.");
127
+
128
+ return;
129
+ }
130
+
131
+ debugging = false;
132
+
133
+ activeIntroCoroutine = StartCoroutine(AnimateIntro());
134
+ }
135
+
136
+ /// <inheritdoc/>
137
+ protected override void HideUI()
138
+ {
139
+ if (animating && activeIntroCoroutine != null)
140
+ {
141
+ StopCoroutine(activeIntroCoroutine);
142
+
143
+ activeIntroCoroutine = null;
144
+
145
+ animating = false;
146
+ }
147
+
148
+ StartCoroutine(HideRoutine());
149
+ }
150
+
151
+ /// <inheritdoc/>
152
+ protected override IEnumerator WaitForUIToComplete()
153
+ {
154
+ if (animating)
155
+ yield return new WaitUntil(() => !animating);
156
+ else
157
+ yield return visibilityComponent.WaitForChangeToComplete();
158
+ }
159
+
160
+ /// <summary>
161
+ ///
162
+ /// </summary>
163
+ protected virtual IEnumerator AnimateIntro()
164
+ {
165
+ if (track == null)
166
+ {
167
+ UnityEngine.Debug.LogError("ALERT: Track handler not assigned, abandoning animation.");
168
+
169
+ yield break;
170
+ }
171
+
172
+ animating = true;
173
+
174
+ yield return ShowRoutine();
175
+
176
+ yield return IntroCycle();
177
+
178
+ yield return new WaitForSeconds(postIntroBufferDuration);
179
+
180
+ yield return HideRoutine();
181
+
182
+ animating = false;
183
+
184
+ yield return null;
185
+
186
+ if (!debugging)
187
+ Destroy(gameObject);
188
+ }
189
+
190
+ /// <summary>
191
+ ///
192
+ /// </summary>
193
+ protected virtual IEnumerator ShowRoutine()
194
+ {
195
+ if (visibilityComponent != null)
196
+ yield return visibilityComponent.ShowTillComplete();
197
+ }
198
+
199
+ /// <summary>
200
+ ///
201
+ /// </summary>
202
+ protected virtual IEnumerator IntroCycle()
203
+ {
204
+ for (int i = 0; i < spawnedBullets.Count; i++)
205
+ {
206
+ float wait = (float)(cycleTracker?.MoveToFirstPosition(spawnedBullets[i].transform));
207
+
208
+ OnLoadBullet?.Invoke();
209
+
210
+ cycleTracker?.MoveAll(true);
211
+
212
+ yield return new WaitForSeconds(wait);
213
+ }
214
+
215
+ cycleTracker?.MoveAll(true);
216
+ }
217
+
218
+ /// <summary>
219
+ ///
220
+ /// </summary>
221
+ protected virtual IEnumerator HideRoutine()
222
+ {
223
+ if (visibilityComponent != null)
224
+ yield return visibilityComponent.HideTillComplete();
225
+ }
226
+
227
+
228
+ /// <inheritdoc/>
229
+ public virtual void OnSentBullets(List<TruthBullet> bullets)
230
+ {
231
+ truthBullets = bullets;
232
+
233
+ SpawnBullets(bullets);
234
+ }
235
+
236
+ /// <summary>
237
+ ///
238
+ /// </summary>
239
+ /// <param name="bullets"></param>
240
+ protected virtual void SpawnBullets(List<TruthBullet> bullets)
241
+ {
242
+ if (cycleBulletPrefab == null)
243
+ {
244
+ UnityEngine.Debug.LogError("ALERT: There is no " + nameof(cycleBulletPrefab) + " assigned!" +
245
+ "\nAbandoning spawning bullets.");
246
+
247
+ return;
248
+ }
249
+
250
+ foreach (TruthBullet bullet in bullets)
251
+ {
252
+ var spawn = Instantiate(cycleBulletPrefab, GetSpawnPosition(), cycleBulletPrefab.transform.rotation);
253
+
254
+ spawn.transform.SetParent(transform, true);
255
+
256
+ if (forcePrefabScaleToOne)
257
+ spawn.transform.localScale = Vector3.one;
258
+
259
+ if (spawn.GetComponentInChildren<TMP_Text>() is TMP_Text bulletText)
260
+ bulletText.SetText(bullet.DisplayName);
261
+
262
+ spawnedBullets.Add(spawn.transform);
263
+ }
264
+ }
265
+
266
+ /// <summary>
267
+ ///
268
+ /// </summary>
269
+ /// <returns></returns>
270
+ protected virtual Vector3 GetSpawnPosition()
271
+ => spawnTransform != null ?
272
+ spawnTransform.localPosition : new(Screen.width * FallbackSpawnMultiplier, Screen.height / FallbackSpawnDivisor);
273
+
274
+
275
+ /// <summary>
276
+ ///
277
+ /// </summary>
278
+ [BehaviourButton]
279
+ public void DebugTestAnimation()
280
+ {
281
+ if (animating)
282
+ {
283
+ UnityEngine.Debug.LogWarning("REPORT: You must wait for the already playing animation to finish.");
284
+
285
+ return;
286
+ }
287
+
288
+ debugging = true;
289
+
290
+ if (spawnedBullets.Count > 0)
291
+ DestroySpawnedBullets();
292
+
293
+ if (truthBullets.Count > 0)
294
+ SpawnBullets(truthBullets);
295
+ else
296
+ UnityEngine.Debug.LogError("ALERT: This Intro is in debug mode yet no Truth Bullets have been assigned." +
297
+ "\nPROPOSAL: Assign Truth Bullets in the inspector so that this animation will display properly.");
298
+
299
+ StartCoroutine(AnimateIntro());
300
+ }
301
+
302
+ /// <summary>
303
+ ///
304
+ /// </summary>
305
+ protected virtual void DestroySpawnedBullets()
306
+ {
307
+ foreach (var bullet in spawnedBullets)
308
+ Destroy(bullet.gameObject);
309
+
310
+ spawnedBullets.Clear();
311
+
312
+ cycleTracker?.ClearTrack();
313
+ }
314
+ }
315
315
  }
@@ -1,11 +1,11 @@
1
- fileFormatVersion: 2
2
- guid: 149e572ad214b9f4490ac303fb815d1d
3
- MonoImporter:
4
- externalObjects: {}
5
- serializedVersion: 2
6
- defaultReferences: []
7
- executionOrder: 0
8
- icon: {instanceID: 0}
9
- userData:
10
- assetBundleName:
11
- assetBundleVariant:
1
+ fileFormatVersion: 2
2
+ guid: 149e572ad214b9f4490ac303fb815d1d
3
+ MonoImporter:
4
+ externalObjects: {}
5
+ serializedVersion: 2
6
+ defaultReferences: []
7
+ executionOrder: 0
8
+ icon: {instanceID: 0}
9
+ userData:
10
+ assetBundleName:
11
+ assetBundleVariant: