跑通对话全流程

This commit is contained in:
SepComet 2026-04-24 21:41:48 +08:00
parent d557153e28
commit 5ae7ca8d56
10 changed files with 22299 additions and 22431 deletions

File diff suppressed because one or more lines are too long

View File

@ -8,7 +8,7 @@ namespace CustomComponent
[SerializeField] private StoryTriggerType _triggerType = StoryTriggerType.DialogCompleted;
[SerializeField] [Tooltip("DialogCompleted 时为对话 Id<=0 表示该触发类型下的任意 Id。")]
[SerializeField] [Tooltip("触发来源 Id<=0 表示该触发类型下的任意 Id。")]
private int _triggerId = 0;
public bool IsEnabled => _enabled;
@ -28,7 +28,7 @@ namespace CustomComponent
return false;
}
if (triggerType == StoryTriggerType.DialogCompleted && _triggerId > 0 && _triggerId != triggerId)
if (_triggerId > 0 && _triggerId != triggerId)
{
return false;
}

View File

@ -29,6 +29,7 @@ namespace CustomComponent
private int _nextBackgroundRequestId = 1;
private int _lastBackgroundRequestId;
private int _completedBackgroundRequestId;
private int _lastStartedCombineTriggerId;
private struct PendingDirectiveInvocation
{
@ -66,6 +67,7 @@ namespace CustomComponent
_consumedDirectiveTokens.Clear();
_queuedDirectiveTokens.Clear();
_pendingDirectives.Clear();
_lastStartedCombineTriggerId = 0;
}
private void OnDialogCompleted(object sender, GameFramework.Event.GameEventArgs e)
@ -85,7 +87,7 @@ namespace CustomComponent
return;
}
ExecuteDirectives(StoryTriggerType.CombineCompleted, 0);
ExecuteDirectives(StoryTriggerType.CombineCompleted, _lastStartedCombineTriggerId);
}
private void ExecuteDirectives(StoryTriggerType triggerType, int triggerId)
@ -136,6 +138,11 @@ namespace CustomComponent
private void ExecuteDirective(StoryDirectiveAsset directive, StoryTriggerType triggerType, int triggerId)
{
if (directive is StoryStartCombineDirectiveAsset)
{
_lastStartedCombineTriggerId = triggerId;
}
directive.Execute(this);
if (_verboseLog)

View File

@ -1,18 +0,0 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 8e4367863f5042e1b5b0b3b3b7f62f5e, type: 3}
m_Name: Dialog2005
m_EditorClassIdentifier:
_enabled: 1
_triggerType: 0
_triggerId: 2005
_dialogId: 2006

View File

@ -1,8 +0,0 @@
fileFormatVersion: 2
guid: 7ebcab6e00f2ca9409a747113df30146
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@ -10,9 +10,9 @@ MonoBehaviour:
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 2b63fb6eb96e4d3193dd26b443f856c7, type: 3}
m_Name: EndChapter2006
m_Name: EndChapter2005
m_EditorClassIdentifier:
_enabled: 1
_triggerType: 0
_triggerId: 2006
_triggerId: 2005
_chapterId: 2

View File

