Demigiant / dotween

A Unity C# animation engine. HOTween v2
http://dotween.demigiant.com
Other
2.33k stars 350 forks source link

DOTween ASMDEF file removed ► DOTween/Modules/DOTween.Modules.asmdef #511

Closed rhys-vdw closed 2 years ago

rhys-vdw commented 3 years ago
DOTween ASMDEF file removed ► DOTween/Modules/DOTween.Modules.asmdef
UnityEngine.Debug:Log (object)
DG.DOTweenEditor.ASMDEFManager:LogASMDEFChange (DG.DOTweenEditor.ASMDEFManager/ASMDEFType,DG.DOTweenEditor.ASMDEFManager/ChangeType) (at D:/DG/_Develop/__UNITY3_CLASSES/_Holoville/__DOTween/_DOTween.Assembly/DOTweenEditor/ASMDEFManager.cs:192)
DG.DOTweenEditor.ASMDEFManager:RemoveASMDEF (DG.DOTweenEditor.ASMDEFManager/ASMDEFType) (at D:/DG/_Develop/__UNITY3_CLASSES/_Holoville/__DOTween/_DOTween.Assembly/DOTweenEditor/ASMDEFManager.cs:355)
DG.DOTweenEditor.ASMDEFManager:RemoveAllASMDEF () (at D:/DG/_Develop/__UNITY3_CLASSES/_Holoville/__DOTween/_DOTween.Assembly/DOTweenEditor/ASMDEFManager.cs:132)
DG.DOTweenEditor.ASMDEFManager:ApplyASMDEFSettings () (at D:/DG/_Develop/__UNITY3_CLASSES/_Holoville/__DOTween/_DOTween.Assembly/DOTweenEditor/ASMDEFManager.cs:67)
DG.DOTweenEditor.UtilityWindowPostProcessor/<>c:<OnPostprocessAllAssets>b__1_1 () (at D:/DG/_Develop/__UNITY3_CLASSES/_Holoville/__DOTween/_DOTween.Assembly/DOTweenEditor/DOTweenProcessors.cs:73)
DG.DOTweenEditor.DelayedCall:Update () (at D:/DG/_Develop/__UNITY3_CLASSES/_Holoville/__DOTween/_DOTween.Assembly/DOTweenEditor/DelayedCall.cs:28)
UnityEditor.EditorApplication:Internal_CallUpdateFunctions ()

How are we meant to use the functions in the modules if there's a script that deletes the asmdef? Why is this happening?

denravonska commented 2 years ago

We're experiencing the same thing. Is there a workaround?

denravonska commented 2 years ago

Found the problem on our end. Assets/Resources/DOTweenSettings.asset wasn't in our source control so its createASMDEF field was default (0) and the assembly definitions got deleted.

rhys-vdw commented 2 years ago

I think the solution to this is to simply remove all the code that creates and deletes asmdefs and just include the asmdef in the distributed package. Can't think of a reason for it to be optional as it will simply be ignored by older versions of Unity.

Demigiant commented 2 years ago

I like optional things. but I just added the possible reasons for this to the online FAQ (either DOTweenSettings.asset not being source-controlled, or the AMSDEFs not being created via DOTween's Utility Panel)