net.dreditor.minigames.nsd 0.0.0-stage → 0.1.6
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/DREditor.Minigames.NSD.asmdef +38 -0
- package/DREditor.Minigames.NSD.asmdef.meta +7 -0
- package/Editor/DREditor.Minigames.NSD.Editor.asmdef +24 -0
- package/Editor/DREditor.Minigames.NSD.Editor.asmdef.meta +7 -0
- package/Editor/MenuItemNSDUtility.cs +128 -0
- package/Editor/MenuItemNSDUtility.cs.meta +11 -0
- package/Editor/NSDBuilderEditor.cs +185 -0
- package/Editor/NSDBuilderEditor.cs.meta +11 -0
- package/Editor.meta +8 -0
- package/Managers/ManuallyRenderCamera.cs +40 -0
- package/Managers/ManuallyRenderCamera.cs.meta +11 -0
- package/Managers/NSDBuilder.cs +57 -0
- package/Managers/NSDBuilder.cs.meta +11 -0
- package/Managers/NSDBulletLoadAnimation.cs +340 -0
- package/Managers/NSDBulletLoadAnimation.cs.meta +11 -0
- package/Managers/NSDIntro.cs +258 -0
- package/Managers/NSDIntro.cs.meta +11 -0
- package/Managers/NSDManager.cs +122 -0
- package/Managers/NSDManager.cs.meta +11 -0
- package/Managers/NSDReticle.cs +234 -0
- package/Managers/NSDReticle.cs.meta +11 -0
- package/Managers/OverlayBlend.shader +56 -0
- package/Managers/OverlayBlend.shader.meta +10 -0
- package/Managers.meta +8 -0
- package/Samples/Absorb_Bullet_Mode_Mechanic_Template.prefab +939 -0
- package/Samples/Absorb_Bullet_Mode_Mechanic_Template.prefab.meta +7 -0
- package/Samples/Animations/NSD_Reticle/NSDReticleHover.anim +179 -0
- package/Samples/Animations/NSD_Reticle/NSDReticleHover.anim.meta +8 -0
- package/Samples/Animations/NSD_Reticle/NSDReticleShow.anim +116 -0
- package/Samples/Animations/NSD_Reticle/NSDReticleShow.anim.meta +8 -0
- package/Samples/Animations/NSD_Reticle/NSDReticleSpin.anim +199 -0
- package/Samples/Animations/NSD_Reticle/NSDReticleSpin.anim.meta +8 -0
- package/Samples/Animations/NSD_Reticle/NSDUIRingLoop.anim +345 -0
- package/Samples/Animations/NSD_Reticle/NSDUIRingLoop.anim.meta +8 -0
- package/Samples/Animations/NSD_Reticle/Reticle.controller +835 -0
- package/Samples/Animations/NSD_Reticle/Reticle.controller.meta +8 -0
- package/Samples/Animations/NSD_Reticle.meta +8 -0
- package/Samples/Animations/NSD_Selection/NSDSelectionPieces.anim +791 -0
- package/Samples/Animations/NSD_Selection/NSDSelectionPieces.anim.meta +8 -0
- package/Samples/Animations/NSD_Selection/Selection UI.controller +130 -0
- package/Samples/Animations/NSD_Selection/Selection UI.controller.meta +8 -0
- package/Samples/Animations/NSD_Selection.meta +8 -0
- package/Samples/Animations.meta +8 -0
- package/Samples/Bullet_Canvas_Shell.prefab +193 -0
- package/Samples/Bullet_Canvas_Shell.prefab.meta +7 -0
- package/Samples/Bullet_Canvas_Template.prefab +348 -0
- package/Samples/Bullet_Canvas_Template.prefab.meta +7 -0
- package/Samples/Bullet_Chamber_Shell.prefab +178 -0
- package/Samples/Bullet_Chamber_Shell.prefab.meta +7 -0
- package/Samples/Bullet_Chamber_Template.prefab +280 -0
- package/Samples/Bullet_Chamber_Template.prefab.meta +7 -0
- package/Samples/Bullet_UI_Parent_Shell.prefab +38 -0
- package/Samples/Bullet_UI_Parent_Shell.prefab.meta +7 -0
- package/Samples/Bullet_UI_Parent_Template.prefab +510 -0
- package/Samples/Bullet_UI_Parent_Template.prefab.meta +7 -0
- package/Samples/Can_Absorb_Condition.prefab +61 -0
- package/Samples/Can_Absorb_Condition.prefab.meta +7 -0
- package/Samples/Debate_Controls_UI_Condition.prefab +56 -0
- package/Samples/Debate_Controls_UI_Condition.prefab.meta +7 -0
- package/Samples/Debate_Text_Camera.prefab +125 -0
- package/Samples/Debate_Text_Camera.prefab.meta +7 -0
- package/Samples/Debate_Text_Texture.prefab +119 -0
- package/Samples/Debate_Text_Texture.prefab.meta +7 -0
- package/Samples/Firing_Bullet_Texture.prefab +75 -0
- package/Samples/Firing_Bullet_Texture.prefab.meta +7 -0
- package/Samples/Load_Bullet_ETemplate.prefab +343 -0
- package/Samples/Load_Bullet_ETemplate.prefab.meta +7 -0
- package/Samples/Loading_Bullet_Canvas_ETemplate.prefab +405 -0
- package/Samples/Loading_Bullet_Canvas_ETemplate.prefab.meta +7 -0
- package/Samples/NSDUICameraEnabled.asset +21 -0
- package/Samples/NSDUICameraEnabled.asset.meta +8 -0
- package/Samples/NSD_Controls_UI_Handler.prefab +168 -0
- package/Samples/NSD_Controls_UI_Handler.prefab.meta +7 -0
- package/Samples/NSD_Intro_Canvas_ETemplate.prefab +272 -0
- package/Samples/NSD_Intro_Canvas_ETemplate.prefab.meta +7 -0
- package/Samples/NSD_Intro_Shell.prefab +60 -0
- package/Samples/NSD_Intro_Shell.prefab.meta +7 -0
- package/Samples/NSD_Intro_Template.prefab +248 -0
- package/Samples/NSD_Intro_Template.prefab.meta +7 -0
- package/Samples/NSD_Line_Manager.prefab +271 -0
- package/Samples/NSD_Line_Manager.prefab.meta +7 -0
- package/Samples/NSD_Manager_Shell.prefab +313 -0
- package/Samples/NSD_Manager_Shell.prefab.meta +7 -0
- package/Samples/NSD_Manager_Template.prefab +2078 -0
- package/Samples/NSD_Manager_Template.prefab.meta +7 -0
- package/Samples/NSD_Reticle_ETemplate.prefab +314 -0
- package/Samples/NSD_Reticle_ETemplate.prefab.meta +7 -0
- package/Samples/NSD_UI_Camera.prefab +158 -0
- package/Samples/NSD_UI_Camera.prefab.meta +7 -0
- package/Samples/NSD_UI_Canvas_Shell.prefab +481 -0
- package/Samples/NSD_UI_Canvas_Shell.prefab.meta +7 -0
- package/Samples/NSD_UI_Canvas_Template.prefab +603 -0
- package/Samples/NSD_UI_Canvas_Template.prefab.meta +7 -0
- package/Samples/NSD_UI_Texture.prefab +75 -0
- package/Samples/NSD_UI_Texture.prefab.meta +7 -0
- package/Samples/White Noise Triangle Shatter.asset +31 -0
- package/Samples/White Noise Triangle Shatter.asset.meta +8 -0
- package/Samples.meta +8 -0
- package/package.json +52 -6
- package/package.json.meta +7 -0
- package/README.md +0 -3
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "DREditor.Minigames.NSD",
|
|
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.Minigames",
|
|
26
|
+
"DREditor.Minigames.Debates",
|
|
27
|
+
"DREditor.Investigations"
|
|
28
|
+
],
|
|
29
|
+
"includePlatforms": [],
|
|
30
|
+
"excludePlatforms": [],
|
|
31
|
+
"allowUnsafeCode": false,
|
|
32
|
+
"overrideReferences": false,
|
|
33
|
+
"precompiledReferences": [],
|
|
34
|
+
"autoReferenced": true,
|
|
35
|
+
"defineConstraints": [],
|
|
36
|
+
"versionDefines": [],
|
|
37
|
+
"noEngineReferences": false
|
|
38
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "DREditor.Minigames.NSD.Editor",
|
|
3
|
+
"rootNamespace": "",
|
|
4
|
+
"references": [
|
|
5
|
+
"DREditor",
|
|
6
|
+
"DREditor.Editor",
|
|
7
|
+
"DREditor.Minigames",
|
|
8
|
+
"DREditor.Minigames.Debates",
|
|
9
|
+
"DREditor.Minigames.Debates.Editor",
|
|
10
|
+
"DREditor.Minigames.NSD",
|
|
11
|
+
"DREditor.Investigations"
|
|
12
|
+
],
|
|
13
|
+
"includePlatforms": [
|
|
14
|
+
"Editor"
|
|
15
|
+
],
|
|
16
|
+
"excludePlatforms": [],
|
|
17
|
+
"allowUnsafeCode": false,
|
|
18
|
+
"overrideReferences": false,
|
|
19
|
+
"precompiledReferences": [],
|
|
20
|
+
"autoReferenced": true,
|
|
21
|
+
"defineConstraints": [],
|
|
22
|
+
"versionDefines": [],
|
|
23
|
+
"noEngineReferences": false
|
|
24
|
+
}
|
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
//Author: Benjamin "Sweden" Jillson : Discord: sweden_gaming For Project Eden's Garden
|
|
2
|
+
#if UNITY_EDITOR
|
|
3
|
+
using DREditor.Dialogues;
|
|
4
|
+
using DREditor.Minigames.Debates;
|
|
5
|
+
using System.Collections.Generic;
|
|
6
|
+
using UnityEditor;
|
|
7
|
+
|
|
8
|
+
namespace DREditor.Minigames.NSD.Editor
|
|
9
|
+
{
|
|
10
|
+
/// <summary>
|
|
11
|
+
///
|
|
12
|
+
/// </summary>
|
|
13
|
+
/// <remarks></remarks>
|
|
14
|
+
public static class MenuItemNSDUtility
|
|
15
|
+
{
|
|
16
|
+
/// <summary>
|
|
17
|
+
///
|
|
18
|
+
/// </summary>
|
|
19
|
+
[MenuItem("DREditor/Import/Dialogues/Fuck Up Dialogue")]
|
|
20
|
+
public static void ImportFUDialogue()
|
|
21
|
+
{
|
|
22
|
+
DebateBuilder<Panel> builder = null;
|
|
23
|
+
|
|
24
|
+
List<DialogueCore> fuckUpDialogues = new();
|
|
25
|
+
|
|
26
|
+
foreach (var selection in Selection.objects)
|
|
27
|
+
if (selection is DebateBuilder<Panel> debate)
|
|
28
|
+
builder = debate;
|
|
29
|
+
else if (selection is DialogueCore dialogue)
|
|
30
|
+
fuckUpDialogues.Add(dialogue);
|
|
31
|
+
|
|
32
|
+
UnityEngine.Debug.Log("Count: " + fuckUpDialogues.Count);
|
|
33
|
+
|
|
34
|
+
if (builder != null)
|
|
35
|
+
{
|
|
36
|
+
ImportFUDialogueToAsset(builder, fuckUpDialogues);
|
|
37
|
+
|
|
38
|
+
EditorUtility.SetDirty(builder);
|
|
39
|
+
|
|
40
|
+
UnityEngine.Debug.Log("Import Complete");
|
|
41
|
+
}
|
|
42
|
+
else
|
|
43
|
+
UnityEngine.Debug.LogWarning("Couldn't find builder to import to.");
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
/// <summary>
|
|
47
|
+
///
|
|
48
|
+
/// </summary>
|
|
49
|
+
/// <param name="builder"></param>
|
|
50
|
+
/// <param name="fuckUpDialogues"></param>
|
|
51
|
+
static void ImportFUDialogueToAsset(DebateBuilder<Panel> builder, List<DialogueCore> fuckUpDialogues)
|
|
52
|
+
{
|
|
53
|
+
for (int i = 0; i < fuckUpDialogues.Count; i++)
|
|
54
|
+
foreach (var panel in builder.Lines)
|
|
55
|
+
if (ImportedFUDialogue(panel, fuckUpDialogues[i]))
|
|
56
|
+
break;
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
/// <summary>
|
|
60
|
+
///
|
|
61
|
+
/// </summary>
|
|
62
|
+
/// <param name="panel"></param>
|
|
63
|
+
/// <param name="fuckUpDialogue"></param>
|
|
64
|
+
/// <returns></returns>
|
|
65
|
+
static bool ImportedFUDialogue(Panel panel, DialogueCore fuckUpDialogue)
|
|
66
|
+
{
|
|
67
|
+
foreach (var basePhrase in panel.Phrases)
|
|
68
|
+
{
|
|
69
|
+
if (basePhrase is Phrase phrase && IsMissingFUDialogue(basePhrase))
|
|
70
|
+
{
|
|
71
|
+
phrase.SetFuckUpDialogue(fuckUpDialogue);
|
|
72
|
+
|
|
73
|
+
UnityEngine.Debug.Log("Adding: " + fuckUpDialogue.name);
|
|
74
|
+
|
|
75
|
+
return true;
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
return false;
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
/// <summary>
|
|
83
|
+
///
|
|
84
|
+
/// </summary>
|
|
85
|
+
[MenuItem("DREditor/NSD/Clear Selected Debates all FU Dialogue")]
|
|
86
|
+
public static void ClearFUDialogue()
|
|
87
|
+
{
|
|
88
|
+
foreach (var selection in Selection.objects)
|
|
89
|
+
{
|
|
90
|
+
if (selection is DebateBuilder<Panel> builder)
|
|
91
|
+
{
|
|
92
|
+
foreach (var panel in builder.Lines)
|
|
93
|
+
foreach (var basePhrase in panel.Phrases)
|
|
94
|
+
if (ContainsFUDialogue(basePhrase) && basePhrase is Phrase phrase)
|
|
95
|
+
phrase.SetFuckUpDialogue(null);
|
|
96
|
+
|
|
97
|
+
EditorUtility.SetDirty(builder);
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
UnityEngine.Debug.Log("Clear Complete");
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
/// <summary>
|
|
105
|
+
///
|
|
106
|
+
/// </summary>
|
|
107
|
+
/// <param name="basePhrase"></param>
|
|
108
|
+
/// <returns></returns>
|
|
109
|
+
static bool ContainsFUDialogue(PhraseBase basePhrase)
|
|
110
|
+
=> basePhrase is Phrase phrase && phrase.fuckUpDialogue != null && IsPhraseHitable(phrase);
|
|
111
|
+
|
|
112
|
+
/// <summary>
|
|
113
|
+
///
|
|
114
|
+
/// </summary>
|
|
115
|
+
/// <param name="basePhrase"></param>
|
|
116
|
+
/// <returns></returns>
|
|
117
|
+
static bool IsMissingFUDialogue(PhraseBase basePhrase)
|
|
118
|
+
=> basePhrase is Phrase phrase && phrase.fuckUpDialogue == null && IsPhraseHitable(phrase);
|
|
119
|
+
|
|
120
|
+
/// <summary>
|
|
121
|
+
///
|
|
122
|
+
/// </summary>
|
|
123
|
+
/// <param name="phrase"></param>
|
|
124
|
+
/// <returns></returns>
|
|
125
|
+
public static bool IsPhraseHitable(PhraseBase phrase) => phrase.Has<PartlyHitModifier>() || phrase.Has<InputModifier>();
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
#endif
|
|
@@ -0,0 +1,185 @@
|
|
|
1
|
+
//Author: Benjamin "Sweden" Jillson : Discord: sweden_gaming For Project Eden's Garden
|
|
2
|
+
using DREditor.Dialogues;
|
|
3
|
+
using DREditor.Editor;
|
|
4
|
+
using DREditor.Editor.Dialogues;
|
|
5
|
+
using DREditor.Minigames.Debates;
|
|
6
|
+
using DREditor.Minigames.Debates.Editor;
|
|
7
|
+
using DREditor.Minigames.NSD.Managers;
|
|
8
|
+
using DREditor.Editor.Utility;
|
|
9
|
+
using UnityEditor;
|
|
10
|
+
using UnityEngine;
|
|
11
|
+
|
|
12
|
+
namespace DREditor.Minigames.NSD.Editor
|
|
13
|
+
{
|
|
14
|
+
/// <summary>
|
|
15
|
+
///
|
|
16
|
+
/// </summary>
|
|
17
|
+
[CustomEditor(typeof(NSDBuilder))]
|
|
18
|
+
public class NSDBuilderEditor : DebateTypeEditor<Panel>
|
|
19
|
+
{
|
|
20
|
+
/// <summary>
|
|
21
|
+
///
|
|
22
|
+
/// </summary>
|
|
23
|
+
protected NSDBuilder builder;
|
|
24
|
+
|
|
25
|
+
/// <summary>
|
|
26
|
+
///
|
|
27
|
+
/// </summary>
|
|
28
|
+
protected BulletDifficultyEditor bulletDifficultyEditor;
|
|
29
|
+
|
|
30
|
+
/// <summary>
|
|
31
|
+
///
|
|
32
|
+
/// </summary>
|
|
33
|
+
protected TimedDifficultyEditor timerDifficultyEditor;
|
|
34
|
+
|
|
35
|
+
/// <summary>
|
|
36
|
+
///
|
|
37
|
+
/// </summary>
|
|
38
|
+
protected readonly PanelLineEditor<Panel> lineEditor = new();
|
|
39
|
+
|
|
40
|
+
/// <summary>
|
|
41
|
+
///
|
|
42
|
+
/// </summary>
|
|
43
|
+
protected readonly TrialDialogueDebugToolEditor<Panel> debugTool = new();
|
|
44
|
+
|
|
45
|
+
/// <summary>
|
|
46
|
+
///
|
|
47
|
+
/// </summary>
|
|
48
|
+
protected readonly int guiSpacing = 10;
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
protected override LineEditorBase LineEditor { get => lineEditor; }
|
|
52
|
+
|
|
53
|
+
protected override DialogueDebugToolEditorBase DebugTool { get => debugTool; }
|
|
54
|
+
|
|
55
|
+
|
|
56
|
+
protected virtual void OnEnable()
|
|
57
|
+
{
|
|
58
|
+
bulletDifficultyEditor = new();
|
|
59
|
+
|
|
60
|
+
timerDifficultyEditor = new();
|
|
61
|
+
|
|
62
|
+
SetDialogue(target as NSDBuilder);
|
|
63
|
+
|
|
64
|
+
lineEditor.Initialize(dia, serializedObject, this);
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
/// <inheritdoc/>
|
|
68
|
+
protected override void SetDialogue(DialogueBase<Panel> dia)
|
|
69
|
+
{
|
|
70
|
+
base.SetDialogue(dia);
|
|
71
|
+
|
|
72
|
+
builder = dia as NSDBuilder;
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
/// <inheritdoc/>
|
|
76
|
+
protected override bool DatabasesAreValid()
|
|
77
|
+
{
|
|
78
|
+
if (!base.DatabasesAreValid())
|
|
79
|
+
return false;
|
|
80
|
+
|
|
81
|
+
if (EditPanelMode)
|
|
82
|
+
lineEditor.EditPanelModeWindow(dia.Lines[editPanelNum]);
|
|
83
|
+
|
|
84
|
+
return !EditPanelMode;
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
/// <inheritdoc/>
|
|
88
|
+
protected override void SetWordWrappingColor()
|
|
89
|
+
{
|
|
90
|
+
base.SetWordWrappingColor();
|
|
91
|
+
|
|
92
|
+
CheckPanelMode();
|
|
93
|
+
|
|
94
|
+
DisplayBuilder();
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
/// <summary>
|
|
98
|
+
///
|
|
99
|
+
/// </summary>
|
|
100
|
+
protected virtual void CheckPanelMode()
|
|
101
|
+
{
|
|
102
|
+
if (!EditPanelMode)
|
|
103
|
+
{
|
|
104
|
+
for (int i = 0; i < dia.Lines.Count; i++)
|
|
105
|
+
{
|
|
106
|
+
if (dia.Lines[i].Edit)
|
|
107
|
+
{
|
|
108
|
+
EditPanelMode = true;
|
|
109
|
+
|
|
110
|
+
EditPanelNum = i;
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
/// <summary>
|
|
117
|
+
///
|
|
118
|
+
/// </summary>
|
|
119
|
+
protected virtual void DisplayBuilder()
|
|
120
|
+
{
|
|
121
|
+
if (lineEditor.TestLine == -1)
|
|
122
|
+
DisplayDebateSpecifics();
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
/// <summary>
|
|
126
|
+
///
|
|
127
|
+
/// </summary>
|
|
128
|
+
protected virtual void DisplayDebateSpecifics()
|
|
129
|
+
{
|
|
130
|
+
GUILayout.Space(guiSpacing);
|
|
131
|
+
|
|
132
|
+
DisplayStartingMusic();
|
|
133
|
+
|
|
134
|
+
GUILayout.Space(guiSpacing);
|
|
135
|
+
|
|
136
|
+
DisplayDifficultyEditors();
|
|
137
|
+
|
|
138
|
+
GUILayout.Space(guiSpacing);
|
|
139
|
+
|
|
140
|
+
DisplayEndDialogue();
|
|
141
|
+
|
|
142
|
+
GUILayout.Space(guiSpacing);
|
|
143
|
+
|
|
144
|
+
DisplaySkipField();
|
|
145
|
+
|
|
146
|
+
GUILayout.Space(guiSpacing);
|
|
147
|
+
}
|
|
148
|
+
|
|
149
|
+
/// <summary>
|
|
150
|
+
///
|
|
151
|
+
/// </summary>
|
|
152
|
+
protected virtual void DisplayDifficultyEditors()
|
|
153
|
+
{
|
|
154
|
+
using (new EditorGUILayout.VerticalScope("Box"))
|
|
155
|
+
timerDifficultyEditor.DisplaySettings(builder.times);
|
|
156
|
+
|
|
157
|
+
using (new EditorGUILayout.VerticalScope("Box"))
|
|
158
|
+
if (evidenceDatabase.Evidences[builder.trialNumber] != null)
|
|
159
|
+
bulletDifficultyEditor?.DisplaySettings(builder.TruthBullets, ref builder.trialNumber);
|
|
160
|
+
}
|
|
161
|
+
|
|
162
|
+
/// <summary>
|
|
163
|
+
///
|
|
164
|
+
/// </summary>
|
|
165
|
+
protected virtual void DisplayEndDialogue()
|
|
166
|
+
{
|
|
167
|
+
using (new EditorGUILayout.HorizontalScope())
|
|
168
|
+
{
|
|
169
|
+
EditorGUILayout.LabelField("Ending Panel Group Dialogue :", GUILayout.Width(180));
|
|
170
|
+
|
|
171
|
+
builder.EndDialogue = HandyFields.UnityField(builder.EndDialogue, 170, 20);
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
/// <summary>
|
|
176
|
+
///
|
|
177
|
+
/// </summary>
|
|
178
|
+
protected virtual void DisplaySkipField()
|
|
179
|
+
{
|
|
180
|
+
if (lineEditor.TestLine == -1)
|
|
181
|
+
builder.Skip = HandyFields.IntField(new GUIContent("Skip:",
|
|
182
|
+
"Amount of trial sequences to be skipped when this minigame completes."), builder.Skip);
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
}
|
package/Editor.meta
ADDED
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
//Author: Benjamin "Sweden" Jillson : Discord: sweden_gaming For Project Eden's Garden
|
|
2
|
+
using DREditor.EventObjects;
|
|
3
|
+
using UnityEngine;
|
|
4
|
+
|
|
5
|
+
namespace DREditor.Minigames.NSD.Managers
|
|
6
|
+
{
|
|
7
|
+
[RequireComponent(typeof(UnityEngine.Camera))]
|
|
8
|
+
[ClassHeader("Manually renders the camera through this monobehaviour." +
|
|
9
|
+
"\nRequires Component: " + nameof(UnityEngine.Camera) +
|
|
10
|
+
"\n\n")]
|
|
11
|
+
public class ManuallyRenderCamera : MonoBehaviour
|
|
12
|
+
{
|
|
13
|
+
/// <summary>
|
|
14
|
+
///
|
|
15
|
+
/// </summary>
|
|
16
|
+
[Tooltip("")]
|
|
17
|
+
[SerializeField] protected BoolWithEvent cameraEnabled = null;
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
/// <summary>
|
|
21
|
+
///
|
|
22
|
+
/// </summary>
|
|
23
|
+
protected UnityEngine.Camera renderCamera;
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
protected virtual void Awake()
|
|
27
|
+
{
|
|
28
|
+
renderCamera = GetComponent<UnityEngine.Camera>();
|
|
29
|
+
|
|
30
|
+
cameraEnabled.SetValue(false);
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
protected virtual void Update()
|
|
35
|
+
{
|
|
36
|
+
if (renderCamera != null)
|
|
37
|
+
renderCamera.Render();
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
//Author: Benjamin "Sweden" Jillson : Discord: sweden_gaming For Project Eden's Garden
|
|
2
|
+
using DREditor.Dialogues;
|
|
3
|
+
using DREditor.Minigames.Debates;
|
|
4
|
+
using UnityEngine;
|
|
5
|
+
|
|
6
|
+
namespace DREditor.Minigames.NSD.Managers
|
|
7
|
+
{
|
|
8
|
+
/// <summary>
|
|
9
|
+
///
|
|
10
|
+
/// </summary>
|
|
11
|
+
[System.Serializable]
|
|
12
|
+
[CreateAssetMenu(menuName = "DREditor/Minigames/NSD", fileName = "NSD Builder")]
|
|
13
|
+
public class NSDBuilder : DebateBuilder<Panel>
|
|
14
|
+
{
|
|
15
|
+
/// <summary>
|
|
16
|
+
///
|
|
17
|
+
/// </summary>
|
|
18
|
+
[SerializeField] protected DialogueCore endDialogue;
|
|
19
|
+
|
|
20
|
+
/// <summary>
|
|
21
|
+
///
|
|
22
|
+
/// </summary>
|
|
23
|
+
public DialogueCore EndDialogue { get => endDialogue; set => endDialogue = value; }
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
/// <inheritdoc/>
|
|
27
|
+
public override void Convert()
|
|
28
|
+
{
|
|
29
|
+
foreach (var panel in Lines)
|
|
30
|
+
foreach (var phrase in panel.Phrases)
|
|
31
|
+
phrase.Convert();
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
/// <inheritdoc/>
|
|
35
|
+
public override bool Scan(out string log)
|
|
36
|
+
{
|
|
37
|
+
log = "";
|
|
38
|
+
|
|
39
|
+
bool lineIssue = false;
|
|
40
|
+
|
|
41
|
+
if (EndDialogue == null)
|
|
42
|
+
log += $"\n- Does not have End Dialogue!";
|
|
43
|
+
|
|
44
|
+
foreach (var panel in Lines)
|
|
45
|
+
if (panel is IDebateScanner scannable && scannable.Scan(out string lineResult))
|
|
46
|
+
{
|
|
47
|
+
log += $"\n- Issue on Panel index: {Lines.IndexOf(panel)} {lineResult}";
|
|
48
|
+
|
|
49
|
+
lineIssue = true;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
log = log != "" ? name + " contains issues: " + log : log;
|
|
53
|
+
|
|
54
|
+
return EndDialogue == null || lineIssue;
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
}
|