From b5aa6fd260cbc5fa6320fb5dcc6e15d865204cb6 Mon Sep 17 00:00:00 2001 From: oldpeper <96619050+oldpeper@users.noreply.github.com> Date: Tue, 22 Oct 2024 10:34:45 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0dotween?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- d2/Assets/Demigiant/DOTween.meta | 8 + d2/Assets/Demigiant/DOTween/DOTween.XML | 2729 +++++++++ d2/Assets/Demigiant/DOTween/DOTween.XML.meta | 7 + d2/Assets/Demigiant/DOTween/DOTween.dll | Bin 0 -> 159744 bytes d2/Assets/Demigiant/DOTween/DOTween.dll.meta | 21 + d2/Assets/Demigiant/DOTween/Editor.meta | 8 + .../DOTween/Editor/DOTweenEditor.XML | 98 + .../DOTween/Editor/DOTweenEditor.XML.meta | 7 + .../DOTween/Editor/DOTweenEditor.dll | Bin 0 -> 54272 bytes .../DOTween/Editor/DOTweenEditor.dll.meta | 21 + .../DOTween/Editor/DOTweenUpgradeManager.XML | 14 + .../Editor/DOTweenUpgradeManager.XML.meta | 7 + .../DOTween/Editor/DOTweenUpgradeManager.dll | Bin 0 -> 10752 bytes .../Editor/DOTweenUpgradeManager.dll.meta | 21 + d2/Assets/Demigiant/DOTween/Editor/Imgs.meta | 8 + .../DOTween/Editor/Imgs/DOTweenIcon.png | Bin 0 -> 1565 bytes .../DOTween/Editor/Imgs/DOTweenIcon.png.meta | 140 + .../Demigiant/DOTween/Editor/Imgs/Footer.png | Bin 0 -> 4409 bytes .../DOTween/Editor/Imgs/Footer.png.meta | 140 + .../DOTween/Editor/Imgs/Footer_dark.png | Bin 0 -> 4429 bytes .../DOTween/Editor/Imgs/Footer_dark.png.meta | 140 + .../Demigiant/DOTween/Editor/Imgs/Header.jpg | Bin 0 -> 22787 bytes .../DOTween/Editor/Imgs/Header.jpg.meta | 140 + d2/Assets/Demigiant/DOTween/Modules.meta | 8 + .../DOTween/Modules/DOTweenModuleAudio.cs | 202 + .../Modules/DOTweenModuleAudio.cs.meta | 11 + .../DOTween/Modules/DOTweenModulePhysics.cs | 216 + .../Modules/DOTweenModulePhysics.cs.meta | 11 + .../DOTween/Modules/DOTweenModulePhysics2D.cs | 107 + .../Modules/DOTweenModulePhysics2D.cs.meta | 11 + .../DOTween/Modules/DOTweenModuleSprite.cs | 93 + .../Modules/DOTweenModuleSprite.cs.meta | 11 + .../DOTween/Modules/DOTweenModuleUI.cs | 609 ++ .../DOTween/Modules/DOTweenModuleUI.cs.meta | 11 + .../Modules/DOTweenModuleUnityVersion.cs | 301 + .../Modules/DOTweenModuleUnityVersion.cs.meta | 11 + .../DOTween/Modules/DOTweenModuleUtils.cs | 155 + .../Modules/DOTweenModuleUtils.cs.meta | 11 + d2/Assets/Demigiant/DOTween/readme.txt | 29 + d2/Assets/Demigiant/DOTween/readme.txt.meta | 7 + d2/Assets/Demigiant/DOTweenPro Examples.meta | 8 + .../DOTweenAnimation_Advanced.unity | 5280 +++++++++++++++++ .../DOTweenAnimation_Advanced.unity.meta | 7 + ...DOTweenAnimation_AdvancedSettings.lighting | 66 + ...enAnimation_AdvancedSettings.lighting.meta | 8 + .../DOTweenAnimation_Basics.unity | 1802 ++++++ .../DOTweenAnimation_Basics.unity.meta | 7 + .../DOTweenAnimation_BasicsSettings.lighting | 66 + ...weenAnimation_BasicsSettings.lighting.meta | 8 + .../DOTweenPro Examples/DOTweenPath.unity | 1611 +++++ .../DOTweenPath.unity.meta | 7 + .../DOTweenPathSettings.lighting | 66 + .../DOTweenPathSettings.lighting.meta | 8 + .../DOTweenPro Examples/Examples Assets.meta | 8 + .../Examples Assets/dotweenpro_logo.png | Bin 0 -> 17098 bytes .../Examples Assets/dotweenpro_logo.png.meta | 140 + d2/Assets/Demigiant/DOTweenPro.meta | 8 + .../Demigiant/DOTweenPro/DOTweenAnimation.cs | 716 +++ .../DOTweenPro/DOTweenAnimation.cs.meta | 11 + d2/Assets/Demigiant/DOTweenPro/DOTweenPro.XML | 62 + .../Demigiant/DOTweenPro/DOTweenPro.XML.meta | 7 + d2/Assets/Demigiant/DOTweenPro/DOTweenPro.dll | Bin 0 -> 15872 bytes .../Demigiant/DOTweenPro/DOTweenPro.dll.meta | 21 + .../DOTweenPro/DOTweenProShortcuts.cs | 90 + .../DOTweenPro/DOTweenProShortcuts.cs.meta | 11 + .../DOTweenPro/DOTweenTextMeshPro.cs | 141 + .../DOTweenPro/DOTweenTextMeshPro.cs.addon | 141 + .../DOTweenTextMeshPro.cs.addon.meta | 7 + .../DOTweenPro/DOTweenTextMeshPro.cs.meta | 11 + d2/Assets/Demigiant/DOTweenPro/DOTweenTk2d.cs | 247 + .../Demigiant/DOTweenPro/DOTweenTk2d.cs.addon | 245 + .../DOTweenPro/DOTweenTk2d.cs.addon.meta | 7 + .../Demigiant/DOTweenPro/DOTweenTk2d.cs.meta | 11 + d2/Assets/Demigiant/DOTweenPro/Editor.meta | 8 + .../Editor/DOTweenAnimationInspector.cs | 745 +++ .../Editor/DOTweenAnimationInspector.cs.meta | 11 + .../Editor/DOTweenPreviewManager.cs | 263 + .../Editor/DOTweenPreviewManager.cs.meta | 11 + .../DOTweenPro/Editor/DOTweenProEditor.XML | 18 + .../Editor/DOTweenProEditor.XML.meta | 7 + .../DOTweenPro/Editor/DOTweenProEditor.dll | Bin 0 -> 33280 bytes .../Editor/DOTweenProEditor.dll.meta | 21 + d2/Assets/Demigiant/DOTweenPro/readme.txt | 35 + .../Demigiant/DOTweenPro/readme.txt.meta | 7 + d2/Assets/Demigiant/DemiLib.meta | 8 + d2/Assets/Demigiant/DemiLib/Core.meta | 8 + d2/Assets/Demigiant/DemiLib/Core/DemiLib.dll | Bin 0 -> 11776 bytes .../Demigiant/DemiLib/Core/DemiLib.dll.meta | 21 + d2/Assets/Demigiant/DemiLib/Core/DemiLib.xml | 200 + .../Demigiant/DemiLib/Core/DemiLib.xml.meta | 7 + d2/Assets/Demigiant/DemiLib/Core/Editor.meta | 8 + .../DemiLib/Core/Editor/DemiEditor.dll | Bin 0 -> 162304 bytes .../DemiLib/Core/Editor/DemiEditor.dll.meta | 21 + .../DemiLib/Core/Editor/DemiEditor.xml | 1836 ++++++ .../DemiLib/Core/Editor/DemiEditor.xml.meta | 7 + .../Demigiant/DemiLib/Core/Editor/Imgs.meta | 8 + .../DemiLib/Core/Editor/Imgs/blackSquare.png | Bin 0 -> 109 bytes .../Core/Editor/Imgs/blackSquare.png.meta | 140 + .../Core/Editor/Imgs/blackSquareAlpha10.png | Bin 0 -> 109 bytes .../Editor/Imgs/blackSquareAlpha10.png.meta | 140 + .../Core/Editor/Imgs/blackSquareAlpha15.png | Bin 0 -> 109 bytes .../Editor/Imgs/blackSquareAlpha15.png.meta | 140 + .../Core/Editor/Imgs/blackSquareAlpha25.png | Bin 0 -> 109 bytes .../Editor/Imgs/blackSquareAlpha25.png.meta | 140 + .../Core/Editor/Imgs/blackSquareAlpha50.png | Bin 0 -> 109 bytes .../Editor/Imgs/blackSquareAlpha50.png.meta | 140 + .../Core/Editor/Imgs/blackSquareAlpha80.png | Bin 0 -> 109 bytes .../Editor/Imgs/blackSquareAlpha80.png.meta | 140 + .../DemiLib/Core/Editor/Imgs/blueSquare.png | Bin 0 -> 106 bytes .../Core/Editor/Imgs/blueSquare.png.meta | 140 + .../DemiLib/Core/Editor/Imgs/circle.png | Bin 0 -> 455 bytes .../DemiLib/Core/Editor/Imgs/circle.png.meta | 140 + .../DemiLib/Core/Editor/Imgs/greenSquare.png | Bin 0 -> 106 bytes .../Core/Editor/Imgs/greenSquare.png.meta | 140 + .../DemiLib/Core/Editor/Imgs/grid_bright.png | Bin 0 -> 222 bytes .../Core/Editor/Imgs/grid_bright.png.meta | 140 + .../DemiLib/Core/Editor/Imgs/grid_dark.png | Bin 0 -> 216 bytes .../Core/Editor/Imgs/grid_dark.png.meta | 140 + .../DemiLib/Core/Editor/Imgs/ico_alert.png | Bin 0 -> 540 bytes .../Core/Editor/Imgs/ico_alert.png.meta | 140 + .../DemiLib/Core/Editor/Imgs/ico_alignB.png | Bin 0 -> 131 bytes .../Core/Editor/Imgs/ico_alignB.png.meta | 140 + .../DemiLib/Core/Editor/Imgs/ico_alignBC.png | Bin 0 -> 158 bytes .../Core/Editor/Imgs/ico_alignBC.png.meta | 140 + .../DemiLib/Core/Editor/Imgs/ico_alignBL.png | Bin 0 -> 152 bytes .../Core/Editor/Imgs/ico_alignBL.png.meta | 140 + .../DemiLib/Core/Editor/Imgs/ico_alignBR.png | Bin 0 -> 150 bytes .../Core/Editor/Imgs/ico_alignBR.png.meta | 140 + .../DemiLib/Core/Editor/Imgs/ico_alignCC.png | Bin 0 -> 152 bytes .../Core/Editor/Imgs/ico_alignCC.png.meta | 140 + .../DemiLib/Core/Editor/Imgs/ico_alignCL.png | Bin 0 -> 158 bytes .../Core/Editor/Imgs/ico_alignCL.png.meta | 140 + .../DemiLib/Core/Editor/Imgs/ico_alignCR.png | Bin 0 -> 153 bytes .../Core/Editor/Imgs/ico_alignCR.png.meta | 140 + .../DemiLib/Core/Editor/Imgs/ico_alignHC.png | Bin 0 -> 147 bytes .../Core/Editor/Imgs/ico_alignHC.png.meta | 140 + .../DemiLib/Core/Editor/Imgs/ico_alignL.png | Bin 0 -> 136 bytes .../Core/Editor/Imgs/ico_alignL.png.meta | 140 + .../DemiLib/Core/Editor/Imgs/ico_alignR.png | Bin 0 -> 145 bytes .../Core/Editor/Imgs/ico_alignR.png.meta | 140 + .../DemiLib/Core/Editor/Imgs/ico_alignT.png | Bin 0 -> 129 bytes .../Core/Editor/Imgs/ico_alignT.png.meta | 140 + .../DemiLib/Core/Editor/Imgs/ico_alignTC.png | Bin 0 -> 164 bytes .../Core/Editor/Imgs/ico_alignTC.png.meta | 140 + .../DemiLib/Core/Editor/Imgs/ico_alignTL.png | Bin 0 -> 153 bytes .../Core/Editor/Imgs/ico_alignTL.png.meta | 140 + .../DemiLib/Core/Editor/Imgs/ico_alignTR.png | Bin 0 -> 155 bytes .../Core/Editor/Imgs/ico_alignTR.png.meta | 140 + .../DemiLib/Core/Editor/Imgs/ico_alignVC.png | Bin 0 -> 135 bytes .../Core/Editor/Imgs/ico_alignVC.png.meta | 140 + .../DemiLib/Core/Editor/Imgs/ico_camera.png | Bin 0 -> 206 bytes .../Core/Editor/Imgs/ico_camera.png.meta | 140 + .../Core/Editor/Imgs/ico_camera_border.png | Bin 0 -> 347 bytes .../Editor/Imgs/ico_camera_border.png.meta | 140 + .../DemiLib/Core/Editor/Imgs/ico_cog.png | Bin 0 -> 197 bytes .../DemiLib/Core/Editor/Imgs/ico_cog.png.meta | 140 + .../Core/Editor/Imgs/ico_cog_border.png | Bin 0 -> 376 bytes .../Core/Editor/Imgs/ico_cog_border.png.meta | 140 + .../DemiLib/Core/Editor/Imgs/ico_comment.png | Bin 0 -> 176 bytes .../Core/Editor/Imgs/ico_comment.png.meta | 140 + .../Core/Editor/Imgs/ico_comment_border.png | Bin 0 -> 426 bytes .../Editor/Imgs/ico_comment_border.png.meta | 140 + .../DemiLib/Core/Editor/Imgs/ico_delete.png | Bin 0 -> 145 bytes .../Core/Editor/Imgs/ico_delete.png.meta | 140 + .../Core/Editor/Imgs/ico_demigiant.png | Bin 0 -> 605 bytes .../Core/Editor/Imgs/ico_demigiant.png.meta | 140 + .../Editor/Imgs/ico_distributeHAlignT.png | Bin 0 -> 174 bytes .../Imgs/ico_distributeHAlignT.png.meta | 140 + .../Editor/Imgs/ico_distributeVAlignL.png | Bin 0 -> 197 bytes .../Imgs/ico_distributeVAlignL.png.meta | 140 + .../DemiLib/Core/Editor/Imgs/ico_end.png | Bin 0 -> 475 bytes .../DemiLib/Core/Editor/Imgs/ico_end.png.meta | 140 + .../DemiLib/Core/Editor/Imgs/ico_flipV.png | Bin 0 -> 167 bytes .../Core/Editor/Imgs/ico_flipV.png.meta | 140 + .../Core/Editor/Imgs/ico_foldout_closed.png | Bin 0 -> 158 bytes .../Editor/Imgs/ico_foldout_closed.png.meta | 140 + .../Core/Editor/Imgs/ico_foldout_open.png | Bin 0 -> 170 bytes .../Editor/Imgs/ico_foldout_open.png.meta | 140 + .../DemiLib/Core/Editor/Imgs/ico_heart.png | Bin 0 -> 210 bytes .../Core/Editor/Imgs/ico_heart.png.meta | 140 + .../Core/Editor/Imgs/ico_heart_border.png | Bin 0 -> 307 bytes .../Editor/Imgs/ico_heart_border.png.meta | 140 + .../DemiLib/Core/Editor/Imgs/ico_light.png | Bin 0 -> 190 bytes .../Core/Editor/Imgs/ico_light.png.meta | 140 + .../Core/Editor/Imgs/ico_light_border.png | Bin 0 -> 292 bytes .../Editor/Imgs/ico_light_border.png.meta | 140 + .../DemiLib/Core/Editor/Imgs/ico_lock.png | Bin 0 -> 300 bytes .../Core/Editor/Imgs/ico_lock.png.meta | 140 + .../Core/Editor/Imgs/ico_lock_open.png | Bin 0 -> 293 bytes .../Core/Editor/Imgs/ico_lock_open.png.meta | 140 + .../Core/Editor/Imgs/ico_nodeArrow.png | Bin 0 -> 168 bytes .../Core/Editor/Imgs/ico_nodeArrow.png.meta | 140 + .../DemiLib/Core/Editor/Imgs/ico_ok.png | Bin 0 -> 715 bytes .../DemiLib/Core/Editor/Imgs/ico_ok.png.meta | 140 + .../Core/Editor/Imgs/ico_optionsDropdown.png | Bin 0 -> 135 bytes .../Editor/Imgs/ico_optionsDropdown.png.meta | 140 + .../DemiLib/Core/Editor/Imgs/ico_play.png | Bin 0 -> 256 bytes .../Core/Editor/Imgs/ico_play.png.meta | 140 + .../Core/Editor/Imgs/ico_play_border.png | Bin 0 -> 386 bytes .../Core/Editor/Imgs/ico_play_border.png.meta | 140 + .../DemiLib/Core/Editor/Imgs/ico_skull.png | Bin 0 -> 227 bytes .../Core/Editor/Imgs/ico_skull.png.meta | 140 + .../Core/Editor/Imgs/ico_skull_border.png | Bin 0 -> 332 bytes .../Editor/Imgs/ico_skull_border.png.meta | 140 + .../DemiLib/Core/Editor/Imgs/ico_star.png | Bin 0 -> 203 bytes .../Core/Editor/Imgs/ico_star.png.meta | 140 + .../Core/Editor/Imgs/ico_star_border.png | Bin 0 -> 323 bytes .../Core/Editor/Imgs/ico_star_border.png.meta | 140 + .../DemiLib/Core/Editor/Imgs/ico_ui.png | Bin 0 -> 223 bytes .../DemiLib/Core/Editor/Imgs/ico_ui.png.meta | 140 + .../Core/Editor/Imgs/ico_ui_border.png | Bin 0 -> 259 bytes .../Core/Editor/Imgs/ico_ui_border.png.meta | 140 + .../Core/Editor/Imgs/ico_visibility.png | Bin 0 -> 298 bytes .../Core/Editor/Imgs/ico_visibility.png.meta | 140 + .../Core/Editor/Imgs/ico_visibility_off.png | Bin 0 -> 367 bytes .../Editor/Imgs/ico_visibility_off.png.meta | 140 + .../DemiLib/Core/Editor/Imgs/orangeSquare.png | Bin 0 -> 104 bytes .../Core/Editor/Imgs/orangeSquare.png.meta | 140 + .../DemiLib/Core/Editor/Imgs/project.meta | 8 + .../Core/Editor/Imgs/project/ico_atlas.png | Bin 0 -> 218 bytes .../Editor/Imgs/project/ico_atlas.png.meta | 140 + .../Core/Editor/Imgs/project/ico_audio.png | Bin 0 -> 338 bytes .../Editor/Imgs/project/ico_audio.png.meta | 140 + .../Core/Editor/Imgs/project/ico_bundle.png | Bin 0 -> 522 bytes .../Editor/Imgs/project/ico_bundle.png.meta | 140 + .../Core/Editor/Imgs/project/ico_cog.png | Bin 0 -> 406 bytes .../Core/Editor/Imgs/project/ico_cog.png.meta | 140 + .../Core/Editor/Imgs/project/ico_cross.png | Bin 0 -> 210 bytes .../Editor/Imgs/project/ico_cross.png.meta | 140 + .../Editor/Imgs/project/ico_demigiant.png | Bin 0 -> 388 bytes .../Imgs/project/ico_demigiant.png.meta | 140 + .../Core/Editor/Imgs/project/ico_folder.png | Bin 0 -> 150 bytes .../Editor/Imgs/project/ico_folder.png.meta | 140 + .../Core/Editor/Imgs/project/ico_fonts.png | Bin 0 -> 465 bytes .../Editor/Imgs/project/ico_fonts.png.meta | 140 + .../Core/Editor/Imgs/project/ico_heart.png | Bin 0 -> 334 bytes .../Editor/Imgs/project/ico_heart.png.meta | 140 + .../Editor/Imgs/project/ico_materials.png | Bin 0 -> 355 bytes .../Imgs/project/ico_materials.png.meta | 140 + .../Core/Editor/Imgs/project/ico_models.png | Bin 0 -> 380 bytes .../Editor/Imgs/project/ico_models.png.meta | 140 + .../Editor/Imgs/project/ico_particles.png | Bin 0 -> 493 bytes .../Imgs/project/ico_particles.png.meta | 140 + .../Core/Editor/Imgs/project/ico_play.png | Bin 0 -> 217 bytes .../Editor/Imgs/project/ico_play.png.meta | 140 + .../Core/Editor/Imgs/project/ico_prefab.png | Bin 0 -> 343 bytes .../Editor/Imgs/project/ico_prefab.png.meta | 140 + .../Core/Editor/Imgs/project/ico_scripts.png | Bin 0 -> 208 bytes .../Editor/Imgs/project/ico_scripts.png.meta | 140 + .../Core/Editor/Imgs/project/ico_shaders.png | Bin 0 -> 379 bytes .../Editor/Imgs/project/ico_shaders.png.meta | 140 + .../Core/Editor/Imgs/project/ico_skull.png | Bin 0 -> 368 bytes .../Editor/Imgs/project/ico_skull.png.meta | 140 + .../Core/Editor/Imgs/project/ico_star.png | Bin 0 -> 289 bytes .../Editor/Imgs/project/ico_star.png.meta | 140 + .../Core/Editor/Imgs/project/ico_terrains.png | Bin 0 -> 309 bytes .../Editor/Imgs/project/ico_terrains.png.meta | 140 + .../Core/Editor/Imgs/project/ico_textures.png | Bin 0 -> 278 bytes .../Editor/Imgs/project/ico_textures.png.meta | 140 + .../DemiLib/Core/Editor/Imgs/purpleSquare.png | Bin 0 -> 106 bytes .../Core/Editor/Imgs/purpleSquare.png.meta | 140 + .../DemiLib/Core/Editor/Imgs/redSquare.png | Bin 0 -> 106 bytes .../Core/Editor/Imgs/redSquare.png.meta | 140 + .../DemiLib/Core/Editor/Imgs/squareBorder.png | Bin 0 -> 122 bytes .../Core/Editor/Imgs/squareBorder.png.meta | 140 + .../Core/Editor/Imgs/squareBorderAlpha15.png | Bin 0 -> 116 bytes .../Editor/Imgs/squareBorderAlpha15.png.meta | 140 + .../Core/Editor/Imgs/squareBorderCurved.png | Bin 0 -> 196 bytes .../Editor/Imgs/squareBorderCurved.png.meta | 140 + .../Core/Editor/Imgs/squareBorderCurved02.png | Bin 0 -> 281 bytes .../Editor/Imgs/squareBorderCurved02.png.meta | 140 + .../Imgs/squareBorderCurved02_darkBorders.png | Bin 0 -> 336 bytes .../squareBorderCurved02_darkBorders.png.meta | 140 + .../Editor/Imgs/squareBorderCurvedAlpha.png | Bin 0 -> 197 bytes .../Imgs/squareBorderCurvedAlpha.png.meta | 140 + .../Editor/Imgs/squareBorderCurvedEmpty.png | Bin 0 -> 180 bytes .../Imgs/squareBorderCurvedEmpty.png.meta | 140 + .../Editor/Imgs/squareBorderCurvedEmpty02.png | Bin 0 -> 217 bytes .../Imgs/squareBorderCurvedEmpty02.png.meta | 140 + .../Imgs/squareBorderCurvedEmptyThick.png | Bin 0 -> 233 bytes .../squareBorderCurvedEmptyThick.png.meta | 140 + .../Imgs/squareBorderCurved_darkBorders.png | Bin 0 -> 216 bytes .../squareBorderCurved_darkBorders.png.meta | 140 + .../squareBorderCurved_darkBordersAlpha.png | Bin 0 -> 200 bytes ...uareBorderCurved_darkBordersAlpha.png.meta | 140 + .../Core/Editor/Imgs/squareBorderEmpty.png | Bin 0 -> 114 bytes .../Editor/Imgs/squareBorderEmpty.png.meta | 140 + .../Core/Editor/Imgs/squareBorderEmpty01.png | Bin 0 -> 114 bytes .../Editor/Imgs/squareBorderEmpty01.png.meta | 140 + .../Core/Editor/Imgs/squareBorderEmpty02.png | Bin 0 -> 121 bytes .../Editor/Imgs/squareBorderEmpty02.png.meta | 140 + .../Core/Editor/Imgs/squareBorderEmpty03.png | Bin 0 -> 122 bytes .../Editor/Imgs/squareBorderEmpty03.png.meta | 140 + .../Editor/Imgs/squareBorderThickEmpty.png | Bin 0 -> 121 bytes .../Imgs/squareBorderThickEmpty.png.meta | 140 + .../Editor/Imgs/squareBorderThickerEmpty.png | Bin 0 -> 122 bytes .../Imgs/squareBorderThickerEmpty.png.meta | 140 + .../Core/Editor/Imgs/squareCorners03.png | Bin 0 -> 133 bytes .../Core/Editor/Imgs/squareCorners03.png.meta | 140 + .../Core/Editor/Imgs/squareCornersEmpty02.png | Bin 0 -> 131 bytes .../Editor/Imgs/squareCornersEmpty02.png.meta | 140 + .../Core/Editor/Imgs/tileBars_empty.png | Bin 0 -> 236 bytes .../Core/Editor/Imgs/tileBars_empty.png.meta | 140 + .../Core/Editor/Imgs/tileBars_slanted.png | Bin 0 -> 285 bytes .../Editor/Imgs/tileBars_slanted.png.meta | 140 + .../Editor/Imgs/tileBars_slanted_alpha.png | Bin 0 -> 266 bytes .../Imgs/tileBars_slanted_alpha.png.meta | 140 + .../Core/Editor/Imgs/transparentSquare.png | Bin 0 -> 97 bytes .../Editor/Imgs/transparentSquare.png.meta | 140 + .../DemiLib/Core/Editor/Imgs/whiteDot.png | Bin 0 -> 148 bytes .../Core/Editor/Imgs/whiteDot.png.meta | 140 + .../Core/Editor/Imgs/whiteDot_darkBorder.png | Bin 0 -> 219 bytes .../Editor/Imgs/whiteDot_darkBorder.png.meta | 140 + .../Editor/Imgs/whiteDot_whiteBorderAlpha.png | Bin 0 -> 176 bytes .../Imgs/whiteDot_whiteBorderAlpha.png.meta | 140 + .../DemiLib/Core/Editor/Imgs/whiteSquare.png | Bin 0 -> 103 bytes .../Core/Editor/Imgs/whiteSquare.png.meta | 140 + .../Core/Editor/Imgs/whiteSquareAlpha10.png | Bin 0 -> 107 bytes .../Editor/Imgs/whiteSquareAlpha10.png.meta | 140 + .../Core/Editor/Imgs/whiteSquareAlpha15.png | Bin 0 -> 109 bytes .../Editor/Imgs/whiteSquareAlpha15.png.meta | 140 + .../Core/Editor/Imgs/whiteSquareAlpha25.png | Bin 0 -> 107 bytes .../Editor/Imgs/whiteSquareAlpha25.png.meta | 140 + .../Core/Editor/Imgs/whiteSquareAlpha50.png | Bin 0 -> 107 bytes .../Editor/Imgs/whiteSquareAlpha50.png.meta | 140 + .../Core/Editor/Imgs/whiteSquareAlpha80.png | Bin 0 -> 110 bytes .../Editor/Imgs/whiteSquareAlpha80.png.meta | 140 + .../Editor/Imgs/whiteSquare_fadeOut_bt.png | Bin 0 -> 131 bytes .../Imgs/whiteSquare_fadeOut_bt.png.meta | 140 + .../DemiLib/Core/Editor/Imgs/yellowSquare.png | Bin 0 -> 106 bytes .../Core/Editor/Imgs/yellowSquare.png.meta | 140 + d2/Assets/Demigiant/readme_DOTweenPro.txt | 35 + .../Demigiant/readme_DOTweenPro.txt.meta | 22 + 333 files changed, 35836 insertions(+) create mode 100644 d2/Assets/Demigiant/DOTween.meta create mode 100644 d2/Assets/Demigiant/DOTween/DOTween.XML create mode 100644 d2/Assets/Demigiant/DOTween/DOTween.XML.meta create mode 100644 d2/Assets/Demigiant/DOTween/DOTween.dll create mode 100644 d2/Assets/Demigiant/DOTween/DOTween.dll.meta create mode 100644 d2/Assets/Demigiant/DOTween/Editor.meta create mode 100644 d2/Assets/Demigiant/DOTween/Editor/DOTweenEditor.XML create mode 100644 d2/Assets/Demigiant/DOTween/Editor/DOTweenEditor.XML.meta create mode 100644 d2/Assets/Demigiant/DOTween/Editor/DOTweenEditor.dll create mode 100644 d2/Assets/Demigiant/DOTween/Editor/DOTweenEditor.dll.meta create mode 100644 d2/Assets/Demigiant/DOTween/Editor/DOTweenUpgradeManager.XML create mode 100644 d2/Assets/Demigiant/DOTween/Editor/DOTweenUpgradeManager.XML.meta create mode 100644 d2/Assets/Demigiant/DOTween/Editor/DOTweenUpgradeManager.dll create mode 100644 d2/Assets/Demigiant/DOTween/Editor/DOTweenUpgradeManager.dll.meta create mode 100644 d2/Assets/Demigiant/DOTween/Editor/Imgs.meta create mode 100644 d2/Assets/Demigiant/DOTween/Editor/Imgs/DOTweenIcon.png create mode 100644 d2/Assets/Demigiant/DOTween/Editor/Imgs/DOTweenIcon.png.meta create mode 100644 d2/Assets/Demigiant/DOTween/Editor/Imgs/Footer.png create mode 100644 d2/Assets/Demigiant/DOTween/Editor/Imgs/Footer.png.meta create mode 100644 d2/Assets/Demigiant/DOTween/Editor/Imgs/Footer_dark.png create mode 100644 d2/Assets/Demigiant/DOTween/Editor/Imgs/Footer_dark.png.meta create mode 100644 d2/Assets/Demigiant/DOTween/Editor/Imgs/Header.jpg create mode 100644 d2/Assets/Demigiant/DOTween/Editor/Imgs/Header.jpg.meta create mode 100644 d2/Assets/Demigiant/DOTween/Modules.meta create mode 100644 d2/Assets/Demigiant/DOTween/Modules/DOTweenModuleAudio.cs create mode 100644 d2/Assets/Demigiant/DOTween/Modules/DOTweenModuleAudio.cs.meta create mode 100644 d2/Assets/Demigiant/DOTween/Modules/DOTweenModulePhysics.cs create mode 100644 d2/Assets/Demigiant/DOTween/Modules/DOTweenModulePhysics.cs.meta create mode 100644 d2/Assets/Demigiant/DOTween/Modules/DOTweenModulePhysics2D.cs create mode 100644 d2/Assets/Demigiant/DOTween/Modules/DOTweenModulePhysics2D.cs.meta create mode 100644 d2/Assets/Demigiant/DOTween/Modules/DOTweenModuleSprite.cs create mode 100644 d2/Assets/Demigiant/DOTween/Modules/DOTweenModuleSprite.cs.meta create mode 100644 d2/Assets/Demigiant/DOTween/Modules/DOTweenModuleUI.cs create mode 100644 d2/Assets/Demigiant/DOTween/Modules/DOTweenModuleUI.cs.meta create mode 100644 d2/Assets/Demigiant/DOTween/Modules/DOTweenModuleUnityVersion.cs create mode 100644 d2/Assets/Demigiant/DOTween/Modules/DOTweenModuleUnityVersion.cs.meta create mode 100644 d2/Assets/Demigiant/DOTween/Modules/DOTweenModuleUtils.cs create mode 100644 d2/Assets/Demigiant/DOTween/Modules/DOTweenModuleUtils.cs.meta create mode 100644 d2/Assets/Demigiant/DOTween/readme.txt create mode 100644 d2/Assets/Demigiant/DOTween/readme.txt.meta create mode 100644 d2/Assets/Demigiant/DOTweenPro Examples.meta create mode 100644 d2/Assets/Demigiant/DOTweenPro Examples/DOTweenAnimation_Advanced.unity create mode 100644 d2/Assets/Demigiant/DOTweenPro Examples/DOTweenAnimation_Advanced.unity.meta create mode 100644 d2/Assets/Demigiant/DOTweenPro Examples/DOTweenAnimation_AdvancedSettings.lighting create mode 100644 d2/Assets/Demigiant/DOTweenPro Examples/DOTweenAnimation_AdvancedSettings.lighting.meta create mode 100644 d2/Assets/Demigiant/DOTweenPro Examples/DOTweenAnimation_Basics.unity create mode 100644 d2/Assets/Demigiant/DOTweenPro Examples/DOTweenAnimation_Basics.unity.meta create mode 100644 d2/Assets/Demigiant/DOTweenPro Examples/DOTweenAnimation_BasicsSettings.lighting create mode 100644 d2/Assets/Demigiant/DOTweenPro Examples/DOTweenAnimation_BasicsSettings.lighting.meta create mode 100644 d2/Assets/Demigiant/DOTweenPro Examples/DOTweenPath.unity create mode 100644 d2/Assets/Demigiant/DOTweenPro Examples/DOTweenPath.unity.meta create mode 100644 d2/Assets/Demigiant/DOTweenPro Examples/DOTweenPathSettings.lighting create mode 100644 d2/Assets/Demigiant/DOTweenPro Examples/DOTweenPathSettings.lighting.meta create mode 100644 d2/Assets/Demigiant/DOTweenPro Examples/Examples Assets.meta create mode 100644 d2/Assets/Demigiant/DOTweenPro Examples/Examples Assets/dotweenpro_logo.png create mode 100644 d2/Assets/Demigiant/DOTweenPro Examples/Examples Assets/dotweenpro_logo.png.meta create mode 100644 d2/Assets/Demigiant/DOTweenPro.meta create mode 100644 d2/Assets/Demigiant/DOTweenPro/DOTweenAnimation.cs create mode 100644 d2/Assets/Demigiant/DOTweenPro/DOTweenAnimation.cs.meta create mode 100644 d2/Assets/Demigiant/DOTweenPro/DOTweenPro.XML create mode 100644 d2/Assets/Demigiant/DOTweenPro/DOTweenPro.XML.meta create mode 100644 d2/Assets/Demigiant/DOTweenPro/DOTweenPro.dll create mode 100644 d2/Assets/Demigiant/DOTweenPro/DOTweenPro.dll.meta create mode 100644 d2/Assets/Demigiant/DOTweenPro/DOTweenProShortcuts.cs create mode 100644 d2/Assets/Demigiant/DOTweenPro/DOTweenProShortcuts.cs.meta create mode 100644 d2/Assets/Demigiant/DOTweenPro/DOTweenTextMeshPro.cs create mode 100644 d2/Assets/Demigiant/DOTweenPro/DOTweenTextMeshPro.cs.addon create mode 100644 d2/Assets/Demigiant/DOTweenPro/DOTweenTextMeshPro.cs.addon.meta create mode 100644 d2/Assets/Demigiant/DOTweenPro/DOTweenTextMeshPro.cs.meta create mode 100644 d2/Assets/Demigiant/DOTweenPro/DOTweenTk2d.cs create mode 100644 d2/Assets/Demigiant/DOTweenPro/DOTweenTk2d.cs.addon create mode 100644 d2/Assets/Demigiant/DOTweenPro/DOTweenTk2d.cs.addon.meta create mode 100644 d2/Assets/Demigiant/DOTweenPro/DOTweenTk2d.cs.meta create mode 100644 d2/Assets/Demigiant/DOTweenPro/Editor.meta create mode 100644 d2/Assets/Demigiant/DOTweenPro/Editor/DOTweenAnimationInspector.cs create mode 100644 d2/Assets/Demigiant/DOTweenPro/Editor/DOTweenAnimationInspector.cs.meta create mode 100644 d2/Assets/Demigiant/DOTweenPro/Editor/DOTweenPreviewManager.cs create mode 100644 d2/Assets/Demigiant/DOTweenPro/Editor/DOTweenPreviewManager.cs.meta create mode 100644 d2/Assets/Demigiant/DOTweenPro/Editor/DOTweenProEditor.XML create mode 100644 d2/Assets/Demigiant/DOTweenPro/Editor/DOTweenProEditor.XML.meta create mode 100644 d2/Assets/Demigiant/DOTweenPro/Editor/DOTweenProEditor.dll create mode 100644 d2/Assets/Demigiant/DOTweenPro/Editor/DOTweenProEditor.dll.meta create mode 100644 d2/Assets/Demigiant/DOTweenPro/readme.txt create mode 100644 d2/Assets/Demigiant/DOTweenPro/readme.txt.meta create mode 100644 d2/Assets/Demigiant/DemiLib.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/DemiLib.dll create mode 100644 d2/Assets/Demigiant/DemiLib/Core/DemiLib.dll.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/DemiLib.xml create mode 100644 d2/Assets/Demigiant/DemiLib/Core/DemiLib.xml.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/DemiEditor.dll create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/DemiEditor.dll.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/DemiEditor.xml create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/DemiEditor.xml.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/blackSquare.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/blackSquare.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/blackSquareAlpha10.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/blackSquareAlpha10.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/blackSquareAlpha15.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/blackSquareAlpha15.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/blackSquareAlpha25.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/blackSquareAlpha25.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/blackSquareAlpha50.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/blackSquareAlpha50.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/blackSquareAlpha80.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/blackSquareAlpha80.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/blueSquare.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/blueSquare.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/circle.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/circle.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/greenSquare.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/greenSquare.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/grid_bright.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/grid_bright.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/grid_dark.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/grid_dark.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alert.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alert.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignB.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignB.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignBC.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignBC.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignBL.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignBL.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignBR.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignBR.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignCC.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignCC.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignCL.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignCL.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignCR.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignCR.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignHC.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignHC.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignL.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignL.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignR.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignR.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignT.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignT.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignTC.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignTC.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignTL.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignTL.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignTR.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignTR.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignVC.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignVC.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_camera.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_camera.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_camera_border.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_camera_border.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_cog.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_cog.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_cog_border.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_cog_border.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_comment.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_comment.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_comment_border.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_comment_border.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_delete.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_delete.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_demigiant.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_demigiant.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_distributeHAlignT.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_distributeHAlignT.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_distributeVAlignL.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_distributeVAlignL.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_end.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_end.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_flipV.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_flipV.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_foldout_closed.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_foldout_closed.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_foldout_open.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_foldout_open.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_heart.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_heart.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_heart_border.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_heart_border.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_light.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_light.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_light_border.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_light_border.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_lock.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_lock.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_lock_open.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_lock_open.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_nodeArrow.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_nodeArrow.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_ok.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_ok.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_optionsDropdown.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_optionsDropdown.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_play.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_play.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_play_border.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_play_border.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_skull.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_skull.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_skull_border.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_skull_border.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_star.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_star.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_star_border.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_star_border.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_ui.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_ui.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_ui_border.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_ui_border.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_visibility.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_visibility.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_visibility_off.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_visibility_off.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/orangeSquare.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/orangeSquare.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_atlas.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_atlas.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_audio.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_audio.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_bundle.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_bundle.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_cog.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_cog.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_cross.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_cross.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_demigiant.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_demigiant.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_folder.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_folder.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_fonts.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_fonts.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_heart.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_heart.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_materials.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_materials.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_models.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_models.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_particles.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_particles.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_play.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_play.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_prefab.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_prefab.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_scripts.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_scripts.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_shaders.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_shaders.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_skull.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_skull.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_star.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_star.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_terrains.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_terrains.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_textures.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_textures.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/purpleSquare.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/purpleSquare.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/redSquare.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/redSquare.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorder.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorder.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorderAlpha15.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorderAlpha15.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorderCurved.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorderCurved.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorderCurved02.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorderCurved02.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorderCurved02_darkBorders.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorderCurved02_darkBorders.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorderCurvedAlpha.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorderCurvedAlpha.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorderCurvedEmpty.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorderCurvedEmpty.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorderCurvedEmpty02.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorderCurvedEmpty02.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorderCurvedEmptyThick.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorderCurvedEmptyThick.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorderCurved_darkBorders.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorderCurved_darkBorders.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorderCurved_darkBordersAlpha.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorderCurved_darkBordersAlpha.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorderEmpty.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorderEmpty.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorderEmpty01.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorderEmpty01.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorderEmpty02.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorderEmpty02.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorderEmpty03.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorderEmpty03.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorderThickEmpty.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorderThickEmpty.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorderThickerEmpty.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorderThickerEmpty.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareCorners03.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareCorners03.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareCornersEmpty02.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareCornersEmpty02.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/tileBars_empty.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/tileBars_empty.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/tileBars_slanted.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/tileBars_slanted.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/tileBars_slanted_alpha.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/tileBars_slanted_alpha.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/transparentSquare.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/transparentSquare.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/whiteDot.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/whiteDot.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/whiteDot_darkBorder.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/whiteDot_darkBorder.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/whiteDot_whiteBorderAlpha.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/whiteDot_whiteBorderAlpha.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/whiteSquare.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/whiteSquare.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/whiteSquareAlpha10.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/whiteSquareAlpha10.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/whiteSquareAlpha15.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/whiteSquareAlpha15.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/whiteSquareAlpha25.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/whiteSquareAlpha25.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/whiteSquareAlpha50.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/whiteSquareAlpha50.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/whiteSquareAlpha80.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/whiteSquareAlpha80.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/whiteSquare_fadeOut_bt.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/whiteSquare_fadeOut_bt.png.meta create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/yellowSquare.png create mode 100644 d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/yellowSquare.png.meta create mode 100644 d2/Assets/Demigiant/readme_DOTweenPro.txt create mode 100644 d2/Assets/Demigiant/readme_DOTweenPro.txt.meta diff --git a/d2/Assets/Demigiant/DOTween.meta b/d2/Assets/Demigiant/DOTween.meta new file mode 100644 index 00000000..0fa25a69 --- /dev/null +++ b/d2/Assets/Demigiant/DOTween.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: cdb7ee3eee6084246a65eae906a0dc6d +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DOTween/DOTween.XML b/d2/Assets/Demigiant/DOTween/DOTween.XML new file mode 100644 index 00000000..a260f734 --- /dev/null +++ b/d2/Assets/Demigiant/DOTween/DOTween.XML @@ -0,0 +1,2729 @@ + + + + DOTween + + + + + Types of autoPlay behaviours + + + + No tween is automatically played + + + Only Sequences are automatically played + + + Only Tweeners are automatically played + + + All tweens are automatically played + + + + What axis to constrain in case of Vector tweens + + + + Called the first time the tween is set in a playing state, after any eventual delay + + + + Used in place of System.Func, which is not available in mscorlib. + + + + + Used in place of System.Action. + + + + + Public so it can be used by lose scripts related to DOTween (like DOTweenAnimation) + + + + + Used to separate DOTween class from the MonoBehaviour instance (in order to use static constructors on DOTween). + Contains all instance-based methods + + + + Used internally inside Unity Editor, as a trick to update DOTween's inspector at every frame + + + + Directly sets the current max capacity of Tweeners and Sequences + (meaning how many Tweeners and Sequences can be running at the same time), + so that DOTween doesn't need to automatically increase them in case the max is reached + (which might lead to hiccups when that happens). + Sequences capacity must be less or equal to Tweeners capacity + (if you pass a low Tweener capacity it will be automatically increased to match the Sequence's). + Beware: use this method only when there are no tweens running. + + Max Tweeners capacity. + Default: 200 + Max Sequences capacity. + Default: 50 + + + + This class contains a C# port of the easing equations created by Robert Penner (http://robertpenner.com/easing). + + + + + Easing equation function for a bounce (exponentially decaying parabolic bounce) easing in: accelerating from zero velocity. + + + Current time (in frames or seconds). + + + Expected easing duration (in frames or seconds). + + Unused: here to keep same delegate for all ease types. + Unused: here to keep same delegate for all ease types. + + The eased value. + + + + + Easing equation function for a bounce (exponentially decaying parabolic bounce) easing out: decelerating from zero velocity. + + + Current time (in frames or seconds). + + + Expected easing duration (in frames or seconds). + + Unused: here to keep same delegate for all ease types. + Unused: here to keep same delegate for all ease types. + + The eased value. + + + + + Easing equation function for a bounce (exponentially decaying parabolic bounce) easing in/out: acceleration until halfway, then deceleration. + + + Current time (in frames or seconds). + + + Expected easing duration (in frames or seconds). + + Unused: here to keep same delegate for all ease types. + Unused: here to keep same delegate for all ease types. + + The eased value. + + + + + Returns a value between 0 and 1 (inclusive) based on the elapsed time and ease selected + + + + + Returns a value between 0 and 1 (inclusive) based on the elapsed time and ease selected + + + + + Used to interpret AnimationCurves as eases. + Public so it can be used by external ease factories + + + + + Behaviour in case a tween nested inside a Sequence fails + + + + If the Sequence contains other elements, kill the failed tween but preserve the rest + + + Kill the whole Sequence + + + + Additional notices passed to plugins when updating. + Public so it can be used by custom plugins. Internally, only PathPlugin uses it + + + + + None + + + + + Lets the plugin know that we restarted or rewinded + + + + + OnRewind callback behaviour (can only be set via DOTween's Utility Panel) + + + + + When calling Rewind or PlayBackwards/SmoothRewind, OnRewind callbacks will be fired only if the tween isn't already rewinded + + + + + When calling Rewind, OnRewind callbacks will always be fired, even if the tween is already rewinded. + When calling PlayBackwards/SmoothRewind instead, OnRewind callbacks will be fired only if the tween isn't already rewinded + + + + + When calling Rewind or PlayBackwards/SmoothRewind, OnRewind callbacks will always be fired, even if the tween is already rewinded + + + + + Public only so custom shortcuts can access some of these methods + + + + + INTERNAL: used by DO shortcuts and Modules to set special startup mode + + + + + INTERNAL: used by DO shortcuts and Modules to set the tween as blendable + + + + + INTERNAL: used by DO shortcuts and Modules to prevent a tween from using a From setup even if passed + + + + + Used to dispatch commands that need to be captured externally, usually by Modules + + + + + Returns a Vector3 with z = 0 + + + + + Returns the 2D angle between two vectors + + + + + Uses approximate equality on each axis instead of Unity's Vector3 equality, + because the latter fails (in some cases) when assigning a Vector3 to a transform.position and then checking it. + + + + + Looks for the type within all possible project assembly names + + + + NO-GC METHOD: changes the start value of a tween and rewinds it (without pausing it). + Has no effect with tweens that are inside Sequences + The new start value + If bigger than 0 applies it as the new tween duration + + + NO-GC METHOD: changes the end value of a tween and rewinds it (without pausing it). + Has no effect with tweens that are inside Sequences + The new end value + If TRUE the start value will become the current target's value, otherwise it will stay the same + + + NO-GC METHOD: changes the end value of a tween and rewinds it (without pausing it). + Has no effect with tweens that are inside Sequences + The new end value + If bigger than 0 applies it as the new tween duration + If TRUE the start value will become the current target's value, otherwise it will stay the same + + + NO-GC METHOD: changes the start and end value of a tween and rewinds it (without pausing it). + Has no effect with tweens that are inside Sequences + The new start value + The new end value + If bigger than 0 applies it as the new tween duration + + + + Struct that stores two colors (used for LineRenderer tweens) + + + + + Used for tween callbacks + + + + + Used for tween callbacks + + + + + Used for custom and animationCurve-based ease functions. Must return a value between 0 and 1. + + + + + Straight Quaternion plugin. Instead of using Vector3 values accepts Quaternion values directly. + Beware: doesn't work with LoopType.Incremental (neither directly nor if inside a LoopType.Incremental Sequence). + To use it, call DOTween.To with the plugin parameter overload, passing it PureQuaternionPlugin.Plug() as first parameter + (do not use any of the other public PureQuaternionPlugin methods): + DOTween.To(PureQuaternionPlugin.Plug(), ()=> myQuaternionProperty, x=> myQuaternionProperty = x, myQuaternionEndValue, duration); + + + + + Plug this plugin inside a DOTween.To call. + Example: + DOTween.To(PureQuaternionPlugin.Plug(), ()=> myQuaternionProperty, x=> myQuaternionProperty = x, myQuaternionEndValue, duration); + + + + INTERNAL: do not use + + + INTERNAL: do not use + + + INTERNAL: do not use + + + INTERNAL: do not use + + + INTERNAL: do not use + + + INTERNAL: do not use + + + INTERNAL: do not use + + + INTERNAL: do not use + + + + Main DOTween class. Contains static methods to create and control tweens in a generic way + + + + DOTween's version + + + If TRUE (default) makes tweens slightly slower but safer, automatically taking care of a series of things + (like targets becoming null while a tween is playing). + Default: TRUE + + + Behaviour in case a tween nested inside a Sequence fails (caught by safe mode). + Default: NestedTweenFailureBehaviour.TryToPreserveSequence + + + If TRUE you will get a DOTween report when exiting play mode (only in the Editor). + Useful to know how many max Tweeners and Sequences you reached and optimize your final project accordingly. + Beware, this will slightly slow down your tweens while inside Unity Editor. + Default: FALSE + + + Global DOTween timeScale. + Default: 1 + + + If TRUE, DOTween will use Time.smoothDeltaTime instead of Time.deltaTime for UpdateType.Normal and UpdateType.Late tweens + (unless they're set as timeScaleIndependent, in which case a value between the last timestep + and will be used instead). + Setting this to TRUE will lead to smoother animations. + Default: FALSE + + + If is TRUE, this indicates the max timeStep that an independent update call can last. + Setting this to TRUE will lead to smoother animations. + Default: FALSE + + + DOTween's log behaviour. + Default: LogBehaviour.ErrorsOnly + + + Used to intercept DOTween's logs. If this method isn't NULL, DOTween will call it before writing a log via Unity's own Debug log methods. + Return TRUE if you want DOTween to proceed with the log, FALSE otherwise. + This method must return a bool and accept two parameters: + - LogType: the type of Unity log that DOTween is trying to log + - object: the log message that DOTween wants to log + + + If TRUE draws path gizmos in Unity Editor (if the gizmos button is active). + Deactivate this if you want to avoid gizmos overhead while in Unity Editor + + + If TRUE activates various debug options + + + Stores the target id so it can be used to give more info in case of safeMode error capturing. + Only active if both debugMode and useSafeMode are TRUE + + + Default updateType for new tweens. + Default: UpdateType.Normal + + + Sets whether Unity's timeScale should be taken into account by default or not. + Default: false + + + Default autoPlay behaviour for new tweens. + Default: AutoPlay.All + + + Default autoKillOnComplete behaviour for new tweens. + Default: TRUE + + + Default loopType applied to all new tweens. + Default: LoopType.Restart + + + If TRUE all newly created tweens are set as recyclable, otherwise not. + Default: FALSE + + + Default ease applied to all new Tweeners (not to Sequences which always have Ease.Linear as default). + Default: Ease.InOutQuad + + + Default overshoot/amplitude used for eases + Default: 1.70158f + + + Default period used for eases + Default: 0 + + + Used internally. Assigned/removed by DOTweenComponent.Create/DestroyInstance + + + + Must be called once, before the first ever DOTween call/reference, + otherwise it will be called automatically and will use default options. + Calling it a second time won't have any effect. + You can chain SetCapacity to this method, to directly set the max starting size of Tweeners and Sequences: + DOTween.Init(false, false, LogBehaviour.Default).SetCapacity(100, 20); + + If TRUE all new tweens will be set for recycling, meaning that when killed, + instead of being destroyed, they will be put in a pool and reused instead of creating new tweens. This option allows you to avoid + GC allocations by reusing tweens, but you will have to take care of tween references, since they might result active + even if they were killed (since they might have been respawned and are now being used for other tweens). + If you want to automatically set your tween references to NULL when a tween is killed + you can use the OnKill callback like this: + .OnKill(()=> myTweenReference = null) + You can change this setting at any time by changing the static property, + or you can set the recycling behaviour for each tween separately, using: + SetRecyclable(bool recyclable) + Default: FALSE + If TRUE makes tweens slightly slower but safer, automatically taking care of a series of things + (like targets becoming null while a tween is playing). + You can change this setting at any time by changing the static property. + Default: FALSE + Type of logging to use. + You can change this setting at any time by changing the static property. + Default: ErrorsOnly + + + + Directly sets the current max capacity of Tweeners and Sequences + (meaning how many Tweeners and Sequences can be running at the same time), + so that DOTween doesn't need to automatically increase them in case the max is reached + (which might lead to hiccups when that happens). + Sequences capacity must be less or equal to Tweeners capacity + (if you pass a low Tweener capacity it will be automatically increased to match the Sequence's). + Beware: use this method only when there are no tweens running. + + Max Tweeners capacity. + Default: 200 + Max Sequences capacity. + Default: 50 + + + + Kills all tweens, clears all cached tween pools and plugins and resets the max Tweeners/Sequences capacities to the default values. + + If TRUE also destroys DOTween's gameObject and resets its initializiation, default settings and everything else + (so that next time you use it it will need to be re-initialized) + + + + Clears all cached tween pools. + + + + + Checks all active tweens to find and remove eventually invalid ones (usually because their targets became NULL) + and returns the total number of invalid tweens found and removed. + IMPORTANT: this will cause an error on UWP platform, so don't use it there + BEWARE: this is a slightly expensive operation so use it with care + + + + + Updates all tweens that are set to . + + Manual deltaTime + Unscaled delta time (used with tweens set as timeScaleIndependent) + + + Tweens a property or field to the given value using default plugins + A getter for the field or property to tween. + Example usage with lambda:()=> myProperty + A setter for the field or property to tween + Example usage with lambda:x=> myProperty = x + The end value to reachThe tween's duration + + + Tweens a property or field to the given value using default plugins + A getter for the field or property to tween. + Example usage with lambda:()=> myProperty + A setter for the field or property to tween + Example usage with lambda:x=> myProperty = x + The end value to reachThe tween's duration + + + Tweens a property or field to the given value using default plugins + A getter for the field or property to tween. + Example usage with lambda:()=> myProperty + A setter for the field or property to tween + Example usage with lambda:x=> myProperty = x + The end value to reachThe tween's duration + + + Tweens a property or field to the given value using default plugins + A getter for the field or property to tween. + Example usage with lambda:()=> myProperty + A setter for the field or property to tween + Example usage with lambda:x=> myProperty = x + The end value to reachThe tween's duration + + + Tweens a property or field to the given value using default plugins + A getter for the field or property to tween. + Example usage with lambda:()=> myProperty + A setter for the field or property to tween + Example usage with lambda:x=> myProperty = x + The end value to reachThe tween's duration + + + Tweens a property or field to the given value using default plugins + A getter for the field or property to tween. + Example usage with lambda:()=> myProperty + A setter for the field or property to tween + Example usage with lambda:x=> myProperty = x + The end value to reachThe tween's duration + + + Tweens a property or field to the given value using default plugins + A getter for the field or property to tween. + Example usage with lambda:()=> myProperty + A setter for the field or property to tween + Example usage with lambda:x=> myProperty = x + The end value to reachThe tween's duration + + + Tweens a property or field to the given value using default plugins + A getter for the field or property to tween. + Example usage with lambda:()=> myProperty + A setter for the field or property to tween + Example usage with lambda:x=> myProperty = x + The end value to reachThe tween's duration + + + Tweens a property or field to the given value using default plugins + A getter for the field or property to tween. + Example usage with lambda:()=> myProperty + A setter for the field or property to tween + Example usage with lambda:x=> myProperty = x + The end value to reachThe tween's duration + + + Tweens a property or field to the given value using default plugins + A getter for the field or property to tween. + Example usage with lambda:()=> myProperty + A setter for the field or property to tween + Example usage with lambda:x=> myProperty = x + The end value to reachThe tween's duration + + + Tweens a property or field to the given value using default plugins + A getter for the field or property to tween. + Example usage with lambda:()=> myProperty + A setter for the field or property to tween + Example usage with lambda:x=> myProperty = x + The end value to reachThe tween's duration + + + Tweens a property or field to the given value using default plugins + A getter for the field or property to tween. + Example usage with lambda:()=> myProperty + A setter for the field or property to tween + Example usage with lambda:x=> myProperty = x + The end value to reachThe tween's duration + + + Tweens a property or field to the given value using default plugins + A getter for the field or property to tween. + Example usage with lambda:()=> myProperty + A setter for the field or property to tween + Example usage with lambda:x=> myProperty = x + The end value to reachThe tween's duration + + + Tweens a property or field to the given value using default plugins + A getter for the field or property to tween. + Example usage with lambda:()=> myProperty + A setter for the field or property to tween + Example usage with lambda:x=> myProperty = x + The end value to reachThe tween's duration + + + Tweens a property or field to the given value using a custom plugin + The plugin to use. Each custom plugin implements a static Get() method + you'll need to call to assign the correct plugin in the correct way, like this: + CustomPlugin.Get() + A getter for the field or property to tween. + Example usage with lambda:()=> myProperty + A setter for the field or property to tween + Example usage with lambda:x=> myProperty = x + The end value to reachThe tween's duration + + + Tweens only one axis of a Vector3 to the given value using default plugins. + A getter for the field or property to tween. + Example usage with lambda:()=> myProperty + A setter for the field or property to tween + Example usage with lambda:x=> myProperty = x + The end value to reachThe tween's duration + The axis to tween + + + Tweens only the alpha of a Color to the given value using default plugins + A getter for the field or property to tween. + Example usage with lambda:()=> myProperty + A setter for the field or property to tween + Example usage with lambda:x=> myProperty = x + The end value to reachThe tween's duration + + + Tweens a virtual property from the given start to the given end value + and implements a setter that allows to use that value with an external method or a lambda + Example: + To(MyMethod, 0, 12, 0.5f); + Where MyMethod is a function that accepts a float parameter (which will be the result of the virtual tween) + The action to perform with the tweened value + The value to start from + The end value to reach + The duration of the virtual tween + + + + Punches a Vector3 towards the given direction and then back to the starting one + as if it was connected to the starting position via an elastic. + This tween type generates some GC allocations at startup + A getter for the field or property to tween. + Example usage with lambda:()=> myProperty + A setter for the field or property to tween + Example usage with lambda:x=> myProperty = x + The direction and strength of the punch + The duration of the tween + Indicates how much will the punch vibrate + Represents how much (0 to 1) the vector will go beyond the starting position when bouncing backwards. + 1 creates a full oscillation between the direction and the opposite decaying direction, + while 0 oscillates only between the starting position and the decaying direction + + + Shakes a Vector3 with the given values. + A getter for the field or property to tween. + Example usage with lambda:()=> myProperty + A setter for the field or property to tween + Example usage with lambda:x=> myProperty = x + The duration of the tween + The shake strength + Indicates how much will the shake vibrate + Indicates how much the shake will be random (0 to 180 - values higher than 90 kind of suck, so beware). + Setting it to 0 will shake along a single direction and behave like a random punch. + If TRUE only shakes on the X Y axis (looks better with things like cameras). + If TRUE the shake will automatically fadeOut smoothly within the tween's duration, otherwise it will not + + + Shakes a Vector3 with the given values. + A getter for the field or property to tween. + Example usage with lambda:()=> myProperty + A setter for the field or property to tween + Example usage with lambda:x=> myProperty = x + The duration of the tween + The shake strength on each axis + Indicates how much will the shake vibrate + Indicates how much the shake will be random (0 to 180 - values higher than 90 kind of suck, so beware). + Setting it to 0 will shake along a single direction and behave like a random punch. + If TRUE the shake will automatically fadeOut smoothly within the tween's duration, otherwise it will not + + + Tweens a property or field to the given values using default plugins. + Ease is applied between each segment and not as a whole. + This tween type generates some GC allocations at startup + A getter for the field or property to tween. + Example usage with lambda:()=> myProperty + A setter for the field or property to tween + Example usage with lambda:x=> myProperty = x + The end values to reach for each segment. This array must have the same length as durations + The duration of each segment. This array must have the same length as endValues + + + + Returns a new to be used for tween groups + + + + Completes all tweens and returns the number of actual tweens completed + (meaning tweens that don't have infinite loops and were not already complete) + For Sequences only: if TRUE also internal Sequence callbacks will be fired, + otherwise they will be ignored + + + Completes all tweens with the given ID or target and returns the number of actual tweens completed + (meaning the tweens that don't have infinite loops and were not already complete) + For Sequences only: if TRUE internal Sequence callbacks will be fired, + otherwise they will be ignored + + + Flips all tweens (changing their direction to forward if it was backwards and viceversa), + then returns the number of actual tweens flipped + + + Flips the tweens with the given ID or target (changing their direction to forward if it was backwards and viceversa), + then returns the number of actual tweens flipped + + + Sends all tweens to the given position (calculating also eventual loop cycles) and returns the actual tweens involved + + + Sends all tweens with the given ID or target to the given position (calculating also eventual loop cycles) + and returns the actual tweens involved + + + Kills all tweens and returns the number of actual tweens killed + If TRUE completes the tweens before killing them + + + Kills all tweens and returns the number of actual tweens killed + If TRUE completes the tweens before killing them + Eventual IDs or targets to exclude from the killing + + + Kills all tweens with the given ID or target and returns the number of actual tweens killed + If TRUE completes the tweens before killing them + + + Pauses all tweens and returns the number of actual tweens paused + + + Pauses all tweens with the given ID or target and returns the number of actual tweens paused + (meaning the tweens that were actually playing and have been paused) + + + Plays all tweens and returns the number of actual tweens played + (meaning tweens that were not already playing or complete) + + + Plays all tweens with the given ID or target and returns the number of actual tweens played + (meaning the tweens that were not already playing or complete) + + + Plays all tweens with the given target and the given ID, and returns the number of actual tweens played + (meaning the tweens that were not already playing or complete) + + + Plays backwards all tweens and returns the number of actual tweens played + (meaning tweens that were not already started, playing backwards or rewinded) + + + Plays backwards all tweens with the given ID or target and returns the number of actual tweens played + (meaning the tweens that were not already started, playing backwards or rewinded) + + + Plays backwards all tweens with the given target and ID and returns the number of actual tweens played + (meaning the tweens that were not already started, playing backwards or rewinded) + + + Plays forward all tweens and returns the number of actual tweens played + (meaning tweens that were not already playing forward or complete) + + + Plays forward all tweens with the given ID or target and returns the number of actual tweens played + (meaning the tweens that were not already playing forward or complete) + + + Plays forward all tweens with the given target and ID and returns the number of actual tweens played + (meaning the tweens that were not already started, playing backwards or rewinded) + + + Restarts all tweens, then returns the number of actual tweens restarted + + + Restarts all tweens with the given ID or target, then returns the number of actual tweens restarted + If TRUE includes the eventual tweens delays, otherwise skips them + If >= 0 changes the startup delay of all involved tweens to this value, otherwise doesn't touch it + + + Restarts all tweens with the given target and the given ID, and returns the number of actual tweens played + (meaning the tweens that were not already playing or complete) + If TRUE includes the eventual tweens delays, otherwise skips them + If >= 0 changes the startup delay of all involved tweens to this value, otherwise doesn't touch it + + + Rewinds and pauses all tweens, then returns the number of actual tweens rewinded + (meaning tweens that were not already rewinded) + + + Rewinds and pauses all tweens with the given ID or target, then returns the number of actual tweens rewinded + (meaning the tweens that were not already rewinded) + + + Smoothly rewinds all tweens (delays excluded), then returns the number of actual tweens rewinding/rewinded + (meaning tweens that were not already rewinded). + A "smooth rewind" animates the tween to its start position, + skipping all elapsed loops (except in case of LoopType.Incremental) while keeping the animation fluent. + Note that a tween that was smoothly rewinded will have its play direction flipped + + + Smoothly rewinds all tweens (delays excluded) with the given ID or target, then returns the number of actual tweens rewinding/rewinded + (meaning the tweens that were not already rewinded). + A "smooth rewind" animates the tween to its start position, + skipping all elapsed loops (except in case of LoopType.Incremental) while keeping the animation fluent. + Note that a tween that was smoothly rewinded will have its play direction flipped + + + Toggles the play state of all tweens and returns the number of actual tweens toggled + (meaning tweens that could be played or paused, depending on the toggle state) + + + Toggles the play state of all tweens with the given ID or target and returns the number of actual tweens toggled + (meaning the tweens that could be played or paused, depending on the toggle state) + + + + Returns TRUE if a tween with the given ID or target is active. + You can also use this to know if a shortcut tween is active for a given target. + Example: + transform.DOMoveX(45, 1); // transform is automatically added as the tween target + DOTween.IsTweening(transform); // Returns true + + The target or ID to look for + If FALSE (default) returns TRUE as long as a tween for the given target/ID is active, + otherwise also requires it to be playing + + + + Returns the total number of active and playing tweens. + A tween is considered as playing even if its delay is actually playing + + + + + Returns a list of all active tweens in a playing state. + Returns NULL if there are no active playing tweens. + Beware: each time you call this method a new list is generated, so use it for debug only + + If NULL creates a new list, otherwise clears and fills this one (and thus saves allocations) + + + + Returns a list of all active tweens in a paused state. + Returns NULL if there are no active paused tweens. + Beware: each time you call this method a new list is generated, so use it for debug only + + If NULL creates a new list, otherwise clears and fills this one (and thus saves allocations) + + + + Returns a list of all active tweens with the given id. + Returns NULL if there are no active tweens with the given id. + Beware: each time you call this method a new list is generated + + If TRUE returns only the tweens with the given ID that are currently playing + If NULL creates a new list, otherwise clears and fills this one (and thus saves allocations) + + + + Returns a list of all active tweens with the given target. + Returns NULL if there are no active tweens with the given target. + Beware: each time you call this method a new list is generated + If TRUE returns only the tweens with the given target that are currently playing + If NULL creates a new list, otherwise clears and fills this one (and thus saves allocations) + + + + + Creates virtual tweens that can be used to change other elements via their OnUpdate calls + + + + + Tweens a virtual float. + You can add regular settings to the generated tween, + but do not use SetUpdate or you will overwrite the onVirtualUpdate parameter + + The value to start from + The value to tween to + The duration of the tween + A callback which must accept a parameter of type float, called at each update + + + + Returns a value based on the given ease and lifetime percentage (0 to 1) + The value to start from when lifetimePercentage is 0 + The value to reach when lifetimePercentage is 1 + The time percentage (0 to 1) at which the value should be taken + The type of ease + + + Returns a value based on the given ease and lifetime percentage (0 to 1) + The value to start from when lifetimePercentage is 0 + The value to reach when lifetimePercentage is 1 + The time percentage (0 to 1) at which the value should be taken + The type of ease + Eventual overshoot to use with Back ease + + + Returns a value based on the given ease and lifetime percentage (0 to 1) + The value to start from when lifetimePercentage is 0 + The value to reach when lifetimePercentage is 1 + The time percentage (0 to 1) at which the value should be taken + The type of ease + Eventual amplitude to use with Elastic easeType + Eventual period to use with Elastic easeType + + + Returns a value based on the given ease and lifetime percentage (0 to 1) + The value to start from when lifetimePercentage is 0 + The value to reach when lifetimePercentage is 1 + The time percentage (0 to 1) at which the value should be taken + The AnimationCurve to use for ease + + + Fires the given callback after the given time. + Callback delay + Callback to fire when the delay has expired + If TRUE (default) ignores Unity's timeScale + + + + Don't assign this! It's assigned automatically when creating 0 duration tweens + + + + + Don't assign this! It's assigned automatically when setting the ease to an AnimationCurve or to a custom ease function + + + + + Allows to wrap ease method in special ways, adding extra features + + + + + Converts the given ease so that it also creates a stop-motion effect, by playing the tween at the given FPS + + FPS at which the tween should be played + Ease type + + + + Converts the given ease so that it also creates a stop-motion effect, by playing the tween at the given FPS + + FPS at which the tween should be played + AnimationCurve to use for the ease + + + + Converts the given ease so that it also creates a stop-motion effect, by playing the tween at the given FPS + + FPS at which the tween should be played + Custom ease function to use + + + + Used to allow method chaining with DOTween.Init + + + + + Directly sets the current max capacity of Tweeners and Sequences + (meaning how many Tweeners and Sequences can be running at the same time), + so that DOTween doesn't need to automatically increase them in case the max is reached + (which might lead to hiccups when that happens). + Sequences capacity must be less or equal to Tweeners capacity + (if you pass a low Tweener capacity it will be automatically increased to match the Sequence's). + Beware: use this method only when there are no tweens running. + + Max Tweeners capacity. + Default: 200 + Max Sequences capacity. + Default: 50 + + + + Behaviour that can be assigned when chaining a SetLink to a tween + + + + Pauses the tween when the link target is disabled + + + Pauses the tween when the link target is disabled, plays it when it's enabled + + + Pauses the tween when the link target is disabled, restarts it when it's enabled + + + Plays the tween when the link target is enabled + + + Restarts the tween when the link target is enabled + + + Kills the tween when the link target is disabled + + + Kills the tween when the link target is destroyed (becomes NULL). This is always active even if another behaviour is chosen + + + Completes the tween when the link target is disabled + + + Completes and kills the tween when the link target is disabled + + + Rewinds the tween (delay excluded) when the link target is disabled + + + Rewinds and kills the tween when the link target is disabled + + + + Path mode (used to determine correct LookAt orientation) + + + + Ignores the path mode (and thus LookAt behaviour) + + + Regular 3D path + + + 2D top-down path + + + 2D side-scroller path + + + + Type of path to use with DOPath tweens + + + + Linear, composed of straight segments between each waypoint + + + Curved path (which uses Catmull-Rom curves) + + + EXPERIMENTAL: Curved path (which uses Cubic Bezier curves, where each point requires two extra control points) + + + + Path control point + + + + + Gets the point on the path at the given percentage (0 to 1) + + The percentage (0 to 1) at which to get the point + If TRUE constant speed is taken into account, otherwise not + + + + Base interface for all tween plugins options + + + + Resets the plugin + + + + This plugin generates some GC allocations at startup + + + + + Path plugin works exclusively with Transforms + + + + + Rotation mode used with DORotate methods + + + + + Fastest way that never rotates beyond 360° + + + + + Fastest way that rotates beyond 360° + + + + + Adds the given rotation to the transform using world axis and an advanced precision mode + (like when using transform.Rotate(Space.World)). + In this mode the end value is is always considered relative + + + + + Adds the given rotation to the transform's local axis + (like when rotating an object with the "local" switch enabled in Unity's editor or using transform.Rotate(Space.Self)). + In this mode the end value is is always considered relative + + + + + Type of scramble to apply to string tweens + + + + + No scrambling of characters + + + + + A-Z + a-z + 0-9 characters + + + + + A-Z characters + + + + + a-z characters + + + + + 0-9 characters + + + + + Custom characters + + + + + Methods that extend Tween objects and allow to control or get data from them + + + + Completes the tween + + + Completes the tween + For Sequences only: if TRUE also internal Sequence callbacks will be fired, + otherwise they will be ignored + + + Flips the direction of this tween (backwards if it was going forward or viceversa) + + + Forces the tween to initialize its settings immediately + + + Send the tween to the given position in time + Time position to reach + (if higher than the whole tween duration the tween will simply reach its end) + If TRUE will play the tween after reaching the given position, otherwise it will pause it + + + Kills the tween + If TRUE completes the tween before killing it + + + Pauses the tween + + + Plays the tween + + + Sets the tween in a backwards direction and plays it + + + Sets the tween in a forward direction and plays it + + + Restarts the tween from the beginning + Ignored in case of Sequences. If TRUE includes the eventual tween delay, otherwise skips it + Ignored in case of Sequences. If >= 0 changes the startup delay to this value, otherwise doesn't touch it + + + Rewinds and pauses the tween + Ignored in case of Sequences. If TRUE includes the eventual tween delay, otherwise skips it + + + Smoothly rewinds the tween (delays excluded). + A "smooth rewind" animates the tween to its start position, + skipping all elapsed loops (except in case of LoopType.Incremental) while keeping the animation fluent. + If called on a tween who is still waiting for its delay to happen, it will simply set the delay to 0 and pause the tween. + Note that a tween that was smoothly rewinded will have its play direction flipped + + + Plays the tween if it was paused, pauses it if it was playing + + + Send a path tween to the given waypoint. + Has no effect if this is not a path tween. + BEWARE, this is a special utility method: + it works only with Linear eases. Also, the lookAt direction might be wrong after calling this and might need to be set manually + (because it relies on a smooth path movement and doesn't work well with jumps that encompass dramatic direction changes) + Waypoint index to reach + (if higher than the max waypoint index the tween will simply go to the last one) + If TRUE will play the tween after reaching the given waypoint, otherwise it will pause it + + + + Creates a yield instruction that waits until the tween is killed or complete. + It can be used inside a coroutine as a yield. + Example usage:yield return myTween.WaitForCompletion(); + + + + + Creates a yield instruction that waits until the tween is killed or rewinded. + It can be used inside a coroutine as a yield. + Example usage:yield return myTween.WaitForRewind(); + + + + + Creates a yield instruction that waits until the tween is killed. + It can be used inside a coroutine as a yield. + Example usage:yield return myTween.WaitForKill(); + + + + + Creates a yield instruction that waits until the tween is killed or has gone through the given amount of loops. + It can be used inside a coroutine as a yield. + Example usage:yield return myTween.WaitForElapsedLoops(2); + + Elapsed loops to wait for + + + + Creates a yield instruction that waits until the tween is killed or has reached the given position (loops included, delays excluded). + It can be used inside a coroutine as a yield. + Example usage:yield return myTween.WaitForPosition(2.5f); + + Position (loops included, delays excluded) to wait for + + + + Creates a yield instruction that waits until the tween is killed or started + (meaning when the tween is set in a playing state the first time, after any eventual delay). + It can be used inside a coroutine as a yield. + Example usage:yield return myTween.WaitForStart(); + + + + Returns the total number of loops completed by this tween + + + Returns the eventual delay set for this tween + + + Returns the duration of this tween (delays excluded). + NOTE: when using settings like SpeedBased, the duration will be recalculated when the tween starts + If TRUE returns the full duration loops included, + otherwise the duration of a single loop cycle + + + Returns the elapsed time for this tween (delays exluded) + If TRUE returns the elapsed time since startup loops included, + otherwise the elapsed time within the current loop cycle + + + Returns the elapsed percentage (0 to 1) of this tween (delays exluded) + If TRUE returns the elapsed percentage since startup loops included, + otherwise the elapsed percentage within the current loop cycle + + + Returns the elapsed percentage (0 to 1) of this tween (delays exluded), + based on a single loop, and calculating eventual backwards Yoyo loops as 1 to 0 instead of 0 to 1 + + + Returns FALSE if this tween has been killed. + BEWARE: if this tween is recyclable it might have been spawned again for another use and thus return TRUE anyway. + When working with recyclable tweens you should take care to know when a tween has been killed and manually set your references to NULL. + If you want to be sure your references are set to NULL when a tween is killed you can use the OnKill callback like this: + .OnKill(()=> myTweenReference = null) + + + Returns TRUE if this tween was reversed and is set to go backwards + + + Returns TRUE if the tween is complete + (silently fails and returns FALSE if the tween has been killed) + + + Returns TRUE if this tween has been initialized + + + Returns TRUE if this tween is playing + + + Returns the total number of loops set for this tween + (returns -1 if the loops are infinite) + + + + Returns a point on a path based on the given path percentage. + Returns Vector3.zero if this is not a path tween, if the tween is invalid, or if the path is not yet initialized. + A path is initialized after its tween starts, or immediately if the tween was created with the Path Editor (DOTween Pro feature). + You can force a path to be initialized by calling myTween.ForceInit(). + + Percentage of the path (0 to 1) on which to get the point + + + + Returns an array of points that can be used to draw the path. + Note that this method generates allocations, because it creates a new array. + Returns NULL if this is not a path tween, if the tween is invalid, or if the path is not yet initialized. + A path is initialized after its tween starts, or immediately if the tween was created with the Path Editor (DOTween Pro feature). + You can force a path to be initialized by calling myTween.ForceInit(). + + How many points to create for each path segment (waypoint to waypoint). + Only used in case of non-Linear paths + + + + Returns the length of a path. + Returns -1 if this is not a path tween, if the tween is invalid, or if the path is not yet initialized. + A path is initialized after its tween starts, or immediately if the tween was created with the Path Editor (DOTween Pro feature). + You can force a path to be initialized by calling myTween.ForceInit(). + + + + + Types of loop + + + + Each loop cycle restarts from the beginning + + + The tween moves forward and backwards at alternate cycles + + + Continuously increments the tween at the end of each loop cycle (A to B, B to B+(A-B), and so on), thus always moving "onward". + In case of String tweens works only if the tween is set as relative + + + + Controls other tweens as a group + + + + + Methods that extend known Unity objects and allow to directly create and control tweens from their instances + + + + Tweens a Camera's aspect to the given value. + Also stores the camera as the tween's target so it can be used for filtered operations + The end value to reachThe duration of the tween + + + Tweens a Camera's backgroundColor to the given value. + Also stores the camera as the tween's target so it can be used for filtered operations + The end value to reachThe duration of the tween + + + Tweens a Camera's farClipPlane to the given value. + Also stores the camera as the tween's target so it can be used for filtered operations + The end value to reachThe duration of the tween + + + Tweens a Camera's fieldOfView to the given value. + Also stores the camera as the tween's target so it can be used for filtered operations + The end value to reachThe duration of the tween + + + Tweens a Camera's nearClipPlane to the given value. + Also stores the camera as the tween's target so it can be used for filtered operations + The end value to reachThe duration of the tween + + + Tweens a Camera's orthographicSize to the given value. + Also stores the camera as the tween's target so it can be used for filtered operations + The end value to reachThe duration of the tween + + + Tweens a Camera's pixelRect to the given value. + Also stores the camera as the tween's target so it can be used for filtered operations + The end value to reachThe duration of the tween + + + Tweens a Camera's rect to the given value. + Also stores the camera as the tween's target so it can be used for filtered operations + The end value to reachThe duration of the tween + + + Shakes a Camera's localPosition along its relative X Y axes with the given values. + Also stores the camera as the tween's target so it can be used for filtered operations + The duration of the tween + The shake strength + Indicates how much will the shake vibrate + Indicates how much the shake will be random (0 to 180 - values higher than 90 kind of suck, so beware). + Setting it to 0 will shake along a single direction. + If TRUE the shake will automatically fadeOut smoothly within the tween's duration, otherwise it will not + + + Shakes a Camera's localPosition along its relative X Y axes with the given values. + Also stores the camera as the tween's target so it can be used for filtered operations + The duration of the tween + The shake strength on each axis + Indicates how much will the shake vibrate + Indicates how much the shake will be random (0 to 180 - values higher than 90 kind of suck, so beware). + Setting it to 0 will shake along a single direction. + If TRUE the shake will automatically fadeOut smoothly within the tween's duration, otherwise it will not + + + Shakes a Camera's localRotation. + Also stores the camera as the tween's target so it can be used for filtered operations + The duration of the tween + The shake strength + Indicates how much will the shake vibrate + Indicates how much the shake will be random (0 to 180 - values higher than 90 kind of suck, so beware). + Setting it to 0 will shake along a single direction. + If TRUE the shake will automatically fadeOut smoothly within the tween's duration, otherwise it will not + + + Shakes a Camera's localRotation. + Also stores the camera as the tween's target so it can be used for filtered operations + The duration of the tween + The shake strength on each axis + Indicates how much will the shake vibrate + Indicates how much the shake will be random (0 to 180 - values higher than 90 kind of suck, so beware). + Setting it to 0 will shake along a single direction. + If TRUE the shake will automatically fadeOut smoothly within the tween's duration, otherwise it will not + + + Tweens a Light's color to the given value. + Also stores the light as the tween's target so it can be used for filtered operations + The end value to reachThe duration of the tween + + + Tweens a Light's intensity to the given value. + Also stores the light as the tween's target so it can be used for filtered operations + The end value to reachThe duration of the tween + + + Tweens a Light's shadowStrength to the given value. + Also stores the light as the tween's target so it can be used for filtered operations + The end value to reachThe duration of the tween + + + Tweens a LineRenderer's color to the given value. + Also stores the LineRenderer as the tween's target so it can be used for filtered operations. + Note that this method requires to also insert the start colors for the tween, + since LineRenderers have no way to get them. + The start value to tween from + The end value to reachThe duration of the tween + + + Tweens a Material's color to the given value. + Also stores the material as the tween's target so it can be used for filtered operations + The end value to reachThe duration of the tween + + + Tweens a Material's named color property to the given value. + Also stores the material as the tween's target so it can be used for filtered operations + The end value to reach + The name of the material property to tween (like _Tint or _SpecColor) + The duration of the tween + + + Tweens a Material's named color property with the given ID to the given value. + Also stores the material as the tween's target so it can be used for filtered operations + The end value to reach + The ID of the material property to tween (also called nameID in Unity's manual) + The duration of the tween + + + Tweens a Material's alpha color to the given value + (will have no effect unless your material supports transparency). + Also stores the material as the tween's target so it can be used for filtered operations + The end value to reachThe duration of the tween + + + Tweens a Material's alpha color to the given value + (will have no effect unless your material supports transparency). + Also stores the material as the tween's target so it can be used for filtered operations + The end value to reach + The name of the material property to tween (like _Tint or _SpecColor) + The duration of the tween + + + Tweens a Material's alpha color with the given ID to the given value + (will have no effect unless your material supports transparency). + Also stores the material as the tween's target so it can be used for filtered operations + The end value to reach + The ID of the material property to tween (also called nameID in Unity's manual) + The duration of the tween + + + Tweens a Material's named float property to the given value. + Also stores the material as the tween's target so it can be used for filtered operations + The end value to reach + The name of the material property to tween + The duration of the tween + + + Tweens a Material's named float property with the given ID to the given value. + Also stores the material as the tween's target so it can be used for filtered operations + The end value to reach + The ID of the material property to tween (also called nameID in Unity's manual) + The duration of the tween + + + Tweens a Material's texture offset to the given value. + Also stores the material as the tween's target so it can be used for filtered operations + The end value to reach + The duration of the tween + + + Tweens a Material's named texture offset property to the given value. + Also stores the material as the tween's target so it can be used for filtered operations + The end value to reach + The name of the material property to tween + The duration of the tween + + + Tweens a Material's texture scale to the given value. + Also stores the material as the tween's target so it can be used for filtered operations + The end value to reach + The duration of the tween + + + Tweens a Material's named texture scale property to the given value. + Also stores the material as the tween's target so it can be used for filtered operations + The end value to reach + The name of the material property to tween + The duration of the tween + + + Tweens a Material's named Vector property to the given value. + Also stores the material as the tween's target so it can be used for filtered operations + The end value to reach + The name of the material property to tween + The duration of the tween + + + Tweens a Material's named Vector property with the given ID to the given value. + Also stores the material as the tween's target so it can be used for filtered operations + The end value to reach + The ID of the material property to tween (also called nameID in Unity's manual) + The duration of the tween + + + Tweens a TrailRenderer's startWidth/endWidth to the given value. + Also stores the TrailRenderer as the tween's target so it can be used for filtered operations + The end startWidth to reachThe end endWidth to reach + The duration of the tween + + + Tweens a TrailRenderer's time to the given value. + Also stores the TrailRenderer as the tween's target so it can be used for filtered operations + The end value to reachThe duration of the tween + + + Tweens a Transform's position to the given value. + Also stores the transform as the tween's target so it can be used for filtered operations + The end value to reachThe duration of the tween + If TRUE the tween will smoothly snap all values to integers + + + Tweens a Transform's X position to the given value. + Also stores the transform as the tween's target so it can be used for filtered operations + The end value to reachThe duration of the tween + If TRUE the tween will smoothly snap all values to integers + + + Tweens a Transform's Y position to the given value. + Also stores the transform as the tween's target so it can be used for filtered operations + The end value to reachThe duration of the tween + If TRUE the tween will smoothly snap all values to integers + + + Tweens a Transform's Z position to the given value. + Also stores the transform as the tween's target so it can be used for filtered operations + The end value to reachThe duration of the tween + If TRUE the tween will smoothly snap all values to integers + + + Tweens a Transform's localPosition to the given value. + Also stores the transform as the tween's target so it can be used for filtered operations + The end value to reachThe duration of the tween + If TRUE the tween will smoothly snap all values to integers + + + Tweens a Transform's X localPosition to the given value. + Also stores the transform as the tween's target so it can be used for filtered operations + The end value to reachThe duration of the tween + If TRUE the tween will smoothly snap all values to integers + + + Tweens a Transform's Y localPosition to the given value. + Also stores the transform as the tween's target so it can be used for filtered operations + The end value to reachThe duration of the tween + If TRUE the tween will smoothly snap all values to integers + + + Tweens a Transform's Z localPosition to the given value. + Also stores the transform as the tween's target so it can be used for filtered operations + The end value to reachThe duration of the tween + If TRUE the tween will smoothly snap all values to integers + + + Tweens a Transform's rotation to the given value. + Also stores the transform as the tween's target so it can be used for filtered operations + The end value to reachThe duration of the tween + Rotation mode + + + Tweens a Transform's rotation to the given value using pure quaternion values. + Also stores the transform as the tween's target so it can be used for filtered operations. + PLEASE NOTE: DORotate, which takes Vector3 values, is the preferred rotation method. + This method was implemented for very special cases, and doesn't support LoopType.Incremental loops + (neither for itself nor if placed inside a LoopType.Incremental Sequence) + + The end value to reachThe duration of the tween + + + Tweens a Transform's localRotation to the given value. + Also stores the transform as the tween's target so it can be used for filtered operations + The end value to reachThe duration of the tween + Rotation mode + + + Tweens a Transform's rotation to the given value using pure quaternion values. + Also stores the transform as the tween's target so it can be used for filtered operations. + PLEASE NOTE: DOLocalRotate, which takes Vector3 values, is the preferred rotation method. + This method was implemented for very special cases, and doesn't support LoopType.Incremental loops + (neither for itself nor if placed inside a LoopType.Incremental Sequence) + + The end value to reachThe duration of the tween + + + Tweens a Transform's localScale to the given value. + Also stores the transform as the tween's target so it can be used for filtered operations + The end value to reachThe duration of the tween + + + Tweens a Transform's localScale uniformly to the given value. + Also stores the transform as the tween's target so it can be used for filtered operations + The end value to reachThe duration of the tween + + + Tweens a Transform's X localScale to the given value. + Also stores the transform as the tween's target so it can be used for filtered operations + The end value to reachThe duration of the tween + + + Tweens a Transform's Y localScale to the given value. + Also stores the transform as the tween's target so it can be used for filtered operations + The end value to reachThe duration of the tween + + + Tweens a Transform's Z localScale to the given value. + Also stores the transform as the tween's target so it can be used for filtered operations + The end value to reachThe duration of the tween + + + Tweens a Transform's rotation so that it will look towards the given position. + Also stores the transform as the tween's target so it can be used for filtered operations + The position to look atThe duration of the tween + Eventual axis constraint for the rotation + The vector that defines in which direction up is (default: Vector3.up) + + + Punches a Transform's localPosition towards the given direction and then back to the starting one + as if it was connected to the starting position via an elastic. + The direction and strength of the punch (added to the Transform's current position) + The duration of the tween + Indicates how much will the punch vibrate + Represents how much (0 to 1) the vector will go beyond the starting position when bouncing backwards. + 1 creates a full oscillation between the punch direction and the opposite direction, + while 0 oscillates only between the punch and the start position + If TRUE the tween will smoothly snap all values to integers + + + Punches a Transform's localScale towards the given size and then back to the starting one + as if it was connected to the starting scale via an elastic. + The punch strength (added to the Transform's current scale) + The duration of the tween + Indicates how much will the punch vibrate + Represents how much (0 to 1) the vector will go beyond the starting size when bouncing backwards. + 1 creates a full oscillation between the punch scale and the opposite scale, + while 0 oscillates only between the punch scale and the start scale + + + Punches a Transform's localRotation towards the given size and then back to the starting one + as if it was connected to the starting rotation via an elastic. + The punch strength (added to the Transform's current rotation) + The duration of the tween + Indicates how much will the punch vibrate + Represents how much (0 to 1) the vector will go beyond the starting rotation when bouncing backwards. + 1 creates a full oscillation between the punch rotation and the opposite rotation, + while 0 oscillates only between the punch and the start rotation + + + Shakes a Transform's localPosition with the given values. + The duration of the tween + The shake strength + Indicates how much will the shake vibrate + Indicates how much the shake will be random (0 to 180 - values higher than 90 kind of suck, so beware). + Setting it to 0 will shake along a single direction. + If TRUE the tween will smoothly snap all values to integers + If TRUE the shake will automatically fadeOut smoothly within the tween's duration, otherwise it will not + + + Shakes a Transform's localPosition with the given values. + The duration of the tween + The shake strength on each axis + Indicates how much will the shake vibrate + Indicates how much the shake will be random (0 to 180 - values higher than 90 kind of suck, so beware). + Setting it to 0 will shake along a single direction. + If TRUE the tween will smoothly snap all values to integers + If TRUE the shake will automatically fadeOut smoothly within the tween's duration, otherwise it will not + + + Shakes a Transform's localRotation. + The duration of the tween + The shake strength + Indicates how much will the shake vibrate + Indicates how much the shake will be random (0 to 180 - values higher than 90 kind of suck, so beware). + Setting it to 0 will shake along a single direction. + If TRUE the shake will automatically fadeOut smoothly within the tween's duration, otherwise it will not + + + Shakes a Transform's localRotation. + The duration of the tween + The shake strength on each axis + Indicates how much will the shake vibrate + Indicates how much the shake will be random (0 to 180 - values higher than 90 kind of suck, so beware). + Setting it to 0 will shake along a single direction. + If TRUE the shake will automatically fadeOut smoothly within the tween's duration, otherwise it will not + + + Shakes a Transform's localScale. + The duration of the tween + The shake strength + Indicates how much will the shake vibrate + Indicates how much the shake will be random (0 to 180 - values higher than 90 kind of suck, so beware). + Setting it to 0 will shake along a single direction. + If TRUE the shake will automatically fadeOut smoothly within the tween's duration, otherwise it will not + + + Shakes a Transform's localScale. + The duration of the tween + The shake strength on each axis + Indicates how much will the shake vibrate + Indicates how much the shake will be random (0 to 180 - values higher than 90 kind of suck, so beware). + Setting it to 0 will shake along a single direction. + If TRUE the shake will automatically fadeOut smoothly within the tween's duration, otherwise it will not + + + Tweens a Transform's position to the given value, while also applying a jump effect along the Y axis. + Returns a Sequence instead of a Tweener. + Also stores the transform as the tween's target so it can be used for filtered operations + The end value to reach + Power of the jump (the max height of the jump is represented by this plus the final Y offset) + Total number of jumps + The duration of the tween + If TRUE the tween will smoothly snap all values to integers + + + Tweens a Transform's localPosition to the given value, while also applying a jump effect along the Y axis. + Returns a Sequence instead of a Tweener. + Also stores the transform as the tween's target so it can be used for filtered operations + The end value to reach + Power of the jump (the max height of the jump is represented by this plus the final Y offset) + Total number of jumps + The duration of the tween + If TRUE the tween will smoothly snap all values to integers + + + Tweens a Transform's position through the given path waypoints, using the chosen path algorithm. + Also stores the transform as the tween's target so it can be used for filtered operations + The waypoints to go through + The duration of the tween + The type of path: Linear (straight path) or CatmullRom (curved CatmullRom path) + The path mode: 3D, side-scroller 2D, top-down 2D + The resolution of the path (useless in case of Linear paths): higher resolutions make for more detailed curved paths but are more expensive. + Defaults to 10, but a value of 5 is usually enough if you don't have dramatic long curves between waypoints + The color of the path (shown when gizmos are active in the Play panel and the tween is running) + + + Tweens a Transform's localPosition through the given path waypoints, using the chosen path algorithm. + Also stores the transform as the tween's target so it can be used for filtered operations + The waypoint to go through + The duration of the tween + The type of path: Linear (straight path) or CatmullRom (curved CatmullRom path) + The path mode: 3D, side-scroller 2D, top-down 2D + The resolution of the path: higher resolutions make for more detailed curved paths but are more expensive. + Defaults to 10, but a value of 5 is usually enough if you don't have dramatic long curves between waypoints + The color of the path (shown when gizmos are active in the Play panel and the tween is running) + + + IMPORTANT: Unless you really know what you're doing, you should use the overload that accepts a Vector3 array instead. + Tweens a Transform's position via the given path. + Also stores the transform as the tween's target so it can be used for filtered operations + The path to use + The duration of the tween + The path mode: 3D, side-scroller 2D, top-down 2D + + + IMPORTANT: Unless you really know what you're doing, you should use the overload that accepts a Vector3 array instead. + Tweens a Transform's localPosition via the given path. + Also stores the transform as the tween's target so it can be used for filtered operations + The path to use + The duration of the tween + The path mode: 3D, side-scroller 2D, top-down 2D + + + Tweens a Tween's timeScale to the given value. + Also stores the Tween as the tween's target so it can be used for filtered operations + The end value to reachThe duration of the tween + + + Tweens a Light's color to the given value, + in a way that allows other DOBlendableColor tweens to work together on the same target, + instead than fight each other as multiple DOColor would do. + Also stores the Light as the tween's target so it can be used for filtered operations + The value to tween toThe duration of the tween + + + Tweens a Material's color to the given value, + in a way that allows other DOBlendableColor tweens to work together on the same target, + instead than fight each other as multiple DOColor would do. + Also stores the Material as the tween's target so it can be used for filtered operations + The value to tween toThe duration of the tween + + + Tweens a Material's named color property to the given value, + in a way that allows other DOBlendableColor tweens to work together on the same target, + instead than fight each other as multiple DOColor would do. + Also stores the Material as the tween's target so it can be used for filtered operations + The value to tween to + The name of the material property to tween (like _Tint or _SpecColor) + The duration of the tween + + + Tweens a Material's named color property with the given ID to the given value, + in a way that allows other DOBlendableColor tweens to work together on the same target, + instead than fight each other as multiple DOColor would do. + Also stores the Material as the tween's target so it can be used for filtered operations + The value to tween to + The ID of the material property to tween (also called nameID in Unity's manual) + The duration of the tween + + + Tweens a Transform's position BY the given value (as if you chained a SetRelative), + in a way that allows other DOBlendableMove tweens to work together on the same target, + instead than fight each other as multiple DOMove would do. + Also stores the transform as the tween's target so it can be used for filtered operations + The value to tween byThe duration of the tween + If TRUE the tween will smoothly snap all values to integers + + + Tweens a Transform's localPosition BY the given value (as if you chained a SetRelative), + in a way that allows other DOBlendableMove tweens to work together on the same target, + instead than fight each other as multiple DOMove would do. + Also stores the transform as the tween's target so it can be used for filtered operations + The value to tween byThe duration of the tween + If TRUE the tween will smoothly snap all values to integers + + + EXPERIMENTAL METHOD - Tweens a Transform's rotation BY the given value (as if you chained a SetRelative), + in a way that allows other DOBlendableRotate tweens to work together on the same target, + instead than fight each other as multiple DORotate would do. + Also stores the transform as the tween's target so it can be used for filtered operations + The value to tween byThe duration of the tween + Rotation mode + + + EXPERIMENTAL METHOD - Tweens a Transform's lcoalRotation BY the given value (as if you chained a SetRelative), + in a way that allows other DOBlendableRotate tweens to work together on the same target, + instead than fight each other as multiple DORotate would do. + Also stores the transform as the tween's target so it can be used for filtered operations + The value to tween byThe duration of the tween + Rotation mode + + + Punches a Transform's localRotation BY the given value and then back to the starting one + as if it was connected to the starting rotation via an elastic. Does it in a way that allows other + DOBlendableRotate tweens to work together on the same target + The punch strength (added to the Transform's current rotation) + The duration of the tween + Indicates how much will the punch vibrate + Represents how much (0 to 1) the vector will go beyond the starting rotation when bouncing backwards. + 1 creates a full oscillation between the punch rotation and the opposite rotation, + while 0 oscillates only between the punch and the start rotation + + + Tweens a Transform's localScale BY the given value (as if you chained a SetRelative), + in a way that allows other DOBlendableScale tweens to work together on the same target, + instead than fight each other as multiple DOScale would do. + Also stores the transform as the tween's target so it can be used for filtered operations + The value to tween byThe duration of the tween + + + + Completes all tweens that have this target as a reference + (meaning tweens that were started from this target, or that had this target added as an Id) + and returns the total number of tweens completed + (meaning the tweens that don't have infinite loops and were not already complete) + + For Sequences only: if TRUE also internal Sequence callbacks will be fired, + otherwise they will be ignored + + + + Completes all tweens that have this target as a reference + (meaning tweens that were started from this target, or that had this target added as an Id) + and returns the total number of tweens completed + (meaning the tweens that don't have infinite loops and were not already complete) + + For Sequences only: if TRUE also internal Sequence callbacks will be fired, + otherwise they will be ignored + + + + Kills all tweens that have this target as a reference + (meaning tweens that were started from this target, or that had this target added as an Id) + and returns the total number of tweens killed. + + If TRUE completes the tween before killing it + + + + Kills all tweens that have this target as a reference + (meaning tweens that were started from this target, or that had this target added as an Id) + and returns the total number of tweens killed. + + If TRUE completes the tween before killing it + + + + Flips the direction (backwards if it was going forward or viceversa) of all tweens that have this target as a reference + (meaning tweens that were started from this target, or that had this target added as an Id) + and returns the total number of tweens flipped. + + + + + Flips the direction (backwards if it was going forward or viceversa) of all tweens that have this target as a reference + (meaning tweens that were started from this target, or that had this target added as an Id) + and returns the total number of tweens flipped. + + + + + Sends to the given position all tweens that have this target as a reference + (meaning tweens that were started from this target, or that had this target added as an Id) + and returns the total number of tweens involved. + + Time position to reach + (if higher than the whole tween duration the tween will simply reach its end) + If TRUE will play the tween after reaching the given position, otherwise it will pause it + + + + Sends to the given position all tweens that have this target as a reference + (meaning tweens that were started from this target, or that had this target added as an Id) + and returns the total number of tweens involved. + + Time position to reach + (if higher than the whole tween duration the tween will simply reach its end) + If TRUE will play the tween after reaching the given position, otherwise it will pause it + + + + Pauses all tweens that have this target as a reference + (meaning tweens that were started from this target, or that had this target added as an Id) + and returns the total number of tweens paused. + + + + + Pauses all tweens that have this target as a reference + (meaning tweens that were started from this target, or that had this target added as an Id) + and returns the total number of tweens paused. + + + + + Plays all tweens that have this target as a reference + (meaning tweens that were started from this target, or that had this target added as an Id) + and returns the total number of tweens played. + + + + + Plays all tweens that have this target as a reference + (meaning tweens that were started from this target, or that had this target added as an Id) + and returns the total number of tweens played. + + + + + Plays backwards all tweens that have this target as a reference + (meaning tweens that were started from this target, or that had this target added as an Id) + and returns the total number of tweens played. + + + + + Plays backwards all tweens that have this target as a reference + (meaning tweens that were started from this target, or that had this target added as an Id) + and returns the total number of tweens played. + + + + + Plays forward all tweens that have this target as a reference + (meaning tweens that were started from this target, or that had this target added as an Id) + and returns the total number of tweens played. + + + + + Plays forward all tweens that have this target as a reference + (meaning tweens that were started from this target, or that had this target added as an Id) + and returns the total number of tweens played. + + + + + Restarts all tweens that have this target as a reference + (meaning tweens that were started from this target, or that had this target added as an Id) + and returns the total number of tweens restarted. + + + + + Restarts all tweens that have this target as a reference + (meaning tweens that were started from this target, or that had this target added as an Id) + and returns the total number of tweens restarted. + + + + + Rewinds all tweens that have this target as a reference + (meaning tweens that were started from this target, or that had this target added as an Id) + and returns the total number of tweens rewinded. + + + + + Rewinds all tweens that have this target as a reference + (meaning tweens that were started from this target, or that had this target added as an Id) + and returns the total number of tweens rewinded. + + + + + Smoothly rewinds all tweens that have this target as a reference + (meaning tweens that were started from this target, or that had this target added as an Id) + and returns the total number of tweens rewinded. + + + + + Smoothly rewinds all tweens that have this target as a reference + (meaning tweens that were started from this target, or that had this target added as an Id) + and returns the total number of tweens rewinded. + + + + + Toggles the paused state (plays if it was paused, pauses if it was playing) of all tweens that have this target as a reference + (meaning tweens that were started from this target, or that had this target added as an Id) + and returns the total number of tweens involved. + + + + + Toggles the paused state (plays if it was paused, pauses if it was playing) of all tweens that have this target as a reference + (meaning tweens that were started from this target, or that had this target added as an Id) + and returns the total number of tweens involved. + + + + + This class serves only as a utility class to store tween settings to apply on multiple tweens. + It is in no way needed otherwise, since you can directly apply tween settings to a tween via chaining + + + + A variable you can eventually Clear and reuse when needed, + to avoid instantiating TweenParams objects + + + Creates a new TweenParams object, which you can use to store tween settings + to pass to multiple tweens via myTween.SetAs(myTweenParms) + + + Clears and resets this TweenParams instance using default values, + so it can be reused without instantiating another one + + + Sets the autoKill behaviour of the tween. + Has no effect if the tween has already started + If TRUE the tween will be automatically killed when complete + + + Sets an ID for the tween, which can then be used as a filter with DOTween's static methods. + The ID to assign to this tween. Can be an int, a string, an object or anything else. + + + Sets the target for the tween, which can then be used as a filter with DOTween's static methods. + IMPORTANT: use it with caution. If you just want to set an ID for the tween use SetId instead. + When using shorcuts the shortcut target is already assigned as the tween's target, + so using this method will overwrite it and prevent shortcut-operations like myTarget.DOPause from working correctly. + The target to assign to this tween. Can be an int, a string, an object or anything else. + + + Sets the looping options for the tween. + Has no effect if the tween has already started + Number of cycles to play (-1 for infinite - will be converted to 1 in case the tween is nested in a Sequence) + Loop behaviour type (default: LoopType.Restart) + + + Sets the ease of the tween. + If applied to Sequences eases the whole sequence animation + Eventual overshoot or amplitude to use with Back or Elastic easeType (default is 1.70158) + Eventual period to use with Elastic easeType (default is 0) + + + Sets the ease of the tween using an AnimationCurve. + If applied to Sequences eases the whole sequence animation + + + Sets the ease of the tween using a custom ease function. + If applied to Sequences eases the whole sequence animation + + + Sets the recycling behaviour for the tween. + If TRUE the tween will be recycled after being killed, otherwise it will be destroyed. + + + Sets the update type to the one defined in DOTween.defaultUpdateType (UpdateType.Normal unless changed) + and lets you choose if it should be independent from Unity's Time.timeScale + If TRUE the tween will ignore Unity's Time.timeScale + + + Sets the type of update (default or independent) for the tween + The type of update (default: UpdateType.Normal) + If TRUE the tween will ignore Unity's Time.timeScale + + + Sets the onStart callback for the tween. + Called the first time the tween is set in a playing state, after any eventual delay + + + Sets the onPlay callback for the tween. + Called when the tween is set in a playing state, after any eventual delay. + Also called each time the tween resumes playing from a paused state + + + Sets the onRewind callback for the tween. + Called when the tween is rewinded, + either by calling Rewind or by reaching the start position while playing backwards. + Rewinding a tween that is already rewinded will not fire this callback + + + Sets the onUpdate callback for the tween. + Called each time the tween updates + + + Sets the onStepComplete callback for the tween. + Called the moment the tween completes one loop cycle, even when going backwards + + + Sets the onComplete callback for the tween. + Called the moment the tween reaches its final forward position, loops included + + + Sets the onKill callback for the tween. + Called the moment the tween is killed + + + Sets the onWaypointChange callback for the tween. + Called when a path tween reaches a new waypoint + + + Sets a delayed startup for the tween. + Has no effect on Sequences or if the tween has already started + + + If isRelative is TRUE sets the tween as relative + (the endValue will be calculated as startValue + endValue instead than being used directly). + Has no effect on Sequences or if the tween has already started + + + If isSpeedBased is TRUE sets the tween as speed based + (the duration will represent the number of units the tween moves x second). + Has no effect on Sequences, nested tweens, or if the tween has already started + + + + Methods that extend Tween objects and allow to set their parameters + + + + Sets the autoKill behaviour of the tween to TRUE. + Has no effect if the tween has already started or if it's added to a Sequence + + + Sets the autoKill behaviour of the tween. + Has no effect if the tween has already started or if it's added to a Sequence + If TRUE the tween will be automatically killed when complete + + + Sets an ID for the tween (), which can then be used as a filter with DOTween's static methods. + The ID to assign to this tween. Can be an int, a string, an object or anything else. + + + Sets a string ID for the tween (), which can then be used as a filter with DOTween's static methods. + Filtering via string is 2X faster than using an object as an ID (using the alternate obejct overload) + The string ID to assign to this tween. + + + Sets an int ID for the tween (), which can then be used as a filter with DOTween's static methods. + Filtering via int is 4X faster than via object, 2X faster than via string (using the alternate object/string overloads) + The int ID to assign to this tween. + + + Allows to link this tween to a GameObject + so that it will be automatically killed when the GameObject is destroyed. + Has no effect if the tween is added to a Sequence + The link target (unrelated to the target set via SetTarget) + + + Allows to link this tween to a GameObject and assign a behaviour depending on it. + This will also automatically kill the tween when the GameObject is destroyed. + Has no effect if the tween is added to a Sequence + The link target (unrelated to the target set via SetTarget) + The behaviour to use ( is always evaluated even if you choose another one) + + + Sets the target for the tween, which can then be used as a filter with DOTween's static methods. + IMPORTANT: use it with caution. If you just want to set an ID for the tween use SetId instead. + When using shorcuts the shortcut target is already assigned as the tween's target, + so using this method will overwrite it and prevent shortcut-operations like myTarget.DOPause from working correctly. + The target to assign to this tween. Can be an int, a string, an object or anything else. + + + Sets the looping options for the tween. + Has no effect if the tween has already started + Number of cycles to play (-1 for infinite - will be converted to 1 in case the tween is nested in a Sequence) + + + Sets the looping options for the tween. + Has no effect if the tween has already started + Number of cycles to play (-1 for infinite - will be converted to 1 in case the tween is nested in a Sequence) + Loop behaviour type (default: LoopType.Restart) + + + Sets the ease of the tween. + If applied to Sequences eases the whole sequence animation + + + Sets the ease of the tween. + If applied to Sequences eases the whole sequence animation + + Eventual overshoot to use with Back or Flash ease (default is 1.70158 - 1 for Flash). + In case of Flash ease it must be an intenger and sets the total number of flashes that will happen. + Using an even number will complete the tween on the starting value, while an odd one will complete it on the end value. + + + + Sets the ease of the tween. + If applied to Sequences eases the whole sequence animation + Eventual amplitude to use with Elastic easeType or overshoot to use with Flash easeType (default is 1.70158 - 1 for Flash). + In case of Flash ease it must be an integer and sets the total number of flashes that will happen. + Using an even number will complete the tween on the starting value, while an odd one will complete it on the end value. + + Eventual period to use with Elastic or Flash easeType (default is 0). + In case of Flash ease it indicates the power in time of the ease, and must be between -1 and 1. + 0 is balanced, 1 weakens the ease with time, -1 starts the ease weakened and gives it power towards the end. + + + + Sets the ease of the tween using an AnimationCurve. + If applied to Sequences eases the whole sequence animation + + + Sets the ease of the tween using a custom ease function (which must return a value between 0 and 1). + If applied to Sequences eases the whole sequence animation + + + Allows the tween to be recycled after being killed. + + + Sets the recycling behaviour for the tween. + If TRUE the tween will be recycled after being killed, otherwise it will be destroyed. + + + Sets the update type to UpdateType.Normal and lets you choose if it should be independent from Unity's Time.timeScale + If TRUE the tween will ignore Unity's Time.timeScale + + + Sets the type of update for the tween + The type of update (defalt: UpdateType.Normal) + + + Sets the type of update for the tween and lets you choose if it should be independent from Unity's Time.timeScale + The type of update + If TRUE the tween will ignore Unity's Time.timeScale + + + Sets the onStart callback for the tween, clearing any previous onStart callback that was set. + Called the first time the tween is set in a playing state, after any eventual delay + + + Sets the onPlay callback for the tween, clearing any previous onPlay callback that was set. + Called when the tween is set in a playing state, after any eventual delay. + Also called each time the tween resumes playing from a paused state + + + Sets the onPause callback for the tween, clearing any previous onPause callback that was set. + Called when the tween state changes from playing to paused. + If the tween has autoKill set to FALSE, this is called also when the tween reaches completion. + + + Sets the onRewind callback for the tween, clearing any previous onRewind callback that was set. + Called when the tween is rewinded, + either by calling Rewind or by reaching the start position while playing backwards. + Rewinding a tween that is already rewinded will not fire this callback + + + Sets the onUpdate callback for the tween, clearing any previous onUpdate callback that was set. + Called each time the tween updates + + + Sets the onStepComplete callback for the tween, clearing any previous onStepComplete callback that was set. + Called the moment the tween completes one loop cycle, even when going backwards + + + Sets the onComplete callback for the tween, clearing any previous onComplete callback that was set. + Called the moment the tween reaches its final forward position, loops included + + + Sets the onKill callback for the tween, clearing any previous onKill callback that was set. + Called the moment the tween is killed + + + Sets the onWaypointChange callback for the tween, clearing any previous onWaypointChange callback that was set. + Called when a path tween's current waypoint changes + + + Sets the parameters of the tween (id, ease, loops, delay, timeScale, callbacks, etc) as the parameters of the given one. + Doesn't copy specific SetOptions settings: those will need to be applied manually each time. + Has no effect if the tween has already started. + NOTE: the tween's target will not be changed + Tween from which to copy the parameters + + + Sets the parameters of the tween (id, ease, loops, delay, timeScale, callbacks, etc) as the parameters of the given TweenParams. + Has no effect if the tween has already started. + TweenParams from which to copy the parameters + + + Adds the given tween to the end of the Sequence. + Has no effect if the Sequence has already started + The tween to append + + + Adds the given tween to the beginning of the Sequence, pushing forward the other nested content. + Has no effect if the Sequence has already started + The tween to prepend + + + Inserts the given tween at the same time position of the last tween, callback or intervale added to the Sequence. + Note that, in case of a Join after an interval, the insertion time will be the time where the interval starts, not where it finishes. + Has no effect if the Sequence has already started + + + Inserts the given tween at the given time position in the Sequence, + automatically adding an interval if needed. + Has no effect if the Sequence has already started + The time position where the tween will be placed + The tween to insert + + + Adds the given interval to the end of the Sequence. + Has no effect if the Sequence has already started + The interval duration + + + Adds the given interval to the beginning of the Sequence, pushing forward the other nested content. + Has no effect if the Sequence has already started + The interval duration + + + Adds the given callback to the end of the Sequence. + Has no effect if the Sequence has already started + The callback to append + + + Adds the given callback to the beginning of the Sequence, pushing forward the other nested content. + Has no effect if the Sequence has already started + The callback to prepend + + + Inserts the given callback at the given time position in the Sequence, + automatically adding an interval if needed. + Has no effect if the Sequence has already started + The time position where the callback will be placed + The callback to insert + + + Changes a TO tween into a FROM tween: sets the current target's position as the tween's endValue + then immediately sends the target to the previously set endValue. + + + Changes a TO tween into a FROM tween: sets the current target's position as the tween's endValue + then immediately sends the target to the previously set endValue. + If TRUE the FROM value will be calculated as relative to the current one + + + Changes a TO tween into a FROM tween: sets the tween's starting value to the given one + and eventually sets the tween's target to that value immediately. + Value to start from + If TRUE sets the target to from value immediately, otherwise waits for the tween to start + + + Changes a TO tween into a FROM tween: sets the tween's starting value to the given one + and eventually sets the tween's target to that value immediately. + Alpha value to start from (in case of Fade tweens) + If TRUE sets the target to from value immediately, otherwise waits for the tween to start + + + Changes a TO tween into a FROM tween: sets the tween's starting value to the given one + and eventually sets the tween's target to that value immediately. + Value to start from (in case of Vector tweens that act on a single coordinate or scale tweens) + If TRUE sets the target to from value immediately, otherwise waits for the tween to start + + + Sets a delayed startup for the tween. + In case of Sequences behaves the same as , + which means the delay will repeat in case of loops (while with tweens it's ignored after the first loop cycle). + Has no effect on Sequences or if the tween has already started + + + Sets the tween as relative + (the endValue will be calculated as startValue + endValue instead than being used directly). + Has no effect on Sequences or if the tween has already started + + + If isRelative is TRUE sets the tween as relative + (the endValue will be calculated as startValue + endValue instead than being used directly). + Has no effect on Sequences or if the tween has already started + + + If isSpeedBased is TRUE sets the tween as speed based + (the duration will represent the number of units the tween moves x second). + Has no effect on Sequences, nested tweens, or if the tween has already started + + + If isSpeedBased is TRUE sets the tween as speed based + (the duration will represent the number of units the tween moves x second). + Has no effect on Sequences, nested tweens, or if the tween has already started + + + Options for float tweens + If TRUE the tween will smoothly snap all values to integers + + + Options for Vector2 tweens + If TRUE the tween will smoothly snap all values to integers + + + Options for Vector2 tweens + Selecting an axis will tween the vector only on that axis, leaving the others untouched + If TRUE the tween will smoothly snap all values to integers + + + Options for Vector3 tweens + If TRUE the tween will smoothly snap all values to integers + + + Options for Vector3 tweens + Selecting an axis will tween the vector only on that axis, leaving the others untouched + If TRUE the tween will smoothly snap all values to integers + + + Options for Vector4 tweens + If TRUE the tween will smoothly snap all values to integers + + + Options for Vector4 tweens + Selecting an axis will tween the vector only on that axis, leaving the others untouched + If TRUE the tween will smoothly snap all values to integers + + + Options for Quaternion tweens + If TRUE (default) the rotation will take the shortest route, and will not rotate more than 360°. + If FALSE the rotation will be fully accounted. Is always FALSE if the tween is set as relative + + + Options for Color tweens + If TRUE only the alpha value of the color will be tweened + + + Options for Vector4 tweens + If TRUE the tween will smoothly snap all values to integers + + + Options for Vector4 tweens + If TRUE, rich text will be interpreted correctly while animated, + otherwise all tags will be considered as normal text + The type of scramble to use, if any + A string containing the characters to use for scrambling. + Use as many characters as possible (minimum 10) because DOTween uses a fast scramble mode which gives better results with more characters. + Leave it to NULL to use default ones + + + Options for Vector3Array tweens + If TRUE the tween will smoothly snap all values to integers + + + Options for Vector3Array tweens + If TRUE the tween will smoothly snap all values to integers + + + Options for Path tweens (created via the DOPath shortcut) + The eventual movement axis to lock. You can input multiple axis if you separate them like this: + AxisConstrain.X | AxisConstraint.Y + The eventual rotation axis to lock. You can input multiple axis if you separate them like this: + AxisConstrain.X | AxisConstraint.Y + + + Options for Path tweens (created via the DOPath shortcut) + If TRUE the path will be automatically closed + The eventual movement axis to lock. You can input multiple axis if you separate them like this: + AxisConstrain.X | AxisConstraint.Y + The eventual rotation axis to lock. You can input multiple axis if you separate them like this: + AxisConstrain.X | AxisConstraint.Y + + + Additional LookAt options for Path tweens (created via the DOPath shortcut). + Orients the target towards the given position. + Must be chained directly to the tween creation method or to a SetOptions + The position to look at + The eventual direction to consider as "forward". + If left to NULL defaults to the regular forward side of the transform + The vector that defines in which direction up is (default: Vector3.up) + + + Additional LookAt options for Path tweens (created via the DOPath shortcut). + Orients the target towards another transform. + Must be chained directly to the tween creation method or to a SetOptions + The transform to look at + The eventual direction to consider as "forward". + If left to NULL defaults to the regular forward side of the transform + The vector that defines in which direction up is (default: Vector3.up) + + + Additional LookAt options for Path tweens (created via the DOPath shortcut). + Orients the target to the path, with the given lookAhead. + Must be chained directly to the tween creation method or to a SetOptions + The percentage of lookAhead to use (0 to 1) + The eventual direction to consider as "forward". + If left to NULL defaults to the regular forward side of the transform + The vector that defines in which direction up is (default: Vector3.up) + + + + Types of log behaviours + + + + Log only warnings and errors + + + Log warnings, errors and additional infos + + + Log only errors + + + + Indicates either a Tweener or a Sequence + + + + TimeScale for the tween + + + If TRUE the tween wil go backwards + + + Object ID (usable for filtering with DOTween static methods). Can be anything except a string or an int + (use or for those) + + + String ID (usable for filtering with DOTween static methods). 2X faster than using an object id + + + Int ID (usable for filtering with DOTween static methods). 4X faster than using an object id, 2X faster than using a string id. + Default is -999 so avoid using an ID like that or it will capture all unset intIds + + + Tween target (usable for filtering with DOTween static methods). Automatically set by tween creation shortcuts + + + Called when the tween is set in a playing state, after any eventual delay. + Also called each time the tween resumes playing from a paused state + + + Called when the tween state changes from playing to paused. + If the tween has autoKill set to FALSE, this is called also when the tween reaches completion. + + + Called when the tween is rewinded, + either by calling Rewind or by reaching the start position while playing backwards. + Rewinding a tween that is already rewinded will not fire this callback + + + Called each time the tween updates + + + Called the moment the tween completes one loop cycle + + + Called the moment the tween reaches completion (loops included) + + + Called the moment the tween is killed + + + Called when a path tween's current waypoint changes + + + Tweeners-only (ignored by Sequences), returns TRUE if the tween was set as relative + + + + Set by SetTarget if DOTween's Debug Mode is on (see DOTween Utility Panel -> "Store GameObject's ID" debug option + + + + FALSE when tween is (or should be) despawned - set only by TweenManager + + + Gets and sets the time position (loops included, delays excluded) of the tween + + + TRUE after the tween was set in a play state at least once, AFTER any delay is elapsed + + + Time position within a single loop cycle + + + + Animates a single value + + + + Changes the start value of a tween and rewinds it (without pausing it). + Has no effect with tweens that are inside Sequences + The new start value + If bigger than 0 applies it as the new tween duration + + + Changes the end value of a tween and rewinds it (without pausing it). + Has no effect with tweens that are inside Sequences + The new end value + If bigger than 0 applies it as the new tween duration + If TRUE the start value will become the current target's value, otherwise it will stay the same + + + Changes the end value of a tween and rewinds it (without pausing it). + Has no effect with tweens that are inside Sequences + The new end value + If TRUE the start value will become the current target's value, otherwise it will stay the same + + + Changes the start and end value of a tween and rewinds it (without pausing it). + Has no effect with tweens that are inside Sequences + The new start value + The new end value + If bigger than 0 applies it as the new tween duration + + + + Used internally + + + + + Update type + + + + Updates every frame during Update calls + + + Updates every frame during LateUpdate calls + + + Updates using FixedUpdate calls + + + Updates using manual update calls + + + diff --git a/d2/Assets/Demigiant/DOTween/DOTween.XML.meta b/d2/Assets/Demigiant/DOTween/DOTween.XML.meta new file mode 100644 index 00000000..c87a5201 --- /dev/null +++ b/d2/Assets/Demigiant/DOTween/DOTween.XML.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 34192c5e0d14aee43a0e86cc4823268a +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DOTween/DOTween.dll b/d2/Assets/Demigiant/DOTween/DOTween.dll new file mode 100644 index 0000000000000000000000000000000000000000..55228c233355fc735479835a0e67c5f2789df3e4 GIT binary patch literal 159744 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 z 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 literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DOTween/DOTween.dll.meta b/d2/Assets/Demigiant/DOTween/DOTween.dll.meta new file mode 100644 index 00000000..e8655b60 --- /dev/null +++ b/d2/Assets/Demigiant/DOTween/DOTween.dll.meta @@ -0,0 +1,21 @@ +fileFormatVersion: 2 +guid: a811bde74b26b53498b4f6d872b09b6d +PluginImporter: + externalObjects: {} + serializedVersion: 2 + iconMap: {} + executionOrder: {} + defineConstraints: [] + isPreloaded: 0 + isOverridable: 0 + isExplicitlyReferenced: 0 + validateReferences: 1 + platformData: + - first: + Any: + second: + enabled: 1 + settings: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DOTween/Editor.meta b/d2/Assets/Demigiant/DOTween/Editor.meta new file mode 100644 index 00000000..cbfb19cf --- /dev/null +++ b/d2/Assets/Demigiant/DOTween/Editor.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 94444f3491c4c404197ddb16d2465420 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DOTween/Editor/DOTweenEditor.XML b/d2/Assets/Demigiant/DOTween/Editor/DOTweenEditor.XML new file mode 100644 index 00000000..92ab5782 --- /dev/null +++ b/d2/Assets/Demigiant/DOTween/Editor/DOTweenEditor.XML @@ -0,0 +1,98 @@ + + + + DOTweenEditor + + + + + Starts the update loop of tween in the editor. Has no effect during playMode. + + Eventual callback to call after every update + + + + Stops the update loop and clears the onPreviewUpdated callback. + + If TRUE also resets the tweened objects to their original state + + + + Readies the tween for editor preview by setting its UpdateType to Manual plus eventual extra settings. + + The tween to ready + If TRUE (recommended) removes all callbacks (OnComplete/Rewind/etc) + If TRUE prevents the tween from being auto-killed at completion + If TRUE starts playing the tween immediately + + + + Checks that the given editor texture use the correct import settings, + and applies them if they're incorrect. + + + + + Returns TRUE if setup is required + + + + + Returns TRUE if the file/directory at the given path exists. + + Path, relative to Unity's project folder + + + + + Converts the given project-relative path to a full path, + with backward (\) slashes). + + + + + Converts the given full path to a path usable with AssetDatabase methods + (relative to Unity's project folder, and with the correct Unity forward (/) slashes). + + + + + Connects to a asset. + If the asset already exists at the given path, loads it and returns it. + Otherwise, either returns NULL or automatically creates it before loading and returning it + (depending on the given parameters). + + Asset type + File path (relative to Unity's project folder) + If TRUE and the requested asset doesn't exist, forces its creation + + + + Full path for the given loaded assembly, assembly file included + + + + + Adds the given global define if it's not already present + + + + + Removes the given global define if it's present + + + + + Returns TRUE if the given global define is present in all the + or only in the given , depending on passed parameters. + + + to use. Leave NULL to check in all of them. + + + + Not used as menu item anymore, but as a utiity function + + + + diff --git a/d2/Assets/Demigiant/DOTween/Editor/DOTweenEditor.XML.meta b/d2/Assets/Demigiant/DOTween/Editor/DOTweenEditor.XML.meta new file mode 100644 index 00000000..258ca876 --- /dev/null +++ b/d2/Assets/Demigiant/DOTween/Editor/DOTweenEditor.XML.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 2e2c6224d345d9249acfa6e8ef40bb2d +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DOTween/Editor/DOTweenEditor.dll b/d2/Assets/Demigiant/DOTween/Editor/DOTweenEditor.dll new file mode 100644 index 0000000000000000000000000000000000000000..267e41f7b7b0a96d169983687a9df08d230c4cce GIT binary patch literal 54272 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 literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DOTween/Editor/DOTweenEditor.dll.meta b/d2/Assets/Demigiant/DOTween/Editor/DOTweenEditor.dll.meta new file mode 100644 index 00000000..8ae528a9 --- /dev/null +++ b/d2/Assets/Demigiant/DOTween/Editor/DOTweenEditor.dll.meta @@ -0,0 +1,21 @@ +fileFormatVersion: 2 +guid: 45d5034162d6cf04dbe46da84fc7d074 +PluginImporter: + externalObjects: {} + serializedVersion: 2 + iconMap: {} + executionOrder: {} + defineConstraints: [] + isPreloaded: 0 + isOverridable: 0 + isExplicitlyReferenced: 0 + validateReferences: 1 + platformData: + - first: + Any: + second: + enabled: 1 + settings: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DOTween/Editor/DOTweenUpgradeManager.XML b/d2/Assets/Demigiant/DOTween/Editor/DOTweenUpgradeManager.XML new file mode 100644 index 00000000..02c3c95e --- /dev/null +++ b/d2/Assets/Demigiant/DOTween/Editor/DOTweenUpgradeManager.XML @@ -0,0 +1,14 @@ + + + + DOTweenUpgradeManager + + + + + This class and its whole library are deleted the first time DOTween's setup is run after an upgrade (or after a new install). + NOTE: DidReloadScripts doesn't work on first install so it's useless, InitializeOnLoad is the only way + + + + diff --git a/d2/Assets/Demigiant/DOTween/Editor/DOTweenUpgradeManager.XML.meta b/d2/Assets/Demigiant/DOTween/Editor/DOTweenUpgradeManager.XML.meta new file mode 100644 index 00000000..eb3170c2 --- /dev/null +++ b/d2/Assets/Demigiant/DOTween/Editor/DOTweenUpgradeManager.XML.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 3df9fdaadcb4c394e826a4d8d20bb952 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DOTween/Editor/DOTweenUpgradeManager.dll b/d2/Assets/Demigiant/DOTween/Editor/DOTweenUpgradeManager.dll new file mode 100644 index 0000000000000000000000000000000000000000..10511cc237b624be10a162f9c2b8ee87f7e21518 GIT binary patch literal 10752 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 P00000NkvXXu0mjftl$Bl literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DOTween/Editor/Imgs/DOTweenIcon.png.meta b/d2/Assets/Demigiant/DOTween/Editor/Imgs/DOTweenIcon.png.meta new file mode 100644 index 00000000..261ffded --- /dev/null +++ b/d2/Assets/Demigiant/DOTween/Editor/Imgs/DOTweenIcon.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: 8da095e39e9b4df488dfd436f81116d6 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 1 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -3 + maxTextureSize: 128 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DOTween/Editor/Imgs/Footer.png b/d2/Assets/Demigiant/DOTween/Editor/Imgs/Footer.png new file mode 100644 index 0000000000000000000000000000000000000000..e29d02fe18b777b1d316feb647b339803c5126de GIT binary patch literal 4409 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 literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DOTween/Editor/Imgs/Footer.png.meta b/d2/Assets/Demigiant/DOTween/Editor/Imgs/Footer.png.meta new file mode 100644 index 00000000..076d8605 --- /dev/null +++ b/d2/Assets/Demigiant/DOTween/Editor/Imgs/Footer.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: 7051dba417b3d53409f2918f1ea4938d +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 1 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -3 + maxTextureSize: 256 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 256 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 256 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 256 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 256 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DOTween/Editor/Imgs/Footer_dark.png b/d2/Assets/Demigiant/DOTween/Editor/Imgs/Footer_dark.png new file mode 100644 index 0000000000000000000000000000000000000000..e48db5ef7a2b83eff50d6e3b5fe9ba3bcd4a5015 GIT binary patch literal 4429 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 TqmFO~00000NkvXXu0mjf{EM6C literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DOTween/Editor/Imgs/Footer_dark.png.meta b/d2/Assets/Demigiant/DOTween/Editor/Imgs/Footer_dark.png.meta new file mode 100644 index 00000000..7962e47a --- /dev/null +++ b/d2/Assets/Demigiant/DOTween/Editor/Imgs/Footer_dark.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: 519694efe2bb2914788b151fbd8c01f4 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DOTween/Editor/Imgs/Header.jpg b/d2/Assets/Demigiant/DOTween/Editor/Imgs/Header.jpg new file mode 100644 index 0000000000000000000000000000000000000000..4d710d719075150879b1ee76680af87791c4d3b3 GIT binary patch literal 22787 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 QE#Li`lK-oJv9mh=KQ4fgsQ>@~ literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DOTween/Editor/Imgs/Header.jpg.meta b/d2/Assets/Demigiant/DOTween/Editor/Imgs/Header.jpg.meta new file mode 100644 index 00000000..e2bcda39 --- /dev/null +++ b/d2/Assets/Demigiant/DOTween/Editor/Imgs/Header.jpg.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: 78a59ca99f8987941adb61f9e14a06a7 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 1 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -3 + maxTextureSize: 512 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 512 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 512 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 512 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 512 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DOTween/Modules.meta b/d2/Assets/Demigiant/DOTween/Modules.meta new file mode 100644 index 00000000..a21a84db --- /dev/null +++ b/d2/Assets/Demigiant/DOTween/Modules.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 1a30d0bcc429c934d8e442946007a1af +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DOTween/Modules/DOTweenModuleAudio.cs b/d2/Assets/Demigiant/DOTween/Modules/DOTweenModuleAudio.cs new file mode 100644 index 00000000..c195b6cc --- /dev/null +++ b/d2/Assets/Demigiant/DOTween/Modules/DOTweenModuleAudio.cs @@ -0,0 +1,202 @@ +// Author: Daniele Giardini - http://www.demigiant.com +// Created: 2018/07/13 + +#if true // MODULE_MARKER +using System; +using DG.Tweening.Core; +using DG.Tweening.Plugins.Options; +using UnityEngine; +#if UNITY_5 || UNITY_2017_1_OR_NEWER +using UnityEngine.Audio; // Required for AudioMixer +#endif + +#pragma warning disable 1591 +namespace DG.Tweening +{ + public static class DOTweenModuleAudio + { + #region Shortcuts + + #region Audio + + /// Tweens an AudioSource's volume to the given value. + /// Also stores the AudioSource as the tween's target so it can be used for filtered operations + /// The end value to reach (0 to 1)The duration of the tween + public static TweenerCore DOFade(this AudioSource target, float endValue, float duration) + { + if (endValue < 0) endValue = 0; + else if (endValue > 1) endValue = 1; + TweenerCore t = DOTween.To(() => target.volume, x => target.volume = x, endValue, duration); + t.SetTarget(target); + return t; + } + + /// Tweens an AudioSource's pitch to the given value. + /// Also stores the AudioSource as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOPitch(this AudioSource target, float endValue, float duration) + { + TweenerCore t = DOTween.To(() => target.pitch, x => target.pitch = x, endValue, duration); + t.SetTarget(target); + return t; + } + + #endregion + +#if UNITY_5 || UNITY_2017_1_OR_NEWER + #region AudioMixer (Unity 5 or Newer) + + /// Tweens an AudioMixer's exposed float to the given value. + /// Also stores the AudioMixer as the tween's target so it can be used for filtered operations. + /// Note that you need to manually expose a float in an AudioMixerGroup in order to be able to tween it from an AudioMixer. + /// Name given to the exposed float to set + /// The end value to reachThe duration of the tween + public static TweenerCore DOSetFloat(this AudioMixer target, string floatName, float endValue, float duration) + { + TweenerCore t = DOTween.To(()=> { + float currVal; + target.GetFloat(floatName, out currVal); + return currVal; + }, x=> target.SetFloat(floatName, x), endValue, duration); + t.SetTarget(target); + return t; + } + + #region Operation Shortcuts + + /// + /// Completes all tweens that have this target as a reference + /// (meaning tweens that were started from this target, or that had this target added as an Id) + /// and returns the total number of tweens completed + /// (meaning the tweens that don't have infinite loops and were not already complete) + /// + /// For Sequences only: if TRUE also internal Sequence callbacks will be fired, + /// otherwise they will be ignored + public static int DOComplete(this AudioMixer target, bool withCallbacks = false) + { + return DOTween.Complete(target, withCallbacks); + } + + /// + /// Kills all tweens that have this target as a reference + /// (meaning tweens that were started from this target, or that had this target added as an Id) + /// and returns the total number of tweens killed. + /// + /// If TRUE completes the tween before killing it + public static int DOKill(this AudioMixer target, bool complete = false) + { + return DOTween.Kill(target, complete); + } + + /// + /// Flips the direction (backwards if it was going forward or viceversa) of all tweens that have this target as a reference + /// (meaning tweens that were started from this target, or that had this target added as an Id) + /// and returns the total number of tweens flipped. + /// + public static int DOFlip(this AudioMixer target) + { + return DOTween.Flip(target); + } + + /// + /// Sends to the given position all tweens that have this target as a reference + /// (meaning tweens that were started from this target, or that had this target added as an Id) + /// and returns the total number of tweens involved. + /// + /// Time position to reach + /// (if higher than the whole tween duration the tween will simply reach its end) + /// If TRUE will play the tween after reaching the given position, otherwise it will pause it + public static int DOGoto(this AudioMixer target, float to, bool andPlay = false) + { + return DOTween.Goto(target, to, andPlay); + } + + /// + /// Pauses all tweens that have this target as a reference + /// (meaning tweens that were started from this target, or that had this target added as an Id) + /// and returns the total number of tweens paused. + /// + public static int DOPause(this AudioMixer target) + { + return DOTween.Pause(target); + } + + /// + /// Plays all tweens that have this target as a reference + /// (meaning tweens that were started from this target, or that had this target added as an Id) + /// and returns the total number of tweens played. + /// + public static int DOPlay(this AudioMixer target) + { + return DOTween.Play(target); + } + + /// + /// Plays backwards all tweens that have this target as a reference + /// (meaning tweens that were started from this target, or that had this target added as an Id) + /// and returns the total number of tweens played. + /// + public static int DOPlayBackwards(this AudioMixer target) + { + return DOTween.PlayBackwards(target); + } + + /// + /// Plays forward all tweens that have this target as a reference + /// (meaning tweens that were started from this target, or that had this target added as an Id) + /// and returns the total number of tweens played. + /// + public static int DOPlayForward(this AudioMixer target) + { + return DOTween.PlayForward(target); + } + + /// + /// Restarts all tweens that have this target as a reference + /// (meaning tweens that were started from this target, or that had this target added as an Id) + /// and returns the total number of tweens restarted. + /// + public static int DORestart(this AudioMixer target) + { + return DOTween.Restart(target); + } + + /// + /// Rewinds all tweens that have this target as a reference + /// (meaning tweens that were started from this target, or that had this target added as an Id) + /// and returns the total number of tweens rewinded. + /// + public static int DORewind(this AudioMixer target) + { + return DOTween.Rewind(target); + } + + /// + /// Smoothly rewinds all tweens that have this target as a reference + /// (meaning tweens that were started from this target, or that had this target added as an Id) + /// and returns the total number of tweens rewinded. + /// + public static int DOSmoothRewind(this AudioMixer target) + { + return DOTween.SmoothRewind(target); + } + + /// + /// Toggles the paused state (plays if it was paused, pauses if it was playing) of all tweens that have this target as a reference + /// (meaning tweens that were started from this target, or that had this target added as an Id) + /// and returns the total number of tweens involved. + /// + public static int DOTogglePause(this AudioMixer target) + { + return DOTween.TogglePause(target); + } + + #endregion + + #endregion +#endif + + #endregion + } +} +#endif diff --git a/d2/Assets/Demigiant/DOTween/Modules/DOTweenModuleAudio.cs.meta b/d2/Assets/Demigiant/DOTween/Modules/DOTweenModuleAudio.cs.meta new file mode 100644 index 00000000..55682176 --- /dev/null +++ b/d2/Assets/Demigiant/DOTween/Modules/DOTweenModuleAudio.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: b766d08851589514b97afb23c6f30a70 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DOTween/Modules/DOTweenModulePhysics.cs b/d2/Assets/Demigiant/DOTween/Modules/DOTweenModulePhysics.cs new file mode 100644 index 00000000..a1a1cb9f --- /dev/null +++ b/d2/Assets/Demigiant/DOTween/Modules/DOTweenModulePhysics.cs @@ -0,0 +1,216 @@ +// Author: Daniele Giardini - http://www.demigiant.com +// Created: 2018/07/13 + +#if true // MODULE_MARKER +using System; +using DG.Tweening.Core; +using DG.Tweening.Core.Enums; +using DG.Tweening.Plugins; +using DG.Tweening.Plugins.Core.PathCore; +using DG.Tweening.Plugins.Options; +using UnityEngine; + +#pragma warning disable 1591 +namespace DG.Tweening +{ + public static class DOTweenModulePhysics + { + #region Shortcuts + + #region Rigidbody + + /// Tweens a Rigidbody's position to the given value. + /// Also stores the rigidbody as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + /// If TRUE the tween will smoothly snap all values to integers + public static TweenerCore DOMove(this Rigidbody target, Vector3 endValue, float duration, bool snapping = false) + { + TweenerCore t = DOTween.To(() => target.position, target.MovePosition, endValue, duration); + t.SetOptions(snapping).SetTarget(target); + return t; + } + + /// Tweens a Rigidbody's X position to the given value. + /// Also stores the rigidbody as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + /// If TRUE the tween will smoothly snap all values to integers + public static TweenerCore DOMoveX(this Rigidbody target, float endValue, float duration, bool snapping = false) + { + TweenerCore t = DOTween.To(() => target.position, target.MovePosition, new Vector3(endValue, 0, 0), duration); + t.SetOptions(AxisConstraint.X, snapping).SetTarget(target); + return t; + } + + /// Tweens a Rigidbody's Y position to the given value. + /// Also stores the rigidbody as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + /// If TRUE the tween will smoothly snap all values to integers + public static TweenerCore DOMoveY(this Rigidbody target, float endValue, float duration, bool snapping = false) + { + TweenerCore t = DOTween.To(() => target.position, target.MovePosition, new Vector3(0, endValue, 0), duration); + t.SetOptions(AxisConstraint.Y, snapping).SetTarget(target); + return t; + } + + /// Tweens a Rigidbody's Z position to the given value. + /// Also stores the rigidbody as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + /// If TRUE the tween will smoothly snap all values to integers + public static TweenerCore DOMoveZ(this Rigidbody target, float endValue, float duration, bool snapping = false) + { + TweenerCore t = DOTween.To(() => target.position, target.MovePosition, new Vector3(0, 0, endValue), duration); + t.SetOptions(AxisConstraint.Z, snapping).SetTarget(target); + return t; + } + + /// Tweens a Rigidbody's rotation to the given value. + /// Also stores the rigidbody as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + /// Rotation mode + public static TweenerCore DORotate(this Rigidbody target, Vector3 endValue, float duration, RotateMode mode = RotateMode.Fast) + { + TweenerCore t = DOTween.To(() => target.rotation, target.MoveRotation, endValue, duration); + t.SetTarget(target); + t.plugOptions.rotateMode = mode; + return t; + } + + /// Tweens a Rigidbody's rotation so that it will look towards the given position. + /// Also stores the rigidbody as the tween's target so it can be used for filtered operations + /// The position to look atThe duration of the tween + /// Eventual axis constraint for the rotation + /// The vector that defines in which direction up is (default: Vector3.up) + public static TweenerCore DOLookAt(this Rigidbody target, Vector3 towards, float duration, AxisConstraint axisConstraint = AxisConstraint.None, Vector3? up = null) + { + TweenerCore t = DOTween.To(() => target.rotation, target.MoveRotation, towards, duration) + .SetTarget(target).SetSpecialStartupMode(SpecialStartupMode.SetLookAt); + t.plugOptions.axisConstraint = axisConstraint; + t.plugOptions.up = (up == null) ? Vector3.up : (Vector3)up; + return t; + } + + #region Special + + /// Tweens a Rigidbody's position to the given value, while also applying a jump effect along the Y axis. + /// Returns a Sequence instead of a Tweener. + /// Also stores the Rigidbody as the tween's target so it can be used for filtered operations + /// The end value to reach + /// Power of the jump (the max height of the jump is represented by this plus the final Y offset) + /// Total number of jumps + /// The duration of the tween + /// If TRUE the tween will smoothly snap all values to integers + public static Sequence DOJump(this Rigidbody target, Vector3 endValue, float jumpPower, int numJumps, float duration, bool snapping = false) + { + if (numJumps < 1) numJumps = 1; + float startPosY = 0; + float offsetY = -1; + bool offsetYSet = false; + Sequence s = DOTween.Sequence(); + Tween yTween = DOTween.To(() => target.position, target.MovePosition, new Vector3(0, jumpPower, 0), duration / (numJumps * 2)) + .SetOptions(AxisConstraint.Y, snapping).SetEase(Ease.OutQuad).SetRelative() + .SetLoops(numJumps * 2, LoopType.Yoyo) + .OnStart(() => startPosY = target.position.y); + s.Append(DOTween.To(() => target.position, target.MovePosition, new Vector3(endValue.x, 0, 0), duration) + .SetOptions(AxisConstraint.X, snapping).SetEase(Ease.Linear) + ).Join(DOTween.To(() => target.position, target.MovePosition, new Vector3(0, 0, endValue.z), duration) + .SetOptions(AxisConstraint.Z, snapping).SetEase(Ease.Linear) + ).Join(yTween) + .SetTarget(target).SetEase(DOTween.defaultEaseType); + yTween.OnUpdate(() => { + if (!offsetYSet) { + offsetYSet = true; + offsetY = s.isRelative ? endValue.y : endValue.y - startPosY; + } + Vector3 pos = target.position; + pos.y += DOVirtual.EasedValue(0, offsetY, yTween.ElapsedPercentage(), Ease.OutQuad); + target.MovePosition(pos); + }); + return s; + } + + /// Tweens a Rigidbody's position through the given path waypoints, using the chosen path algorithm. + /// Also stores the Rigidbody as the tween's target so it can be used for filtered operations. + /// NOTE: to tween a rigidbody correctly it should be set to kinematic at least while being tweened. + /// BEWARE: doesn't work on Windows Phone store (waiting for Unity to fix their own bug). + /// If you plan to publish there you should use a regular transform.DOPath. + /// The waypoints to go through + /// The duration of the tween + /// The type of path: Linear (straight path) or CatmullRom (curved CatmullRom path) + /// The path mode: 3D, side-scroller 2D, top-down 2D + /// The resolution of the path (useless in case of Linear paths): higher resolutions make for more detailed curved paths but are more expensive. + /// Defaults to 10, but a value of 5 is usually enough if you don't have dramatic long curves between waypoints + /// The color of the path (shown when gizmos are active in the Play panel and the tween is running) + public static TweenerCore DOPath( + this Rigidbody target, Vector3[] path, float duration, PathType pathType = PathType.Linear, + PathMode pathMode = PathMode.Full3D, int resolution = 10, Color? gizmoColor = null + ) + { + if (resolution < 1) resolution = 1; + TweenerCore t = DOTween.To(PathPlugin.Get(), () => target.position, target.MovePosition, new Path(pathType, path, resolution, gizmoColor), duration) + .SetTarget(target).SetUpdate(UpdateType.Fixed); + + t.plugOptions.isRigidbody = true; + t.plugOptions.mode = pathMode; + return t; + } + /// Tweens a Rigidbody's localPosition through the given path waypoints, using the chosen path algorithm. + /// Also stores the Rigidbody as the tween's target so it can be used for filtered operations + /// NOTE: to tween a rigidbody correctly it should be set to kinematic at least while being tweened. + /// BEWARE: doesn't work on Windows Phone store (waiting for Unity to fix their own bug). + /// If you plan to publish there you should use a regular transform.DOLocalPath. + /// The waypoint to go through + /// The duration of the tween + /// The type of path: Linear (straight path) or CatmullRom (curved CatmullRom path) + /// The path mode: 3D, side-scroller 2D, top-down 2D + /// The resolution of the path: higher resolutions make for more detailed curved paths but are more expensive. + /// Defaults to 10, but a value of 5 is usually enough if you don't have dramatic long curves between waypoints + /// The color of the path (shown when gizmos are active in the Play panel and the tween is running) + public static TweenerCore DOLocalPath( + this Rigidbody target, Vector3[] path, float duration, PathType pathType = PathType.Linear, + PathMode pathMode = PathMode.Full3D, int resolution = 10, Color? gizmoColor = null + ) + { + if (resolution < 1) resolution = 1; + Transform trans = target.transform; + TweenerCore t = DOTween.To(PathPlugin.Get(), () => trans.localPosition, x => target.MovePosition(trans.parent == null ? x : trans.parent.TransformPoint(x)), new Path(pathType, path, resolution, gizmoColor), duration) + .SetTarget(target).SetUpdate(UpdateType.Fixed); + + t.plugOptions.isRigidbody = true; + t.plugOptions.mode = pathMode; + t.plugOptions.useLocalPosition = true; + return t; + } + // Used by path editor when creating the actual tween, so it can pass a pre-compiled path + internal static TweenerCore DOPath( + this Rigidbody target, Path path, float duration, PathMode pathMode = PathMode.Full3D + ) + { + TweenerCore t = DOTween.To(PathPlugin.Get(), () => target.position, target.MovePosition, path, duration) + .SetTarget(target); + + t.plugOptions.isRigidbody = true; + t.plugOptions.mode = pathMode; + return t; + } + internal static TweenerCore DOLocalPath( + this Rigidbody target, Path path, float duration, PathMode pathMode = PathMode.Full3D + ) + { + Transform trans = target.transform; + TweenerCore t = DOTween.To(PathPlugin.Get(), () => trans.localPosition, x => target.MovePosition(trans.parent == null ? x : trans.parent.TransformPoint(x)), path, duration) + .SetTarget(target); + + t.plugOptions.isRigidbody = true; + t.plugOptions.mode = pathMode; + t.plugOptions.useLocalPosition = true; + return t; + } + + #endregion + + #endregion + + #endregion + } +} +#endif diff --git a/d2/Assets/Demigiant/DOTween/Modules/DOTweenModulePhysics.cs.meta b/d2/Assets/Demigiant/DOTween/Modules/DOTweenModulePhysics.cs.meta new file mode 100644 index 00000000..42a05668 --- /dev/null +++ b/d2/Assets/Demigiant/DOTween/Modules/DOTweenModulePhysics.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: dae9aa560b4242648a3affa2bfabc365 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DOTween/Modules/DOTweenModulePhysics2D.cs b/d2/Assets/Demigiant/DOTween/Modules/DOTweenModulePhysics2D.cs new file mode 100644 index 00000000..f40a7d00 --- /dev/null +++ b/d2/Assets/Demigiant/DOTween/Modules/DOTweenModulePhysics2D.cs @@ -0,0 +1,107 @@ +// Author: Daniele Giardini - http://www.demigiant.com +// Created: 2018/07/13 + +#if true && (UNITY_4_3 || UNITY_4_4 || UNITY_4_5 || UNITY_4_6 || UNITY_5 || UNITY_2017_1_OR_NEWER) // MODULE_MARKER +using System; +using DG.Tweening.Core; +using DG.Tweening.Plugins.Options; +using UnityEngine; + +#pragma warning disable 1591 +namespace DG.Tweening +{ + public static class DOTweenModulePhysics2D + { + #region Shortcuts + + #region Rigidbody2D Shortcuts + + /// Tweens a Rigidbody2D's position to the given value. + /// Also stores the Rigidbody2D as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + /// If TRUE the tween will smoothly snap all values to integers + public static TweenerCore DOMove(this Rigidbody2D target, Vector2 endValue, float duration, bool snapping = false) + { + TweenerCore t = DOTween.To(() => target.position, target.MovePosition, endValue, duration); + t.SetOptions(snapping).SetTarget(target); + return t; + } + + /// Tweens a Rigidbody2D's X position to the given value. + /// Also stores the Rigidbody2D as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + /// If TRUE the tween will smoothly snap all values to integers + public static TweenerCore DOMoveX(this Rigidbody2D target, float endValue, float duration, bool snapping = false) + { + TweenerCore t = DOTween.To(() => target.position, target.MovePosition, new Vector2(endValue, 0), duration); + t.SetOptions(AxisConstraint.X, snapping).SetTarget(target); + return t; + } + + /// Tweens a Rigidbody2D's Y position to the given value. + /// Also stores the Rigidbody2D as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + /// If TRUE the tween will smoothly snap all values to integers + public static TweenerCore DOMoveY(this Rigidbody2D target, float endValue, float duration, bool snapping = false) + { + TweenerCore t = DOTween.To(() => target.position, target.MovePosition, new Vector2(0, endValue), duration); + t.SetOptions(AxisConstraint.Y, snapping).SetTarget(target); + return t; + } + + /// Tweens a Rigidbody2D's rotation to the given value. + /// Also stores the Rigidbody2D as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DORotate(this Rigidbody2D target, float endValue, float duration) + { + TweenerCore t = DOTween.To(() => target.rotation, target.MoveRotation, endValue, duration); + t.SetTarget(target); + return t; + } + + #region Special + + /// Tweens a Rigidbody2D's position to the given value, while also applying a jump effect along the Y axis. + /// Returns a Sequence instead of a Tweener. + /// Also stores the Rigidbody2D as the tween's target so it can be used for filtered operations. + /// IMPORTANT: a rigidbody2D can't be animated in a jump arc using MovePosition, so the tween will directly set the position + /// The end value to reach + /// Power of the jump (the max height of the jump is represented by this plus the final Y offset) + /// Total number of jumps + /// The duration of the tween + /// If TRUE the tween will smoothly snap all values to integers + public static Sequence DOJump(this Rigidbody2D target, Vector2 endValue, float jumpPower, int numJumps, float duration, bool snapping = false) + { + if (numJumps < 1) numJumps = 1; + float startPosY = 0; + float offsetY = -1; + bool offsetYSet = false; + Sequence s = DOTween.Sequence(); + Tween yTween = DOTween.To(() => target.position, x => target.position = x, new Vector2(0, jumpPower), duration / (numJumps * 2)) + .SetOptions(AxisConstraint.Y, snapping).SetEase(Ease.OutQuad).SetRelative() + .SetLoops(numJumps * 2, LoopType.Yoyo) + .OnStart(() => startPosY = target.position.y); + s.Append(DOTween.To(() => target.position, x => target.position = x, new Vector2(endValue.x, 0), duration) + .SetOptions(AxisConstraint.X, snapping).SetEase(Ease.Linear) + ).Join(yTween) + .SetTarget(target).SetEase(DOTween.defaultEaseType); + yTween.OnUpdate(() => { + if (!offsetYSet) { + offsetYSet = true; + offsetY = s.isRelative ? endValue.y : endValue.y - startPosY; + } + Vector3 pos = target.position; + pos.y += DOVirtual.EasedValue(0, offsetY, yTween.ElapsedPercentage(), Ease.OutQuad); + target.MovePosition(pos); + }); + return s; + } + + #endregion + + #endregion + + #endregion + } +} +#endif diff --git a/d2/Assets/Demigiant/DOTween/Modules/DOTweenModulePhysics2D.cs.meta b/d2/Assets/Demigiant/DOTween/Modules/DOTweenModulePhysics2D.cs.meta new file mode 100644 index 00000000..323d0ddf --- /dev/null +++ b/d2/Assets/Demigiant/DOTween/Modules/DOTweenModulePhysics2D.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 230fe34542e175245ba74b4659dae700 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DOTween/Modules/DOTweenModuleSprite.cs b/d2/Assets/Demigiant/DOTween/Modules/DOTweenModuleSprite.cs new file mode 100644 index 00000000..549fff39 --- /dev/null +++ b/d2/Assets/Demigiant/DOTween/Modules/DOTweenModuleSprite.cs @@ -0,0 +1,93 @@ +// Author: Daniele Giardini - http://www.demigiant.com +// Created: 2018/07/13 + +#if true && (UNITY_4_3 || UNITY_4_4 || UNITY_4_5 || UNITY_4_6 || UNITY_5 || UNITY_2017_1_OR_NEWER) // MODULE_MARKER +using System; +using UnityEngine; +using DG.Tweening.Core; +using DG.Tweening.Plugins.Options; + +#pragma warning disable 1591 +namespace DG.Tweening +{ + public static class DOTweenModuleSprite + { + #region Shortcuts + + #region SpriteRenderer + + /// Tweens a SpriteRenderer's color to the given value. + /// Also stores the spriteRenderer as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOColor(this SpriteRenderer target, Color endValue, float duration) + { + TweenerCore t = DOTween.To(() => target.color, x => target.color = x, endValue, duration); + t.SetTarget(target); + return t; + } + + /// Tweens a Material's alpha color to the given value. + /// Also stores the spriteRenderer as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOFade(this SpriteRenderer target, float endValue, float duration) + { + TweenerCore t = DOTween.ToAlpha(() => target.color, x => target.color = x, endValue, duration); + t.SetTarget(target); + return t; + } + + /// Tweens a SpriteRenderer's color using the given gradient + /// (NOTE 1: only uses the colors of the gradient, not the alphas - NOTE 2: creates a Sequence, not a Tweener). + /// Also stores the image as the tween's target so it can be used for filtered operations + /// The gradient to useThe duration of the tween + public static Sequence DOGradientColor(this SpriteRenderer target, Gradient gradient, float duration) + { + Sequence s = DOTween.Sequence(); + GradientColorKey[] colors = gradient.colorKeys; + int len = colors.Length; + for (int i = 0; i < len; ++i) { + GradientColorKey c = colors[i]; + if (i == 0 && c.time <= 0) { + target.color = c.color; + continue; + } + float colorDuration = i == len - 1 + ? duration - s.Duration(false) // Verifies that total duration is correct + : duration * (i == 0 ? c.time : c.time - colors[i - 1].time); + s.Append(target.DOColor(c.color, colorDuration).SetEase(Ease.Linear)); + } + s.SetTarget(target); + return s; + } + + #endregion + + #region Blendables + + #region SpriteRenderer + + /// Tweens a SpriteRenderer's color to the given value, + /// in a way that allows other DOBlendableColor tweens to work together on the same target, + /// instead than fight each other as multiple DOColor would do. + /// Also stores the SpriteRenderer as the tween's target so it can be used for filtered operations + /// The value to tween toThe duration of the tween + public static Tweener DOBlendableColor(this SpriteRenderer target, Color endValue, float duration) + { + endValue = endValue - target.color; + Color to = new Color(0, 0, 0, 0); + return DOTween.To(() => to, x => { + Color diff = x - to; + to = x; + target.color += diff; + }, endValue, duration) + .Blendable().SetTarget(target); + } + + #endregion + + #endregion + + #endregion + } +} +#endif diff --git a/d2/Assets/Demigiant/DOTween/Modules/DOTweenModuleSprite.cs.meta b/d2/Assets/Demigiant/DOTween/Modules/DOTweenModuleSprite.cs.meta new file mode 100644 index 00000000..e6ade0cb --- /dev/null +++ b/d2/Assets/Demigiant/DOTween/Modules/DOTweenModuleSprite.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 188918ab119d93148aa0de59ccf5286b +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DOTween/Modules/DOTweenModuleUI.cs b/d2/Assets/Demigiant/DOTween/Modules/DOTweenModuleUI.cs new file mode 100644 index 00000000..6d45a041 --- /dev/null +++ b/d2/Assets/Demigiant/DOTween/Modules/DOTweenModuleUI.cs @@ -0,0 +1,609 @@ +// Author: Daniele Giardini - http://www.demigiant.com +// Created: 2018/07/13 + +#if true && (UNITY_4_6 || UNITY_5 || UNITY_2017_1_OR_NEWER) // MODULE_MARKER +using System; +using UnityEngine; +using UnityEngine.UI; +using DG.Tweening.Core; +using DG.Tweening.Core.Enums; +using DG.Tweening.Plugins.Options; + +#pragma warning disable 1591 +namespace DG.Tweening +{ + public static class DOTweenModuleUI + { + #region Shortcuts + + #region CanvasGroup + + /// Tweens a CanvasGroup's alpha color to the given value. + /// Also stores the canvasGroup as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOFade(this CanvasGroup target, float endValue, float duration) + { + TweenerCore t = DOTween.To(() => target.alpha, x => target.alpha = x, endValue, duration); + t.SetTarget(target); + return t; + } + + #endregion + + #region Graphic + + /// Tweens an Graphic's color to the given value. + /// Also stores the image as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOColor(this Graphic target, Color endValue, float duration) + { + TweenerCore t = DOTween.To(() => target.color, x => target.color = x, endValue, duration); + t.SetTarget(target); + return t; + } + + /// Tweens an Graphic's alpha color to the given value. + /// Also stores the image as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOFade(this Graphic target, float endValue, float duration) + { + TweenerCore t = DOTween.ToAlpha(() => target.color, x => target.color = x, endValue, duration); + t.SetTarget(target); + return t; + } + + #endregion + + #region Image + + /// Tweens an Image's color to the given value. + /// Also stores the image as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOColor(this Image target, Color endValue, float duration) + { + TweenerCore t = DOTween.To(() => target.color, x => target.color = x, endValue, duration); + t.SetTarget(target); + return t; + } + + /// Tweens an Image's alpha color to the given value. + /// Also stores the image as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOFade(this Image target, float endValue, float duration) + { + TweenerCore t = DOTween.ToAlpha(() => target.color, x => target.color = x, endValue, duration); + t.SetTarget(target); + return t; + } + + /// Tweens an Image's fillAmount to the given value. + /// Also stores the image as the tween's target so it can be used for filtered operations + /// The end value to reach (0 to 1)The duration of the tween + public static TweenerCore DOFillAmount(this Image target, float endValue, float duration) + { + if (endValue > 1) endValue = 1; + else if (endValue < 0) endValue = 0; + TweenerCore t = DOTween.To(() => target.fillAmount, x => target.fillAmount = x, endValue, duration); + t.SetTarget(target); + return t; + } + + /// Tweens an Image's colors using the given gradient + /// (NOTE 1: only uses the colors of the gradient, not the alphas - NOTE 2: creates a Sequence, not a Tweener). + /// Also stores the image as the tween's target so it can be used for filtered operations + /// The gradient to useThe duration of the tween + public static Sequence DOGradientColor(this Image target, Gradient gradient, float duration) + { + Sequence s = DOTween.Sequence(); + GradientColorKey[] colors = gradient.colorKeys; + int len = colors.Length; + for (int i = 0; i < len; ++i) { + GradientColorKey c = colors[i]; + if (i == 0 && c.time <= 0) { + target.color = c.color; + continue; + } + float colorDuration = i == len - 1 + ? duration - s.Duration(false) // Verifies that total duration is correct + : duration * (i == 0 ? c.time : c.time - colors[i - 1].time); + s.Append(target.DOColor(c.color, colorDuration).SetEase(Ease.Linear)); + } + s.SetTarget(target); + return s; + } + + #endregion + + #region LayoutElement + + /// Tweens an LayoutElement's flexibleWidth/Height to the given value. + /// Also stores the LayoutElement as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + /// If TRUE the tween will smoothly snap all values to integers + public static TweenerCore DOFlexibleSize(this LayoutElement target, Vector2 endValue, float duration, bool snapping = false) + { + TweenerCore t = DOTween.To(() => new Vector2(target.flexibleWidth, target.flexibleHeight), x => { + target.flexibleWidth = x.x; + target.flexibleHeight = x.y; + }, endValue, duration); + t.SetOptions(snapping).SetTarget(target); + return t; + } + + /// Tweens an LayoutElement's minWidth/Height to the given value. + /// Also stores the LayoutElement as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + /// If TRUE the tween will smoothly snap all values to integers + public static TweenerCore DOMinSize(this LayoutElement target, Vector2 endValue, float duration, bool snapping = false) + { + TweenerCore t = DOTween.To(() => new Vector2(target.minWidth, target.minHeight), x => { + target.minWidth = x.x; + target.minHeight = x.y; + }, endValue, duration); + t.SetOptions(snapping).SetTarget(target); + return t; + } + + /// Tweens an LayoutElement's preferredWidth/Height to the given value. + /// Also stores the LayoutElement as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + /// If TRUE the tween will smoothly snap all values to integers + public static TweenerCore DOPreferredSize(this LayoutElement target, Vector2 endValue, float duration, bool snapping = false) + { + TweenerCore t = DOTween.To(() => new Vector2(target.preferredWidth, target.preferredHeight), x => { + target.preferredWidth = x.x; + target.preferredHeight = x.y; + }, endValue, duration); + t.SetOptions(snapping).SetTarget(target); + return t; + } + + #endregion + + #region Outline + + /// Tweens a Outline's effectColor to the given value. + /// Also stores the Outline as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOColor(this Outline target, Color endValue, float duration) + { + TweenerCore t = DOTween.To(() => target.effectColor, x => target.effectColor = x, endValue, duration); + t.SetTarget(target); + return t; + } + + /// Tweens a Outline's effectColor alpha to the given value. + /// Also stores the Outline as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOFade(this Outline target, float endValue, float duration) + { + TweenerCore t = DOTween.ToAlpha(() => target.effectColor, x => target.effectColor = x, endValue, duration); + t.SetTarget(target); + return t; + } + + /// Tweens a Outline's effectDistance to the given value. + /// Also stores the Outline as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOScale(this Outline target, Vector2 endValue, float duration) + { + TweenerCore t = DOTween.To(() => target.effectDistance, x => target.effectDistance = x, endValue, duration); + t.SetTarget(target); + return t; + } + + #endregion + + #region RectTransform + + /// Tweens a RectTransform's anchoredPosition to the given value. + /// Also stores the RectTransform as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + /// If TRUE the tween will smoothly snap all values to integers + public static TweenerCore DOAnchorPos(this RectTransform target, Vector2 endValue, float duration, bool snapping = false) + { + TweenerCore t = DOTween.To(() => target.anchoredPosition, x => target.anchoredPosition = x, endValue, duration); + t.SetOptions(snapping).SetTarget(target); + return t; + } + /// Tweens a RectTransform's anchoredPosition X to the given value. + /// Also stores the RectTransform as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + /// If TRUE the tween will smoothly snap all values to integers + public static TweenerCore DOAnchorPosX(this RectTransform target, float endValue, float duration, bool snapping = false) + { + TweenerCore t = DOTween.To(() => target.anchoredPosition, x => target.anchoredPosition = x, new Vector2(endValue, 0), duration); + t.SetOptions(AxisConstraint.X, snapping).SetTarget(target); + return t; + } + /// Tweens a RectTransform's anchoredPosition Y to the given value. + /// Also stores the RectTransform as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + /// If TRUE the tween will smoothly snap all values to integers + public static TweenerCore DOAnchorPosY(this RectTransform target, float endValue, float duration, bool snapping = false) + { + TweenerCore t = DOTween.To(() => target.anchoredPosition, x => target.anchoredPosition = x, new Vector2(0, endValue), duration); + t.SetOptions(AxisConstraint.Y, snapping).SetTarget(target); + return t; + } + + /// Tweens a RectTransform's anchoredPosition3D to the given value. + /// Also stores the RectTransform as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + /// If TRUE the tween will smoothly snap all values to integers + public static TweenerCore DOAnchorPos3D(this RectTransform target, Vector3 endValue, float duration, bool snapping = false) + { + TweenerCore t = DOTween.To(() => target.anchoredPosition3D, x => target.anchoredPosition3D = x, endValue, duration); + t.SetOptions(snapping).SetTarget(target); + return t; + } + /// Tweens a RectTransform's anchoredPosition3D X to the given value. + /// Also stores the RectTransform as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + /// If TRUE the tween will smoothly snap all values to integers + public static TweenerCore DOAnchorPos3DX(this RectTransform target, float endValue, float duration, bool snapping = false) + { + TweenerCore t = DOTween.To(() => target.anchoredPosition3D, x => target.anchoredPosition3D = x, new Vector3(endValue, 0, 0), duration); + t.SetOptions(AxisConstraint.X, snapping).SetTarget(target); + return t; + } + /// Tweens a RectTransform's anchoredPosition3D Y to the given value. + /// Also stores the RectTransform as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + /// If TRUE the tween will smoothly snap all values to integers + public static TweenerCore DOAnchorPos3DY(this RectTransform target, float endValue, float duration, bool snapping = false) + { + TweenerCore t = DOTween.To(() => target.anchoredPosition3D, x => target.anchoredPosition3D = x, new Vector3(0, endValue, 0), duration); + t.SetOptions(AxisConstraint.Y, snapping).SetTarget(target); + return t; + } + /// Tweens a RectTransform's anchoredPosition3D Z to the given value. + /// Also stores the RectTransform as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + /// If TRUE the tween will smoothly snap all values to integers + public static TweenerCore DOAnchorPos3DZ(this RectTransform target, float endValue, float duration, bool snapping = false) + { + TweenerCore t = DOTween.To(() => target.anchoredPosition3D, x => target.anchoredPosition3D = x, new Vector3(0, 0, endValue), duration); + t.SetOptions(AxisConstraint.Z, snapping).SetTarget(target); + return t; + } + + /// Tweens a RectTransform's anchorMax to the given value. + /// Also stores the RectTransform as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + /// If TRUE the tween will smoothly snap all values to integers + public static TweenerCore DOAnchorMax(this RectTransform target, Vector2 endValue, float duration, bool snapping = false) + { + TweenerCore t = DOTween.To(() => target.anchorMax, x => target.anchorMax = x, endValue, duration); + t.SetOptions(snapping).SetTarget(target); + return t; + } + + /// Tweens a RectTransform's anchorMin to the given value. + /// Also stores the RectTransform as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + /// If TRUE the tween will smoothly snap all values to integers + public static TweenerCore DOAnchorMin(this RectTransform target, Vector2 endValue, float duration, bool snapping = false) + { + TweenerCore t = DOTween.To(() => target.anchorMin, x => target.anchorMin = x, endValue, duration); + t.SetOptions(snapping).SetTarget(target); + return t; + } + + /// Tweens a RectTransform's pivot to the given value. + /// Also stores the RectTransform as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOPivot(this RectTransform target, Vector2 endValue, float duration) + { + TweenerCore t = DOTween.To(() => target.pivot, x => target.pivot = x, endValue, duration); + t.SetTarget(target); + return t; + } + /// Tweens a RectTransform's pivot X to the given value. + /// Also stores the RectTransform as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOPivotX(this RectTransform target, float endValue, float duration) + { + TweenerCore t = DOTween.To(() => target.pivot, x => target.pivot = x, new Vector2(endValue, 0), duration); + t.SetOptions(AxisConstraint.X).SetTarget(target); + return t; + } + /// Tweens a RectTransform's pivot Y to the given value. + /// Also stores the RectTransform as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOPivotY(this RectTransform target, float endValue, float duration) + { + TweenerCore t = DOTween.To(() => target.pivot, x => target.pivot = x, new Vector2(0, endValue), duration); + t.SetOptions(AxisConstraint.Y).SetTarget(target); + return t; + } + + /// Tweens a RectTransform's sizeDelta to the given value. + /// Also stores the RectTransform as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + /// If TRUE the tween will smoothly snap all values to integers + public static TweenerCore DOSizeDelta(this RectTransform target, Vector2 endValue, float duration, bool snapping = false) + { + TweenerCore t = DOTween.To(() => target.sizeDelta, x => target.sizeDelta = x, endValue, duration); + t.SetOptions(snapping).SetTarget(target); + return t; + } + + /// Punches a RectTransform's anchoredPosition towards the given direction and then back to the starting one + /// as if it was connected to the starting position via an elastic. + /// Also stores the RectTransform as the tween's target so it can be used for filtered operations + /// The direction and strength of the punch (added to the RectTransform's current position) + /// The duration of the tween + /// Indicates how much will the punch vibrate + /// Represents how much (0 to 1) the vector will go beyond the starting position when bouncing backwards. + /// 1 creates a full oscillation between the punch direction and the opposite direction, + /// while 0 oscillates only between the punch and the start position + /// If TRUE the tween will smoothly snap all values to integers + public static Tweener DOPunchAnchorPos(this RectTransform target, Vector2 punch, float duration, int vibrato = 10, float elasticity = 1, bool snapping = false) + { + return DOTween.Punch(() => target.anchoredPosition, x => target.anchoredPosition = x, punch, duration, vibrato, elasticity) + .SetTarget(target).SetOptions(snapping); + } + + /// Shakes a RectTransform's anchoredPosition with the given values. + /// Also stores the RectTransform as the tween's target so it can be used for filtered operations + /// The duration of the tween + /// The shake strength + /// Indicates how much will the shake vibrate + /// Indicates how much the shake will be random (0 to 180 - values higher than 90 kind of suck, so beware). + /// Setting it to 0 will shake along a single direction. + /// If TRUE the tween will smoothly snap all values to integers + /// If TRUE the shake will automatically fadeOut smoothly within the tween's duration, otherwise it will not + public static Tweener DOShakeAnchorPos(this RectTransform target, float duration, float strength = 100, int vibrato = 10, float randomness = 90, bool snapping = false, bool fadeOut = true) + { + return DOTween.Shake(() => target.anchoredPosition, x => target.anchoredPosition = x, duration, strength, vibrato, randomness, true, fadeOut) + .SetTarget(target).SetSpecialStartupMode(SpecialStartupMode.SetShake).SetOptions(snapping); + } + /// Shakes a RectTransform's anchoredPosition with the given values. + /// Also stores the RectTransform as the tween's target so it can be used for filtered operations + /// The duration of the tween + /// The shake strength on each axis + /// Indicates how much will the shake vibrate + /// Indicates how much the shake will be random (0 to 180 - values higher than 90 kind of suck, so beware). + /// Setting it to 0 will shake along a single direction. + /// If TRUE the tween will smoothly snap all values to integers + /// If TRUE the shake will automatically fadeOut smoothly within the tween's duration, otherwise it will not + public static Tweener DOShakeAnchorPos(this RectTransform target, float duration, Vector2 strength, int vibrato = 10, float randomness = 90, bool snapping = false, bool fadeOut = true) + { + return DOTween.Shake(() => target.anchoredPosition, x => target.anchoredPosition = x, duration, strength, vibrato, randomness, fadeOut) + .SetTarget(target).SetSpecialStartupMode(SpecialStartupMode.SetShake).SetOptions(snapping); + } + + #region Special + + /// Tweens a RectTransform's anchoredPosition to the given value, while also applying a jump effect along the Y axis. + /// Returns a Sequence instead of a Tweener. + /// Also stores the RectTransform as the tween's target so it can be used for filtered operations + /// The end value to reach + /// Power of the jump (the max height of the jump is represented by this plus the final Y offset) + /// Total number of jumps + /// The duration of the tween + /// If TRUE the tween will smoothly snap all values to integers + public static Sequence DOJumpAnchorPos(this RectTransform target, Vector2 endValue, float jumpPower, int numJumps, float duration, bool snapping = false) + { + if (numJumps < 1) numJumps = 1; + float startPosY = 0; + float offsetY = -1; + bool offsetYSet = false; + + // Separate Y Tween so we can elaborate elapsedPercentage on that insted of on the Sequence + // (in case users add a delay or other elements to the Sequence) + Sequence s = DOTween.Sequence(); + Tween yTween = DOTween.To(() => target.anchoredPosition, x => target.anchoredPosition = x, new Vector2(0, jumpPower), duration / (numJumps * 2)) + .SetOptions(AxisConstraint.Y, snapping).SetEase(Ease.OutQuad).SetRelative() + .SetLoops(numJumps * 2, LoopType.Yoyo) + .OnStart(()=> startPosY = target.anchoredPosition.y); + s.Append(DOTween.To(() => target.anchoredPosition, x => target.anchoredPosition = x, new Vector2(endValue.x, 0), duration) + .SetOptions(AxisConstraint.X, snapping).SetEase(Ease.Linear) + ).Join(yTween) + .SetTarget(target).SetEase(DOTween.defaultEaseType); + s.OnUpdate(() => { + if (!offsetYSet) { + offsetYSet = true; + offsetY = s.isRelative ? endValue.y : endValue.y - startPosY; + } + Vector2 pos = target.anchoredPosition; + pos.y += DOVirtual.EasedValue(0, offsetY, s.ElapsedDirectionalPercentage(), Ease.OutQuad); + target.anchoredPosition = pos; + }); + return s; + } + + #endregion + + #endregion + + #region ScrollRect + + /// Tweens a ScrollRect's horizontal/verticalNormalizedPosition to the given value. + /// Also stores the ScrollRect as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + /// If TRUE the tween will smoothly snap all values to integers + public static Tweener DONormalizedPos(this ScrollRect target, Vector2 endValue, float duration, bool snapping = false) + { + return DOTween.To(() => new Vector2(target.horizontalNormalizedPosition, target.verticalNormalizedPosition), + x => { + target.horizontalNormalizedPosition = x.x; + target.verticalNormalizedPosition = x.y; + }, endValue, duration) + .SetOptions(snapping).SetTarget(target); + } + /// Tweens a ScrollRect's horizontalNormalizedPosition to the given value. + /// Also stores the ScrollRect as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + /// If TRUE the tween will smoothly snap all values to integers + public static Tweener DOHorizontalNormalizedPos(this ScrollRect target, float endValue, float duration, bool snapping = false) + { + return DOTween.To(() => target.horizontalNormalizedPosition, x => target.horizontalNormalizedPosition = x, endValue, duration) + .SetOptions(snapping).SetTarget(target); + } + /// Tweens a ScrollRect's verticalNormalizedPosition to the given value. + /// Also stores the ScrollRect as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + /// If TRUE the tween will smoothly snap all values to integers + public static Tweener DOVerticalNormalizedPos(this ScrollRect target, float endValue, float duration, bool snapping = false) + { + return DOTween.To(() => target.verticalNormalizedPosition, x => target.verticalNormalizedPosition = x, endValue, duration) + .SetOptions(snapping).SetTarget(target); + } + + #endregion + + #region Slider + + /// Tweens a Slider's value to the given value. + /// Also stores the Slider as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + /// If TRUE the tween will smoothly snap all values to integers + public static TweenerCore DOValue(this Slider target, float endValue, float duration, bool snapping = false) + { + TweenerCore t = DOTween.To(() => target.value, x => target.value = x, endValue, duration); + t.SetOptions(snapping).SetTarget(target); + return t; + } + + #endregion + + #region Text + + /// Tweens a Text's color to the given value. + /// Also stores the Text as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOColor(this Text target, Color endValue, float duration) + { + TweenerCore t = DOTween.To(() => target.color, x => target.color = x, endValue, duration); + t.SetTarget(target); + return t; + } + + /// Tweens a Text's alpha color to the given value. + /// Also stores the Text as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOFade(this Text target, float endValue, float duration) + { + TweenerCore t = DOTween.ToAlpha(() => target.color, x => target.color = x, endValue, duration); + t.SetTarget(target); + return t; + } + + /// Tweens a Text's text to the given value. + /// Also stores the Text as the tween's target so it can be used for filtered operations + /// The end string to tween toThe duration of the tween + /// If TRUE (default), rich text will be interpreted correctly while animated, + /// otherwise all tags will be considered as normal text + /// The type of scramble mode to use, if any + /// A string containing the characters to use for scrambling. + /// Use as many characters as possible (minimum 10) because DOTween uses a fast scramble mode which gives better results with more characters. + /// Leave it to NULL (default) to use default ones + public static TweenerCore DOText(this Text target, string endValue, float duration, bool richTextEnabled = true, ScrambleMode scrambleMode = ScrambleMode.None, string scrambleChars = null) + { + if (endValue == null) { + if (Debugger.logPriority > 0) Debugger.LogWarning("You can't pass a NULL string to DOText: an empty string will be used instead to avoid errors"); + endValue = ""; + } + TweenerCore t = DOTween.To(() => target.text, x => target.text = x, endValue, duration); + t.SetOptions(richTextEnabled, scrambleMode, scrambleChars) + .SetTarget(target); + return t; + } + + #endregion + + #region Blendables + + #region Graphic + + /// Tweens a Graphic's color to the given value, + /// in a way that allows other DOBlendableColor tweens to work together on the same target, + /// instead than fight each other as multiple DOColor would do. + /// Also stores the Graphic as the tween's target so it can be used for filtered operations + /// The value to tween toThe duration of the tween + public static Tweener DOBlendableColor(this Graphic target, Color endValue, float duration) + { + endValue = endValue - target.color; + Color to = new Color(0, 0, 0, 0); + return DOTween.To(() => to, x => { + Color diff = x - to; + to = x; + target.color += diff; + }, endValue, duration) + .Blendable().SetTarget(target); + } + + #endregion + + #region Image + + /// Tweens a Image's color to the given value, + /// in a way that allows other DOBlendableColor tweens to work together on the same target, + /// instead than fight each other as multiple DOColor would do. + /// Also stores the Image as the tween's target so it can be used for filtered operations + /// The value to tween toThe duration of the tween + public static Tweener DOBlendableColor(this Image target, Color endValue, float duration) + { + endValue = endValue - target.color; + Color to = new Color(0, 0, 0, 0); + return DOTween.To(() => to, x => { + Color diff = x - to; + to = x; + target.color += diff; + }, endValue, duration) + .Blendable().SetTarget(target); + } + + #endregion + + #region Text + + /// Tweens a Text's color BY the given value, + /// in a way that allows other DOBlendableColor tweens to work together on the same target, + /// instead than fight each other as multiple DOColor would do. + /// Also stores the Text as the tween's target so it can be used for filtered operations + /// The value to tween toThe duration of the tween + public static Tweener DOBlendableColor(this Text target, Color endValue, float duration) + { + endValue = endValue - target.color; + Color to = new Color(0, 0, 0, 0); + return DOTween.To(() => to, x => { + Color diff = x - to; + to = x; + target.color += diff; + }, endValue, duration) + .Blendable().SetTarget(target); + } + + #endregion + + #endregion + + #endregion + + // █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ + // ███ INTERNAL CLASSES ████████████████████████████████████████████████████████████████████████████████████████████████ + // █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ + + public static class Utils + { + /// + /// Converts the anchoredPosition of the first RectTransform to the second RectTransform, + /// taking into consideration offset, anchors and pivot, and returns the new anchoredPosition + /// + public static Vector2 SwitchToRectTransform(RectTransform from, RectTransform to) + { + Vector2 localPoint; + Vector2 fromPivotDerivedOffset = new Vector2(from.rect.width * 0.5f + from.rect.xMin, from.rect.height * 0.5f + from.rect.yMin); + Vector2 screenP = RectTransformUtility.WorldToScreenPoint(null, from.position); + screenP += fromPivotDerivedOffset; + RectTransformUtility.ScreenPointToLocalPointInRectangle(to, screenP, null, out localPoint); + Vector2 pivotDerivedOffset = new Vector2(to.rect.width * 0.5f + to.rect.xMin, to.rect.height * 0.5f + to.rect.yMin); + return to.anchoredPosition + localPoint - pivotDerivedOffset; + } + } + } +} +#endif diff --git a/d2/Assets/Demigiant/DOTween/Modules/DOTweenModuleUI.cs.meta b/d2/Assets/Demigiant/DOTween/Modules/DOTweenModuleUI.cs.meta new file mode 100644 index 00000000..b7f95cb3 --- /dev/null +++ b/d2/Assets/Demigiant/DOTween/Modules/DOTweenModuleUI.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: a060394c03331a64392db53a10e7f2d1 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DOTween/Modules/DOTweenModuleUnityVersion.cs b/d2/Assets/Demigiant/DOTween/Modules/DOTweenModuleUnityVersion.cs new file mode 100644 index 00000000..ce212626 --- /dev/null +++ b/d2/Assets/Demigiant/DOTween/Modules/DOTweenModuleUnityVersion.cs @@ -0,0 +1,301 @@ +// Author: Daniele Giardini - http://www.demigiant.com +// Created: 2018/07/13 + +using System; +using UnityEngine; +using DG.Tweening.Core; +using DG.Tweening.Plugins.Options; + +#pragma warning disable 1591 +namespace DG.Tweening +{ + /// + /// Shortcuts/functions that are not strictly related to specific Modules + /// but are available only on some Unity versions + /// + public static class DOTweenModuleUnityVersion + { +#if UNITY_4_3 || UNITY_4_4 || UNITY_4_5 || UNITY_4_6 || UNITY_5 || UNITY_2017_1_OR_NEWER + #region Unity 4.3 or Newer + + #region Material + + /// Tweens a Material's color using the given gradient + /// (NOTE 1: only uses the colors of the gradient, not the alphas - NOTE 2: creates a Sequence, not a Tweener). + /// Also stores the image as the tween's target so it can be used for filtered operations + /// The gradient to useThe duration of the tween + public static Sequence DOGradientColor(this Material target, Gradient gradient, float duration) + { + Sequence s = DOTween.Sequence(); + GradientColorKey[] colors = gradient.colorKeys; + int len = colors.Length; + for (int i = 0; i < len; ++i) { + GradientColorKey c = colors[i]; + if (i == 0 && c.time <= 0) { + target.color = c.color; + continue; + } + float colorDuration = i == len - 1 + ? duration - s.Duration(false) // Verifies that total duration is correct + : duration * (i == 0 ? c.time : c.time - colors[i - 1].time); + s.Append(target.DOColor(c.color, colorDuration).SetEase(Ease.Linear)); + } + s.SetTarget(target); + return s; + } + /// Tweens a Material's named color property using the given gradient + /// (NOTE 1: only uses the colors of the gradient, not the alphas - NOTE 2: creates a Sequence, not a Tweener). + /// Also stores the image as the tween's target so it can be used for filtered operations + /// The gradient to use + /// The name of the material property to tween (like _Tint or _SpecColor) + /// The duration of the tween + public static Sequence DOGradientColor(this Material target, Gradient gradient, string property, float duration) + { + Sequence s = DOTween.Sequence(); + GradientColorKey[] colors = gradient.colorKeys; + int len = colors.Length; + for (int i = 0; i < len; ++i) { + GradientColorKey c = colors[i]; + if (i == 0 && c.time <= 0) { + target.SetColor(property, c.color); + continue; + } + float colorDuration = i == len - 1 + ? duration - s.Duration(false) // Verifies that total duration is correct + : duration * (i == 0 ? c.time : c.time - colors[i - 1].time); + s.Append(target.DOColor(c.color, property, colorDuration).SetEase(Ease.Linear)); + } + s.SetTarget(target); + return s; + } + + #endregion + + #endregion +#endif + +#if UNITY_5_3_OR_NEWER || UNITY_2017_1_OR_NEWER + #region Unity 5.3 or Newer + + #region CustomYieldInstructions + + /// + /// Returns a that waits until the tween is killed or complete. + /// It can be used inside a coroutine as a yield. + /// Example usage:yield return myTween.WaitForCompletion(true); + /// + public static CustomYieldInstruction WaitForCompletion(this Tween t, bool returnCustomYieldInstruction) + { + if (!t.active) { + if (Debugger.logPriority > 0) Debugger.LogInvalidTween(t); + return null; + } + return new DOTweenCYInstruction.WaitForCompletion(t); + } + + /// + /// Returns a that waits until the tween is killed or rewinded. + /// It can be used inside a coroutine as a yield. + /// Example usage:yield return myTween.WaitForRewind(); + /// + public static CustomYieldInstruction WaitForRewind(this Tween t, bool returnCustomYieldInstruction) + { + if (!t.active) { + if (Debugger.logPriority > 0) Debugger.LogInvalidTween(t); + return null; + } + return new DOTweenCYInstruction.WaitForRewind(t); + } + + /// + /// Returns a that waits until the tween is killed. + /// It can be used inside a coroutine as a yield. + /// Example usage:yield return myTween.WaitForKill(); + /// + public static CustomYieldInstruction WaitForKill(this Tween t, bool returnCustomYieldInstruction) + { + if (!t.active) { + if (Debugger.logPriority > 0) Debugger.LogInvalidTween(t); + return null; + } + return new DOTweenCYInstruction.WaitForKill(t); + } + + /// + /// Returns a that waits until the tween is killed or has gone through the given amount of loops. + /// It can be used inside a coroutine as a yield. + /// Example usage:yield return myTween.WaitForElapsedLoops(2); + /// + /// Elapsed loops to wait for + public static CustomYieldInstruction WaitForElapsedLoops(this Tween t, int elapsedLoops, bool returnCustomYieldInstruction) + { + if (!t.active) { + if (Debugger.logPriority > 0) Debugger.LogInvalidTween(t); + return null; + } + return new DOTweenCYInstruction.WaitForElapsedLoops(t, elapsedLoops); + } + + /// + /// Returns a that waits until the tween is killed or has reached the given position (loops included, delays excluded). + /// It can be used inside a coroutine as a yield. + /// Example usage:yield return myTween.WaitForPosition(2.5f); + /// + /// Position (loops included, delays excluded) to wait for + public static CustomYieldInstruction WaitForPosition(this Tween t, float position, bool returnCustomYieldInstruction) + { + if (!t.active) { + if (Debugger.logPriority > 0) Debugger.LogInvalidTween(t); + return null; + } + return new DOTweenCYInstruction.WaitForPosition(t, position); + } + + /// + /// Returns a that waits until the tween is killed or started + /// (meaning when the tween is set in a playing state the first time, after any eventual delay). + /// It can be used inside a coroutine as a yield. + /// Example usage:yield return myTween.WaitForStart(); + /// + public static CustomYieldInstruction WaitForStart(this Tween t, bool returnCustomYieldInstruction) + { + if (!t.active) { + if (Debugger.logPriority > 0) Debugger.LogInvalidTween(t); + return null; + } + return new DOTweenCYInstruction.WaitForStart(t); + } + + #endregion + + #endregion +#endif + +#if UNITY_2018_1_OR_NEWER + #region Unity 2018.1 or Newer + + #region Material + + /// Tweens a Material's named texture offset property with the given ID to the given value. + /// Also stores the material as the tween's target so it can be used for filtered operations + /// The end value to reach + /// The ID of the material property to tween (also called nameID in Unity's manual) + /// The duration of the tween + public static TweenerCore DOOffset(this Material target, Vector2 endValue, int propertyID, float duration) + { + if (!target.HasProperty(propertyID)) { + if (Debugger.logPriority > 0) Debugger.LogMissingMaterialProperty(propertyID); + return null; + } + TweenerCore t = DOTween.To(() => target.GetTextureOffset(propertyID), x => target.SetTextureOffset(propertyID, x), endValue, duration); + t.SetTarget(target); + return t; + } + + /// Tweens a Material's named texture scale property with the given ID to the given value. + /// Also stores the material as the tween's target so it can be used for filtered operations + /// The end value to reach + /// The ID of the material property to tween (also called nameID in Unity's manual) + /// The duration of the tween + public static TweenerCore DOTiling(this Material target, Vector2 endValue, int propertyID, float duration) + { + if (!target.HasProperty(propertyID)) { + if (Debugger.logPriority > 0) Debugger.LogMissingMaterialProperty(propertyID); + return null; + } + TweenerCore t = DOTween.To(() => target.GetTextureScale(propertyID), x => target.SetTextureScale(propertyID, x), endValue, duration); + t.SetTarget(target); + return t; + } + + #endregion + + #endregion +#endif + } + + // █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ + // ███ CLASSES █████████████████████████████████████████████████████████████████████████████████████████████████████████ + // █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ + +#if UNITY_5_3_OR_NEWER || UNITY_2017_1_OR_NEWER + public static class DOTweenCYInstruction + { + public class WaitForCompletion : CustomYieldInstruction + { + public override bool keepWaiting { get { + return t.active && !t.IsComplete(); + }} + readonly Tween t; + public WaitForCompletion(Tween tween) + { + t = tween; + } + } + + public class WaitForRewind : CustomYieldInstruction + { + public override bool keepWaiting { get { + return t.active && (!t.playedOnce || t.position * (t.CompletedLoops() + 1) > 0); + }} + readonly Tween t; + public WaitForRewind(Tween tween) + { + t = tween; + } + } + + public class WaitForKill : CustomYieldInstruction + { + public override bool keepWaiting { get { + return t.active; + }} + readonly Tween t; + public WaitForKill(Tween tween) + { + t = tween; + } + } + + public class WaitForElapsedLoops : CustomYieldInstruction + { + public override bool keepWaiting { get { + return t.active && t.CompletedLoops() < elapsedLoops; + }} + readonly Tween t; + readonly int elapsedLoops; + public WaitForElapsedLoops(Tween tween, int elapsedLoops) + { + t = tween; + this.elapsedLoops = elapsedLoops; + } + } + + public class WaitForPosition : CustomYieldInstruction + { + public override bool keepWaiting { get { + return t.active && t.position * (t.CompletedLoops() + 1) < position; + }} + readonly Tween t; + readonly float position; + public WaitForPosition(Tween tween, float position) + { + t = tween; + this.position = position; + } + } + + public class WaitForStart : CustomYieldInstruction + { + public override bool keepWaiting { get { + return t.active && !t.playedOnce; + }} + readonly Tween t; + public WaitForStart(Tween tween) + { + t = tween; + } + } + } +#endif +} diff --git a/d2/Assets/Demigiant/DOTween/Modules/DOTweenModuleUnityVersion.cs.meta b/d2/Assets/Demigiant/DOTween/Modules/DOTweenModuleUnityVersion.cs.meta new file mode 100644 index 00000000..6256c54b --- /dev/null +++ b/d2/Assets/Demigiant/DOTween/Modules/DOTweenModuleUnityVersion.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 63c02322328255542995bd02b47b0457 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DOTween/Modules/DOTweenModuleUtils.cs b/d2/Assets/Demigiant/DOTween/Modules/DOTweenModuleUtils.cs new file mode 100644 index 00000000..8a1fb5f0 --- /dev/null +++ b/d2/Assets/Demigiant/DOTween/Modules/DOTweenModuleUtils.cs @@ -0,0 +1,155 @@ +// Author: Daniele Giardini - http://www.demigiant.com +// Created: 2018/07/13 + +using System; +using System.Reflection; +using UnityEngine; +using DG.Tweening.Core; +using DG.Tweening.Plugins.Core.PathCore; +using DG.Tweening.Plugins.Options; + +#pragma warning disable 1591 +namespace DG.Tweening +{ + /// + /// Utility functions that deal with available Modules. + /// Modules defines: + /// - DOTAUDIO + /// - DOTPHYSICS + /// - DOTPHYSICS2D + /// - DOTSPRITE + /// - DOTUI + /// Extra defines set and used for implementation of external assets: + /// - DOTWEEN_TMP ► TextMesh Pro + /// - DOTWEEN_TK2D ► 2D Toolkit + /// + public static class DOTweenModuleUtils + { + static bool _initialized; + + #region Reflection + + /// + /// Called via Reflection by DOTweenComponent on Awake + /// +#if UNITY_2018_1_OR_NEWER + [UnityEngine.Scripting.Preserve] +#endif + public static void Init() + { + if (_initialized) return; + + _initialized = true; + DOTweenExternalCommand.SetOrientationOnPath += Physics.SetOrientationOnPath; + +#if UNITY_EDITOR +#if UNITY_4_3 || UNITY_4_4 || UNITY_4_5 || UNITY_4_6 || UNITY_5 || UNITY_2017_1 + UnityEditor.EditorApplication.playmodeStateChanged += PlaymodeStateChanged; +#else + UnityEditor.EditorApplication.playModeStateChanged += PlaymodeStateChanged; +#endif +#endif + } + +#if UNITY_2018_1_OR_NEWER +#pragma warning disable + [UnityEngine.Scripting.Preserve] + // Just used to preserve methods when building, never called + static void Preserver() + { + Assembly[] loadedAssemblies = AppDomain.CurrentDomain.GetAssemblies(); + MethodInfo mi = typeof(MonoBehaviour).GetMethod("Stub"); + } +#pragma warning restore +#endif + + #endregion + +#if UNITY_EDITOR + // Fires OnApplicationPause in DOTweenComponent even when Editor is paused (otherwise it's only fired at runtime) +#if UNITY_4_3 || UNITY_4_4 || UNITY_4_5 || UNITY_4_6 || UNITY_5 || UNITY_2017_1 + static void PlaymodeStateChanged() + #else + static void PlaymodeStateChanged(UnityEditor.PlayModeStateChange state) +#endif + { + if (DOTween.instance == null) return; + DOTween.instance.OnApplicationPause(UnityEditor.EditorApplication.isPaused); + } +#endif + + // █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ + // ███ INTERNAL CLASSES ████████████████████████████████████████████████████████████████████████████████████████████████ + // █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ + + public static class Physics + { + // Called via DOTweenExternalCommand callback + public static void SetOrientationOnPath(PathOptions options, Tween t, Quaternion newRot, Transform trans) + { +#if true // PHYSICS_MARKER + if (options.isRigidbody) ((Rigidbody)t.target).rotation = newRot; + else trans.rotation = newRot; +#else + trans.rotation = newRot; +#endif + } + + // Returns FALSE if the DOTween's Physics2D Module is disabled, or if there's no Rigidbody2D attached + public static bool HasRigidbody2D(Component target) + { +#if true // PHYSICS2D_MARKER + return target.GetComponent() != null; +#else + return false; +#endif + } + + #region Called via Reflection + + + // Called via Reflection by DOTweenPathInspector + // Returns FALSE if the DOTween's Physics Module is disabled, or if there's no rigidbody attached +#if UNITY_2018_1_OR_NEWER + [UnityEngine.Scripting.Preserve] +#endif + public static bool HasRigidbody(Component target) + { +#if true // PHYSICS_MARKER + return target.GetComponent() != null; +#else + return false; +#endif + } + + // Called via Reflection by DOTweenPath +#if UNITY_2018_1_OR_NEWER + [UnityEngine.Scripting.Preserve] +#endif + public static TweenerCore CreateDOTweenPathTween( + MonoBehaviour target, bool tweenRigidbody, bool isLocal, Path path, float duration, PathMode pathMode + ){ + TweenerCore t; +#if true // PHYSICS_MARKER + Rigidbody rBody = tweenRigidbody ? target.GetComponent() : null; + if (tweenRigidbody && rBody != null) { + t = isLocal + ? rBody.DOLocalPath(path, duration, pathMode) + : rBody.DOPath(path, duration, pathMode); + } else { + t = isLocal + ? target.transform.DOLocalPath(path, duration, pathMode) + : target.transform.DOPath(path, duration, pathMode); + } +#else + t = isLocal + ? target.transform.DOLocalPath(path, duration, pathMode) + : target.transform.DOPath(path, duration, pathMode); +#endif + return t; + } + + #endregion + } + } +} diff --git a/d2/Assets/Demigiant/DOTween/Modules/DOTweenModuleUtils.cs.meta b/d2/Assets/Demigiant/DOTween/Modules/DOTweenModuleUtils.cs.meta new file mode 100644 index 00000000..9164e1ec --- /dev/null +++ b/d2/Assets/Demigiant/DOTween/Modules/DOTweenModuleUtils.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 7bcaf917d9cf5b84090421a5a2abe42e +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DOTween/readme.txt b/d2/Assets/Demigiant/DOTween/readme.txt new file mode 100644 index 00000000..37ff7ef5 --- /dev/null +++ b/d2/Assets/Demigiant/DOTween/readme.txt @@ -0,0 +1,29 @@ +DOTween and DOTween Pro are copyright (c) 2014-2018 Daniele Giardini - Demigiant + +// IMPORTANT!!! ///////////////////////////////////////////// +// Upgrading DOTween from versions older than 1.2.000 /////// +// (or DOTween Pro older than 1.0.000) ////////////////////// +------------------------------------------------------------- +If you're upgrading your project from a version of DOTween older than 1.2.000 (or DOTween Pro older than 1.0.000) please follow these instructions carefully. +1) Import the new version in the same folder as the previous one, overwriting old files. A lot of errors will appear but don't worry +2) Close and reopen Unity (and your project). This is fundamental: skipping this step will cause a bloodbath +3) Open DOTween's Utility Panel (Tools > Demigiant > DOTween Utility Panel) if it doesn't open automatically, then press "Setup DOTween...": this will run the upgrade setup +4) From the Add/Remove Modules panel that opens, activate/deactivate Modules for Unity systems and for external assets (Pro version only) + +// GET STARTED ////////////////////////////////////////////// + +- After importing a new DOTween update, select DOTween's Utility Panel from the "Tools/Demigiant" menu (if it doesn't open automatically) and press the "Setup DOTween..." button to activate/deactivate Modules. You can also access a Preferences Tab from there to choose default settings for DOTween. +- In your code, add "using DG.Tweening" to each class where you want to use DOTween. +- You're ready to tween. Check out the links below for full documentation and license info. + + +// LINKS /////////////////////////////////////////////////////// + +DOTween website (documentation, examples, etc): http://dotween.demigiant.com +DOTween license: http://dotween.demigiant.com/license.php +DOTween repository (Google Code): https://code.google.com/p/dotween/ +Demigiant website (documentation, examples, etc): http://www.demigiant.com + +// NOTES ////////////////////////////////////////////////////// + +- DOTween's Utility Panel can be found under "Tools > Demigiant > DOTween Utility Panel" and also contains other useful options, plus a tab to set DOTween's preferences \ No newline at end of file diff --git a/d2/Assets/Demigiant/DOTween/readme.txt.meta b/d2/Assets/Demigiant/DOTween/readme.txt.meta new file mode 100644 index 00000000..9c3a968a --- /dev/null +++ b/d2/Assets/Demigiant/DOTween/readme.txt.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: fccfc62abf2eb0a4db614853430894fd +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DOTweenPro Examples.meta b/d2/Assets/Demigiant/DOTweenPro Examples.meta new file mode 100644 index 00000000..fe31b225 --- /dev/null +++ b/d2/Assets/Demigiant/DOTweenPro Examples.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: f172865afe644ca4f823a0224e8277d9 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DOTweenPro Examples/DOTweenAnimation_Advanced.unity b/d2/Assets/Demigiant/DOTweenPro Examples/DOTweenAnimation_Advanced.unity new file mode 100644 index 00000000..84af7b10 --- /dev/null +++ b/d2/Assets/Demigiant/DOTweenPro Examples/DOTweenAnimation_Advanced.unity @@ -0,0 +1,5280 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!29 &1 +OcclusionCullingSettings: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_OcclusionBakeSettings: + smallestOccluder: 5 + smallestHole: 0.25 + backfaceThreshold: 100 + m_SceneGUID: 00000000000000000000000000000000 + m_OcclusionCullingData: {fileID: 0} +--- !u!104 &2 +RenderSettings: + m_ObjectHideFlags: 0 + serializedVersion: 9 + m_Fog: 0 + m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} + m_FogMode: 3 + m_FogDensity: 0.01 + m_LinearFogStart: 0 + m_LinearFogEnd: 300 + m_AmbientSkyColor: {r: 0.2, g: 0.2, b: 0.2, a: 1} + m_AmbientEquatorColor: {r: 0.2, g: 0.2, b: 0.2, a: 1} + m_AmbientGroundColor: {r: 0.2, g: 0.2, b: 0.2, a: 1} + m_AmbientIntensity: 1 + m_AmbientMode: 3 + m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} + m_SkyboxMaterial: {fileID: 0} + m_HaloStrength: 0.5 + m_FlareStrength: 1 + m_FlareFadeSpeed: 3 + m_HaloTexture: {fileID: 0} + m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} + m_DefaultReflectionMode: 0 + m_DefaultReflectionResolution: 128 + m_ReflectionBounces: 1 + m_ReflectionIntensity: 1 + m_CustomReflection: {fileID: 0} + m_Sun: {fileID: 0} + m_UseRadianceAmbientProbe: 0 +--- !u!157 &4 +LightmapSettings: + m_ObjectHideFlags: 0 + serializedVersion: 12 + m_GIWorkflowMode: 1 + m_GISettings: + serializedVersion: 2 + m_BounceScale: 1 + m_IndirectOutputScale: 1 + m_AlbedoBoost: 1 + m_EnvironmentLightingMode: 0 + m_EnableBakedLightmaps: 1 + m_EnableRealtimeLightmaps: 0 + m_LightmapEditorSettings: + serializedVersion: 12 + m_Resolution: 1 + m_BakeResolution: 50 + m_AtlasSize: 1024 + m_AO: 1 + m_AOMaxDistance: 1 + m_CompAOExponent: 1 + m_CompAOExponentDirect: 0 + m_ExtractAmbientOcclusion: 0 + m_Padding: 2 + m_LightmapParameters: {fileID: 0} + m_LightmapsBakeMode: 1 + m_TextureCompression: 0 + m_FinalGather: 0 + m_FinalGatherFiltering: 1 + m_FinalGatherRayCount: 256 + m_ReflectionCompression: 2 + m_MixedBakeMode: 1 + m_BakeBackend: 0 + m_PVRSampling: 1 + m_PVRDirectSampleCount: 32 + m_PVRSampleCount: 512 + m_PVRBounces: 2 + m_PVREnvironmentSampleCount: 512 + m_PVREnvironmentReferencePointCount: 2048 + m_PVRFilteringMode: 0 + m_PVRDenoiserTypeDirect: 0 + m_PVRDenoiserTypeIndirect: 0 + m_PVRDenoiserTypeAO: 0 + m_PVRFilterTypeDirect: 0 + m_PVRFilterTypeIndirect: 0 + m_PVRFilterTypeAO: 0 + m_PVREnvironmentMIS: 0 + m_PVRCulling: 1 + m_PVRFilteringGaussRadiusDirect: 1 + m_PVRFilteringGaussRadiusIndirect: 5 + m_PVRFilteringGaussRadiusAO: 2 + m_PVRFilteringAtrousPositionSigmaDirect: 0.5 + m_PVRFilteringAtrousPositionSigmaIndirect: 2 + m_PVRFilteringAtrousPositionSigmaAO: 1 + m_ExportTrainingData: 0 + m_TrainingDataDestination: TrainingData + m_LightProbeSampleCountMultiplier: 4 + m_LightingDataAsset: {fileID: 0} + m_LightingSettings: {fileID: 4890085278179872738, guid: 6a2966a1888e1cb408e97fc7c05deb79, type: 2} +--- !u!196 &5 +NavMeshSettings: + serializedVersion: 2 + m_ObjectHideFlags: 0 + m_BuildSettings: + serializedVersion: 3 + agentTypeID: 0 + agentRadius: 0.5 + agentHeight: 2 + agentSlope: 45 + agentClimb: 0.4 + ledgeDropHeight: 0 + maxJumpAcrossDistance: 0 + minRegionArea: 2 + manualCellSize: 0 + cellSize: 0.16666666 + manualTileSize: 0 + tileSize: 256 + buildHeightMesh: 0 + maxJobWorkers: 0 + preserveTilesOutsideBounds: 0 + debug: + m_Flags: 0 + m_NavMeshData: {fileID: 0} +--- !u!1 &45542689 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 45542690} + - component: {fileID: 45542693} + - component: {fileID: 45542692} + - component: {fileID: 45542691} + m_Layer: 5 + m_Name: 'Button (ID: move)' + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &45542690 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 45542689} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 191643491} + m_Father: {fileID: 1997177219} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 0, y: -36} + m_SizeDelta: {x: 100, y: 30} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &45542691 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 45542689} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_WrapAround: 0 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 1 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} + m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} + m_ColorMultiplier: 1 + m_FadeDuration: 0.1 + m_SpriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_SelectedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_SelectedTrigger: Highlighted + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 45542692} + m_OnClick: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 1844382610} + m_TargetAssemblyTypeName: + m_MethodName: DORestartById + m_Mode: 5 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: move + m_BoolArgument: 0 + m_CallState: 2 +--- !u!114 &45542692 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 45542689} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 1 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!222 &45542693 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 45542689} + m_CullTransparentMesh: 1 +--- !u!1 &76224661 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 76224668} + - component: {fileID: 76224667} + - component: {fileID: 76224666} + - component: {fileID: 76224665} + - component: {fileID: 76224664} + - component: {fileID: 76224663} + m_Layer: 0 + m_Name: Cube C (w animation) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &76224663 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 76224661} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4d0390bd8b8ffd640b34fe25065ff1df, type: 3} + m_Name: + m_EditorClassIdentifier: + updateType: 0 + isSpeedBased: 0 + hasOnStart: 0 + hasOnPlay: 0 + hasOnUpdate: 0 + hasOnStepComplete: 0 + hasOnComplete: 0 + hasOnTweenCreated: 0 + hasOnRewind: 0 + onStart: + m_PersistentCalls: + m_Calls: [] + onPlay: + m_PersistentCalls: + m_Calls: [] + onUpdate: + m_PersistentCalls: + m_Calls: [] + onStepComplete: + m_PersistentCalls: + m_Calls: [] + onComplete: + m_PersistentCalls: + m_Calls: [] + onTweenCreated: + m_PersistentCalls: + m_Calls: [] + onRewind: + m_PersistentCalls: + m_Calls: [] + targetIsSelf: 1 + targetGO: {fileID: 0} + tweenTargetIsTargetGO: 1 + delay: 0 + duration: 1 + easeType: 6 + easeCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + loopType: 0 + loops: 1 + id: rotate + isRelative: 0 + isFrom: 0 + isIndependentUpdate: 0 + autoKill: 0 + isActive: 1 + isValid: 1 + target: {fileID: 76224668} + animationType: 3 + targetType: 0 + forcedTargetType: 0 + autoPlay: 0 + useTargetAsV3: 0 + endValueFloat: 0 + endValueV3: {x: 0, y: 180, z: 0} + endValueV2: {x: 0, y: 0} + endValueColor: {r: 1, g: 1, b: 1, a: 1} + endValueString: + endValueRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 0 + height: 0 + endValueTransform: {fileID: 0} + optionalBool0: 0 + optionalFloat0: 0 + optionalInt0: 0 + optionalRotationMode: 0 + optionalScrambleMode: 0 + optionalString: +--- !u!114 &76224664 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 76224661} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4d0390bd8b8ffd640b34fe25065ff1df, type: 3} + m_Name: + m_EditorClassIdentifier: + updateType: 0 + isSpeedBased: 0 + hasOnStart: 0 + hasOnPlay: 0 + hasOnUpdate: 0 + hasOnStepComplete: 0 + hasOnComplete: 0 + hasOnTweenCreated: 0 + hasOnRewind: 0 + onStart: + m_PersistentCalls: + m_Calls: [] + onPlay: + m_PersistentCalls: + m_Calls: [] + onUpdate: + m_PersistentCalls: + m_Calls: [] + onStepComplete: + m_PersistentCalls: + m_Calls: [] + onComplete: + m_PersistentCalls: + m_Calls: [] + onTweenCreated: + m_PersistentCalls: + m_Calls: [] + onRewind: + m_PersistentCalls: + m_Calls: [] + targetIsSelf: 1 + targetGO: {fileID: 0} + tweenTargetIsTargetGO: 1 + delay: 0 + duration: 1 + easeType: 6 + easeCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + loopType: 0 + loops: 1 + id: move + isRelative: 1 + isFrom: 0 + isIndependentUpdate: 0 + autoKill: 0 + isActive: 1 + isValid: 1 + target: {fileID: 76224668} + animationType: 1 + targetType: 0 + forcedTargetType: 0 + autoPlay: 0 + useTargetAsV3: 0 + endValueFloat: 0 + endValueV3: {x: 0, y: 1, z: 0} + endValueV2: {x: 0, y: 0} + endValueColor: {r: 1, g: 1, b: 1, a: 1} + endValueString: + endValueRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 0 + height: 0 + endValueTransform: {fileID: 0} + optionalBool0: 0 + optionalFloat0: 0 + optionalInt0: 0 + optionalRotationMode: 0 + optionalScrambleMode: 0 + optionalString: +--- !u!114 &76224665 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 76224661} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4d0390bd8b8ffd640b34fe25065ff1df, type: 3} + m_Name: + m_EditorClassIdentifier: + updateType: 0 + isSpeedBased: 0 + hasOnStart: 0 + hasOnPlay: 0 + hasOnUpdate: 0 + hasOnStepComplete: 0 + hasOnComplete: 0 + hasOnTweenCreated: 0 + hasOnRewind: 0 + onStart: + m_PersistentCalls: + m_Calls: [] + onPlay: + m_PersistentCalls: + m_Calls: [] + onUpdate: + m_PersistentCalls: + m_Calls: [] + onStepComplete: + m_PersistentCalls: + m_Calls: [] + onComplete: + m_PersistentCalls: + m_Calls: [] + onTweenCreated: + m_PersistentCalls: + m_Calls: [] + onRewind: + m_PersistentCalls: + m_Calls: [] + targetIsSelf: 1 + targetGO: {fileID: 0} + tweenTargetIsTargetGO: 1 + delay: 0 + duration: 1 + easeType: 6 + easeCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + loopType: 0 + loops: 1 + id: toRed + isRelative: 0 + isFrom: 0 + isIndependentUpdate: 0 + autoKill: 0 + isActive: 1 + isValid: 1 + target: {fileID: 76224666} + animationType: 6 + targetType: 0 + forcedTargetType: 0 + autoPlay: 0 + useTargetAsV3: 0 + endValueFloat: 0 + endValueV3: {x: 0, y: 0, z: 0} + endValueV2: {x: 0, y: 0} + endValueColor: {r: 1, g: 0, b: 0, a: 1} + endValueString: + endValueRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 0 + height: 0 + endValueTransform: {fileID: 0} + optionalBool0: 0 + optionalFloat0: 0 + optionalInt0: 0 + optionalRotationMode: 0 + optionalScrambleMode: 0 + optionalString: +--- !u!23 &76224666 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 76224661} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 0 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 10302, guid: 0000000000000000f000000000000000, type: 0} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &76224667 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 76224661} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!4 &76224668 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 76224661} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 2, y: 3, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 1760580329} + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &83016929 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 83016930} + - component: {fileID: 83016932} + - component: {fileID: 83016931} + m_Layer: 5 + m_Name: Text + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &83016930 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 83016929} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1839080358} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &83016931 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 83016929} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 0.196, g: 0.196, b: 0.196, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_FontData: + m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} + m_FontSize: 14 + m_FontStyle: 0 + m_BestFit: 0 + m_MinSize: 10 + m_MaxSize: 40 + m_Alignment: 4 + m_AlignByGeometry: 0 + m_RichText: 1 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 0 + m_LineSpacing: 1 + m_Text: 'ID: toRed' +--- !u!222 &83016932 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 83016929} + m_CullTransparentMesh: 1 +--- !u!1 &118309267 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 118309271} + - component: {fileID: 118309270} + - component: {fileID: 118309268} + - component: {fileID: 118309274} + - component: {fileID: 118309272} + - component: {fileID: 118309269} + m_Layer: 0 + m_Name: Cube A (w animation) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!23 &118309268 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 118309267} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 0 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 10302, guid: 0000000000000000f000000000000000, type: 0} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!114 &118309269 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 118309267} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4d0390bd8b8ffd640b34fe25065ff1df, type: 3} + m_Name: + m_EditorClassIdentifier: + updateType: 0 + isSpeedBased: 0 + hasOnStart: 0 + hasOnPlay: 0 + hasOnUpdate: 0 + hasOnStepComplete: 0 + hasOnComplete: 0 + hasOnTweenCreated: 0 + hasOnRewind: 0 + onStart: + m_PersistentCalls: + m_Calls: [] + onPlay: + m_PersistentCalls: + m_Calls: [] + onUpdate: + m_PersistentCalls: + m_Calls: [] + onStepComplete: + m_PersistentCalls: + m_Calls: [] + onComplete: + m_PersistentCalls: + m_Calls: [] + onTweenCreated: + m_PersistentCalls: + m_Calls: [] + onRewind: + m_PersistentCalls: + m_Calls: [] + targetIsSelf: 1 + targetGO: {fileID: 0} + tweenTargetIsTargetGO: 1 + delay: 0 + duration: 1 + easeType: 6 + easeCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + loopType: 0 + loops: 1 + id: rotate + isRelative: 0 + isFrom: 0 + isIndependentUpdate: 0 + autoKill: 0 + isActive: 1 + isValid: 1 + target: {fileID: 118309271} + animationType: 3 + targetType: 0 + forcedTargetType: 0 + autoPlay: 0 + useTargetAsV3: 0 + endValueFloat: 0 + endValueV3: {x: 0, y: 180, z: 0} + endValueV2: {x: 0, y: 0} + endValueColor: {r: 1, g: 1, b: 1, a: 1} + endValueString: + endValueRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 0 + height: 0 + endValueTransform: {fileID: 0} + optionalBool0: 0 + optionalFloat0: 0 + optionalInt0: 0 + optionalRotationMode: 0 + optionalScrambleMode: 0 + optionalString: +--- !u!33 &118309270 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 118309267} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!4 &118309271 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 118309267} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -2, y: 3, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 1192540964} + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &118309272 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 118309267} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4d0390bd8b8ffd640b34fe25065ff1df, type: 3} + m_Name: + m_EditorClassIdentifier: + updateType: 0 + isSpeedBased: 0 + hasOnStart: 0 + hasOnPlay: 0 + hasOnUpdate: 0 + hasOnStepComplete: 0 + hasOnComplete: 0 + hasOnTweenCreated: 0 + hasOnRewind: 0 + onStart: + m_PersistentCalls: + m_Calls: [] + onPlay: + m_PersistentCalls: + m_Calls: [] + onUpdate: + m_PersistentCalls: + m_Calls: [] + onStepComplete: + m_PersistentCalls: + m_Calls: [] + onComplete: + m_PersistentCalls: + m_Calls: [] + onTweenCreated: + m_PersistentCalls: + m_Calls: [] + onRewind: + m_PersistentCalls: + m_Calls: [] + targetIsSelf: 1 + targetGO: {fileID: 0} + tweenTargetIsTargetGO: 1 + delay: 0 + duration: 1 + easeType: 6 + easeCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + loopType: 0 + loops: 1 + id: move + isRelative: 1 + isFrom: 0 + isIndependentUpdate: 0 + autoKill: 0 + isActive: 1 + isValid: 1 + target: {fileID: 118309271} + animationType: 1 + targetType: 0 + forcedTargetType: 0 + autoPlay: 0 + useTargetAsV3: 0 + endValueFloat: 0 + endValueV3: {x: 0, y: 1, z: 0} + endValueV2: {x: 0, y: 0} + endValueColor: {r: 1, g: 1, b: 1, a: 1} + endValueString: + endValueRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 0 + height: 0 + endValueTransform: {fileID: 0} + optionalBool0: 0 + optionalFloat0: 0 + optionalInt0: 0 + optionalRotationMode: 0 + optionalScrambleMode: 0 + optionalString: +--- !u!114 &118309274 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 118309267} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4d0390bd8b8ffd640b34fe25065ff1df, type: 3} + m_Name: + m_EditorClassIdentifier: + updateType: 0 + isSpeedBased: 0 + hasOnStart: 0 + hasOnPlay: 0 + hasOnUpdate: 0 + hasOnStepComplete: 0 + hasOnComplete: 0 + hasOnTweenCreated: 0 + hasOnRewind: 0 + onStart: + m_PersistentCalls: + m_Calls: [] + onPlay: + m_PersistentCalls: + m_Calls: [] + onUpdate: + m_PersistentCalls: + m_Calls: [] + onStepComplete: + m_PersistentCalls: + m_Calls: [] + onComplete: + m_PersistentCalls: + m_Calls: [] + onTweenCreated: + m_PersistentCalls: + m_Calls: [] + onRewind: + m_PersistentCalls: + m_Calls: [] + targetIsSelf: 1 + targetGO: {fileID: 0} + tweenTargetIsTargetGO: 1 + delay: 0 + duration: 1 + easeType: 6 + easeCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + loopType: 0 + loops: 1 + id: toRed + isRelative: 0 + isFrom: 0 + isIndependentUpdate: 0 + autoKill: 0 + isActive: 1 + isValid: 1 + target: {fileID: 118309268} + animationType: 6 + targetType: 0 + forcedTargetType: 0 + autoPlay: 0 + useTargetAsV3: 0 + endValueFloat: 0 + endValueV3: {x: 0, y: 0, z: 0} + endValueV2: {x: 0, y: 0} + endValueColor: {r: 1, g: 0, b: 0, a: 1} + endValueString: + endValueRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 0 + height: 0 + endValueTransform: {fileID: 0} + optionalBool0: 0 + optionalFloat0: 0 + optionalInt0: 0 + optionalRotationMode: 0 + optionalScrambleMode: 0 + optionalString: +--- !u!1 &186391000 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 186391001} + m_Layer: 5 + m_Name: Buttons - PlayAllById + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &186391001 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 186391000} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 467194356} + - {fileID: 1492174307} + - {fileID: 323853745} + - {fileID: 1644045641} + m_Father: {fileID: 1260203941} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: -34} + m_SizeDelta: {x: 0, y: -48.000015} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!1 &191643490 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 191643491} + - component: {fileID: 191643493} + - component: {fileID: 191643492} + m_Layer: 5 + m_Name: Text + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &191643491 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 191643490} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 45542690} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &191643492 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 191643490} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 0.196, g: 0.196, b: 0.196, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_FontData: + m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} + m_FontSize: 14 + m_FontStyle: 0 + m_BestFit: 0 + m_MinSize: 10 + m_MaxSize: 40 + m_Alignment: 4 + m_AlignByGeometry: 0 + m_RichText: 1 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 0 + m_LineSpacing: 1 + m_Text: 'ID: move' +--- !u!222 &191643493 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 191643490} + m_CullTransparentMesh: 1 +--- !u!1 &215583160 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 215583161} + - component: {fileID: 215583163} + - component: {fileID: 215583162} + m_Layer: 5 + m_Name: Text + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &215583161 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 215583160} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1619597526} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &215583162 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 215583160} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 0.196, g: 0.196, b: 0.196, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_FontData: + m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} + m_FontSize: 14 + m_FontStyle: 0 + m_BestFit: 0 + m_MinSize: 10 + m_MaxSize: 40 + m_Alignment: 4 + m_AlignByGeometry: 0 + m_RichText: 1 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 0 + m_LineSpacing: 1 + m_Text: 'ID: move' +--- !u!222 &215583163 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 215583160} + m_CullTransparentMesh: 1 +--- !u!1 &286188793 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 286188794} + m_Layer: 5 + m_Name: Buttons - PlayById + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &286188794 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 286188793} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 1158456312} + - {fileID: 1839080358} + - {fileID: 1095596651} + - {fileID: 566135255} + m_Father: {fileID: 1260203941} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 42} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!1 &323853744 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 323853745} + - component: {fileID: 323853748} + - component: {fileID: 323853747} + - component: {fileID: 323853746} + m_Layer: 5 + m_Name: 'Button (ID: move)' + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &323853745 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 323853744} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 645240663} + m_Father: {fileID: 186391001} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 0, y: -36} + m_SizeDelta: {x: 100, y: 30} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &323853746 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 323853744} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_WrapAround: 0 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 1 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} + m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} + m_ColorMultiplier: 1 + m_FadeDuration: 0.1 + m_SpriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_SelectedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_SelectedTrigger: Highlighted + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 323853747} + m_OnClick: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 1844382610} + m_TargetAssemblyTypeName: + m_MethodName: DOPlayAllById + m_Mode: 5 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: move + m_BoolArgument: 0 + m_CallState: 2 +--- !u!114 &323853747 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 323853744} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 1 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!222 &323853748 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 323853744} + m_CullTransparentMesh: 1 +--- !u!1 &386943563 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 386943564} + - component: {fileID: 386943566} + - component: {fileID: 386943565} + m_Layer: 5 + m_Name: Text + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &386943564 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 386943563} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 766204080} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &386943565 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 386943563} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 0.196, g: 0.196, b: 0.196, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_FontData: + m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} + m_FontSize: 14 + m_FontStyle: 0 + m_BestFit: 0 + m_MinSize: 10 + m_MaxSize: 40 + m_Alignment: 4 + m_AlignByGeometry: 0 + m_RichText: 1 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 0 + m_LineSpacing: 1 + m_Text: 'ID: toRed' +--- !u!222 &386943566 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 386943563} + m_CullTransparentMesh: 1 +--- !u!1 &461995929 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 461995932} + - component: {fileID: 461995931} + - component: {fileID: 461995930} + m_Layer: 0 + m_Name: Name + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!102 &461995930 +TextMesh: + serializedVersion: 3 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 461995929} + m_Text: B + m_OffsetZ: 0 + m_CharacterSize: 20 + m_LineSpacing: 1 + m_Anchor: 4 + m_Alignment: 1 + m_TabSize: 4 + m_FontSize: 30 + m_FontStyle: 1 + m_RichText: 1 + m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} + m_Color: + serializedVersion: 2 + rgba: 4294967295 +--- !u!23 &461995931 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 461995929} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 0 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 10100, guid: 0000000000000000e000000000000000, type: 0} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!4 &461995932 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 461995929} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 0.01, y: 0.01, z: 0.01} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1844382606} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &467194355 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 467194356} + - component: {fileID: 467194358} + - component: {fileID: 467194357} + m_Layer: 5 + m_Name: Description + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &467194356 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 467194355} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 186391001} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 550, y: 30} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &467194357 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 467194355} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_FontData: + m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} + m_FontSize: 14 + m_FontStyle: 0 + m_BestFit: 0 + m_MinSize: 10 + m_MaxSize: 40 + m_Alignment: 1 + m_AlignByGeometry: 0 + m_RichText: 1 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 1 + m_LineSpacing: 1 + m_Text: 'DOPlayAllById (Cube B as target) + + Will play the DOTweenAnimations + with the given ID, on ANY gameObject' +--- !u!222 &467194358 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 467194355} + m_CullTransparentMesh: 1 +--- !u!1 &502741617 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 502741618} + - component: {fileID: 502741621} + - component: {fileID: 502741620} + - component: {fileID: 502741619} + m_Layer: 5 + m_Name: 'Button (ID: rotate)' + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &502741618 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 502741617} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 685170976} + m_Father: {fileID: 1997177219} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 100, y: -36} + m_SizeDelta: {x: 100, y: 30} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &502741619 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 502741617} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_WrapAround: 0 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 1 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} + m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} + m_ColorMultiplier: 1 + m_FadeDuration: 0.1 + m_SpriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_SelectedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_SelectedTrigger: Highlighted + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 502741620} + m_OnClick: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 1844382610} + m_TargetAssemblyTypeName: + m_MethodName: DORestartById + m_Mode: 5 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: rotate + m_BoolArgument: 0 + m_CallState: 2 +--- !u!114 &502741620 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 502741617} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 1 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!222 &502741621 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 502741617} + m_CullTransparentMesh: 1 +--- !u!1 &566135254 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 566135255} + - component: {fileID: 566135258} + - component: {fileID: 566135257} + - component: {fileID: 566135256} + m_Layer: 5 + m_Name: 'Button (ID: rotate)' + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &566135255 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 566135254} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 740664255} + m_Father: {fileID: 286188794} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 100, y: -36} + m_SizeDelta: {x: 100, y: 30} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &566135256 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 566135254} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_WrapAround: 0 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 1 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} + m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} + m_ColorMultiplier: 1 + m_FadeDuration: 0.1 + m_SpriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_SelectedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_SelectedTrigger: Highlighted + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 566135257} + m_OnClick: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 1844382610} + m_TargetAssemblyTypeName: + m_MethodName: DOPlayById + m_Mode: 5 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: rotate + m_BoolArgument: 0 + m_CallState: 2 +--- !u!114 &566135257 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 566135254} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 1 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!222 &566135258 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 566135254} + m_CullTransparentMesh: 1 +--- !u!1 &608072282 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 608072283} + - component: {fileID: 608072285} + - component: {fileID: 608072284} + m_Layer: 5 + m_Name: Description + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &608072283 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 608072282} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1785989881} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 550, y: 30} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &608072284 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 608072282} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_FontData: + m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} + m_FontSize: 14 + m_FontStyle: 0 + m_BestFit: 0 + m_MinSize: 10 + m_MaxSize: 40 + m_Alignment: 1 + m_AlignByGeometry: 0 + m_RichText: 1 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 1 + m_LineSpacing: 1 + m_Text: 'DORestartAllById (Cube B as target) + + Will restart the DOTweenAnimations + with the given ID, on ANY gameObject' +--- !u!222 &608072285 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 608072282} + m_CullTransparentMesh: 1 +--- !u!1 &645240662 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 645240663} + - component: {fileID: 645240665} + - component: {fileID: 645240664} + m_Layer: 5 + m_Name: Text + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &645240663 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 645240662} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 323853745} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &645240664 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 645240662} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 0.196, g: 0.196, b: 0.196, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_FontData: + m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} + m_FontSize: 14 + m_FontStyle: 0 + m_BestFit: 0 + m_MinSize: 10 + m_MaxSize: 40 + m_Alignment: 4 + m_AlignByGeometry: 0 + m_RichText: 1 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 0 + m_LineSpacing: 1 + m_Text: 'ID: move' +--- !u!222 &645240665 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 645240662} + m_CullTransparentMesh: 1 +--- !u!1 &685170975 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 685170976} + - component: {fileID: 685170978} + - component: {fileID: 685170977} + m_Layer: 5 + m_Name: Text + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &685170976 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 685170975} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 502741618} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &685170977 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 685170975} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 0.196, g: 0.196, b: 0.196, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_FontData: + m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} + m_FontSize: 14 + m_FontStyle: 0 + m_BestFit: 0 + m_MinSize: 10 + m_MaxSize: 40 + m_Alignment: 4 + m_AlignByGeometry: 0 + m_RichText: 1 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 0 + m_LineSpacing: 1 + m_Text: 'ID: rotate' +--- !u!222 &685170978 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 685170975} + m_CullTransparentMesh: 1 +--- !u!1 &718047501 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 718047502} + - component: {fileID: 718047504} + - component: {fileID: 718047503} + m_Layer: 5 + m_Name: Text + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &718047502 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 718047501} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1371900811} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &718047503 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 718047501} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 0.196, g: 0.196, b: 0.196, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_FontData: + m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} + m_FontSize: 14 + m_FontStyle: 0 + m_BestFit: 0 + m_MinSize: 10 + m_MaxSize: 40 + m_Alignment: 4 + m_AlignByGeometry: 0 + m_RichText: 1 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 0 + m_LineSpacing: 1 + m_Text: 'ID: rotate' +--- !u!222 &718047504 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 718047501} + m_CullTransparentMesh: 1 +--- !u!1 &731424937 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 731424938} + - component: {fileID: 731424940} + - component: {fileID: 731424939} + m_Layer: 5 + m_Name: Text + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &731424938 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 731424937} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 899835911} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &731424939 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 731424937} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 0.196, g: 0.196, b: 0.196, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_FontData: + m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} + m_FontSize: 14 + m_FontStyle: 0 + m_BestFit: 0 + m_MinSize: 10 + m_MaxSize: 40 + m_Alignment: 4 + m_AlignByGeometry: 0 + m_RichText: 1 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 0 + m_LineSpacing: 1 + m_Text: 'ID: toRed' +--- !u!222 &731424940 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 731424937} + m_CullTransparentMesh: 1 +--- !u!1 &740664254 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 740664255} + - component: {fileID: 740664257} + - component: {fileID: 740664256} + m_Layer: 5 + m_Name: Text + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &740664255 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 740664254} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 566135255} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &740664256 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 740664254} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 0.196, g: 0.196, b: 0.196, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_FontData: + m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} + m_FontSize: 14 + m_FontStyle: 0 + m_BestFit: 0 + m_MinSize: 10 + m_MaxSize: 40 + m_Alignment: 4 + m_AlignByGeometry: 0 + m_RichText: 1 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 0 + m_LineSpacing: 1 + m_Text: 'ID: rotate' +--- !u!222 &740664257 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 740664254} + m_CullTransparentMesh: 1 +--- !u!1 &766204079 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 766204080} + - component: {fileID: 766204083} + - component: {fileID: 766204082} + - component: {fileID: 766204081} + m_Layer: 5 + m_Name: 'Button (ID: toRed)' + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &766204080 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 766204079} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 386943564} + m_Father: {fileID: 1785989881} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: -100, y: -36} + m_SizeDelta: {x: 100, y: 30} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &766204081 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 766204079} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_WrapAround: 0 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 1 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} + m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} + m_ColorMultiplier: 1 + m_FadeDuration: 0.1 + m_SpriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_SelectedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_SelectedTrigger: Highlighted + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 766204082} + m_OnClick: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 1844382610} + m_TargetAssemblyTypeName: + m_MethodName: DORestartAllById + m_Mode: 5 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: toRed + m_BoolArgument: 0 + m_CallState: 2 +--- !u!114 &766204082 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 766204079} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 1 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!222 &766204083 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 766204079} + m_CullTransparentMesh: 1 +--- !u!1 &848136767 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 848136772} + - component: {fileID: 848136771} + - component: {fileID: 848136769} + - component: {fileID: 848136768} + m_Layer: 0 + m_Name: Main Camera + m_TagString: MainCamera + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!81 &848136768 +AudioListener: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 848136767} + m_Enabled: 1 +--- !u!124 &848136769 +Behaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 848136767} + m_Enabled: 1 +--- !u!20 &848136771 +Camera: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 848136767} + m_Enabled: 1 + serializedVersion: 2 + m_ClearFlags: 1 + m_BackGroundColor: {r: 0.16176468, g: 0.16176468, b: 0.16176468, a: 0.019607844} + m_projectionMatrixMode: 1 + m_GateFitMode: 2 + m_FOVAxisMode: 0 + m_Iso: 200 + m_ShutterSpeed: 0.005 + m_Aperture: 16 + m_FocusDistance: 10 + m_FocalLength: 50 + m_BladeCount: 5 + m_Curvature: {x: 2, y: 11} + m_BarrelClipping: 0.25 + m_Anamorphism: 0 + m_SensorSize: {x: 36, y: 24} + m_LensShift: {x: 0, y: 0} + m_NormalizedViewPortRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 1 + height: 1 + near clip plane: 0.3 + far clip plane: 1000 + field of view: 60 + orthographic: 0 + orthographic size: 5 + m_Depth: -1 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RenderingPath: -1 + m_TargetTexture: {fileID: 0} + m_TargetDisplay: 0 + m_TargetEye: 3 + m_HDR: 0 + m_AllowMSAA: 1 + m_AllowDynamicResolution: 0 + m_ForceIntoRT: 0 + m_OcclusionCulling: 1 + m_StereoConvergence: 10 + m_StereoSeparation: 0.022 +--- !u!4 &848136772 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 848136767} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: -10} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &899835910 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 899835911} + - component: {fileID: 899835914} + - component: {fileID: 899835913} + - component: {fileID: 899835912} + m_Layer: 5 + m_Name: 'Button (ID: toRed)' + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &899835911 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 899835910} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 731424938} + m_Father: {fileID: 1997177219} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: -100, y: -36} + m_SizeDelta: {x: 100, y: 30} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &899835912 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 899835910} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_WrapAround: 0 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 1 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} + m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} + m_ColorMultiplier: 1 + m_FadeDuration: 0.1 + m_SpriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_SelectedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_SelectedTrigger: Highlighted + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 899835913} + m_OnClick: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 1844382610} + m_TargetAssemblyTypeName: + m_MethodName: DORestartById + m_Mode: 5 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: toRed + m_BoolArgument: 0 + m_CallState: 2 +--- !u!114 &899835913 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 899835910} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 1 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!222 &899835914 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 899835910} + m_CullTransparentMesh: 1 +--- !u!1 &970591913 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 970591914} + - component: {fileID: 970591916} + - component: {fileID: 970591915} + m_Layer: 5 + m_Name: Text + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &970591914 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 970591913} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1356883401} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &970591915 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 970591913} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 0.196, g: 0.196, b: 0.196, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_FontData: + m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} + m_FontSize: 14 + m_FontStyle: 0 + m_BestFit: 0 + m_MinSize: 10 + m_MaxSize: 40 + m_Alignment: 4 + m_AlignByGeometry: 0 + m_RichText: 1 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 0 + m_LineSpacing: 1 + m_Text: DOPlayNext +--- !u!222 &970591916 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 970591913} + m_CullTransparentMesh: 1 +--- !u!1 &1025578319 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1025578320} + - component: {fileID: 1025578322} + - component: {fileID: 1025578321} + m_Layer: 5 + m_Name: Text + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1025578320 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1025578319} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1095596651} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &1025578321 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1025578319} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 0.196, g: 0.196, b: 0.196, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_FontData: + m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} + m_FontSize: 14 + m_FontStyle: 0 + m_BestFit: 0 + m_MinSize: 10 + m_MaxSize: 40 + m_Alignment: 4 + m_AlignByGeometry: 0 + m_RichText: 1 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 0 + m_LineSpacing: 1 + m_Text: 'ID: move' +--- !u!222 &1025578322 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1025578319} + m_CullTransparentMesh: 1 +--- !u!1 &1053889438 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1053889442} + - component: {fileID: 1053889441} + - component: {fileID: 1053889440} + - component: {fileID: 1053889439} + m_Layer: 0 + m_Name: EventSystem + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &1053889439 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1053889438} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 2d49b7c1bcd2e07499844da127be038d, type: 3} + m_Name: + m_EditorClassIdentifier: + m_SendPointerHoverToParent: 1 + m_ForceModuleActive: 0 +--- !u!114 &1053889440 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1053889438} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4f231c4fb786f3946a6b90b886c48677, type: 3} + m_Name: + m_EditorClassIdentifier: + m_SendPointerHoverToParent: 1 + m_HorizontalAxis: Horizontal + m_VerticalAxis: Vertical + m_SubmitButton: Submit + m_CancelButton: Cancel + m_InputActionsPerSecond: 10 + m_RepeatDelay: 0.5 + m_ForceModuleActive: 0 +--- !u!114 &1053889441 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1053889438} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 76c392e42b5098c458856cdf6ecaaaa1, type: 3} + m_Name: + m_EditorClassIdentifier: + m_FirstSelected: {fileID: 0} + m_sendNavigationEvents: 1 + m_DragThreshold: 5 +--- !u!4 &1053889442 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1053889438} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1095596650 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1095596651} + - component: {fileID: 1095596654} + - component: {fileID: 1095596653} + - component: {fileID: 1095596652} + m_Layer: 5 + m_Name: 'Button (ID: move)' + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1095596651 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1095596650} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 1025578320} + m_Father: {fileID: 286188794} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 0, y: -36} + m_SizeDelta: {x: 100, y: 30} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &1095596652 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1095596650} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_WrapAround: 0 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 1 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} + m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} + m_ColorMultiplier: 1 + m_FadeDuration: 0.1 + m_SpriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_SelectedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_SelectedTrigger: Highlighted + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 1095596653} + m_OnClick: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 1844382610} + m_TargetAssemblyTypeName: + m_MethodName: DOPlayById + m_Mode: 5 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: move + m_BoolArgument: 0 + m_CallState: 2 +--- !u!114 &1095596653 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1095596650} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 1 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!222 &1095596654 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1095596650} + m_CullTransparentMesh: 1 +--- !u!1 &1158456309 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1158456312} + - component: {fileID: 1158456311} + - component: {fileID: 1158456310} + m_Layer: 5 + m_Name: Description + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &1158456310 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1158456309} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_FontData: + m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} + m_FontSize: 14 + m_FontStyle: 0 + m_BestFit: 0 + m_MinSize: 10 + m_MaxSize: 40 + m_Alignment: 1 + m_AlignByGeometry: 0 + m_RichText: 1 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 1 + m_LineSpacing: 1 + m_Text: 'DOPlayById (Cube B as target) + + Will play only the DOTweenAnimations + with the given ID that are on Cube B' +--- !u!222 &1158456311 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1158456309} + m_CullTransparentMesh: 1 +--- !u!224 &1158456312 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1158456309} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 286188794} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 550, y: 30} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!1 &1192540961 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1192540964} + - component: {fileID: 1192540963} + - component: {fileID: 1192540962} + m_Layer: 0 + m_Name: Name + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!102 &1192540962 +TextMesh: + serializedVersion: 3 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1192540961} + m_Text: A + m_OffsetZ: 0 + m_CharacterSize: 20 + m_LineSpacing: 1 + m_Anchor: 4 + m_Alignment: 1 + m_TabSize: 4 + m_FontSize: 30 + m_FontStyle: 1 + m_RichText: 1 + m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} + m_Color: + serializedVersion: 2 + rgba: 4294967295 +--- !u!23 &1192540963 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1192540961} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 0 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 10100, guid: 0000000000000000e000000000000000, type: 0} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!4 &1192540964 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1192540961} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 0.01, y: 0.01, z: 0.01} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 118309271} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1242857378 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1242857380} + - component: {fileID: 1242857379} + m_Layer: 0 + m_Name: Directional light + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!108 &1242857379 +Light: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1242857378} + m_Enabled: 1 + serializedVersion: 10 + m_Type: 1 + m_Shape: 0 + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_Intensity: 1 + m_Range: 10 + m_SpotAngle: 30 + m_InnerSpotAngle: 21.80208 + m_CookieSize: 10 + m_Shadows: + m_Type: 0 + m_Resolution: -1 + m_CustomResolution: -1 + m_Strength: 1 + m_Bias: 0.05 + m_NormalBias: 0.4 + m_NearPlane: 0.2 + m_CullingMatrixOverride: + e00: 1 + e01: 0 + e02: 0 + e03: 0 + e10: 0 + e11: 1 + e12: 0 + e13: 0 + e20: 0 + e21: 0 + e22: 1 + e23: 0 + e30: 0 + e31: 0 + e32: 0 + e33: 1 + m_UseCullingMatrixOverride: 0 + m_Cookie: {fileID: 0} + m_DrawHalo: 0 + m_Flare: {fileID: 0} + m_RenderMode: 0 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RenderingLayerMask: 1 + m_Lightmapping: 1 + m_LightShadowCasterMode: 0 + m_AreaSize: {x: 1, y: 1} + m_BounceIntensity: 1 + m_ColorTemperature: 6570 + m_UseColorTemperature: 0 + m_BoundingSphereOverride: {x: 0, y: 0, z: 0, w: 0} + m_UseBoundingSphereOverride: 0 + m_UseViewFrustumForShadowCasterCull: 1 + m_ShadowRadius: 0 + m_ShadowAngle: 0 +--- !u!4 &1242857380 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1242857378} + serializedVersion: 2 + m_LocalRotation: {x: 0.40821794, y: -0.23456973, z: 0.10938166, w: 0.8754261} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 0.99999994, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1260203940 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1260203941} + - component: {fileID: 1260203944} + - component: {fileID: 1260203943} + - component: {fileID: 1260203942} + m_Layer: 5 + m_Name: Canvas (w button controls) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1260203941 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1260203940} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 0, y: 0, z: 0} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 1356883401} + - {fileID: 286188794} + - {fileID: 186391001} + - {fileID: 1997177219} + - {fileID: 1785989881} + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 0, y: 0} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0, y: 0} +--- !u!114 &1260203942 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1260203940} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreReversedGraphics: 1 + m_BlockingObjects: 0 + m_BlockingMask: + serializedVersion: 2 + m_Bits: 4294967295 +--- !u!114 &1260203943 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1260203940} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UiScaleMode: 0 + m_ReferencePixelsPerUnit: 100 + m_ScaleFactor: 1 + m_ReferenceResolution: {x: 800, y: 600} + m_ScreenMatchMode: 0 + m_MatchWidthOrHeight: 0 + m_PhysicalUnit: 3 + m_FallbackScreenDPI: 96 + m_DefaultSpriteDPI: 96 + m_DynamicPixelsPerUnit: 1 + m_PresetInfoIsWorld: 0 +--- !u!223 &1260203944 +Canvas: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1260203940} + m_Enabled: 1 + serializedVersion: 3 + m_RenderMode: 1 + m_Camera: {fileID: 848136771} + m_PlaneDistance: 100 + m_PixelPerfect: 1 + m_ReceivesEvents: 1 + m_OverrideSorting: 0 + m_OverridePixelPerfect: 0 + m_SortingBucketNormalizedSize: 0 + m_VertexColorAlwaysGammaSpace: 0 + m_AdditionalShaderChannelsFlag: 25 + m_UpdateRectTransformForStandalone: 0 + m_SortingLayerID: 0 + m_SortingOrder: 0 + m_TargetDisplay: 0 +--- !u!1 &1305249262 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1305249263} + - component: {fileID: 1305249265} + - component: {fileID: 1305249264} + m_Layer: 5 + m_Name: Text + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1305249263 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1305249262} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1492174307} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &1305249264 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1305249262} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 0.196, g: 0.196, b: 0.196, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_FontData: + m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} + m_FontSize: 14 + m_FontStyle: 0 + m_BestFit: 0 + m_MinSize: 10 + m_MaxSize: 40 + m_Alignment: 4 + m_AlignByGeometry: 0 + m_RichText: 1 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 0 + m_LineSpacing: 1 + m_Text: 'ID: toRed' +--- !u!222 &1305249265 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1305249262} + m_CullTransparentMesh: 1 +--- !u!1 &1356883400 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1356883401} + - component: {fileID: 1356883404} + - component: {fileID: 1356883403} + - component: {fileID: 1356883402} + m_Layer: 5 + m_Name: Button (DOPlayNext) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1356883401 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1356883400} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 970591914} + m_Father: {fileID: 1260203941} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 0, y: 82} + m_SizeDelta: {x: 160, y: 30} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &1356883402 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1356883400} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_WrapAround: 0 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 1 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} + m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} + m_ColorMultiplier: 1 + m_FadeDuration: 0.1 + m_SpriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_SelectedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_SelectedTrigger: Highlighted + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 1356883403} + m_OnClick: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 118309274} + m_TargetAssemblyTypeName: + m_MethodName: DOPlayNext + m_Mode: 1 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: + m_BoolArgument: 0 + m_CallState: 2 + - m_Target: {fileID: 1844382610} + m_TargetAssemblyTypeName: + m_MethodName: DOPlayNext + m_Mode: 1 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: + m_BoolArgument: 0 + m_CallState: 2 + - m_Target: {fileID: 76224665} + m_TargetAssemblyTypeName: + m_MethodName: DOPlayNext + m_Mode: 1 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: + m_BoolArgument: 0 + m_CallState: 2 +--- !u!114 &1356883403 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1356883400} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 1 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!222 &1356883404 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1356883400} + m_CullTransparentMesh: 1 +--- !u!1 &1371900810 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1371900811} + - component: {fileID: 1371900814} + - component: {fileID: 1371900813} + - component: {fileID: 1371900812} + m_Layer: 5 + m_Name: 'Button (ID: rotate)' + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1371900811 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1371900810} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 718047502} + m_Father: {fileID: 1785989881} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 100, y: -36} + m_SizeDelta: {x: 100, y: 30} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &1371900812 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1371900810} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_WrapAround: 0 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 1 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} + m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} + m_ColorMultiplier: 1 + m_FadeDuration: 0.1 + m_SpriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_SelectedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_SelectedTrigger: Highlighted + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 1371900813} + m_OnClick: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 1844382610} + m_TargetAssemblyTypeName: + m_MethodName: DORestartAllById + m_Mode: 5 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: rotate + m_BoolArgument: 0 + m_CallState: 2 +--- !u!114 &1371900813 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1371900810} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 1 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!222 &1371900814 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1371900810} + m_CullTransparentMesh: 1 +--- !u!1 &1477055226 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1477055227} + - component: {fileID: 1477055229} + - component: {fileID: 1477055228} + m_Layer: 5 + m_Name: Text + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1477055227 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1477055226} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1644045641} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &1477055228 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1477055226} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 0.196, g: 0.196, b: 0.196, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_FontData: + m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} + m_FontSize: 14 + m_FontStyle: 0 + m_BestFit: 0 + m_MinSize: 10 + m_MaxSize: 40 + m_Alignment: 4 + m_AlignByGeometry: 0 + m_RichText: 1 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 0 + m_LineSpacing: 1 + m_Text: 'ID: rotate' +--- !u!222 &1477055229 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1477055226} + m_CullTransparentMesh: 1 +--- !u!1 &1492174306 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1492174307} + - component: {fileID: 1492174310} + - component: {fileID: 1492174309} + - component: {fileID: 1492174308} + m_Layer: 5 + m_Name: 'Button (ID: toRed)' + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1492174307 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1492174306} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 1305249263} + m_Father: {fileID: 186391001} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: -100, y: -36} + m_SizeDelta: {x: 100, y: 30} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &1492174308 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1492174306} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_WrapAround: 0 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 1 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} + m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} + m_ColorMultiplier: 1 + m_FadeDuration: 0.1 + m_SpriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_SelectedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_SelectedTrigger: Highlighted + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 1492174309} + m_OnClick: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 1844382610} + m_TargetAssemblyTypeName: + m_MethodName: DOPlayAllById + m_Mode: 5 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: toRed + m_BoolArgument: 0 + m_CallState: 2 +--- !u!114 &1492174309 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1492174306} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 1 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!222 &1492174310 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1492174306} + m_CullTransparentMesh: 1 +--- !u!1 &1619597525 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1619597526} + - component: {fileID: 1619597529} + - component: {fileID: 1619597528} + - component: {fileID: 1619597527} + m_Layer: 5 + m_Name: 'Button (ID: move)' + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1619597526 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1619597525} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 215583161} + m_Father: {fileID: 1785989881} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 0, y: -36} + m_SizeDelta: {x: 100, y: 30} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &1619597527 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1619597525} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_WrapAround: 0 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 1 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} + m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} + m_ColorMultiplier: 1 + m_FadeDuration: 0.1 + m_SpriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_SelectedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_SelectedTrigger: Highlighted + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 1619597528} + m_OnClick: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 1844382610} + m_TargetAssemblyTypeName: + m_MethodName: DORestartAllById + m_Mode: 5 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: move + m_BoolArgument: 0 + m_CallState: 2 +--- !u!114 &1619597528 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1619597525} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 1 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!222 &1619597529 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1619597525} + m_CullTransparentMesh: 1 +--- !u!1 &1644045637 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1644045641} + - component: {fileID: 1644045640} + - component: {fileID: 1644045639} + - component: {fileID: 1644045638} + m_Layer: 5 + m_Name: 'Button (ID: rotate)' + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &1644045638 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1644045637} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_WrapAround: 0 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 1 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} + m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} + m_ColorMultiplier: 1 + m_FadeDuration: 0.1 + m_SpriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_SelectedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_SelectedTrigger: Highlighted + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 1644045639} + m_OnClick: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 1844382610} + m_TargetAssemblyTypeName: + m_MethodName: DOPlayAllById + m_Mode: 5 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: rotate + m_BoolArgument: 0 + m_CallState: 2 +--- !u!114 &1644045639 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1644045637} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 1 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!222 &1644045640 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1644045637} + m_CullTransparentMesh: 1 +--- !u!224 &1644045641 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1644045637} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 1477055227} + m_Father: {fileID: 186391001} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 100, y: -36} + m_SizeDelta: {x: 100, y: 30} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!1 &1760580328 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1760580329} + - component: {fileID: 1760580331} + - component: {fileID: 1760580330} + m_Layer: 0 + m_Name: Name + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1760580329 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1760580328} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 0.01, y: 0.01, z: 0.01} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 76224668} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!102 &1760580330 +TextMesh: + serializedVersion: 3 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1760580328} + m_Text: C + m_OffsetZ: 0 + m_CharacterSize: 20 + m_LineSpacing: 1 + m_Anchor: 4 + m_Alignment: 1 + m_TabSize: 4 + m_FontSize: 30 + m_FontStyle: 1 + m_RichText: 1 + m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} + m_Color: + serializedVersion: 2 + rgba: 4294967295 +--- !u!23 &1760580331 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1760580328} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 0 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 10100, guid: 0000000000000000e000000000000000, type: 0} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!1 &1785989880 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1785989881} + m_Layer: 5 + m_Name: Buttons - RestartAllById + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1785989881 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1785989880} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 608072283} + - {fileID: 766204080} + - {fileID: 1619597526} + - {fileID: 1371900811} + m_Father: {fileID: 1260203941} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: -184} + m_SizeDelta: {x: 0, y: -48} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!1 &1812319720 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1812319721} + - component: {fileID: 1812319723} + - component: {fileID: 1812319722} + m_Layer: 5 + m_Name: Description + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1812319721 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1812319720} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1997177219} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 550, y: 30} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &1812319722 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1812319720} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_FontData: + m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} + m_FontSize: 14 + m_FontStyle: 0 + m_BestFit: 0 + m_MinSize: 10 + m_MaxSize: 40 + m_Alignment: 1 + m_AlignByGeometry: 0 + m_RichText: 1 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 1 + m_LineSpacing: 1 + m_Text: 'DORestartById (Cube B as target) + + Will restart only the DOTweenAnimations + with the given ID that are on Cube B' +--- !u!222 &1812319723 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1812319720} + m_CullTransparentMesh: 1 +--- !u!1 &1839080357 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1839080358} + - component: {fileID: 1839080361} + - component: {fileID: 1839080360} + - component: {fileID: 1839080359} + m_Layer: 5 + m_Name: 'Button (ID: toRed)' + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1839080358 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1839080357} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 83016930} + m_Father: {fileID: 286188794} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: -100, y: -36} + m_SizeDelta: {x: 100, y: 30} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &1839080359 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1839080357} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_WrapAround: 0 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 1 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} + m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} + m_ColorMultiplier: 1 + m_FadeDuration: 0.1 + m_SpriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_SelectedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_SelectedTrigger: Highlighted + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 1839080360} + m_OnClick: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 1844382610} + m_TargetAssemblyTypeName: + m_MethodName: DOPlayById + m_Mode: 5 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: toRed + m_BoolArgument: 0 + m_CallState: 2 +--- !u!114 &1839080360 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1839080357} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 1 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!222 &1839080361 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1839080357} + m_CullTransparentMesh: 1 +--- !u!1 &1844382605 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1844382606} + - component: {fileID: 1844382612} + - component: {fileID: 1844382611} + - component: {fileID: 1844382610} + - component: {fileID: 1844382609} + - component: {fileID: 1844382608} + m_Layer: 0 + m_Name: Cube B (w animation) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1844382606 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1844382605} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 3, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 461995932} + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &1844382608 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1844382605} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4d0390bd8b8ffd640b34fe25065ff1df, type: 3} + m_Name: + m_EditorClassIdentifier: + updateType: 0 + isSpeedBased: 0 + hasOnStart: 0 + hasOnPlay: 0 + hasOnUpdate: 0 + hasOnStepComplete: 0 + hasOnComplete: 0 + hasOnTweenCreated: 0 + hasOnRewind: 0 + onStart: + m_PersistentCalls: + m_Calls: [] + onPlay: + m_PersistentCalls: + m_Calls: [] + onUpdate: + m_PersistentCalls: + m_Calls: [] + onStepComplete: + m_PersistentCalls: + m_Calls: [] + onComplete: + m_PersistentCalls: + m_Calls: [] + onTweenCreated: + m_PersistentCalls: + m_Calls: [] + onRewind: + m_PersistentCalls: + m_Calls: [] + targetIsSelf: 1 + targetGO: {fileID: 0} + tweenTargetIsTargetGO: 1 + delay: 0 + duration: 1 + easeType: 6 + easeCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + loopType: 0 + loops: 1 + id: rotate + isRelative: 0 + isFrom: 0 + isIndependentUpdate: 0 + autoKill: 0 + isActive: 1 + isValid: 1 + target: {fileID: 1844382606} + animationType: 3 + targetType: 0 + forcedTargetType: 0 + autoPlay: 0 + useTargetAsV3: 0 + endValueFloat: 0 + endValueV3: {x: 0, y: 180, z: 0} + endValueV2: {x: 0, y: 0} + endValueColor: {r: 1, g: 1, b: 1, a: 1} + endValueString: + endValueRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 0 + height: 0 + endValueTransform: {fileID: 0} + optionalBool0: 0 + optionalFloat0: 0 + optionalInt0: 0 + optionalRotationMode: 0 + optionalScrambleMode: 0 + optionalString: +--- !u!114 &1844382609 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1844382605} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4d0390bd8b8ffd640b34fe25065ff1df, type: 3} + m_Name: + m_EditorClassIdentifier: + updateType: 0 + isSpeedBased: 0 + hasOnStart: 0 + hasOnPlay: 0 + hasOnUpdate: 0 + hasOnStepComplete: 0 + hasOnComplete: 0 + hasOnTweenCreated: 0 + hasOnRewind: 0 + onStart: + m_PersistentCalls: + m_Calls: [] + onPlay: + m_PersistentCalls: + m_Calls: [] + onUpdate: + m_PersistentCalls: + m_Calls: [] + onStepComplete: + m_PersistentCalls: + m_Calls: [] + onComplete: + m_PersistentCalls: + m_Calls: [] + onTweenCreated: + m_PersistentCalls: + m_Calls: [] + onRewind: + m_PersistentCalls: + m_Calls: [] + targetIsSelf: 1 + targetGO: {fileID: 0} + tweenTargetIsTargetGO: 1 + delay: 0 + duration: 1 + easeType: 6 + easeCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + loopType: 0 + loops: 1 + id: move + isRelative: 1 + isFrom: 0 + isIndependentUpdate: 0 + autoKill: 0 + isActive: 1 + isValid: 1 + target: {fileID: 1844382606} + animationType: 1 + targetType: 0 + forcedTargetType: 0 + autoPlay: 0 + useTargetAsV3: 0 + endValueFloat: 0 + endValueV3: {x: 0, y: 1, z: 0} + endValueV2: {x: 0, y: 0} + endValueColor: {r: 1, g: 1, b: 1, a: 1} + endValueString: + endValueRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 0 + height: 0 + endValueTransform: {fileID: 0} + optionalBool0: 0 + optionalFloat0: 0 + optionalInt0: 0 + optionalRotationMode: 0 + optionalScrambleMode: 0 + optionalString: +--- !u!114 &1844382610 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1844382605} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4d0390bd8b8ffd640b34fe25065ff1df, type: 3} + m_Name: + m_EditorClassIdentifier: + updateType: 0 + isSpeedBased: 0 + hasOnStart: 0 + hasOnPlay: 0 + hasOnUpdate: 0 + hasOnStepComplete: 0 + hasOnComplete: 0 + hasOnTweenCreated: 0 + hasOnRewind: 0 + onStart: + m_PersistentCalls: + m_Calls: [] + onPlay: + m_PersistentCalls: + m_Calls: [] + onUpdate: + m_PersistentCalls: + m_Calls: [] + onStepComplete: + m_PersistentCalls: + m_Calls: [] + onComplete: + m_PersistentCalls: + m_Calls: [] + onTweenCreated: + m_PersistentCalls: + m_Calls: [] + onRewind: + m_PersistentCalls: + m_Calls: [] + targetIsSelf: 1 + targetGO: {fileID: 0} + tweenTargetIsTargetGO: 1 + delay: 0 + duration: 1 + easeType: 6 + easeCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + loopType: 0 + loops: 1 + id: toRed + isRelative: 0 + isFrom: 0 + isIndependentUpdate: 0 + autoKill: 0 + isActive: 1 + isValid: 1 + target: {fileID: 1844382611} + animationType: 6 + targetType: 0 + forcedTargetType: 0 + autoPlay: 0 + useTargetAsV3: 0 + endValueFloat: 0 + endValueV3: {x: 0, y: 0, z: 0} + endValueV2: {x: 0, y: 0} + endValueColor: {r: 1, g: 0, b: 0, a: 1} + endValueString: + endValueRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 0 + height: 0 + endValueTransform: {fileID: 0} + optionalBool0: 0 + optionalFloat0: 0 + optionalInt0: 0 + optionalRotationMode: 0 + optionalScrambleMode: 0 + optionalString: +--- !u!23 &1844382611 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1844382605} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 0 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 10302, guid: 0000000000000000f000000000000000, type: 0} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &1844382612 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1844382605} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!1 &1997177218 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1997177219} + m_Layer: 5 + m_Name: Buttons - RestartById + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1997177219 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1997177218} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 1812319721} + - {fileID: 899835911} + - {fileID: 45542690} + - {fileID: 502741618} + m_Father: {fileID: 1260203941} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: -110} + m_SizeDelta: {x: 0, y: -200} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!1660057539 &9223372036854775807 +SceneRoots: + m_ObjectHideFlags: 0 + m_Roots: + - {fileID: 848136772} + - {fileID: 1242857380} + - {fileID: 118309271} + - {fileID: 1844382606} + - {fileID: 76224668} + - {fileID: 1260203941} + - {fileID: 1053889442} diff --git a/d2/Assets/Demigiant/DOTweenPro Examples/DOTweenAnimation_Advanced.unity.meta b/d2/Assets/Demigiant/DOTweenPro Examples/DOTweenAnimation_Advanced.unity.meta new file mode 100644 index 00000000..88026a4b --- /dev/null +++ b/d2/Assets/Demigiant/DOTweenPro Examples/DOTweenAnimation_Advanced.unity.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: a5f7a56d339da84449899ecf95fbe33d +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DOTweenPro Examples/DOTweenAnimation_AdvancedSettings.lighting b/d2/Assets/Demigiant/DOTweenPro Examples/DOTweenAnimation_AdvancedSettings.lighting new file mode 100644 index 00000000..eea44e7f --- /dev/null +++ b/d2/Assets/Demigiant/DOTweenPro Examples/DOTweenAnimation_AdvancedSettings.lighting @@ -0,0 +1,66 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!850595691 &4890085278179872738 +LightingSettings: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: DOTweenAnimation_AdvancedSettings + serializedVersion: 6 + m_GIWorkflowMode: 1 + m_EnableBakedLightmaps: 1 + m_EnableRealtimeLightmaps: 0 + m_RealtimeEnvironmentLighting: 1 + m_BounceScale: 1 + m_AlbedoBoost: 1 + m_IndirectOutputScale: 1 + m_UsingShadowmask: 0 + m_BakeBackend: 0 + m_LightmapMaxSize: 1024 + m_BakeResolution: 50 + m_Padding: 2 + m_LightmapCompression: 0 + m_AO: 1 + m_AOMaxDistance: 1 + m_CompAOExponent: 1 + m_CompAOExponentDirect: 0 + m_ExtractAO: 0 + m_MixedBakeMode: 1 + m_LightmapsBakeMode: 1 + m_FilterMode: 1 + m_LightmapParameters: {fileID: 15204, guid: 0000000000000000f000000000000000, type: 0} + m_ExportTrainingData: 0 + m_TrainingDataDestination: TrainingData + m_RealtimeResolution: 1 + m_ForceWhiteAlbedo: 0 + m_ForceUpdates: 0 + m_FinalGather: 0 + m_FinalGatherRayCount: 256 + m_FinalGatherFiltering: 1 + m_PVRCulling: 1 + m_PVRSampling: 1 + m_PVRDirectSampleCount: 32 + m_PVRSampleCount: 512 + m_PVREnvironmentSampleCount: 512 + m_PVREnvironmentReferencePointCount: 2048 + m_LightProbeSampleCountMultiplier: 4 + m_PVRBounces: 2 + m_PVRMinBounces: 2 + m_PVREnvironmentImportanceSampling: 0 + m_PVRFilteringMode: 0 + m_PVRDenoiserTypeDirect: 0 + m_PVRDenoiserTypeIndirect: 0 + m_PVRDenoiserTypeAO: 0 + m_PVRFilterTypeDirect: 0 + m_PVRFilterTypeIndirect: 0 + m_PVRFilterTypeAO: 0 + m_PVRFilteringGaussRadiusDirect: 1 + m_PVRFilteringGaussRadiusIndirect: 5 + m_PVRFilteringGaussRadiusAO: 2 + m_PVRFilteringAtrousPositionSigmaDirect: 0.5 + m_PVRFilteringAtrousPositionSigmaIndirect: 2 + m_PVRFilteringAtrousPositionSigmaAO: 1 + m_PVRTiledBaking: 0 + m_NumRaysToShootPerTexel: -1 + m_RespectSceneVisibilityWhenBakingGI: 0 diff --git a/d2/Assets/Demigiant/DOTweenPro Examples/DOTweenAnimation_AdvancedSettings.lighting.meta b/d2/Assets/Demigiant/DOTweenPro Examples/DOTweenAnimation_AdvancedSettings.lighting.meta new file mode 100644 index 00000000..efaa318f --- /dev/null +++ b/d2/Assets/Demigiant/DOTweenPro Examples/DOTweenAnimation_AdvancedSettings.lighting.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 6a2966a1888e1cb408e97fc7c05deb79 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 4890085278179872738 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DOTweenPro Examples/DOTweenAnimation_Basics.unity b/d2/Assets/Demigiant/DOTweenPro Examples/DOTweenAnimation_Basics.unity new file mode 100644 index 00000000..5d333fac --- /dev/null +++ b/d2/Assets/Demigiant/DOTweenPro Examples/DOTweenAnimation_Basics.unity @@ -0,0 +1,1802 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!29 &1 +OcclusionCullingSettings: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_OcclusionBakeSettings: + smallestOccluder: 5 + smallestHole: 0.25 + backfaceThreshold: 100 + m_SceneGUID: 00000000000000000000000000000000 + m_OcclusionCullingData: {fileID: 0} +--- !u!104 &2 +RenderSettings: + m_ObjectHideFlags: 0 + serializedVersion: 9 + m_Fog: 0 + m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} + m_FogMode: 3 + m_FogDensity: 0.01 + m_LinearFogStart: 0 + m_LinearFogEnd: 300 + m_AmbientSkyColor: {r: 0.2, g: 0.2, b: 0.2, a: 1} + m_AmbientEquatorColor: {r: 0.2, g: 0.2, b: 0.2, a: 1} + m_AmbientGroundColor: {r: 0.2, g: 0.2, b: 0.2, a: 1} + m_AmbientIntensity: 1 + m_AmbientMode: 3 + m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} + m_SkyboxMaterial: {fileID: 0} + m_HaloStrength: 0.5 + m_FlareStrength: 1 + m_FlareFadeSpeed: 3 + m_HaloTexture: {fileID: 0} + m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} + m_DefaultReflectionMode: 0 + m_DefaultReflectionResolution: 128 + m_ReflectionBounces: 1 + m_ReflectionIntensity: 1 + m_CustomReflection: {fileID: 0} + m_Sun: {fileID: 0} + m_UseRadianceAmbientProbe: 0 +--- !u!157 &4 +LightmapSettings: + m_ObjectHideFlags: 0 + serializedVersion: 12 + m_GIWorkflowMode: 1 + m_GISettings: + serializedVersion: 2 + m_BounceScale: 1 + m_IndirectOutputScale: 1 + m_AlbedoBoost: 1 + m_EnvironmentLightingMode: 0 + m_EnableBakedLightmaps: 1 + m_EnableRealtimeLightmaps: 0 + m_LightmapEditorSettings: + serializedVersion: 12 + m_Resolution: 1 + m_BakeResolution: 50 + m_AtlasSize: 1024 + m_AO: 1 + m_AOMaxDistance: 1 + m_CompAOExponent: 1 + m_CompAOExponentDirect: 0 + m_ExtractAmbientOcclusion: 0 + m_Padding: 2 + m_LightmapParameters: {fileID: 0} + m_LightmapsBakeMode: 1 + m_TextureCompression: 0 + m_FinalGather: 0 + m_FinalGatherFiltering: 1 + m_FinalGatherRayCount: 256 + m_ReflectionCompression: 2 + m_MixedBakeMode: 1 + m_BakeBackend: 0 + m_PVRSampling: 1 + m_PVRDirectSampleCount: 32 + m_PVRSampleCount: 512 + m_PVRBounces: 2 + m_PVREnvironmentSampleCount: 512 + m_PVREnvironmentReferencePointCount: 2048 + m_PVRFilteringMode: 0 + m_PVRDenoiserTypeDirect: 0 + m_PVRDenoiserTypeIndirect: 0 + m_PVRDenoiserTypeAO: 0 + m_PVRFilterTypeDirect: 0 + m_PVRFilterTypeIndirect: 0 + m_PVRFilterTypeAO: 0 + m_PVREnvironmentMIS: 0 + m_PVRCulling: 1 + m_PVRFilteringGaussRadiusDirect: 1 + m_PVRFilteringGaussRadiusIndirect: 5 + m_PVRFilteringGaussRadiusAO: 2 + m_PVRFilteringAtrousPositionSigmaDirect: 0.5 + m_PVRFilteringAtrousPositionSigmaIndirect: 2 + m_PVRFilteringAtrousPositionSigmaAO: 1 + m_ExportTrainingData: 0 + m_TrainingDataDestination: TrainingData + m_LightProbeSampleCountMultiplier: 4 + m_LightingDataAsset: {fileID: 0} + m_LightingSettings: {fileID: 4890085278179872738, guid: 5e5119a542098e544979af03058996c8, type: 2} +--- !u!196 &5 +NavMeshSettings: + serializedVersion: 2 + m_ObjectHideFlags: 0 + m_BuildSettings: + serializedVersion: 3 + agentTypeID: 0 + agentRadius: 0.5 + agentHeight: 2 + agentSlope: 45 + agentClimb: 0.4 + ledgeDropHeight: 0 + maxJumpAcrossDistance: 0 + minRegionArea: 2 + manualCellSize: 0 + cellSize: 0.16666666 + manualTileSize: 0 + tileSize: 256 + buildHeightMesh: 0 + maxJobWorkers: 0 + preserveTilesOutsideBounds: 0 + debug: + m_Flags: 0 + m_NavMeshData: {fileID: 0} +--- !u!1 &118309267 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 118309271} + - component: {fileID: 118309270} + - component: {fileID: 118309268} + - component: {fileID: 118309273} + - component: {fileID: 118309272} + m_Layer: 0 + m_Name: Cube (w animation) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!23 &118309268 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 118309267} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 0 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 10302, guid: 0000000000000000f000000000000000, type: 0} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &118309270 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 118309267} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!4 &118309271 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 118309267} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -4, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &118309272 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 118309267} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4d0390bd8b8ffd640b34fe25065ff1df, type: 3} + m_Name: + m_EditorClassIdentifier: + updateType: 0 + isSpeedBased: 0 + hasOnStart: 0 + hasOnPlay: 0 + hasOnUpdate: 0 + hasOnStepComplete: 0 + hasOnComplete: 0 + hasOnTweenCreated: 0 + hasOnRewind: 0 + onStart: + m_PersistentCalls: + m_Calls: [] + onPlay: + m_PersistentCalls: + m_Calls: [] + onUpdate: + m_PersistentCalls: + m_Calls: [] + onStepComplete: + m_PersistentCalls: + m_Calls: [] + onComplete: + m_PersistentCalls: + m_Calls: [] + onTweenCreated: + m_PersistentCalls: + m_Calls: [] + onRewind: + m_PersistentCalls: + m_Calls: [] + targetIsSelf: 1 + targetGO: {fileID: 0} + tweenTargetIsTargetGO: 1 + delay: 0 + duration: 2 + easeType: 6 + easeCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + loopType: 1 + loops: -1 + id: + isRelative: 0 + isFrom: 0 + isIndependentUpdate: 0 + autoKill: 1 + isActive: 1 + isValid: 1 + target: {fileID: 118309271} + animationType: 3 + targetType: 11 + forcedTargetType: 0 + autoPlay: 0 + useTargetAsV3: 0 + endValueFloat: 0 + endValueV3: {x: 0, y: 180, z: 0} + endValueV2: {x: 0, y: 0} + endValueColor: {r: 1, g: 1, b: 1, a: 1} + endValueString: + endValueRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 0 + height: 0 + endValueTransform: {fileID: 0} + optionalBool0: 0 + optionalFloat0: 0 + optionalInt0: 0 + optionalRotationMode: 0 + optionalScrambleMode: 0 + optionalString: +--- !u!114 &118309273 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 118309267} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4d0390bd8b8ffd640b34fe25065ff1df, type: 3} + m_Name: + m_EditorClassIdentifier: + updateType: 0 + isSpeedBased: 0 + hasOnStart: 0 + hasOnPlay: 0 + hasOnUpdate: 0 + hasOnStepComplete: 0 + hasOnComplete: 0 + hasOnTweenCreated: 0 + hasOnRewind: 0 + onStart: + m_PersistentCalls: + m_Calls: [] + onPlay: + m_PersistentCalls: + m_Calls: [] + onUpdate: + m_PersistentCalls: + m_Calls: [] + onStepComplete: + m_PersistentCalls: + m_Calls: [] + onComplete: + m_PersistentCalls: + m_Calls: [] + onTweenCreated: + m_PersistentCalls: + m_Calls: [] + onRewind: + m_PersistentCalls: + m_Calls: [] + targetIsSelf: 1 + targetGO: {fileID: 0} + tweenTargetIsTargetGO: 1 + delay: 0 + duration: 2 + easeType: 6 + easeCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + loopType: 1 + loops: -1 + id: + isRelative: 1 + isFrom: 0 + isIndependentUpdate: 0 + autoKill: 1 + isActive: 1 + isValid: 1 + target: {fileID: 118309271} + animationType: 1 + targetType: 11 + forcedTargetType: 0 + autoPlay: 0 + useTargetAsV3: 0 + endValueFloat: 0 + endValueV3: {x: 0, y: 4, z: 0} + endValueV2: {x: 0, y: 0} + endValueColor: {r: 1, g: 1, b: 1, a: 1} + endValueString: + endValueRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 0 + height: 0 + endValueTransform: {fileID: 0} + optionalBool0: 0 + optionalFloat0: 0 + optionalInt0: 0 + optionalRotationMode: 0 + optionalScrambleMode: 0 + optionalString: +--- !u!1 &848136767 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 848136772} + - component: {fileID: 848136771} + - component: {fileID: 848136769} + - component: {fileID: 848136768} + m_Layer: 0 + m_Name: Main Camera + m_TagString: MainCamera + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!81 &848136768 +AudioListener: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 848136767} + m_Enabled: 1 +--- !u!124 &848136769 +Behaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 848136767} + m_Enabled: 1 +--- !u!20 &848136771 +Camera: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 848136767} + m_Enabled: 1 + serializedVersion: 2 + m_ClearFlags: 1 + m_BackGroundColor: {r: 0.16176468, g: 0.16176468, b: 0.16176468, a: 0.019607844} + m_projectionMatrixMode: 1 + m_GateFitMode: 2 + m_FOVAxisMode: 0 + m_Iso: 200 + m_ShutterSpeed: 0.005 + m_Aperture: 16 + m_FocusDistance: 10 + m_FocalLength: 50 + m_BladeCount: 5 + m_Curvature: {x: 2, y: 11} + m_BarrelClipping: 0.25 + m_Anamorphism: 0 + m_SensorSize: {x: 36, y: 24} + m_LensShift: {x: 0, y: 0} + m_NormalizedViewPortRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 1 + height: 1 + near clip plane: 0.3 + far clip plane: 1000 + field of view: 60 + orthographic: 0 + orthographic size: 5 + m_Depth: -1 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RenderingPath: -1 + m_TargetTexture: {fileID: 0} + m_TargetDisplay: 0 + m_TargetEye: 3 + m_HDR: 0 + m_AllowMSAA: 1 + m_AllowDynamicResolution: 0 + m_ForceIntoRT: 0 + m_OcclusionCulling: 1 + m_StereoConvergence: 10 + m_StereoSeparation: 0.022 +--- !u!4 &848136772 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 848136767} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: -10} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &970591913 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 970591914} + - component: {fileID: 970591916} + - component: {fileID: 970591915} + m_Layer: 5 + m_Name: Text + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &970591914 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 970591913} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1356883401} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &970591915 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 970591913} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 0.196, g: 0.196, b: 0.196, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_FontData: + m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} + m_FontSize: 14 + m_FontStyle: 0 + m_BestFit: 0 + m_MinSize: 10 + m_MaxSize: 40 + m_Alignment: 4 + m_AlignByGeometry: 0 + m_RichText: 1 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 0 + m_LineSpacing: 1 + m_Text: PLAY +--- !u!222 &970591916 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 970591913} + m_CullTransparentMesh: 1 +--- !u!1 &990238542 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 990238543} + - component: {fileID: 990238545} + - component: {fileID: 990238544} + - component: {fileID: 990238546} + m_Layer: 5 + m_Name: Text (w text animation) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &990238543 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 990238542} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1260203941} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 0, y: 230} + m_SizeDelta: {x: 400, y: 30} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &990238544 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 990238542} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_FontData: + m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} + m_FontSize: 16 + m_FontStyle: 0 + m_BestFit: 0 + m_MinSize: 10 + m_MaxSize: 40 + m_Alignment: 1 + m_AlignByGeometry: 0 + m_RichText: 1 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 1 + m_LineSpacing: 1 + m_Text: 'Original text that will be + tweened + +' +--- !u!222 &990238545 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 990238542} + m_CullTransparentMesh: 1 +--- !u!114 &990238546 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 990238542} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4d0390bd8b8ffd640b34fe25065ff1df, type: 3} + m_Name: + m_EditorClassIdentifier: + updateType: 0 + isSpeedBased: 0 + hasOnStart: 0 + hasOnPlay: 0 + hasOnUpdate: 0 + hasOnStepComplete: 0 + hasOnComplete: 0 + hasOnTweenCreated: 0 + hasOnRewind: 0 + onStart: + m_PersistentCalls: + m_Calls: [] + onPlay: + m_PersistentCalls: + m_Calls: [] + onUpdate: + m_PersistentCalls: + m_Calls: [] + onStepComplete: + m_PersistentCalls: + m_Calls: [] + onComplete: + m_PersistentCalls: + m_Calls: [] + onTweenCreated: + m_PersistentCalls: + m_Calls: [] + onRewind: + m_PersistentCalls: + m_Calls: [] + targetIsSelf: 1 + targetGO: {fileID: 0} + tweenTargetIsTargetGO: 1 + delay: 0 + duration: 3 + easeType: 1 + easeCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + loopType: 1 + loops: 0 + id: + isRelative: 0 + isFrom: 0 + isIndependentUpdate: 0 + autoKill: 1 + isActive: 1 + isValid: 1 + target: {fileID: 990238544} + animationType: 8 + targetType: 0 + forcedTargetType: 0 + autoPlay: 0 + useTargetAsV3: 0 + endValueFloat: 0 + endValueV3: {x: 0, y: 0, z: 0} + endValueV2: {x: 0, y: 0} + endValueColor: {r: 1, g: 1, b: 1, a: 1} + endValueString: This is the new tweened text + (scandalous)! + endValueRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 0 + height: 0 + endValueTransform: {fileID: 0} + optionalBool0: 1 + optionalFloat0: 0 + optionalInt0: 0 + optionalRotationMode: 0 + optionalScrambleMode: 0 + optionalString: +--- !u!1 &1053889438 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1053889442} + - component: {fileID: 1053889441} + - component: {fileID: 1053889440} + - component: {fileID: 1053889439} + m_Layer: 0 + m_Name: EventSystem + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &1053889439 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1053889438} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 2d49b7c1bcd2e07499844da127be038d, type: 3} + m_Name: + m_EditorClassIdentifier: + m_SendPointerHoverToParent: 1 + m_ForceModuleActive: 0 +--- !u!114 &1053889440 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1053889438} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4f231c4fb786f3946a6b90b886c48677, type: 3} + m_Name: + m_EditorClassIdentifier: + m_SendPointerHoverToParent: 1 + m_HorizontalAxis: Horizontal + m_VerticalAxis: Vertical + m_SubmitButton: Submit + m_CancelButton: Cancel + m_InputActionsPerSecond: 10 + m_RepeatDelay: 0.5 + m_ForceModuleActive: 0 +--- !u!114 &1053889441 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1053889438} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 76c392e42b5098c458856cdf6ecaaaa1, type: 3} + m_Name: + m_EditorClassIdentifier: + m_FirstSelected: {fileID: 0} + m_sendNavigationEvents: 1 + m_DragThreshold: 5 +--- !u!4 &1053889442 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1053889438} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1127963255 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1127963256} + - component: {fileID: 1127963258} + - component: {fileID: 1127963257} + m_Layer: 5 + m_Name: Info + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1127963256 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1127963255} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1260203941} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 0, y: -186} + m_SizeDelta: {x: 300, y: 30} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &1127963257 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1127963255} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_FontData: + m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} + m_FontSize: 14 + m_FontStyle: 0 + m_BestFit: 0 + m_MinSize: 10 + m_MaxSize: 40 + m_Alignment: 1 + m_AlignByGeometry: 0 + m_RichText: 1 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 1 + m_LineSpacing: 1 + m_Text: The PLAY button starts the logo fade out. When the fade out is complete, + it will start all the other animations (thanks to the Events created in the logo + DOTweenAnimation Component) +--- !u!222 &1127963258 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1127963255} + m_CullTransparentMesh: 1 +--- !u!1 &1242857378 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1242857380} + - component: {fileID: 1242857379} + m_Layer: 0 + m_Name: Directional light + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!108 &1242857379 +Light: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1242857378} + m_Enabled: 1 + serializedVersion: 10 + m_Type: 1 + m_Shape: 0 + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_Intensity: 1 + m_Range: 10 + m_SpotAngle: 30 + m_InnerSpotAngle: 21.80208 + m_CookieSize: 10 + m_Shadows: + m_Type: 0 + m_Resolution: -1 + m_CustomResolution: -1 + m_Strength: 1 + m_Bias: 0.05 + m_NormalBias: 0.4 + m_NearPlane: 0.2 + m_CullingMatrixOverride: + e00: 1 + e01: 0 + e02: 0 + e03: 0 + e10: 0 + e11: 1 + e12: 0 + e13: 0 + e20: 0 + e21: 0 + e22: 1 + e23: 0 + e30: 0 + e31: 0 + e32: 0 + e33: 1 + m_UseCullingMatrixOverride: 0 + m_Cookie: {fileID: 0} + m_DrawHalo: 0 + m_Flare: {fileID: 0} + m_RenderMode: 0 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RenderingLayerMask: 1 + m_Lightmapping: 1 + m_LightShadowCasterMode: 0 + m_AreaSize: {x: 1, y: 1} + m_BounceIntensity: 1 + m_ColorTemperature: 6570 + m_UseColorTemperature: 0 + m_BoundingSphereOverride: {x: 0, y: 0, z: 0, w: 0} + m_UseBoundingSphereOverride: 0 + m_UseViewFrustumForShadowCasterCull: 1 + m_ShadowRadius: 0 + m_ShadowAngle: 0 +--- !u!4 &1242857380 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1242857378} + serializedVersion: 2 + m_LocalRotation: {x: 0.40821794, y: -0.23456973, z: 0.10938166, w: 0.8754261} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 0.99999994, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1260203940 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1260203941} + - component: {fileID: 1260203944} + - component: {fileID: 1260203943} + - component: {fileID: 1260203942} + m_Layer: 5 + m_Name: Canvas (contains animated objects) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1260203941 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1260203940} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 0, y: 0, z: 0} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 1636198022} + - {fileID: 990238543} + - {fileID: 1323952358} + - {fileID: 1356883401} + - {fileID: 1127963256} + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 0, y: 0} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0, y: 0} +--- !u!114 &1260203942 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1260203940} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreReversedGraphics: 1 + m_BlockingObjects: 0 + m_BlockingMask: + serializedVersion: 2 + m_Bits: 4294967295 +--- !u!114 &1260203943 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1260203940} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UiScaleMode: 0 + m_ReferencePixelsPerUnit: 100 + m_ScaleFactor: 1 + m_ReferenceResolution: {x: 800, y: 600} + m_ScreenMatchMode: 0 + m_MatchWidthOrHeight: 0 + m_PhysicalUnit: 3 + m_FallbackScreenDPI: 96 + m_DefaultSpriteDPI: 96 + m_DynamicPixelsPerUnit: 1 + m_PresetInfoIsWorld: 0 +--- !u!223 &1260203944 +Canvas: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1260203940} + m_Enabled: 1 + serializedVersion: 3 + m_RenderMode: 0 + m_Camera: {fileID: 0} + m_PlaneDistance: 100 + m_PixelPerfect: 1 + m_ReceivesEvents: 1 + m_OverrideSorting: 0 + m_OverridePixelPerfect: 0 + m_SortingBucketNormalizedSize: 0 + m_VertexColorAlwaysGammaSpace: 0 + m_AdditionalShaderChannelsFlag: 25 + m_UpdateRectTransformForStandalone: 0 + m_SortingLayerID: 0 + m_SortingOrder: 0 + m_TargetDisplay: 0 +--- !u!1 &1323952357 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1323952358} + - component: {fileID: 1323952362} + - component: {fileID: 1323952361} + - component: {fileID: 1323952360} + - component: {fileID: 1323952359} + m_Layer: 5 + m_Name: Text (w color animation) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1323952358 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1323952357} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1260203941} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 0, y: 254} + m_SizeDelta: {x: 400, y: 30} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &1323952359 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1323952357} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4d0390bd8b8ffd640b34fe25065ff1df, type: 3} + m_Name: + m_EditorClassIdentifier: + updateType: 0 + isSpeedBased: 0 + hasOnStart: 0 + hasOnPlay: 0 + hasOnUpdate: 0 + hasOnStepComplete: 0 + hasOnComplete: 0 + hasOnTweenCreated: 0 + hasOnRewind: 0 + onStart: + m_PersistentCalls: + m_Calls: [] + onPlay: + m_PersistentCalls: + m_Calls: [] + onUpdate: + m_PersistentCalls: + m_Calls: [] + onStepComplete: + m_PersistentCalls: + m_Calls: [] + onComplete: + m_PersistentCalls: + m_Calls: [] + onTweenCreated: + m_PersistentCalls: + m_Calls: [] + onRewind: + m_PersistentCalls: + m_Calls: [] + targetIsSelf: 1 + targetGO: {fileID: 0} + tweenTargetIsTargetGO: 1 + delay: 0 + duration: 3 + easeType: 1 + easeCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + loopType: 1 + loops: -1 + id: + isRelative: 0 + isFrom: 0 + isIndependentUpdate: 0 + autoKill: 1 + isActive: 1 + isValid: 1 + target: {fileID: 1323952361} + animationType: 6 + targetType: 0 + forcedTargetType: 0 + autoPlay: 0 + useTargetAsV3: 0 + endValueFloat: 0 + endValueV3: {x: 0, y: 0, z: 0} + endValueV2: {x: 0, y: 0} + endValueColor: {r: 1, g: 0, b: 0.8068962, a: 1} + endValueString: + endValueRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 0 + height: 0 + endValueTransform: {fileID: 0} + optionalBool0: 0 + optionalFloat0: 0 + optionalInt0: 0 + optionalRotationMode: 0 + optionalScrambleMode: 0 + optionalString: +--- !u!114 &1323952360 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1323952357} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4d0390bd8b8ffd640b34fe25065ff1df, type: 3} + m_Name: + m_EditorClassIdentifier: + updateType: 0 + isSpeedBased: 0 + hasOnStart: 0 + hasOnPlay: 0 + hasOnUpdate: 0 + hasOnStepComplete: 0 + hasOnComplete: 0 + hasOnTweenCreated: 0 + hasOnRewind: 0 + onStart: + m_PersistentCalls: + m_Calls: [] + onPlay: + m_PersistentCalls: + m_Calls: [] + onUpdate: + m_PersistentCalls: + m_Calls: [] + onStepComplete: + m_PersistentCalls: + m_Calls: [] + onComplete: + m_PersistentCalls: + m_Calls: [] + onTweenCreated: + m_PersistentCalls: + m_Calls: [] + onRewind: + m_PersistentCalls: + m_Calls: [] + targetIsSelf: 1 + targetGO: {fileID: 0} + tweenTargetIsTargetGO: 1 + delay: 0 + duration: 3 + easeType: 1 + easeCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + loopType: 1 + loops: 0 + id: + isRelative: 1 + isFrom: 0 + isIndependentUpdate: 0 + autoKill: 1 + isActive: 1 + isValid: 1 + target: {fileID: 1323952361} + animationType: 8 + targetType: 0 + forcedTargetType: 0 + autoPlay: 0 + useTargetAsV3: 0 + endValueFloat: 0 + endValueV3: {x: 0, y: 0, z: 0} + endValueV2: {x: 0, y: 0} + endValueColor: {r: 1, g: 1, b: 1, a: 1} + endValueString: ' See? What did I tell you?' + endValueRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 0 + height: 0 + endValueTransform: {fileID: 0} + optionalBool0: 1 + optionalFloat0: 0 + optionalInt0: 0 + optionalRotationMode: 0 + optionalScrambleMode: 0 + optionalString: +--- !u!114 &1323952361 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1323952357} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_FontData: + m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} + m_FontSize: 16 + m_FontStyle: 0 + m_BestFit: 0 + m_MinSize: 10 + m_MaxSize: 40 + m_Alignment: 1 + m_AlignByGeometry: 0 + m_RichText: 1 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 1 + m_LineSpacing: 1 + m_Text: This text will change color... +--- !u!222 &1323952362 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1323952357} + m_CullTransparentMesh: 1 +--- !u!1 &1356883400 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1356883401} + - component: {fileID: 1356883404} + - component: {fileID: 1356883403} + - component: {fileID: 1356883402} + m_Layer: 5 + m_Name: Button + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1356883401 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1356883400} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 970591914} + m_Father: {fileID: 1260203941} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 0, y: -147} + m_SizeDelta: {x: 160, y: 30} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &1356883402 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1356883400} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_WrapAround: 0 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 1 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} + m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} + m_ColorMultiplier: 1 + m_FadeDuration: 0.1 + m_SpriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_SelectedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_SelectedTrigger: Highlighted + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 1356883403} + m_OnClick: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 1636198019} + m_TargetAssemblyTypeName: + m_MethodName: DOPlay + m_Mode: 1 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: + m_BoolArgument: 0 + m_CallState: 2 +--- !u!114 &1356883403 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1356883400} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 1 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!222 &1356883404 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1356883400} + m_CullTransparentMesh: 1 +--- !u!1 &1636198018 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1636198022} + - component: {fileID: 1636198021} + - component: {fileID: 1636198020} + - component: {fileID: 1636198019} + m_Layer: 5 + m_Name: Logo (starts animations w events) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &1636198019 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1636198018} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4d0390bd8b8ffd640b34fe25065ff1df, type: 3} + m_Name: + m_EditorClassIdentifier: + updateType: 0 + isSpeedBased: 0 + hasOnStart: 0 + hasOnPlay: 0 + hasOnUpdate: 0 + hasOnStepComplete: 0 + hasOnComplete: 1 + hasOnTweenCreated: 0 + hasOnRewind: 0 + onStart: + m_PersistentCalls: + m_Calls: [] + onPlay: + m_PersistentCalls: + m_Calls: [] + onUpdate: + m_PersistentCalls: + m_Calls: [] + onStepComplete: + m_PersistentCalls: + m_Calls: [] + onComplete: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 990238546} + m_TargetAssemblyTypeName: + m_MethodName: DOPlay + m_Mode: 1 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: + m_BoolArgument: 0 + m_CallState: 2 + - m_Target: {fileID: 118309273} + m_TargetAssemblyTypeName: + m_MethodName: DOPlay + m_Mode: 1 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: + m_BoolArgument: 0 + m_CallState: 2 + - m_Target: {fileID: 1323952360} + m_TargetAssemblyTypeName: + m_MethodName: DOPlay + m_Mode: 1 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: + m_BoolArgument: 0 + m_CallState: 2 + onTweenCreated: + m_PersistentCalls: + m_Calls: [] + onRewind: + m_PersistentCalls: + m_Calls: [] + targetIsSelf: 1 + targetGO: {fileID: 0} + tweenTargetIsTargetGO: 1 + delay: 0 + duration: 1 + easeType: 5 + easeCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + loopType: 0 + loops: 1 + id: + isRelative: 0 + isFrom: 0 + isIndependentUpdate: 0 + autoKill: 1 + isActive: 1 + isValid: 1 + target: {fileID: 1636198020} + animationType: 7 + targetType: 0 + forcedTargetType: 0 + autoPlay: 0 + useTargetAsV3: 0 + endValueFloat: 0 + endValueV3: {x: 0, y: 0, z: 0} + endValueV2: {x: 0, y: 0} + endValueColor: {r: 1, g: 1, b: 1, a: 1} + endValueString: + endValueRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 0 + height: 0 + endValueTransform: {fileID: 0} + optionalBool0: 0 + optionalFloat0: 0 + optionalInt0: 0 + optionalRotationMode: 0 + optionalScrambleMode: 0 + optionalString: +--- !u!114 &1636198020 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1636198018} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 21300000, guid: 44a054df1702e39458b7072b08d0f212, type: 3} + m_Type: 0 + m_PreserveAspect: 1 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!222 &1636198021 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1636198018} + m_CullTransparentMesh: 1 +--- !u!224 &1636198022 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1636198018} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1260203941} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 0, y: 45} + m_SizeDelta: {x: 241, y: 320} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!1660057539 &9223372036854775807 +SceneRoots: + m_ObjectHideFlags: 0 + m_Roots: + - {fileID: 848136772} + - {fileID: 1242857380} + - {fileID: 118309271} + - {fileID: 1260203941} + - {fileID: 1053889442} diff --git a/d2/Assets/Demigiant/DOTweenPro Examples/DOTweenAnimation_Basics.unity.meta b/d2/Assets/Demigiant/DOTweenPro Examples/DOTweenAnimation_Basics.unity.meta new file mode 100644 index 00000000..5ebfe594 --- /dev/null +++ b/d2/Assets/Demigiant/DOTweenPro Examples/DOTweenAnimation_Basics.unity.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 6a2ad353325ffe64983c28d69a8738f5 +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DOTweenPro Examples/DOTweenAnimation_BasicsSettings.lighting b/d2/Assets/Demigiant/DOTweenPro Examples/DOTweenAnimation_BasicsSettings.lighting new file mode 100644 index 00000000..bb8e22e0 --- /dev/null +++ b/d2/Assets/Demigiant/DOTweenPro Examples/DOTweenAnimation_BasicsSettings.lighting @@ -0,0 +1,66 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!850595691 &4890085278179872738 +LightingSettings: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: DOTweenAnimation_BasicsSettings + serializedVersion: 6 + m_GIWorkflowMode: 1 + m_EnableBakedLightmaps: 1 + m_EnableRealtimeLightmaps: 0 + m_RealtimeEnvironmentLighting: 1 + m_BounceScale: 1 + m_AlbedoBoost: 1 + m_IndirectOutputScale: 1 + m_UsingShadowmask: 0 + m_BakeBackend: 0 + m_LightmapMaxSize: 1024 + m_BakeResolution: 50 + m_Padding: 2 + m_LightmapCompression: 0 + m_AO: 1 + m_AOMaxDistance: 1 + m_CompAOExponent: 1 + m_CompAOExponentDirect: 0 + m_ExtractAO: 0 + m_MixedBakeMode: 1 + m_LightmapsBakeMode: 1 + m_FilterMode: 1 + m_LightmapParameters: {fileID: 15204, guid: 0000000000000000f000000000000000, type: 0} + m_ExportTrainingData: 0 + m_TrainingDataDestination: TrainingData + m_RealtimeResolution: 1 + m_ForceWhiteAlbedo: 0 + m_ForceUpdates: 0 + m_FinalGather: 0 + m_FinalGatherRayCount: 256 + m_FinalGatherFiltering: 1 + m_PVRCulling: 1 + m_PVRSampling: 1 + m_PVRDirectSampleCount: 32 + m_PVRSampleCount: 512 + m_PVREnvironmentSampleCount: 512 + m_PVREnvironmentReferencePointCount: 2048 + m_LightProbeSampleCountMultiplier: 4 + m_PVRBounces: 2 + m_PVRMinBounces: 2 + m_PVREnvironmentImportanceSampling: 0 + m_PVRFilteringMode: 0 + m_PVRDenoiserTypeDirect: 0 + m_PVRDenoiserTypeIndirect: 0 + m_PVRDenoiserTypeAO: 0 + m_PVRFilterTypeDirect: 0 + m_PVRFilterTypeIndirect: 0 + m_PVRFilterTypeAO: 0 + m_PVRFilteringGaussRadiusDirect: 1 + m_PVRFilteringGaussRadiusIndirect: 5 + m_PVRFilteringGaussRadiusAO: 2 + m_PVRFilteringAtrousPositionSigmaDirect: 0.5 + m_PVRFilteringAtrousPositionSigmaIndirect: 2 + m_PVRFilteringAtrousPositionSigmaAO: 1 + m_PVRTiledBaking: 0 + m_NumRaysToShootPerTexel: -1 + m_RespectSceneVisibilityWhenBakingGI: 0 diff --git a/d2/Assets/Demigiant/DOTweenPro Examples/DOTweenAnimation_BasicsSettings.lighting.meta b/d2/Assets/Demigiant/DOTweenPro Examples/DOTweenAnimation_BasicsSettings.lighting.meta new file mode 100644 index 00000000..e85f01f1 --- /dev/null +++ b/d2/Assets/Demigiant/DOTweenPro Examples/DOTweenAnimation_BasicsSettings.lighting.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 5e5119a542098e544979af03058996c8 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 4890085278179872738 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DOTweenPro Examples/DOTweenPath.unity b/d2/Assets/Demigiant/DOTweenPro Examples/DOTweenPath.unity new file mode 100644 index 00000000..a6e98fa0 --- /dev/null +++ b/d2/Assets/Demigiant/DOTweenPro Examples/DOTweenPath.unity @@ -0,0 +1,1611 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!29 &1 +OcclusionCullingSettings: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_OcclusionBakeSettings: + smallestOccluder: 5 + smallestHole: 0.25 + backfaceThreshold: 100 + m_SceneGUID: 00000000000000000000000000000000 + m_OcclusionCullingData: {fileID: 0} +--- !u!104 &2 +RenderSettings: + m_ObjectHideFlags: 0 + serializedVersion: 9 + m_Fog: 0 + m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} + m_FogMode: 3 + m_FogDensity: 0.01 + m_LinearFogStart: 0 + m_LinearFogEnd: 300 + m_AmbientSkyColor: {r: 0.2, g: 0.2, b: 0.2, a: 1} + m_AmbientEquatorColor: {r: 0.2, g: 0.2, b: 0.2, a: 1} + m_AmbientGroundColor: {r: 0.2, g: 0.2, b: 0.2, a: 1} + m_AmbientIntensity: 1 + m_AmbientMode: 3 + m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} + m_SkyboxMaterial: {fileID: 0} + m_HaloStrength: 0.5 + m_FlareStrength: 1 + m_FlareFadeSpeed: 3 + m_HaloTexture: {fileID: 0} + m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} + m_DefaultReflectionMode: 0 + m_DefaultReflectionResolution: 128 + m_ReflectionBounces: 1 + m_ReflectionIntensity: 1 + m_CustomReflection: {fileID: 0} + m_Sun: {fileID: 0} + m_UseRadianceAmbientProbe: 0 +--- !u!157 &4 +LightmapSettings: + m_ObjectHideFlags: 0 + serializedVersion: 12 + m_GIWorkflowMode: 1 + m_GISettings: + serializedVersion: 2 + m_BounceScale: 1 + m_IndirectOutputScale: 1 + m_AlbedoBoost: 1 + m_EnvironmentLightingMode: 0 + m_EnableBakedLightmaps: 1 + m_EnableRealtimeLightmaps: 0 + m_LightmapEditorSettings: + serializedVersion: 12 + m_Resolution: 1 + m_BakeResolution: 50 + m_AtlasSize: 1024 + m_AO: 1 + m_AOMaxDistance: 1 + m_CompAOExponent: 1 + m_CompAOExponentDirect: 0 + m_ExtractAmbientOcclusion: 0 + m_Padding: 2 + m_LightmapParameters: {fileID: 0} + m_LightmapsBakeMode: 1 + m_TextureCompression: 0 + m_FinalGather: 0 + m_FinalGatherFiltering: 1 + m_FinalGatherRayCount: 256 + m_ReflectionCompression: 2 + m_MixedBakeMode: 1 + m_BakeBackend: 0 + m_PVRSampling: 1 + m_PVRDirectSampleCount: 32 + m_PVRSampleCount: 512 + m_PVRBounces: 2 + m_PVREnvironmentSampleCount: 512 + m_PVREnvironmentReferencePointCount: 2048 + m_PVRFilteringMode: 0 + m_PVRDenoiserTypeDirect: 0 + m_PVRDenoiserTypeIndirect: 0 + m_PVRDenoiserTypeAO: 0 + m_PVRFilterTypeDirect: 0 + m_PVRFilterTypeIndirect: 0 + m_PVRFilterTypeAO: 0 + m_PVREnvironmentMIS: 0 + m_PVRCulling: 1 + m_PVRFilteringGaussRadiusDirect: 1 + m_PVRFilteringGaussRadiusIndirect: 5 + m_PVRFilteringGaussRadiusAO: 2 + m_PVRFilteringAtrousPositionSigmaDirect: 0.5 + m_PVRFilteringAtrousPositionSigmaIndirect: 2 + m_PVRFilteringAtrousPositionSigmaAO: 1 + m_ExportTrainingData: 0 + m_TrainingDataDestination: TrainingData + m_LightProbeSampleCountMultiplier: 4 + m_LightingDataAsset: {fileID: 0} + m_LightingSettings: {fileID: 4890085278179872738, guid: 052277ce781dbc941b2615c3c3996f98, type: 2} +--- !u!196 &5 +NavMeshSettings: + serializedVersion: 2 + m_ObjectHideFlags: 0 + m_BuildSettings: + serializedVersion: 3 + agentTypeID: 0 + agentRadius: 0.5 + agentHeight: 2 + agentSlope: 45 + agentClimb: 0.4 + ledgeDropHeight: 0 + maxJumpAcrossDistance: 0 + minRegionArea: 2 + manualCellSize: 0 + cellSize: 0.16666666 + manualTileSize: 0 + tileSize: 256 + buildHeightMesh: 0 + maxJobWorkers: 0 + preserveTilesOutsideBounds: 0 + debug: + m_Flags: 0 + m_NavMeshData: {fileID: 0} +--- !u!1 &118309267 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 118309271} + - component: {fileID: 118309270} + - component: {fileID: 118309268} + - component: {fileID: 118309269} + m_Layer: 0 + m_Name: Cube A (w path) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!23 &118309268 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 118309267} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 0 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 10302, guid: 0000000000000000f000000000000000, type: 0} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!114 &118309269 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 118309267} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -333801856, guid: aa0b1eebb5db27a419fa4564bbe5c9c5, type: 3} + m_Name: + m_EditorClassIdentifier: + updateType: 0 + isSpeedBased: 0 + hasOnStart: 0 + hasOnPlay: 0 + hasOnUpdate: 0 + hasOnStepComplete: 0 + hasOnComplete: 1 + hasOnTweenCreated: 0 + hasOnRewind: 0 + onStart: + m_PersistentCalls: + m_Calls: [] + onPlay: + m_PersistentCalls: + m_Calls: [] + onUpdate: + m_PersistentCalls: + m_Calls: [] + onStepComplete: + m_PersistentCalls: + m_Calls: [] + onComplete: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 1087750405} + m_TargetAssemblyTypeName: + m_MethodName: DOPlay + m_Mode: 1 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: + m_BoolArgument: 0 + m_CallState: 2 + onTweenCreated: + m_PersistentCalls: + m_Calls: [] + onRewind: + m_PersistentCalls: + m_Calls: [] + delay: 0 + duration: 3 + easeType: 6 + easeCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + loops: 1 + id: + loopType: 0 + orientType: 0 + lookAtTransform: {fileID: 0} + lookAtPosition: {x: 0, y: 0, z: 0} + lookAhead: 0.01 + autoPlay: 0 + autoKill: 1 + relative: 0 + isLocal: 0 + isClosedPath: 1 + pathResolution: 10 + pathMode: 1 + lockRotation: 0 + assignForwardAndUp: 0 + forwardDirection: {x: 0, y: 0, z: 1} + upDirection: {x: 0, y: 1, z: 0} + tweenRigidbody: 0 + wps: + - {x: 3.8321667, y: 6.9544535, z: 0} + - {x: -6.0542445, y: 9.465288, z: 0} + - {x: -12.069765, y: 6.1698112, z: 0} + - {x: -12.069786, y: -0.2641964, z: 0} + - {x: -6.368099, y: -4.187376, z: 0} + fullWps: [] + path: + wpLengths: + - 0 + - 9.359136 + - 10.405018 + - 7.102792 + - 6.6672983 + - 7.1915474 + - 11.289525 + type: 1 + subdivisionsXSegment: 10 + subdivisions: 70 + wps: + - {x: 4.45, y: -1.83, z: 0} + - {x: 3.8321667, y: 6.9544535, z: 0} + - {x: -6.0542445, y: 9.465288, z: 0} + - {x: -12.069765, y: 6.1698112, z: 0} + - {x: -12.069786, y: -0.2641964, z: 0} + - {x: -6.368099, y: -4.187376, z: 0} + - {x: 4.45, y: -1.83, z: 0} + controlPoints: + - a: {x: -6.368099, y: -4.187376, z: 0} + b: {x: 0, y: 0, z: 0} + - a: {x: 3.8321667, y: 6.9544535, z: 0} + b: {x: 0, y: 0, z: 0} + length: 52.02238 + isFinalized: 1 + timesTable: + - 0.014285714 + - 0.028571429 + - 0.042857144 + - 0.057142857 + - 0.071428575 + - 0.08571429 + - 0.1 + - 0.114285715 + - 0.12857144 + - 0.14285715 + - 0.15714286 + - 0.17142858 + - 0.18571429 + - 0.2 + - 0.21428572 + - 0.22857143 + - 0.24285714 + - 0.25714287 + - 0.27142859 + - 0.2857143 + - 0.3 + - 0.31428573 + - 0.32857144 + - 0.34285715 + - 0.35714287 + - 0.37142858 + - 0.3857143 + - 0.4 + - 0.41428572 + - 0.42857143 + - 0.44285715 + - 0.45714286 + - 0.47142857 + - 0.4857143 + - 0.5 + - 0.51428574 + - 0.5285714 + - 0.54285717 + - 0.55714285 + - 0.5714286 + - 0.5857143 + - 0.6 + - 0.6142857 + - 0.62857145 + - 0.64285713 + - 0.6571429 + - 0.67142856 + - 0.6857143 + - 0.7 + - 0.71428573 + - 0.7285714 + - 0.74285716 + - 0.75714284 + - 0.7714286 + - 0.78571427 + - 0.8 + - 0.8142857 + - 0.82857144 + - 0.8428571 + - 0.85714287 + - 0.87142855 + - 0.8857143 + - 0.9 + - 0.9142857 + - 0.92857146 + - 0.94285715 + - 0.9571429 + - 0.9714286 + - 0.9857143 + - 1 + lengthsTable: + - 0.66792893 + - 1.3899281 + - 2.16896 + - 2.9980419 + - 3.8644814 + - 4.752426 + - 5.6444182 + - 6.5224686 + - 7.368998 + - 8.167948 + - 8.906464 + - 9.58573 + - 10.313842 + - 11.125577 + - 12.012393 + - 12.959278 + - 13.947668 + - 14.956963 + - 15.965341 + - 16.950247 + - 17.888689 + - 18.75748 + - 19.533484 + - 20.220243 + - 20.891918 + - 21.555 + - 22.208927 + - 22.852415 + - 23.483595 + - 24.100157 + - 24.699495 + - 25.278862 + - 25.83552 + - 26.366951 + - 26.8711 + - 27.376375 + - 27.912098 + - 28.475262 + - 29.060778 + - 29.66227 + - 30.272577 + - 30.884148 + - 31.48931 + - 32.080574 + - 32.650936 + - 33.194313 + - 33.709743 + - 34.240025 + - 34.79521 + - 35.371506 + - 35.965523 + - 36.574467 + - 37.19625 + - 37.829685 + - 38.474625 + - 39.132145 + - 39.804657 + - 40.496033 + - 41.23852 + - 42.10978 + - 43.088493 + - 44.145332 + - 45.25077 + - 46.375446 + - 47.49042 + - 48.567577 + - 49.58027 + - 50.50447 + - 51.32128 + - 52.02238 + inspectorMode: 0 + pathType: 1 + handlesType: 0 + livePreview: 1 + handlesDrawMode: 0 + perspectiveHandleSize: 0.5 + showIndexes: 1 + showWpLength: 0 + pathColor: {r: 1, g: 1, b: 1, a: 0.5} + lastSrcPosition: {x: 4.45, y: -1.83, z: 0} + lastSrcRotation: {x: 0, y: 0, z: 0, w: 0} + wpsDropdown: 0 + dropToFloorOffset: 0 +--- !u!33 &118309270 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 118309267} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!4 &118309271 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 118309267} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 4.45, y: -1.83, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &848136767 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 848136772} + - component: {fileID: 848136771} + - component: {fileID: 848136769} + - component: {fileID: 848136768} + m_Layer: 0 + m_Name: Main Camera + m_TagString: MainCamera + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!81 &848136768 +AudioListener: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 848136767} + m_Enabled: 1 +--- !u!124 &848136769 +Behaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 848136767} + m_Enabled: 1 +--- !u!20 &848136771 +Camera: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 848136767} + m_Enabled: 1 + serializedVersion: 2 + m_ClearFlags: 1 + m_BackGroundColor: {r: 0.16176468, g: 0.16176468, b: 0.16176468, a: 0.019607844} + m_projectionMatrixMode: 1 + m_GateFitMode: 2 + m_FOVAxisMode: 0 + m_Iso: 200 + m_ShutterSpeed: 0.005 + m_Aperture: 16 + m_FocusDistance: 10 + m_FocalLength: 50 + m_BladeCount: 5 + m_Curvature: {x: 2, y: 11} + m_BarrelClipping: 0.25 + m_Anamorphism: 0 + m_SensorSize: {x: 36, y: 24} + m_LensShift: {x: 0, y: 0} + m_NormalizedViewPortRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 1 + height: 1 + near clip plane: 0.3 + far clip plane: 1000 + field of view: 60 + orthographic: 0 + orthographic size: 5 + m_Depth: -1 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RenderingPath: -1 + m_TargetTexture: {fileID: 0} + m_TargetDisplay: 0 + m_TargetEye: 3 + m_HDR: 0 + m_AllowMSAA: 1 + m_AllowDynamicResolution: 0 + m_ForceIntoRT: 0 + m_OcclusionCulling: 1 + m_StereoConvergence: 10 + m_StereoSeparation: 0.022 +--- !u!4 &848136772 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 848136767} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: -30} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &970591913 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 970591914} + - component: {fileID: 970591916} + - component: {fileID: 970591915} + m_Layer: 5 + m_Name: Text + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &970591914 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 970591913} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1356883401} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &970591915 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 970591913} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 0.196, g: 0.196, b: 0.196, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_FontData: + m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} + m_FontSize: 14 + m_FontStyle: 0 + m_BestFit: 0 + m_MinSize: 10 + m_MaxSize: 40 + m_Alignment: 4 + m_AlignByGeometry: 0 + m_RichText: 1 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 0 + m_LineSpacing: 1 + m_Text: PLAY +--- !u!222 &970591916 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 970591913} + m_CullTransparentMesh: 1 +--- !u!1 &1053889438 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1053889442} + - component: {fileID: 1053889441} + - component: {fileID: 1053889440} + - component: {fileID: 1053889439} + m_Layer: 0 + m_Name: EventSystem + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &1053889439 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1053889438} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 2d49b7c1bcd2e07499844da127be038d, type: 3} + m_Name: + m_EditorClassIdentifier: + m_SendPointerHoverToParent: 1 + m_ForceModuleActive: 0 +--- !u!114 &1053889440 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1053889438} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4f231c4fb786f3946a6b90b886c48677, type: 3} + m_Name: + m_EditorClassIdentifier: + m_SendPointerHoverToParent: 1 + m_HorizontalAxis: Horizontal + m_VerticalAxis: Vertical + m_SubmitButton: Submit + m_CancelButton: Cancel + m_InputActionsPerSecond: 10 + m_RepeatDelay: 0.5 + m_ForceModuleActive: 0 +--- !u!114 &1053889441 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1053889438} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 76c392e42b5098c458856cdf6ecaaaa1, type: 3} + m_Name: + m_EditorClassIdentifier: + m_FirstSelected: {fileID: 0} + m_sendNavigationEvents: 1 + m_DragThreshold: 5 +--- !u!4 &1053889442 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1053889438} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1087750404 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1087750408} + - component: {fileID: 1087750407} + - component: {fileID: 1087750406} + - component: {fileID: 1087750405} + m_Layer: 0 + m_Name: Cube B (animated after Cube A) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &1087750405 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1087750404} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -333801856, guid: aa0b1eebb5db27a419fa4564bbe5c9c5, type: 3} + m_Name: + m_EditorClassIdentifier: + updateType: 0 + isSpeedBased: 0 + hasOnStart: 0 + hasOnPlay: 0 + hasOnUpdate: 0 + hasOnStepComplete: 0 + hasOnComplete: 0 + hasOnTweenCreated: 0 + hasOnRewind: 0 + onStart: + m_PersistentCalls: + m_Calls: [] + onPlay: + m_PersistentCalls: + m_Calls: [] + onUpdate: + m_PersistentCalls: + m_Calls: [] + onStepComplete: + m_PersistentCalls: + m_Calls: [] + onComplete: + m_PersistentCalls: + m_Calls: [] + onTweenCreated: + m_PersistentCalls: + m_Calls: [] + onRewind: + m_PersistentCalls: + m_Calls: [] + delay: 0 + duration: 3 + easeType: 1 + easeCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + loops: -1 + id: + loopType: 0 + orientType: 0 + lookAtTransform: {fileID: 0} + lookAtPosition: {x: 0, y: 0, z: 0} + lookAhead: 0.01 + autoPlay: 0 + autoKill: 1 + relative: 1 + isLocal: 0 + isClosedPath: 1 + pathResolution: 10 + pathMode: 1 + lockRotation: 0 + assignForwardAndUp: 0 + forwardDirection: {x: 0, y: 0, z: 1} + upDirection: {x: 0, y: 1, z: 0} + tweenRigidbody: 0 + wps: + - {x: 13.417454, y: 2.978077, z: 0} + - {x: 9.493597, y: 8.510473, z: 0} + - {x: -3.3649445, y: 5.5603714, z: 0} + - {x: -13.000723, y: 12.019701, z: 0} + - {x: -19.387083, y: 4.5597005, z: 0} + - {x: -15.279156, y: -3.646319, z: 0} + - {x: -4.1231623, y: -1.0233588, z: 0} + - {x: 3.7979867, y: -4.5040193, z: 0} + fullWps: [] + path: + wpLengths: + - 0 + - 5.8644567 + - 7.2802324 + - 13.301847 + - 11.81175 + - 10.301735 + - 9.680841 + - 11.593836 + - 8.754475 + - 7.309784 + type: 1 + subdivisionsXSegment: 10 + subdivisions: 100 + wps: + - {x: 10.45, y: -1.83, z: 0} + - {x: 13.417454, y: 2.978077, z: 0} + - {x: 9.493597, y: 8.510473, z: 0} + - {x: -3.3649445, y: 5.5603714, z: 0} + - {x: -13.000723, y: 12.019701, z: 0} + - {x: -19.387083, y: 4.5597005, z: 0} + - {x: -15.279156, y: -3.646319, z: 0} + - {x: -4.1231623, y: -1.0233588, z: 0} + - {x: 3.7979867, y: -4.5040193, z: 0} + - {x: 10.45, y: -1.83, z: 0} + controlPoints: + - a: {x: 3.7979867, y: -4.5040193, z: 0} + b: {x: 0, y: 0, z: 0} + - a: {x: 13.417454, y: 2.978077, z: 0} + b: {x: 0, y: 0, z: 0} + length: 85.91056 + isFinalized: 1 + timesTable: + - 0.01 + - 0.02 + - 0.03 + - 0.04 + - 0.049999997 + - 0.06 + - 0.07 + - 0.08 + - 0.089999996 + - 0.099999994 + - 0.11 + - 0.12 + - 0.13 + - 0.14 + - 0.14999999 + - 0.16 + - 0.17 + - 0.17999999 + - 0.19 + - 0.19999999 + - 0.21 + - 0.22 + - 0.22999999 + - 0.24 + - 0.25 + - 0.26 + - 0.26999998 + - 0.28 + - 0.29 + - 0.29999998 + - 0.31 + - 0.32 + - 0.32999998 + - 0.34 + - 0.35 + - 0.35999998 + - 0.37 + - 0.38 + - 0.39 + - 0.39999998 + - 0.41 + - 0.42 + - 0.42999998 + - 0.44 + - 0.45 + - 0.45999998 + - 0.47 + - 0.48 + - 0.48999998 + - 0.5 + - 0.51 + - 0.52 + - 0.53 + - 0.53999996 + - 0.55 + - 0.56 + - 0.57 + - 0.58 + - 0.59 + - 0.59999996 + - 0.61 + - 0.62 + - 0.63 + - 0.64 + - 0.65 + - 0.65999997 + - 0.66999996 + - 0.68 + - 0.69 + - 0.7 + - 0.71 + - 0.71999997 + - 0.72999996 + - 0.74 + - 0.75 + - 0.76 + - 0.77 + - 0.78 + - 0.78999996 + - 0.79999995 + - 0.81 + - 0.82 + - 0.83 + - 0.84 + - 0.84999996 + - 0.85999995 + - 0.87 + - 0.88 + - 0.89 + - 0.9 + - 0.90999997 + - 0.91999996 + - 0.93 + - 0.94 + - 0.95 + - 0.96 + - 0.96999997 + - 0.97999996 + - 0.98999995 + - 1 + lengthsTable: + - 0.5545968 + - 1.1175883 + - 1.6830537 + - 2.245447 + - 2.7997518 + - 3.3416884 + - 3.867998 + - 4.376838 + - 4.868309 + - 5.3450947 + - 5.813135 + - 6.311367 + - 6.877433 + - 7.495066 + - 8.148528 + - 8.823632 + - 9.508459 + - 10.194385 + - 10.877503 + - 11.560418 + - 12.254057 + - 12.978595 + - 13.783311 + - 14.741959 + - 15.848983 + - 17.077965 + - 18.394625 + - 19.761522 + - 21.140495 + - 22.494476 + - 23.78951 + - 24.997858 + - 26.103634 + - 27.136875 + - 28.20907 + - 29.343433 + - 30.531721 + - 31.750658 + - 32.96895 + - 34.151752 + - 35.26419 + - 36.275455 + - 37.165974 + - 37.94238 + - 38.672184 + - 39.461693 + - 40.331173 + - 41.275455 + - 42.278408 + - 43.318016 + - 44.36911 + - 45.404976 + - 46.39841 + - 47.322807 + - 48.15364 + - 48.891544 + - 49.678425 + - 50.534695 + - 51.444313 + - 52.38865 + - 53.348053 + - 54.30292 + - 55.23473 + - 56.12729 + - 56.968613 + - 57.754013 + - 58.495777 + - 59.294735 + - 60.205452 + - 61.226448 + - 62.33766 + - 63.510315 + - 64.71169 + - 65.907745 + - 67.06497 + - 68.15262 + - 69.14602 + - 70.03488 + - 70.87562 + - 71.70776 + - 72.54151 + - 73.377945 + - 74.21172 + - 75.033615 + - 75.83277 + - 76.59903 + - 77.325615 + - 78.01288 + - 78.67338 + - 79.33375 + - 80.00281 + - 80.68108 + - 81.366684 + - 82.05582 + - 82.74328 + - 83.422775 + - 84.087204 + - 84.728836 + - 85.33948 + - 85.91056 + inspectorMode: 0 + pathType: 1 + handlesType: 0 + livePreview: 1 + handlesDrawMode: 0 + perspectiveHandleSize: 0.5 + showIndexes: 1 + showWpLength: 0 + pathColor: {r: 1, g: 1, b: 1, a: 0.5} + lastSrcPosition: {x: 10.45, y: -1.83, z: 0} + lastSrcRotation: {x: 0, y: 0, z: 0, w: 0} + wpsDropdown: 0 + dropToFloorOffset: 0 +--- !u!23 &1087750406 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1087750404} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 0 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 10302, guid: 0000000000000000f000000000000000, type: 0} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &1087750407 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1087750404} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!4 &1087750408 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1087750404} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 10.45, y: -1.83, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1127963255 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1127963256} + - component: {fileID: 1127963258} + - component: {fileID: 1127963257} + m_Layer: 5 + m_Name: Info + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1127963256 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1127963255} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1260203941} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 0, y: -186} + m_SizeDelta: {x: 300, y: 30} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &1127963257 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1127963255} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_FontData: + m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} + m_FontSize: 14 + m_FontStyle: 0 + m_BestFit: 0 + m_MinSize: 10 + m_MaxSize: 40 + m_Alignment: 1 + m_AlignByGeometry: 0 + m_RichText: 1 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 1 + m_LineSpacing: 1 + m_Text: The PLAY button starts Cube A path animation. When that is complete, it + will start the other cube's animation (thanks to the Event created in Cube A's + DOTweenPath Component) +--- !u!222 &1127963258 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1127963255} + m_CullTransparentMesh: 1 +--- !u!1 &1242857378 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1242857380} + - component: {fileID: 1242857379} + m_Layer: 0 + m_Name: Directional light + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!108 &1242857379 +Light: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1242857378} + m_Enabled: 1 + serializedVersion: 10 + m_Type: 1 + m_Shape: 0 + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_Intensity: 1 + m_Range: 10 + m_SpotAngle: 30 + m_InnerSpotAngle: 21.80208 + m_CookieSize: 10 + m_Shadows: + m_Type: 0 + m_Resolution: -1 + m_CustomResolution: -1 + m_Strength: 1 + m_Bias: 0.05 + m_NormalBias: 0.4 + m_NearPlane: 0.2 + m_CullingMatrixOverride: + e00: 1 + e01: 0 + e02: 0 + e03: 0 + e10: 0 + e11: 1 + e12: 0 + e13: 0 + e20: 0 + e21: 0 + e22: 1 + e23: 0 + e30: 0 + e31: 0 + e32: 0 + e33: 1 + m_UseCullingMatrixOverride: 0 + m_Cookie: {fileID: 0} + m_DrawHalo: 0 + m_Flare: {fileID: 0} + m_RenderMode: 0 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RenderingLayerMask: 1 + m_Lightmapping: 1 + m_LightShadowCasterMode: 0 + m_AreaSize: {x: 1, y: 1} + m_BounceIntensity: 1 + m_ColorTemperature: 6570 + m_UseColorTemperature: 0 + m_BoundingSphereOverride: {x: 0, y: 0, z: 0, w: 0} + m_UseBoundingSphereOverride: 0 + m_UseViewFrustumForShadowCasterCull: 1 + m_ShadowRadius: 0 + m_ShadowAngle: 0 +--- !u!4 &1242857380 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1242857378} + serializedVersion: 2 + m_LocalRotation: {x: 0.40821794, y: -0.23456973, z: 0.10938166, w: 0.8754261} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 0.99999994, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1260203940 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1260203941} + - component: {fileID: 1260203944} + - component: {fileID: 1260203943} + - component: {fileID: 1260203942} + m_Layer: 5 + m_Name: Canvas + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1260203941 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1260203940} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 0, y: 0, z: 0} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 1356883401} + - {fileID: 1127963256} + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 0, y: 0} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0, y: 0} +--- !u!114 &1260203942 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1260203940} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreReversedGraphics: 1 + m_BlockingObjects: 0 + m_BlockingMask: + serializedVersion: 2 + m_Bits: 4294967295 +--- !u!114 &1260203943 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1260203940} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UiScaleMode: 0 + m_ReferencePixelsPerUnit: 100 + m_ScaleFactor: 1 + m_ReferenceResolution: {x: 800, y: 600} + m_ScreenMatchMode: 0 + m_MatchWidthOrHeight: 0 + m_PhysicalUnit: 3 + m_FallbackScreenDPI: 96 + m_DefaultSpriteDPI: 96 + m_DynamicPixelsPerUnit: 1 + m_PresetInfoIsWorld: 0 +--- !u!223 &1260203944 +Canvas: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1260203940} + m_Enabled: 1 + serializedVersion: 3 + m_RenderMode: 0 + m_Camera: {fileID: 0} + m_PlaneDistance: 100 + m_PixelPerfect: 1 + m_ReceivesEvents: 1 + m_OverrideSorting: 0 + m_OverridePixelPerfect: 0 + m_SortingBucketNormalizedSize: 0 + m_VertexColorAlwaysGammaSpace: 0 + m_AdditionalShaderChannelsFlag: 25 + m_UpdateRectTransformForStandalone: 0 + m_SortingLayerID: 0 + m_SortingOrder: 0 + m_TargetDisplay: 0 +--- !u!1 &1356883400 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1356883401} + - component: {fileID: 1356883404} + - component: {fileID: 1356883403} + - component: {fileID: 1356883402} + m_Layer: 5 + m_Name: Button + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1356883401 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1356883400} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 970591914} + m_Father: {fileID: 1260203941} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 0, y: -147} + m_SizeDelta: {x: 160, y: 30} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &1356883402 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1356883400} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_WrapAround: 0 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 1 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} + m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} + m_ColorMultiplier: 1 + m_FadeDuration: 0.1 + m_SpriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_SelectedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_SelectedTrigger: Highlighted + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 1356883403} + m_OnClick: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 118309269} + m_TargetAssemblyTypeName: + m_MethodName: DOPlay + m_Mode: 1 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: + m_BoolArgument: 0 + m_CallState: 2 +--- !u!114 &1356883403 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1356883400} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 1 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!222 &1356883404 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1356883400} + m_CullTransparentMesh: 1 +--- !u!1660057539 &9223372036854775807 +SceneRoots: + m_ObjectHideFlags: 0 + m_Roots: + - {fileID: 848136772} + - {fileID: 1242857380} + - {fileID: 118309271} + - {fileID: 1087750408} + - {fileID: 1260203941} + - {fileID: 1053889442} diff --git a/d2/Assets/Demigiant/DOTweenPro Examples/DOTweenPath.unity.meta b/d2/Assets/Demigiant/DOTweenPro Examples/DOTweenPath.unity.meta new file mode 100644 index 00000000..f480ec16 --- /dev/null +++ b/d2/Assets/Demigiant/DOTweenPro Examples/DOTweenPath.unity.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: a351b59ca54a0bc4083c35844da13a61 +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DOTweenPro Examples/DOTweenPathSettings.lighting b/d2/Assets/Demigiant/DOTweenPro Examples/DOTweenPathSettings.lighting new file mode 100644 index 00000000..b3a3e839 --- /dev/null +++ b/d2/Assets/Demigiant/DOTweenPro Examples/DOTweenPathSettings.lighting @@ -0,0 +1,66 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!850595691 &4890085278179872738 +LightingSettings: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: DOTweenPathSettings + serializedVersion: 6 + m_GIWorkflowMode: 1 + m_EnableBakedLightmaps: 1 + m_EnableRealtimeLightmaps: 0 + m_RealtimeEnvironmentLighting: 1 + m_BounceScale: 1 + m_AlbedoBoost: 1 + m_IndirectOutputScale: 1 + m_UsingShadowmask: 0 + m_BakeBackend: 0 + m_LightmapMaxSize: 1024 + m_BakeResolution: 50 + m_Padding: 2 + m_LightmapCompression: 0 + m_AO: 1 + m_AOMaxDistance: 1 + m_CompAOExponent: 1 + m_CompAOExponentDirect: 0 + m_ExtractAO: 0 + m_MixedBakeMode: 1 + m_LightmapsBakeMode: 1 + m_FilterMode: 1 + m_LightmapParameters: {fileID: 15204, guid: 0000000000000000f000000000000000, type: 0} + m_ExportTrainingData: 0 + m_TrainingDataDestination: TrainingData + m_RealtimeResolution: 1 + m_ForceWhiteAlbedo: 0 + m_ForceUpdates: 0 + m_FinalGather: 0 + m_FinalGatherRayCount: 256 + m_FinalGatherFiltering: 1 + m_PVRCulling: 1 + m_PVRSampling: 1 + m_PVRDirectSampleCount: 32 + m_PVRSampleCount: 512 + m_PVREnvironmentSampleCount: 512 + m_PVREnvironmentReferencePointCount: 2048 + m_LightProbeSampleCountMultiplier: 4 + m_PVRBounces: 2 + m_PVRMinBounces: 2 + m_PVREnvironmentImportanceSampling: 0 + m_PVRFilteringMode: 0 + m_PVRDenoiserTypeDirect: 0 + m_PVRDenoiserTypeIndirect: 0 + m_PVRDenoiserTypeAO: 0 + m_PVRFilterTypeDirect: 0 + m_PVRFilterTypeIndirect: 0 + m_PVRFilterTypeAO: 0 + m_PVRFilteringGaussRadiusDirect: 1 + m_PVRFilteringGaussRadiusIndirect: 5 + m_PVRFilteringGaussRadiusAO: 2 + m_PVRFilteringAtrousPositionSigmaDirect: 0.5 + m_PVRFilteringAtrousPositionSigmaIndirect: 2 + m_PVRFilteringAtrousPositionSigmaAO: 1 + m_PVRTiledBaking: 0 + m_NumRaysToShootPerTexel: -1 + m_RespectSceneVisibilityWhenBakingGI: 0 diff --git a/d2/Assets/Demigiant/DOTweenPro Examples/DOTweenPathSettings.lighting.meta b/d2/Assets/Demigiant/DOTweenPro Examples/DOTweenPathSettings.lighting.meta new file mode 100644 index 00000000..438750bc --- /dev/null +++ b/d2/Assets/Demigiant/DOTweenPro Examples/DOTweenPathSettings.lighting.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 052277ce781dbc941b2615c3c3996f98 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 4890085278179872738 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DOTweenPro Examples/Examples Assets.meta b/d2/Assets/Demigiant/DOTweenPro Examples/Examples Assets.meta new file mode 100644 index 00000000..d54ed8f9 --- /dev/null +++ b/d2/Assets/Demigiant/DOTweenPro Examples/Examples Assets.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 4bffeb49a27fd6443ad210e58b23f1db +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DOTweenPro Examples/Examples Assets/dotweenpro_logo.png b/d2/Assets/Demigiant/DOTweenPro Examples/Examples Assets/dotweenpro_logo.png new file mode 100644 index 0000000000000000000000000000000000000000..c6d84204d243ecbb2398c9130d5346cc91e86889 GIT binary patch literal 17098 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�v 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%0DY$h0<3+C#9u^kxY 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 + /// Attach this to a GameObject to create a tween + /// + [AddComponentMenu("DOTween/DOTween Animation")] + public class DOTweenAnimation : ABSAnimationComponent + { + public enum AnimationType + { + None, + Move, LocalMove, + Rotate, LocalRotate, + Scale, + Color, Fade, + Text, + PunchPosition, PunchRotation, PunchScale, + ShakePosition, ShakeRotation, ShakeScale, + CameraAspect, CameraBackgroundColor, CameraFieldOfView, CameraOrthoSize, CameraPixelRect, CameraRect, + UIWidthHeight + } + + public enum TargetType + { + Unset, + + Camera, + CanvasGroup, + Image, + Light, + RectTransform, + Renderer, SpriteRenderer, + Rigidbody, Rigidbody2D, + Text, + Transform, + + tk2dBaseSprite, + tk2dTextMesh, + + TextMeshPro, + TextMeshProUGUI + } + + #region EVENTS - EDITOR-ONLY + + /// Used internally by the editor + public static event Action OnReset; + static void Dispatch_OnReset(DOTweenAnimation anim) { if (OnReset != null) OnReset(anim); } + + #endregion + + public bool targetIsSelf = true; // If FALSE allows to set the target manually + public GameObject targetGO = null; // Used in case targetIsSelf is FALSE + // If TRUE always uses the GO containing this DOTweenAnimation (and not the one containing the target) as DOTween's SetTarget target + public bool tweenTargetIsTargetGO = true; + + public float delay; + public float duration = 1; + public Ease easeType = Ease.OutQuad; + public AnimationCurve easeCurve = new AnimationCurve(new Keyframe(0, 0), new Keyframe(1, 1)); + public LoopType loopType = LoopType.Restart; + public int loops = 1; + public string id = ""; + public bool isRelative; + public bool isFrom; + public bool isIndependentUpdate = false; + public bool autoKill = true; + + public bool isActive = true; + public bool isValid; + public Component target; + public AnimationType animationType; + public TargetType targetType; + public TargetType forcedTargetType; // Used when choosing between multiple targets + public bool autoPlay = true; + public bool useTargetAsV3; + + public float endValueFloat; + public Vector3 endValueV3; + public Vector2 endValueV2; + public Color endValueColor = new Color(1, 1, 1, 1); + public string endValueString = ""; + public Rect endValueRect = new Rect(0, 0, 0, 0); + public Transform endValueTransform; + + public bool optionalBool0; + public float optionalFloat0; + public int optionalInt0; + public RotateMode optionalRotationMode = RotateMode.Fast; + public ScrambleMode optionalScrambleMode = ScrambleMode.None; + public string optionalString; + + bool _tweenCreated; // TRUE after the tweens have been created + int _playCount = -1; // Used when calling DOPlayNext + + #region Unity Methods + + void Awake() + { + if (!isActive || !isValid) return; + + if (animationType != AnimationType.Move || !useTargetAsV3) { + // Don't create tweens if we're using a RectTransform as a Move target, + // because that will work only inside Start + CreateTween(); + _tweenCreated = true; + } + } + + void Start() + { + if (_tweenCreated || !isActive || !isValid) return; + + CreateTween(); + _tweenCreated = true; + } + + void Reset() + { + Dispatch_OnReset(this); + } + + void OnDestroy() + { + if (tween != null && tween.IsActive()) tween.Kill(); + tween = null; + } + + // Used also by DOTweenAnimationInspector when applying runtime changes and restarting + public void CreateTween() + { +// if (target == null) { +// Debug.LogWarning(string.Format("{0} :: This DOTweenAnimation's target is NULL, because the animation was created with a DOTween Pro version older than 0.9.255. To fix this, exit Play mode then simply select this object, and it will update automatically", this.gameObject.name), this.gameObject); +// return; +// } + + GameObject tweenGO = GetTweenGO(); + if (target == null || tweenGO == null) { + if (targetIsSelf && target == null) { + // Old error caused during upgrade from DOTween Pro 0.9.255 + Debug.LogWarning(string.Format("{0} :: This DOTweenAnimation's target is NULL, because the animation was created with a DOTween Pro version older than 0.9.255. To fix this, exit Play mode then simply select this object, and it will update automatically", this.gameObject.name), this.gameObject); + } else { + // Missing non-self target + Debug.LogWarning(string.Format("{0} :: This DOTweenAnimation's target/GameObject is unset: the tween will not be created.", this.gameObject.name), this.gameObject); + } + return; + } + + if (forcedTargetType != TargetType.Unset) targetType = forcedTargetType; + if (targetType == TargetType.Unset) { + // Legacy DOTweenAnimation (made with a version older than 0.9.450) without stored targetType > assign it now + targetType = TypeToDOTargetType(target.GetType()); + } + + switch (animationType) { + case AnimationType.None: + break; + case AnimationType.Move: + if (useTargetAsV3) { + isRelative = false; + if (endValueTransform == null) { + Debug.LogWarning(string.Format("{0} :: This tween's TO target is NULL, a Vector3 of (0,0,0) will be used instead", this.gameObject.name), this.gameObject); + endValueV3 = Vector3.zero; + } else { +#if true // UI_MARKER + if (targetType == TargetType.RectTransform) { + RectTransform endValueT = endValueTransform as RectTransform; + if (endValueT == null) { + Debug.LogWarning(string.Format("{0} :: This tween's TO target should be a RectTransform, a Vector3 of (0,0,0) will be used instead", this.gameObject.name), this.gameObject); + endValueV3 = Vector3.zero; + } else { + RectTransform rTarget = target as RectTransform; + if (rTarget == null) { + Debug.LogWarning(string.Format("{0} :: This tween's target and TO target are not of the same type. Please reassign the values", this.gameObject.name), this.gameObject); + } else { + // Problem: doesn't work inside Awake (ararargh!) + endValueV3 = DOTweenModuleUI.Utils.SwitchToRectTransform(endValueT, rTarget); + } + } + } else +#endif + endValueV3 = endValueTransform.position; + } + } + switch (targetType) { + case TargetType.Transform: + tween = ((Transform)target).DOMove(endValueV3, duration, optionalBool0); + break; + case TargetType.RectTransform: +#if true // UI_MARKER + tween = ((RectTransform)target).DOAnchorPos3D(endValueV3, duration, optionalBool0); +#else + tween = ((Transform)target).DOMove(endValueV3, duration, optionalBool0); +#endif + break; + case TargetType.Rigidbody: +#if true // PHYSICS_MARKER + tween = ((Rigidbody)target).DOMove(endValueV3, duration, optionalBool0); +#else + tween = ((Transform)target).DOMove(endValueV3, duration, optionalBool0); +#endif + break; + case TargetType.Rigidbody2D: +#if true // PHYSICS2D_MARKER + tween = ((Rigidbody2D)target).DOMove(endValueV3, duration, optionalBool0); +#else + tween = ((Transform)target).DOMove(endValueV3, duration, optionalBool0); +#endif + break; + } + break; + case AnimationType.LocalMove: + tween = tweenGO.transform.DOLocalMove(endValueV3, duration, optionalBool0); + break; + case AnimationType.Rotate: + switch (targetType) { + case TargetType.Transform: + tween = ((Transform)target).DORotate(endValueV3, duration, optionalRotationMode); + break; + case TargetType.Rigidbody: +#if true // PHYSICS_MARKER + tween = ((Rigidbody)target).DORotate(endValueV3, duration, optionalRotationMode); +#else + tween = ((Transform)target).DORotate(endValueV3, duration, optionalRotationMode); +#endif + break; + case TargetType.Rigidbody2D: +#if true // PHYSICS2D_MARKER + tween = ((Rigidbody2D)target).DORotate(endValueFloat, duration); +#else + tween = ((Transform)target).DORotate(endValueV3, duration, optionalRotationMode); +#endif + break; + } + break; + case AnimationType.LocalRotate: + tween = tweenGO.transform.DOLocalRotate(endValueV3, duration, optionalRotationMode); + break; + case AnimationType.Scale: + switch (targetType) { +#if false // TK2D_MARKER + case TargetType.tk2dTextMesh: + tween = ((tk2dTextMesh)target).DOScale(optionalBool0 ? new Vector3(endValueFloat, endValueFloat, endValueFloat) : endValueV3, duration); + break; + case TargetType.tk2dBaseSprite: + tween = ((tk2dBaseSprite)target).DOScale(optionalBool0 ? new Vector3(endValueFloat, endValueFloat, endValueFloat) : endValueV3, duration); + break; +#endif + default: + tween = tweenGO.transform.DOScale(optionalBool0 ? new Vector3(endValueFloat, endValueFloat, endValueFloat) : endValueV3, duration); + break; + } + break; +#if true // UI_MARKER + case AnimationType.UIWidthHeight: + tween = ((RectTransform)target).DOSizeDelta(optionalBool0 ? new Vector2(endValueFloat, endValueFloat) : endValueV2, duration); + break; +#endif + case AnimationType.Color: + isRelative = false; + switch (targetType) { + case TargetType.Renderer: + tween = ((Renderer)target).material.DOColor(endValueColor, duration); + break; + case TargetType.Light: + tween = ((Light)target).DOColor(endValueColor, duration); + break; +#if true // SPRITE_MARKER + case TargetType.SpriteRenderer: + tween = ((SpriteRenderer)target).DOColor(endValueColor, duration); + break; +#endif +#if true // UI_MARKER + case TargetType.Image: + tween = ((Graphic)target).DOColor(endValueColor, duration); + break; + case TargetType.Text: + tween = ((Text)target).DOColor(endValueColor, duration); + break; +#endif +#if false // TK2D_MARKER + case TargetType.tk2dTextMesh: + tween = ((tk2dTextMesh)target).DOColor(endValueColor, duration); + break; + case TargetType.tk2dBaseSprite: + tween = ((tk2dBaseSprite)target).DOColor(endValueColor, duration); + break; +#endif +#if false // TEXTMESHPRO_MARKER + case TargetType.TextMeshProUGUI: + tween = ((TextMeshProUGUI)target).DOColor(endValueColor, duration); + break; + case TargetType.TextMeshPro: + tween = ((TextMeshPro)target).DOColor(endValueColor, duration); + break; +#endif + } + break; + case AnimationType.Fade: + isRelative = false; + switch (targetType) { + case TargetType.Renderer: + tween = ((Renderer)target).material.DOFade(endValueFloat, duration); + break; + case TargetType.Light: + tween = ((Light)target).DOIntensity(endValueFloat, duration); + break; +#if true // SPRITE_MARKER + case TargetType.SpriteRenderer: + tween = ((SpriteRenderer)target).DOFade(endValueFloat, duration); + break; +#endif +#if true // UI_MARKER + case TargetType.Image: + tween = ((Graphic)target).DOFade(endValueFloat, duration); + break; + case TargetType.Text: + tween = ((Text)target).DOFade(endValueFloat, duration); + break; + case TargetType.CanvasGroup: + tween = ((CanvasGroup)target).DOFade(endValueFloat, duration); + break; +#endif +#if false // TK2D_MARKER + case TargetType.tk2dTextMesh: + tween = ((tk2dTextMesh)target).DOFade(endValueFloat, duration); + break; + case TargetType.tk2dBaseSprite: + tween = ((tk2dBaseSprite)target).DOFade(endValueFloat, duration); + break; +#endif +#if false // TEXTMESHPRO_MARKER + case TargetType.TextMeshProUGUI: + tween = ((TextMeshProUGUI)target).DOFade(endValueFloat, duration); + break; + case TargetType.TextMeshPro: + tween = ((TextMeshPro)target).DOFade(endValueFloat, duration); + break; +#endif + } + break; + case AnimationType.Text: +#if true // UI_MARKER + switch (targetType) { + case TargetType.Text: + tween = ((Text)target).DOText(endValueString, duration, optionalBool0, optionalScrambleMode, optionalString); + break; + } +#endif +#if false // TK2D_MARKER + switch (targetType) { + case TargetType.tk2dTextMesh: + tween = ((tk2dTextMesh)target).DOText(endValueString, duration, optionalBool0, optionalScrambleMode, optionalString); + break; + } +#endif +#if false // TEXTMESHPRO_MARKER + switch (targetType) { + case TargetType.TextMeshProUGUI: + tween = ((TextMeshProUGUI)target).DOText(endValueString, duration, optionalBool0, optionalScrambleMode, optionalString); + break; + case TargetType.TextMeshPro: + tween = ((TextMeshPro)target).DOText(endValueString, duration, optionalBool0, optionalScrambleMode, optionalString); + break; + } +#endif + break; + case AnimationType.PunchPosition: + switch (targetType) { + case TargetType.Transform: + tween = ((Transform)target).DOPunchPosition(endValueV3, duration, optionalInt0, optionalFloat0, optionalBool0); + break; +#if true // UI_MARKER + case TargetType.RectTransform: + tween = ((RectTransform)target).DOPunchAnchorPos(endValueV3, duration, optionalInt0, optionalFloat0, optionalBool0); + break; +#endif + } + break; + case AnimationType.PunchScale: + tween = tweenGO.transform.DOPunchScale(endValueV3, duration, optionalInt0, optionalFloat0); + break; + case AnimationType.PunchRotation: + tween = tweenGO.transform.DOPunchRotation(endValueV3, duration, optionalInt0, optionalFloat0); + break; + case AnimationType.ShakePosition: + switch (targetType) { + case TargetType.Transform: + tween = ((Transform)target).DOShakePosition(duration, endValueV3, optionalInt0, optionalFloat0, optionalBool0); + break; +#if true // UI_MARKER + case TargetType.RectTransform: + tween = ((RectTransform)target).DOShakeAnchorPos(duration, endValueV3, optionalInt0, optionalFloat0, optionalBool0); + break; +#endif + } + break; + case AnimationType.ShakeScale: + tween = tweenGO.transform.DOShakeScale(duration, endValueV3, optionalInt0, optionalFloat0); + break; + case AnimationType.ShakeRotation: + tween = tweenGO.transform.DOShakeRotation(duration, endValueV3, optionalInt0, optionalFloat0); + break; + case AnimationType.CameraAspect: + tween = ((Camera)target).DOAspect(endValueFloat, duration); + break; + case AnimationType.CameraBackgroundColor: + tween = ((Camera)target).DOColor(endValueColor, duration); + break; + case AnimationType.CameraFieldOfView: + tween = ((Camera)target).DOFieldOfView(endValueFloat, duration); + break; + case AnimationType.CameraOrthoSize: + tween = ((Camera)target).DOOrthoSize(endValueFloat, duration); + break; + case AnimationType.CameraPixelRect: + tween = ((Camera)target).DOPixelRect(endValueRect, duration); + break; + case AnimationType.CameraRect: + tween = ((Camera)target).DORect(endValueRect, duration); + break; + } + + if (tween == null) return; + + if (isFrom) { + ((Tweener)tween).From(isRelative); + } else { + tween.SetRelative(isRelative); + } + GameObject setTarget = targetIsSelf || !tweenTargetIsTargetGO ? this.gameObject : targetGO; + tween.SetTarget(setTarget).SetDelay(delay).SetLoops(loops, loopType).SetAutoKill(autoKill) + .OnKill(()=> tween = null); + if (isSpeedBased) tween.SetSpeedBased(); + if (easeType == Ease.INTERNAL_Custom) tween.SetEase(easeCurve); + else tween.SetEase(easeType); + if (!string.IsNullOrEmpty(id)) tween.SetId(id); + tween.SetUpdate(isIndependentUpdate); + + if (hasOnStart) { + if (onStart != null) tween.OnStart(onStart.Invoke); + } else onStart = null; + if (hasOnPlay) { + if (onPlay != null) tween.OnPlay(onPlay.Invoke); + } else onPlay = null; + if (hasOnUpdate) { + if (onUpdate != null) tween.OnUpdate(onUpdate.Invoke); + } else onUpdate = null; + if (hasOnStepComplete) { + if (onStepComplete != null) tween.OnStepComplete(onStepComplete.Invoke); + } else onStepComplete = null; + if (hasOnComplete) { + if (onComplete != null) tween.OnComplete(onComplete.Invoke); + } else onComplete = null; + if (hasOnRewind) { + if (onRewind != null) tween.OnRewind(onRewind.Invoke); + } else onRewind = null; + + if (autoPlay) tween.Play(); + else tween.Pause(); + + if (hasOnTweenCreated && onTweenCreated != null) onTweenCreated.Invoke(); + } + + #endregion + + #region Public Methods + + // These methods are here so they can be called directly via Unity's UGUI event system + + public override void DOPlay() + { + DOTween.Play(this.gameObject); + } + + public override void DOPlayBackwards() + { + DOTween.PlayBackwards(this.gameObject); + } + + public override void DOPlayForward() + { + DOTween.PlayForward(this.gameObject); + } + + public override void DOPause() + { + DOTween.Pause(this.gameObject); + } + + public override void DOTogglePause() + { + DOTween.TogglePause(this.gameObject); + } + + public override void DORewind() + { + _playCount = -1; + // Rewind using Components order (in case there are multiple animations on the same property) + DOTweenAnimation[] anims = this.gameObject.GetComponents(); + for (int i = anims.Length - 1; i > -1; --i) { + Tween t = anims[i].tween; + if (t != null && t.IsInitialized()) anims[i].tween.Rewind(); + } + // DOTween.Rewind(this.gameObject); + } + + /// + /// Restarts the tween + /// + public override void DORestart() + { DORestart(false); } + /// + /// Restarts the tween + /// + /// If TRUE, re-evaluates the tween's start and end values from its current position. + /// Set it to TRUE when spawning the same DOTweenAnimation in different positions (like when using a pooling system) + public override void DORestart(bool fromHere) + { + _playCount = -1; + if (tween == null) { + if (Debugger.logPriority > 1) Debugger.LogNullTween(tween); return; + } + if (fromHere && isRelative) ReEvaluateRelativeTween(); + DOTween.Restart(this.gameObject); + } + + public override void DOComplete() + { + DOTween.Complete(this.gameObject); + } + + public override void DOKill() + { + DOTween.Kill(this.gameObject); + tween = null; + } + + #region Specifics + + public void DOPlayById(string id) + { + DOTween.Play(this.gameObject, id); + } + public void DOPlayAllById(string id) + { + DOTween.Play(id); + } + + public void DOPauseAllById(string id) + { + DOTween.Pause(id); + } + + public void DOPlayBackwardsById(string id) + { + DOTween.PlayBackwards(this.gameObject, id); + } + public void DOPlayBackwardsAllById(string id) + { + DOTween.PlayBackwards(id); + } + + public void DOPlayForwardById(string id) + { + DOTween.PlayForward(this.gameObject, id); + } + public void DOPlayForwardAllById(string id) + { + DOTween.PlayForward(id); + } + + public void DOPlayNext() + { + DOTweenAnimation[] anims = this.GetComponents(); + while (_playCount < anims.Length - 1) { + _playCount++; + DOTweenAnimation anim = anims[_playCount]; + if (anim != null && anim.tween != null && !anim.tween.IsPlaying() && !anim.tween.IsComplete()) { + anim.tween.Play(); + break; + } + } + } + + public void DORewindAndPlayNext() + { + _playCount = -1; + DOTween.Rewind(this.gameObject); + DOPlayNext(); + } + + public void DORewindAllById(string id) + { + _playCount = -1; + DOTween.Rewind(id); + } + + public void DORestartById(string id) + { + _playCount = -1; + DOTween.Restart(this.gameObject, id); + } + public void DORestartAllById(string id) + { + _playCount = -1; + DOTween.Restart(id); + } + + /// + /// Returns the tweens created by this DOTweenAnimation, in the same order as they appear in the Inspector (top to bottom) + /// + public List GetTweens() + { +// return DOTween.TweensByTarget(this.gameObject); + + List result = new List(); + DOTweenAnimation[] anims = this.GetComponents(); + foreach (DOTweenAnimation anim in anims) result.Add(anim.tween); + return result; + } + + #endregion + + #region Internal (also used by Inspector) + + public static TargetType TypeToDOTargetType(Type t) + { + string str = t.ToString(); + int dotIndex = str.LastIndexOf("."); + if (dotIndex != -1) str = str.Substring(dotIndex + 1); + if (str.IndexOf("Renderer") != -1 && (str != "SpriteRenderer")) str = "Renderer"; +//#if true // PHYSICS_MARKER +// if (str == "Rigidbody") str = "Transform"; +//#endif +//#if true // PHYSICS2D_MARKER +// if (str == "Rigidbody2D") str = "Transform"; +//#endif +#if true // UI_MARKER +// if (str == "RectTransform") str = "Transform"; + if (str == "RawImage") str = "Image"; // RawImages are managed like Images for DOTweenAnimation (color and fade use Graphic target anyway) +#endif + return (TargetType)Enum.Parse(typeof(TargetType), str); + } + + // Editor preview system + /// + /// Previews the tween in the editor. Only for DOTween internal usage: don't use otherwise. + /// + public Tween CreateEditorPreview() + { + if (Application.isPlaying) return null; + + CreateTween(); + return tween; + } + + #endregion + + #endregion + + #region Private + + // Returns the gameObject whose target component should be animated + GameObject GetTweenGO() + { + return targetIsSelf ? this.gameObject : targetGO; + } + + // Re-evaluate relative position of path + void ReEvaluateRelativeTween() + { + GameObject tweenGO = GetTweenGO(); + if (tweenGO == null) { + Debug.LogWarning(string.Format("{0} :: This DOTweenAnimation's target/GameObject is unset: the tween will not be created.", this.gameObject.name), this.gameObject); + return; + } + if (animationType == AnimationType.Move) { + ((Tweener)tween).ChangeEndValue(tweenGO.transform.position + endValueV3, true); + } else if (animationType == AnimationType.LocalMove) { + ((Tweener)tween).ChangeEndValue(tweenGO.transform.localPosition + endValueV3, true); + } + } + + #endregion + } + + public static class DOTweenAnimationExtensions + { +// // Doesn't work on Win 8.1 +// public static bool IsSameOrSubclassOf(this Type t, Type tBase) +// { +// return t.IsSubclassOf(tBase) || t == tBase; +// } + + public static bool IsSameOrSubclassOf(this Component t) + { + return t is T; + } + } +} diff --git a/d2/Assets/Demigiant/DOTweenPro/DOTweenAnimation.cs.meta b/d2/Assets/Demigiant/DOTweenPro/DOTweenAnimation.cs.meta new file mode 100644 index 00000000..5d92ac7e --- /dev/null +++ b/d2/Assets/Demigiant/DOTweenPro/DOTweenAnimation.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 4d0390bd8b8ffd640b34fe25065ff1df +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DOTweenPro/DOTweenPro.XML b/d2/Assets/Demigiant/DOTweenPro/DOTweenPro.XML new file mode 100644 index 00000000..14c2bb0a --- /dev/null +++ b/d2/Assets/Demigiant/DOTweenPro/DOTweenPro.XML @@ -0,0 +1,62 @@ + + + + DOTweenPro + + + + + Restarts the tween + + + + + Restarts the tween + + If TRUE, re-evaluates the tween's start and end values from its current position. + Set it to TRUE when spawning the same DOTweenPath in different positions (like when using a pooling system) + + + + Attach this to a GameObject to create and assign a path to it + + + + Used internally by the editor + + + + Restarts the tween + + + + + Restarts the tween + + If TRUE, re-evaluates the tween's start and end values from its current position. + Set it to TRUE when spawning the same DOTweenPath in different positions (like when using a pooling system) + + + + Returns a list of points that are used to draw the path inside the editor. + + + + + Tweens a Vector3 along a spiral. + EndValue represents the direction of the spiral + + + + + Spiral tween mode + + + + The spiral motion will expand outwards for the whole the tween + + + The spiral motion will expand outwards for half the tween and then will spiral back to the starting position + + + diff --git a/d2/Assets/Demigiant/DOTweenPro/DOTweenPro.XML.meta b/d2/Assets/Demigiant/DOTweenPro/DOTweenPro.XML.meta new file mode 100644 index 00000000..a396828a --- /dev/null +++ b/d2/Assets/Demigiant/DOTweenPro/DOTweenPro.XML.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: db7d7ef84c388bc4fbc3835d31a15306 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DOTweenPro/DOTweenPro.dll b/d2/Assets/Demigiant/DOTweenPro/DOTweenPro.dll new file mode 100644 index 0000000000000000000000000000000000000000..c183bb9613a514b0c962ab20daf55a5e7fce7b13 GIT binary patch literal 15872 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 literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DOTweenPro/DOTweenPro.dll.meta b/d2/Assets/Demigiant/DOTweenPro/DOTweenPro.dll.meta new file mode 100644 index 00000000..6bcf8170 --- /dev/null +++ b/d2/Assets/Demigiant/DOTweenPro/DOTweenPro.dll.meta @@ -0,0 +1,21 @@ +fileFormatVersion: 2 +guid: aa0b1eebb5db27a419fa4564bbe5c9c5 +PluginImporter: + externalObjects: {} + serializedVersion: 2 + iconMap: {} + executionOrder: {} + defineConstraints: [] + isPreloaded: 0 + isOverridable: 0 + isExplicitlyReferenced: 0 + validateReferences: 1 + platformData: + - first: + Any: + second: + enabled: 1 + settings: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DOTweenPro/DOTweenProShortcuts.cs b/d2/Assets/Demigiant/DOTweenPro/DOTweenProShortcuts.cs new file mode 100644 index 00000000..12ee7ef1 --- /dev/null +++ b/d2/Assets/Demigiant/DOTweenPro/DOTweenProShortcuts.cs @@ -0,0 +1,90 @@ +// Author: Daniele Giardini - http://www.demigiant.com +// Created: 2018/07/13 + +using System; +using DG.Tweening.Core; +using DG.Tweening.Plugins; +using UnityEngine; + +#pragma warning disable 1591 +namespace DG.Tweening +{ + public static class DOTweenProShortcuts + { + static DOTweenProShortcuts() + { + // Create stub instances of custom plugins, in order to allow IL2CPP to understand they must be included in the build +#pragma warning disable 219 + SpiralPlugin stub = new SpiralPlugin(); +#pragma warning restore 219 + } + + #region Shortcuts + + #region Transform + + /// Tweens a Transform's localPosition in a spiral shape. + /// Also stores the transform as the tween's target so it can be used for filtered operations + /// The duration of the tween + /// The axis around which the spiral will rotate + /// The type of spiral movement + /// Speed of the rotations + /// Frequency of the rotation. Lower values lead to wider spirals + /// Indicates how much the tween should move along the spiral's axis + /// If TRUE the tween will smoothly snap all values to integers + public static Tweener DOSpiral( + this Transform target, float duration, Vector3? axis = null, SpiralMode mode = SpiralMode.Expand, + float speed = 1, float frequency = 10, float depth = 0, bool snapping = false + ) { + if (Mathf.Approximately(speed, 0)) speed = 1; + if (axis == null || axis == Vector3.zero) axis = Vector3.forward; + + TweenerCore t = DOTween.To(SpiralPlugin.Get(), () => target.localPosition, x => target.localPosition = x, (Vector3)axis, duration) + .SetTarget(target); + + t.plugOptions.mode = mode; + t.plugOptions.speed = speed; + t.plugOptions.frequency = frequency; + t.plugOptions.depth = depth; + t.plugOptions.snapping = snapping; + return t; + } + + #endregion + +#if true // PHYSICS_MARKER + #region Rigidbody + + /// Tweens a Rigidbody's position in a spiral shape. + /// Also stores the transform as the tween's target so it can be used for filtered operations + /// The duration of the tween + /// The axis around which the spiral will rotate + /// The type of spiral movement + /// Speed of the rotations + /// Frequency of the rotation. Lower values lead to wider spirals + /// Indicates how much the tween should move along the spiral's axis + /// If TRUE the tween will smoothly snap all values to integers + public static Tweener DOSpiral( + this Rigidbody target, float duration, Vector3? axis = null, SpiralMode mode = SpiralMode.Expand, + float speed = 1, float frequency = 10, float depth = 0, bool snapping = false + ) { + if (Mathf.Approximately(speed, 0)) speed = 1; + if (axis == null || axis == Vector3.zero) axis = Vector3.forward; + + TweenerCore t = DOTween.To(SpiralPlugin.Get(), () => target.position, target.MovePosition, (Vector3)axis, duration) + .SetTarget(target); + + t.plugOptions.mode = mode; + t.plugOptions.speed = speed; + t.plugOptions.frequency = frequency; + t.plugOptions.depth = depth; + t.plugOptions.snapping = snapping; + return t; + } + + #endregion +#endif + + #endregion + } +} diff --git a/d2/Assets/Demigiant/DOTweenPro/DOTweenProShortcuts.cs.meta b/d2/Assets/Demigiant/DOTweenPro/DOTweenProShortcuts.cs.meta new file mode 100644 index 00000000..99f8a2e3 --- /dev/null +++ b/d2/Assets/Demigiant/DOTweenPro/DOTweenProShortcuts.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 1c3190a1a1c53f449926f6d5542b4ce5 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DOTweenPro/DOTweenTextMeshPro.cs b/d2/Assets/Demigiant/DOTweenPro/DOTweenTextMeshPro.cs new file mode 100644 index 00000000..d6855562 --- /dev/null +++ b/d2/Assets/Demigiant/DOTweenPro/DOTweenTextMeshPro.cs @@ -0,0 +1,141 @@ +// Author: Daniele Giardini - http://www.demigiant.com +// Created: 2015/03/27 19:02 +// +// License Copyright (c) Daniele Giardini. +// This work is subject to the terms at http://dotween.demigiant.com/license.php + +#if false // MODULE_MARKER +using DG.Tweening.Core; +using DG.Tweening.Plugins.Options; +using UnityEngine; +using TMPro; + +namespace DG.Tweening +{ + /// + /// Methods that extend TMP_Text objects and allow to directly create and control tweens from their instances. + /// + public static class ShortcutExtensionsTMPText + { + #region Colors + + /// Tweens a TextMeshPro's color to the given value. + /// Also stores the TextMeshPro as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOColor(this TMP_Text target, Color endValue, float duration) + { + TweenerCore t = DOTween.To(() => target.color, x => target.color = x, endValue, duration); + t.SetTarget(target); + return t; + } + + /// Tweens a TextMeshPro's faceColor to the given value. + /// Also stores the TextMeshPro as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOFaceColor(this TMP_Text target, Color32 endValue, float duration) + { + TweenerCore t = DOTween.To(() => target.faceColor, x => target.faceColor = x, endValue, duration); + t.SetTarget(target); + return t; + } + + /// Tweens a TextMeshPro's outlineColor to the given value. + /// Also stores the TextMeshPro as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOOutlineColor(this TMP_Text target, Color32 endValue, float duration) + { + TweenerCore t = DOTween.To(() => target.outlineColor, x => target.outlineColor = x, endValue, duration); + t.SetTarget(target); + return t; + } + + /// Tweens a TextMeshPro's glow color to the given value. + /// Also stores the TextMeshPro as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + /// If TRUE will use the fontSharedMaterial instead than the fontMaterial + public static TweenerCore DOGlowColor(this TMP_Text target, Color endValue, float duration, bool useSharedMaterial = false) + { + TweenerCore t = useSharedMaterial + ? target.fontSharedMaterial.DOColor(endValue, "_GlowColor", duration) + : target.fontMaterial.DOColor(endValue, "_GlowColor", duration); + t.SetTarget(target); + return t; + } + + /// Tweens a TextMeshPro's alpha color to the given value. + /// Also stores the TextMeshPro as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOFade(this TMP_Text target, float endValue, float duration) + { + TweenerCore t = DOTween.ToAlpha(() => target.color, x => target.color = x, endValue, duration); + t.SetTarget(target); + return t; + } + + /// Tweens a TextMeshPro faceColor's alpha to the given value. + /// Also stores the TextMeshPro as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOFaceFade(this TMP_Text target, float endValue, float duration) + { + TweenerCore t = DOTween.ToAlpha(() => target.faceColor, x => target.faceColor = x, endValue, duration); + t.SetTarget(target); + return t; + } + + #endregion + + #region Other + + /// Tweens a TextMeshPro's scale to the given value (using correct uniform scale as TMP requires). + /// Also stores the TextMeshPro as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOScale(this TMP_Text target, float endValue, float duration) + { + Transform trans = target.transform; + Vector3 endValueV3 = new Vector3(endValue, endValue, endValue); + TweenerCore t = DOTween.To(() => trans.localScale, x => trans.localScale = x, endValueV3, duration); + t.SetTarget(target); + return t; + } + + /// Tweens a TextMeshPro's fontSize to the given value. + /// Also stores the TextMeshPro as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOFontSize(this TMP_Text target, float endValue, float duration) + { + TweenerCore t = DOTween.To(() => target.fontSize, x => target.fontSize = x, endValue, duration); + t.SetTarget(target); + return t; + } + + /// Tweens a TextMeshPro's maxVisibleCharacters to the given value. + /// Also stores the TextMeshPro as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOMaxVisibleCharacters(this TMP_Text target, int endValue, float duration) + { + TweenerCore t = DOTween.To(() => target.maxVisibleCharacters, x => target.maxVisibleCharacters = x, endValue, duration); + t.SetTarget(target); + return t; + } + + /// Tweens a TextMeshPro's text to the given value. + /// Also stores the TextMeshPro as the tween's target so it can be used for filtered operations + /// The end string to tween toThe duration of the tween + /// If TRUE (default), rich text will be interpreted correctly while animated, + /// otherwise all tags will be considered as normal text + /// The type of scramble mode to use, if any + /// A string containing the characters to use for scrambling. + /// Use as many characters as possible (minimum 10) because DOTween uses a fast scramble mode which gives better results with more characters. + /// Leave it to NULL (default) to use default ones + public static TweenerCore DOText(this TMP_Text target, string endValue, float duration, bool richTextEnabled = true, ScrambleMode scrambleMode = ScrambleMode.None, string scrambleChars = null) + { + TweenerCore t = DOTween.To(() => target.text, x => target.text = x, endValue, duration); + t.SetOptions(richTextEnabled, scrambleMode, scrambleChars) + .SetTarget(target); + return t; + } + + #endregion + } +} +#endif diff --git a/d2/Assets/Demigiant/DOTweenPro/DOTweenTextMeshPro.cs.addon b/d2/Assets/Demigiant/DOTweenPro/DOTweenTextMeshPro.cs.addon new file mode 100644 index 00000000..d6855562 --- /dev/null +++ b/d2/Assets/Demigiant/DOTweenPro/DOTweenTextMeshPro.cs.addon @@ -0,0 +1,141 @@ +// Author: Daniele Giardini - http://www.demigiant.com +// Created: 2015/03/27 19:02 +// +// License Copyright (c) Daniele Giardini. +// This work is subject to the terms at http://dotween.demigiant.com/license.php + +#if false // MODULE_MARKER +using DG.Tweening.Core; +using DG.Tweening.Plugins.Options; +using UnityEngine; +using TMPro; + +namespace DG.Tweening +{ + /// + /// Methods that extend TMP_Text objects and allow to directly create and control tweens from their instances. + /// + public static class ShortcutExtensionsTMPText + { + #region Colors + + /// Tweens a TextMeshPro's color to the given value. + /// Also stores the TextMeshPro as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOColor(this TMP_Text target, Color endValue, float duration) + { + TweenerCore t = DOTween.To(() => target.color, x => target.color = x, endValue, duration); + t.SetTarget(target); + return t; + } + + /// Tweens a TextMeshPro's faceColor to the given value. + /// Also stores the TextMeshPro as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOFaceColor(this TMP_Text target, Color32 endValue, float duration) + { + TweenerCore t = DOTween.To(() => target.faceColor, x => target.faceColor = x, endValue, duration); + t.SetTarget(target); + return t; + } + + /// Tweens a TextMeshPro's outlineColor to the given value. + /// Also stores the TextMeshPro as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOOutlineColor(this TMP_Text target, Color32 endValue, float duration) + { + TweenerCore t = DOTween.To(() => target.outlineColor, x => target.outlineColor = x, endValue, duration); + t.SetTarget(target); + return t; + } + + /// Tweens a TextMeshPro's glow color to the given value. + /// Also stores the TextMeshPro as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + /// If TRUE will use the fontSharedMaterial instead than the fontMaterial + public static TweenerCore DOGlowColor(this TMP_Text target, Color endValue, float duration, bool useSharedMaterial = false) + { + TweenerCore t = useSharedMaterial + ? target.fontSharedMaterial.DOColor(endValue, "_GlowColor", duration) + : target.fontMaterial.DOColor(endValue, "_GlowColor", duration); + t.SetTarget(target); + return t; + } + + /// Tweens a TextMeshPro's alpha color to the given value. + /// Also stores the TextMeshPro as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOFade(this TMP_Text target, float endValue, float duration) + { + TweenerCore t = DOTween.ToAlpha(() => target.color, x => target.color = x, endValue, duration); + t.SetTarget(target); + return t; + } + + /// Tweens a TextMeshPro faceColor's alpha to the given value. + /// Also stores the TextMeshPro as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOFaceFade(this TMP_Text target, float endValue, float duration) + { + TweenerCore t = DOTween.ToAlpha(() => target.faceColor, x => target.faceColor = x, endValue, duration); + t.SetTarget(target); + return t; + } + + #endregion + + #region Other + + /// Tweens a TextMeshPro's scale to the given value (using correct uniform scale as TMP requires). + /// Also stores the TextMeshPro as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOScale(this TMP_Text target, float endValue, float duration) + { + Transform trans = target.transform; + Vector3 endValueV3 = new Vector3(endValue, endValue, endValue); + TweenerCore t = DOTween.To(() => trans.localScale, x => trans.localScale = x, endValueV3, duration); + t.SetTarget(target); + return t; + } + + /// Tweens a TextMeshPro's fontSize to the given value. + /// Also stores the TextMeshPro as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOFontSize(this TMP_Text target, float endValue, float duration) + { + TweenerCore t = DOTween.To(() => target.fontSize, x => target.fontSize = x, endValue, duration); + t.SetTarget(target); + return t; + } + + /// Tweens a TextMeshPro's maxVisibleCharacters to the given value. + /// Also stores the TextMeshPro as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOMaxVisibleCharacters(this TMP_Text target, int endValue, float duration) + { + TweenerCore t = DOTween.To(() => target.maxVisibleCharacters, x => target.maxVisibleCharacters = x, endValue, duration); + t.SetTarget(target); + return t; + } + + /// Tweens a TextMeshPro's text to the given value. + /// Also stores the TextMeshPro as the tween's target so it can be used for filtered operations + /// The end string to tween toThe duration of the tween + /// If TRUE (default), rich text will be interpreted correctly while animated, + /// otherwise all tags will be considered as normal text + /// The type of scramble mode to use, if any + /// A string containing the characters to use for scrambling. + /// Use as many characters as possible (minimum 10) because DOTween uses a fast scramble mode which gives better results with more characters. + /// Leave it to NULL (default) to use default ones + public static TweenerCore DOText(this TMP_Text target, string endValue, float duration, bool richTextEnabled = true, ScrambleMode scrambleMode = ScrambleMode.None, string scrambleChars = null) + { + TweenerCore t = DOTween.To(() => target.text, x => target.text = x, endValue, duration); + t.SetOptions(richTextEnabled, scrambleMode, scrambleChars) + .SetTarget(target); + return t; + } + + #endregion + } +} +#endif diff --git a/d2/Assets/Demigiant/DOTweenPro/DOTweenTextMeshPro.cs.addon.meta b/d2/Assets/Demigiant/DOTweenPro/DOTweenTextMeshPro.cs.addon.meta new file mode 100644 index 00000000..16c94f5b --- /dev/null +++ b/d2/Assets/Demigiant/DOTweenPro/DOTweenTextMeshPro.cs.addon.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 2a5935d4c3cbf544e8dec8f08ac0d540 +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DOTweenPro/DOTweenTextMeshPro.cs.meta b/d2/Assets/Demigiant/DOTweenPro/DOTweenTextMeshPro.cs.meta new file mode 100644 index 00000000..66ff6cdf --- /dev/null +++ b/d2/Assets/Demigiant/DOTweenPro/DOTweenTextMeshPro.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 8fb0d65aa5b048649a3a785b82b8f8db +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DOTweenPro/DOTweenTk2d.cs b/d2/Assets/Demigiant/DOTweenPro/DOTweenTk2d.cs new file mode 100644 index 00000000..0c57bfef --- /dev/null +++ b/d2/Assets/Demigiant/DOTweenPro/DOTweenTk2d.cs @@ -0,0 +1,247 @@ +// Author: Daniele Giardini - http://www.demigiant.com +// Created: 2014/10/27 15:59 +// +// License Copyright (c) Daniele Giardini. +// This work is subject to the terms at http://dotween.demigiant.com/license.php + +#if false // MODULE_MARKER +using DG.Tweening.Core; +using DG.Tweening.Plugins.Options; +using UnityEngine; + +namespace DG.Tweening +{ + /// + /// Methods that extend 2D Toolkit objects and allow to directly create and control tweens from their instances. + /// + public static class ShortcutExtensionsTk2d + { + #region Sprite + + /// Tweens a 2D Toolkit Sprite's dimensions to the given value. + /// Also stores the Sprite as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOScale(this tk2dBaseSprite target, Vector3 endValue, float duration) + { + TweenerCore t = DOTween.To(() => target.scale, x => target.scale = x, endValue, duration); + t.SetTarget(target); + return t; + } + /// Tweens a Sprite's dimensions to the given value. + /// Also stores the Sprite as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOScaleX(this tk2dBaseSprite target, float endValue, float duration) + { + TweenerCore t = DOTween.To(() => target.scale, x => target.scale = x, new Vector3(endValue, 0, 0), duration); + t.SetOptions(AxisConstraint.X) + .SetTarget(target); + return t; + } + /// Tweens a Sprite's dimensions to the given value. + /// Also stores the Sprite as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOScaleY(this tk2dBaseSprite target, float endValue, float duration) + { + TweenerCore t = DOTween.To(() => target.scale, x => target.scale = x, new Vector3(0, endValue, 0), duration); + t.SetOptions(AxisConstraint.Y) + .SetTarget(target); + return t; + } + /// Tweens a Sprite's dimensions to the given value. + /// Also stores the Sprite as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOScaleZ(this tk2dBaseSprite target, float endValue, float duration) + { + TweenerCore t = DOTween.To(() => target.scale, x => target.scale = x, new Vector3(0, 0, endValue), duration); + t.SetOptions(AxisConstraint.Z) + .SetTarget(target); + return t; + } + + /// Tweens a 2D Toolkit Sprite's color to the given value. + /// Also stores the Sprite as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOColor(this tk2dBaseSprite target, Color endValue, float duration) + { + TweenerCore t = DOTween.To(() => target.color, x => target.color = x, endValue, duration); + t.SetTarget(target); + return t; + } + + /// Tweens a 2D Toolkit Sprite's alpha color to the given value. + /// Also stores the Sprite as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOFade(this tk2dBaseSprite target, float endValue, float duration) + { + TweenerCore t = DOTween.ToAlpha(() => target.color, x => target.color = x, endValue, duration); + t.SetTarget(target); + return t; + } + + /// Tweens a 2D Toolkit Sprite's color using the given gradient + /// (NOTE 1: only uses the colors of the gradient, not the alphas - NOTE 2: creates a Sequence, not a Tweener). + /// Also stores the image as the tween's target so it can be used for filtered operations + /// The gradient to useThe duration of the tween + public static Sequence DOGradientColor(this tk2dBaseSprite target, Gradient gradient, float duration) + { + Sequence s = DOTween.Sequence(); + GradientColorKey[] colors = gradient.colorKeys; + int len = colors.Length; + for (int i = 0; i < len; ++i) { + GradientColorKey c = colors[i]; + if (i == 0 && c.time <= 0) { + target.color = c.color; + continue; + } + float colorDuration = i == len - 1 + ? duration - s.Duration(false) // Verifies that total duration is correct + : duration * (i == 0 ? c.time : c.time - colors[i - 1].time); + s.Append(target.DOColor(c.color, colorDuration).SetEase(Ease.Linear)); + } + s.SetTarget(target); + return s; + } + + #endregion + + #region tk2dSlicedSprite + + /// Tweens a 2D Toolkit SlicedSprite's dimensions to the given value. + /// Also stores the SlicedSprite as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOScaleDimensions(this tk2dSlicedSprite target, Vector2 endValue, float duration) + { + TweenerCore t = DOTween.To(() => target.dimensions, x => target.dimensions = x, endValue, duration); + t.SetTarget(target); + return t; + } + /// Tweens a SlicedSprite's dimensions to the given value. + /// Also stores the SlicedSprite as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOScaleDimensionsX(this tk2dSlicedSprite target, float endValue, float duration) + { + TweenerCore t = DOTween.To(() => target.dimensions, x => target.dimensions = x, new Vector2(endValue, 0), duration); + t.SetOptions(AxisConstraint.X) + .SetTarget(target); + return t; + } + /// Tweens a SlicedSprite's dimensions to the given value. + /// Also stores the SlicedSprite as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOScaleDimensionsY(this tk2dSlicedSprite target, float endValue, float duration) + { + TweenerCore t = DOTween.To(() => target.dimensions, x => target.dimensions = x, new Vector2(0, endValue), duration); + t.SetOptions(AxisConstraint.Y) + .SetTarget(target); + return t; + } + + #endregion + + #region TextMesh + + /// Tweens a 2D Toolkit TextMesh's dimensions to the given value. + /// Also stores the TextMesh as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOScale(this tk2dTextMesh target, Vector3 endValue, float duration) + { + TweenerCore t = DOTween.To(() => target.scale, x => target.scale = x, endValue, duration); + t.SetTarget(target); + return t; + } + /// Tweens a 2D Toolkit TextMesh's dimensions to the given value. + /// Also stores the TextMesh as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOScaleX(this tk2dTextMesh target, float endValue, float duration) + { + TweenerCore t = DOTween.To(() => target.scale, x => target.scale = x, new Vector3(endValue, 0, 0), duration); + t.SetOptions(AxisConstraint.X) + .SetTarget(target); + return t; + } + /// Tweens a 2D Toolkit TextMesh's dimensions to the given value. + /// Also stores the TextMesh as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOScaleY(this tk2dTextMesh target, float endValue, float duration) + { + TweenerCore t = DOTween.To(() => target.scale, x => target.scale = x, new Vector3(0, endValue, 0), duration); + t.SetOptions(AxisConstraint.Y) + .SetTarget(target); + return t; + } + /// Tweens a 2D Toolkit TextMesh's dimensions to the given value. + /// Also stores the TextMesh as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOScaleZ(this tk2dTextMesh target, float endValue, float duration) + { + TweenerCore t = DOTween.To(() => target.scale, x => target.scale = x, new Vector3(0, 0, endValue), duration); + t.SetOptions(AxisConstraint.Z) + .SetTarget(target); + return t; + } + + /// Tweens a 2D Toolkit TextMesh's color to the given value. + /// Also stores the TextMesh as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOColor(this tk2dTextMesh target, Color endValue, float duration) + { + TweenerCore t = DOTween.To(() => target.color, x => target.color = x, endValue, duration); + t.SetTarget(target); + return t; + } + + /// Tweens a 2D Toolkit TextMesh's alpha color to the given value. + /// Also stores the TextMesh as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOFade(this tk2dTextMesh target, float endValue, float duration) + { + TweenerCore t = DOTween.ToAlpha(() => target.color, x => target.color = x, endValue, duration); + t.SetTarget(target); + return t; + } + + /// Tweens a 2D Toolkit TextMesh's color using the given gradient + /// (NOTE 1: only uses the colors of the gradient, not the alphas - NOTE 2: creates a Sequence, not a Tweener). + /// Also stores the image as the tween's target so it can be used for filtered operations + /// The gradient to useThe duration of the tween + public static Sequence DOGradientColor(this tk2dTextMesh target, Gradient gradient, float duration) + { + Sequence s = DOTween.Sequence(); + GradientColorKey[] colors = gradient.colorKeys; + int len = colors.Length; + for (int i = 0; i < len; ++i) { + GradientColorKey c = colors[i]; + if (i == 0 && c.time <= 0) { + target.color = c.color; + continue; + } + float colorDuration = i == len - 1 + ? duration - s.Duration(false) // Verifies that total duration is correct + : duration * (i == 0 ? c.time : c.time - colors[i - 1].time); + s.Append(target.DOColor(c.color, colorDuration).SetEase(Ease.Linear)); + } + s.SetTarget(target); + return s; + } + + /// Tweens a tk2dTextMesh's text to the given value. + /// Also stores the tk2dTextMesh as the tween's target so it can be used for filtered operations + /// The end string to tween toThe duration of the tween + /// If TRUE (default), rich text will be interpreted correctly while animated, + /// otherwise all tags will be considered as normal text + /// The type of scramble mode to use, if any + /// A string containing the characters to use for scrambling. + /// Use as many characters as possible (minimum 10) because DOTween uses a fast scramble mode which gives better results with more characters. + /// Leave it to NULL (default) to use default ones + public static TweenerCore DOText(this tk2dTextMesh target, string endValue, float duration, bool richTextEnabled = true, ScrambleMode scrambleMode = ScrambleMode.None, string scrambleChars = null) + { + TweenerCore t = DOTween.To(() => target.text, x => target.text = x, endValue, duration); + t.SetOptions(richTextEnabled, scrambleMode, scrambleChars) + .SetTarget(target); + return t; + } + + #endregion + } +} +#endif diff --git a/d2/Assets/Demigiant/DOTweenPro/DOTweenTk2d.cs.addon b/d2/Assets/Demigiant/DOTweenPro/DOTweenTk2d.cs.addon new file mode 100644 index 00000000..7b7c9883 --- /dev/null +++ b/d2/Assets/Demigiant/DOTweenPro/DOTweenTk2d.cs.addon @@ -0,0 +1,245 @@ +// Author: Daniele Giardini - http://www.demigiant.com +// Created: 2014/10/27 15:59 +// +// License Copyright (c) Daniele Giardini. +// This work is subject to the terms at http://dotween.demigiant.com/license.php + +#if false // MODULE_MARKER +using DG.Tweening.Core; +using DG.Tweening.Plugins.Options; +using UnityEngine; + +namespace DG.Tweening +{ + /// + /// Methods that extend 2D Toolkit objects and allow to directly create and control tweens from their instances. + /// + public static class ShortcutExtensionsTk2d + { + #region Sprite + + /// Tweens a 2D Toolkit Sprite's dimensions to the given value. + /// Also stores the Sprite as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOScale(this tk2dBaseSprite target, Vector3 endValue, float duration) + { + TweenerCore t = DOTween.To(() => target.scale, x => target.scale = x, endValue, duration); + t.SetTarget(target); + return t; + } + /// Tweens a Sprite's dimensions to the given value. + /// Also stores the Sprite as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOScaleX(this tk2dBaseSprite target, float endValue, float duration) + { + TweenerCore t = DOTween.To(() => target.scale, x => target.scale = x, new Vector3(endValue, 0, 0), duration); + t.SetOptions(AxisConstraint.X) + .SetTarget(target); + return t; + } + /// Tweens a Sprite's dimensions to the given value. + /// Also stores the Sprite as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOScaleY(this tk2dBaseSprite target, float endValue, float duration) + { + TweenerCore t = DOTween.To(() => target.scale, x => target.scale = x, new Vector3(0, endValue, 0), duration); + t.SetOptions(AxisConstraint.Y) + .SetTarget(target); + return t; + } + /// Tweens a Sprite's dimensions to the given value. + /// Also stores the Sprite as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOScaleZ(this tk2dBaseSprite target, float endValue, float duration) + { + TweenerCore t = DOTween.To(() => target.scale, x => target.scale = x, new Vector3(0, 0, endValue), duration); + t.SetOptions(AxisConstraint.Z) + .SetTarget(target); + return t; + } + + /// Tweens a 2D Toolkit Sprite's color to the given value. + /// Also stores the Sprite as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOColor(this tk2dBaseSprite target, Color endValue, float duration) + { + TweenerCore t = DOTween.To(() => target.color, x => target.color = x, endValue, duration); + t.SetTarget(target); + return t; + } + + /// Tweens a 2D Toolkit Sprite's alpha color to the given value. + /// Also stores the Sprite as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOFade(this tk2dBaseSprite target, float endValue, float duration) + { + TweenerCore t = DOTween.ToAlpha(() => target.color, x => target.color = x, endValue, duration); + t.SetTarget(target); + return t; + } + + /// Tweens a 2D Toolkit Sprite's color using the given gradient + /// (NOTE 1: only uses the colors of the gradient, not the alphas - NOTE 2: creates a Sequence, not a Tweener). + /// Also stores the image as the tween's target so it can be used for filtered operations + /// The gradient to useThe duration of the tween + public static Sequence DOGradientColor(this tk2dBaseSprite target, Gradient gradient, float duration) + { + Sequence s = DOTween.Sequence(); + GradientColorKey[] colors = gradient.colorKeys; + int len = colors.Length; + for (int i = 0; i < len; ++i) { + GradientColorKey c = colors[i]; + if (i == 0 && c.time <= 0) { + target.color = c.color; + continue; + } + float colorDuration = i == len - 1 + ? duration - s.Duration(false) // Verifies that total duration is correct + : duration * (i == 0 ? c.time : c.time - colors[i - 1].time); + s.Append(target.DOColor(c.color, colorDuration).SetEase(Ease.Linear)); + } + return s; + } + + #endregion + + #region tk2dSlicedSprite + + /// Tweens a 2D Toolkit SlicedSprite's dimensions to the given value. + /// Also stores the SlicedSprite as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOScaleDimensions(this tk2dSlicedSprite target, Vector2 endValue, float duration) + { + TweenerCore t = DOTween.To(() => target.dimensions, x => target.dimensions = x, endValue, duration); + t.SetTarget(target); + return t; + } + /// Tweens a SlicedSprite's dimensions to the given value. + /// Also stores the SlicedSprite as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOScaleDimensionsX(this tk2dSlicedSprite target, float endValue, float duration) + { + TweenerCore t = DOTween.To(() => target.dimensions, x => target.dimensions = x, new Vector2(endValue, 0), duration); + t.SetOptions(AxisConstraint.X) + .SetTarget(target); + return t; + } + /// Tweens a SlicedSprite's dimensions to the given value. + /// Also stores the SlicedSprite as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOScaleDimensionsY(this tk2dSlicedSprite target, float endValue, float duration) + { + TweenerCore t = DOTween.To(() => target.dimensions, x => target.dimensions = x, new Vector2(0, endValue), duration); + t.SetOptions(AxisConstraint.Y) + .SetTarget(target); + return t; + } + + #endregion + + #region TextMesh + + /// Tweens a 2D Toolkit TextMesh's dimensions to the given value. + /// Also stores the TextMesh as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOScale(this tk2dTextMesh target, Vector3 endValue, float duration) + { + TweenerCore t = DOTween.To(() => target.scale, x => target.scale = x, endValue, duration); + t.SetTarget(target); + return t; + } + /// Tweens a 2D Toolkit TextMesh's dimensions to the given value. + /// Also stores the TextMesh as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOScaleX(this tk2dTextMesh target, float endValue, float duration) + { + TweenerCore t = DOTween.To(() => target.scale, x => target.scale = x, new Vector3(endValue, 0, 0), duration); + t.SetOptions(AxisConstraint.X) + .SetTarget(target); + return t; + } + /// Tweens a 2D Toolkit TextMesh's dimensions to the given value. + /// Also stores the TextMesh as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOScaleY(this tk2dTextMesh target, float endValue, float duration) + { + TweenerCore t = DOTween.To(() => target.scale, x => target.scale = x, new Vector3(0, endValue, 0), duration); + t.SetOptions(AxisConstraint.Y) + .SetTarget(target); + return t; + } + /// Tweens a 2D Toolkit TextMesh's dimensions to the given value. + /// Also stores the TextMesh as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOScaleZ(this tk2dTextMesh target, float endValue, float duration) + { + TweenerCore t = DOTween.To(() => target.scale, x => target.scale = x, new Vector3(0, 0, endValue), duration); + t.SetOptions(AxisConstraint.Z) + .SetTarget(target); + return t; + } + + /// Tweens a 2D Toolkit TextMesh's color to the given value. + /// Also stores the TextMesh as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOColor(this tk2dTextMesh target, Color endValue, float duration) + { + TweenerCore t = DOTween.To(() => target.color, x => target.color = x, endValue, duration); + t.SetTarget(target); + return t; + } + + /// Tweens a 2D Toolkit TextMesh's alpha color to the given value. + /// Also stores the TextMesh as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOFade(this tk2dTextMesh target, float endValue, float duration) + { + TweenerCore t = DOTween.ToAlpha(() => target.color, x => target.color = x, endValue, duration); + t.SetTarget(target); + return t; + } + + /// Tweens a 2D Toolkit TextMesh's color using the given gradient + /// (NOTE 1: only uses the colors of the gradient, not the alphas - NOTE 2: creates a Sequence, not a Tweener). + /// Also stores the image as the tween's target so it can be used for filtered operations + /// The gradient to useThe duration of the tween + public static Sequence DOGradientColor(this tk2dTextMesh target, Gradient gradient, float duration) + { + Sequence s = DOTween.Sequence(); + GradientColorKey[] colors = gradient.colorKeys; + int len = colors.Length; + for (int i = 0; i < len; ++i) { + GradientColorKey c = colors[i]; + if (i == 0 && c.time <= 0) { + target.color = c.color; + continue; + } + float colorDuration = i == len - 1 + ? duration - s.Duration(false) // Verifies that total duration is correct + : duration * (i == 0 ? c.time : c.time - colors[i - 1].time); + s.Append(target.DOColor(c.color, colorDuration).SetEase(Ease.Linear)); + } + return s; + } + + /// Tweens a tk2dTextMesh's text to the given value. + /// Also stores the tk2dTextMesh as the tween's target so it can be used for filtered operations + /// The end string to tween toThe duration of the tween + /// If TRUE (default), rich text will be interpreted correctly while animated, + /// otherwise all tags will be considered as normal text + /// The type of scramble mode to use, if any + /// A string containing the characters to use for scrambling. + /// Use as many characters as possible (minimum 10) because DOTween uses a fast scramble mode which gives better results with more characters. + /// Leave it to NULL (default) to use default ones + public static TweenerCore DOText(this tk2dTextMesh target, string endValue, float duration, bool richTextEnabled = true, ScrambleMode scrambleMode = ScrambleMode.None, string scrambleChars = null) + { + TweenerCore t = DOTween.To(() => target.text, x => target.text = x, endValue, duration); + t.SetOptions(richTextEnabled, scrambleMode, scrambleChars) + .SetTarget(target); + return t; + } + + #endregion + } +} +#endif diff --git a/d2/Assets/Demigiant/DOTweenPro/DOTweenTk2d.cs.addon.meta b/d2/Assets/Demigiant/DOTweenPro/DOTweenTk2d.cs.addon.meta new file mode 100644 index 00000000..68cd7944 --- /dev/null +++ b/d2/Assets/Demigiant/DOTweenPro/DOTweenTk2d.cs.addon.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 6ec99626716d95c4ba56a6d6f9dec583 +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DOTweenPro/DOTweenTk2d.cs.meta b/d2/Assets/Demigiant/DOTweenPro/DOTweenTk2d.cs.meta new file mode 100644 index 00000000..d9c79021 --- /dev/null +++ b/d2/Assets/Demigiant/DOTweenPro/DOTweenTk2d.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: b590cd7c24ffa5d4faa5b6fa993cccad +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DOTweenPro/Editor.meta b/d2/Assets/Demigiant/DOTweenPro/Editor.meta new file mode 100644 index 00000000..dc35556a --- /dev/null +++ b/d2/Assets/Demigiant/DOTweenPro/Editor.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 4dd79220342cb7542889b097c1da1eee +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DOTweenPro/Editor/DOTweenAnimationInspector.cs b/d2/Assets/Demigiant/DOTweenPro/Editor/DOTweenAnimationInspector.cs new file mode 100644 index 00000000..7f98ce9a --- /dev/null +++ b/d2/Assets/Demigiant/DOTweenPro/Editor/DOTweenAnimationInspector.cs @@ -0,0 +1,745 @@ +// Author: Daniele Giardini - http://www.demigiant.com +// Created: 2015/03/12 16:03 + +using System; +using System.Collections.Generic; +using System.IO; +using DG.DemiEditor; +using DG.DOTweenEditor.Core; +using DG.DOTweenEditor.UI; +using DG.Tweening; +using DG.Tweening.Core; +using UnityEditor; +using UnityEngine; +using DOTweenSettings = DG.Tweening.Core.DOTweenSettings; +#if true // UI_MARKER +using UnityEngine.UI; +#endif +#if false // TEXTMESHPRO_MARKER + using TMPro; +#endif + +namespace DG.DOTweenEditor +{ + [CustomEditor(typeof(DOTweenAnimation))] + public class DOTweenAnimationInspector : ABSAnimationInspector + { + enum FadeTargetType + { + CanvasGroup, + Image + } + + enum ChooseTargetMode + { + None, + BetweenCanvasGroupAndImage + } + + static readonly Dictionary _AnimationTypeToComponent = new Dictionary() { + { DOTweenAnimation.AnimationType.Move, new[] { +#if true // PHYSICS_MARKER + typeof(Rigidbody), +#endif +#if true // PHYSICS2D_MARKER + typeof(Rigidbody2D), +#endif +#if true // UI_MARKER + typeof(RectTransform), +#endif + typeof(Transform) + }}, + { DOTweenAnimation.AnimationType.Rotate, new[] { +#if true // PHYSICS_MARKER + typeof(Rigidbody), +#endif +#if true // PHYSICS2D_MARKER + typeof(Rigidbody2D), +#endif + typeof(Transform) + }}, + { DOTweenAnimation.AnimationType.LocalMove, new[] { typeof(Transform) } }, + { DOTweenAnimation.AnimationType.LocalRotate, new[] { typeof(Transform) } }, + { DOTweenAnimation.AnimationType.Scale, new[] { typeof(Transform) } }, + { DOTweenAnimation.AnimationType.Color, new[] { + typeof(Light), +#if true // SPRITE_MARKER + typeof(SpriteRenderer), +#endif +#if true // UI_MARKER + typeof(Image), typeof(Text), typeof(RawImage), +#endif + typeof(Renderer), + }}, + { DOTweenAnimation.AnimationType.Fade, new[] { + typeof(Light), +#if true // SPRITE_MARKER + typeof(SpriteRenderer), +#endif +#if true // UI_MARKER + typeof(Image), typeof(Text), typeof(CanvasGroup), typeof(RawImage), +#endif + typeof(Renderer), + }}, +#if true // UI_MARKER + { DOTweenAnimation.AnimationType.Text, new[] { typeof(Text) } }, +#endif + { DOTweenAnimation.AnimationType.PunchPosition, new[] { +#if true // UI_MARKER + typeof(RectTransform), +#endif + typeof(Transform) + }}, + { DOTweenAnimation.AnimationType.PunchRotation, new[] { typeof(Transform) } }, + { DOTweenAnimation.AnimationType.PunchScale, new[] { typeof(Transform) } }, + { DOTweenAnimation.AnimationType.ShakePosition, new[] { +#if true // UI_MARKER + typeof(RectTransform), +#endif + typeof(Transform) + }}, + { DOTweenAnimation.AnimationType.ShakeRotation, new[] { typeof(Transform) } }, + { DOTweenAnimation.AnimationType.ShakeScale, new[] { typeof(Transform) } }, + { DOTweenAnimation.AnimationType.CameraAspect, new[] { typeof(Camera) } }, + { DOTweenAnimation.AnimationType.CameraBackgroundColor, new[] { typeof(Camera) } }, + { DOTweenAnimation.AnimationType.CameraFieldOfView, new[] { typeof(Camera) } }, + { DOTweenAnimation.AnimationType.CameraOrthoSize, new[] { typeof(Camera) } }, + { DOTweenAnimation.AnimationType.CameraPixelRect, new[] { typeof(Camera) } }, + { DOTweenAnimation.AnimationType.CameraRect, new[] { typeof(Camera) } }, +#if true // UI_MARKER + { DOTweenAnimation.AnimationType.UIWidthHeight, new[] { typeof(RectTransform) } }, +#endif + }; + +#if false // TK2D_MARKER + static readonly Dictionary _Tk2dAnimationTypeToComponent = new Dictionary() { + { DOTweenAnimation.AnimationType.Scale, new[] { typeof(tk2dBaseSprite), typeof(tk2dTextMesh) } }, + { DOTweenAnimation.AnimationType.Color, new[] { typeof(tk2dBaseSprite), typeof(tk2dTextMesh) } }, + { DOTweenAnimation.AnimationType.Fade, new[] { typeof(tk2dBaseSprite), typeof(tk2dTextMesh) } }, + { DOTweenAnimation.AnimationType.Text, new[] { typeof(tk2dTextMesh) } } + }; +#endif +#if false // TEXTMESHPRO_MARKER + static readonly Dictionary _TMPAnimationTypeToComponent = new Dictionary() { + { DOTweenAnimation.AnimationType.Color, new[] { typeof(TextMeshPro), typeof(TextMeshProUGUI) } }, + { DOTweenAnimation.AnimationType.Fade, new[] { typeof(TextMeshPro), typeof(TextMeshProUGUI) } }, + { DOTweenAnimation.AnimationType.Text, new[] { typeof(TextMeshPro), typeof(TextMeshProUGUI) } } + }; +#endif + + static readonly string[] _AnimationType = new[] { + "None", + "Move", "LocalMove", + "Rotate", "LocalRotate", + "Scale", + "Color", "Fade", +#if true // UI_MARKER + "Text", +#endif +#if false // TK2D_MARKER + "Text", +#endif +#if false // TEXTMESHPRO_MARKER + "Text", +#endif +#if true // UI_MARKER + "UIWidthHeight", +#endif + "Punch/Position", "Punch/Rotation", "Punch/Scale", + "Shake/Position", "Shake/Rotation", "Shake/Scale", + "Camera/Aspect", "Camera/BackgroundColor", "Camera/FieldOfView", "Camera/OrthoSize", "Camera/PixelRect", "Camera/Rect" + }; + static string[] _animationTypeNoSlashes; // _AnimationType list without slashes in values + static string[] _datString; // String representation of DOTweenAnimation enum (here for caching reasons) + + DOTweenAnimation _src; + DOTweenSettings _settings; + bool _runtimeEditMode; // If TRUE allows to change and save stuff at runtime + bool _refreshRequired; // If TRUE refreshes components data + int _totComponentsOnSrc; // Used to determine if a Component is added or removed from the source + bool _isLightSrc; // Used to determine if we're tweening a Light, to set the max Fade value to more than 1 +#pragma warning disable 414 + ChooseTargetMode _chooseTargetMode = ChooseTargetMode.None; +#pragma warning restore 414 + + static readonly GUIContent _GuiC_selfTarget_true = new GUIContent( + "SELF", "Will animate components on this gameObject" + ); + static readonly GUIContent _GuiC_selfTarget_false = new GUIContent( + "OTHER", "Will animate components on the given gameObject instead than on this one" + ); + static readonly GUIContent _GuiC_tweenTargetIsTargetGO_true = new GUIContent( + "Use As Tween Target", "Will set the tween target (via SetTarget, used to control a tween directly from a target) to the \"OTHER\" gameObject" + ); + static readonly GUIContent _GuiC_tweenTargetIsTargetGO_false = new GUIContent( + "Use As Tween Target", "Will set the tween target (via SetTarget, used to control a tween directly from a target) to the gameObject containing this animation, not the \"OTHER\" one" + ); + + #region MonoBehaviour Methods + + void OnEnable() + { + _src = target as DOTweenAnimation; + _settings = DOTweenUtilityWindow.GetDOTweenSettings(); + + onStartProperty = base.serializedObject.FindProperty("onStart"); + onPlayProperty = base.serializedObject.FindProperty("onPlay"); + onUpdateProperty = base.serializedObject.FindProperty("onUpdate"); + onStepCompleteProperty = base.serializedObject.FindProperty("onStepComplete"); + onCompleteProperty = base.serializedObject.FindProperty("onComplete"); + onRewindProperty = base.serializedObject.FindProperty("onRewind"); + onTweenCreatedProperty = base.serializedObject.FindProperty("onTweenCreated"); + + // Convert _AnimationType to _animationTypeNoSlashes + int len = _AnimationType.Length; + _animationTypeNoSlashes = new string[len]; + for (int i = 0; i < len; ++i) { + string a = _AnimationType[i]; + a = a.Replace("/", ""); + _animationTypeNoSlashes[i] = a; + } + } + + void OnDisable() + { + DOTweenPreviewManager.StopAllPreviews(); + } + + override public void OnInspectorGUI() + { + base.OnInspectorGUI(); + + GUILayout.Space(3); + EditorGUIUtils.SetGUIStyles(); + + bool playMode = Application.isPlaying; + _runtimeEditMode = _runtimeEditMode && playMode; + + GUILayout.BeginHorizontal(); + EditorGUIUtils.InspectorLogo(); + GUILayout.Label(_src.animationType.ToString() + (string.IsNullOrEmpty(_src.id) ? "" : " [" + _src.id + "]"), EditorGUIUtils.sideLogoIconBoldLabelStyle); + // Up-down buttons + GUILayout.FlexibleSpace(); + if (GUILayout.Button("▲", DeGUI.styles.button.toolIco)) UnityEditorInternal.ComponentUtility.MoveComponentUp(_src); + if (GUILayout.Button("▼", DeGUI.styles.button.toolIco)) UnityEditorInternal.ComponentUtility.MoveComponentDown(_src); + GUILayout.EndHorizontal(); + + if (playMode) { + if (_runtimeEditMode) { + + } else { + GUILayout.Space(8); + GUILayout.Label("Animation Editor disabled while in play mode", EditorGUIUtils.wordWrapLabelStyle); + if (!_src.isActive) { + GUILayout.Label("This animation has been toggled as inactive and won't be generated", EditorGUIUtils.wordWrapLabelStyle); + GUI.enabled = false; + } + if (GUILayout.Button(new GUIContent("Activate Edit Mode", "Switches to Runtime Edit Mode, where you can change animations values and restart them"))) { + _runtimeEditMode = true; + } + GUILayout.Label("NOTE: when using DOPlayNext, the sequence is determined by the DOTweenAnimation Components order in the target GameObject's Inspector", EditorGUIUtils.wordWrapLabelStyle); + GUILayout.Space(10); + if (!_runtimeEditMode) return; + } + } + + Undo.RecordObject(_src, "DOTween Animation"); + Undo.RecordObject(_settings, "DOTween Animation"); + +// _src.isValid = Validate(); // Moved down + + EditorGUIUtility.labelWidth = 110; + + if (playMode) { + GUILayout.Space(4); + DeGUILayout.Toolbar("Edit Mode Commands"); + DeGUILayout.BeginVBox(DeGUI.styles.box.stickyTop); + GUILayout.BeginHorizontal(); + if (GUILayout.Button("TogglePause")) _src.tween.TogglePause(); + if (GUILayout.Button("Rewind")) _src.tween.Rewind(); + if (GUILayout.Button("Restart")) _src.tween.Restart(); + GUILayout.EndHorizontal(); + if (GUILayout.Button("Commit changes and restart")) { + _src.tween.Rewind(); + _src.tween.Kill(); + if (_src.isValid) { + _src.CreateTween(); + _src.tween.Play(); + } + } + GUILayout.Label("To apply your changes when exiting Play mode, use the Component's upper right menu and choose \"Copy Component\", then \"Paste Component Values\" after exiting Play mode", DeGUI.styles.label.wordwrap); + DeGUILayout.EndVBox(); + } else { + GUILayout.BeginHorizontal(); + bool hasManager = _src.GetComponent() != null; + EditorGUI.BeginChangeCheck(); + _settings.showPreviewPanel = hasManager + ? DeGUILayout.ToggleButton(_settings.showPreviewPanel, "Preview Controls", styles.custom.inlineToggle) + : DeGUILayout.ToggleButton(_settings.showPreviewPanel, "Preview Controls", styles.custom.inlineToggle, GUILayout.Width(120)); + if (EditorGUI.EndChangeCheck()) { + EditorUtility.SetDirty(_settings); + DOTweenPreviewManager.StopAllPreviews(); + } + if (!hasManager) { + if (GUILayout.Button(new GUIContent("Add Manager", "Adds a manager component which allows you to choose additional options for this gameObject"))) { + _src.gameObject.AddComponent(); + } + } + GUILayout.EndHorizontal(); + } + + // Preview in editor + bool isPreviewing = _settings.showPreviewPanel ? DOTweenPreviewManager.PreviewGUI(_src) : false; + + EditorGUI.BeginDisabledGroup(isPreviewing); + // Choose target + GUILayout.BeginHorizontal(); + _src.isActive = EditorGUILayout.Toggle(new GUIContent("", "If unchecked, this animation will not be created"), _src.isActive, GUILayout.Width(14)); + EditorGUI.BeginChangeCheck(); + EditorGUI.BeginChangeCheck(); + _src.targetIsSelf = DeGUILayout.ToggleButton( + _src.targetIsSelf, _src.targetIsSelf ? _GuiC_selfTarget_true : _GuiC_selfTarget_false, + new Color(1f, 0.78f, 0f), DeGUI.colors.bg.toggleOn, new Color(0.33f, 0.14f, 0.02f), DeGUI.colors.content.toggleOn, + null, GUILayout.Width(47) + ); + bool innerChanged = EditorGUI.EndChangeCheck(); + if (innerChanged) { + _src.targetGO = null; + GUI.changed = true; + } + if (_src.targetIsSelf) GUILayout.Label(_GuiC_selfTarget_true.tooltip); + else { + using (new DeGUI.ColorScope(null, null, _src.targetGO == null ? Color.red : Color.white)) { + _src.targetGO = (GameObject)EditorGUILayout.ObjectField(_src.targetGO, typeof(GameObject), true); + } + _src.tweenTargetIsTargetGO = DeGUILayout.ToggleButton( + _src.tweenTargetIsTargetGO, _src.tweenTargetIsTargetGO ? _GuiC_tweenTargetIsTargetGO_true : _GuiC_tweenTargetIsTargetGO_false, + GUILayout.Width(131) + ); + } + bool check = EditorGUI.EndChangeCheck(); + if (check) _refreshRequired = true; + GUILayout.EndHorizontal(); + + GameObject targetGO = _src.targetIsSelf ? _src.gameObject : _src.targetGO; + + if (targetGO == null) { + // Uses external target gameObject but it's not set + if (_src.targetGO != null || _src.target != null) { + _src.targetGO = null; + _src.target = null; + GUI.changed = true; + } + } else { + GUILayout.BeginHorizontal(); + DOTweenAnimation.AnimationType prevAnimType = _src.animationType; +// _src.animationType = (DOTweenAnimation.AnimationType)EditorGUILayout.EnumPopup(_src.animationType, EditorGUIUtils.popupButton); + GUI.enabled = GUI.enabled && _src.isActive; + _src.animationType = AnimationToDOTweenAnimationType(_AnimationType[EditorGUILayout.Popup(DOTweenAnimationTypeToPopupId(_src.animationType), _AnimationType)]); + _src.autoPlay = DeGUILayout.ToggleButton(_src.autoPlay, new GUIContent("AutoPlay", "If selected, the tween will play automatically")); + _src.autoKill = DeGUILayout.ToggleButton(_src.autoKill, new GUIContent("AutoKill", "If selected, the tween will be killed when it completes, and won't be reusable")); + GUILayout.EndHorizontal(); + if (prevAnimType != _src.animationType) { + // Set default optional values based on animation type + _src.endValueTransform = null; + _src.useTargetAsV3 = false; + switch (_src.animationType) { + case DOTweenAnimation.AnimationType.Move: + case DOTweenAnimation.AnimationType.LocalMove: + case DOTweenAnimation.AnimationType.Rotate: + case DOTweenAnimation.AnimationType.LocalRotate: + case DOTweenAnimation.AnimationType.Scale: + _src.endValueV3 = Vector3.zero; + _src.endValueFloat = 0; + _src.optionalBool0 = _src.animationType == DOTweenAnimation.AnimationType.Scale; + break; + case DOTweenAnimation.AnimationType.UIWidthHeight: + _src.endValueV3 = Vector3.zero; + _src.endValueFloat = 0; + _src.optionalBool0 = _src.animationType == DOTweenAnimation.AnimationType.UIWidthHeight; + break; + case DOTweenAnimation.AnimationType.Color: + case DOTweenAnimation.AnimationType.Fade: + _isLightSrc = targetGO.GetComponent() != null; + _src.endValueFloat = 0; + break; + case DOTweenAnimation.AnimationType.Text: + _src.optionalBool0 = true; + break; + case DOTweenAnimation.AnimationType.PunchPosition: + case DOTweenAnimation.AnimationType.PunchRotation: + case DOTweenAnimation.AnimationType.PunchScale: + _src.endValueV3 = _src.animationType == DOTweenAnimation.AnimationType.PunchRotation ? new Vector3(0, 180, 0) : Vector3.one; + _src.optionalFloat0 = 1; + _src.optionalInt0 = 10; + _src.optionalBool0 = false; + break; + case DOTweenAnimation.AnimationType.ShakePosition: + case DOTweenAnimation.AnimationType.ShakeRotation: + case DOTweenAnimation.AnimationType.ShakeScale: + _src.endValueV3 = _src.animationType == DOTweenAnimation.AnimationType.ShakeRotation ? new Vector3(90, 90, 90) : Vector3.one; + _src.optionalInt0 = 10; + _src.optionalFloat0 = 90; + _src.optionalBool0 = false; + break; + case DOTweenAnimation.AnimationType.CameraAspect: + case DOTweenAnimation.AnimationType.CameraFieldOfView: + case DOTweenAnimation.AnimationType.CameraOrthoSize: + _src.endValueFloat = 0; + break; + case DOTweenAnimation.AnimationType.CameraPixelRect: + case DOTweenAnimation.AnimationType.CameraRect: + _src.endValueRect = new Rect(0, 0, 0, 0); + break; + } + } + if (_src.animationType == DOTweenAnimation.AnimationType.None) { + _src.isValid = false; + if (GUI.changed) EditorUtility.SetDirty(_src); + return; + } + + if (_refreshRequired || prevAnimType != _src.animationType || ComponentsChanged()) { + _refreshRequired = false; + _src.isValid = Validate(targetGO); + // See if we need to choose between multiple targets +#if true // UI_MARKER + if (_src.animationType == DOTweenAnimation.AnimationType.Fade && targetGO.GetComponent() != null && targetGO.GetComponent() != null) { + _chooseTargetMode = ChooseTargetMode.BetweenCanvasGroupAndImage; + // Reassign target and forcedTargetType if lost + if (_src.forcedTargetType == DOTweenAnimation.TargetType.Unset) _src.forcedTargetType = _src.targetType; + switch (_src.forcedTargetType) { + case DOTweenAnimation.TargetType.CanvasGroup: + _src.target = targetGO.GetComponent(); + break; + case DOTweenAnimation.TargetType.Image: + _src.target = targetGO.GetComponent(); + break; + } + } else { +#endif + _chooseTargetMode = ChooseTargetMode.None; + _src.forcedTargetType = DOTweenAnimation.TargetType.Unset; +#if true // UI_MARKER + } +#endif + } + + if (!_src.isValid) { + GUI.color = Color.red; + GUILayout.BeginVertical(GUI.skin.box); + GUILayout.Label("No valid Component was found for the selected animation", EditorGUIUtils.wordWrapLabelStyle); + GUILayout.EndVertical(); + GUI.color = Color.white; + if (GUI.changed) EditorUtility.SetDirty(_src); + return; + } + +#if true // UI_MARKER + // Special cases in which multiple target types could be used (set after validation) + if (_chooseTargetMode == ChooseTargetMode.BetweenCanvasGroupAndImage && _src.forcedTargetType != DOTweenAnimation.TargetType.Unset) { + FadeTargetType fadeTargetType = (FadeTargetType)Enum.Parse(typeof(FadeTargetType), _src.forcedTargetType.ToString()); + DOTweenAnimation.TargetType prevTargetType = _src.forcedTargetType; + _src.forcedTargetType = (DOTweenAnimation.TargetType)Enum.Parse(typeof(DOTweenAnimation.TargetType), EditorGUILayout.EnumPopup(_src.animationType + " Target", fadeTargetType).ToString()); + if (_src.forcedTargetType != prevTargetType) { + // Target type change > assign correct target + switch (_src.forcedTargetType) { + case DOTweenAnimation.TargetType.CanvasGroup: + _src.target = targetGO.GetComponent(); + break; + case DOTweenAnimation.TargetType.Image: + _src.target = targetGO.GetComponent(); + break; + } + } + } +#endif + + GUILayout.BeginHorizontal(); + _src.duration = EditorGUILayout.FloatField("Duration", _src.duration); + if (_src.duration < 0) _src.duration = 0; + _src.isSpeedBased = DeGUILayout.ToggleButton(_src.isSpeedBased, new GUIContent("SpeedBased", "If selected, the duration will count as units/degree x second"), DeGUI.styles.button.tool, GUILayout.Width(75)); + GUILayout.EndHorizontal(); + _src.delay = EditorGUILayout.FloatField("Delay", _src.delay); + if (_src.delay < 0) _src.delay = 0; + _src.isIndependentUpdate = EditorGUILayout.Toggle("Ignore TimeScale", _src.isIndependentUpdate); + _src.easeType = EditorGUIUtils.FilteredEasePopup("Ease", _src.easeType); + if (_src.easeType == Ease.INTERNAL_Custom) { + _src.easeCurve = EditorGUILayout.CurveField(" Ease Curve", _src.easeCurve); + } + _src.loops = EditorGUILayout.IntField(new GUIContent("Loops", "Set to -1 for infinite loops"), _src.loops); + if (_src.loops < -1) _src.loops = -1; + if (_src.loops > 1 || _src.loops == -1) + _src.loopType = (LoopType)EditorGUILayout.EnumPopup(" Loop Type", _src.loopType); + _src.id = EditorGUILayout.TextField("ID", _src.id); + + bool canBeRelative = true; + // End value and eventual specific options + switch (_src.animationType) { + case DOTweenAnimation.AnimationType.Move: + case DOTweenAnimation.AnimationType.LocalMove: + GUIEndValueV3(targetGO, _src.animationType == DOTweenAnimation.AnimationType.Move); + _src.optionalBool0 = EditorGUILayout.Toggle(" Snapping", _src.optionalBool0); + canBeRelative = !_src.useTargetAsV3; + break; + case DOTweenAnimation.AnimationType.Rotate: + case DOTweenAnimation.AnimationType.LocalRotate: + bool isRigidbody2D = DOTweenModuleUtils.Physics.HasRigidbody2D(_src); + if (isRigidbody2D) GUIEndValueFloat(); + else { + GUIEndValueV3(targetGO); + _src.optionalRotationMode = (RotateMode)EditorGUILayout.EnumPopup(" Rotation Mode", _src.optionalRotationMode); + } + break; + case DOTweenAnimation.AnimationType.Scale: + if (_src.optionalBool0) GUIEndValueFloat(); + else GUIEndValueV3(targetGO); + _src.optionalBool0 = EditorGUILayout.Toggle("Uniform Scale", _src.optionalBool0); + break; + case DOTweenAnimation.AnimationType.UIWidthHeight: + if (_src.optionalBool0) GUIEndValueFloat(); + else GUIEndValueV2(); + _src.optionalBool0 = EditorGUILayout.Toggle("Uniform Scale", _src.optionalBool0); + break; + case DOTweenAnimation.AnimationType.Color: + GUIEndValueColor(); + canBeRelative = false; + break; + case DOTweenAnimation.AnimationType.Fade: + GUIEndValueFloat(); + if (_src.endValueFloat < 0) _src.endValueFloat = 0; + if (!_isLightSrc && _src.endValueFloat > 1) _src.endValueFloat = 1; + canBeRelative = false; + break; + case DOTweenAnimation.AnimationType.Text: + GUIEndValueString(); + _src.optionalBool0 = EditorGUILayout.Toggle("Rich Text Enabled", _src.optionalBool0); + _src.optionalScrambleMode = (ScrambleMode)EditorGUILayout.EnumPopup("Scramble Mode", _src.optionalScrambleMode); + _src.optionalString = EditorGUILayout.TextField(new GUIContent("Custom Scramble", "Custom characters to use in case of ScrambleMode.Custom"), _src.optionalString); + break; + case DOTweenAnimation.AnimationType.PunchPosition: + case DOTweenAnimation.AnimationType.PunchRotation: + case DOTweenAnimation.AnimationType.PunchScale: + GUIEndValueV3(targetGO); + canBeRelative = false; + _src.optionalInt0 = EditorGUILayout.IntSlider(new GUIContent(" Vibrato", "How much will the punch vibrate"), _src.optionalInt0, 1, 50); + _src.optionalFloat0 = EditorGUILayout.Slider(new GUIContent(" Elasticity", "How much the vector will go beyond the starting position when bouncing backwards"), _src.optionalFloat0, 0, 1); + if (_src.animationType == DOTweenAnimation.AnimationType.PunchPosition) _src.optionalBool0 = EditorGUILayout.Toggle(" Snapping", _src.optionalBool0); + break; + case DOTweenAnimation.AnimationType.ShakePosition: + case DOTweenAnimation.AnimationType.ShakeRotation: + case DOTweenAnimation.AnimationType.ShakeScale: + GUIEndValueV3(targetGO); + canBeRelative = false; + _src.optionalInt0 = EditorGUILayout.IntSlider(new GUIContent(" Vibrato", "How much will the shake vibrate"), _src.optionalInt0, 1, 50); + _src.optionalFloat0 = EditorGUILayout.Slider(new GUIContent(" Randomness", "The shake randomness"), _src.optionalFloat0, 0, 90); + if (_src.animationType == DOTweenAnimation.AnimationType.ShakePosition) _src.optionalBool0 = EditorGUILayout.Toggle(" Snapping", _src.optionalBool0); + break; + case DOTweenAnimation.AnimationType.CameraAspect: + case DOTweenAnimation.AnimationType.CameraFieldOfView: + case DOTweenAnimation.AnimationType.CameraOrthoSize: + GUIEndValueFloat(); + canBeRelative = false; + break; + case DOTweenAnimation.AnimationType.CameraBackgroundColor: + GUIEndValueColor(); + canBeRelative = false; + break; + case DOTweenAnimation.AnimationType.CameraPixelRect: + case DOTweenAnimation.AnimationType.CameraRect: + GUIEndValueRect(); + canBeRelative = false; + break; + } + + // Final settings + if (canBeRelative) _src.isRelative = EditorGUILayout.Toggle(" Relative", _src.isRelative); + + // Events + AnimationInspectorGUI.AnimationEvents(this, _src); + } + EditorGUI.EndDisabledGroup(); + + if (GUI.changed) EditorUtility.SetDirty(_src); + } + + #endregion + + #region Methods + + // Returns TRUE if the Component layout on the src gameObject changed (a Component was added or removed) + bool ComponentsChanged() + { + int prevTotComponentsOnSrc = _totComponentsOnSrc; + _totComponentsOnSrc = _src.gameObject.GetComponents().Length; + return prevTotComponentsOnSrc != _totComponentsOnSrc; + } + + // Checks if a Component that can be animated with the given animationType is attached to the src + bool Validate(GameObject targetGO) + { + if (_src.animationType == DOTweenAnimation.AnimationType.None) return false; + + Component srcTarget; + // First check for external plugins +#if false // TK2D_MARKER + if (_Tk2dAnimationTypeToComponent.ContainsKey(_src.animationType)) { + foreach (Type t in _Tk2dAnimationTypeToComponent[_src.animationType]) { + srcTarget = targetGO.GetComponent(t); + if (srcTarget != null) { + _src.target = srcTarget; + _src.targetType = DOTweenAnimation.TypeToDOTargetType(t); + return true; + } + } + } +#endif +#if false // TEXTMESHPRO_MARKER + if (_TMPAnimationTypeToComponent.ContainsKey(_src.animationType)) { + foreach (Type t in _TMPAnimationTypeToComponent[_src.animationType]) { + srcTarget = targetGO.GetComponent(t); + if (srcTarget != null) { + _src.target = srcTarget; + _src.targetType = DOTweenAnimation.TypeToDOTargetType(t); + return true; + } + } + } +#endif + // Then check for regular stuff + if (_AnimationTypeToComponent.ContainsKey(_src.animationType)) { + foreach (Type t in _AnimationTypeToComponent[_src.animationType]) { + srcTarget = targetGO.GetComponent(t); + if (srcTarget != null) { + _src.target = srcTarget; + _src.targetType = DOTweenAnimation.TypeToDOTargetType(t); + return true; + } + } + } + return false; + } + + DOTweenAnimation.AnimationType AnimationToDOTweenAnimationType(string animation) + { + if (_datString == null) _datString = Enum.GetNames(typeof(DOTweenAnimation.AnimationType)); + animation = animation.Replace("/", ""); + return (DOTweenAnimation.AnimationType)(Array.IndexOf(_datString, animation)); + } + int DOTweenAnimationTypeToPopupId(DOTweenAnimation.AnimationType animation) + { + return Array.IndexOf(_animationTypeNoSlashes, animation.ToString()); + } + + #endregion + + #region GUI Draw Methods + + void GUIEndValueFloat() + { + GUILayout.BeginHorizontal(); + GUIToFromButton(); + _src.endValueFloat = EditorGUILayout.FloatField(_src.endValueFloat); + GUILayout.EndHorizontal(); + } + + void GUIEndValueColor() + { + GUILayout.BeginHorizontal(); + GUIToFromButton(); + _src.endValueColor = EditorGUILayout.ColorField(_src.endValueColor); + GUILayout.EndHorizontal(); + } + + void GUIEndValueV3(GameObject targetGO, bool optionalTransform = false) + { + GUILayout.BeginHorizontal(); + GUIToFromButton(); + if (_src.useTargetAsV3) { + Transform prevT = _src.endValueTransform; + _src.endValueTransform = EditorGUILayout.ObjectField(_src.endValueTransform, typeof(Transform), true) as Transform; + if (_src.endValueTransform != prevT && _src.endValueTransform != null) { +#if true // UI_MARKER + // Check that it's a Transform for a Transform or a RectTransform for a RectTransform + if (targetGO.GetComponent() != null) { + if (_src.endValueTransform.GetComponent() == null) { + EditorUtility.DisplayDialog("DOTween Pro", "For Unity UI elements, the target must also be a UI element", "Ok"); + _src.endValueTransform = null; + } + } else if (_src.endValueTransform.GetComponent() != null) { + EditorUtility.DisplayDialog("DOTween Pro", "You can't use a UI target for a non UI object", "Ok"); + _src.endValueTransform = null; + } +#endif + } + } else { + _src.endValueV3 = EditorGUILayout.Vector3Field("", _src.endValueV3, GUILayout.Height(16)); + } + if (optionalTransform) { + if (GUILayout.Button(_src.useTargetAsV3 ? "target" : "value", EditorGUIUtils.sideBtStyle, GUILayout.Width(44))) _src.useTargetAsV3 = !_src.useTargetAsV3; + } + GUILayout.EndHorizontal(); +#if true // UI_MARKER + if (_src.useTargetAsV3 && _src.endValueTransform != null && _src.target is RectTransform) { + EditorGUILayout.HelpBox("NOTE: when using a UI target, the tween will be created during Start instead of Awake", MessageType.Info); + } +#endif + } + + void GUIEndValueV2() + { + GUILayout.BeginHorizontal(); + GUIToFromButton(); + _src.endValueV2 = EditorGUILayout.Vector2Field("", _src.endValueV2, GUILayout.Height(16)); + GUILayout.EndHorizontal(); + } + + void GUIEndValueString() + { + GUILayout.BeginHorizontal(); + GUIToFromButton(); + _src.endValueString = EditorGUILayout.TextArea(_src.endValueString, EditorGUIUtils.wordWrapTextArea); + GUILayout.EndHorizontal(); + } + + void GUIEndValueRect() + { + GUILayout.BeginHorizontal(); + GUIToFromButton(); + _src.endValueRect = EditorGUILayout.RectField(_src.endValueRect); + GUILayout.EndHorizontal(); + } + + void GUIToFromButton() + { + if (GUILayout.Button(_src.isFrom ? "FROM" : "TO", EditorGUIUtils.sideBtStyle, GUILayout.Width(90))) _src.isFrom = !_src.isFrom; + GUILayout.Space(16); + } + + #endregion + } + + // █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ + // ███ INTERNAL CLASSES ████████████████████████████████████████████████████████████████████████████████████████████████ + // █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ + + [InitializeOnLoad] + static class Initializer + { + static Initializer() + { + DOTweenAnimation.OnReset += OnReset; + } + + static void OnReset(DOTweenAnimation src) + { + DOTweenSettings settings = DOTweenUtilityWindow.GetDOTweenSettings(); + if (settings == null) return; + + Undo.RecordObject(src, "DOTweenAnimation"); + src.autoPlay = settings.defaultAutoPlay == AutoPlay.All || settings.defaultAutoPlay == AutoPlay.AutoPlayTweeners; + src.autoKill = settings.defaultAutoKill; + EditorUtility.SetDirty(src); + } + } +} diff --git a/d2/Assets/Demigiant/DOTweenPro/Editor/DOTweenAnimationInspector.cs.meta b/d2/Assets/Demigiant/DOTweenPro/Editor/DOTweenAnimationInspector.cs.meta new file mode 100644 index 00000000..a3905ce2 --- /dev/null +++ b/d2/Assets/Demigiant/DOTweenPro/Editor/DOTweenAnimationInspector.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: e0203fd81362bab4d842d87ad09ee76e +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DOTweenPro/Editor/DOTweenPreviewManager.cs b/d2/Assets/Demigiant/DOTweenPro/Editor/DOTweenPreviewManager.cs new file mode 100644 index 00000000..e6079795 --- /dev/null +++ b/d2/Assets/Demigiant/DOTweenPro/Editor/DOTweenPreviewManager.cs @@ -0,0 +1,263 @@ +// Author: Daniele Giardini - http://www.demigiant.com +// Created: 2015/03/12 16:03 + +using System; +using System.Collections.Generic; +using DG.DemiEditor; +using DG.DemiLib; +using DG.Tweening; +using DG.Tweening.Core; +using UnityEditor; +using UnityEditorInternal; +using UnityEngine; +using Object = UnityEngine.Object; + +namespace DG.DOTweenEditor +{ + public static class DOTweenPreviewManager + { + static bool _previewOnlyIfSetToAutoPlay = true; + static readonly Dictionary _AnimationToTween = new Dictionary(); + static readonly List _TmpKeys = new List(); + + #region Public Methods & GUI + + /// + /// Returns TRUE if its actually previewing animations + /// + public static bool PreviewGUI(DOTweenAnimation src) + { + if (EditorApplication.isPlaying) return false; + + Styles.Init(); + + bool isPreviewing = _AnimationToTween.Count > 0; + bool isPreviewingThis = isPreviewing && _AnimationToTween.ContainsKey(src); + + // Preview in editor + GUI.backgroundColor = isPreviewing + ? new DeSkinColor(new Color(0.49f, 0.8f, 0.86f), new Color(0.15f, 0.26f, 0.35f)) + : new DeSkinColor(Color.white, new Color(0.13f, 0.13f, 0.13f)); + GUILayout.BeginVertical(Styles.previewBox); + DeGUI.ResetGUIColors(); + GUILayout.BeginHorizontal(); + GUILayout.Label("Preview Mode - Experimental", Styles.previewLabel); + _previewOnlyIfSetToAutoPlay = DeGUILayout.ToggleButton( + _previewOnlyIfSetToAutoPlay, + new GUIContent("AutoPlay only", "If toggled only previews animations that have AutoPlay turned ON"), + Styles.btOption + ); + GUILayout.EndHorizontal(); + GUILayout.Space(1); + // Preview - Play + GUILayout.BeginHorizontal(); + EditorGUI.BeginDisabledGroup( + isPreviewingThis || src.animationType == DOTweenAnimation.AnimationType.None + || !src.isActive || _previewOnlyIfSetToAutoPlay && !src.autoPlay + ); + if (GUILayout.Button("► Play", Styles.btPreview)) { + if (!isPreviewing) StartupGlobalPreview(); + AddAnimationToGlobalPreview(src); + } + EditorGUI.EndDisabledGroup(); + EditorGUI.BeginDisabledGroup(isPreviewing); + if (GUILayout.Button("► Play All on GameObject", Styles.btPreview)) { + if (!isPreviewing) StartupGlobalPreview(); + DOTweenAnimation[] anims = src.gameObject.GetComponents(); + foreach (DOTweenAnimation anim in anims) AddAnimationToGlobalPreview(anim); + } + if (GUILayout.Button("► Play All in Scene", Styles.btPreview)) { + if (!isPreviewing) StartupGlobalPreview(); + DOTweenAnimation[] anims = Object.FindObjectsOfType(); + foreach (DOTweenAnimation anim in anims) AddAnimationToGlobalPreview(anim); + } + EditorGUI.EndDisabledGroup(); + GUILayout.EndHorizontal(); + // Preview - Stop + GUILayout.BeginHorizontal(); + EditorGUI.BeginDisabledGroup(!isPreviewingThis); + if (GUILayout.Button("■ Stop", Styles.btPreview)) { + if (_AnimationToTween.ContainsKey(src)) StopPreview(_AnimationToTween[src].tween); + } + EditorGUI.EndDisabledGroup(); + EditorGUI.BeginDisabledGroup(!isPreviewing); + if (GUILayout.Button("■ Stop All on GameObject", Styles.btPreview)) { + StopPreview(src.gameObject); + } + if (GUILayout.Button("■ Stop All in Scene", Styles.btPreview)) { + StopAllPreviews(); + } + EditorGUI.EndDisabledGroup(); + GUILayout.EndHorizontal(); + if (isPreviewing) { + int playingTweens = 0; + int completedTweens = 0; + int pausedTweens = 0; + foreach (KeyValuePair kvp in _AnimationToTween) { + Tween t = kvp.Value.tween; + if (t.IsPlaying()) playingTweens++; + else if (t.IsComplete()) completedTweens++; + else pausedTweens++; + } + GUILayout.Label("Playing Tweens: " + playingTweens, Styles.previewStatusLabel); + GUILayout.Label("Completed Tweens: " + completedTweens, Styles.previewStatusLabel); +// GUILayout.Label("Paused Tweens: " + playingTweens); + } + GUILayout.EndVertical(); + + return isPreviewing; + } + +#if !(UNITY_4_3 || UNITY_4_4 || UNITY_4_5 || UNITY_4_6 || UNITY_5) + public static void StopAllPreviews(PlayModeStateChange state) + { + StopAllPreviews(); + } +#endif + + public static void StopAllPreviews() + { + _TmpKeys.Clear(); + foreach (KeyValuePair kvp in _AnimationToTween) { + _TmpKeys.Add(kvp.Key); + } + StopPreview(_TmpKeys); + _TmpKeys.Clear(); + _AnimationToTween.Clear(); + + DOTweenEditorPreview.Stop(); +#if UNITY_4_3 || UNITY_4_4 || UNITY_4_5 || UNITY_4_6 || UNITY_5 + UnityEditor.EditorApplication.playmodeStateChanged -= StopAllPreviews; +#else + UnityEditor.EditorApplication.playModeStateChanged -= StopAllPreviews; +#endif +// EditorApplication.playmodeStateChanged -= StopAllPreviews; + + InternalEditorUtility.RepaintAllViews(); + } + +#endregion + +#region Methods + + static void StartupGlobalPreview() + { + DOTweenEditorPreview.Start(); +#if UNITY_4_3 || UNITY_4_4 || UNITY_4_5 || UNITY_4_6 || UNITY_5 + UnityEditor.EditorApplication.playmodeStateChanged += StopAllPreviews; +#else + UnityEditor.EditorApplication.playModeStateChanged += StopAllPreviews; +#endif +// EditorApplication.playmodeStateChanged += StopAllPreviews; + } + + static void AddAnimationToGlobalPreview(DOTweenAnimation src) + { + if (!src.isActive) return; // Ignore sources whose tweens have been set to inactive + if (_previewOnlyIfSetToAutoPlay && !src.autoPlay) return; + + Tween t = src.CreateEditorPreview(); + _AnimationToTween.Add(src, new TweenInfo(src, t, src.isFrom)); + // Tween setup + DOTweenEditorPreview.PrepareTweenForPreview(t); + } + + static void StopPreview(GameObject go) + { + _TmpKeys.Clear(); + foreach (KeyValuePair kvp in _AnimationToTween) { + if (kvp.Key.gameObject != go) continue; + _TmpKeys.Add(kvp.Key); + } + StopPreview(_TmpKeys); + _TmpKeys.Clear(); + + if (_AnimationToTween.Count == 0) StopAllPreviews(); + else InternalEditorUtility.RepaintAllViews(); + } + + static void StopPreview(Tween t) + { + TweenInfo tInfo = null; + foreach (KeyValuePair kvp in _AnimationToTween) { + if (kvp.Value.tween != t) continue; + tInfo = kvp.Value; + _AnimationToTween.Remove(kvp.Key); + break; + } + if (tInfo == null) { + Debug.LogWarning("DOTween Preview ► Couldn't find tween to stop"); + return; + } + if (tInfo.isFrom) { + int totLoops = tInfo.tween.Loops(); + if (totLoops < 0 || totLoops > 1) { + tInfo.tween.Goto(tInfo.tween.Duration(false)); + } else tInfo.tween.Complete(); + } else tInfo.tween.Rewind(); + tInfo.tween.Kill(); + EditorUtility.SetDirty(tInfo.animation); // Refresh views + + if (_AnimationToTween.Count == 0) StopAllPreviews(); + else InternalEditorUtility.RepaintAllViews(); + } + + // Stops while iterating inversely, which deals better with tweens that overwrite each other + static void StopPreview(List keys) + { + for (int i = keys.Count - 1; i > -1; --i) { + DOTweenAnimation anim = keys[i]; + TweenInfo tInfo = _AnimationToTween[anim]; + if (tInfo.isFrom) { + int totLoops = tInfo.tween.Loops(); + if (totLoops < 0 || totLoops > 1) { + tInfo.tween.Goto(tInfo.tween.Duration(false)); + } else tInfo.tween.Complete(); + } else tInfo.tween.Rewind(); + tInfo.tween.Kill(); + EditorUtility.SetDirty(anim); // Refresh views + _AnimationToTween.Remove(anim); + } + } + +#endregion + + // █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ + // ███ INTERNAL CLASSES ████████████████████████████████████████████████████████████████████████████████████████████████ + // █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ + + class TweenInfo + { + public DOTweenAnimation animation; + public Tween tween; + public bool isFrom; + public TweenInfo(DOTweenAnimation animation, Tween tween, bool isFrom) + { + this.animation = animation; + this.tween = tween; + this.isFrom = isFrom; + } + } + + static class Styles + { + static bool _initialized; + + public static GUIStyle previewBox, previewLabel, btOption, btPreview, previewStatusLabel; + + public static void Init() + { + if (_initialized) return; + + _initialized = true; + + previewBox = new GUIStyle(GUI.skin.box).Clone().Padding(1, 1, 0, 3) + .Background(DeStylePalette.squareBorderCurved_darkBorders).Border(7, 7, 7, 7); + previewLabel = new GUIStyle(GUI.skin.label).Clone(10, FontStyle.Bold).Padding(1, 0, 3, 0).Margin(3, 6, 0, 0).StretchWidth(false); + btOption = DeGUI.styles.button.bBlankBorderCompact.MarginBottom(2).MarginRight(4); + btPreview = EditorStyles.miniButton.Clone(Format.RichText); + previewStatusLabel = EditorStyles.miniLabel.Clone().Padding(4, 0, 0, 0).Margin(0); + } + } + } +} diff --git a/d2/Assets/Demigiant/DOTweenPro/Editor/DOTweenPreviewManager.cs.meta b/d2/Assets/Demigiant/DOTweenPro/Editor/DOTweenPreviewManager.cs.meta new file mode 100644 index 00000000..1586a483 --- /dev/null +++ b/d2/Assets/Demigiant/DOTweenPro/Editor/DOTweenPreviewManager.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 22292a5f27a9a644ba9e6ad1bf863531 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DOTweenPro/Editor/DOTweenProEditor.XML b/d2/Assets/Demigiant/DOTweenPro/Editor/DOTweenProEditor.XML new file mode 100644 index 00000000..ad80aef0 --- /dev/null +++ b/d2/Assets/Demigiant/DOTweenPro/Editor/DOTweenProEditor.XML @@ -0,0 +1,18 @@ + + + + DOTweenProEditor + + + + + Custom colors + + + + + Needs to be overridden in order to initialize new styles added from inherited classes + + + + diff --git a/d2/Assets/Demigiant/DOTweenPro/Editor/DOTweenProEditor.XML.meta b/d2/Assets/Demigiant/DOTweenPro/Editor/DOTweenProEditor.XML.meta new file mode 100644 index 00000000..5328cb8e --- /dev/null +++ b/d2/Assets/Demigiant/DOTweenPro/Editor/DOTweenProEditor.XML.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 753a4f4ed73b17143923101226957756 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DOTweenPro/Editor/DOTweenProEditor.dll b/d2/Assets/Demigiant/DOTweenPro/Editor/DOTweenProEditor.dll new file mode 100644 index 0000000000000000000000000000000000000000..a46e33dd3fc5137ee559f049c81b10fbd450ba66 GIT binary patch literal 33280 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%0D;K3Wjf>z!A*~(RYol&&jrdEsuyaM_e=h&>`z^ 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 literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DOTweenPro/Editor/DOTweenProEditor.dll.meta b/d2/Assets/Demigiant/DOTweenPro/Editor/DOTweenProEditor.dll.meta new file mode 100644 index 00000000..c980e74b --- /dev/null +++ b/d2/Assets/Demigiant/DOTweenPro/Editor/DOTweenProEditor.dll.meta @@ -0,0 +1,21 @@ +fileFormatVersion: 2 +guid: a6402d4311c862b4eb1325590d6466af +PluginImporter: + externalObjects: {} + serializedVersion: 2 + iconMap: {} + executionOrder: {} + defineConstraints: [] + isPreloaded: 0 + isOverridable: 0 + isExplicitlyReferenced: 0 + validateReferences: 1 + platformData: + - first: + Any: + second: + enabled: 1 + settings: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DOTweenPro/readme.txt b/d2/Assets/Demigiant/DOTweenPro/readme.txt new file mode 100644 index 00000000..9837c952 --- /dev/null +++ b/d2/Assets/Demigiant/DOTweenPro/readme.txt @@ -0,0 +1,35 @@ +DOTween and DOTween Pro are copyright (c) 2014-2018 Daniele Giardini - Demigiant + +// IMPORTANT!!! ///////////////////////////////////////////// +// Upgrading DOTween from versions older than 1.2.000 /////// +// (or DOTween Pro older than 1.0.000) ////////////////////// +------------------------------------------------------------- +If you're upgrading your project from a version of DOTween older than 1.2.000 (or DOTween Pro older than 1.0.000) please follow these instructions carefully. +1) Import the new version in the same folder as the previous one, overwriting old files. A lot of errors will appear but don't worry +2) Close and reopen Unity (and your project). This is fundamental: skipping this step will cause a bloodbath +3) Open DOTween's Utility Panel (Tools > Demigiant > DOTween Utility Panel) if it doesn't open automatically, then press "Setup DOTween...": this will run the upgrade setup +4) From the Add/Remove Modules panel that opens, activate/deactivate Modules for Unity systems and for external assets (like TextMesh Pro) + +// GET STARTED ////////////////////////////////////////////// + +- After importing a new DOTween update, select DOTween's Utility Panel from the "Tools/Demigiant" menu (if it doesn't open automatically) and press the "Setup DOTween..." button to activate/deactivate Modules. You can also access a Preferences Tab from there to choose default settings for DOTween. + +// VISUAL SCRIPTING (PRO ONLY) +- To animate a gameObject, select it and choose "Add Component > DOTween > DOTween Animation" +- To animate a gameObject along a path, select it and choose "Add Component > DOTween > DOTween Path" + +// SCRIPTING +- In your code, add "using DG.Tweening" to each class where you want to use DOTween. +- You're ready to tween. Check out the links below for full documentation and license info. + + +// LINKS /////////////////////////////////////////////////////// + +DOTween website (documentation, examples, etc): http://dotween.demigiant.com +DOTween license: http://dotween.demigiant.com/license.php +DOTween repository (Google Code): https://code.google.com/p/dotween/ +Demigiant website (documentation, examples, etc): http://www.demigiant.com + +// NOTES ////////////////////////////////////////////////////// + +- DOTween's Utility Panel can be found under "Tools > Demigiant > DOTween Utility Panel" and also contains other useful options, plus a tab to set DOTween's preferences \ No newline at end of file diff --git a/d2/Assets/Demigiant/DOTweenPro/readme.txt.meta b/d2/Assets/Demigiant/DOTweenPro/readme.txt.meta new file mode 100644 index 00000000..17911b4b --- /dev/null +++ b/d2/Assets/Demigiant/DOTweenPro/readme.txt.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: aa8f07903bf128e44a7d0b91a63dedab +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib.meta b/d2/Assets/Demigiant/DemiLib.meta new file mode 100644 index 00000000..194b224c --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 7451ce7105406784cacd2fccdd037bb2 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core.meta b/d2/Assets/Demigiant/DemiLib/Core.meta new file mode 100644 index 00000000..90b915cc --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 20a66b85f4ef0294eb806eb418b0b2d0 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/DemiLib.dll b/d2/Assets/Demigiant/DemiLib/Core/DemiLib.dll new file mode 100644 index 0000000000000000000000000000000000000000..e005b4b89911fd6801bb7e81c8c40c3ea714cb1d GIT binary patch literal 11776 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 + + + DemiLib + + + + + Class attribute + Sets the script execution order index + + + + + Sets the script execution order for this class + + Script execution order index + + + + Set when calling DeGUI.BeginGUI + + + + + Stores a color palette, which can be passed to default DeGUI layouts when calling DeGUI.BeginGUI, + and changed at any time by calling DeGUI.ChangePalette. + You can inherit from this class to create custom color palettes with more hColor options. + + + + + Converts a HEX color to a Unity Color and returns it + + The HEX color, either with or without the initial # (accepts both regular and short format) + + + + Global colors + + + + + Background colors + + + + Editor background color + + + + Content colors + + + + + Various Input utils + + + + + Returns a number key int if a number key was pressed in this frame, or -1 otherwise + + + + + + Extend this to replicate Unity's Scope system with any Unity version. + Thanks to Dmitriy Yukhanov for pointing this out and creating an initial version. + Expand this class to create scopes. + Example: + public class VBoxScope : DeScope + { + public VBoxScope(GUIStyle style) + { + BeginVBox(style); + } + + protected override void CloseScope() + { + EndVBox(); + } + } + Usage: + using (new VBoxScope(myStyle) { + // Do something + } + + + + + Contains both free and pro skins color variations, + and automatically returns the correct one when converted to Color + + + + + Used by DeHierarchy + + + + + Returns a list of all items whose gameObject is NULL, or NULL if there's no missing gameObjects. + + + + + If the item exists sets it, otherwise first creates it and then sets it + + + + + If the item exists sets it, otherwise first creates it and then sets it + + + + + If the item exists sets it, otherwise first creates it and then sets it + + + + + Returns TRUE if the item existed and was removed. + + + + + Returns TRUE if the item existed and was changed. + + + + + Returns the customizedItem for the given gameObject, or NULL if none was found + + + + + Returns the color corresponding to the given + + + + Must be univocal + + + Node position in editor GUI + + + Ids of all forward connected nodes. Length indicates how many forward connections are allowed. + Min length represents available connections from node. + + + + A serializable struct including a min and a max int value + + + + Min value + + + Max value + + + + Creates a new Range + + + + + Returns a random value within this range (min/max included) + + + + + + + + A serializable struct including a min and a max float value + + + + Min value + + + Max value + + + + Creates a new Range + + + + + Returns a random value within this range (min/max included) + + + + + + + diff --git a/d2/Assets/Demigiant/DemiLib/Core/DemiLib.xml.meta b/d2/Assets/Demigiant/DemiLib/Core/DemiLib.xml.meta new file mode 100644 index 00000000..2192b21c --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/DemiLib.xml.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 9bf2564c9817bb34988453ae948954d2 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor.meta new file mode 100644 index 00000000..efebc59b --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 17dd870dc21c86946bf2c04a3a16fbb6 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/DemiEditor.dll b/d2/Assets/Demigiant/DemiLib/Core/Editor/DemiEditor.dll new file mode 100644 index 0000000000000000000000000000000000000000..2dfae2dcb308f8e3e50232045d34d5a405318ee5 GIT binary patch literal 162304 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 + + + DemiEditor + + + + + Utils to use he correct method based on Unity's version + + + + + Encodes to PNG using reflection to use correct method depending if editor is version 2017 or earlier + + + + + Returns the prefab parent by using different code on Unity 2018 or later + + + + + + + Starts an editor coroutine. You can't use normal yield new WaitFor methods because + those are Unity runtime, but you can instead use . + Other than that, you can use normal yield null/etc. + Returns an which you can use with to cancel the coroutine. + + + + + Stops the given coroutine generated by + + + + + To be used inside a coroutine as a yield instruction: waits for the given seconds + (replaces Unity's yield new WaitForSeconds because it's not available in-editor). + Example usage: + yield return DeEditorCoroutines.WaitForSeconds(1); + + + + + File utils + + + + Path slash for AssetDatabase format + + + Path slash to replace for AssetDatabase format + + + Current OS path slash + + + Path slash to replace on current OS + + + + Full path to project directory, without final slash. + + + + + Full path to project's Assets directory, without final slash. + + + + + Returns TRUE if the given path is an absolute path + + + + + Returns TRUE if the given path is an AssetDatabase path + + + + + Returns TRUE if the given GUID refers to a valid and existing project folder + + + + + Converts the given project-relative path to a full path + + + + + Converts the given full path to a project-relative path + + + + + Returns TRUE if the file/directory at the given path exists. + + Path, relative to Unity's project folder + + + + Validates the string as a valid fileName + (uses commonly accepted characters an all systems instead of system-specific ones). + BEWARE: doesn't check for reserved words + + string to replace + Minimum length for considering the string valid + + + + Returns the given string stripped of any invalid filename characters. + BEWARE: doesn't check for reserved words + + string to replace + Character to use as replacement for invalid ones + + + + Returns the given path with all slashes converted to the correct ones used by the system + + + + + Returns the asset path of the given GUID (relative to Unity project's folder), + or an empty string if either the GUID is invalid or the related path doesn't exist. + + + + + Checks if the given directory (full path) is empty or not + + + + + Deletes all files and subdirectories from the given directory + + + + Returns the adb path to the given ScriptableObject + + + Returns the adb path to the given MonoBehaviour + + + Returns the adb directory that contains the given ScriptableObject without final slash + + + Returns the adb directory that contains the given MonoBehaviour without final slash + + + + Returns the adb paths to the selected folders in the Project panel, or NULL if there is none. + Contrary to Selection.activeObject, which only returns folders selected in the right side of the panel, + this method also works with folders selected in the left side. + + + + + Sets the script execution order of the given MonoBehaviour + + + + + Gets the script execution order of the given MonoBehaviour + + + + + Precisely returns the last controlId assigned to a GUI element + + + + + Utilities for Editor Panels. + + + + + Connects to a asset. + If the asset already exists at the given path, loads it and returns it. + Otherwise, depending on the given parameters, either returns NULL or automatically creates it before loading and returning it. + + Asset type + File path (relative to Unity's project folder) + If TRUE and the requested asset doesn't exist, forces its creation + If TRUE also creates the path folders if they don't exist + + + + Check if the at the given path exists and eventually if it's available + + File path (relative to Unity's project folder) + If TRUE also check if the file is available + (file can be unavailable if it was deleted outside Unity, or if Unity is just starting) + + + + + Returns TRUE if the given is dockable, FALSE if instead it's a utility window + + + + + + + Sets the icon and title of an editor window. Works with older versions of Unity, where the titleContent property wasn't available. + + Reference to the editor panel whose icon to set + Icon to apply + Title. If NULL doesn't change it + + + + Prefab utilities + + + + + Behaves as the Inspector's Apply button, applying any modification of this instance to the prefab parent + + + + + + Returns TRUe if a prefab instance has unapplied modifications, ignoring any modifications applied to the transform. + NOTE: this a somehow costly operation (since it generates GC) + + + + + Completely removes any prefab connection from the given prefab instances, by desotroing the original object and recreating it. + Returns a list with all the new elements created. + + Based on RodGreen's method (http://forum.unity3d.com/threads/82883-Breaking-connection-from-gameObject-to-prefab-for-good.?p=726602&viewfull=1#post726602) + + + + + + Completely removes any prefab connection from the given prefab instance, by desotroing the original object and recreating it. + + Based on RodGreen's method (http://forum.unity3d.com/threads/82883-Breaking-connection-from-gameObject-to-prefab-for-good.?p=726602&viewfull=1#post726602) + + + + + Calls the given action after the given delay + + + + Return the size of the editor game view, eventual extra bars excluded (meaning the true size of the game area) + + + + + Clears all logs from Unity's console + + + + + Adds the given global define (if it's not already present) to all the + or only to the given , depending on passed parameters, + and returns TRUE if it was added, FALSE otherwise. + NOTE: when adding to all of them some legacy warnings might appear, which you can ignore. + + + to use. Leave NULL to add to all of them. + + + + Removes the given global define (if present) from all the + or only from the given , depending on passed parameters, + and returns TRUE if it was removed, FALSE otherwise. + NOTE: when removing from all of them some legacy warnings might appear, which you can ignore. + + + to use. Leave NULL to remove from all of them. + + + + Returns TRUE if the given global define is present in all the + or only in the given , depending on passed parameters. + + + to use. Leave NULL to check in all of them. + + + + Sets the gizmos icon visibility in the Scene and Game view for the given class names + + Visibility + Class names (no namespace), as many as you want separated by a comma + + + + Sets the gizmos icon visibility in the Scene and Game view for all custom icons + (for example icons created with HOTools) + + Visibility + + + + Returns all components of type T in the currently open scene, or NULL if none could be found. + If you're on Unity 5 or later, and have DeEditorTools, use DeEditorToolsUtils.FindAllComponentsOfType + instead, which is more efficient. + + + + + Shifts an item from an index to another, without modifying the list except than by moving elements around + + + + + Expands the given array and adds the given element as the last one + + + + + Removes the element at index from the given array, shifts everything after by -1 position and resizes the array + + + + Nothing is being dragged + + + Dragging + + + Dragging concluced and accepted + + + Dragging concluced but item position didn't change + + + Dragging canceled + + + Dragging concluced but not accepted because too short + + + Automatically determines if dragged elements are horizontal, vertical, or both + + + Forces vertical drag + + + Forces horizontal drag (useful to avoid initial wrong drag indicators + if the users starts dragging an horizontal system vertically) + + + + Manages the dragging of GUI elements + + + + + True if a GUI element is currently being dragged + + + + + Return the current item being dragged, or NULL if there is none + + + + + Type of current item being dragged, or NULL if there is none + + + + + Starting index of current item being dragged, or NULL if there is none + + + + + Retrieves the eventual optional data stored via the StartDrag method + + + + + Starts a drag operation on a GUI element. + + Reference to the current editor drawing the GUI (used when a Repaint is needed) + List containing the dragged item and all other relative draggable items + DraggableList index of the item being dragged + Optional data that can be retrieved via the static property + + + + Starts a drag operation on a GUI element. + + ID for this drag operation (must be the same for both StartDrag and Drag + Reference to the current editor drawing the GUI (used when a Repaint is needed) + List containing the dragged item and all other relative draggable items + DraggableList index of the item being dragged + Optional data that can be retrieved via the static property + + + + Starts a drag operation on a GUI element. + + Reference to the current editor drawing the GUI (used when a Repaint is needed) + List containing the dragged item and all other relative draggable items + DraggableList index of the item being dragged + Optional data that can be retrieved via the static property + + + + Starts a drag operation on a GUI element. + + ID for this drag operation (must be the same for both StartDrag and Drag + Reference to the current editor drawing the GUI (used when a Repaint is needed) + List containing the dragged item and all other relative draggable items + DraggableList index of the item being dragged + Optional data that can be retrieved via the static property + + + + Call this after each draggable GUI block, to calculate and draw the current drag state + (or complete it if the mouse was released). + + ID for this drag operation (must be the same for both StartDrag and Drag + List containing the draggable item and all other relative draggable items + Current index of the draggable item being drawn + If NULL will calculate this automatically using . + Pass this if you're creating a drag between elements that don't use GUILayout + Drag direction. You can leave it to + unless you want to skip eventual layout calculations + + + + Call this after each draggable GUI block, to calculate and draw the current drag state + (or complete it if the mouse was released). + + List containing the draggable item and all other relative draggable items + Current index of the draggable item being drawn + If NULL will calculate this automatically using . + Pass this if you're creating a drag between elements that don't use GUILayout + Drag direction. You can leave it to + unless you want to skip eventual layout calculations + + + + Call this after each draggable GUI block, to calculate and draw the current drag state + (or complete it if the mouse was released). + + ID for this drag operation (must be the same for both StartDrag and Drag + List containing the draggable item and all other relative draggable items + Current index of the draggable item being drawn + Color to use for drag divider and selection + If NULL will calculate this automatically using . + Pass this if you're creating a drag between elements that don't use GUILayout + Drag direction. You can leave it to + unless you want to skip eventual layout calculations + + + + Call this after each draggable GUI block, to calculate and draw the current drag state + (or complete it if the mouse was released). + + List containing the draggable item and all other relative draggable items + Current index of the draggable item being drawn + Color to use for drag divider and selection + If NULL will calculate this automatically using . + Pass this if you're creating a drag between elements that don't use GUILayout + Drag direction. You can leave it to + unless you want to skip eventual layout calculations + + + + Ends the drag operations, and eventually applies the drag outcome. + Returns TRUE if the position of the dragged item actually changed. + Called automatically by Drag method. Use it only if you want to force the end of a drag operation. + + If TRUE applies the drag results, otherwise simply cancels the drag + + + + Abstract dynamic class used for every node of the same type + (meaning there is only a single recycled instance for all same-type nodes) + + + + Used to fill + + + Called when the node needs to be drawn + + + + The connectedNodesIds list will be automatically increased/decreased when adding/removing connections + (otherwise connectedNodesIds will have to be increased via custom code) + + + + + Requires only two connectedNodesIds (no more, no less), + uses regular CTRL+Drag to connect connection 0, CTRL+SPACE+Drag to connect connection 1 + + + + + Like , but with an extra connection as a last extra index, which is set when pressing CTRL+SPACE+Drag. + Must always have at least one element in connectedNodesIds + + + + Layout, Repaint, LayoutAndRepaint + + + + Stores cloned nodes for pasting + + + + + Returns a list of pasteable nodes, with their GUID recreated and their connections adapted + + + + + + Returns a deep clone of the given node but doesn't clone UnityEngine references. + A new ID will be automatically generated. + + + + + Always connects a node from BottomOrRight side to TopOrLeft side + + + + + Always connects from BottomOrRight side to TopOrLeft side. + If ALT is pressed shows the delete connection button. + Called during Repaint or MouseDown/Up. + Returns TRUE if the connection was deleted using the delete connection button. + + + + + Always connects a node from BottomOrRight side to TopOrLeft side + + + + + Always connects from BottomOrRight side to TopOrLeft side. + If ALT is pressed shows the delete connection button. + Called during Repaint or MouseDown/Up. + Returns TRUE if the connection was deleted using the delete connection button. + + + + + You can attach to this + + + + + Use this to add a content group to the Help Panel + + + + Regular note + + + Editable note (activated by setting to TRUE + (but you will have to save the result somewhere yourself) + + + If TRUE shows the textArea + + + + Add definition. Supports rich-text but also these special tags: + - [b][/b] + + + + + Add key, automatically formatting these special keys: + / + + + → + + If TRUE and there's other keys/targets, adds the new key on a new line preceded by a comma + + + + Recalculates all rects based on the given Y shift + + + + + One per . + Partially independent, mainly controlled by process. + + + + TRUE when read-to or dragging nodes + + + Returns TRUE if the given node is currently being dragged + + + + Returns TRUE if a repaint is required + + + + + + Main class for DeGUI Node system. + Create it, then enclose your GUI node calls inside a . + CODING ORDER: + - Create a to use for your node system (create it once, obviously) + - Inside OnGUI, write all your nodes GUI code inside a + - To draw the nodes, loop through the list and call for each node + + + + Distance at which nodes will be placed when snapping next to each other + + + Full area without zeroed coordinates + + + Position with zeroed coordinates (used by all node GUI since it's inside a GUILayout(area)) + + + Contains the nodes passed to NodeProcessScope ordered by depth. + You should loop through this list when drawing nodes + + + + Creates a new NodeProcess. + + EditorWindow for this process + Callback called when one or more nodes are going to be deleted. + Return FALSE if you want the deletion to be canceled. + Can be NULL, in which case it will be ignored + Callback called when a node is cloned. + Return FALSE if you want the cloning to be canceled. + Can be NULL, in which case it will be ignored + + + + Needs to be called when loading a complete new series of nodes + + + + + Call this when the layout/size of one or more nodes changed because of external intervention + (if a whole new range of nodes has been loaded, just call instead) + + + + + Forces the refresh of the area calculations. Useful if you need them before the first GUI call has run + + + + + Shifts the visible are to the given coordinates and repaints on end + + + + + Shifts the visible are to the given coordinates and repaints on end + + + + + Tells the process to repaint once the process has ended. + Calling this + + + + + Draws the given node using the given T editor GUINode type. + Returns the full area of the node + + + + + Opens the Help Panel + + + + + Closes the Help Panel + + + + + Opens or closes the Help panel based on its current state + + + + + Returns TRUE if the given area is visible (even if partially) inside the current nodeProcess area + + + + + Captures a screenshot of the node editor area and returns it when calling the onComplete method. + Sadly this requires a callback because if called immediately the capture will fail + with a "[d3d11] attempting to ReadPixels outside of RenderTexture bounds!" error in most cases + + Screenshot mode + A callback that accepts the generated Texture2D object + Screenshot scale factor (only used if screenshotMode is set to ) + If TRUE (default) displays a progress bar during the operation. + You'll want to set this to FALSE when you're already using a custom progressBar + and the screenshot is only part of a larger queue of operations + + + + Use this to encapsulate node GUI operations. + Automatically manages various operations (press F1 to see them). + Sets GUI.changed to TRUE if the area is panned, a node is dragged, controlNodes change sorting or are deleted. + Wraps all content inside a GUILayout Area (nodeArea). + + The to use + Area within which the nodes will be drawn + Area shift (caused by dragging) + This list will be sorted based on current node draw order, + and changed in case one of its nodes is deleted. + IMPORTANT: this list should be part of your serialized class (MonoBehaviour or ScriptableObject), + so it will be stored as a reference and modifying one will modify the other. + Usually you want to pass all nodes to this except the eventual start node (or nodes that can't be sorted nor deleted). + + + + Set automatically when a selection ends up selecting a single node, + reset when deselecting all nodes, selecting multiple nodes, or resetting the + + + + + Returns TRUE if something was actually deselected, FALSE if there were no selected nodes + + + + + + Returns key modifiers currently pressed. + Requires to be updated at the beginning of every GUI call. + + + + + Call this method to update data required by softCtrl calculations. + Automatically called from within a . + Returns a object with the keys that were just pressed and just released + + Required to have the correct for the given target call + + + + Returns the given as an int, or -1 if it's not a number + + + + + Returns by . + Contains properties and methods to manage non-layout scrollview better. + Remember to use or to increase or set the full content height + + + + Area used by ScrollView and its content + + + Full content area regardless if visible or not. Its height should be set manually based on the contents' height + + + Content area currently visible (scroll bars excluded) + + + Current scrollPosition + + + + Returns the current open, or an empty one if none is open. + + + + + Sets the height + + + + + + Increase the height by the given amount + + + + + + Returns a Rect for a single line at the current scrollView yMax + + If less than 0 uses default line height, otherwise the value passed + if TRUE (default) automatically increases the height of the accordingly + + + + + Returns TRUE if the given rect is at least partially visible in the displayed scroll area + + + + + Contains both free and pro skins GUIStyle variations, + and automatically returns the correct one when converted to GUIStyle + + + + + Plays the given clip in the Editor + + + + + Stops playing the given clip. + + + + + Stops all clips playing. + + + + + A stopwatch whose time can be changed manually via + + + + + Start or resume playing + + + + + Stop the watch and reset the time + + + + + Restart measuring from zero + + + + + Pause the watch + + + + + Send the watch to the given time + + + + + Util to determine Unity editor version and store them as comparable numbers + + + + Full major version + first minor version (ex: 2018.1f) + + + Major version + + + First minor version (ex: in 2018.1 it would be 1) + + + + Assembly extensions + + + + + Full path to the assembly directory, without final slash + + + + + AssetDatabase path to the assembly directory, without final slash + + + + + GUI extension methods + + + + + Clones the style and adds the given formats to it. You can pass any of these types of values: + + Format:Rich-text, wordwrap + FontStyle:Font style + TextAnchor:Content anchor + int:Font size + Color/DeSkinColor:Font color + + + + + + Adds the given formats to the style. You can pass any of these types of values: + + Format:RichText, WordWrap + FontStyle:Font style + TextAnchor:Content anchor + int:Font size + Color/DeSkinColor:Font color + + + + + + Sets the border of the style + + + + + Sets the border of the style + + + + + Sets the background of the style + + + + + Sets the contentOffset of the style + + + + + Sets the contentOffset of the style + + + + + Sets the X contentOffset of the style + + + + + Sets the Y contentOffset of the style + + + + + Sets the margin of the style + + + + + Sets the margin of the style + + + + + Sets the margin of the style + + + + + Sets the left margin of the style + + + + + Sets the right margin of the style + + + + + Sets the top margin of the style + + + + + Sets the bottom margin of the style + + + + + Sets the overflow of the style + + + + + Sets the overflow of the style + + + + + Sets the overflow of the style + + + + + Sets the left overflow of the style + + + + + Sets the right overflow of the style + + + + + Sets the top overflow of the style + + + + + Sets the bottom overflow of the style + + + + + Sets the padding of the style + + + + + Sets the padding of the style + + + + + Sets the padding of the style + + + + + Sets the left padding of the style + + + + + Sets the right padding of the style + + + + + Sets the top padding of the style + + + + + Sets the bottom padding of the style + + + + + Sets the Y fixedWidth of the style + + + + + Sets the fixedHeight of the style + + + + + Sets the stretchHeight property of the style + + + + + Sets the stretchWidth property of the style + + + + + Stores a GUIStyle palette, which can be passed to default DeGUI layouts when calling DeGUI.BeginGUI, + and changed at any time by calling DeGUI.ChangePalette. + You can inherit from this class to create custom GUIStyle palettes with more options. + Each of the sub-options require a public Init method to initialize the styles, which will be called via Reflection. + + + + + Called automatically by DeGUI.BeginGUI. + Override when adding new style subclasses. + + + + + Extend any custom subpalettes from this, so they will be initialized correctly + + + + + GUILayout methods + + + + Shaded button + + + Shaded button + + + Shaded button + + + Shaded button + + + Colored button + + + Colored button + + + Colored button + + + Colored button + + + + Draws a button that returns TRUE the first time it's pressed, instead than when its released. + + + + + Draws a button that returns TRUE the first time it's pressed, instead than when its released. + + + + Toolbar foldout button + + + Button that can be toggled on and off + + + Button that can be toggled on and off + + + Button that can be toggled on and off + + + Button that can be toggled on and off + + + Button that can be toggled on and off + + + Button that can be toggled on and off + + + Button that can be toggled on and off + + + Button that can be toggled on and off + + + Button that can be toggled on and off + + + Begins an horizontal toolbar layout + + + Begins an horizontal toolbar layout + + + Begins an horizontal toolbar layout + + + Begins an horizontal toolbar layout + + + Ends an horizontal toolbar layout + + + A toolbar with a label + + + A toolbar with a label + + + A toolbar with a label + + + A toolbar with a label + + + A toolbar with a label + + + A toolbar with a label + + + Returns TRUE if there's mixed values + + + Returns TRUE if there's mixed values + + + Returns TRUE if there's mixed values + + + Returns TRUE if there's mixed values + + + Returns TRUE if there's mixed values + + + Returns TRUE if there's mixed values + + + Returns TRUE if there's mixed values + + + Returns TRUE if there's mixed values + + + Returns TRUE if there's mixed values + + + Returns TRUE if there's mixed values + + + Returns TRUE if there's mixed values + + + Returns TRUE if there's mixed values + + + Returns TRUE if there's mixed values + + + Returns TRUE if there's mixed values + + + Returns TRUE if there's mixed values + + + Returns TRUE if there's mixed values + + + Returns TRUE if there's mixed values + + + Returns TRUE if there's mixed values + + + Returns TRUE if there's mixed values + + + Returns TRUE if there's mixed values + + + Returns TRUE if there's mixed values + + + Returns TRUE if there's mixed values + + + Vertical box layout with style and color options + + + Vertical box layout with style and color options + + + End vertical box layout + + + Horizontal Divider + + + + A text field that becomes editable only on double-click + + EditorWindow reference + A unique ID to use in order to determine if the text is selected or not + Text + Style for default (non-editing mode) appearance + Style for editing mode + + + + A text field that becomes editable only on double-click + + Editor reference + A unique ID to use in order to determine if the text is selected or not + Text + Style for default (non-editing mode) appearance + Style for editing mode + + + + A text field that becomes editable only on double-click and can also be dragged + + EditorWindow reference + A unique ID to use in order to determine if the text is selected or not + Text + List containing the dragged item and all other relative draggable items + DraggableList index of the item being dragged + Style for default (non-editing mode) appearance + Style for editing mode + + + + + A text field that becomes editable only on double-click and can also be dragged + + Editor reference + A unique ID to use in order to determine if the text is selected or not + Text + List containing the dragged item and all other relative draggable items + DraggableList index of the item being dragged + Style for default (non-editing mode) appearance + Style for editing mode + + + + + Creates a Gradient field by using Unity 4.x hidden default one and Reflection. + + + + Scene field + + + + Global Demigiant GUI manager. Call to initialize it inside GUI calls. + + + + + Default color palette + + + + + Default style palette + + + + TRUE if we're using the PRO skin + + + + Call this at the beginning of GUI methods + + Eventual to use + Eventual to use + + + + Better implementation of GUI.BeginScrollView. + Returns the modified scrollView struct. + Must be closed by a DeGUI.. + + Area used by the scrollView + target + If TRUE (default) resets .height to 0 + after beginning the ScrollView + + + + Closes a DeGUI. correctly + + + + + Exits the current event correctly, also taking care of eventual drag operations + + + + + Changes the active palettes to the given ones + (or resets them to the default ones if NULL) + + + + + Resets the GUI colors to the default ones (only available if BeginGUI was called first) + + + + + Sets the GUI colors to the given ones + + + + + Opens a panel that previews the given texture (if not NULL) + + + + + Sets the GUI cursor color to the given ones + + + + + Sets the GUI matrix to the given ones + + + + + Wrapper to set serialized fields with multiple sources selected: automatically sets GUI to show mixed values when necessary + and contains a fieldInfo which is set within the wrapper. + Note that you must set the property within the wrapper so that it's assigned correctly when closing the scope. + + + + Multi property scope + Name of the field so it can be found and set/get via Reflection + List of the sources containing the given field + + + Shaded button + + + Shaded button + + + Shaded button + + + Shaded button + + + Colored button + + + Colored button + + + Colored button + + + Colored button + + + Toolbar foldout button which allows clicking even on its label + + + + Draws a button that returns TRUE the first time it's pressed, instead than when its released. + + + + + Draws a button that returns TRUE the first time it's pressed, instead than when its released. + + + + Toolbar foldout button + + + Button that can be toggled on and off + + + Button that can be toggled on and off + + + Button that can be toggled on and off + + + Button that can be toggled on and off + + + Button that can be toggled on and off + + + Button that can be toggled on and off + + + Button that can be toggled on and off + + + Button that can be toggled on and off + + + Button that can be toggled on and off + + + Scene field + + + + Draws a background grid using the given grid texture + + Area rect + Offset from 0, 0 position (used when area has been dragged) + Texture to use for the grid + Eventual scale to apply to the grid + + + + Draws a background grid using default grid textures + + Area rect + Offset from 0, 0 position (used when area has been dragged) + If TRUE forces a dark skin, otherwise uses a skin that fits with the current Unity's one + Eventual scale to apply to the grid + + + Box with style and color options + + + + Can be used instead of EditorGUI.PropertyField, to draw a serializedProperty without its attributes + (very useful in case you want to use this from within a PropertyDrawer for that same property, + since otherwise bad infinite loops might happen) + + + + Draws a colored square + + + Draws the given texture tiled within the given rect + Rect + Texture + Eventual scale to apply + If not NULL, colorizes the texture with this color + + + + A text field that becomes editable only on double-click + + Area + EditorWindow reference + A unique ID to use in order to determine if the text is selected or not + Text + Style for default (non-editing mode) appearance + Style for editing mode + + + + A text field that becomes editable only on double-click + + Area + Editor reference + A unique ID to use in order to determine if the text is selected or not + Text + Style for default (non-editing mode) appearance + Style for editing mode + + + + A text field that becomes editable only on double-click and can also be dragged + + Area + EditorWindow reference + A unique ID to use in order to determine if the text is selected or not + Text + List containing the dragged item and all other relative draggable items + DraggableList index of the item being dragged + Style for default (non-editing mode) appearance + Style for editing mode + + + + A text field that becomes editable only on double-click and can also be dragged + + Area + Editor reference + A unique ID to use in order to determine if the text is selected or not + Text + List containing the dragged item and all other relative draggable items + DraggableList index of the item being dragged + Style for default (non-editing mode) appearance + Style for editing mode + + + + A textArea that becomes editable only on double-click + + Area + EditorWindow reference + A unique ID to use in order to determine if the text is selected or not + Text + Style for default (non-editing mode) appearance + Style for editing mode + + + + A textArea that becomes editable only on double-click + + Area + Editor reference + A unique ID to use in order to determine if the text is selected or not + Text + Style for default (non-editing mode) appearance + Style for editing mode + + + Divider + + + Draws a Vector3Field that can have single axes disabled + + + Draws a Vector3Field that can have single axes disabled + + + Draws a Vector3Field that can have single axes disabled + + + Returns TRUE if there's mixed values + + + Returns TRUE if there's mixed values + + + Returns TRUE if there's mixed values + + + Returns TRUE if there's mixed values. Supports using an int as an enum + + + Returns TRUE if there's mixed values + + + Returns TRUE if there's mixed values. Supports also uint fields + + + Returns TRUE if there's mixed values + + + Returns TRUE if there's mixed values + + + Returns TRUE if there's mixed values + + + Returns TRUE if there's mixed values + + + Returns TRUE if there's mixed values + + + Returns TRUE if there's mixed values + + + Returns TRUE if there's mixed values. Supports passing int values as bool (1 = true, 0 = false) + + + Returns TRUE if there's mixed values. Supports passing int values as bool (1 = true, 0 = false) + + + Returns TRUE if there's mixed values. Supports passing int values as bool (1 = true, 0 = false) + + + Returns TRUE if there's mixed values. Requires a SerializedProperty representation of each UnityEven field + + + Returns TRUE if there's mixed values + + + Returns TRUE if there's mixed values + + + Returns TRUE if there's mixed values + + + Returns TRUE if there's mixed values + + + Returns TRUE if there's mixed values + + + Returns TRUE if there's mixed values + + + + Changes the alpha of this color and returns it + + + + + Replicates DeExtensions.RectExtensions for internal usage + + + + + Adds one rect into another, and returns the resulting a + + + + + Returns a copy or the Rect expanded around its center by the given amount + + Indicates how much to expand the rect on each size + + + + Returns a copy or the Rect contracted around its center by the given amount + + Indicates how much to contract the rect on each size + + + + Returns a copy of the Rect resized so it fits proportionally within the given size limits + + Width to fit + Height to fit + If TRUE (default) only shrinks the rect if needed, if FALSE also enlarges it to fit + + + + + Returns TRUE if the first rect includes the second one + + If TRUE, returns TRUE only if the second rect is fully included, + otherwise just if some part of it is included + + + + Returns a copy of the Rect with its X/Y coordinates set to 0 + + + + + Returns a copy of the Rect with its values shifted according the the given parameters + + + + + Returns a copy of the Rect with its X property set to the given value + + + + + Returns a copy of the Rect with its Y property set to the given value + + + + + Returns a copy of the Rect with its height property set to the given value + + + + + Returns a copy of the Rect with its width property set to the given value + + + + + Returns the value of the given property (works like a cast to type). + + Improved from HiddenMonk's functions (http://answers.unity3d.com/questions/627090/convert-serializedproperty-to-custom-class.html) + + + + + + Returns TRUE if this property is inside an array + + + + + Returns -1 if the property is not inside an array, otherwise returns its index inside the array + + + + + Returns the height of a UnityEvent serializedProperty + + + + + Uses code from FlaShG's GitMerge: https://github.com/FlaShG/GitMerge-for-Unity/blob/master/Editor/SerializedPropertyExtensions.cs + + + + + Uses code from FlaShG's GitMerge: https://github.com/FlaShG/GitMerge-for-Unity/blob/master/Editor/SerializedPropertyExtensions.cs + + + + + String extensions + + + + + If the given string is a directory path, returns its parent + with or without final slash depending on the original directory format + + + + + If the string is a directory, returns the directory name, + if instead it's a file returns its name without extension. + Works better than Path.GetDirectoryName, which kind of sucks imho + + + + + Evaluates the string as a property or field and returns its value. + + If NULL considers the string as a static property, otherwise uses obj as the starting instance + + + + Texture extensions + + + + + Checks that the texture uses the correct import settings, and applies them if they're incorrect. + + + + + Replicates parts of DeExtensions.ListExtensions for internal usage + + + + + Shifts an item from an index to another, without modifying the list except than by moving elements around + + + + diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/DemiEditor.xml.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor/DemiEditor.xml.meta new file mode 100644 index 00000000..22f81304 --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor/DemiEditor.xml.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: d4a42b2e4e6f64d4ba01d35c5a3dafed +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs.meta new file mode 100644 index 00000000..4555fbb6 --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 0c8bd53fb0e9a09479be2c66ac5722d0 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/blackSquare.png b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/blackSquare.png new file mode 100644 index 0000000000000000000000000000000000000000..6fbcc5130cedc76f7566a958195e3703ada2eab4 GIT binary patch literal 109 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`oCO|{#S9F5he4R}c>anMkesKB zV~9m>a!NwNkMjanMkesKB zV~9m>a!NwNgp>sg28IC~ZoCqv30E2pCNeNHGpw>anMkesKB zV~9m>a!Nu%K=J|x1H%9gH(m+TgewgP6B(G98SdR+aC^Gv{4tanMkesKB zV~9m>a!Nu%LBawC1H%9gH(m+TgewgP6B(G989d|}5-xj9E&?iL@O1TaS?83{1OVO4 B8T|kN literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/blackSquareAlpha25.png.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/blackSquareAlpha25.png.meta new file mode 100644 index 00000000..64f2236b --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/blackSquareAlpha25.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: f7ff421f40d548444864a01cd7f47112 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/blackSquareAlpha50.png b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/blackSquareAlpha50.png new file mode 100644 index 0000000000000000000000000000000000000000..700b9debeaead0d7b26b31ed60c7e84dbf788ae6 GIT binary patch literal 109 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`oCO|{#S9F5he4R}c>anMkesKB zV~9m>a!NwNiu45x28IC~ZoCqv30E2pCNeNHGq@`;%)dF?xDTk5!PC{xWt~$(69Dad B8jt`0 literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/blackSquareAlpha50.png.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/blackSquareAlpha50.png.meta new file mode 100644 index 00000000..b723c37d --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/blackSquareAlpha50.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: aa1d42dc6ff3e894da2208c6929d2165 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/blackSquareAlpha80.png b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/blackSquareAlpha80.png new file mode 100644 index 0000000000000000000000000000000000000000..f4a47c3701daa735d11da1c8e1e3c6f752d222c9 GIT binary patch literal 109 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`oCO|{#S9F5he4R}c>anMkesKB zV~9m>a!Nvi#bF1=gro%mJyHf)2UajPA7)@anMprDMW zi(`n!#N-r@>Vpnk2}ufqJy{Z04MI!|3>X;nS1{&fnF;m*)iHRw`njxgN@xNAT}&7% literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/blueSquare.png.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/blueSquare.png.meta new file mode 100644 index 00000000..1adc7213 --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/blueSquare.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: 05cfe010378336646ad6c721f66543d1 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/circle.png b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/circle.png new file mode 100644 index 0000000000000000000000000000000000000000..3ed059a404fad33f34ed81321288c886dab0c6de GIT binary patch literal 455 zcmV;&0XY7NP)pGc}YY;R9J<@m%&QIKomt^ii;xRPP(g9TCLFFH;B-M`aR;lD{<2g zaNAFCQxLzQ1aTvR-H6szv2H3p?@gkK1x;I%c?T{t5IXl}I!xa4WKL9d4Z{(10PR7W z&_?`t1U*0l=nA^@JnvQV0LI(U1vJt5nZ&=T{l~Zrok3Gwo@u;Bc~SEQG|>FuTD5u2 zeQ2cl!!`XZ^Ljz%=@47Lne#snw0P+8eI`n&3>~N?#nXztLc)6hiRu_`p%rn%JG6tl z;{Iy~PQ;x#q1P!V9^QT(<0G^xZh3<$+<`-JZ%*iW%m8h%qs;)m*x@rkRqUwp5USYm zQ4(Vq;92Z=VSu67F=T*1>_&^{M@cpt!bMS9|8sBDvMf)9U}KVJh0L`YvIrWTiF37R&1Ql$b@}GBnYI2R x?Ky8uw&(kjwC9!h@slL&`L#st`8a!3kxvBIUpIp~UK{`b002ovPDHLkV1h6R(RTm< literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/circle.png.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/circle.png.meta new file mode 100644 index 00000000..bba2f9c9 --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/circle.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: af28470bd0e2e9543a6dfa9a1a4b348d +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/greenSquare.png b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/greenSquare.png new file mode 100644 index 0000000000000000000000000000000000000000..63ef49a76b220d4de80807510b94f406c525e5cb GIT binary patch literal 106 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61SBU+%rFB|oCO|{#S9F5he4R}c>anMprDMW zi(`n!#N;V^PaSgLN=Q-=?8%b2Y7k;#V8Fnje2P&lc>$vzP#uG(tDnm{r-UW|fY%uC literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/greenSquare.png.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/greenSquare.png.meta new file mode 100644 index 00000000..208783a3 --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/greenSquare.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: 789ef07ba2573f6448fa8b5dc5224c44 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/grid_bright.png b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/grid_bright.png new file mode 100644 index 0000000000000000000000000000000000000000..5c2feae19dcc914919ab80fb84485e00a07e4699 GIT binary patch literal 222 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1SD0tpLGH$&H|6fVg?4j!ywFfJby(BP;i2$ zi(^Pe~gvJ1Rc= z?Ot!qiO>2DOF9@gq%oXjn8j$qoWXX1X90@9arT z#W5tK@$F4Rt^*1J3(_vMzVA+9hCAwRC4IicbTxXen@yoZH)$TLp zrW-e;F`Q+X#c0Bu!FGXXfusY9z&d`5^RH({?s9+MdcCA?-!-jS@BSaK$Ep;j_wA>K a4t9SLo(F6Gt~w8N6@#a%pUXO@geCx~6HWdA literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/grid_dark.png.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/grid_dark.png.meta new file mode 100644 index 00000000..0b5ccf30 --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/grid_dark.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: d542f997a51000946873268e3546b6ba +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alert.png b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alert.png new file mode 100644 index 0000000000000000000000000000000000000000..9242a22984b08edaeef4a97ca09251719599f746 GIT binary patch literal 540 zcmV+%0^|LOP)pG&PhZ;R5*>TmA^{@VHn4s_q;MC!-&SVNGQ<|XQe4zN*5>Bi0B8_ z(B#-6L6L|M{Rb{Vi#3V6gP0CRo1=x1WNCN4J&&ne`ihtMh3DS)?w;?*_nzm@7ewNm zNBRGBF5)l&co~PsW->XW`d^7=YV2ZK$Vt}(`*N5OAf<+A_H;Q-!fjD$0z5v=(< zNJ~q12;bJ;lls6LIQZ+Qr@Fvx59U!mYOCWHBylcbJT}v5{$er>gjS;ah<3I)od2#FpCA|3k6_{i&xm(Fx7bluOHSUk)dF{B0q6Z`^053cwF=zqZp!gO@D;0000anMprEOz zi(`mIZ*qzP(;s%G5<@oyhKoKtB29tJD-syEdm8mueQ3PsAj8w}ant&b^`}8BSioJ literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignB.png.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignB.png.meta new file mode 100644 index 00000000..2aba4052 --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignB.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: 8b6b31f71cd528243b053cfc488e73f5 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignBC.png b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignBC.png new file mode 100644 index 0000000000000000000000000000000000000000..3118ab10593c1b69d6e1d48975d2ada785dd2902 GIT binary patch literal 158 zcmeAS@N?(olHy`uVBq!ia0vp^A|TAc1|)ksWqE-VXMsm#F#`kNVGw3Kp1&dmC>Y@B z;uvDloBZYD$DijNTn`*^NIk%moO5$i>qMdE1iPiXxZQbWObf0!Br$N?c}}jZitt`! z>^Z&Q*>6FKwhHez;*R|ry1ds+KAfpAHTJ{-1_rYXzK^{pYK?$qGkCiCxvXqMdE1iPiXxZQbWObf0!Br%-sUf`b4<~c#m vYh|(8OQFchYLzxcJqMdE1iPiXxZQbWObf0!Br$OBl=6M{a^aL9 seF?e7mlI{$mQ1^|!N8e4q)d^SnPH0pZ@U)rX^^c9p00i_>zopr0Qs6O7ytkO literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignBR.png.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignBR.png.meta new file mode 100644 index 00000000..07bdab1a --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignBR.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: eeac3acbf7d1cd54fabfb1c4a12f9fc8 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignCC.png b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignCC.png new file mode 100644 index 0000000000000000000000000000000000000000..c5f85ccf8c0fca414c90e664cda7f5db110bf004 GIT binary patch literal 152 zcmeAS@N?(olHy`uVBq!ia0vp^A|TAc1|)ksWqE-VXMsm#F#`kNVGw3Kp1&dmDCp(s z;uvDloBZYD$DijNTn`*^NIk%moO5$i>qMdE1iPiXxZM{t>ikggefBcZHz<9Q-ou^) w7d<3f*dFz!)@FVdQ&MBb@035_LApigX literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignCC.png.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignCC.png.meta new file mode 100644 index 00000000..f05582c4 --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignCC.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: 8f0cb66458819764b94b93250bae94b6 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignCL.png b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignCL.png new file mode 100644 index 0000000000000000000000000000000000000000..39e15460bcb8572d222b8c9f81b7ea7042045945 GIT binary patch literal 158 zcmeAS@N?(olHy`uVBq!ia0vp^A|TAc1|)ksWqE-VXMsm#F#`kNVGw3Kp1&dmC>Y@B z;uvDloBZYD$DijNTn`*^NIk%moO5$i>qMdE1iPiXxZM{t>gYGgHA<>ER%x7k?sG|X zlTxNh5Zl5=9ii7x4)AzwmgDJh<9eE~Vfqao9tO^d0!J#qMdE1iPiXxZM{t>O9FZnYp}u(w#U18>Y*P xCmM0^s#s4uuM+EYa@FF<{;Grx({J$bFz|=+F9@hFv;-Q<;OXk;vd$@?2>|{=G4B8X literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignCR.png.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignCR.png.meta new file mode 100644 index 00000000..3e6fd874 --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignCR.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: 6f504a3fa8848264bb4fb9bb7d582dd5 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignHC.png b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignHC.png new file mode 100644 index 0000000000000000000000000000000000000000..dc638a7f4794363ae5117c54dbd4656672539c99 GIT binary patch literal 147 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`oCO|{#S9F5he4R}c>anMprEU# zi(`mIZ*qzP(;s%G5<@oyhKoKtB2A6v4XnowJom3j5U6;#Y5m9gm`O)Y1ioRaPanMprDnf zi(`mIZ}N^e*?;6)Bu}vT@Q5&pl{Ef$XwW;x!LoyA!41~K2N-%Bj)*7RV5nUrC@;}_ ftg+vXjg8^anMprEs- zi(`mIZ*q!)aLhN;fBcJPN@%d?{80JN%(zQJSwP{lX4ydl1BQHsMeGu04m-IwxQf~t oNcGNWXq~a*5W7YRBQrCD=nbx>q?xC$0*zzvboFyt=akR{0RQPILI3~& literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignR.png.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignR.png.meta new file mode 100644 index 00000000..f00df932 --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignR.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: 727ba41e4cc95fe4a98b07301e3ebfc8 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignT.png b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignT.png new file mode 100644 index 0000000000000000000000000000000000000000..b4397c60a97aaf24c2506005053933d6469f947d GIT binary patch literal 129 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`oCO|{#S9F5he4R}c>anMprEm* zi(`mIZ}Ofu*?;CYG95T#@Ptvh=c7D_fl6b;1ev3W20T0ojfM%0PFfPYM;gr=8W|a! Xt+|SMR787$+8I1u{an^LB{Ts533wwe literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignT.png.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignT.png.meta new file mode 100644 index 00000000..51216a92 --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignT.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: b4785ec6d937dab4fa59da70b69afc9d +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignTC.png b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignTC.png new file mode 100644 index 0000000000000000000000000000000000000000..de6a933ded8177badee0cc96a9aa1a2fbbf3f089 GIT binary patch literal 164 zcmeAS@N?(olHy`uVBq!ia0vp^A|TAc1|)ksWqE-VXMsm#F#`kNVGw3Kp1&dmC>ZAH z;uvDloBZYD$DijLnD=m0wS>kb&6Uy9V!Z literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignTC.png.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignTC.png.meta new file mode 100644 index 00000000..f789c088 --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignTC.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: 0f79253104349f44cb73978f6c8e93de +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignTL.png b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignTL.png new file mode 100644 index 0000000000000000000000000000000000000000..627b907d345cf01adac7228639ef5ec9126558dc GIT binary patch literal 153 zcmeAS@N?(olHy`uVBq!ia0vp^A|TAc1|)ksWqE-VXMsm#F#`kNVGw3Kp1&dmDCq6! z;uvDln`|<3`S?L|7swrOvz3R3LGvN^CyAfE+CXC&JYD@<);T3K0RSeKFSq~z literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignTL.png.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignTL.png.meta new file mode 100644 index 00000000..20bca2bc --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignTL.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: 6efe1c8569d975640ba0c9f2ac4a9d61 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignTR.png b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignTR.png new file mode 100644 index 0000000000000000000000000000000000000000..6a0d89d4ab8ee1f7bb014545e12b133563639a3e GIT binary patch literal 155 zcmeAS@N?(olHy`uVBq!ia0vp^A|TAc1|)ksWqE-VXMsm#F#`kNVGw3Kp1&dmDCq0y z;uvDloBZYD$DijN*eV3SaICfvW}eE(-LoanMprECv zi(`mIZ}I_lz28#**%NEBW=LqT^t@pD-^j3@O~K(=@SCQ@1co?=`57uAxh)4WOoSLp dI^5XU7;GfO7!~URp8*YF@O1TaS?83{1OU0VB-Q`` literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignVC.png.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignVC.png.meta new file mode 100644 index 00000000..d92f0ab3 --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_alignVC.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: d1d45eadab0e41c4a82cdffb6396b1d7 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_camera.png b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_camera.png new file mode 100644 index 0000000000000000000000000000000000000000..f1465163efb49c68c56e9ba1105e270d1f95f79b GIT binary patch literal 206 zcmeAS@N?(olHy`uVBq!ia0vp^+(695!3HFgJ}hYlQk(@Ik;M!Qe1}1p@p%4<6rf;( zr;B5V#MER5_W%F?e`kFp9`L4HFOq-iiuO__%H znoN1md1U*78^W=L?2}%eU{JZn7^=*0q}!oq{{KSe33KdEyj9>+?nqD&GBBLL;Luh7 za3cH3ql_Qf4ftPlabCFKz^<^7Gr&{`XyJVZhG}PS7ZpG4M{{nR2Y?okUwsNPz=U-&>$pGlQm0E&;jvafB_CrG0+>(T%ot< z-i>x(?}B=UDB`~qiM=aBNQ4AMQD5yyVL+(;27Z3_XUm3g6H!X<6h--L+x8x~2R@`} z`gJL4n&w)Tbudk{!Ps$}A`HVbh#_s;&c{h$I%ZkM%Cck_!(`TV9YZ1Uef9GA5d>ju zmSuSt1i?>T*Bla7*1>) zsplTR{8j8PRaJE%`fj*?cSQN#q5%X~1DT<1wGmEJc=Z4P002ovPDHLkV1jVXlTZKv literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_camera_border.png.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_camera_border.png.meta new file mode 100644 index 00000000..d4d6589a --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_camera_border.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: 358cddede8023574191e0aae610a4645 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_cog.png b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_cog.png new file mode 100644 index 0000000000000000000000000000000000000000..b7f481e9d866280ded3971b2fa8d5c7ffad6c8ec GIT binary patch literal 197 zcmeAS@N?(olHy`uVBq!ia0vp^AT}2V8<6ZZI=>f4aTa()7BevL9R^{>eBfcF0TApGDoI2^R2Y?GW`Kg2n3z^kQPFj>va*-t<>ggXR8&q|Sy}O4zI=Hv zNS+C%@csMuamB^O{My>un?Sg*u#g`p77deU3=R&?`19va4$vfxNs}fqzj^ZpEFmHy z!jPAj_xJJR$2VA5Sf((zxVU^+w{G2kpyL0vwYAsH&CL&jFo+Ej1IdBZFflSRX71d% z^Ec2M1|a?JC*4wvlPiF)MOUI{ApQ02L6r?6hn1I_eFyQ6o z^=QkME&tQg)Bk|*wr$(~dwY97hFc9|0IgZt-`}74`}glC5dY4dJIf>_B$hyA85jUh Wy^gC3zEAG}0000anMpkR`x zi(`ny)MSRn|NsB*{?p!YJmb%DA0B}Owx#?FKk^?Cv2c3%SfXZup^w8K$*d)EQ~nDc zOK;%%*Un|6_|b9J42Q5Aj=k1LPn`I{-&xOegk5t(3)h?WODk$7Twma}E8&x*1jEX* Wyo)>cM1}xuWAJqKb6Mw<&;$SlB|xwM literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_comment.png.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_comment.png.meta new file mode 100644 index 00000000..8243484d --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_comment.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: 622fdb780ae13e840938631c5ed708f2 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_comment_border.png b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_comment_border.png new file mode 100644 index 0000000000000000000000000000000000000000..d61a35d12f89898b1bb6a87f416d2a361fc9df45 GIT binary patch literal 426 zcmV;b0agBqP)pGTuDShR2Y>lkilxgKoEvE8+S1qdrBSz(Z+Tuo@I4L}>6}4;Jg8U@aoq#-#rS2Zo*5{bv7}5y;M})vAjl4Nt-E zf*@E@N*}^7WXS(0hbomyW)Ify_j9#cjRG?B`TR|*)k-&;O$EqH1S*PhUMiJ-dF;Aw z$QZLXn~hd3mr1wV{ls;T?v$?@jYe!Xn-N)-zvA)uK1@j_lf*Pl5em-{h+Yg`*N+^> zA(AA$ilV5a9WF`c^Lb`88aW({;o+oMEXtiuhb2%7r+wD6TpQ@^Q zipIZrwQbwX^Sqw#`xm@F%d$Qo`?gc1m#7Zb>or-eRvvy>0zNDh3Z&g``(U0T5Uv}B zksFW4B#}rAG0Yh@5bbv|nWRu;@mSC_jgK!0f*?cY777Q*@8Nu1KZC*Gm=Hq#0Ta-T U6;Ga>XaE2J07*qoM6N<$f-3^I)&Kwi literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_comment_border.png.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_comment_border.png.meta new file mode 100644 index 00000000..fa947a14 --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_comment_border.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: d98b8847646169c4fb5af28dd84c4179 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_delete.png b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_delete.png new file mode 100644 index 0000000000000000000000000000000000000000..85bb2483c4ab2d98a3c48823b1d38c1d34308331 GIT binary patch literal 145 zcmeAS@N?(olHy`uVBq!ia0vp^93afW1|*O0@9PFqoCO|{#S9F5he4R}c>anMprEs- zi(`ny)Z`!k|L^AzkY`BBWz%5TxG+hHCxDG(Pn%bU^G$_<21efpwjzg36{I;QH)yhW o8yN~Pv8+`%HnC#Q&v+Jwhi|t0e|4ql7|=KdPgg&ebxsLQ041|4GXMYp literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_delete.png.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_delete.png.meta new file mode 100644 index 00000000..baed8920 --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_delete.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: 6b1f9e1e1c2cf004b8e3bdd3033a8e75 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_demigiant.png b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_demigiant.png new file mode 100644 index 0000000000000000000000000000000000000000..3445065c4b6b03dfa8849bcbb2bcfa2d4b2e2c70 GIT binary patch literal 605 zcmV-j0;2tiP)pH4@pEpR5*>5Q_pJ?K@|RGH*N#jG^J~^0YM@X2)zi>o?1O92%fwY zPoj8`sE7Oo9zFGB6>L?g=s`Sq@gPMHD(Xo+`lA(;Dyb$d{#wU0-R@?5Z_*9BjTL;b z%=_NV_syHP?+I+OLZL7$gs6~vNGY|0V}zGzc|iC|y~kz`%wevX&1Rsod(n%aFjA?&3S3+)E7L)Tc8XI)`XLee}Vj{OV9vd1->_wQkH7?#9 z1Jm;ohvIl?wVv3kHNQmeeZ%+t8Sb#$(anMpkRWh zi(`mIZ}Ofu*?;CYG95VLz{^m?YBpU!*>5Aa#D8YSE(U>yjHIKQWd{um8d#^ZXk17L zT)O+GjanMpkTSD zi(`mIZ}N^e*?;6)Bo{oePZT)Vz#=ixw7KEjGGm?}2PVJMYU6J&Klsy!X9|emq_GlszP2N)P?_LrFKH{mS>I)TB{)z4*}Q$iB}C&NWd literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_distributeVAlignL.png.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_distributeVAlignL.png.meta new file mode 100644 index 00000000..255a261b --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_distributeVAlignL.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: 32eaa0efb2b38774ea9705b40fdcc00a +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_end.png b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_end.png new file mode 100644 index 0000000000000000000000000000000000000000..b71eefe4f8ca86bf8b5f34072ab4d52fa6be39da GIT binary patch literal 475 zcmV<10VMv3P)pGjY&j7R5*>TmCtIzKoG`fV--CJ^&m!XMGzlA=vh377bTbWF+}VIz)j$g_qya>y zop}kHp=;!G064)3@C^E9OaOch77Ct$IF4ZbmQ5x@=4$06Tv|4m;WJ;1!nK;)#0GOV zQ|b_g2v@6sjVzXJ_U-5$&d8VMa0qm_FI~T=ef_V&+Q&>wCjV@(KK}&}eF3^_XtWu^ R>+Apk002ovPDHLkV1l}g)4%`# literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_end.png.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_end.png.meta new file mode 100644 index 00000000..373f441d --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_end.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: a248c8288afb9184f953d9aa07a696b0 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_flipV.png b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_flipV.png new file mode 100644 index 0000000000000000000000000000000000000000..f4525da66a574728188a6a2a06bc798a8bfa3803 GIT binary patch literal 167 zcmeAS@N?(olHy`uVBq!ia0vp^AT|#N8<337)>#0gI14-?iy0XB4ude`@%$AjK*2~) z7sn8ZsmTqE|Ns9#-ekaR#}KlB@kso_2n)x|NsB@I-K$EJNDOM4`avM4=a<8EEDXk=IHn>At`CUXmzsE1BMA}xi{YQ z^HBCX;N&2;Jh(8EMUy4d;)sKeg0&T!c0vLJ!+BG+jF~?Te*w*A@O1TaS?83{1ONcS BGUfmP literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_foldout_closed.png.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_foldout_closed.png.meta new file mode 100644 index 00000000..f778fe66 --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_foldout_closed.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: 301c130dbb4bbba4e87072804939c861 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 1 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -3 + maxTextureSize: 32 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: 0 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 100 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 100 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 100 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 100 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 100 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_foldout_open.png b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_foldout_open.png new file mode 100644 index 0000000000000000000000000000000000000000..50a913a971a434d3144fd70243f25abeee47e062 GIT binary patch literal 170 zcmeAS@N?(olHy`uVBq!ia0vp^d?3uh1|;P@bT0xa&H|6fVxZVz5N14{zaj-F7~|>U z7@{#TS%R@aaOUU#|NmDhJZ*4(%jo8I%uS-5)3=C8p#I3Bm&zf1jH}%ibSkj^jWGG< z{8XagCdZ{30S{RRAu9$^WuAt*r|ge-1J0ax;9|(yz@FG9$SonkaDh*WN!Xr08fXuL Mr>mdKI;Vst05vx;wEzGB literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_foldout_open.png.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_foldout_open.png.meta new file mode 100644 index 00000000..2b0b34e8 --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_foldout_open.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: 18a5a7cde794cc04b9b446f0feedb3a0 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 1 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -3 + maxTextureSize: 32 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: 0 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 100 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 100 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 100 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 100 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 100 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_heart.png b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_heart.png new file mode 100644 index 0000000000000000000000000000000000000000..7ea0c06f4746fde06696146f5fc58c0bd2a4705c GIT binary patch literal 210 zcmeAS@N?(olHy`uVBq!ia0vp^AT}2V8<6ZZI=>f4aTa()7BevL9R^{>ytLPfU_N>xK}dN*#rXpV6b>{n zCna{u>aU14wYq1NoD~D zm^$_=Ycg%r-C)I{A;@#2exZfL`qhnGMGg|7QyLi=n7I$IoRxdH4Co#PPgg&ebxsLQ E0P#aag#Z8m literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_heart.png.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_heart.png.meta new file mode 100644 index 00000000..63dda2eb --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_heart.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: d173388c1d9c32a418b5b777dd89d71a +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_heart_border.png b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_heart_border.png new file mode 100644 index 0000000000000000000000000000000000000000..a53308482c1c4eba9d0d1029a8ca2efecf1d5546 GIT binary patch literal 307 zcmV-30nGl1P)pFMl_cq?D9T1v)q7DC+rIA~x~?DU zx>nen+P2*h%d+-C5YVpcC=`Zai-AW5h7O9ivMecARaL`qf!Vfw6$z6p%Y;kQG%^+# z>k9(&Q5?tQpWZAY>@hRfbuW3I(_bM2LuWX}_FQLdk&vvS@a=_E)L!3HEN&baUbDb50q$YKTtzQZ8Qcszea3Q(}X z)5S4FVrnu&CR${#usG2zMNh8rRs{)bs+ lOi=mRxP!%unUR^9Vf*65*esbtbAfgpF)=5M`R2Y?GWB>vK0|Qq=H|Zl=FOYpbLYcKQg#~|NehVOUv6#K(>mq zvN8iQkd>8X0GcAg^!M-IeS7xo`GYLEWXY1BEG#U08ML*vh3xI^U!6L23Tz~Z2J&A3 z9Vq}-sjshZ7!nfl2P7FB9Q+697(EnwfDZc&l5})*{0$RhfiXUR{`}w6)RcjlnHg?B q6O6&m&VH1QjqN9p-VYIBU;qGV6Kn1Qa9Ml+0000_o}_+Lvyv%WI`uW@8dYxngml%7+dnComzjliO;w-JtD?B; zu{7`9V>>@xzdqA4{ol;}x4%BR6vcj_S@%w^>F)!RQ+SPc91xgwpL5)(?L0_geb8ifvwV9VGnOl3`K%X*ry85}Sb4q9e05qY0+W-In literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_lock.png.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_lock.png.meta new file mode 100644 index 00000000..8c991c96 --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_lock.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: e3d0592dad579e141924133869455c53 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_lock_open.png b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_lock_open.png new file mode 100644 index 0000000000000000000000000000000000000000..be8544366616d44dfba55c5524d3f756ad308cbe GIT binary patch literal 293 zcmeAS@N?(olHy`uVBq!ia0vp@K+MO%1|+}KPrC%9I14-?i-BT?L74G){)!Z!;B`+I z#}JK)$qsD)|Nl>Ceq^MukMD?m;}0=`>kUUFH!v<>;TFhee01L74)>8xhdVq+2ZPkyRh;F7Hb7t z;SN^Lj0fzGq8;Y&ZL0cL|K@=x-^ZT{&o?fZ`HR2fu7srI(S|L?0{FVdQ&MBb@03Tp9dH?_b literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_nodeArrow.png.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_nodeArrow.png.meta new file mode 100644 index 00000000..c04ec72c --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_nodeArrow.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: 4aa34055b1d36ef479af3d7b5701b28a +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_ok.png b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_ok.png new file mode 100644 index 0000000000000000000000000000000000000000..b4d864a5b768bfbf4595d3b76ff9ff5d676a2b38 GIT binary patch literal 715 zcmV;+0yO=JP)pHeMv+?R5*>5mCsKTQ4q&xmn{jc7L8b-{%C16#;aP3L5PXoBs4{g zMB{-NjUGIZ22B3~V+rvOFvb&HM4C4EBS?allu&An9y}OB<%briURu~SX4|ea>vq$w zyQNMtncbQ9{p7v3@69rxW0E9s82soybPsx~Qd&n(qDRof48!ELT1E#(ppiL##yypr zfCV828F5{%*-Wj_Ztj9^Yaeu4E-Ybc2%%wJAc9y7_gBQ!@KE|DEbuX?X6=?P7_mPB zhshPf*C2w6THu4^ulVr5stn#7?L%mkRX)JO!1o*f1>4K*lOt(JOAKPszV*%vv#z8NuNijIdDDrT9<)R9Ww#~!1=e=jeCM@vRuoIn zPrpAvQ=JVO7&FB9*Kp@sKNO^b?#xc(-lM%IVAyBv|7So6x?S9YAGpW2*7`t{L@+Xc z<5dbz8RcMqzO;N!_bfJXHiU1Z3x+T{8PA+=Quug`Ra(&C=z+)bHPYJ8e5NXlG^8a4 zvE;8zcM$Jlh%UMwv>J>wq$LLB%8yNuy2f+YqTHHxG8#i;NkiIF-l)NjzU8OeUgRdL xHQ2A13K%w64Yd3h;6-m%N}K2jF#H7o`~gtZ6gst;c2NKT002ovPDHLkV1lxxN7euU literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_ok.png.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_ok.png.meta new file mode 100644 index 00000000..717f8049 --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_ok.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: 34f39b5a760ddbb4d8b8749852868335 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_optionsDropdown.png b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_optionsDropdown.png new file mode 100644 index 0000000000000000000000000000000000000000..1d89e2aff67e6b03ae1ebb542f654799b30f9ba8 GIT binary patch literal 135 zcmeAS@N?(olHy`uVBq!ia0vp^0zk~o!3HGD9`RZNDb50q$YKTtzQZ8Qcszea3Q*9} z)5S4FV`B0G5rapQ|NQ^|-*(R|Ny(`RT%R4gCKlM8)N9CMdf4eOS$)zICKG25rYoGy ffexGr2@DK}AFAEl?xoNRG=#y^)z4*}Q$iB}Ky4`= literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_optionsDropdown.png.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_optionsDropdown.png.meta new file mode 100644 index 00000000..e9560236 --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_optionsDropdown.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: 62a48d93e78c63b4ea9b46537c7c0091 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_play.png b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_play.png new file mode 100644 index 0000000000000000000000000000000000000000..0608dcb7ab4d0a1a5d2e56b3e7affa340ee4d695 GIT binary patch literal 256 zcmeAS@N?(olHy`uVBq!ia0vp^JRr=$1|-8uW1a&k&H|6fVg?4j!ywFfJby(BP;ir{ zi(`n!#Hm4!T+IdoF+Tj2&H5kaJ@PIRX3^it@z=+0!u<{pTkc<7_iR*NM~Q@a-?B1j zJYz8XjoJogLDi3rIi2f!-!AifprEK~XV`buyYgvWxf936fd6)#(`Ky>4Si_hyD?xd zo7Fmvr3UAVw_JNFW<$T%X&MBcEjH{|{-0xuic+ORkMZ}fy zn8bun1{WVLez{4fQ0Dl0-+1ZQPur8v{{3jmAeR59;KbVEH5EYDGkCiCxvXpGG)Y83R49>^k}+$8Kp2L<>f+`ggtSveOC}W@9EARWZf*^NOP7M; z?{IW04ia$@obne0hoTM{>X5;yTc~5j>gCRwgS11*3y0qOKHul@oi{LRwOVn4AUxyO zC%o=w`yH?Ncs#x~P4h*JsX&sXJBDF)x~|Kc%?3nKoanl)VY}TzmSyEQj*nGUeN3Gd zMJa@_iq5T}OSw z5SGD570+irYZwLy!w?L^fIQD9Z)QXW{t<3|v1fjUQD2xW%Ytc|kR%Ccnnou^9;6_Q zqKLxl^%~+h2HUoQ<2dTiOnCKJ*|u%Jm&@g@D2fOC+1tfp0X)w`-}kWJ@4@ptNYiw> gIGlf8`D*~20Kj|d@@JyvGXMYp07*qoM6N<$f*&fV3jhEB literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_play_border.png.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_play_border.png.meta new file mode 100644 index 00000000..ec6da619 --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_play_border.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: 45e128e1cf00555479ee7934ab11cadf +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_skull.png b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_skull.png new file mode 100644 index 0000000000000000000000000000000000000000..7e5397545d7a45641ad23338850e6cb0b88f03dc GIT binary patch literal 227 zcmeAS@N?(olHy`uVBq!ia0vp^AT}2V8<6ZZI=>f4aTa()7BevL9R^{>pF{z*hZR2Y?Yk-ch#Koo?JKZT7=Dr<|Ru+S*cI!};iN$D#HVr47% z0zx1*7Pq-w2&A%zsAaIwG=d62H#-tT;F5ubVdmSzSymt}!!WKCMR^oO@j=tH8)RMA zy>Hw0v@Ax^2p$zK-1YJrzYkS(eeduKR&Uh7OF(FTb^IdmDx!sj5nnB%z=f4aTa()7BevL9R^{>$+Q-p%fJeONQYMtD+`qRv0zM#G2+ELR(T@C*1i yf7-ktN#oik#*bPGVQxafZCx7;4Gatz7;bn?UAF3X!Zn~n7(8A5T-G@yGywo>oJJ1- literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_star.png.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_star.png.meta new file mode 100644 index 00000000..4a5ec31e --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_star.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: 645aafe2260b2884a9df05b4bc01b1ec +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_star_border.png b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_star_border.png new file mode 100644 index 0000000000000000000000000000000000000000..4615829ffcca351f0e09b4b4287cdc14d2044f1c GIT binary patch literal 323 zcmeAS@N?(olHy`uVBq!ia0vp^AT}2V8<6ZZI=>f4aTa()7BevL9R^{>)M{{R2qJVSfp(U}u0Sy@^6Vq#)0-MMq;l7iVL z8RZMJ0@Bjbj=#UZ|FuokmlHeIt?TRV?Ce~)Z{NSwd-nXX^z%EXUH|{z-SZP>&%T|L zo&CH1`nuTv^7eIqf4aTa()7BevL9R^{>QNTh{iU<7c&ovDsNyG-pFXZWAl?kyu6|u-FzmI#H8}* z^_TBTj@Dn`_Sx{kQ}dxkU*eUhjk&ikyeTw$;QHP+GCMMeqjAeM=gr3@Hz!Q87o8fk zV;%S2@;T2rHJ`qJv}>J!(*cQQ3FSG(_a}dOwlDwI_qkEo^4&$}LcAoaK0Q1j9IKVF Uz+qRVG|+Jjp00i_>zopr0G3Bs*8l(j literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_ui.png.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_ui.png.meta new file mode 100644 index 00000000..6cd6c6a6 --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_ui.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: cb46e1d925af22d43a6f8bf0e1d459e6 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_ui_border.png b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_ui_border.png new file mode 100644 index 0000000000000000000000000000000000000000..6613a3d325a527ada017fedeaa3447d3728e9eba GIT binary patch literal 259 zcmeAS@N?(olHy`uVBq!ia0vp^JRr=$1|-8uW1a&k&H|6fVg?4j!ywFfJby(BP;jfK zi(`n!#J!Ug`C1GFT>tAy=rt%l~V#R=!D_zopr E0AM_3LI3~& literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_ui_border.png.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_ui_border.png.meta new file mode 100644 index 00000000..0a7de21d --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_ui_border.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: c0c40ceac3c6df146a0fcd4e6b226540 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_visibility.png b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_visibility.png new file mode 100644 index 0000000000000000000000000000000000000000..56a1324846d22c617d1340eebbd88925cced18a0 GIT binary patch literal 298 zcmeAS@N?(olHy`uVBq!ia0vp^0zk~e!3HF=pW8M9Db50q$YKTtzQZ8Qcszea3Q+Kl zr;B5V#>8X?_W%F?e`k5*>QKYpvES*V?1~xc%z6w{uCP41{GXF~f|TzJJGT{S+6r5R zJMJ@mEK<0~e&l>Z1mmiAi~`<_8-)ejnKl{->^3$sl4H&kV|=vRVGi#RodD*$jX#tp ztyS1&9n#0TN^FTci^>JAQpPjdOc}E#@;-D9N@qTD*2m#n_=aGC11udsH?RnMoZ)#_ z?siPs;gz+pSgQ?>3d01(niFvhP0S8|IJ=`J+>n%Df5NJ8l#~0&?pGAxT6*R49>klD$d;K@^2&C2VORq!1K*fna4~2mvceC2Xs&;2TK5 z!Xn8_SOwohEKRVq5{*AtstJfTJATL9)n%Q%@a@msnR9369;fi$$8Z5(un#LRhB>^! z4V=NAaxN4kYVZyz>_Q!8{(nrNQC!@H4QRp#yhy-u+Rdg_AHf4Gppz|Dr8`LMUm~CI z3e~_)D{ut2KSg*9f7Sjbo!EAt%FfJq7f$ujFPU&|B3G^?$Q?^P4JD%}I^;EhZHbkM zNMN;igk0>vBOK^hh3Z|c&0nG}rV`j@)h<*Q+qAL7*3`2}9c#@!46J4AIT00kwidUn z N002ovPDHLkV1mOvm^uIe literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_visibility_off.png.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_visibility_off.png.meta new file mode 100644 index 00000000..c037ce26 --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/ico_visibility_off.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: 0c0132429106c8a4d89d9d0a6b723ec3 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/orangeSquare.png b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/orangeSquare.png new file mode 100644 index 0000000000000000000000000000000000000000..c272180edf95f9229ae13d1eb1c0362d92759ab5 GIT binary patch literal 104 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61SBU+%rFB|oCO|{#S9F5he4R}c>anMprDke xi(`n!#N(E8hH(Gnn1k=)1;xK#l381?e NJYD@<);T3K0RYm0RxJPk literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_atlas.png.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_atlas.png.meta new file mode 100644 index 00000000..1e2ba265 --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_atlas.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: e2279677842a8064fbae0bc889fb85ab +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_audio.png b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_audio.png new file mode 100644 index 0000000000000000000000000000000000000000..90c521249c6777aaef0ba7a53c81f9744892bc82 GIT binary patch literal 338 zcmV-Y0j>UtP)pG1W80eR49>SpcP=lCBcYGLS0>bnzOUB$=$nmpa1>)_YX*H&z?Q4 zKW_m;x3Y8lPUfcI`8W5fKq_?B&aspZ@*($BwK3mqu|_RaG7k zW7e!$CO}Of+ZY4|1^408XbHr2KwEx-I4f4Hc<}l2=igAdZCI^QP*9k#dGqFnPoF;h zdhz1Lw;+FMX=%*^O4$Ih3=Y>ZIPKfF?igP)pGyh%hsR5*=e7;wOdM@|`tO@R0(5O0Ul7=Rgzm=O@i@i>Hc%ZiId zO7L;|{Qv*o@B8=f-+ZI7zKTe>(l-zB+JC`?;nHEy`u~g=hrhZy}bMJ z<;$11U%!668K|xan+uE-6cjS~S^g`CzPiTqmz9Izhp-&OcVR__*II52KPA*SxPO1; z{Qu@L*RNl{E&in(*|TS{f`WoCj_uigll{hF7O8tjco`U(7`_QeGyMMX{qt94 zGY*Yc=M-MNc<~gd{t&v~YyLyQ&!0d4u3x|Yfr*L9F#!RAqk<9T?-*v>{mNy75FpRP!^4u5mBsLbjaBeH$hkkiF#P@d_cxIF8K#zrfds(v z<1+)ug+S(CY%X{Y1V4dcz>chmk&%&w_3JwZg#%L%#14U#J4L~u4HCn zV&d1*(h^{2XJ@{5@80JfJ9e<}eS5{t_Ui7>w{KqG28u2D_wU~_p!$!vT&gA}Cf3!~ z)^=&ts#W)tm6ab#OG{q@8r;eNNu4MFUs9F>VowG{Qhv!W2mu2F08Rp}xKNEjp#T5? M07*qoM6N<$g8J0>{r~^~ literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_bundle.png.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_bundle.png.meta new file mode 100644 index 00000000..8165726e --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_bundle.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: 58676a985ae875646b7be748cf4499fd +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_cog.png b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_cog.png new file mode 100644 index 0000000000000000000000000000000000000000..fd589a0f316096bff8afdd0b9fbe51b3138d5466 GIT binary patch literal 406 zcmV;H0crk;P)pGNJ&INR49>S7%;$$Ma)P_N~-w(|NnNse*L<~!^2Y|A|m4T`Sa&D zK)L6H46J$i^5wVFr%%7Csj0aDqCtF+I6h5sK%5a47Pjy2-@pHn0f-M02g+vxu>yup zet!Pet5>hS`}60|Kahrt7cah@K7INP5Dnsk#IIeu_8z1TriTU200NLAW@cu_%a<>| zGd4D!2-L6*DC~9a+_`*RU0tDnKmbyQ&Do-bg@tE82F#v4`zDZY4iz^C@j>D_IXS0+ zd_fGIz))>Dd-m*WkfKYMF1-a>PzMw?0ns2nNc_r`D{qB`g*!2v&Bw>bAuTP<4Rjd; z$caFM@{b)m7G-5+B?{t$0*w&}fL{57&DlmkToVxyaR5(fXD~ow1t%ano*A*Z0GPs} zK7IQ1Hok0944~0%+A3JOBUy07*qoM6N<$f=el@ A5C8xG literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_cog.png.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_cog.png.meta new file mode 100644 index 00000000..317df576 --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_cog.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: fb605a2688b31194887f2e7a6769235b +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_cross.png b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_cross.png new file mode 100644 index 0000000000000000000000000000000000000000..a34a3e8a0f23b3390c7b578fa3b0db5b4157e266 GIT binary patch literal 210 zcmeAS@N?(olHy`uVBq!ia0vp^{2anMpkRxq zi(`n!#AFE*hqn3i_w%|4YxV^sBqVHj@bmNY`=?HwI>-34Euhd@KwgD!((x>Y6Dbp# z{yTj5{{H^|0A?RYlMa3+g~}D&2Dxrw9E+~6jsDIsliyTe`DNaTybX*hy=^=!4Nsq) zoh`4F&GympQH#l>T;rd0%Ph8>>`R})_+*(u6%!j9gI(_3o%sQ3VLpGHc3Q5R2Y?GWPkz*2?=i?RSLvLP@!``-2LLki>)9IGl&ou7jI@_ zVwxes&!o_m$;a+x!NGp&`fr8rzZjypxw%=se*L>OK3}WmXZ3a#~{He%CPhKL53fHe|}*B34XG$Wca433081#!+HkYAG{3B#t@4XxMdh7 z-kit41oGW~7G}5||5;cV*qPbkd{!n_a0oC1ef5t0<;zG0U_f!*yv4xz-~q$SA8#1m z{Cv;w_}g=a#Shjp{P^=Tj}a+&Y8bG9fB*iqynOkx7HlUdoPZ{S0$2)&g@O1N5TE$} i|9>7((F_I#1_l6)Drz~&RO5yK0000anMprD7R zi(`n!#N-r)Cg0g+f71^z{`vFAK}6ZiQjLv^LD??)BjbYZBM~1oKYaaqRQ+$4QTl&& urcEYBMnPf;i)VSVEHL>!-)1cj55t^we1F}Q<{1OcWbkzLb6Mw<&;$TUXf4VB literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_folder.png.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_folder.png.meta new file mode 100644 index 00000000..4994f098 --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_folder.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: 4f2c4b43188596b47866d41e1dc13c8a +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_fonts.png b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_fonts.png new file mode 100644 index 0000000000000000000000000000000000000000..9ce1a4de4485e5d4ab57c8f94b8523f6b9c46436 GIT binary patch literal 465 zcmV;?0WSWDP)pGgGod|R49>S7&L&92sOfvj*io%q@*MsKYslD(4j-AK(S8*H32a{ z5C^QX-eF^7v(?hll3u=i`MJ4s=U({(1i)Ak z1j)U6_3FE*s3`l37caho_&_h304W8SUgRi_Yiw+sz{SPI0Wtt+C~JItJgb0!0F$h& zZ2$A;&tK{3>8W14crh8|MP+5>Y@nVcAdM_YhHP(cZdTIP*0%fb;luN9-@d&ADzpG07*naR49>S7%;$$#@AL2C2ox#U20gKydEdxi=gf9E~6v#0QCkDPZGFn|91TgZHnJV+geW=BWIHUH7T=g*&iqlDm zAoD@;Aa&UMY_M$Evb+EBfTc^9-T|q@rWs^Y%b7E0USZP+5(mjM-~r5%l9GKur+q@! z2;zgp88D+31BmMC>dt%f=FNAIMi33+gTxt#1PV@0PV3&id-ub|#bqOi&p;wj5*8Nj g0MQJC3@|VN0AR)IPx# literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_heart.png.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_heart.png.meta new file mode 100644 index 00000000..ad6c3fb5 --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_heart.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: 20794834c0a413f408b80110d0fc73b8 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_materials.png b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_materials.png new file mode 100644 index 0000000000000000000000000000000000000000..5a4b7eb1bf282c87f82b1f2ce362cb37312ff6ff GIT binary patch literal 355 zcmV-p0i6DcP)pG6-h)vR49>Spc`OB<1+)Xr?9Ya0xvJG&Mv~hz(7<`P!KG5{rdISYuBz_@#V{xLYPKoBuze+mX_6~rlz8*s;Ugi z%E}Dl;^GWKLPFd?pmg!##p^&dw?GP6U^;+KikFd*0ox!cDaoLzsR=g?$QBh76N?8r zbu)<11d{+dO$MLmfwsZr;WmB${{0Ei-RAG#zh`*<{5f1Phz%0^^y$+R3{7v}zFi2E zw0rdEktm4&=FJGjL`r9002ovPDHLkV1i2c BpN;?k literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_materials.png.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_materials.png.meta new file mode 100644 index 00000000..0c39c336 --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_materials.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: e02713e10d7aced44a7a651231f0adef +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_models.png b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_models.png new file mode 100644 index 0000000000000000000000000000000000000000..42f1f236a8149ffa2b1cc8a076f7e4449356632e GIT binary patch literal 380 zcmV-?0fYXDP)pGE=fc|R49>S7*HU^#KcsmqocD0L<9K}=n5E-IqdB0ozBkA?)LWf zssaK6T<_n%|9a@qp*wr`?%nzG=g)GOI%XJylaq5|WMrg2P?H9b%?1@?Q&(3P2O1#p z?AbHbZ{NOcN7f{zsi|23l$1Gm@Zjw~fBt+E6cpsTc=6)nU%!4m&d<-6`u+Pi&++5O zw*b|CW`Sz@2qO4_Ku=Fk_xtzn-xe)ebaLCaZ6*>D5{e)>ph5qE)H@KH30p`2oyBEr zY%B=Wz=cg7rs*rty`TR90bBwIU~FI@{C)oX`DY;W2TDKyL+b3EJ9qxGu&@XMUCGDH z%>35D!9j5D+_|@-qN0``J9exEsO&XJEh84&jetQPAucYi|MlzFb8p|iT@4gF$1nhZ afdK$^w{jgtX~#DJ0000pGpGibPR49>S7%;$0KwcDxzX7of5QhV?8W2AM;-BaWH8?mp8hChk znt^O1Cnu+!jg5^LfnpshDk?jkKY#x9=FOY$#l*zAFsx8eP?-4U&71G<-@pHo0^)gdwF?@ZQHi( z-S6MO|LN-LUVr=c?XP3Uj`d*kpHX07;Lga%$YVfuO;J(Nnb)shf8V-w>mz1n=8f6e z*{4Cy#}`0>7cX9X1JZc!-n~ySr&d>2UjWeu4<39DRO13u%!H;{{lbL{?;k&Y{A1Im zO;11qmoHy_w`|$6i(9sAc{FR*touNrYgjc01O#{hLs^2CmzM=-+Xe{A8CT{P{P)z1q>tt jCm=2cVgrUj02mkmkjv85ZQi$C00000NkvXXu0mjfR!rc{ literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_particles.png.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_particles.png.meta new file mode 100644 index 00000000..dc5bd9a5 --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_particles.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: 8003873ab749935489bb11f23f830856 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_play.png b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_play.png new file mode 100644 index 0000000000000000000000000000000000000000..c441add0cc7487b51a19627c59917815d371bcb9 GIT binary patch literal 217 zcmeAS@N?(olHy`uVBq!ia0vp^JRmj)8<3o<+3y6TI14-?iy0XB4ude`@%$AjK*4TL z7sn8diOCD(A3S`RIc@6Hx9motA6F)~8H$LAIO)agnDFoQb^Y6qkN4ZNbKPZrRButb zYUN7bzx=G}=jK%A=H=~^&{*R=g-zhc&(F{AcM7Y=F?&t;ucLK6VN2Uk!4 literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_play.png.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_play.png.meta new file mode 100644 index 00000000..3b873599 --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_play.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: d8306b1e159c72c4ebc9a4fc31debe60 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_prefab.png b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_prefab.png new file mode 100644 index 0000000000000000000000000000000000000000..abc435323589096e2a85aec7d8960643efc53863 GIT binary patch literal 343 zcmeAS@N?(olHy`uVBq!ia0vp@Ak4uAB#T}@sR2@)1s;*b3=DjSL74G){)!X^21ZU# z7sn8diOCWH3P%qe3VQzb?Os+F=AS|pp`Sm0F28o=N=(JCFE6kEclhw*<70gVI}e%F zY=wm%JG;g8_kDhTet!M`i3}b46Am`rcKGROu=R|A`qJgg!&z8ZPWa5X`}+-~%+uSu zIQPzuk00B3rRAzCD?R`I`r7>*Xk2tdmi=LqVsTN?xvew*{rUNMeO_K3yQ7JZj=uhT zo&Z^P4?|(I`PCvKSA87ZhSFd(4En4n3w<^}rF_9@CPI}n{!S1(iNl8h94r};L{@%I0 lJwKfJ=s80khJ*wLhVlgy_8;k}Y5;~5gQu&X%Q~loCIH(^ly?9C literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_prefab.png.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_prefab.png.meta new file mode 100644 index 00000000..a5642f25 --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_prefab.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: ed3789262161efa4fa33c85ca534590e +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_scripts.png b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_scripts.png new file mode 100644 index 0000000000000000000000000000000000000000..c79b66833bb38b3cfcaf1efcc4ec2e967c4e7067 GIT binary patch literal 208 zcmeAS@N?(olHy`uVBq!ia0vp^f*>{r8<6y`Y?T61oCO|{#S9F5he4R}c>anMpkR}y zi(`n!#AJyt2RuSUOQpEEy=^;~7dh5Uu-M3ULQ+CPr{d?Qr`vOHZ?jEHPR?e!s9@(I zqvF4X@qc5&$45uY8iW`Q}D}Sb9lNz@<`{|2@AZZ>+NOL+*A7c8oPqMkguJP z3g0C5mCP%b&-8X^cw}(UpySSsM#iqoCmk5r*ci56nAf>4>xd7~H4L7velF{r5}E)W C9Y0fhdEP)pGElET{R49>Spc!C9;~Q!V80V|{QCX$%LAuB|9CqGD1H|t z$%3R%ug+-7G9TkijW2>s44(uT7+$h{u+6TJ{Q2k4j|LRQObjdm7OtskkAxT)X74FJ z%Pb_w${@hS0#tYmrUtI~AH$zd_hf(k`6J24Ce7+AwR2JJxu+M7Oae;nf~jFfa>n~t zY#*(7y`3cfnW^$=#rUdm@-rDfJaF_lQ0@h~V)B;3EGl1gf7-$R_ Z7y#{EYeavV3rhe1002ovPDHLkV1h5QtNj1~ literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_shaders.png.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_shaders.png.meta new file mode 100644 index 00000000..cf0d6e2a --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_shaders.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: f252c69cd0163714eba038403f61b09e +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_skull.png b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_skull.png new file mode 100644 index 0000000000000000000000000000000000000000..22930f4dff4fb6b1a715519097b639c0214e6677 GIT binary patch literal 368 zcmV-$0gwKPP)pGB1uF+R49?nQay@;Ko}i^41#Q%Gz!~Ut&Ng9q{#qHiKe5>XW8pyLLIjyimz zo~Lmf|29p-ilVr9c3GATI_mI=!W7eVT{rCe{_i{t4*fW7N*=)UeSg6Rv^frN0}lP# zI1q&2_%nBDnr=aGgG0YIiZ+b!&6=yKI@B~x;l1v=u3Pg>`y?*{LjD0_ZSpkwGZC%; O0000anMpx|Xs z7sn8diOCXk8rs{Jx9arj=;)NP^UKxnE%MxEqN@7zNxcHYMFl&Kr4ssH!qr+B1sN5AfsnHN}ldU`@`+_*90 z-{0TI3!a^sd0j#32z#gSl{G6@t}J?WWo7ugckf>N`1($EFzHyoaN)uu4jdmof8Nfd knQxMqzv9ON1|A-Ulj|3ped&L9JJ5R!p00i_>zopr0A1^Qv;Y7A literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_star.png.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_star.png.meta new file mode 100644 index 00000000..5f946e36 --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_star.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: 21820ec6fc9dd0b4fbf42a3b93fdad4e +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_terrains.png b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_terrains.png new file mode 100644 index 0000000000000000000000000000000000000000..750996d613ae7009e2760d9c4d8789612e9702dc GIT binary patch literal 309 zcmeAS@N?(olHy`uVBq!ia0vp^0w6XA8<1SE`<)7q;w2AI7y-w-3hMR0zr8&_RXhA%S7+zf zrW^kkDyXSF;|SoCxBEM7wt0RX$K?sLW>pp4-BtQM@efd7AN#7#150O~K72U&@%{bv ziLd_KSATo+x?5a--(PnoPft(vhAh^Nk^)Rc-|Cqje0zIaej?M%M%H5t$F?4AV&#@& zn8`1}!2ncu@OZy`^Ua=&A{(9-Mh$`ah5_sb1`G_E#Y+NQ;_7vQUS{xg^>bP0l+XkK Dah`nL literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_terrains.png.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_terrains.png.meta new file mode 100644 index 00000000..a6ec3f50 --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_terrains.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: 4a091a7609ef2d34bbdfaa1a886deb18 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_textures.png b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_textures.png new file mode 100644 index 0000000000000000000000000000000000000000..6aae96483f84bee1755eeed1b1ccb872539b13bb GIT binary patch literal 278 zcmeAS@N?(olHy`uVBq!ia0vp@Ak4uAB#T}@sR2@)1s;*b3=DjSL74G){)!Z!;0aF` z#}JK)$qMWSi#}FfxDh|$N4$ZFq_nhtK}pG#){p1sSblzgYiqVofo%M~n1A2iMl*Gs zWfFb7VcWKAFWhD|01=Nzy8^W$Uv z!-o&^6NTQqd9z*M!7V>PNjU{YK6;Q{02{q_GJ)CB|uRqf8WsAOSp zZ~y<`!^7?Nli%8O{rU3v_4W1Pa`tsR{pM+D&-O1}x|Bch&tmufIL4LC8&7%(rZBLv ZG3=K0P3}1Foe1<3gQu&X%Q~loCIG7cdr<%Y literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_textures.png.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_textures.png.meta new file mode 100644 index 00000000..8b18172a --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/project/ico_textures.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: 3e6b96a975eba1c43b2bad66fb7f8b4a +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/purpleSquare.png b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/purpleSquare.png new file mode 100644 index 0000000000000000000000000000000000000000..dd219ac3778c1e3f6361c363ad6d5f6856c76813 GIT binary patch literal 106 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61SBU+%rFB|oCO|{#S9F5he4R}c>anMprDMW zi(`n!#N?Q@#q%3Q4jge%lDKNHDse?dLIMLro;2e%hOPfU0o5^hy85}Sb4q9e0KFI- A82|tP literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/purpleSquare.png.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/purpleSquare.png.meta new file mode 100644 index 00000000..bf91b956 --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/purpleSquare.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: dc0ca9b32ae9fd049911671cf1a480bf +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/redSquare.png b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/redSquare.png new file mode 100644 index 0000000000000000000000000000000000000000..798457f49eef9b7e8c27d20db55a3570fd2c4074 GIT binary patch literal 106 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61SBU+%rFB|oCO|{#S9F5he4R}c>anMprDMW zi(`n!#N?X8Cr>(XB_t^b_GC$1H3%^=FkoP?Wnq;2uXyMdP#uG(tDnm{r-UW|hN&5< literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/redSquare.png.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/redSquare.png.meta new file mode 100644 index 00000000..c6285de8 --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/redSquare.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: fbdd7ecf39c13bf48a5bd02a1159c90b +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorder.png b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorder.png new file mode 100644 index 0000000000000000000000000000000000000000..51afe67326b5bbb4358d880a8eec9d5a10cc769d GIT binary patch literal 122 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`oCO|{#S9F5he4R}c>anMprDSY zi(`mIZ}K0079J4>F@eHwZz4CDNJ~o_8yE&~xbaGuCR}0QSYTjnY{0;anMprD$k zi(`mIZ}K0079J4>F^#o;%l^&w;Sp&HWOn0~FlAuUICGANhk=EGQanMpkSG& zi(`mI@7u|STnz?149RRC*_Zz8viO-(Dzrc71^*i7zopr0L67hu>b%7 literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorderCurved.png.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorderCurved.png.meta new file mode 100644 index 00000000..7704d55f --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorderCurved.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: 4896b5aa9d63dec498136c21ffce735b +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 1 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -3 + maxTextureSize: 32 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: 0 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 100 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 100 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 100 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 100 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 100 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorderCurved02.png b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorderCurved02.png new file mode 100644 index 0000000000000000000000000000000000000000..a1ed49d445d61396bf5e07beee7ae57f73a6d825 GIT binary patch literal 281 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`oCO|{#S9F5he4R}c>anMpx|jw z7sn8b-nWwv@-{1ow8>X|RN!mid$4hKMA*vW8=3qE*yFR!<+w>I3vJGOX8UH&y4Nbu zoABe*hsE!II~Vwego>)TecE;KWO^b?^}&YL2T5y}-gvMwLGi@2)K0M<(&>}x&ctuv zj0-we9pIBc&3R@8%;d`;VQPAAyZRt1X8*cN}bWtEMVj*aM977LTh&(*zsT&!pJ bDn&8Aja;eBwVt^Y=q(0MS3j3^P6;G|$ literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorderCurved02.png.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorderCurved02.png.meta new file mode 100644 index 00000000..457f80e5 --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorderCurved02.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: ff88be84254fb1f4b9a81a27ae0b2e81 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorderCurved02_darkBorders.png b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorderCurved02_darkBorders.png new file mode 100644 index 0000000000000000000000000000000000000000..2b313e46258bbd042a3eb1048f101f8cc698c393 GIT binary patch literal 336 zcmV-W0k8gvP)pG0!c(cR5*?8lQD{eKoo}GM9?N1(8?32rR|;~30^_%LpmEfI}_Me zkD!DcL>$3lJ%RR{LTx7R5jRx=%C`H%@Md(rZ$|JjnBuzbmN9n3VdL@xUgt*$!EwZC znqHqzJLZ^JM)RaJdzng*(>f+R^VLHg9Xt|3VhXxsLL_3PQr*j;-p ihdJ$x^^EWZ0N@Uw6N6qYJeYg{0000anMpkTSD zi(`mI@7u{6xeh4sxCrmw^5{vJ#*hE=pFVk}vMu=Xl8_e}1z#U1G~StAanMpkSJ( zi(`mIZ}N}-|M!asyk~nf|9>aD{lcmxGbAJ=#27zjDm+V95o)-?^f7Wn+yc$}jWe1X zT^KGg7jbrcoZslfaOw0B2So|fgewd)80}B^o^p64exhNqLyUWuV!&2jhng9O-u#K@ aVpvkPqanMpkTMB zi(`mIZ!$yU|NsAu84Ilh=CePV|G%(#et@aMR-Y5IrZawIR_J3%a%7WXP+<@K%&@Ax zlQHX-vw~Qnf>6U1r>{$l9p;K0b5LS<)yeRZ)o>s4Mg~bXj)pHy68|Mnu>60h=*cKy z%8+z`zi6@G67iG+yb5K?hl|WN#AO8S^Y;u|reo}=dg9DE9v%k48O%2poxC~+=qv_L LS3j3^P6anMpx|sz z7sn8b-nYSyT!$3|?(lMcv2?VVHs{xiOExOYFQuy}Hon#ASvfsO^*Ucq*SVgqbrxrI z8p;c{-Jh|N_vD@C)mIPO?q%anMpkSA$ zi(`mIZ?cb<*QBJx#K<52|JPf)xw)CKDKP}R)n9PSx&GguPWD%+kxyQ}eEH__#{cyM_8UjPhKR+;*eEaTkEK|kyY}5V^>;=vqM~3(gJ}VDT6GA zGY#?ww)k#xn;;jkj7hSfgTe~DWM4fq-Ic^ literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorderCurved_darkBorders.png.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorderCurved_darkBorders.png.meta new file mode 100644 index 00000000..5367d227 --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorderCurved_darkBorders.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: 25da15ac84743244ab4c860cf8798ec8 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 1 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -3 + maxTextureSize: 32 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: 0 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 100 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 100 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 100 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 100 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 100 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorderCurved_darkBordersAlpha.png b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorderCurved_darkBordersAlpha.png new file mode 100644 index 0000000000000000000000000000000000000000..4ddd37ad4450952bb5dd03637b99f6e8afcc5281 GIT binary patch literal 200 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`oCO|{#S9F5he4R}c>anMpkS4! zi(`mI@7u{6IS(iZxSm%IJ1LTB<8~)FIO3=*tJ&TQkWnE^Zu!b#Q u<*Gj&xY4SW`DFF~9+z8&8?7tP3D~RGm`MM&30nws1%s!npUXO@geCyThex9T literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorderCurved_darkBordersAlpha.png.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorderCurved_darkBordersAlpha.png.meta new file mode 100644 index 00000000..53d1d555 --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorderCurved_darkBordersAlpha.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: f536c51d3da3f2e4ca93ac8773ec2ad8 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorderEmpty.png b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorderEmpty.png new file mode 100644 index 0000000000000000000000000000000000000000..188ed94dc5c375d5925ddcd7fd22b51cb1dbc595 GIT binary patch literal 114 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`oCO|{#S9F5he4R}c>anMprDGU zi(`mIZ}K007M>{#UOWshQanMprDGU zi(`mIZ}K007M>{#UOWshQanMprE#= zi(`mIZ}K0079J4>H8w6r?w*4jEK4$4cFsu>?~yXdI`F_CVL`DnGc&_Jb{%V(} P+88`t{an^LB{Ts5H+UYQ literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorderEmpty02.png.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorderEmpty02.png.meta new file mode 100644 index 00000000..cf928e3c --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorderEmpty02.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: 29b0e8156f6fb774faf129c83bc9ee33 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 1 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -3 + maxTextureSize: 32 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: 0 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 100 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 100 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 100 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 100 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 100 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorderEmpty03.png b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorderEmpty03.png new file mode 100644 index 0000000000000000000000000000000000000000..ca376a89c1bc8fe52bea75c4d9312d7d03e7d85d GIT binary patch literal 122 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`oCO|{#S9F5he4R}c>anMprDSY zi(`mIZ}K0079J4>H8w8Bqih=#iX|EwBz#ZYldI70kuuQXk@z&TvyqYEi~^4&*Vda$ Qf%+IcUHx3vIVCg!08kDdzW@LL literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorderEmpty03.png.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorderEmpty03.png.meta new file mode 100644 index 00000000..13a55356 --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorderEmpty03.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: c0a56b88a1b449045b3fe5f561aa12fa +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 1 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -3 + maxTextureSize: 32 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: 0 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 100 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 100 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 100 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 100 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 100 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorderThickEmpty.png b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorderThickEmpty.png new file mode 100644 index 0000000000000000000000000000000000000000..ec9ead73db0edfdbe31bc68ee6b8b2f164137618 GIT binary patch literal 121 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`oCO|{#S9F5he4R}c>anMprE#= zi(`mIZ}K0079J4>H8w6r?w*4jEK4$4cFsu>?~yXdI`F_CVL`DnGc&_Jb{%V(} P+88`t{an^LB{Ts5H+UYQ literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorderThickEmpty.png.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorderThickEmpty.png.meta new file mode 100644 index 00000000..881608dc --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorderThickEmpty.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: c456d5ac01d2aa843a63985497b04931 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorderThickerEmpty.png b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorderThickerEmpty.png new file mode 100644 index 0000000000000000000000000000000000000000..ca376a89c1bc8fe52bea75c4d9312d7d03e7d85d GIT binary patch literal 122 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`oCO|{#S9F5he4R}c>anMprDSY zi(`mIZ}K0079J4>H8w8Bqih=#iX|EwBz#ZYldI70kuuQXk@z&TvyqYEi~^4&*Vda$ Qf%+IcUHx3vIVCg!08kDdzW@LL literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorderThickerEmpty.png.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorderThickerEmpty.png.meta new file mode 100644 index 00000000..bf4c195b --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareBorderThickerEmpty.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: 7acc6bd588627b046bc1c9b3cd78a6c7 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareCorners03.png b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareCorners03.png new file mode 100644 index 0000000000000000000000000000000000000000..38dc1bb8015f9a79cc3209cb6d4f0dc26efc98d9 GIT binary patch literal 133 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`oCO|{#S9F5he4R}c>anMprE;@ zi(`mIZ}K0079I-*Wr2o_nyeWT8Z08x4Ubr7Oy*=vv1NYG+QlnTVIakwk=USU$zmkT a%*anMprEOz zi(`mIZ}K0079I-*Wr2o_nyeWT8Y~6k2Xd6f4txoG)0CKS;6U@mj3sGt2edqY-#KxB Zfk8H0fpdrTc0r&444$rjF6*2UngB35CO-fG literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareCornersEmpty02.png.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareCornersEmpty02.png.meta new file mode 100644 index 00000000..fa82dab6 --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/squareCornersEmpty02.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: ca2f91cc405eb144dad970eb23db2f72 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/tileBars_empty.png b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/tileBars_empty.png new file mode 100644 index 0000000000000000000000000000000000000000..8e17561d53740055d922d1c24df9d17e43f6853d GIT binary patch literal 236 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz&H|6fVg?4j!ywFfJby(BP;j27 zi(^Pc>)UINTn!2$EEg=dZs|~naaq2Nho$>Va=f(C-B&-@1V!}h!%~jfT^e* zN!VYsf_J}mLhFYJ;r(I;OA~eF#1}kR=#X7=s`aA8^iRtk&p)gyY%c5nL|xI|`G!OD zYJWbcz6*~wPq4o$8FH-K-Z6^-W|B ZusuG#)AVYPb|TQF44$rjF6*2UngBkaQPThb literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/tileBars_empty.png.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/tileBars_empty.png.meta new file mode 100644 index 00000000..17169427 --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/tileBars_empty.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: d1278357b25e10442b6ca6c24edc9781 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/tileBars_slanted.png b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/tileBars_slanted.png new file mode 100644 index 0000000000000000000000000000000000000000..c8cfc7fff7801ff59d70a57f7721f9e2828ae25b GIT binary patch literal 285 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz&H|6fVg?4j!ywFfJby(BQ1HB` zi(^Pc>(OZ^IS(5MFqmg5w*S`GKekfwVgk>x9~a^-9cZ#U-DBspJ>Kz6PpaDSe+A__ zyPu}YU271qWcPNMA+v>XVbKMameUK(6kPdC88eG^aCuBU9OgTe~DWM4f@ZM@O literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/tileBars_slanted.png.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/tileBars_slanted.png.meta new file mode 100644 index 00000000..bbf24c95 --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/tileBars_slanted.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: c99a391f381fe534c80a193fe9f307a0 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/tileBars_slanted_alpha.png b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/tileBars_slanted_alpha.png new file mode 100644 index 0000000000000000000000000000000000000000..776309196aee7c5b4c5d5fdc8b19fd8e71cb8f62 GIT binary patch literal 266 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz&H|6fVg?4j!ywFfJby(BP;if@ zi(^Pc>(ObJT!$Ta7^ZGf{Qv%w=i{o)!4f?mH?A&rSm1VMO4ZhDb&JwpZkBqtKmYK? z$a~Kh^A=3poWXSGiGlP3t@fD=<(55cEhiFH6nyyn85b7q;O3ZqIMks_<{ZanMprEj) pi(`mIZ?XjI;slW%CWC|o1_l-Z2F7h=jf_BP22WQ%mvv4FO#qDR6tn;U literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/transparentSquare.png.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/transparentSquare.png.meta new file mode 100644 index 00000000..90dcc596 --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/transparentSquare.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: 4d338c631fa36f345b72a36f1c91ff9a +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 1 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -3 + maxTextureSize: 32 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: 0 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 100 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 100 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 100 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 100 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 100 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/whiteDot.png b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/whiteDot.png new file mode 100644 index 0000000000000000000000000000000000000000..768a2da31056ae9e904f3987d24054a50562d5d4 GIT binary patch literal 148 zcmeAS@N?(olHy`uVBq!ia0vp^93afW1|*O0@9PFqoCO|{#S9F5he4R}c>anMprD(l zi(`ny)MSRn|NsB5X8vfU@Q>xF!Zs_PAl{Dq|BtgM7>cs3$cjmjRi5yJ$E2g3(fY@s sBMuA=B5#f<@1H$E`6@@nY`kL{fF?3{y85}Sb4q9e0HxC}A^-pY literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/whiteDot.png.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/whiteDot.png.meta new file mode 100644 index 00000000..4e58e418 --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/whiteDot.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: ed7cb8f9a27664e48896c904189f0e2c +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/whiteDot_darkBorder.png b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/whiteDot_darkBorder.png new file mode 100644 index 0000000000000000000000000000000000000000..705c72b68d0556f94b5f925f92a5b1705dd36d7e GIT binary patch literal 219 zcmeAS@N?(olHy`uVBq!ia0vp^93afW1|*O0@9PFqoCO|{#S9F5he4R}c>anMpkS}3 zi(`ny)Z`QfCRCSvfE$zna!EegGc4~5eJ3_kvI3YUi>`1jZP@GR48iDiCse|`M^{{BOjJ(Vxj81DZrT*FzgM+xXK N22WQ%mvv4FO#pS3SUCUy literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/whiteDot_darkBorder.png.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/whiteDot_darkBorder.png.meta new file mode 100644 index 00000000..4613bfd1 --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/whiteDot_darkBorder.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: 27df4ca974a8eaf40803907859421506 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/whiteDot_whiteBorderAlpha.png b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/whiteDot_whiteBorderAlpha.png new file mode 100644 index 0000000000000000000000000000000000000000..2a081f6b2ab16c16b320321417083ca3aee328c4 GIT binary patch literal 176 zcmeAS@N?(olHy`uVBq!ia0vp^93afW1|*O0@9PFqoCO|{#S9F5he4R}c>anMpkR`x zi(`ny)MSRn|NsB5X8vfU@Q>xF!Zs_9KF$*X%$M35en<$cb~5a!<Hq)$ literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/whiteDot_whiteBorderAlpha.png.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/whiteDot_whiteBorderAlpha.png.meta new file mode 100644 index 00000000..7d697098 --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/whiteDot_whiteBorderAlpha.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: 039dc89c76661c344b7776f8a47cc5a4 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/whiteSquare.png b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/whiteSquare.png new file mode 100644 index 0000000000000000000000000000000000000000..afc2459caaa4d1c9fdb4366d6e09313f89bb081c GIT binary patch literal 103 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61SBU+%rFB|oCO|{#S9F5he4R}c>anMprE9u wi(^Q|oa8_M|JyTbHgu|7T`c8h%A?845Sq&@Ya68K3{=G6>FVdQ&MBb@08(HWlK=n! literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/whiteSquare.png.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/whiteSquare.png.meta new file mode 100644 index 00000000..d9bbc90f --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/whiteSquare.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: dfe6e0ac3e5f24740a17e14b65e08406 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 1 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -3 + maxTextureSize: 32 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: 0 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 100 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 100 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 100 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 100 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 100 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/whiteSquareAlpha10.png b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/whiteSquareAlpha10.png new file mode 100644 index 0000000000000000000000000000000000000000..6480ee22a955b1ab75ba087e81c747a94a62cdfc GIT binary patch literal 107 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`oCO|{#S9F5he4R}c>anMprEX$ zi(^Q|oa8_M|J&;`vo>@Jon6eCIS^Qc)I$ztaD0e0stQU B9U}k$ literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/whiteSquareAlpha10.png.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/whiteSquareAlpha10.png.meta new file mode 100644 index 00000000..48cde694 --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/whiteSquareAlpha10.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: 93b68213089b05943a651574eb7e2fb5 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 1 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -3 + maxTextureSize: 32 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: 0 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 100 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 100 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 100 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 100 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 100 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/whiteSquareAlpha15.png b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/whiteSquareAlpha15.png new file mode 100644 index 0000000000000000000000000000000000000000..e6f3c427d4cf110df50530e7da40f311824d3a74 GIT binary patch literal 109 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`oCO|{#S9F5he4R}c>anMkesKB zV~9m>@}K|z_e(LeHgq;R8Dt$;!MK=>hmTo8g5hrxv-7Tm-Nrzr44$rjF6*2UngB%K B9GCzA literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/whiteSquareAlpha15.png.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/whiteSquareAlpha15.png.meta new file mode 100644 index 00000000..7d286bd6 --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/whiteSquareAlpha15.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: 5510cdd48a6aaaa439c95ef5b2fe9e28 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/whiteSquareAlpha25.png b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/whiteSquareAlpha25.png new file mode 100644 index 0000000000000000000000000000000000000000..5219f2a0fcdb4ad7dfefa5b057bc22afdc753bcd GIT binary patch literal 107 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`oCO|{#S9F5he4R}c>anMprEX$ zi(^Q|oa8_M|JSQ9vo>@Jon6eanMprEX$ zi(^Q|oa8_M|JU0xvo>@Jon6eanMprC@M zi(`mIZ}Ol2|Nl#}aWM!pwanMprEOz zi(`mIZ}Ol2|Lx70SsPe8Ts2J{dV-i;+V?RoPIO3=XqfaV+>7^ze35@zthVZO@Ib4c)I$ztaD0e0st)ZB(VSh literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/whiteSquare_fadeOut_bt.png.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/whiteSquare_fadeOut_bt.png.meta new file mode 100644 index 00000000..de54384a --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/whiteSquare_fadeOut_bt.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: a40dc0d6372a9084fb45976308087290 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/yellowSquare.png b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/yellowSquare.png new file mode 100644 index 0000000000000000000000000000000000000000..c41f635d6173527df46ed81874904da9d02e1052 GIT binary patch literal 106 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61SBU+%rFB|oCO|{#S9F5he4R}c>anMprDMW zi(`n!#N?XdmdTAG2aY%>NnABpmAE1!A%TIRB8Kti3H`P6f$A7MUHx3vIVCg!0K2#w A?*IS* literal 0 HcmV?d00001 diff --git a/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/yellowSquare.png.meta b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/yellowSquare.png.meta new file mode 100644 index 00000000..48f57622 --- /dev/null +++ b/d2/Assets/Demigiant/DemiLib/Core/Editor/Imgs/yellowSquare.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: 517a5bfe18f2ee04d9925db10be034e2 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 1024 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 1 + swizzle: 50462976 + cookieLightType: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 1024 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/d2/Assets/Demigiant/readme_DOTweenPro.txt b/d2/Assets/Demigiant/readme_DOTweenPro.txt new file mode 100644 index 00000000..9837c952 --- /dev/null +++ b/d2/Assets/Demigiant/readme_DOTweenPro.txt @@ -0,0 +1,35 @@ +DOTween and DOTween Pro are copyright (c) 2014-2018 Daniele Giardini - Demigiant + +// IMPORTANT!!! ///////////////////////////////////////////// +// Upgrading DOTween from versions older than 1.2.000 /////// +// (or DOTween Pro older than 1.0.000) ////////////////////// +------------------------------------------------------------- +If you're upgrading your project from a version of DOTween older than 1.2.000 (or DOTween Pro older than 1.0.000) please follow these instructions carefully. +1) Import the new version in the same folder as the previous one, overwriting old files. A lot of errors will appear but don't worry +2) Close and reopen Unity (and your project). This is fundamental: skipping this step will cause a bloodbath +3) Open DOTween's Utility Panel (Tools > Demigiant > DOTween Utility Panel) if it doesn't open automatically, then press "Setup DOTween...": this will run the upgrade setup +4) From the Add/Remove Modules panel that opens, activate/deactivate Modules for Unity systems and for external assets (like TextMesh Pro) + +// GET STARTED ////////////////////////////////////////////// + +- After importing a new DOTween update, select DOTween's Utility Panel from the "Tools/Demigiant" menu (if it doesn't open automatically) and press the "Setup DOTween..." button to activate/deactivate Modules. You can also access a Preferences Tab from there to choose default settings for DOTween. + +// VISUAL SCRIPTING (PRO ONLY) +- To animate a gameObject, select it and choose "Add Component > DOTween > DOTween Animation" +- To animate a gameObject along a path, select it and choose "Add Component > DOTween > DOTween Path" + +// SCRIPTING +- In your code, add "using DG.Tweening" to each class where you want to use DOTween. +- You're ready to tween. Check out the links below for full documentation and license info. + + +// LINKS /////////////////////////////////////////////////////// + +DOTween website (documentation, examples, etc): http://dotween.demigiant.com +DOTween license: http://dotween.demigiant.com/license.php +DOTween repository (Google Code): https://code.google.com/p/dotween/ +Demigiant website (documentation, examples, etc): http://www.demigiant.com + +// NOTES ////////////////////////////////////////////////////// + +- DOTween's Utility Panel can be found under "Tools > Demigiant > DOTween Utility Panel" and also contains other useful options, plus a tab to set DOTween's preferences \ No newline at end of file diff --git a/d2/Assets/Demigiant/readme_DOTweenPro.txt.meta b/d2/Assets/Demigiant/readme_DOTweenPro.txt.meta new file mode 100644 index 00000000..2498034b --- /dev/null +++ b/d2/Assets/Demigiant/readme_DOTweenPro.txt.meta @@ -0,0 +1,22 @@ +fileFormatVersion: 2 +guid: 24123b2fcdc15c943bed44e0c6beeec7 +labels: +- Tween +- Tweening +- Animation +- HOTween +- Paths +- VisualScripting +- VisualEditor +- iTween +- LeanTween +- DFTween +- Ease +- Easing +- Shake +- Punch +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: