net.dreditor.editor.utility.converting 0.1.6 → 0.1.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.attestation.p7m +0 -0
- package/ActorConversion.cs +104 -104
- package/ActorConversion.cs.meta +11 -11
- package/ConvertRoomDataRegion.cs +437 -437
- package/ConvertRoomDataRegion.cs.meta +11 -11
- package/ConvertRoomDataScenes.cs +168 -168
- package/ConvertRoomDataScenes.cs.meta +11 -11
- package/ConvertUtility.cs +107 -107
- package/ConvertUtility.cs.meta +11 -11
- package/DREditor.Editor.Utility.Converting.asmdef +33 -33
- package/DREditor.Editor.Utility.Converting.asmdef.meta +7 -7
- package/MigrationUtility.cs +128 -128
- package/MigrationUtility.cs.meta +11 -11
- package/package.json +53 -48
- package/package.json.meta +7 -7
package/.attestation.p7m
ADDED
|
Binary file
|
package/ActorConversion.cs
CHANGED
|
@@ -1,105 +1,105 @@
|
|
|
1
|
-
//Author: Benjamin "Sweden" Jillson : Discord: sweden_gaming For Project Eden's Garden
|
|
2
|
-
using DREditor.Characters;
|
|
3
|
-
using DREditor.EventObjects;
|
|
4
|
-
using DREditor.Processables;
|
|
5
|
-
using UnityEditor;
|
|
6
|
-
using UnityEngine;
|
|
7
|
-
|
|
8
|
-
namespace DREditor.Editor.Utility.Converting
|
|
9
|
-
{
|
|
10
|
-
/// <summary>
|
|
11
|
-
///
|
|
12
|
-
/// </summary>
|
|
13
|
-
public static class ActorConversion
|
|
14
|
-
{
|
|
15
|
-
/// <summary>
|
|
16
|
-
///
|
|
17
|
-
/// </summary>
|
|
18
|
-
[MenuItem("DREditor/Convert/Actors/Update Selected Actor Display Names.")]
|
|
19
|
-
public static void UpdateName()
|
|
20
|
-
{
|
|
21
|
-
CharacterDatabase database = DatabaseUtility.LoadDatabase<CharacterDatabase>();
|
|
22
|
-
|
|
23
|
-
foreach (Character character in database.Characters)
|
|
24
|
-
foreach (var obj in Selection.objects)
|
|
25
|
-
if (obj is GameObject gameObject && gameObject.name == character.FirstName)
|
|
26
|
-
UpdateObject(character, gameObject);
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
/// <summary>
|
|
30
|
-
///
|
|
31
|
-
/// </summary>
|
|
32
|
-
/// <param name="character"></param>
|
|
33
|
-
/// <param name="go"></param>
|
|
34
|
-
static void UpdateObject(Character character, GameObject go)
|
|
35
|
-
{
|
|
36
|
-
if (go.TryGetComponent<INameDisplayable>(out var component))
|
|
37
|
-
component.DisplayName = character.FirstName + " " + character.LastName;
|
|
38
|
-
|
|
39
|
-
EditorUtility.SetDirty(go);
|
|
40
|
-
|
|
41
|
-
AssetDatabase.SaveAssets();
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
/// <summary>
|
|
46
|
-
///
|
|
47
|
-
/// </summary>
|
|
48
|
-
[MenuItem("DREditor/Convert/Actors/Update Selected Actor Colliders.")]
|
|
49
|
-
public static void UpdateColliders()
|
|
50
|
-
{
|
|
51
|
-
foreach (var obj in Selection.objects)
|
|
52
|
-
if (obj is GameObject go)
|
|
53
|
-
UpdateCollider(go);
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
/// <summary>
|
|
57
|
-
///
|
|
58
|
-
/// </summary>
|
|
59
|
-
/// <param name="gameObject"></param>
|
|
60
|
-
static void UpdateCollider(GameObject gameObject)
|
|
61
|
-
{
|
|
62
|
-
BoxCollider parentCollider = gameObject.GetComponent<BoxCollider>();
|
|
63
|
-
|
|
64
|
-
BoxCollider childCollider = gameObject.transform.GetChild(0).GetComponent<BoxCollider>();
|
|
65
|
-
|
|
66
|
-
if (!parentCollider || !childCollider || parentCollider == childCollider)
|
|
67
|
-
{
|
|
68
|
-
UnityEngine.Debug.LogWarning("ALERT: Invalid collider setup. Either your missing a parent or child collider, or " +
|
|
69
|
-
"the child and parent colliders are the same, which is not allowed.");
|
|
70
|
-
|
|
71
|
-
return;
|
|
72
|
-
}
|
|
73
|
-
|
|
74
|
-
Undo.RecordObject(parentCollider, "Copy Collider From Child (Apply Scale)");
|
|
75
|
-
|
|
76
|
-
Transform parentTransform = parentCollider.transform;
|
|
77
|
-
|
|
78
|
-
Transform childTransform = childCollider.transform;
|
|
79
|
-
|
|
80
|
-
var bounds = new Bounds(
|
|
81
|
-
childTransform.TransformPoint(childCollider.center),
|
|
82
|
-
Vector3.Scale(childCollider.size, childTransform.lossyScale)
|
|
83
|
-
);
|
|
84
|
-
|
|
85
|
-
Vector3 localCenter = parentTransform.InverseTransformPoint(bounds.center);
|
|
86
|
-
|
|
87
|
-
Vector3 localSize = Vector3.Scale(bounds.size, InverseScale(parentTransform.lossyScale));
|
|
88
|
-
|
|
89
|
-
parentCollider.center = localCenter;
|
|
90
|
-
|
|
91
|
-
parentCollider.size = localSize;
|
|
92
|
-
|
|
93
|
-
EditorUtility.SetDirty(parentCollider);
|
|
94
|
-
|
|
95
|
-
UnityEngine.Debug.Log($"Copied scaled collider from '{childCollider.name}' to '{parentCollider.name}'.");
|
|
96
|
-
}
|
|
97
|
-
|
|
98
|
-
/// <summary>
|
|
99
|
-
///
|
|
100
|
-
/// </summary>
|
|
101
|
-
/// <param name="vector"></param>
|
|
102
|
-
/// <returns></returns>
|
|
103
|
-
static Vector3 InverseScale(Vector3 vector) => new(1f / vector.x, 1f / vector.y, 1f / vector.z);
|
|
104
|
-
}
|
|
1
|
+
//Author: Benjamin "Sweden" Jillson : Discord: sweden_gaming For Project Eden's Garden
|
|
2
|
+
using DREditor.Characters;
|
|
3
|
+
using DREditor.EventObjects;
|
|
4
|
+
using DREditor.Processables;
|
|
5
|
+
using UnityEditor;
|
|
6
|
+
using UnityEngine;
|
|
7
|
+
|
|
8
|
+
namespace DREditor.Editor.Utility.Converting
|
|
9
|
+
{
|
|
10
|
+
/// <summary>
|
|
11
|
+
///
|
|
12
|
+
/// </summary>
|
|
13
|
+
public static class ActorConversion
|
|
14
|
+
{
|
|
15
|
+
/// <summary>
|
|
16
|
+
///
|
|
17
|
+
/// </summary>
|
|
18
|
+
[MenuItem("DREditor/Convert/Actors/Update Selected Actor Display Names.")]
|
|
19
|
+
public static void UpdateName()
|
|
20
|
+
{
|
|
21
|
+
CharacterDatabase database = DatabaseUtility.LoadDatabase<CharacterDatabase>();
|
|
22
|
+
|
|
23
|
+
foreach (Character character in database.Characters)
|
|
24
|
+
foreach (var obj in Selection.objects)
|
|
25
|
+
if (obj is GameObject gameObject && gameObject.name == character.FirstName)
|
|
26
|
+
UpdateObject(character, gameObject);
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
/// <summary>
|
|
30
|
+
///
|
|
31
|
+
/// </summary>
|
|
32
|
+
/// <param name="character"></param>
|
|
33
|
+
/// <param name="go"></param>
|
|
34
|
+
static void UpdateObject(Character character, GameObject go)
|
|
35
|
+
{
|
|
36
|
+
if (go.TryGetComponent<INameDisplayable>(out var component))
|
|
37
|
+
component.DisplayName = character.FirstName + " " + character.LastName;
|
|
38
|
+
|
|
39
|
+
EditorUtility.SetDirty(go);
|
|
40
|
+
|
|
41
|
+
AssetDatabase.SaveAssets();
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
/// <summary>
|
|
46
|
+
///
|
|
47
|
+
/// </summary>
|
|
48
|
+
[MenuItem("DREditor/Convert/Actors/Update Selected Actor Colliders.")]
|
|
49
|
+
public static void UpdateColliders()
|
|
50
|
+
{
|
|
51
|
+
foreach (var obj in Selection.objects)
|
|
52
|
+
if (obj is GameObject go)
|
|
53
|
+
UpdateCollider(go);
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
/// <summary>
|
|
57
|
+
///
|
|
58
|
+
/// </summary>
|
|
59
|
+
/// <param name="gameObject"></param>
|
|
60
|
+
static void UpdateCollider(GameObject gameObject)
|
|
61
|
+
{
|
|
62
|
+
BoxCollider parentCollider = gameObject.GetComponent<BoxCollider>();
|
|
63
|
+
|
|
64
|
+
BoxCollider childCollider = gameObject.transform.GetChild(0).GetComponent<BoxCollider>();
|
|
65
|
+
|
|
66
|
+
if (!parentCollider || !childCollider || parentCollider == childCollider)
|
|
67
|
+
{
|
|
68
|
+
UnityEngine.Debug.LogWarning("ALERT: Invalid collider setup. Either your missing a parent or child collider, or " +
|
|
69
|
+
"the child and parent colliders are the same, which is not allowed.");
|
|
70
|
+
|
|
71
|
+
return;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
Undo.RecordObject(parentCollider, "Copy Collider From Child (Apply Scale)");
|
|
75
|
+
|
|
76
|
+
Transform parentTransform = parentCollider.transform;
|
|
77
|
+
|
|
78
|
+
Transform childTransform = childCollider.transform;
|
|
79
|
+
|
|
80
|
+
var bounds = new Bounds(
|
|
81
|
+
childTransform.TransformPoint(childCollider.center),
|
|
82
|
+
Vector3.Scale(childCollider.size, childTransform.lossyScale)
|
|
83
|
+
);
|
|
84
|
+
|
|
85
|
+
Vector3 localCenter = parentTransform.InverseTransformPoint(bounds.center);
|
|
86
|
+
|
|
87
|
+
Vector3 localSize = Vector3.Scale(bounds.size, InverseScale(parentTransform.lossyScale));
|
|
88
|
+
|
|
89
|
+
parentCollider.center = localCenter;
|
|
90
|
+
|
|
91
|
+
parentCollider.size = localSize;
|
|
92
|
+
|
|
93
|
+
EditorUtility.SetDirty(parentCollider);
|
|
94
|
+
|
|
95
|
+
UnityEngine.Debug.Log($"Copied scaled collider from '{childCollider.name}' to '{parentCollider.name}'.");
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
/// <summary>
|
|
99
|
+
///
|
|
100
|
+
/// </summary>
|
|
101
|
+
/// <param name="vector"></param>
|
|
102
|
+
/// <returns></returns>
|
|
103
|
+
static Vector3 InverseScale(Vector3 vector) => new(1f / vector.x, 1f / vector.y, 1f / vector.z);
|
|
104
|
+
}
|
|
105
105
|
}
|
package/ActorConversion.cs.meta
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
fileFormatVersion: 2
|
|
2
|
-
guid: 1a1644d210669e74190d5f2d359f28ea
|
|
3
|
-
MonoImporter:
|
|
4
|
-
externalObjects: {}
|
|
5
|
-
serializedVersion: 2
|
|
6
|
-
defaultReferences: []
|
|
7
|
-
executionOrder: 0
|
|
8
|
-
icon: {instanceID: 0}
|
|
9
|
-
userData:
|
|
10
|
-
assetBundleName:
|
|
11
|
-
assetBundleVariant:
|
|
1
|
+
fileFormatVersion: 2
|
|
2
|
+
guid: 1a1644d210669e74190d5f2d359f28ea
|
|
3
|
+
MonoImporter:
|
|
4
|
+
externalObjects: {}
|
|
5
|
+
serializedVersion: 2
|
|
6
|
+
defaultReferences: []
|
|
7
|
+
executionOrder: 0
|
|
8
|
+
icon: {instanceID: 0}
|
|
9
|
+
userData:
|
|
10
|
+
assetBundleName:
|
|
11
|
+
assetBundleVariant:
|