@ -124,11 +124,6 @@ PrefabInstance:
serializedVersion: 3
m_TransformParent: {fileID: 2026090443063703514}
m_Modifications:
- target: {fileID: 1086378678709717912, guid: fc72328ea6dd8be46b8aabc4a544ebc7,
type: 3}
propertyPath: m_fontSize
value: 80
objectReference: {fileID: 0}
- target: {fileID: 1870788115703014735, guid: fc72328ea6dd8be46b8aabc4a544ebc7,
type: 3}
propertyPath: m_Pivot.x
@ -234,36 +229,6 @@ PrefabInstance:
propertyPath: m_Name
value: ContinueButton
objectReference: {fileID: 0}
- target: {fileID: 5077083129131044580, guid: fc72328ea6dd8be46b8aabc4a544ebc7,
type: 3}
propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target
value:
objectReference: {fileID: 3396625462278848033}
- target: {fileID: 5077083129131044580, guid: fc72328ea6dd8be46b8aabc4a544ebc7,
type: 3}
propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target
value:
objectReference: {fileID: 3396625462278848033}
- target: {fileID: 5077083129131044580, guid: fc72328ea6dd8be46b8aabc4a544ebc7,
type: 3}
propertyPath: m_OnHover.m_PersistentCalls.m_Calls.Array.data[0].m_Target
value:
objectReference: {fileID: 3396625462278848033}
- target: {fileID: 5422539186391686747, guid: fc72328ea6dd8be46b8aabc4a544ebc7,
type: 3}
propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.size
value: 2
objectReference: {fileID: 0}
- target: {fileID: 5422539186391686747, guid: fc72328ea6dd8be46b8aabc4a544ebc7,
type: 3}
propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Mode
value: 3
objectReference: {fileID: 0}
- target: {fileID: 5422539186391686747, guid: fc72328ea6dd8be46b8aabc4a544ebc7,
type: 3}
propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Mode
value: 1
objectReference: {fileID: 0}
- target: {fileID: 5422539186391686747, guid: fc72328ea6dd8be46b8aabc4a544ebc7,
type: 3}
propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target
@ -274,51 +239,6 @@ PrefabInstance:
propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target
value:
objectReference: {fileID: 3396625462278848033}
- target: {fileID: 5422539186391686747, guid: fc72328ea6dd8be46b8aabc4a544ebc7,
type: 3}
propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_CallState
value: 2
objectReference: {fileID: 0}
- target: {fileID: 5422539186391686747, guid: fc72328ea6dd8be46b8aabc4a544ebc7,
type: 3}
propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_CallState
value: 2
objectReference: {fileID: 0}
- target: {fileID: 5422539186391686747, guid: fc72328ea6dd8be46b8aabc4a544ebc7,
type: 3}
propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName
value: PlayUISound
objectReference: {fileID: 0}
- target: {fileID: 5422539186391686747, guid: fc72328ea6dd8be46b8aabc4a544ebc7,
type: 3}
propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName
value: OnContinueButtonClick
objectReference: {fileID: 0}
- target: {fileID: 5422539186391686747, guid: fc72328ea6dd8be46b8aabc4a544ebc7,
type: 3}
propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName
value: UI.UGuiForm, Assembly-CSharp
objectReference: {fileID: 0}
- target: {fileID: 5422539186391686747, guid: fc72328ea6dd8be46b8aabc4a544ebc7,
type: 3}
propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName
value: UI.MenuForm, Assembly-CSharp
objectReference: {fileID: 0}
- target: {fileID: 5422539186391686747, guid: fc72328ea6dd8be46b8aabc4a544ebc7,
type: 3}
propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Arguments.m_IntArgument
value: 10001
objectReference: {fileID: 0}
- target: {fileID: 5422539186391686747, guid: fc72328ea6dd8be46b8aabc4a544ebc7,
type: 3}
propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Arguments.m_ObjectArgumentAssemblyTypeName
value: UnityEngine.Object, UnityEngine
objectReference: {fileID: 0}
- target: {fileID: 5422539186391686747, guid: fc72328ea6dd8be46b8aabc4a544ebc7,
type: 3}
propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Arguments.m_ObjectArgumentAssemblyTypeName
value: UnityEngine.Object, UnityEngine
objectReference: {fileID: 0}
m_RemovedComponents: []
m_RemovedGameObjects: []
m_AddedGameObjects: []

View File

