net.dreditor.minigames 0.0.0-stage → 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/BulletDifficulty.cs +37 -0
- package/BulletDifficulty.cs.meta +11 -0
- package/BulletDifficultyEditor.cs +381 -0
- package/BulletDifficultyEditor.cs.meta +11 -0
- package/DREditor.Minigames.asmdef +37 -0
- package/DREditor.Minigames.asmdef.meta +7 -0
- package/DifficultyEditorBase.cs +61 -0
- package/DifficultyEditorBase.cs.meta +11 -0
- package/IShatterGraphic.cs +33 -0
- package/IShatterGraphic.cs.meta +11 -0
- package/IShatterText.cs +34 -0
- package/IShatterText.cs.meta +11 -0
- package/InitializeTrialOffsets.cs +52 -0
- package/InitializeTrialOffsets.cs.meta +11 -0
- package/MinigameBuilderBase.cs +29 -0
- package/MinigameBuilderBase.cs.meta +11 -0
- package/MinigameControlsUIHandler.cs +95 -0
- package/MinigameControlsUIHandler.cs.meta +11 -0
- package/MinigameManagerBase.cs +198 -0
- package/MinigameManagerBase.cs.meta +11 -0
- package/QuestionToggle.cs +155 -0
- package/QuestionToggle.cs.meta +11 -0
- package/RestoreControlsUIPostDialogue.cs +101 -0
- package/RestoreControlsUIPostDialogue.cs.meta +2 -0
- package/Samples~/Bullet Shatter Mesh Generator.asset +23 -0
- package/Samples~/Bullet Shatter Mesh Generator.asset.meta +8 -0
- package/Samples~/HasStamina.asset +21 -0
- package/Samples~/HasStamina.asset.meta +8 -0
- package/Samples~/IsDrainingStamina.asset +21 -0
- package/Samples~/IsDrainingStamina.asset.meta +8 -0
- package/Samples~/MinigameInputAllowed.asset +21 -0
- package/Samples~/MinigameInputAllowed.asset.meta +8 -0
- package/Samples~/Minigame_Controls_UI_Handler.prefab +53 -0
- package/Samples~/Minigame_Controls_UI_Handler.prefab.meta +7 -0
- package/Samples~/Quad Shatter.asset +31 -0
- package/Samples~/Quad Shatter.asset.meta +8 -0
- package/Samples~/ShatterCameraEnabled.asset +21 -0
- package/Samples~/ShatterCameraEnabled.asset.meta +8 -0
- package/Samples~/Shatter_Graphic.prefab +98 -0
- package/Samples~/Shatter_Graphic.prefab.meta +7 -0
- package/Samples~/Stamina_Handler.prefab +59 -0
- package/Samples~/Stamina_Handler.prefab.meta +7 -0
- package/Samples~/TBS_Manager_Shell.prefab +60 -0
- package/Samples~/TBS_Manager_Shell.prefab.meta +7 -0
- package/Samples~/TBS_Manager_Template.prefab +504 -0
- package/Samples~/TBS_Manager_Template.prefab.meta +7 -0
- package/Samples~/Trial_UI_Shatter_Canvas_Shell.prefab +289 -0
- package/Samples~/Trial_UI_Shatter_Canvas_Shell.prefab.meta +7 -0
- package/Samples~/Trial_UI_Shatter_Canvas_Template.prefab +449 -0
- package/Samples~/Trial_UI_Shatter_Canvas_Template.prefab.meta +7 -0
- package/Samples~/Triangle Shatter.asset +31 -0
- package/Samples~/Triangle Shatter.asset.meta +8 -0
- package/Samples~/Truth_Bullet_Menu_Canvas_Shell.prefab +221 -0
- package/Samples~/Truth_Bullet_Menu_Canvas_Shell.prefab.meta +7 -0
- package/Samples~/Truth_Bullet_Menu_Canvas_Template.prefab +525 -0
- package/Samples~/Truth_Bullet_Menu_Canvas_Template.prefab.meta +7 -0
- package/Samples~/Truth_Bullet_Menu_Holder_Shell.prefab +38 -0
- package/Samples~/Truth_Bullet_Menu_Holder_Shell.prefab.meta +7 -0
- package/Samples~/Truth_Bullet_Menu_Holder_Template.prefab +1159 -0
- package/Samples~/Truth_Bullet_Menu_Holder_Template.prefab.meta +7 -0
- package/Samples~/Truth_Bullet_Minigame_Canvas_Template.prefab +494 -0
- package/Samples~/Truth_Bullet_Minigame_Canvas_Template.prefab.meta +7 -0
- package/Samples~/Truth_Bullet_Option_ETemplate.prefab +294 -0
- package/Samples~/Truth_Bullet_Option_ETemplate.prefab.meta +7 -0
- package/Shattering/BreakTex.renderTexture +39 -0
- package/Shattering/BreakTex.renderTexture.meta +8 -0
- package/Shattering/BulletShatter.cs +177 -0
- package/Shattering/BulletShatter.cs.meta +11 -0
- package/Shattering/IShatterableCanvas.cs +21 -0
- package/Shattering/IShatterableCanvas.cs.meta +11 -0
- package/Shattering/MeshGenerator.cs +179 -0
- package/Shattering/MeshGenerator.cs.meta +11 -0
- package/Shattering/RenderCanvasOnShatter.cs +48 -0
- package/Shattering/RenderCanvasOnShatter.cs.meta +11 -0
- package/Shattering/ShatterCameraRender.cs +80 -0
- package/Shattering/ShatterCameraRender.cs.meta +11 -0
- package/Shattering/ShatterGraphic.cs +136 -0
- package/Shattering/ShatterGraphic.cs.meta +11 -0
- package/Shattering/ShatterMeshGraphic.cs +305 -0
- package/Shattering/ShatterMeshGraphic.cs.meta +11 -0
- package/Shattering/ShatterProcess.cs +283 -0
- package/Shattering/ShatterProcess.cs.meta +11 -0
- package/Shattering/ShatterProcessBase.cs +52 -0
- package/Shattering/ShatterProcessBase.cs.meta +11 -0
- package/Shattering/ShatterQuad.cs +57 -0
- package/Shattering/ShatterQuad.cs.meta +11 -0
- package/Shattering/ShatterQuadProcess.cs +66 -0
- package/Shattering/ShatterQuadProcess.cs.meta +11 -0
- package/Shattering/ShatterShape.cs +85 -0
- package/Shattering/ShatterShape.cs.meta +11 -0
- package/Shattering/ShatterTri.cs +28 -0
- package/Shattering/ShatterTri.cs.meta +11 -0
- package/Shattering/ShatterTriProcess.cs +180 -0
- package/Shattering/ShatterTriProcess.cs.meta +11 -0
- package/Shattering/ShatterWithUI.cs +69 -0
- package/Shattering/ShatterWithUI.cs.meta +11 -0
- package/Shattering/SplitShatter.cs +115 -0
- package/Shattering/SplitShatter.cs.meta +11 -0
- package/Shattering/TMPTextShatter.cs +244 -0
- package/Shattering/TMPTextShatter.cs.meta +11 -0
- package/Shattering/UIBreakVisibility.cs +173 -0
- package/Shattering/UIBreakVisibility.cs.meta +11 -0
- package/Shattering.meta +8 -0
- package/ShuffleUtility.cs +33 -0
- package/ShuffleUtility.cs.meta +11 -0
- package/SimpleRandom.cs +33 -0
- package/SimpleRandom.cs.meta +11 -0
- package/Stats/ColorHealthBar.cs +57 -0
- package/Stats/ColorHealthBar.cs.meta +11 -0
- package/Stats/ColorHealthModifier.cs +139 -0
- package/Stats/ColorHealthModifier.cs.meta +11 -0
- package/Stats/GaugeHandler.cs +73 -0
- package/Stats/GaugeHandler.cs.meta +2 -0
- package/Stats/HealthBarModifier.cs +90 -0
- package/Stats/HealthBarModifier.cs.meta +11 -0
- package/Stats/HealthStat.cs +78 -0
- package/Stats/HealthStat.cs.meta +11 -0
- package/Stats/HealthStatBase.cs +27 -0
- package/Stats/HealthStatBase.cs.meta +11 -0
- package/Stats/IGauge.cs +37 -0
- package/Stats/IGauge.cs.meta +2 -0
- package/Stats/InfluenceGauge.cs +108 -0
- package/Stats/InfluenceGauge.cs.meta +11 -0
- package/Stats/InfluenceGaugeBase.cs +43 -0
- package/Stats/InfluenceGaugeBase.cs.meta +11 -0
- package/Stats/SimpleGauge.cs +47 -0
- package/Stats/SimpleGauge.cs.meta +2 -0
- package/Stats/StaminaHandler.cs +154 -0
- package/Stats/StaminaHandler.cs.meta +11 -0
- package/Stats/TrialStats.cs +141 -0
- package/Stats/TrialStats.cs.meta +11 -0
- package/Stats/TrialStatsBase.cs +37 -0
- package/Stats/TrialStatsBase.cs.meta +11 -0
- package/Stats.meta +8 -0
- package/TBS/TBSelectBuilder.cs +60 -0
- package/TBS/TBSelectBuilder.cs.meta +11 -0
- package/TBS/TBSelectBuilderEditor.cs +167 -0
- package/TBS/TBSelectBuilderEditor.cs.meta +11 -0
- package/TBS/TBSelectManager.cs +316 -0
- package/TBS/TBSelectManager.cs.meta +11 -0
- package/TBS/TBSelection.cs +47 -0
- package/TBS/TBSelection.cs.meta +11 -0
- package/TBS/TrialTruthBulletMenu.cs +25 -0
- package/TBS/TrialTruthBulletMenu.cs.meta +11 -0
- package/TBS.meta +8 -0
- package/ThreadSafeSimpleRandom.cs +30 -0
- package/ThreadSafeSimpleRandom.cs.meta +11 -0
- package/TimedDifficultyEditor.cs +57 -0
- package/TimedDifficultyEditor.cs.meta +11 -0
- package/TimedMinigameEditor.cs +32 -0
- package/TimedMinigameEditor.cs.meta +11 -0
- package/TimerBase.cs +190 -0
- package/TimerBase.cs.meta +11 -0
- package/TimerDifficulty.cs +46 -0
- package/TimerDifficulty.cs.meta +11 -0
- package/TrialDialogueMinigame.cs +277 -0
- package/TrialDialogueMinigame.cs.meta +11 -0
- package/TrialDiscussion.cs +69 -0
- package/TrialDiscussion.cs.meta +11 -0
- package/TrialTimer.cs +114 -0
- package/TrialTimer.cs.meta +11 -0
- package/TrialTimerBase.cs +130 -0
- package/TrialTimerBase.cs.meta +11 -0
- package/package.json +54 -4
- package/package.json.meta +7 -0
- package/README.md +0 -3
package/.attestation.p7m
ADDED
|
Binary file
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
//Author: Benjamin "Sweden" Jillson : Discord: sweden_gaming For Project Eden's Garden
|
|
2
|
+
using DREditor.Investigations;
|
|
3
|
+
using DREditor.States;
|
|
4
|
+
using System;
|
|
5
|
+
using System.Collections.Generic;
|
|
6
|
+
using System.Linq;
|
|
7
|
+
|
|
8
|
+
namespace DREditor.Minigames
|
|
9
|
+
{
|
|
10
|
+
/// <summary>
|
|
11
|
+
///
|
|
12
|
+
/// </summary>
|
|
13
|
+
[Serializable]
|
|
14
|
+
public class BulletDifficulty
|
|
15
|
+
{
|
|
16
|
+
/// <summary>
|
|
17
|
+
///
|
|
18
|
+
/// </summary>
|
|
19
|
+
public StateAsset difficulty = null;
|
|
20
|
+
|
|
21
|
+
/// <summary>
|
|
22
|
+
///
|
|
23
|
+
/// </summary>
|
|
24
|
+
public List<TruthBullet> bullets = new();
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
public BulletDifficulty() { }
|
|
28
|
+
|
|
29
|
+
public BulletDifficulty(StateAsset difficulty) => this.difficulty = difficulty;
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
/// <summary>
|
|
33
|
+
///
|
|
34
|
+
/// </summary>
|
|
35
|
+
public virtual void RemoveDuplicateBullets() => bullets = new HashSet<TruthBullet>(bullets).ToList();
|
|
36
|
+
}
|
|
37
|
+
}
|
|
@@ -0,0 +1,381 @@
|
|
|
1
|
+
//Author: Benjamin "Sweden" Jillson : Discord: sweden_gaming For Project Eden's Garden
|
|
2
|
+
#if UNITY_EDITOR
|
|
3
|
+
using DREditor.Investigations;
|
|
4
|
+
using DREditor.States;
|
|
5
|
+
using DREditor.Editor.Utility;
|
|
6
|
+
using System;
|
|
7
|
+
using System.Collections.Generic;
|
|
8
|
+
using System.Linq;
|
|
9
|
+
using UnityEditor;
|
|
10
|
+
using UnityEngine;
|
|
11
|
+
|
|
12
|
+
namespace DREditor.Minigames
|
|
13
|
+
{
|
|
14
|
+
/// <summary>
|
|
15
|
+
///
|
|
16
|
+
/// </summary>
|
|
17
|
+
[Serializable]
|
|
18
|
+
public class BulletDifficultyEditor : DifficultyEditorBase<List<BulletDifficulty>>
|
|
19
|
+
{
|
|
20
|
+
/// <summary>
|
|
21
|
+
///
|
|
22
|
+
/// </summary>
|
|
23
|
+
protected EvidenceDatabase evidenceDatabase = null;
|
|
24
|
+
|
|
25
|
+
/// <summary>
|
|
26
|
+
///
|
|
27
|
+
/// </summary>
|
|
28
|
+
protected List<BulletDifficulty> bulletDifficulties;
|
|
29
|
+
|
|
30
|
+
/// <summary>
|
|
31
|
+
///
|
|
32
|
+
/// </summary>
|
|
33
|
+
protected List<TruthBullet> inheritedBullets;
|
|
34
|
+
|
|
35
|
+
/// <summary>
|
|
36
|
+
///
|
|
37
|
+
/// </summary>
|
|
38
|
+
protected List<TruthBullet> ownedBullets;
|
|
39
|
+
|
|
40
|
+
/// <summary>
|
|
41
|
+
///
|
|
42
|
+
/// </summary>
|
|
43
|
+
protected List<TruthBullet> difficultyBullets;
|
|
44
|
+
|
|
45
|
+
/// <summary>
|
|
46
|
+
///
|
|
47
|
+
/// </summary>
|
|
48
|
+
protected StateAsset difficulty;
|
|
49
|
+
|
|
50
|
+
/// <summary>
|
|
51
|
+
///
|
|
52
|
+
/// </summary>
|
|
53
|
+
protected int chapterIndex;
|
|
54
|
+
|
|
55
|
+
/// <summary>
|
|
56
|
+
///
|
|
57
|
+
/// </summary>
|
|
58
|
+
protected int ownedIndex;
|
|
59
|
+
|
|
60
|
+
|
|
61
|
+
/// <summary>
|
|
62
|
+
///
|
|
63
|
+
/// </summary>
|
|
64
|
+
/// <param name="bulletDifficulties"></param>
|
|
65
|
+
/// <param name="chapterIndex"></param>
|
|
66
|
+
/// <returns></returns>
|
|
67
|
+
public virtual List<BulletDifficulty> DisplaySettings(List<BulletDifficulty> bulletDifficulties, ref int chapterIndex)
|
|
68
|
+
{
|
|
69
|
+
this.chapterIndex = chapterIndex;
|
|
70
|
+
|
|
71
|
+
this.bulletDifficulties = bulletDifficulties;
|
|
72
|
+
|
|
73
|
+
base.DisplaySettings(bulletDifficulties);
|
|
74
|
+
|
|
75
|
+
if (difficultyDatabase == null ||
|
|
76
|
+
!DatabaseUtility
|
|
77
|
+
.InitializeDatabase(evidenceDatabase, out evidenceDatabase))
|
|
78
|
+
return this.bulletDifficulties;
|
|
79
|
+
|
|
80
|
+
foldout = EditorGUILayout.Foldout(foldout, "Truth Bullets", largeFoldoutStyle);
|
|
81
|
+
|
|
82
|
+
if (foldout)
|
|
83
|
+
{
|
|
84
|
+
GUILayout.Space(10);
|
|
85
|
+
|
|
86
|
+
chapterIndex = HandyFields.IntField("Current Chapter: ", chapterIndex, 20);
|
|
87
|
+
|
|
88
|
+
if (chapterIndex < evidenceDatabase.Evidences.Count)
|
|
89
|
+
{
|
|
90
|
+
PopulateMissingDifficulties();
|
|
91
|
+
|
|
92
|
+
DisplayDifficulties();
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
EditorGUILayout.EndFoldoutHeaderGroup();
|
|
97
|
+
|
|
98
|
+
return this.bulletDifficulties;
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
/// <summary>
|
|
102
|
+
///
|
|
103
|
+
/// </summary>
|
|
104
|
+
protected virtual void PopulateMissingDifficulties()
|
|
105
|
+
{
|
|
106
|
+
for (int i = 0; i < difficultyDatabase.States.Count; i++)
|
|
107
|
+
if (i >= bulletDifficulties.Count)
|
|
108
|
+
bulletDifficulties.Add(new(difficultyDatabase.States[i]));
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
/// <summary>
|
|
112
|
+
///
|
|
113
|
+
/// </summary>
|
|
114
|
+
protected virtual void DisplayDifficulties()
|
|
115
|
+
{
|
|
116
|
+
for (int i = 0; i < difficultyDatabase.States.Count; i++)
|
|
117
|
+
DisplayDifficulty(i);
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
/// <summary>
|
|
121
|
+
///
|
|
122
|
+
/// </summary>
|
|
123
|
+
/// <param name="i"></param>
|
|
124
|
+
protected virtual void DisplayDifficulty(int i)
|
|
125
|
+
{
|
|
126
|
+
InitializeInheritedBullets(i);
|
|
127
|
+
|
|
128
|
+
difficulty = bulletDifficulties[i].difficulty;
|
|
129
|
+
|
|
130
|
+
difficultyBullets = bulletDifficulties[i].bullets;
|
|
131
|
+
|
|
132
|
+
DisplayPair();
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
/// <summary>
|
|
136
|
+
///
|
|
137
|
+
/// </summary>
|
|
138
|
+
/// <param name="i"></param>
|
|
139
|
+
protected virtual void InitializeInheritedBullets(int i)
|
|
140
|
+
{
|
|
141
|
+
inheritedBullets = new();
|
|
142
|
+
|
|
143
|
+
for (int prev = 0; prev < i; prev++)
|
|
144
|
+
foreach (var bullet in bulletDifficulties[prev].bullets)
|
|
145
|
+
if (!inheritedBullets.Contains(bullet))
|
|
146
|
+
inheritedBullets.Add(bullet);
|
|
147
|
+
}
|
|
148
|
+
|
|
149
|
+
|
|
150
|
+
/// <summary>
|
|
151
|
+
///
|
|
152
|
+
/// </summary>
|
|
153
|
+
protected virtual void DisplayPair()
|
|
154
|
+
{
|
|
155
|
+
EditorGUILayout.LabelField("Truth Bullets for: " + difficulty.stateName);
|
|
156
|
+
|
|
157
|
+
DisplayInheritedBullets();
|
|
158
|
+
|
|
159
|
+
ValidateInheritedBullets();
|
|
160
|
+
|
|
161
|
+
DisplayOwnedBullets();
|
|
162
|
+
|
|
163
|
+
DisplayAddButton();
|
|
164
|
+
|
|
165
|
+
RemoveAllBulletDuplicates();
|
|
166
|
+
}
|
|
167
|
+
|
|
168
|
+
/// <summary>
|
|
169
|
+
///
|
|
170
|
+
/// </summary>
|
|
171
|
+
protected virtual void DisplayInheritedBullets()
|
|
172
|
+
{
|
|
173
|
+
if (inheritedBullets.Count > 0)
|
|
174
|
+
{
|
|
175
|
+
GUI.enabled = false;
|
|
176
|
+
|
|
177
|
+
for (int i = 0; i < inheritedBullets.Count; i++)
|
|
178
|
+
{
|
|
179
|
+
using (new EditorGUILayout.HorizontalScope())
|
|
180
|
+
{
|
|
181
|
+
Evidence trialEvidence = evidenceDatabase.Evidences[chapterIndex];
|
|
182
|
+
|
|
183
|
+
int choiceIndex = trialEvidence.TruthBullets.IndexOf(inheritedBullets[i]);
|
|
184
|
+
|
|
185
|
+
EditorGUILayout.IntPopup(choiceIndex, trialEvidence.ToStringArray(), trialEvidence.TointArray());
|
|
186
|
+
|
|
187
|
+
EditorGUILayout.LabelField("(Inherited)", GUILayout.Width(80));
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
|
|
191
|
+
GUI.enabled = true;
|
|
192
|
+
}
|
|
193
|
+
}
|
|
194
|
+
|
|
195
|
+
/// <summary>
|
|
196
|
+
///
|
|
197
|
+
/// </summary>
|
|
198
|
+
protected virtual void ValidateInheritedBullets()
|
|
199
|
+
{
|
|
200
|
+
for (int i = 0; i < inheritedBullets.Count; i++)
|
|
201
|
+
if (i >= difficultyBullets.Count)
|
|
202
|
+
difficultyBullets.Add(inheritedBullets[i]);
|
|
203
|
+
else
|
|
204
|
+
difficultyBullets[i] = inheritedBullets[i];
|
|
205
|
+
}
|
|
206
|
+
|
|
207
|
+
/// <summary>
|
|
208
|
+
///
|
|
209
|
+
/// </summary>
|
|
210
|
+
protected virtual void DisplayOwnedBullets()
|
|
211
|
+
{
|
|
212
|
+
ownedBullets = new();
|
|
213
|
+
|
|
214
|
+
foreach (var bullet in difficultyBullets)
|
|
215
|
+
if (!inheritedBullets.Contains(bullet))
|
|
216
|
+
ownedBullets.Add(bullet);
|
|
217
|
+
|
|
218
|
+
for (int i = 0; i < ownedBullets.Count; i++)
|
|
219
|
+
using (new EditorGUILayout.HorizontalScope())
|
|
220
|
+
DisplayOwnedBullet(i);
|
|
221
|
+
}
|
|
222
|
+
|
|
223
|
+
/// <summary>
|
|
224
|
+
///
|
|
225
|
+
/// </summary>
|
|
226
|
+
/// <param name="i"></param>
|
|
227
|
+
protected virtual void DisplayOwnedBullet(int i)
|
|
228
|
+
{
|
|
229
|
+
ownedIndex = i;
|
|
230
|
+
|
|
231
|
+
DisplayBullet();
|
|
232
|
+
|
|
233
|
+
DisplayRemoveButton();
|
|
234
|
+
}
|
|
235
|
+
|
|
236
|
+
/// <summary>
|
|
237
|
+
///
|
|
238
|
+
/// </summary>
|
|
239
|
+
protected virtual void DisplayBullet()
|
|
240
|
+
{
|
|
241
|
+
InitializeValidBullets(out List<TruthBullet> availableBullets, out List<string> availableNames);
|
|
242
|
+
|
|
243
|
+
DisplayValidBullet(availableBullets, availableNames);
|
|
244
|
+
}
|
|
245
|
+
|
|
246
|
+
/// <summary>
|
|
247
|
+
///
|
|
248
|
+
/// </summary>
|
|
249
|
+
/// <param name="availableBullets"></param>
|
|
250
|
+
/// <param name="availableNames"></param>
|
|
251
|
+
protected virtual void InitializeValidBullets(out List<TruthBullet> availableBullets, out List<string> availableNames)
|
|
252
|
+
{
|
|
253
|
+
Evidence trialEvidence = evidenceDatabase.Evidences[chapterIndex];
|
|
254
|
+
|
|
255
|
+
availableBullets = new();
|
|
256
|
+
|
|
257
|
+
availableNames = new();
|
|
258
|
+
|
|
259
|
+
for (int j = 0; j < trialEvidence.TruthBullets.Count; j++)
|
|
260
|
+
{
|
|
261
|
+
TruthBullet evidenceBullet = trialEvidence.TruthBullets[j];
|
|
262
|
+
|
|
263
|
+
if (!difficultyBullets.Contains(evidenceBullet) ||
|
|
264
|
+
evidenceBullet == ownedBullets[ownedIndex])
|
|
265
|
+
{
|
|
266
|
+
availableBullets.Add(evidenceBullet);
|
|
267
|
+
|
|
268
|
+
availableNames.Add(trialEvidence.ToStringArray()[j]);
|
|
269
|
+
}
|
|
270
|
+
}
|
|
271
|
+
}
|
|
272
|
+
|
|
273
|
+
/// <summary>
|
|
274
|
+
///
|
|
275
|
+
/// </summary>
|
|
276
|
+
/// <param name="availableBullets"></param>
|
|
277
|
+
/// <param name="availableNames"></param>
|
|
278
|
+
protected virtual void DisplayValidBullet(List<TruthBullet> availableBullets, List<string> availableNames)
|
|
279
|
+
{
|
|
280
|
+
int choiceIndex = availableBullets.IndexOf(ownedBullets[ownedIndex]);
|
|
281
|
+
|
|
282
|
+
if (choiceIndex == -1 && availableBullets.Count > 0)
|
|
283
|
+
choiceIndex = 0;
|
|
284
|
+
|
|
285
|
+
if (availableBullets.Count > 0)
|
|
286
|
+
{
|
|
287
|
+
int newIndex = EditorGUILayout.IntPopup(choiceIndex, availableNames.ToArray(),
|
|
288
|
+
Enumerable.Range(0, availableBullets.Count).ToArray());
|
|
289
|
+
|
|
290
|
+
if (newIndex != choiceIndex)
|
|
291
|
+
{
|
|
292
|
+
difficultyBullets.Remove(ownedBullets[ownedIndex]);
|
|
293
|
+
|
|
294
|
+
ownedBullets[ownedIndex] = availableBullets[newIndex];
|
|
295
|
+
|
|
296
|
+
difficultyBullets.Add(ownedBullets[ownedIndex]);
|
|
297
|
+
}
|
|
298
|
+
}
|
|
299
|
+
else
|
|
300
|
+
EditorGUILayout.LabelField("No available bullets");
|
|
301
|
+
}
|
|
302
|
+
|
|
303
|
+
/// <summary>
|
|
304
|
+
///
|
|
305
|
+
/// </summary>
|
|
306
|
+
protected virtual void DisplayRemoveButton()
|
|
307
|
+
{
|
|
308
|
+
if (GUILayout.Button("Remove Bullet"))
|
|
309
|
+
RemoveInheritedBullet();
|
|
310
|
+
}
|
|
311
|
+
|
|
312
|
+
/// <summary>
|
|
313
|
+
///
|
|
314
|
+
/// </summary>
|
|
315
|
+
protected virtual void RemoveInheritedBullet()
|
|
316
|
+
{
|
|
317
|
+
int difficultyIndex = bulletDifficulties.IndexOf(
|
|
318
|
+
bulletDifficulties
|
|
319
|
+
.Where(pair => pair.difficulty == difficulty)
|
|
320
|
+
.First()
|
|
321
|
+
);
|
|
322
|
+
|
|
323
|
+
for (int x = difficultyIndex; x < bulletDifficulties.Count; x++)
|
|
324
|
+
bulletDifficulties[x].bullets.RemoveAt(ownedIndex);
|
|
325
|
+
}
|
|
326
|
+
|
|
327
|
+
/// <summary>
|
|
328
|
+
///
|
|
329
|
+
/// </summary>
|
|
330
|
+
protected virtual void DisplayAddButton()
|
|
331
|
+
{
|
|
332
|
+
if (difficultyBullets.Count != evidenceDatabase.Evidences[chapterIndex].TruthBullets.Count &&
|
|
333
|
+
GUILayout.Button("Add Bullet"))
|
|
334
|
+
{
|
|
335
|
+
Evidence trialEvidence = evidenceDatabase.Evidences[chapterIndex];
|
|
336
|
+
|
|
337
|
+
TruthBullet bulletToAdd = null;
|
|
338
|
+
|
|
339
|
+
foreach (var bullet in trialEvidence.TruthBullets)
|
|
340
|
+
if (!difficultyBullets.Contains(bullet))
|
|
341
|
+
{
|
|
342
|
+
bulletToAdd = bullet;
|
|
343
|
+
|
|
344
|
+
break;
|
|
345
|
+
}
|
|
346
|
+
|
|
347
|
+
AddOwnedBullet(bulletToAdd);
|
|
348
|
+
}
|
|
349
|
+
}
|
|
350
|
+
|
|
351
|
+
/// <summary>
|
|
352
|
+
///
|
|
353
|
+
/// </summary>
|
|
354
|
+
/// <param name="bulletToAdd"></param>
|
|
355
|
+
protected virtual void AddOwnedBullet(TruthBullet bulletToAdd)
|
|
356
|
+
{
|
|
357
|
+
if (bulletToAdd == null)
|
|
358
|
+
return;
|
|
359
|
+
|
|
360
|
+
difficultyBullets.Add(bulletToAdd);
|
|
361
|
+
|
|
362
|
+
int insertIndex = difficultyBullets.IndexOf(bulletToAdd);
|
|
363
|
+
|
|
364
|
+
int difficultyIndex = bulletDifficulties
|
|
365
|
+
.IndexOf(bulletDifficulties.Where(pair => pair.difficulty == difficulty).First());
|
|
366
|
+
|
|
367
|
+
for (int i = difficultyIndex + 1; i < bulletDifficulties.Count; i++)
|
|
368
|
+
bulletDifficulties[i].bullets.Insert(insertIndex, bulletToAdd);
|
|
369
|
+
}
|
|
370
|
+
|
|
371
|
+
/// <summary>
|
|
372
|
+
///
|
|
373
|
+
/// </summary>
|
|
374
|
+
protected virtual void RemoveAllBulletDuplicates()
|
|
375
|
+
{
|
|
376
|
+
for (int i = 0; i < bulletDifficulties.Count; i++)
|
|
377
|
+
bulletDifficulties[i].RemoveDuplicateBullets();
|
|
378
|
+
}
|
|
379
|
+
}
|
|
380
|
+
}
|
|
381
|
+
#endif
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "DREditor.Minigames",
|
|
3
|
+
"rootNamespace": "",
|
|
4
|
+
"references": [
|
|
5
|
+
"Unity.RenderPipelines.Core.Runtime",
|
|
6
|
+
"DG.Tweening",
|
|
7
|
+
"CharTween",
|
|
8
|
+
"Cinemachine",
|
|
9
|
+
"Unity.InputSystem",
|
|
10
|
+
"Unity.TextMeshPro",
|
|
11
|
+
"FMODUnity",
|
|
12
|
+
"DREditor.Editor",
|
|
13
|
+
"DREditor",
|
|
14
|
+
"DREditor.Controls",
|
|
15
|
+
"DREditor.Input",
|
|
16
|
+
"DREditor.Fading",
|
|
17
|
+
"DREditor.Audio",
|
|
18
|
+
"DREditor.UIHandling",
|
|
19
|
+
"DREditor.LocalDialogues",
|
|
20
|
+
"DREditor.RoomLoading",
|
|
21
|
+
"DREditor.UI",
|
|
22
|
+
"DREditor.UI.Menus",
|
|
23
|
+
"DREditor.Progressing.Handling",
|
|
24
|
+
"DREditor.EventObjectServices",
|
|
25
|
+
"DREditor.States",
|
|
26
|
+
"DREditor.Investigations"
|
|
27
|
+
],
|
|
28
|
+
"includePlatforms": [],
|
|
29
|
+
"excludePlatforms": [],
|
|
30
|
+
"allowUnsafeCode": false,
|
|
31
|
+
"overrideReferences": false,
|
|
32
|
+
"precompiledReferences": [],
|
|
33
|
+
"autoReferenced": true,
|
|
34
|
+
"defineConstraints": [],
|
|
35
|
+
"versionDefines": [],
|
|
36
|
+
"noEngineReferences": false
|
|
37
|
+
}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
//Author: Benjamin "Sweden" Jillson : Discord: sweden_gaming For Project Eden's Garden
|
|
2
|
+
#if UNITY_EDITOR
|
|
3
|
+
using DREditor.Editor.Utility;
|
|
4
|
+
using DREditor.States;
|
|
5
|
+
using System;
|
|
6
|
+
using UnityEditor;
|
|
7
|
+
using UnityEngine;
|
|
8
|
+
|
|
9
|
+
namespace DREditor.Minigames
|
|
10
|
+
{
|
|
11
|
+
/// <summary>
|
|
12
|
+
///
|
|
13
|
+
/// </summary>
|
|
14
|
+
[Serializable]
|
|
15
|
+
public abstract class DifficultyEditorBase<T>
|
|
16
|
+
{
|
|
17
|
+
/// <summary>
|
|
18
|
+
///
|
|
19
|
+
/// </summary>
|
|
20
|
+
protected StateDatabase difficultyDatabase = null;
|
|
21
|
+
|
|
22
|
+
/// <summary>
|
|
23
|
+
///
|
|
24
|
+
/// </summary>
|
|
25
|
+
protected bool foldout = true;
|
|
26
|
+
|
|
27
|
+
/// <summary>
|
|
28
|
+
///
|
|
29
|
+
/// </summary>
|
|
30
|
+
protected GUIStyle largeFoldoutStyle;
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
/// <summary>
|
|
34
|
+
///
|
|
35
|
+
/// </summary>
|
|
36
|
+
/// <param name="settings"></param>
|
|
37
|
+
/// <returns></returns>
|
|
38
|
+
public virtual T DisplaySettings(T settings)
|
|
39
|
+
{
|
|
40
|
+
if (difficultyDatabase == null)
|
|
41
|
+
difficultyDatabase = BuilderUtility.FindAssetByType<StateDatabase>("Diff");
|
|
42
|
+
|
|
43
|
+
InitializeFoldoutStyle();
|
|
44
|
+
|
|
45
|
+
return settings;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
/// <summary>
|
|
49
|
+
///
|
|
50
|
+
/// </summary>
|
|
51
|
+
protected virtual void InitializeFoldoutStyle()
|
|
52
|
+
{
|
|
53
|
+
largeFoldoutStyle ??= new(EditorStyles.foldout)
|
|
54
|
+
{
|
|
55
|
+
fontSize = 18,
|
|
56
|
+
fontStyle = FontStyle.Bold
|
|
57
|
+
};
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
#endif
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
//Author: Benjamin "Sweden" Jillson : Discord: sweden_gaming For Project Eden's Garden
|
|
2
|
+
// Leothedev also helped out a lot
|
|
3
|
+
using System.Collections;
|
|
4
|
+
using UnityEngine.Events;
|
|
5
|
+
|
|
6
|
+
namespace DREditor.Minigames
|
|
7
|
+
{
|
|
8
|
+
/// <summary>
|
|
9
|
+
///
|
|
10
|
+
/// </summary>
|
|
11
|
+
public interface IShatterGraphic
|
|
12
|
+
{
|
|
13
|
+
/// <summary>
|
|
14
|
+
///
|
|
15
|
+
/// </summary>
|
|
16
|
+
UnityEvent OnPreShatter { get; }
|
|
17
|
+
|
|
18
|
+
/// <summary>
|
|
19
|
+
///
|
|
20
|
+
/// </summary>
|
|
21
|
+
UnityEvent OnMeshShattering { get; }
|
|
22
|
+
|
|
23
|
+
/// <summary>
|
|
24
|
+
///
|
|
25
|
+
/// </summary>
|
|
26
|
+
UnityEvent OnPostShatter { get; }
|
|
27
|
+
|
|
28
|
+
/// <summary>
|
|
29
|
+
///
|
|
30
|
+
/// </summary>
|
|
31
|
+
IEnumerator ShatterTheGraphic();
|
|
32
|
+
}
|
|
33
|
+
}
|
package/IShatterText.cs
ADDED
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
// Completely Reworked Author: Benjamin "Sweden" Jillson : Discord: sweden_gaming For Project Eden's Garden
|
|
2
|
+
// Original Author: LeoTheDev
|
|
3
|
+
using UnityEngine;
|
|
4
|
+
|
|
5
|
+
namespace DREditor.Minigames
|
|
6
|
+
{
|
|
7
|
+
/// <summary>
|
|
8
|
+
///
|
|
9
|
+
/// </summary>
|
|
10
|
+
public interface IShatterText
|
|
11
|
+
{
|
|
12
|
+
/// <summary>
|
|
13
|
+
///
|
|
14
|
+
/// </summary>
|
|
15
|
+
void ResetMesh();
|
|
16
|
+
|
|
17
|
+
/// <summary>
|
|
18
|
+
///
|
|
19
|
+
/// </summary>
|
|
20
|
+
void SetMesh();
|
|
21
|
+
|
|
22
|
+
/// <summary>
|
|
23
|
+
///
|
|
24
|
+
/// </summary>
|
|
25
|
+
/// <param name="hitPoint"></param>
|
|
26
|
+
void Shatter(Vector3 hitPoint);
|
|
27
|
+
|
|
28
|
+
/// <summary>
|
|
29
|
+
///
|
|
30
|
+
/// </summary>
|
|
31
|
+
/// <param name="shatterProcess"></param>
|
|
32
|
+
void OverrideProcess(ScriptableObject shatterProcess);
|
|
33
|
+
}
|
|
34
|
+
}
|