diff --git a/Assets/Resources/Mission/Archibald/ENG/ArchibaldQuestDialENG.asset b/Assets/Resources/Mission/Archibald/ENG/ArchibaldQuestDialENG.asset index bc434725..c63acdab 100644 --- a/Assets/Resources/Mission/Archibald/ENG/ArchibaldQuestDialENG.asset +++ b/Assets/Resources/Mission/Archibald/ENG/ArchibaldQuestDialENG.asset @@ -12,11 +12,11 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 67587597537a4344cad65ddbcebee119, type: 3} m_Name: ArchibaldQuestDialENG m_EditorClassIdentifier: - SpeakerName: - CurrentStep: 0 + SpeakerName: Archibald + CurrentStep: 4 DialogueSteps: - - Header: - WasDisplayed: 0 + - Header: Archibald + WasDisplayed: 1 ListOfSentences: - Sentence: Hey there, could you help me? Buttons: @@ -40,6 +40,23 @@ MonoBehaviour: - Sentence: Up this road there are monsters. They attack me everytime I try to get through the forest. Kill four of them and I will reward you. Buttons: + - ButtonName: Do it yourself, coward. + Type: 1 + ButtonActions: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 11400000} + m_TargetAssemblyTypeName: MissionDialogue, Assembly-CSharp + m_MethodName: RejectMission + 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 - ButtonName: Consider it done. Type: 1 ButtonActions: @@ -69,23 +86,6 @@ MonoBehaviour: m_StringArgument: m_BoolArgument: 0 m_CallState: 2 - - ButtonName: Do it yourself, coward. - Type: 1 - ButtonActions: - m_PersistentCalls: - m_Calls: - - m_Target: {fileID: 11400000} - m_TargetAssemblyTypeName: MissionDialogue, Assembly-CSharp - m_MethodName: RejectMission - 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 EndOfDialogueStepAction: m_PersistentCalls: m_Calls: @@ -101,36 +101,19 @@ MonoBehaviour: m_StringArgument: m_BoolArgument: 0 m_CallState: 2 - - Header: - WasDisplayed: 0 + - Header: Archibald + WasDisplayed: 1 ListOfSentences: - Sentence: Thank you Mercenary! Buttons: [] EndOfDialogueStepAction: m_PersistentCalls: m_Calls: [] - - Header: - WasDisplayed: 0 + - Header: Archibald + WasDisplayed: 1 ListOfSentences: - Sentence: Have you killed them? Buttons: - - ButtonName: Yes, I did. - Type: 1 - ButtonActions: - m_PersistentCalls: - m_Calls: - - m_Target: {fileID: 11400000} - m_TargetAssemblyTypeName: MissionDialogue, Assembly-CSharp - m_MethodName: HandleCondition - 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 - ButtonName: Not yet. Type: 1 ButtonActions: @@ -148,18 +131,35 @@ MonoBehaviour: m_StringArgument: m_BoolArgument: 0 m_CallState: 2 + - ButtonName: Yes, I did. + Type: 1 + ButtonActions: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 11400000} + m_TargetAssemblyTypeName: MissionDialogue, Assembly-CSharp + m_MethodName: HandleCondition + 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 EndOfDialogueStepAction: m_PersistentCalls: m_Calls: [] - - Header: - WasDisplayed: 0 + - Header: Archibald + WasDisplayed: 1 ListOfSentences: - Sentence: You're a good man. Buttons: [] - Sentence: Here is your reward. Buttons: - ButtonName: - Type: 0 + Type: 1 ButtonActions: m_PersistentCalls: m_Calls: diff --git a/Assets/Resources/Mission/Archibald/PL/ArchibaldQuestDialPL.asset b/Assets/Resources/Mission/Archibald/PL/ArchibaldQuestDialPL.asset index 6afae1c6..e66466b7 100644 --- a/Assets/Resources/Mission/Archibald/PL/ArchibaldQuestDialPL.asset +++ b/Assets/Resources/Mission/Archibald/PL/ArchibaldQuestDialPL.asset @@ -12,11 +12,11 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 67587597537a4344cad65ddbcebee119, type: 3} m_Name: ArchibaldQuestDialPL m_EditorClassIdentifier: - SpeakerName: - CurrentStep: 0 + SpeakerName: Archibald + CurrentStep: 1 DialogueSteps: - - Header: - WasDisplayed: 0 + - Header: Archibald + WasDisplayed: 1 ListOfSentences: - Sentence: Witaj, czy moglbys mi pomoc? Buttons: @@ -40,6 +40,23 @@ MonoBehaviour: - Sentence: Na koncu tej drogi sa potwory. Atakuja mnie, kiedy probuje przejsc przez las. Zabij cztery z nich, a cie nagrodze. Buttons: + - ButtonName: Radz sobie sam. + Type: 1 + ButtonActions: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 11400000} + m_TargetAssemblyTypeName: MissionDialogue, Assembly-CSharp + m_MethodName: RejectMission + 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 - ButtonName: Zalatwione. Type: 1 ButtonActions: @@ -69,23 +86,6 @@ MonoBehaviour: m_StringArgument: m_BoolArgument: 0 m_CallState: 2 - - ButtonName: Radz sobie sam. - Type: 1 - ButtonActions: - m_PersistentCalls: - m_Calls: - - m_Target: {fileID: 11400000} - m_TargetAssemblyTypeName: MissionDialogue, Assembly-CSharp - m_MethodName: RejectMission - 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 EndOfDialogueStepAction: m_PersistentCalls: m_Calls: @@ -101,7 +101,7 @@ MonoBehaviour: m_StringArgument: m_BoolArgument: 0 m_CallState: 2 - - Header: + - Header: Archibald WasDisplayed: 0 ListOfSentences: - Sentence: Dziekuje najemniku! @@ -109,7 +109,7 @@ MonoBehaviour: EndOfDialogueStepAction: m_PersistentCalls: m_Calls: [] - - Header: + - Header: Archibald WasDisplayed: 0 ListOfSentences: - Sentence: Zabiles je? @@ -151,7 +151,7 @@ MonoBehaviour: EndOfDialogueStepAction: m_PersistentCalls: m_Calls: [] - - Header: + - Header: Archibald WasDisplayed: 0 ListOfSentences: - Sentence: Jestes dobrym czlowiekiem @@ -159,7 +159,7 @@ MonoBehaviour: - Sentence: Oto twoja nagroda Buttons: - ButtonName: - Type: 0 + Type: 1 ButtonActions: m_PersistentCalls: m_Calls: diff --git a/Assets/Resources/Mission/Archibald/PL/ArchibaldQuestPL.asset b/Assets/Resources/Mission/Archibald/PL/ArchibaldQuestPL.asset index 5302008e..e884b057 100644 --- a/Assets/Resources/Mission/Archibald/PL/ArchibaldQuestPL.asset +++ b/Assets/Resources/Mission/Archibald/PL/ArchibaldQuestPL.asset @@ -18,14 +18,14 @@ MonoBehaviour: title: Kill four monsters description: Zabij potwory strzegace lasu difficulty: 0 - SpeakerName: - Status: 1 + SpeakerName: Archibald + Status: 3 CurrentStep: 0 MissionStepsList: - - SpeakerName: + - SpeakerName: Archibald Status: 2 MissionIssue: - DialogueStep: {fileID: 11400000, guid: 2fd131f89cb088543b1ff75b8a5ea828, type: 2} + DialogueStep: {fileID: 11400000, guid: 7574389e1d42bc84c88d32488588d940, type: 2} MissionConditions: Key: 0 Value: diff --git a/Assets/Resources/NPC/WizardHouse/Wizard.prefab b/Assets/Resources/NPC/WizardHouse/Wizard.prefab index 6c71295b..d2816cb2 100644 --- a/Assets/Resources/NPC/WizardHouse/Wizard.prefab +++ b/Assets/Resources/NPC/WizardHouse/Wizard.prefab @@ -202,7 +202,12 @@ MonoBehaviour: keyToOpen: 101 CanBeOpened: 1 OpenInDefaultWay: 1 - MissionTemplate: {fileID: 11400000, guid: 41b9ce58379acd64e9a7491e94671e6f, type: 2} + missionLanguageDetector: + InstanceTemplates: + - Key: 0 + Value: {fileID: 11400000, guid: 578891406eb5573499c8e34b30989be6, type: 2} + - Key: 1 + Value: {fileID: 11400000, guid: 41b9ce58379acd64e9a7491e94671e6f, type: 2} Mission: {fileID: 0} OpenMissionInDefaultWay: 1 FreeDialogue: diff --git a/Assets/Scenes/FirstVillage.unity b/Assets/Scenes/FirstVillage.unity index f0af737b..23d86b3f 100644 --- a/Assets/Scenes/FirstVillage.unity +++ b/Assets/Scenes/FirstVillage.unity @@ -611912,7 +611912,12 @@ MonoBehaviour: keyToOpen: 101 CanBeOpened: 0 OpenInDefaultWay: 0 - MissionTemplate: {fileID: 11400000, guid: eb3bbf628b0534844b19c488ea4b9843, type: 2} + missionLanguageDetector: + InstanceTemplates: + - Key: 1 + Value: {fileID: 11400000, guid: eb3bbf628b0534844b19c488ea4b9843, type: 2} + - Key: 0 + Value: {fileID: 11400000, guid: a0c5953fbf02eaf47bcaa72f846a917b, type: 2} Mission: {fileID: 11400000, guid: eb3bbf628b0534844b19c488ea4b9843, type: 2} OpenMissionInDefaultWay: 0 FreeDialogue: diff --git a/Assets/Scenes/Pathway.unity b/Assets/Scenes/Pathway.unity index 7805eb8e..5c439d5c 100644 --- a/Assets/Scenes/Pathway.unity +++ b/Assets/Scenes/Pathway.unity @@ -59636,6 +59636,133 @@ Transform: m_CorrespondingSourceObject: {fileID: 6772741684851832271, guid: d7f7c3cfda2b1f84da080a72252626bc, type: 3} m_PrefabInstance: {fileID: 386057677} m_PrefabAsset: {fileID: 0} +--- !u!1 &389817837 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 389817839} + - component: {fileID: 389817838} + m_Layer: 0 + m_Name: AmbienceOutsideWizardHouse + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!82 &389817838 +AudioSource: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 389817837} + m_Enabled: 1 + serializedVersion: 4 + OutputAudioMixerGroup: {fileID: 0} + m_audioClip: {fileID: 8300000, guid: 254736acf6353194482609db57480719, type: 3} + m_PlayOnAwake: 1 + m_Volume: 0.4 + m_Pitch: 1 + Loop: 1 + Mute: 0 + Spatialize: 0 + SpatializePostEffects: 0 + Priority: 128 + DopplerLevel: 1 + MinDistance: 1 + MaxDistance: 500 + Pan2D: 0 + rolloffMode: 0 + BypassEffects: 0 + BypassListenerEffects: 0 + BypassReverbZones: 0 + rolloffCustomCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + panLevelCustomCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + spreadCustomCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + reverbZoneMixCustomCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 +--- !u!4 &389817839 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 389817837} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 37.864067, y: -5.0793505, z: -14.286615} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 18 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &390735778 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8988639829210330897, guid: 3445ae9e3f2916e49a0b3c12a6345032, type: 3} diff --git a/Assets/Scenes/WizardHouse.unity b/Assets/Scenes/WizardHouse.unity index 3ab48228..b251e253 100644 --- a/Assets/Scenes/WizardHouse.unity +++ b/Assets/Scenes/WizardHouse.unity @@ -45286,5 +45286,21 @@ PrefabInstance: propertyPath: m_TagString value: NPC objectReference: {fileID: 0} + - target: {fileID: 8779487345608277763, guid: 417d111e604a8124cb960805d809e513, type: 3} + propertyPath: missionLanguageDetector.InstanceTemplates.Array.size + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 8779487345608277763, guid: 417d111e604a8124cb960805d809e513, type: 3} + propertyPath: missionLanguageDetector.InstanceTemplates.Array.data[1].Key + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 8779487345608277763, guid: 417d111e604a8124cb960805d809e513, type: 3} + propertyPath: missionLanguageDetector.InstanceTemplates.Array.data[0].Value + value: + objectReference: {fileID: 11400000, guid: 578891406eb5573499c8e34b30989be6, type: 2} + - target: {fileID: 8779487345608277763, guid: 417d111e604a8124cb960805d809e513, type: 3} + propertyPath: missionLanguageDetector.InstanceTemplates.Array.data[1].Value + value: + objectReference: {fileID: 11400000, guid: 41b9ce58379acd64e9a7491e94671e6f, type: 2} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 417d111e604a8124cb960805d809e513, type: 3} diff --git a/Assets/Scripts/REFACTORING/Application/Mission/NpcMissionManager.cs b/Assets/Scripts/REFACTORING/Application/Mission/NpcMissionManager.cs index 54b7e426..99cf0186 100644 --- a/Assets/Scripts/REFACTORING/Application/Mission/NpcMissionManager.cs +++ b/Assets/Scripts/REFACTORING/Application/Mission/NpcMissionManager.cs @@ -8,9 +8,9 @@ using UnityEngine; //[CreateAssetMenu(fileName = "New Mission", menuName = "Mission/New Mission")] public class NpcMissionManager : DialogueManager // ScriptableObject -{ +{ [SerializeField] - public Mission MissionTemplate; + public LanguageDetector missionLanguageDetector; /* We user object CLONED TO PREVENT overwritting changes in main object inassets */ [SerializeField] @@ -135,7 +135,7 @@ public class NpcMissionManager : DialogueManager // ScriptableObject public override void CreateInstanceBasedOnLanguage() { // DONT CLONE TO HAVE CONSTANT DATA - init - deep copy - to prevent overwritting chil;dern :D - Mission = MissionTemplate; + Mission = missionLanguageDetector.DetectInstanceBasedOnLanguage(); Mission.ResetMission(); /* var cloneDialogues = new List>(Dialogue.Dialogues);