@ -65,7 +65,7 @@ MonoBehaviour:
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_Sprite: {fileID: -423439662, guid: 77968dfed7b61334db617d490bb05477, type: 3}
m_Sprite: {fileID: -423439662, guid: 0d041269ac2f63d47bc5f189d90dc73d, type: 3}
m_Type: 3
m_PreserveAspect: 0
m_FillCenter: 1
@ -142,9 +142,8 @@ MonoBehaviour:
m_Calls: []
m_text: "\u7EE7\u7EED\u6E38\u620F"
m_isRightToLeft: 0
m_fontAsset: {fileID: 11400000, guid: f04cfd53e22bdc14b808906f4d98571b, type: 2}
m_sharedMaterial: {fileID: -1730358588487011198, guid: f04cfd53e22bdc14b808906f4d98571b,
type: 2}
m_fontAsset: {fileID: 11400000, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2}
m_sharedMaterial: {fileID: 2180264, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2}
m_fontSharedMaterials: []
m_fontMaterial: {fileID: 0}
m_fontMaterials: []
@ -301,7 +300,31 @@ MonoBehaviour:
m_TargetGraphic: {fileID: 0}
m_OnClick:
m_PersistentCalls:
m_Calls: []
m_Calls:
- m_Target: {fileID: 0}
m_TargetAssemblyTypeName: UI.UGuiForm, Assembly-CSharp
m_MethodName: PlayUISound
m_Mode: 3
m_Arguments:
m_ObjectArgument: {fileID: 0}
m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine
m_IntArgument: 10001
m_FloatArgument: 0
m_StringArgument:
m_BoolArgument: 0
m_CallState: 2
- m_Target: {fileID: 0}
m_TargetAssemblyTypeName: UI.MenuForm, Assembly-CSharp
m_MethodName: OnContinueButtonClick
m_Mode: 1
m_Arguments:
m_ObjectArgument: {fileID: 0}
m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine
m_IntArgument: 0
m_FloatArgument: 0
m_StringArgument:
m_BoolArgument: 0
m_CallState: 2
--- !u!95 &1744157174228515059
Animator:
serializedVersion: 5

View File

@ -816,6 +816,13 @@ MonoBehaviour:
- _speakerId: NeiShi
_portraits:
- {fileID: 21300000, guid: 8f324dd11c30d7b46878d895c7fc3881, type: 3}
_chapterTitleDimFadeInDuration: 0.2
_chapterTitlePreBlackDuration: 0.25
_chapterTitleTitleFadeInDelay: 0
_chapterTitleFadeInDuration: 0.3
_chapterTitleHoldDuration: 1.2
_chapterTitleFadeOutDuration: 0.3
_chapterTitleDimFadeOutDuration: 0.2
--- !u!1 &513208572
GameObject:
m_ObjectHideFlags: 0
@ -1435,6 +1442,7 @@ MonoBehaviour:
- {fileID: 11400000, guid: 993a30dececf3c849b753dec84f5a6f0, type: 2}
- {fileID: 11400000, guid: 752da669fb380ba48a43fa85c5928d30, type: 2}
- {fileID: 11400000, guid: dceb29efc859912488c6a669e02a3119, type: 2}
- {fileID: 11400000, guid: a1399a928de585b4db36dd6971370db1, type: 2}
- {fileID: 11400000, guid: 7ebcab6e00f2ca9409a747113df30146, type: 2}
- {fileID: 11400000, guid: b212fd0c183de84469231d272cb97369, type: 2}
- {fileID: 11400000, guid: a57f0cef82d7b0c4891685fa9bf91caa, type: 2}
@ -1444,8 +1452,9 @@ MonoBehaviour:
- {fileID: 11400000, guid: 44f4727efe7606f4eb271f10461657ef, type: 2}
- {fileID: 11400000, guid: 9c1f6f86d307c934bb1b6156ecc22ce4, type: 2}
- {fileID: 11400000, guid: 864c5f9e92613564c8dbd1864266461a, type: 2}
- {fileID: 11400000, guid: 6fb570be0c658844681401443b633d1f, type: 2}
- {fileID: 11400000, guid: 778a252e3434f3b4e868a99cd8313ac5, type: 2}
_allowRepeatTrigger: 0
_allowRepeatTrigger: 1
_verboseLog: 1
_backgroundAssetNamePrefix: UISprites/Background/
--- !u!1660057539 &9223372036854775807