net.dreditor.states 0.1.6 → 0.1.7
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/ChangeStateOnStart.cs +73 -73
- package/ChangeStateOnStart.cs.meta +11 -11
- package/ColorOnStateChange.cs +35 -35
- package/ColorOnStateChange.cs.meta +11 -11
- package/DREditor.States.asmdef +16 -16
- package/DREditor.States.asmdef.meta +7 -7
- package/Editor/StateAssetUtility.cs +29 -29
- package/Editor/StateAssetUtility.cs.meta +11 -11
- package/Editor.meta +8 -8
- package/IStateList.cs +13 -13
- package/IStateList.cs.meta +11 -11
- package/{Samples → Samples~}/CurrentAddState.asset +19 -19
- package/{Samples → Samples~}/CurrentAddState.asset.meta +8 -8
- package/{Samples → Samples~}/CurrentState.asset +21 -21
- package/{Samples → Samples~}/CurrentState.asset.meta +8 -8
- package/{Samples → Samples~}/Daily.asset +15 -15
- package/{Samples → Samples~}/Daily.asset.meta +8 -8
- package/{Samples → Samples~}/Deadly.asset +15 -15
- package/{Samples → Samples~}/Deadly.asset.meta +8 -8
- package/{Samples → Samples~}/Night.asset +15 -15
- package/{Samples → Samples~}/Night.asset.meta +8 -8
- package/{Samples → Samples~}/Set_States_On_New_Game.prefab +134 -134
- package/{Samples → Samples~}/Set_States_On_New_Game.prefab.meta +7 -7
- package/{Samples → Samples~}/Set_States_On_New_Game_No_Save.prefab +70 -70
- package/{Samples → Samples~}/Set_States_On_New_Game_No_Save.prefab.meta +7 -7
- package/{Samples → Samples~}/State Database.asset +18 -18
- package/{Samples → Samples~}/State Database.asset.meta +8 -8
- package/{Samples → Samples~}/State_Save_Handler.prefab +53 -53
- package/{Samples → Samples~}/State_Save_Handler.prefab.meta +7 -7
- package/SetStatesOnSceneEvent.cs +55 -55
- package/SetStatesOnSceneEvent.cs.meta +11 -11
- package/SpriteOnStateChange.cs +54 -54
- package/SpriteOnStateChange.cs.meta +2 -2
- package/StateAsset.cs +18 -18
- package/StateAsset.cs.meta +11 -11
- package/StateChangeGroup.cs +28 -28
- package/StateChangeGroup.cs.meta +11 -11
- package/StateDatabase.cs +28 -28
- package/StateDatabase.cs.meta +11 -11
- package/UpdateOnStateChange.cs +120 -120
- package/UpdateOnStateChange.cs.meta +11 -11
- package/package.json +40 -35
- package/package.json.meta +7 -7
- package/Samples.meta +0 -8
package/UpdateOnStateChange.cs
CHANGED
|
@@ -1,121 +1,121 @@
|
|
|
1
|
-
//Author: Benjamin "Sweden" Jillson : Discord: sweden_gaming For Project Eden's Garden
|
|
2
|
-
using DREditor.EventObjects;
|
|
3
|
-
using DREditor.EventObjectServices;
|
|
4
|
-
using System.Collections.Generic;
|
|
5
|
-
using System.Linq;
|
|
6
|
-
using UnityEngine;
|
|
7
|
-
|
|
8
|
-
namespace DREditor.States
|
|
9
|
-
{
|
|
10
|
-
/// <summary>
|
|
11
|
-
///
|
|
12
|
-
/// </summary>
|
|
13
|
-
/// <typeparam name="T"></typeparam>
|
|
14
|
-
public abstract class UpdateOnStateChange<T> : IntWithEventListener, IStateList
|
|
15
|
-
{
|
|
16
|
-
/// <summary>
|
|
17
|
-
///
|
|
18
|
-
/// </summary>
|
|
19
|
-
[Header("")]
|
|
20
|
-
|
|
21
|
-
[Space]
|
|
22
|
-
|
|
23
|
-
[Header("")]
|
|
24
|
-
|
|
25
|
-
[Space]
|
|
26
|
-
|
|
27
|
-
[Header("")]
|
|
28
|
-
|
|
29
|
-
[Tooltip("")]
|
|
30
|
-
[SerializeField] protected StateDatabase stateDatabase = null;
|
|
31
|
-
|
|
32
|
-
/// <summary>
|
|
33
|
-
///
|
|
34
|
-
/// </summary>
|
|
35
|
-
[Space]
|
|
36
|
-
|
|
37
|
-
[Header("")]
|
|
38
|
-
|
|
39
|
-
[Tooltip("")]
|
|
40
|
-
[SerializeField] protected List<StateChangeGroup<T>> groups = new();
|
|
41
|
-
|
|
42
|
-
[Space]
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
/// <summary>
|
|
46
|
-
///
|
|
47
|
-
/// </summary>
|
|
48
|
-
protected StateAsset activeState = null;
|
|
49
|
-
|
|
50
|
-
/// <summary>
|
|
51
|
-
///
|
|
52
|
-
/// </summary>
|
|
53
|
-
protected int activeStateIndex = -1;
|
|
54
|
-
|
|
55
|
-
/// <summary>
|
|
56
|
-
///
|
|
57
|
-
/// </summary>
|
|
58
|
-
protected T activeValue;
|
|
59
|
-
|
|
60
|
-
/// <summary>
|
|
61
|
-
///
|
|
62
|
-
/// </summary>
|
|
63
|
-
protected Dictionary<StateAsset, T> dictionaryStates;
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
/// <summary>
|
|
67
|
-
///
|
|
68
|
-
/// </summary>
|
|
69
|
-
protected virtual void Awake() => dictionaryStates = groups.ToDictionary(kv => kv.state, kv => kv.stateValue);
|
|
70
|
-
|
|
71
|
-
protected override void OnEnable()
|
|
72
|
-
{
|
|
73
|
-
base.OnEnable();
|
|
74
|
-
|
|
75
|
-
OnValueChanged(valueWithEvent.Value);
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
public virtual void OnInitializeStateList()
|
|
79
|
-
{
|
|
80
|
-
UnityEngine.Debug.Log("Initializing State change list.");
|
|
81
|
-
|
|
82
|
-
if (stateDatabase == null)
|
|
83
|
-
UnityEngine.Debug.LogWarning($"{ToString()}: State Database must be filled to populate inspector.");
|
|
84
|
-
else
|
|
85
|
-
foreach (var state in stateDatabase.States)
|
|
86
|
-
if (groups.Where(group => group.state == state).Count() == 0)
|
|
87
|
-
groups.Add(new StateChangeGroup<T>(state));
|
|
88
|
-
}
|
|
89
|
-
|
|
90
|
-
/// <summary>
|
|
91
|
-
///
|
|
92
|
-
/// </summary>
|
|
93
|
-
/// <param name="stateIndex"></param>
|
|
94
|
-
protected override void OnValueChanged(int stateIndex)
|
|
95
|
-
{
|
|
96
|
-
base.OnValueChanged(stateIndex);
|
|
97
|
-
|
|
98
|
-
activeStateIndex = stateIndex;
|
|
99
|
-
|
|
100
|
-
InitializeStateChanged();
|
|
101
|
-
|
|
102
|
-
OnStateChanged();
|
|
103
|
-
}
|
|
104
|
-
|
|
105
|
-
/// <summary>
|
|
106
|
-
///
|
|
107
|
-
/// </summary>
|
|
108
|
-
protected virtual void InitializeStateChanged()
|
|
109
|
-
{
|
|
110
|
-
activeState = stateDatabase.States[activeStateIndex];
|
|
111
|
-
|
|
112
|
-
if (dictionaryStates.TryGetValue(activeState, out var value))
|
|
113
|
-
activeValue = value;
|
|
114
|
-
}
|
|
115
|
-
|
|
116
|
-
/// <summary>
|
|
117
|
-
///
|
|
118
|
-
/// </summary>
|
|
119
|
-
protected abstract void OnStateChanged();
|
|
120
|
-
}
|
|
1
|
+
//Author: Benjamin "Sweden" Jillson : Discord: sweden_gaming For Project Eden's Garden
|
|
2
|
+
using DREditor.EventObjects;
|
|
3
|
+
using DREditor.EventObjectServices;
|
|
4
|
+
using System.Collections.Generic;
|
|
5
|
+
using System.Linq;
|
|
6
|
+
using UnityEngine;
|
|
7
|
+
|
|
8
|
+
namespace DREditor.States
|
|
9
|
+
{
|
|
10
|
+
/// <summary>
|
|
11
|
+
///
|
|
12
|
+
/// </summary>
|
|
13
|
+
/// <typeparam name="T"></typeparam>
|
|
14
|
+
public abstract class UpdateOnStateChange<T> : IntWithEventListener, IStateList
|
|
15
|
+
{
|
|
16
|
+
/// <summary>
|
|
17
|
+
///
|
|
18
|
+
/// </summary>
|
|
19
|
+
[Header("")]
|
|
20
|
+
|
|
21
|
+
[Space]
|
|
22
|
+
|
|
23
|
+
[Header("")]
|
|
24
|
+
|
|
25
|
+
[Space]
|
|
26
|
+
|
|
27
|
+
[Header("")]
|
|
28
|
+
|
|
29
|
+
[Tooltip("")]
|
|
30
|
+
[SerializeField] protected StateDatabase stateDatabase = null;
|
|
31
|
+
|
|
32
|
+
/// <summary>
|
|
33
|
+
///
|
|
34
|
+
/// </summary>
|
|
35
|
+
[Space]
|
|
36
|
+
|
|
37
|
+
[Header("")]
|
|
38
|
+
|
|
39
|
+
[Tooltip("")]
|
|
40
|
+
[SerializeField] protected List<StateChangeGroup<T>> groups = new();
|
|
41
|
+
|
|
42
|
+
[Space]
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
/// <summary>
|
|
46
|
+
///
|
|
47
|
+
/// </summary>
|
|
48
|
+
protected StateAsset activeState = null;
|
|
49
|
+
|
|
50
|
+
/// <summary>
|
|
51
|
+
///
|
|
52
|
+
/// </summary>
|
|
53
|
+
protected int activeStateIndex = -1;
|
|
54
|
+
|
|
55
|
+
/// <summary>
|
|
56
|
+
///
|
|
57
|
+
/// </summary>
|
|
58
|
+
protected T activeValue;
|
|
59
|
+
|
|
60
|
+
/// <summary>
|
|
61
|
+
///
|
|
62
|
+
/// </summary>
|
|
63
|
+
protected Dictionary<StateAsset, T> dictionaryStates;
|
|
64
|
+
|
|
65
|
+
|
|
66
|
+
/// <summary>
|
|
67
|
+
///
|
|
68
|
+
/// </summary>
|
|
69
|
+
protected virtual void Awake() => dictionaryStates = groups.ToDictionary(kv => kv.state, kv => kv.stateValue);
|
|
70
|
+
|
|
71
|
+
protected override void OnEnable()
|
|
72
|
+
{
|
|
73
|
+
base.OnEnable();
|
|
74
|
+
|
|
75
|
+
OnValueChanged(valueWithEvent.Value);
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
public virtual void OnInitializeStateList()
|
|
79
|
+
{
|
|
80
|
+
UnityEngine.Debug.Log("Initializing State change list.");
|
|
81
|
+
|
|
82
|
+
if (stateDatabase == null)
|
|
83
|
+
UnityEngine.Debug.LogWarning($"{ToString()}: State Database must be filled to populate inspector.");
|
|
84
|
+
else
|
|
85
|
+
foreach (var state in stateDatabase.States)
|
|
86
|
+
if (groups.Where(group => group.state == state).Count() == 0)
|
|
87
|
+
groups.Add(new StateChangeGroup<T>(state));
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
/// <summary>
|
|
91
|
+
///
|
|
92
|
+
/// </summary>
|
|
93
|
+
/// <param name="stateIndex"></param>
|
|
94
|
+
protected override void OnValueChanged(int stateIndex)
|
|
95
|
+
{
|
|
96
|
+
base.OnValueChanged(stateIndex);
|
|
97
|
+
|
|
98
|
+
activeStateIndex = stateIndex;
|
|
99
|
+
|
|
100
|
+
InitializeStateChanged();
|
|
101
|
+
|
|
102
|
+
OnStateChanged();
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
/// <summary>
|
|
106
|
+
///
|
|
107
|
+
/// </summary>
|
|
108
|
+
protected virtual void InitializeStateChanged()
|
|
109
|
+
{
|
|
110
|
+
activeState = stateDatabase.States[activeStateIndex];
|
|
111
|
+
|
|
112
|
+
if (dictionaryStates.TryGetValue(activeState, out var value))
|
|
113
|
+
activeValue = value;
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
/// <summary>
|
|
117
|
+
///
|
|
118
|
+
/// </summary>
|
|
119
|
+
protected abstract void OnStateChanged();
|
|
120
|
+
}
|
|
121
121
|
}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
fileFormatVersion: 2
|
|
2
|
-
guid: c2806dbcd78c2164e90ab7e86e87a504
|
|
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: c2806dbcd78c2164e90ab7e86e87a504
|
|
3
|
+
MonoImporter:
|
|
4
|
+
externalObjects: {}
|
|
5
|
+
serializedVersion: 2
|
|
6
|
+
defaultReferences: []
|
|
7
|
+
executionOrder: 0
|
|
8
|
+
icon: {instanceID: 0}
|
|
9
|
+
userData:
|
|
10
|
+
assetBundleName:
|
|
11
|
+
assetBundleVariant:
|
package/package.json
CHANGED
|
@@ -1,35 +1,40 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "net.dreditor.states",
|
|
3
|
-
"version": "0.1.
|
|
4
|
-
"displayName": "DREditor States",
|
|
5
|
-
"description": "The beta for DREditor. A tool to create death game style projects without having to code.",
|
|
6
|
-
"unity": "6000.4",
|
|
7
|
-
"dependencies": {
|
|
8
|
-
"net.dreditor.core": "0.1.
|
|
9
|
-
"net.dreditor.eventobjectservices": "0.1.
|
|
10
|
-
},
|
|
11
|
-
"publishConfig": {
|
|
12
|
-
"access": "public"
|
|
13
|
-
},
|
|
14
|
-
"author": {
|
|
15
|
-
"name": "Benjamin \"Sweden\" Jillson",
|
|
16
|
-
"email": "dreditortool@gmail.com",
|
|
17
|
-
"url": "https://dreditor.net"
|
|
18
|
-
},
|
|
19
|
-
"keywords": [
|
|
20
|
-
"editor",
|
|
21
|
-
"tool",
|
|
22
|
-
"dreditor"
|
|
23
|
-
],
|
|
24
|
-
"samples": [
|
|
25
|
-
{
|
|
26
|
-
"displayName": "Samples",
|
|
27
|
-
"description": "",
|
|
28
|
-
"path": "Samples~"
|
|
29
|
-
}
|
|
30
|
-
],
|
|
31
|
-
"documentationUrl": "https://dreditor.net",
|
|
32
|
-
"license": "Apache-2.0",
|
|
33
|
-
"licensesUrl": "https://dreditor.net/docs/LICENSE.html",
|
|
34
|
-
"changelogUrl": "https://dreditor.net/docs/CHANGELOG.html"
|
|
35
|
-
|
|
1
|
+
{
|
|
2
|
+
"name": "net.dreditor.states",
|
|
3
|
+
"version": "0.1.7",
|
|
4
|
+
"displayName": "DREditor States",
|
|
5
|
+
"description": "The beta for DREditor. A tool to create death game style projects without having to code.",
|
|
6
|
+
"unity": "6000.4",
|
|
7
|
+
"dependencies": {
|
|
8
|
+
"net.dreditor.core": "0.1.7",
|
|
9
|
+
"net.dreditor.eventobjectservices": "0.1.7"
|
|
10
|
+
},
|
|
11
|
+
"publishConfig": {
|
|
12
|
+
"access": "public"
|
|
13
|
+
},
|
|
14
|
+
"author": {
|
|
15
|
+
"name": "Benjamin \"Sweden\" Jillson",
|
|
16
|
+
"email": "dreditortool@gmail.com",
|
|
17
|
+
"url": "https://dreditor.net"
|
|
18
|
+
},
|
|
19
|
+
"keywords": [
|
|
20
|
+
"editor",
|
|
21
|
+
"tool",
|
|
22
|
+
"dreditor"
|
|
23
|
+
],
|
|
24
|
+
"samples": [
|
|
25
|
+
{
|
|
26
|
+
"displayName": "Samples",
|
|
27
|
+
"description": "",
|
|
28
|
+
"path": "Samples~"
|
|
29
|
+
}
|
|
30
|
+
],
|
|
31
|
+
"documentationUrl": "https://dreditor.net",
|
|
32
|
+
"license": "Apache-2.0",
|
|
33
|
+
"licensesUrl": "https://dreditor.net/docs/LICENSE.html",
|
|
34
|
+
"changelogUrl": "https://dreditor.net/docs/CHANGELOG.html",
|
|
35
|
+
"repository": {
|
|
36
|
+
"url": "https://github.com/CertifiedSharp/DREditor",
|
|
37
|
+
"type": "git",
|
|
38
|
+
"revision": "14ca252fbb33eb6f53557ecaed1c10902877698f"
|
|
39
|
+
}
|
|
40
|
+
}
|
package/package.json.meta
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
fileFormatVersion: 2
|
|
2
|
-
guid: 9b6d9aac67207fe448be4bc2900171ae
|
|
3
|
-
TextScriptImporter:
|
|
4
|
-
externalObjects: {}
|
|
5
|
-
userData:
|
|
6
|
-
assetBundleName:
|
|
7
|
-
assetBundleVariant:
|
|
1
|
+
fileFormatVersion: 2
|
|
2
|
+
guid: 9b6d9aac67207fe448be4bc2900171ae
|
|
3
|
+
TextScriptImporter:
|
|
4
|
+
externalObjects: {}
|
|
5
|
+
userData:
|
|
6
|
+
assetBundleName:
|
|
7
|
+
assetBundleVariant:
|