├── .gitattributes ├── .gitignore ├── Assets ├── Animations.meta ├── Animations │ ├── Animators.meta │ ├── Animators │ │ ├── Characters.meta │ │ └── Characters │ │ │ ├── MainCharacter.controller │ │ │ └── MainCharacter.controller.meta │ ├── CharacterAnimations.meta │ └── CharacterAnimations │ │ ├── 8DPlayer_0.controller │ │ ├── 8DPlayer_0.controller.meta │ │ ├── 8DWalkDown.anim │ │ ├── 8DWalkDown.anim.meta │ │ ├── 8DWalkDownLeft.anim │ │ ├── 8DWalkDownLeft.anim.meta │ │ ├── 8DWalkDownRight.anim │ │ ├── 8DWalkDownRight.anim.meta │ │ ├── 8DWalkLeft.anim │ │ ├── 8DWalkLeft.anim.meta │ │ ├── 8DWalkRight.anim │ │ ├── 8DWalkRight.anim.meta │ │ ├── 8DWalkUp.anim │ │ ├── 8DWalkUp.anim.meta │ │ ├── 8DWalkUpLeft.anim │ │ ├── 8DWalkUpLeft.anim.meta │ │ ├── 8DWalkUpRight.anim │ │ └── 8DWalkUpRight.anim.meta ├── Node_Editor.meta ├── Node_Editor │ ├── DialogueAssets.meta │ ├── DialogueAssets │ │ ├── DialogueTest.unity │ │ ├── DialogueTest.unity.meta │ │ ├── Scripts.meta │ │ └── Scripts │ │ │ ├── DialogueChoiceNode.cs │ │ │ ├── DialogueChoiceNode.cs.meta │ │ │ ├── DialogueNode.cs │ │ │ ├── DialogueNode.cs.meta │ │ │ ├── DialogueNodeCanvas.cs │ │ │ ├── DialogueNodeCanvas.cs.meta │ │ │ ├── NodeEditorDialogue.cs │ │ │ └── NodeEditorDialogue.cs.meta │ ├── Framework.meta │ ├── Framework │ │ ├── Node.cs │ │ ├── Node.cs.meta │ │ ├── NodeInput.cs │ │ ├── NodeInput.cs.meta │ │ ├── NodeOutput.cs │ │ ├── NodeOutput.cs.meta │ │ ├── Node_Canvas_Object.cs │ │ ├── Node_Canvas_Object.cs.meta │ │ ├── Node_Editor.cs │ │ └── Node_Editor.cs.meta │ ├── HowToUseDialogueEditor.pdf │ ├── HowToUseDialogueEditor.pdf.meta │ ├── HowToUseQuestEditor.pdf │ ├── HowToUseQuestEditor.pdf.meta │ ├── Quest.meta │ ├── Quest │ │ ├── IQuestNode.cs │ │ ├── IQuestNode.cs.meta │ │ ├── NodeEditorQuest.cs │ │ ├── NodeEditorQuest.cs.meta │ │ ├── ObjectivePath.cs │ │ ├── ObjectivePath.cs.meta │ │ ├── QuestChoiceNode.cs │ │ ├── QuestChoiceNode.cs.meta │ │ ├── QuestDialogueNode.cs │ │ ├── QuestDialogueNode.cs.meta │ │ ├── QuestNodeCanvas.cs │ │ ├── QuestNodeCanvas.cs.meta │ │ ├── SubObjective.cs │ │ └── SubObjective.cs.meta │ ├── background.png │ └── background.png.meta ├── Resources.meta ├── Resources │ ├── Dialogue.meta │ ├── Dialogue │ │ ├── BraidMMPlayer.asset │ │ ├── BraidMMPlayer.asset.meta │ │ ├── BraidPlayer.asset │ │ └── BraidPlayer.asset.meta │ ├── GameState.meta │ ├── GameState │ │ ├── GameStateData.asset │ │ ├── GameStateData.asset.meta │ │ ├── States.meta │ │ └── States │ │ │ ├── BOSS1_DEFEATED.asset │ │ │ ├── BOSS1_DEFEATED.asset.meta │ │ │ ├── PLAYER_WALKED_100_MILES.asset │ │ │ ├── PLAYER_WALKED_100_MILES.asset.meta │ │ │ ├── VOLCANO_ERUPTED.asset │ │ │ └── VOLCANO_ERUPTED.asset.meta │ ├── Prefabs.meta │ ├── Prefabs │ │ ├── Cameras.meta │ │ ├── Cameras │ │ │ ├── NewCamera.prefab │ │ │ └── NewCamera.prefab.meta │ │ ├── Characters.meta │ │ ├── Characters │ │ │ ├── NPCBraid.prefab │ │ │ ├── NPCBraid.prefab.meta │ │ │ ├── NPCLink.prefab │ │ │ ├── NPCLink.prefab.meta │ │ │ ├── NPCMegaMan.prefab │ │ │ ├── NPCMegaMan.prefab.meta │ │ │ ├── NPCTracer.prefab │ │ │ ├── NPCTracer.prefab.meta │ │ │ ├── Player.prefab │ │ │ ├── Player.prefab.meta │ │ │ ├── ShadyIndividual.prefab │ │ │ └── ShadyIndividual.prefab.meta │ │ ├── Dialogue.meta │ │ ├── Dialogue │ │ │ ├── ConversationHandler.prefab │ │ │ ├── ConversationHandler.prefab.meta │ │ │ ├── DialogueBox.prefab │ │ │ ├── DialogueBox.prefab.meta │ │ │ ├── DialogueCanvas.prefab │ │ │ ├── DialogueCanvas.prefab.meta │ │ │ ├── DialogueText.prefab │ │ │ └── DialogueText.prefab.meta │ │ ├── Enemies.meta │ │ ├── Enemies │ │ │ ├── Bob.prefab │ │ │ ├── Bob.prefab.meta │ │ │ ├── FlameLizard.prefab │ │ │ ├── FlameLizard.prefab.meta │ │ │ ├── RockGoblin.prefab │ │ │ └── RockGoblin.prefab.meta │ │ ├── Globals.meta │ │ ├── Globals │ │ │ ├── GameState.prefab │ │ │ └── GameState.prefab.meta │ │ ├── HUD.meta │ │ ├── HUD │ │ │ ├── InteractionIcon.prefab │ │ │ └── InteractionIcon.prefab.meta │ │ ├── Loaders.meta │ │ ├── Loaders │ │ │ ├── DialogueLoader.prefab │ │ │ ├── DialogueLoader.prefab.meta │ │ │ ├── QuestLoader.prefab │ │ │ └── QuestLoader.prefab.meta │ │ ├── LocationBlockers.meta │ │ ├── LocationBlockers │ │ │ ├── LocationBlockerTest.prefab │ │ │ └── LocationBlockerTest.prefab.meta │ │ ├── Locations.meta │ │ └── Locations │ │ │ ├── BridgeTooFarLocation.prefab │ │ │ ├── BridgeTooFarLocation.prefab.meta │ │ │ ├── FlameLizardLocation.prefab │ │ │ ├── FlameLizardLocation.prefab.meta │ │ │ ├── TestQuestLocation.prefab │ │ │ └── TestQuestLocation.prefab.meta │ ├── QuestCanvas.meta │ ├── QuestCanvas │ │ ├── ABridgeTooFar.asset │ │ ├── ABridgeTooFar.asset.meta │ │ ├── FlameLizards.asset │ │ ├── FlameLizards.asset.meta │ │ ├── RockGoblins.asset │ │ └── RockGoblins.asset.meta │ ├── Quests.meta │ ├── Quests │ │ ├── A Bridge Too Far....asset │ │ ├── A Bridge Too Far....asset.meta │ │ ├── Flame Lizards.asset │ │ ├── Flame Lizards.asset.meta │ │ ├── Kill Rock Goblins.asset │ │ └── Kill Rock Goblins.asset.meta │ ├── Sprites.meta │ └── Sprites │ │ ├── Dialogue.meta │ │ ├── Dialogue │ │ ├── ExclamationDialogueBody.png │ │ ├── ExclamationDialogueBody.png.meta │ │ ├── ExclamationDialogueTail.png │ │ ├── ExclamationDialogueTail.png.meta │ │ ├── InnerMonologueBody.png │ │ ├── InnerMonologueBody.png.meta │ │ ├── InnerMonologueTail.png │ │ ├── InnerMonologueTail.png.meta │ │ ├── LoopyDialogueBody.png │ │ ├── LoopyDialogueBody.png.meta │ │ ├── LoopyDialogueTail.png │ │ ├── LoopyDialogueTail.png.meta │ │ ├── NormalDialogueBody.png │ │ ├── NormalDialogueBody.png.meta │ │ ├── NormalDialogueTail.png │ │ └── NormalDialogueTail.png.meta │ │ ├── EditorUI.meta │ │ └── EditorUI │ │ ├── DeleteButton.png │ │ ├── DeleteButton.png.meta │ │ ├── DownArrow.png │ │ ├── DownArrow.png.meta │ │ ├── UpArrow.png │ │ └── UpArrow.png.meta ├── Scenes.meta ├── Scenes │ ├── SampleScene.unity │ └── SampleScene.unity.meta ├── Scripts.meta ├── Scripts │ ├── Animations.meta │ ├── Animations │ │ ├── AnimationManager.cs │ │ └── AnimationManager.cs.meta │ ├── DataStructures.meta │ ├── DataStructures │ │ ├── Tuple.cs │ │ ├── Tuple.cs.meta │ │ ├── Tuple2.cs │ │ ├── Tuple2.cs.meta │ │ ├── Tuple3.cs │ │ ├── Tuple3.cs.meta │ │ ├── Tuple4.cs │ │ └── Tuple4.cs.meta │ ├── DesignPatterns.meta │ ├── DesignPatterns │ │ ├── Callback.cs │ │ ├── Callback.cs.meta │ │ ├── Messenger.cs │ │ └── Messenger.cs.meta │ ├── Dialogue.meta │ ├── Dialogue │ │ ├── ConversationHandler.cs │ │ ├── ConversationHandler.cs.meta │ │ ├── DialogueBox.cs │ │ ├── DialogueBox.cs.meta │ │ ├── DialogueFSM.cs │ │ ├── DialogueFSM.cs.meta │ │ ├── DialogueLoader.cs │ │ ├── DialogueLoader.cs.meta │ │ ├── DialogueManager.cs │ │ ├── DialogueManager.cs.meta │ │ ├── DialogueState.cs │ │ └── DialogueState.cs.meta │ ├── EditorTools.meta │ ├── EditorTools │ │ ├── GameStateAsset.cs │ │ ├── GameStateAsset.cs.meta │ │ ├── GameStateCheckerEditor.cs │ │ ├── GameStateCheckerEditor.cs.meta │ │ ├── GameStateName.cs │ │ ├── GameStateName.cs.meta │ │ ├── GameStateWindow.cs │ │ └── GameStateWindow.cs.meta │ ├── Enemies.meta │ ├── Enemies │ │ ├── Enemy.cs │ │ ├── Enemy.cs.meta │ │ ├── FlameLizard.cs │ │ ├── FlameLizard.cs.meta │ │ ├── RockGoblin.cs │ │ └── RockGoblin.cs.meta │ ├── GameState.meta │ ├── GameState │ │ ├── GameState.cs │ │ ├── GameState.cs.meta │ │ ├── GameStateChecker.cs │ │ ├── GameStateChecker.cs.meta │ │ ├── LocationBlocker.cs │ │ ├── LocationBlocker.cs.meta │ │ ├── NPCLoader.cs │ │ └── NPCLoader.cs.meta │ ├── HUD.meta │ ├── HUD │ │ ├── DisplayNPCInteraction.cs │ │ └── DisplayNPCInteraction.cs.meta │ ├── Interaction.meta │ ├── Interaction │ │ ├── PlayerToNPCInteraction.cs │ │ └── PlayerToNPCInteraction.cs.meta │ ├── Movement.meta │ ├── Movement │ │ ├── PlayerMove.cs │ │ └── PlayerMove.cs.meta │ ├── Quest.meta │ └── Quest │ │ ├── EnemyObjective.cs │ │ ├── EnemyObjective.cs.meta │ │ ├── LocationObjective.cs │ │ ├── LocationObjective.cs.meta │ │ ├── Quest.cs │ │ ├── Quest.cs.meta │ │ ├── QuestAsset.cs │ │ ├── QuestAsset.cs.meta │ │ ├── QuestGiver.cs │ │ ├── QuestGiver.cs.meta │ │ ├── QuestHandler.cs │ │ ├── QuestHandler.cs.meta │ │ ├── QuestLoader.cs │ │ ├── QuestLoader.cs.meta │ │ ├── QuestLocation.cs │ │ ├── QuestLocation.cs.meta │ │ ├── QuestObjective.cs │ │ └── QuestObjective.cs.meta ├── Sprites.meta ├── Sprites │ ├── Characters.meta │ ├── Characters │ │ ├── 8DPlayer.png │ │ ├── 8DPlayer.png.meta │ │ ├── MegaMan.png │ │ ├── MegaMan.png.meta │ │ ├── NPCBraid.png │ │ ├── NPCBraid.png.meta │ │ ├── NPCLink.png │ │ ├── NPCLink.png.meta │ │ ├── Tracer.png │ │ └── Tracer.png.meta │ ├── HUD.meta │ └── HUD │ │ ├── EKeyIcon.png │ │ ├── EKeyIcon.png.meta │ │ ├── ExclamationDialogue.png │ │ ├── ExclamationDialogue.png.meta │ │ ├── InnerMonologue.png │ │ ├── InnerMonologue.png.meta │ │ ├── LoopyDialogue.png │ │ ├── LoopyDialogue.png.meta │ │ ├── NormalDialogue.png │ │ └── NormalDialogue.png.meta ├── Standard Assets.meta ├── Standard Assets │ ├── 2D.meta │ └── 2D │ │ ├── Scripts.meta │ │ └── Scripts │ │ ├── Camera2DFollow.cs │ │ └── Camera2DFollow.cs.meta ├── TestListener.cs ├── TestListener.cs.meta ├── TextMesh Pro.meta └── TextMesh Pro │ ├── Documentation.meta │ ├── Documentation │ ├── TextMesh Pro User Guide 2016.pdf │ └── TextMesh Pro User Guide 2016.pdf.meta │ ├── Resources.meta │ ├── Resources │ ├── Fonts & Materials.meta │ ├── Fonts & Materials │ │ ├── LiberationSans SDF - Drop Shadow.mat │ │ ├── LiberationSans SDF - Drop Shadow.mat.meta │ │ ├── LiberationSans SDF - Outline.mat │ │ ├── LiberationSans SDF - Outline.mat.meta │ │ ├── LiberationSans SDF.asset │ │ └── LiberationSans SDF.asset.meta │ ├── LineBreaking Following Characters.txt │ ├── LineBreaking Following Characters.txt.meta │ ├── LineBreaking Leading Characters.txt │ ├── LineBreaking Leading Characters.txt.meta │ ├── Shaders.meta │ ├── Shaders │ │ ├── TMP_Bitmap-Custom-Atlas.shader │ │ ├── TMP_Bitmap-Custom-Atlas.shader.meta │ │ ├── TMP_Bitmap-Mobile.shader │ │ ├── TMP_Bitmap-Mobile.shader.meta │ │ ├── TMP_Bitmap.shader │ │ ├── TMP_Bitmap.shader.meta │ │ ├── TMP_SDF Overlay.shader │ │ ├── TMP_SDF Overlay.shader.meta │ │ ├── TMP_SDF-Mobile Masking.shader │ │ ├── TMP_SDF-Mobile Masking.shader.meta │ │ ├── TMP_SDF-Mobile Overlay.shader │ │ ├── TMP_SDF-Mobile Overlay.shader.meta │ │ ├── TMP_SDF-Mobile.shader │ │ ├── TMP_SDF-Mobile.shader.meta │ │ ├── TMP_SDF-Surface-Mobile.shader │ │ ├── TMP_SDF-Surface-Mobile.shader.meta │ │ ├── TMP_SDF-Surface.shader │ │ ├── TMP_SDF-Surface.shader.meta │ │ ├── TMP_SDF.shader │ │ ├── TMP_SDF.shader.meta │ │ ├── TMP_Sprite.shader │ │ ├── TMP_Sprite.shader.meta │ │ ├── TMPro.cginc │ │ ├── TMPro.cginc.meta │ │ ├── TMPro_Properties.cginc │ │ ├── TMPro_Properties.cginc.meta │ │ ├── TMPro_Surface.cginc │ │ └── TMPro_Surface.cginc.meta │ ├── Sprite Assets.meta │ ├── Sprite Assets │ │ ├── EmojiOne.asset │ │ └── EmojiOne.asset.meta │ ├── Style Sheets.meta │ ├── Style Sheets │ │ ├── Default Style Sheet.asset │ │ └── Default Style Sheet.asset.meta │ ├── TMP Settings.asset │ └── TMP Settings.asset.meta │ ├── Sprites.meta │ └── Sprites │ ├── EmojiOne Attribution.txt │ ├── EmojiOne Attribution.txt.meta │ ├── EmojiOne.json │ ├── EmojiOne.json.meta │ ├── EmojiOne.png │ └── EmojiOne.png.meta ├── LICENSE ├── Logs └── Packages-Update.log ├── NodeBasedQuestSystem.unitypackage ├── Packages └── manifest.json ├── ProjectSettings ├── AudioManager.asset ├── ClusterInputManager.asset ├── DynamicsManager.asset ├── EditorBuildSettings.asset ├── EditorSettings.asset ├── GraphicsSettings.asset ├── InputManager.asset ├── NavMeshAreas.asset ├── NetworkManager.asset ├── Physics2DSettings.asset ├── PresetManager.asset ├── ProjectSettings.asset ├── ProjectVersion.txt ├── QualitySettings.asset ├── TagManager.asset ├── TimeManager.asset ├── UnityConnectSettings.asset ├── VFXManager.asset └── XRSettings.asset └── README.md /.gitattributes: -------------------------------------------------------------------------------- 1 | # Auto detect text files and perform LF normalization 2 | * text=auto 3 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | [Ll]ibrary/ 2 | [Tt]emp/ 3 | [Oo]bj/ 4 | [Bb]uild/ 5 | [Bb]uilds/ 6 | Assets/AssetStoreTools* 7 | 8 | # Visual Studio cache directory 9 | .vs/ 10 | 11 | # Autogenerated VS/MD/Consulo solution and project files 12 | ExportedObj/ 13 | .consulo/ 14 | *.csproj 15 | *.unityproj 16 | *.sln 17 | *.suo 18 | *.tmp 19 | *.user 20 | *.userprefs 21 | *.pidb 22 | *.booproj 23 | *.svd 24 | *.pdb 25 | *.opendb 26 | 27 | # Unity3D generated meta files 28 | *.pidb.meta 29 | *.pdb.meta 30 | 31 | # Unity3D Generated File On Crash Reports 32 | sysinfo.txt 33 | 34 | # Builds 35 | *.apk -------------------------------------------------------------------------------- /Assets/Animations.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4202a1555d51cf841915315e3847d94f 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Animations/Animators.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 84809459d4cdbda4ab41dd0236b09532 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Animations/Animators/Characters.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3e0749bdcfe89f346b5bd4f89b2d4591 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Animations/Animators/Characters/MainCharacter.controller.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 210bd64505f02ff49851e3d40eb02aaf 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 9100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Animations/CharacterAnimations.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f161dd0cce6b57c4899b0d6fb12eac77 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Animations/CharacterAnimations/8DPlayer_0.controller.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c720a65c2db9d584fa30b3ec34b58d92 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 9100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Animations/CharacterAnimations/8DWalkDown.anim.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f16fbe5f112e63545a80530d012ff1e8 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 7400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Animations/CharacterAnimations/8DWalkDownLeft.anim.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9ea9a7e6f44363f49bd4d4911125cf24 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 7400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Animations/CharacterAnimations/8DWalkDownRight.anim.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5ceece80d4918c4459373d6b9062ffcb 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 7400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Animations/CharacterAnimations/8DWalkLeft.anim.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2ff1c36a450cf204ea3debc1edc5a630 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 7400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Animations/CharacterAnimations/8DWalkRight.anim.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c1b0e49a1cb348b4b99127bae6e6bb79 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 7400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Animations/CharacterAnimations/8DWalkUp.anim.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 928f325079819e848a40289c9fe91f9c 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 7400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Animations/CharacterAnimations/8DWalkUpLeft.anim.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6fcb6ec935aced548ae210d17e3a7fc8 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 7400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Animations/CharacterAnimations/8DWalkUpRight.anim.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f7d64a1eefe759b40b110e4992632a0a 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 7400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Node_Editor.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8ed503299dca0fc4c843f136cb3d9d75 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Node_Editor/DialogueAssets.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b672d5e903067b144b02213a36feec25 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Node_Editor/DialogueAssets/DialogueTest.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 32f127e1f2cc29140a1134df7b671e19 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/Node_Editor/DialogueAssets/Scripts.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1352d002dc5a53b4d83ad0fc54376fa8 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Node_Editor/DialogueAssets/Scripts/DialogueChoiceNode.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 14ef65d9355aa66409b355b358a94106 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Node_Editor/DialogueAssets/Scripts/DialogueNode.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 673786b41f37d9a4e9c2b08038394bd6 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Node_Editor/DialogueAssets/Scripts/DialogueNodeCanvas.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | 5 | /// 6 | /// Contains data related to the Dialogue System. Inherits Node_Canvas_Object 7 | /// 8 | public class DialogueNodeCanvas : Node_Canvas_Object 9 | { 10 | /// Specifies how many times this conversation can occur in the game. 11 | public int numberOfTimesConversationCanHappen = -1; 12 | 13 | /// Specifies the probability this conversation occurs. Value must be between 0 and 1.0. 14 | public float probabilityOfOccurrence = 1.0f; 15 | 16 | /* 17 | * E.G: An NPC has 3 different conversations they can have with the player. Which one occurs can be random 18 | * based on this probability. Contributes to a more dynamic conversation system. 19 | */ 20 | } 21 | -------------------------------------------------------------------------------- /Assets/Node_Editor/DialogueAssets/Scripts/DialogueNodeCanvas.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b955e995fcde95c43a034bdadb14d0e7 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Node_Editor/DialogueAssets/Scripts/NodeEditorDialogue.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 969d66e3f0d92a442b080710168e15f8 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Node_Editor/Framework.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 24fac2a89d98853409af68678a229976 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Node_Editor/Framework/Node.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 73c3b978feeebc8488f4676c4c7138cc 3 | timeCreated: 1432557152 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Node_Editor/Framework/NodeInput.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using System; 3 | 4 | /// 5 | /// This class handles inputs into the node. Inputs are typically drawn on the left side of the node and can 6 | /// have outputs dragged and dropped onto them. 7 | /// 8 | public class NodeInput : ScriptableObject 9 | { 10 | /// The node that the input is coming from. 11 | public Node body; 12 | public Rect rect = new Rect (); 13 | public NodeOutput connection; 14 | public string type; 15 | 16 | /// 17 | /// Creates a new NodeInput in NodeBody of specified type 18 | /// 19 | public static NodeInput Create (Node NodeBody, string InputName, Type InputType) 20 | { 21 | NodeInput input = NodeInput.CreateInstance (typeof (NodeInput)) as NodeInput; 22 | input.body = NodeBody; 23 | input.type = InputType.AssemblyQualifiedName; 24 | input.name = InputName; 25 | NodeBody.Inputs.Add (input); 26 | return input; 27 | } 28 | 29 | /// 30 | /// Function to automatically draw and update the input with a label for it's name 31 | /// 32 | public void DisplayLayout () 33 | { 34 | DisplayLayout (new GUIContent (name)); 35 | } 36 | 37 | /// 38 | /// Function to automatically draw and update the input 39 | /// 40 | public void DisplayLayout (GUIContent content) 41 | { 42 | GUIStyle style = new GUIStyle (UnityEditor.EditorStyles.label); 43 | GUILayout.Label (content, style); 44 | 45 | if (Event.current.type == EventType.Repaint) 46 | SetRect (GUILayoutUtility.GetLastRect ()); 47 | } 48 | 49 | /// 50 | /// Set the input rect as labelrect in global canvas space and extend it to the left node edge 51 | /// 52 | public void SetRect (Rect labelRect) 53 | { 54 | rect = new Rect (body.rect.x, 55 | body.rect.y + labelRect.y, 56 | labelRect.width + labelRect.x, 57 | labelRect.height); 58 | } 59 | 60 | /// 61 | /// Get the rect of the knob left to the input 62 | /// 63 | public Rect GetKnob () 64 | { 65 | int knobSize = Node_Editor.editor.knobSize; 66 | return new Rect (rect.x - knobSize, 67 | rect.y + (rect.height - knobSize) / 2, 68 | knobSize, knobSize); 69 | } 70 | } -------------------------------------------------------------------------------- /Assets/Node_Editor/Framework/NodeInput.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: bfd9b948f4e135e4a8f0a97ec36511d4 3 | timeCreated: 1432978403 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Node_Editor/Framework/NodeOutput.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using System; 3 | using System.Collections.Generic; 4 | 5 | /// 6 | /// This class handles outputs from the node. Outputs are typically drawn on the right side of the node and can be 7 | /// dragged and dropped onto another node's NodeInput. 8 | /// 9 | public class NodeOutput : ScriptableObject 10 | { 11 | /// The node this output connects to. 12 | public Node body; 13 | public Rect rect = new Rect (); 14 | 15 | /// The list of inputs this output node connects to. Outputs can have multiple connections to 16 | /// different inputs 17 | /// 18 | public List connections = new List (); 19 | 20 | public string type; 21 | [NonSerialized] 22 | public object value = null; 23 | 24 | /// 25 | /// Creates a new NodeOutput in NodeBody of specified type 26 | /// 27 | public static NodeOutput Create (Node NodeBody, string OutputName, Type OutputType) 28 | { 29 | NodeOutput output = NodeOutput.CreateInstance (typeof (NodeOutput)) as NodeOutput; 30 | output.body = NodeBody; 31 | output.type = OutputType.AssemblyQualifiedName; 32 | output.name = OutputName; 33 | NodeBody.Outputs.Add (output); 34 | return output; 35 | } 36 | 37 | /// 38 | /// Function to automatically draw and update the output with a label for it's name 39 | /// 40 | public void DisplayLayout () 41 | { 42 | DisplayLayout (new GUIContent (name)); 43 | } 44 | 45 | /// 46 | /// Function to automatically draw and update the output 47 | /// 48 | public void DisplayLayout (GUIContent content) 49 | { 50 | GUIStyle style = new GUIStyle (UnityEditor.EditorStyles.label); 51 | style.alignment = TextAnchor.MiddleRight; 52 | GUILayout.Label (content, style); 53 | 54 | if (Event.current.type == EventType.Repaint) 55 | SetRect (GUILayoutUtility.GetLastRect ()); 56 | } 57 | 58 | /// 59 | /// Set the output rect as labelrect in global canvas space and extend it to the right node edge 60 | /// 61 | public void SetRect (Rect labelRect) 62 | { 63 | rect = new Rect (body.rect.x + labelRect.x, 64 | body.rect.y + labelRect.y, 65 | body.rect.width - labelRect.x, 66 | labelRect.height); 67 | } 68 | 69 | /// 70 | /// Get the rect of the knob right to the output 71 | /// 72 | public Rect GetKnob () 73 | { 74 | int knobSize = Node_Editor.editor.knobSize; 75 | return new Rect (rect.x + rect.width, 76 | rect.y + (rect.height - knobSize) / 2, 77 | knobSize, knobSize); 78 | } 79 | } -------------------------------------------------------------------------------- /Assets/Node_Editor/Framework/NodeOutput.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8540dc606510f764aa58ec26b6a1348b 3 | timeCreated: 1432978419 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Node_Editor/Framework/Node_Canvas_Object.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using UnityEditor; 3 | using System.Collections; 4 | using System.Collections.Generic; 5 | 6 | /// 7 | /// Base class for node canvases. Node canvases are Scriptable Objects that contain serializable data that 8 | /// is important for your node editor. Most of the data that you wish to parse from the asset will go in here. 9 | /// Node_Editor.cs references Node_Canvas_Object. 10 | /// 11 | public class Node_Canvas_Object : ScriptableObject 12 | { 13 | // All necessary things to save placed in the Node Canvas Scriptable Object 14 | 15 | /// All nodes on the canvas. They include the connections themselves 16 | public List nodes; 17 | 18 | /// The list of choice nodes in the editor. 19 | public List choiceNodes; 20 | 21 | /// The names of the choice nodes. Mostly used for the editor and not for loading at runtime. 22 | public List choiceNodeNames; 23 | 24 | /// The list of game state selections. Used for the editor. Used during loading. 25 | public List requiredGameStateSelections; 26 | 27 | /// The required game states needed to activate this interaction. 28 | public List requiredGameStates; 29 | 30 | public Vector2 scrollOffset = new Vector2 (); // The Scroll offset 31 | public float zoom = 2; // Zoom Factor; (1-5)/2: One step to zoom in, three to zoom out. Not implemented yet! 32 | } -------------------------------------------------------------------------------- /Assets/Node_Editor/Framework/Node_Canvas_Object.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 16e2218f533db5e42a23196cde50f9ac 3 | timeCreated: 1432557152 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Node_Editor/Framework/Node_Editor.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2cf6f92d656c0c2439528e97c53117ef 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: 7 | - m_PersistentViewDataDictionary: {instanceID: 0} 8 | - nodeCanvas: {instanceID: 0} 9 | - activeNode: {instanceID: 0} 10 | - connectOutput: {instanceID: 0} 11 | - bezierTexture: {fileID: 2800000, guid: 098a373722df5e242ad026b3e8a732e6, type: 3} 12 | executionOrder: 0 13 | icon: {instanceID: 0} 14 | userData: 15 | assetBundleName: 16 | assetBundleVariant: 17 | -------------------------------------------------------------------------------- /Assets/Node_Editor/HowToUseDialogueEditor.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mphilipp622/NodeBasedQuestEditor/8e33f7ad10235d52593a150326365d38cfcb76f4/Assets/Node_Editor/HowToUseDialogueEditor.pdf -------------------------------------------------------------------------------- /Assets/Node_Editor/HowToUseDialogueEditor.pdf.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 57e2a4a2530797844b7db0115d2798f4 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/Node_Editor/HowToUseQuestEditor.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mphilipp622/NodeBasedQuestEditor/8e33f7ad10235d52593a150326365d38cfcb76f4/Assets/Node_Editor/HowToUseQuestEditor.pdf -------------------------------------------------------------------------------- /Assets/Node_Editor/HowToUseQuestEditor.pdf.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a8be4898d5b78d1419b60c335a968612 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/Node_Editor/Quest.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 83bfc5b2eebb6da40b48496944588563 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Node_Editor/Quest/IQuestNode.cs: -------------------------------------------------------------------------------- 1 |  2 | /// 3 | /// Interface that is specific to quest nodes. Primarily used for polymorphism reasons in NodeEditorQuest. 4 | /// 5 | interface IQuestNode 6 | { 7 | /// 8 | /// Returns true if this node is part of a turn in quest conversation. 9 | /// 10 | bool IsTurnInDialogue(); 11 | 12 | /// 13 | /// Returns true if this node is part of an in-progress quest conversation. 14 | /// 15 | bool IsInProgressDialogue(); 16 | } 17 | -------------------------------------------------------------------------------- /Assets/Node_Editor/Quest/IQuestNode.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1ed2b1f0f2084f64088ca66d7dd1cdd1 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Node_Editor/Quest/NodeEditorQuest.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 10ec4342909f5ec46b745a7bda9f9792 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Node_Editor/Quest/ObjectivePath.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | 5 | public class ObjectivePath : ScriptableObject 6 | { 7 | public string objectivePathName; 8 | 9 | public List objectives; 10 | 11 | public void Initialize(string newName) 12 | { 13 | objectivePathName = newName; 14 | objectives = new List(); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /Assets/Node_Editor/Quest/ObjectivePath.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7455387b04a15d04798607576d386a41 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Node_Editor/Quest/QuestChoiceNode.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using UnityEditor; 3 | using System.Collections; 4 | using System.Collections.Generic; 5 | 6 | /// 7 | /// Choice node for the quest system. This node differs from a normal DialogueChocieNode by having references to 8 | /// Turn in and In-Progress dialogue options. Inherits DialogueChoiceNode and implements IQuestNode interface. 9 | /// 10 | [System.Serializable] 11 | public class QuestChoiceNode : DialogueChoiceNode, IQuestNode 12 | { 13 | public bool turnInQuest, inProgressDialogue; 14 | 15 | /// 16 | /// Creates a new quest choice node. 17 | /// 18 | public new static void Create(Rect NodeRect, int choiceStateNumber) 19 | { 20 | QuestChoiceNode node = ScriptableObject.CreateInstance(); 21 | 22 | node.name = "Choice State " + choiceStateNumber; 23 | node.rect = NodeRect; 24 | node.originState = -1; // I just chose -1. I don't think this matters. Will need to enforce that this state has an input though. 25 | node.state = -2; 26 | node.numberOfTransitions = 0; 27 | node.isStartState = false; 28 | node.expanded = true; 29 | 30 | // Instantiate 9 outputs for the choice selection 31 | for (int i = 0; i < 9; i++) 32 | NodeOutput.Create(node, "Dialogue Option " + (i + 1).ToString(), typeof(int)); 33 | 34 | // Create input for previous state 35 | NodeInput.Create(node, "Previous Dialogue State", typeof(int)); 36 | 37 | node.Init(); 38 | } 39 | 40 | /// 41 | /// Returns true if this choice is part of a quest turn-in dialogue. 42 | /// 43 | public bool IsTurnInDialogue() 44 | { 45 | return turnInQuest; 46 | } 47 | 48 | /// 49 | /// Returns true if this choice is part of an in-progress dialogue. 50 | /// 51 | public bool IsInProgressDialogue() 52 | { 53 | return inProgressDialogue; 54 | } 55 | 56 | /// 57 | /// Calculates input/output data for this node. Also calculates turn-in and in-progress status for this node. 58 | /// 59 | public override bool Calculate() 60 | { 61 | for(int i = 0; i < Outputs.Count; i++) 62 | { 63 | if (Outputs[i].connections.Count > 0) 64 | Outputs[i].connections[0].connection.value = i + 1; 65 | } 66 | 67 | if (Inputs[0].connection != null && Inputs[0].connection.value != null) 68 | { 69 | originState = Inputs[0].connection.body.state; 70 | 71 | QuestDialogueNode temp = (QuestDialogueNode)Inputs[0].connection.body; 72 | 73 | if (temp.turnInQuest) 74 | turnInQuest = true; 75 | if (temp.inProgressDialogue) 76 | inProgressDialogue = true; 77 | 78 | } 79 | 80 | return true; 81 | } 82 | } 83 | -------------------------------------------------------------------------------- /Assets/Node_Editor/Quest/QuestChoiceNode.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ccddaa508bc1ad649bbb5ac792aecb54 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Node_Editor/Quest/QuestDialogueNode.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: feb0f64701774fb4d9c8f8aa364070d2 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Node_Editor/Quest/QuestNodeCanvas.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | using UnityEditor; 5 | 6 | /// 7 | /// Contains data related to the Quest System. Inherits Node_Canvas_Object. 8 | /// 9 | public class QuestNodeCanvas : Node_Canvas_Object 10 | { 11 | /// The name of this quest. 12 | public string questName; 13 | 14 | /////////////////// 15 | // Quest Objectives 16 | /////////////////// 17 | 18 | // Objectives can be thought of as a 2D array. The first dimension is a path, which contains N number of objectives. A quest may have N number of objective paths, each containing N number of objectives. This allows for simultaneous objective paths. 19 | 20 | /// List of objectives required for this quest. 21 | public List questObjectives; 22 | 23 | /// The list of objective paths. 24 | public List objectivePaths; 25 | 26 | /// The number of objectives to collect. E.G: Kill 5 enemies, collect 3 flowers. 27 | public List numberOfObjectivesToCollect; 28 | 29 | /// List of prerequisite quests that must be complete for this quest to be available. 30 | public List requiredQuests; 31 | 32 | /// The quest asset for this quest. 33 | public QuestAsset newQuest; 34 | 35 | /// The NPC that gives this quest. 36 | public GameObject questGiver; 37 | } 38 | -------------------------------------------------------------------------------- /Assets/Node_Editor/Quest/QuestNodeCanvas.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d4302bd4f18e0e44492dfe8de3e05c5e 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Node_Editor/Quest/SubObjective.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | 5 | public class SubObjective : ScriptableObject 6 | { 7 | public int numberToCollect; 8 | public GameObject objective; 9 | public bool moveUp, moveDown, delete; 10 | 11 | public void Initialize() 12 | { 13 | numberToCollect = 0; 14 | objective = null; 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /Assets/Node_Editor/Quest/SubObjective.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 41305f36d819b324fbfe9bf868040730 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Node_Editor/background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mphilipp622/NodeBasedQuestEditor/8e33f7ad10235d52593a150326365d38cfcb76f4/Assets/Node_Editor/background.png -------------------------------------------------------------------------------- /Assets/Node_Editor/background.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7d532ff1413b7d44b9491d896146b934 3 | timeCreated: 1432489290 4 | licenseType: Free 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 2 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 0 11 | linearTexture: 1 12 | correctGamma: 0 13 | fadeOut: 0 14 | borderMipMap: 0 15 | mipMapFadeDistanceStart: 1 16 | mipMapFadeDistanceEnd: 3 17 | bumpmap: 18 | convertToNormalMap: 0 19 | externalNormalMap: 0 20 | heightScale: .25 21 | normalMapFilter: 0 22 | isReadable: 0 23 | grayScaleToAlpha: 0 24 | generateCubemap: 0 25 | cubemapConvolution: 0 26 | cubemapConvolutionSteps: 8 27 | cubemapConvolutionExponent: 1.5 28 | seamlessCubemap: 0 29 | textureFormat: -1 30 | maxTextureSize: 512 31 | textureSettings: 32 | filterMode: -1 33 | aniso: 1 34 | mipBias: -1 35 | wrapMode: 1 36 | nPOTScale: 0 37 | lightmap: 0 38 | rGBM: 0 39 | compressionQuality: 50 40 | spriteMode: 0 41 | spriteExtrude: 1 42 | spriteMeshType: 1 43 | alignment: 0 44 | spritePivot: {x: .5, y: .5} 45 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 46 | spritePixelsToUnits: 100 47 | alphaIsTransparency: 1 48 | textureType: 2 49 | buildTargetSettings: [] 50 | spriteSheet: 51 | sprites: [] 52 | spritePackingTag: 53 | userData: 54 | assetBundleName: 55 | assetBundleVariant: 56 | -------------------------------------------------------------------------------- /Assets/Resources.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 107e819d0663a134096111a42e608a71 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Resources/Dialogue.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d120282dbb6bf50488e2f99b19ee98ca 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Resources/Dialogue/BraidMMPlayer.asset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f359e40fada3beb48b509536b79aa1ba 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 11400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Resources/Dialogue/BraidPlayer.asset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a0eb83ac5f84adb4989f0a02a659d13c 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 11400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Resources/GameState.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 633aa3db3c835b84792a50a2e4a594e6 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Resources/GameState/GameStateData.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!114 &11400000 4 | MonoBehaviour: 5 | m_ObjectHideFlags: 0 6 | m_CorrespondingSourceObject: {fileID: 0} 7 | m_PrefabInstance: {fileID: 0} 8 | m_PrefabAsset: {fileID: 0} 9 | m_GameObject: {fileID: 0} 10 | m_Enabled: 1 11 | m_EditorHideFlags: 0 12 | m_Script: {fileID: 11500000, guid: 08c9ea4dfa315a745999e19617b3c5db, type: 3} 13 | m_Name: GameStateData 14 | m_EditorClassIdentifier: 15 | gameStates: 16 | - {fileID: 11400000, guid: 6abe336309132bf4faae77468d3b0cbb, type: 2} 17 | - {fileID: 11400000, guid: 48d441da72afa6b4e87a0b88d49dcc2f, type: 2} 18 | - {fileID: 11400000, guid: de23e946a290b1e4b8471e68cd05cd40, type: 2} 19 | -------------------------------------------------------------------------------- /Assets/Resources/GameState/GameStateData.asset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f5db0ba64663a0047bea1d7e85e7340f 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 11400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Resources/GameState/States.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 431cdd02e79ad4048b8eb4283968e9fd 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Resources/GameState/States/BOSS1_DEFEATED.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!114 &11400000 4 | MonoBehaviour: 5 | m_ObjectHideFlags: 0 6 | m_CorrespondingSourceObject: {fileID: 0} 7 | m_PrefabInternal: {fileID: 0} 8 | m_GameObject: {fileID: 0} 9 | m_Enabled: 1 10 | m_EditorHideFlags: 0 11 | m_Script: {fileID: 11500000, guid: a5900db68aa568149abc9b0c1288041b, type: 3} 12 | m_Name: BOSS1_DEFEATED 13 | m_EditorClassIdentifier: 14 | eventName: BOSS1_DEFEATED 15 | -------------------------------------------------------------------------------- /Assets/Resources/GameState/States/BOSS1_DEFEATED.asset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 48d441da72afa6b4e87a0b88d49dcc2f 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 11400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Resources/GameState/States/PLAYER_WALKED_100_MILES.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!114 &11400000 4 | MonoBehaviour: 5 | m_ObjectHideFlags: 0 6 | m_CorrespondingSourceObject: {fileID: 0} 7 | m_PrefabInternal: {fileID: 0} 8 | m_GameObject: {fileID: 0} 9 | m_Enabled: 1 10 | m_EditorHideFlags: 0 11 | m_Script: {fileID: 11500000, guid: a5900db68aa568149abc9b0c1288041b, type: 3} 12 | m_Name: PLAYER_WALKED_100_MILES 13 | m_EditorClassIdentifier: 14 | eventName: PLAYER_WALKED_100_MILES 15 | -------------------------------------------------------------------------------- /Assets/Resources/GameState/States/PLAYER_WALKED_100_MILES.asset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: de23e946a290b1e4b8471e68cd05cd40 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 11400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Resources/GameState/States/VOLCANO_ERUPTED.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!114 &11400000 4 | MonoBehaviour: 5 | m_ObjectHideFlags: 0 6 | m_CorrespondingSourceObject: {fileID: 0} 7 | m_PrefabInternal: {fileID: 0} 8 | m_GameObject: {fileID: 0} 9 | m_Enabled: 1 10 | m_EditorHideFlags: 0 11 | m_Script: {fileID: 11500000, guid: a5900db68aa568149abc9b0c1288041b, type: 3} 12 | m_Name: VOLCANO_ERUPTED 13 | m_EditorClassIdentifier: 14 | eventName: VOLCANO_ERUPTED 15 | -------------------------------------------------------------------------------- /Assets/Resources/GameState/States/VOLCANO_ERUPTED.asset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6abe336309132bf4faae77468d3b0cbb 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 11400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Resources/Prefabs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ae7cae6093d3fad4dba4bd804ae9c894 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Resources/Prefabs/Cameras.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2c808fbbc94cd9746b93ab8863ca4550 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Resources/Prefabs/Cameras/NewCamera.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: beb72c23b8c11a94990959ace0a7500b 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 100100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Resources/Prefabs/Characters.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 194701995114e8d48bcdf692ee79c155 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Resources/Prefabs/Characters/NPCBraid.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2a36daffaaaf2f64c9802bc58afa6980 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 0 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Resources/Prefabs/Characters/NPCLink.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 637f1ff2f27cc7445bb440f45b33f404 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 100100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Resources/Prefabs/Characters/NPCMegaMan.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e980799e1ae36f7468f2e975cfc635d3 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 100100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Resources/Prefabs/Characters/NPCTracer.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c3f9ceb0f9c7fd34da5b5e65730cfe95 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 100100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Resources/Prefabs/Characters/Player.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c01a0d87193b21c4d8bdc91d10b958c4 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 100100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Resources/Prefabs/Characters/ShadyIndividual.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: cf63ef29d96b8824eaa3b16b6abb1da2 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 100100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Resources/Prefabs/Dialogue.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 92915da462dcb724ab23e8c6ace881a5 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Resources/Prefabs/Dialogue/ConversationHandler.prefab: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!1001 &100100000 4 | Prefab: 5 | m_ObjectHideFlags: 1 6 | serializedVersion: 2 7 | m_Modification: 8 | m_TransformParent: {fileID: 0} 9 | m_Modifications: [] 10 | m_RemovedComponents: [] 11 | m_SourcePrefab: {fileID: 0} 12 | m_RootGameObject: {fileID: 1219016828293628} 13 | m_IsPrefabAsset: 1 14 | --- !u!1 &1219016828293628 15 | GameObject: 16 | m_ObjectHideFlags: 0 17 | m_CorrespondingSourceObject: {fileID: 0} 18 | m_PrefabInternal: {fileID: 100100000} 19 | serializedVersion: 6 20 | m_Component: 21 | - component: {fileID: 4416990962174606} 22 | - component: {fileID: 114445809346738736} 23 | m_Layer: 0 24 | m_Name: ConversationHandler 25 | m_TagString: Untagged 26 | m_Icon: {fileID: 0} 27 | m_NavMeshLayer: 0 28 | m_StaticEditorFlags: 0 29 | m_IsActive: 1 30 | --- !u!4 &4416990962174606 31 | Transform: 32 | m_ObjectHideFlags: 1 33 | m_CorrespondingSourceObject: {fileID: 0} 34 | m_PrefabInternal: {fileID: 100100000} 35 | m_GameObject: {fileID: 1219016828293628} 36 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} 37 | m_LocalPosition: {x: -0.12267832, y: -1.3290162, z: 0} 38 | m_LocalScale: {x: 1, y: 1, z: 1} 39 | m_Children: [] 40 | m_Father: {fileID: 0} 41 | m_RootOrder: 0 42 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 43 | --- !u!114 &114445809346738736 44 | MonoBehaviour: 45 | m_ObjectHideFlags: 1 46 | m_CorrespondingSourceObject: {fileID: 0} 47 | m_PrefabInternal: {fileID: 100100000} 48 | m_GameObject: {fileID: 1219016828293628} 49 | m_Enabled: 1 50 | m_EditorHideFlags: 0 51 | m_Script: {fileID: 11500000, guid: aebaf92a9737a054e837fed5c97021f7, type: 3} 52 | m_Name: 53 | m_EditorClassIdentifier: 54 | -------------------------------------------------------------------------------- /Assets/Resources/Prefabs/Dialogue/ConversationHandler.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: fa9404913e2e0cc40ac16bb7f114fb8b 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 100100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Resources/Prefabs/Dialogue/DialogueBox.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e8161352516d14d44b4130dc7d33b64c 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 100100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Resources/Prefabs/Dialogue/DialogueCanvas.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5d862bf533f400c428b8fef45161ea5c 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 100100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Resources/Prefabs/Dialogue/DialogueText.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b1a42e787584f9d4b925092ff99030f3 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 100100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Resources/Prefabs/Enemies.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a1a0b4aec386613419710d76216291d8 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Resources/Prefabs/Enemies/Bob.prefab: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!1001 &100100000 4 | Prefab: 5 | m_ObjectHideFlags: 1 6 | serializedVersion: 2 7 | m_Modification: 8 | m_TransformParent: {fileID: 0} 9 | m_Modifications: [] 10 | m_RemovedComponents: [] 11 | m_ParentPrefab: {fileID: 0} 12 | m_RootGameObject: {fileID: 1607715600680182} 13 | m_IsPrefabParent: 1 14 | --- !u!1 &1607715600680182 15 | GameObject: 16 | m_ObjectHideFlags: 0 17 | m_PrefabParentObject: {fileID: 0} 18 | m_PrefabInternal: {fileID: 100100000} 19 | serializedVersion: 5 20 | m_Component: 21 | - component: {fileID: 4927803617033044} 22 | m_Layer: 0 23 | m_Name: Bob 24 | m_TagString: Enemy 25 | m_Icon: {fileID: 0} 26 | m_NavMeshLayer: 0 27 | m_StaticEditorFlags: 0 28 | m_IsActive: 1 29 | --- !u!4 &4927803617033044 30 | Transform: 31 | m_ObjectHideFlags: 1 32 | m_PrefabParentObject: {fileID: 0} 33 | m_PrefabInternal: {fileID: 100100000} 34 | m_GameObject: {fileID: 1607715600680182} 35 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} 36 | m_LocalPosition: {x: -3.8621597, y: 2.1940267, z: -0.036210123} 37 | m_LocalScale: {x: 1, y: 1, z: 1} 38 | m_Children: [] 39 | m_Father: {fileID: 0} 40 | m_RootOrder: 0 41 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 42 | -------------------------------------------------------------------------------- /Assets/Resources/Prefabs/Enemies/Bob.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: cda5f136f2ef092478ecd332b780c996 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 100100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Resources/Prefabs/Enemies/FlameLizard.prefab: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!1001 &100100000 4 | Prefab: 5 | m_ObjectHideFlags: 1 6 | serializedVersion: 2 7 | m_Modification: 8 | m_TransformParent: {fileID: 0} 9 | m_Modifications: [] 10 | m_RemovedComponents: [] 11 | m_ParentPrefab: {fileID: 0} 12 | m_RootGameObject: {fileID: 1563204960119586} 13 | m_IsPrefabParent: 1 14 | --- !u!1 &1563204960119586 15 | GameObject: 16 | m_ObjectHideFlags: 0 17 | m_PrefabParentObject: {fileID: 0} 18 | m_PrefabInternal: {fileID: 100100000} 19 | serializedVersion: 5 20 | m_Component: 21 | - component: {fileID: 4877362922733700} 22 | - component: {fileID: 114921947476480488} 23 | m_Layer: 0 24 | m_Name: FlameLizard 25 | m_TagString: Enemy 26 | m_Icon: {fileID: 0} 27 | m_NavMeshLayer: 0 28 | m_StaticEditorFlags: 0 29 | m_IsActive: 1 30 | --- !u!4 &4877362922733700 31 | Transform: 32 | m_ObjectHideFlags: 1 33 | m_PrefabParentObject: {fileID: 0} 34 | m_PrefabInternal: {fileID: 100100000} 35 | m_GameObject: {fileID: 1563204960119586} 36 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} 37 | m_LocalPosition: {x: -2.3137174, y: 0.87184507, z: 0.052734375} 38 | m_LocalScale: {x: 1, y: 1, z: 1} 39 | m_Children: [] 40 | m_Father: {fileID: 0} 41 | m_RootOrder: 0 42 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 43 | --- !u!114 &114921947476480488 44 | MonoBehaviour: 45 | m_ObjectHideFlags: 1 46 | m_PrefabParentObject: {fileID: 0} 47 | m_PrefabInternal: {fileID: 100100000} 48 | m_GameObject: {fileID: 1563204960119586} 49 | m_Enabled: 1 50 | m_EditorHideFlags: 0 51 | m_Script: {fileID: 11500000, guid: a59d4a842a085004aa036060e4762f56, type: 3} 52 | m_Name: 53 | m_EditorClassIdentifier: 54 | hp: 4 55 | moveSpeed: 5 56 | defense: 1 57 | attack: 8 58 | name: Flame Lizard 59 | -------------------------------------------------------------------------------- /Assets/Resources/Prefabs/Enemies/FlameLizard.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e7e936328b65b8f4bbe814d449382a57 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 100100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Resources/Prefabs/Enemies/RockGoblin.prefab: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!1001 &100100000 4 | Prefab: 5 | m_ObjectHideFlags: 1 6 | serializedVersion: 2 7 | m_Modification: 8 | m_TransformParent: {fileID: 0} 9 | m_Modifications: [] 10 | m_RemovedComponents: [] 11 | m_ParentPrefab: {fileID: 0} 12 | m_RootGameObject: {fileID: 1144847732078358} 13 | m_IsPrefabParent: 1 14 | --- !u!1 &1144847732078358 15 | GameObject: 16 | m_ObjectHideFlags: 0 17 | m_PrefabParentObject: {fileID: 0} 18 | m_PrefabInternal: {fileID: 100100000} 19 | serializedVersion: 5 20 | m_Component: 21 | - component: {fileID: 4810385259740080} 22 | - component: {fileID: 114743097651138740} 23 | m_Layer: 0 24 | m_Name: RockGoblin 25 | m_TagString: Enemy 26 | m_Icon: {fileID: 0} 27 | m_NavMeshLayer: 0 28 | m_StaticEditorFlags: 0 29 | m_IsActive: 1 30 | --- !u!4 &4810385259740080 31 | Transform: 32 | m_ObjectHideFlags: 1 33 | m_PrefabParentObject: {fileID: 0} 34 | m_PrefabInternal: {fileID: 100100000} 35 | m_GameObject: {fileID: 1144847732078358} 36 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} 37 | m_LocalPosition: {x: -3.8621597, y: 2.1940267, z: -0.036210123} 38 | m_LocalScale: {x: 1, y: 1, z: 1} 39 | m_Children: [] 40 | m_Father: {fileID: 0} 41 | m_RootOrder: 0 42 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 43 | --- !u!114 &114743097651138740 44 | MonoBehaviour: 45 | m_ObjectHideFlags: 1 46 | m_PrefabParentObject: {fileID: 0} 47 | m_PrefabInternal: {fileID: 100100000} 48 | m_GameObject: {fileID: 1144847732078358} 49 | m_Enabled: 1 50 | m_EditorHideFlags: 0 51 | m_Script: {fileID: 11500000, guid: 5c215e4480a09ac4a8345ac73951218c, type: 3} 52 | m_Name: 53 | m_EditorClassIdentifier: 54 | hp: 10 55 | moveSpeed: 3 56 | defense: 2 57 | attack: 5 58 | name: Rock Goblin 59 | -------------------------------------------------------------------------------- /Assets/Resources/Prefabs/Enemies/RockGoblin.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 93be5ee44ac685b41b04d4d66472ccfb 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 100100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Resources/Prefabs/Globals.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d322ab7c6e131d046a7f9ba18d822420 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Resources/Prefabs/Globals/GameState.prefab: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!1001 &100100000 4 | Prefab: 5 | m_ObjectHideFlags: 1 6 | serializedVersion: 2 7 | m_Modification: 8 | m_TransformParent: {fileID: 0} 9 | m_Modifications: [] 10 | m_RemovedComponents: [] 11 | m_SourcePrefab: {fileID: 0} 12 | m_RootGameObject: {fileID: 1276251253123696} 13 | m_IsPrefabAsset: 1 14 | --- !u!1 &1276251253123696 15 | GameObject: 16 | m_ObjectHideFlags: 0 17 | m_CorrespondingSourceObject: {fileID: 0} 18 | m_PrefabInternal: {fileID: 100100000} 19 | serializedVersion: 6 20 | m_Component: 21 | - component: {fileID: 4700291355420426} 22 | - component: {fileID: 114708568611176714} 23 | m_Layer: 0 24 | m_Name: GameState 25 | m_TagString: Untagged 26 | m_Icon: {fileID: 0} 27 | m_NavMeshLayer: 0 28 | m_StaticEditorFlags: 0 29 | m_IsActive: 1 30 | --- !u!4 &4700291355420426 31 | Transform: 32 | m_ObjectHideFlags: 1 33 | m_CorrespondingSourceObject: {fileID: 0} 34 | m_PrefabInternal: {fileID: 100100000} 35 | m_GameObject: {fileID: 1276251253123696} 36 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} 37 | m_LocalPosition: {x: 1.6490083, y: 1.680018, z: 0.13085938} 38 | m_LocalScale: {x: 1, y: 1, z: 1} 39 | m_Children: [] 40 | m_Father: {fileID: 0} 41 | m_RootOrder: 0 42 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 43 | --- !u!114 &114708568611176714 44 | MonoBehaviour: 45 | m_ObjectHideFlags: 1 46 | m_CorrespondingSourceObject: {fileID: 0} 47 | m_PrefabInternal: {fileID: 100100000} 48 | m_GameObject: {fileID: 1276251253123696} 49 | m_Enabled: 1 50 | m_EditorHideFlags: 0 51 | m_Script: {fileID: 11500000, guid: a15b60af9cf833040a1d715df0e7710c, type: 3} 52 | m_Name: 53 | m_EditorClassIdentifier: 54 | gameStateAssetDirectory: GameState/GameStateData 55 | -------------------------------------------------------------------------------- /Assets/Resources/Prefabs/Globals/GameState.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9d34b1bab2bf4a74bbb7f0c3cda18f83 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 100100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Resources/Prefabs/HUD.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a3b26e34683350347a9e57989b2699c9 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Resources/Prefabs/HUD/InteractionIcon.prefab: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!1001 &100100000 4 | Prefab: 5 | m_ObjectHideFlags: 1 6 | serializedVersion: 2 7 | m_Modification: 8 | m_TransformParent: {fileID: 0} 9 | m_Modifications: [] 10 | m_RemovedComponents: [] 11 | m_SourcePrefab: {fileID: 0} 12 | m_RootGameObject: {fileID: 1149328802293528} 13 | m_IsPrefabAsset: 1 14 | --- !u!1 &1149328802293528 15 | GameObject: 16 | m_ObjectHideFlags: 0 17 | m_CorrespondingSourceObject: {fileID: 0} 18 | m_PrefabInternal: {fileID: 100100000} 19 | serializedVersion: 6 20 | m_Component: 21 | - component: {fileID: 4905069617166078} 22 | - component: {fileID: 212405286062675696} 23 | m_Layer: 0 24 | m_Name: InteractionIcon 25 | m_TagString: Untagged 26 | m_Icon: {fileID: 0} 27 | m_NavMeshLayer: 0 28 | m_StaticEditorFlags: 0 29 | m_IsActive: 1 30 | --- !u!4 &4905069617166078 31 | Transform: 32 | m_ObjectHideFlags: 1 33 | m_CorrespondingSourceObject: {fileID: 0} 34 | m_PrefabInternal: {fileID: 100100000} 35 | m_GameObject: {fileID: 1149328802293528} 36 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} 37 | m_LocalPosition: {x: 6.46, y: -3.21, z: 0} 38 | m_LocalScale: {x: 0.39914, y: 0.39914, z: 0.39914} 39 | m_Children: [] 40 | m_Father: {fileID: 0} 41 | m_RootOrder: 0 42 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 43 | --- !u!212 &212405286062675696 44 | SpriteRenderer: 45 | m_ObjectHideFlags: 1 46 | m_CorrespondingSourceObject: {fileID: 0} 47 | m_PrefabInternal: {fileID: 100100000} 48 | m_GameObject: {fileID: 1149328802293528} 49 | m_Enabled: 1 50 | m_CastShadows: 0 51 | m_ReceiveShadows: 0 52 | m_DynamicOccludee: 1 53 | m_MotionVectors: 1 54 | m_LightProbeUsage: 1 55 | m_ReflectionProbeUsage: 1 56 | m_RenderingLayerMask: 4294967295 57 | m_Materials: 58 | - {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} 59 | m_StaticBatchInfo: 60 | firstSubMesh: 0 61 | subMeshCount: 0 62 | m_StaticBatchRoot: {fileID: 0} 63 | m_ProbeAnchor: {fileID: 0} 64 | m_LightProbeVolumeOverride: {fileID: 0} 65 | m_ScaleInLightmap: 1 66 | m_PreserveUVs: 0 67 | m_IgnoreNormalsForChartDetection: 0 68 | m_ImportantGI: 0 69 | m_StitchLightmapSeams: 0 70 | m_SelectedEditorRenderState: 0 71 | m_MinimumChartSize: 4 72 | m_AutoUVMaxDistance: 0.5 73 | m_AutoUVMaxAngle: 89 74 | m_LightmapParameters: {fileID: 0} 75 | m_SortingLayerID: -1557842961 76 | m_SortingLayer: 6 77 | m_SortingOrder: 0 78 | m_Sprite: {fileID: 21300000, guid: 4c977032fa56fb04f9e75393387d9d84, type: 3} 79 | m_Color: {r: 1, g: 1, b: 1, a: 1} 80 | m_FlipX: 0 81 | m_FlipY: 0 82 | m_DrawMode: 0 83 | m_Size: {x: 2.36, y: 2.02} 84 | m_AdaptiveModeThreshold: 0.5 85 | m_SpriteTileMode: 0 86 | m_WasSpriteAssigned: 1 87 | m_MaskInteraction: 0 88 | m_SpriteSortPoint: 0 89 | -------------------------------------------------------------------------------- /Assets/Resources/Prefabs/HUD/InteractionIcon.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 761b1ecaa63bda3449a000d4688a605d 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 100100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Resources/Prefabs/Loaders.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5109bc8700cd19644b6fa3633bfdc757 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Resources/Prefabs/Loaders/DialogueLoader.prefab: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!1001 &100100000 4 | Prefab: 5 | m_ObjectHideFlags: 1 6 | serializedVersion: 2 7 | m_Modification: 8 | m_TransformParent: {fileID: 0} 9 | m_Modifications: [] 10 | m_RemovedComponents: [] 11 | m_SourcePrefab: {fileID: 0} 12 | m_RootGameObject: {fileID: 1200918813550228} 13 | m_IsPrefabAsset: 1 14 | --- !u!1 &1200918813550228 15 | GameObject: 16 | m_ObjectHideFlags: 0 17 | m_CorrespondingSourceObject: {fileID: 0} 18 | m_PrefabInternal: {fileID: 100100000} 19 | serializedVersion: 6 20 | m_Component: 21 | - component: {fileID: 4418769934694534} 22 | - component: {fileID: 114199731575322880} 23 | m_Layer: 0 24 | m_Name: DialogueLoader 25 | m_TagString: Untagged 26 | m_Icon: {fileID: 0} 27 | m_NavMeshLayer: 0 28 | m_StaticEditorFlags: 0 29 | m_IsActive: 1 30 | --- !u!4 &4418769934694534 31 | Transform: 32 | m_ObjectHideFlags: 1 33 | m_CorrespondingSourceObject: {fileID: 0} 34 | m_PrefabInternal: {fileID: 100100000} 35 | m_GameObject: {fileID: 1200918813550228} 36 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} 37 | m_LocalPosition: {x: 0.9424212, y: -0.2419331, z: 0.02734375} 38 | m_LocalScale: {x: 1, y: 1, z: 1} 39 | m_Children: [] 40 | m_Father: {fileID: 0} 41 | m_RootOrder: 0 42 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 43 | --- !u!114 &114199731575322880 44 | MonoBehaviour: 45 | m_ObjectHideFlags: 1 46 | m_CorrespondingSourceObject: {fileID: 0} 47 | m_PrefabInternal: {fileID: 100100000} 48 | m_GameObject: {fileID: 1200918813550228} 49 | m_Enabled: 1 50 | m_EditorHideFlags: 0 51 | m_Script: {fileID: 11500000, guid: ffd9edd474574624599eb001c7481a2d, type: 3} 52 | m_Name: 53 | m_EditorClassIdentifier: 54 | -------------------------------------------------------------------------------- /Assets/Resources/Prefabs/Loaders/DialogueLoader.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f0a8474ff1ad130418d349ac9bba6f21 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 100100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Resources/Prefabs/Loaders/QuestLoader.prefab: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!1001 &100100000 4 | Prefab: 5 | m_ObjectHideFlags: 1 6 | serializedVersion: 2 7 | m_Modification: 8 | m_TransformParent: {fileID: 0} 9 | m_Modifications: [] 10 | m_RemovedComponents: [] 11 | m_SourcePrefab: {fileID: 0} 12 | m_RootGameObject: {fileID: 1796309590059654} 13 | m_IsPrefabAsset: 1 14 | --- !u!1 &1796309590059654 15 | GameObject: 16 | m_ObjectHideFlags: 0 17 | m_CorrespondingSourceObject: {fileID: 0} 18 | m_PrefabInternal: {fileID: 100100000} 19 | serializedVersion: 6 20 | m_Component: 21 | - component: {fileID: 4619136774973930} 22 | - component: {fileID: 114391695013649968} 23 | m_Layer: 9 24 | m_Name: QuestLoader 25 | m_TagString: Untagged 26 | m_Icon: {fileID: 0} 27 | m_NavMeshLayer: 0 28 | m_StaticEditorFlags: 0 29 | m_IsActive: 1 30 | --- !u!4 &4619136774973930 31 | Transform: 32 | m_ObjectHideFlags: 1 33 | m_CorrespondingSourceObject: {fileID: 0} 34 | m_PrefabInternal: {fileID: 100100000} 35 | m_GameObject: {fileID: 1796309590059654} 36 | m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} 37 | m_LocalPosition: {x: 2.3199642, y: -0.06418574, z: 0} 38 | m_LocalScale: {x: 1000000, y: 1000000, z: 1000000} 39 | m_Children: [] 40 | m_Father: {fileID: 0} 41 | m_RootOrder: 0 42 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 43 | --- !u!114 &114391695013649968 44 | MonoBehaviour: 45 | m_ObjectHideFlags: 1 46 | m_CorrespondingSourceObject: {fileID: 0} 47 | m_PrefabInternal: {fileID: 100100000} 48 | m_GameObject: {fileID: 1796309590059654} 49 | m_Enabled: 1 50 | m_EditorHideFlags: 0 51 | m_Script: {fileID: 11500000, guid: 5160aa721d14ccf4ea0e09b80941614b, type: 3} 52 | m_Name: 53 | m_EditorClassIdentifier: 54 | -------------------------------------------------------------------------------- /Assets/Resources/Prefabs/Loaders/QuestLoader.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e4ab337172740084aaab45e55eef96b5 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 100100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Resources/Prefabs/LocationBlockers.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 90d3b04c03dd2e644b0130b53a535735 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Resources/Prefabs/LocationBlockers/LocationBlockerTest.prefab: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!1001 &100100000 4 | Prefab: 5 | m_ObjectHideFlags: 1 6 | serializedVersion: 2 7 | m_Modification: 8 | m_TransformParent: {fileID: 0} 9 | m_Modifications: [] 10 | m_RemovedComponents: [] 11 | m_ParentPrefab: {fileID: 0} 12 | m_RootGameObject: {fileID: 1544393530307536} 13 | m_IsPrefabParent: 1 14 | --- !u!1 &1544393530307536 15 | GameObject: 16 | m_ObjectHideFlags: 0 17 | m_PrefabParentObject: {fileID: 0} 18 | m_PrefabInternal: {fileID: 100100000} 19 | serializedVersion: 5 20 | m_Component: 21 | - component: {fileID: 4510580169575548} 22 | - component: {fileID: 61060821699177920} 23 | - component: {fileID: 114951964312286666} 24 | m_Layer: 0 25 | m_Name: LocationBlockerTest 26 | m_TagString: Untagged 27 | m_Icon: {fileID: 0} 28 | m_NavMeshLayer: 0 29 | m_StaticEditorFlags: 0 30 | m_IsActive: 1 31 | --- !u!4 &4510580169575548 32 | Transform: 33 | m_ObjectHideFlags: 1 34 | m_PrefabParentObject: {fileID: 0} 35 | m_PrefabInternal: {fileID: 100100000} 36 | m_GameObject: {fileID: 1544393530307536} 37 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} 38 | m_LocalPosition: {x: -1.43, y: 8.42, z: 0.13085938} 39 | m_LocalScale: {x: 1, y: 1, z: 1} 40 | m_Children: [] 41 | m_Father: {fileID: 0} 42 | m_RootOrder: 0 43 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 44 | --- !u!61 &61060821699177920 45 | BoxCollider2D: 46 | m_ObjectHideFlags: 1 47 | m_PrefabParentObject: {fileID: 0} 48 | m_PrefabInternal: {fileID: 100100000} 49 | m_GameObject: {fileID: 1544393530307536} 50 | m_Enabled: 1 51 | m_Density: 1 52 | m_Material: {fileID: 0} 53 | m_IsTrigger: 0 54 | m_UsedByEffector: 0 55 | m_UsedByComposite: 0 56 | m_Offset: {x: -0.1240654, y: 0.046525} 57 | m_SpriteTilingProperty: 58 | border: {x: 0, y: 0, z: 0, w: 0} 59 | pivot: {x: 0, y: 0} 60 | oldSize: {x: 0, y: 0} 61 | newSize: {x: 0, y: 0} 62 | adaptiveTilingThreshold: 0 63 | drawMode: 0 64 | adaptiveTiling: 0 65 | m_AutoTiling: 0 66 | serializedVersion: 2 67 | m_Size: {x: 13.344425, y: 0.90695} 68 | m_EdgeRadius: 0 69 | --- !u!114 &114951964312286666 70 | MonoBehaviour: 71 | m_ObjectHideFlags: 1 72 | m_PrefabParentObject: {fileID: 0} 73 | m_PrefabInternal: {fileID: 100100000} 74 | m_GameObject: {fileID: 1544393530307536} 75 | m_Enabled: 1 76 | m_EditorHideFlags: 0 77 | m_Script: {fileID: 11500000, guid: bb30ce104de9140448735e1810dfc7d0, type: 3} 78 | m_Name: 79 | m_EditorClassIdentifier: 80 | requiredStates: 81 | - VOLCANO_ERUPTED 82 | -------------------------------------------------------------------------------- /Assets/Resources/Prefabs/LocationBlockers/LocationBlockerTest.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2e71eb092d27f5646a6ab541342817d0 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 100100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Resources/Prefabs/Locations.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ada82f7d678395c4c895e814afef0fc7 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Resources/Prefabs/Locations/BridgeTooFarLocation.prefab: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!1 &1689079826638353982 4 | GameObject: 5 | m_ObjectHideFlags: 0 6 | m_CorrespondingSourceObject: {fileID: 0} 7 | m_PrefabInstance: {fileID: 0} 8 | m_PrefabAsset: {fileID: 0} 9 | serializedVersion: 6 10 | m_Component: 11 | - component: {fileID: 1691671316845543250} 12 | - component: {fileID: 1703887353121237926} 13 | - component: {fileID: 1649044527154152046} 14 | m_Layer: 0 15 | m_Name: BridgeTooFarLocation 16 | m_TagString: Location 17 | m_Icon: {fileID: 0} 18 | m_NavMeshLayer: 0 19 | m_StaticEditorFlags: 0 20 | m_IsActive: 1 21 | --- !u!4 &1691671316845543250 22 | Transform: 23 | m_ObjectHideFlags: 0 24 | m_CorrespondingSourceObject: {fileID: 0} 25 | m_PrefabInstance: {fileID: 0} 26 | m_PrefabAsset: {fileID: 0} 27 | m_GameObject: {fileID: 1689079826638353982} 28 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} 29 | m_LocalPosition: {x: 11.142321, y: 1.6242352, z: 0.058677725} 30 | m_LocalScale: {x: 1, y: 1, z: 1} 31 | m_Children: [] 32 | m_Father: {fileID: 0} 33 | m_RootOrder: 0 34 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 35 | --- !u!58 &1703887353121237926 36 | CircleCollider2D: 37 | m_ObjectHideFlags: 0 38 | m_CorrespondingSourceObject: {fileID: 0} 39 | m_PrefabInstance: {fileID: 0} 40 | m_PrefabAsset: {fileID: 0} 41 | m_GameObject: {fileID: 1689079826638353982} 42 | m_Enabled: 1 43 | m_Density: 1 44 | m_Material: {fileID: 0} 45 | m_IsTrigger: 1 46 | m_UsedByEffector: 0 47 | m_UsedByComposite: 0 48 | m_Offset: {x: 0, y: 0} 49 | serializedVersion: 2 50 | m_Radius: 1.54 51 | --- !u!114 &1649044527154152046 52 | MonoBehaviour: 53 | m_ObjectHideFlags: 0 54 | m_CorrespondingSourceObject: {fileID: 0} 55 | m_PrefabInstance: {fileID: 0} 56 | m_PrefabAsset: {fileID: 0} 57 | m_GameObject: {fileID: 1689079826638353982} 58 | m_Enabled: 1 59 | m_EditorHideFlags: 0 60 | m_Script: {fileID: 11500000, guid: 787b4d396f3ff7847b565ae34bd0d6a6, type: 3} 61 | m_Name: 62 | m_EditorClassIdentifier: 63 | -------------------------------------------------------------------------------- /Assets/Resources/Prefabs/Locations/BridgeTooFarLocation.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d18d36a70e2c61e4ba666c3c4f753ff8 3 | PrefabImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/Resources/Prefabs/Locations/FlameLizardLocation.prefab: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!1 &6830175556117625355 4 | GameObject: 5 | m_ObjectHideFlags: 0 6 | m_CorrespondingSourceObject: {fileID: 0} 7 | m_PrefabInstance: {fileID: 0} 8 | m_PrefabAsset: {fileID: 0} 9 | serializedVersion: 6 10 | m_Component: 11 | - component: {fileID: 6828441391311844199} 12 | - component: {fileID: 6781319160194312083} 13 | - component: {fileID: 6871345276187020891} 14 | m_Layer: 0 15 | m_Name: FlameLizardLocation 16 | m_TagString: Location 17 | m_Icon: {fileID: 0} 18 | m_NavMeshLayer: 0 19 | m_StaticEditorFlags: 0 20 | m_IsActive: 1 21 | --- !u!4 &6828441391311844199 22 | Transform: 23 | m_ObjectHideFlags: 0 24 | m_CorrespondingSourceObject: {fileID: 0} 25 | m_PrefabInstance: {fileID: 0} 26 | m_PrefabAsset: {fileID: 0} 27 | m_GameObject: {fileID: 6830175556117625355} 28 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} 29 | m_LocalPosition: {x: 0.65612054, y: 5.442094, z: 0.058677725} 30 | m_LocalScale: {x: 1, y: 1, z: 1} 31 | m_Children: [] 32 | m_Father: {fileID: 0} 33 | m_RootOrder: 0 34 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 35 | --- !u!58 &6781319160194312083 36 | CircleCollider2D: 37 | m_ObjectHideFlags: 0 38 | m_CorrespondingSourceObject: {fileID: 0} 39 | m_PrefabInstance: {fileID: 0} 40 | m_PrefabAsset: {fileID: 0} 41 | m_GameObject: {fileID: 6830175556117625355} 42 | m_Enabled: 1 43 | m_Density: 1 44 | m_Material: {fileID: 0} 45 | m_IsTrigger: 1 46 | m_UsedByEffector: 0 47 | m_UsedByComposite: 0 48 | m_Offset: {x: 0, y: 0} 49 | serializedVersion: 2 50 | m_Radius: 1.54 51 | --- !u!114 &6871345276187020891 52 | MonoBehaviour: 53 | m_ObjectHideFlags: 0 54 | m_CorrespondingSourceObject: {fileID: 0} 55 | m_PrefabInstance: {fileID: 0} 56 | m_PrefabAsset: {fileID: 0} 57 | m_GameObject: {fileID: 6830175556117625355} 58 | m_Enabled: 1 59 | m_EditorHideFlags: 0 60 | m_Script: {fileID: 11500000, guid: 787b4d396f3ff7847b565ae34bd0d6a6, type: 3} 61 | m_Name: 62 | m_EditorClassIdentifier: 63 | -------------------------------------------------------------------------------- /Assets/Resources/Prefabs/Locations/FlameLizardLocation.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6dc8e6c61d771b540980d32eefab0772 3 | PrefabImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/Resources/Prefabs/Locations/TestQuestLocation.prefab: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!1 &1320577151863524 4 | GameObject: 5 | m_ObjectHideFlags: 0 6 | m_CorrespondingSourceObject: {fileID: 0} 7 | m_PrefabInstance: {fileID: 0} 8 | m_PrefabAsset: {fileID: 0} 9 | serializedVersion: 6 10 | m_Component: 11 | - component: {fileID: 4053007650784136} 12 | - component: {fileID: 58842206363309948} 13 | - component: {fileID: 114548681659973300} 14 | m_Layer: 0 15 | m_Name: TestQuestLocation 16 | m_TagString: Location 17 | m_Icon: {fileID: 0} 18 | m_NavMeshLayer: 0 19 | m_StaticEditorFlags: 0 20 | m_IsActive: 1 21 | --- !u!4 &4053007650784136 22 | Transform: 23 | m_ObjectHideFlags: 0 24 | m_CorrespondingSourceObject: {fileID: 0} 25 | m_PrefabInstance: {fileID: 0} 26 | m_PrefabAsset: {fileID: 0} 27 | m_GameObject: {fileID: 1320577151863524} 28 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} 29 | m_LocalPosition: {x: 3.83, y: 2, z: 0.058677725} 30 | m_LocalScale: {x: 1, y: 1, z: 1} 31 | m_Children: [] 32 | m_Father: {fileID: 0} 33 | m_RootOrder: 0 34 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 35 | --- !u!58 &58842206363309948 36 | CircleCollider2D: 37 | m_ObjectHideFlags: 0 38 | m_CorrespondingSourceObject: {fileID: 0} 39 | m_PrefabInstance: {fileID: 0} 40 | m_PrefabAsset: {fileID: 0} 41 | m_GameObject: {fileID: 1320577151863524} 42 | m_Enabled: 1 43 | m_Density: 1 44 | m_Material: {fileID: 0} 45 | m_IsTrigger: 1 46 | m_UsedByEffector: 0 47 | m_UsedByComposite: 0 48 | m_Offset: {x: 0, y: 0} 49 | serializedVersion: 2 50 | m_Radius: 1.54 51 | --- !u!114 &114548681659973300 52 | MonoBehaviour: 53 | m_ObjectHideFlags: 0 54 | m_CorrespondingSourceObject: {fileID: 0} 55 | m_PrefabInstance: {fileID: 0} 56 | m_PrefabAsset: {fileID: 0} 57 | m_GameObject: {fileID: 1320577151863524} 58 | m_Enabled: 1 59 | m_EditorHideFlags: 0 60 | m_Script: {fileID: 11500000, guid: 787b4d396f3ff7847b565ae34bd0d6a6, type: 3} 61 | m_Name: 62 | m_EditorClassIdentifier: 63 | -------------------------------------------------------------------------------- /Assets/Resources/Prefabs/Locations/TestQuestLocation.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a64978a049f0d1546862750dc67095f8 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 100100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Resources/QuestCanvas.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 67992054fff88d34a9f4e42028414a38 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Resources/QuestCanvas/ABridgeTooFar.asset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b31527350f0d3cf4d80de0ac428b6741 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 11400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Resources/QuestCanvas/FlameLizards.asset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 82b0a886ac803144f85fbd32f021ae40 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 11400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Resources/QuestCanvas/RockGoblins.asset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: bb0aa04be03c00749acc9e9c9b380be9 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 11400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Resources/Quests.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: fc310f8877f679d4eb28c398706515d0 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Resources/Quests/A Bridge Too Far....asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!114 &11400000 4 | MonoBehaviour: 5 | m_ObjectHideFlags: 0 6 | m_CorrespondingSourceObject: {fileID: 0} 7 | m_PrefabInternal: {fileID: 0} 8 | m_GameObject: {fileID: 0} 9 | m_Enabled: 1 10 | m_EditorHideFlags: 0 11 | m_Script: {fileID: 11500000, guid: d8051ad29762a9e4bac28d409d693033, type: 3} 12 | m_Name: A Bridge Too Far... 13 | m_EditorClassIdentifier: 14 | questName: A Bridge Too Far... 15 | questGiver: {fileID: 1299864340470662, guid: c3f9ceb0f9c7fd34da5b5e65730cfe95, type: 2} 16 | -------------------------------------------------------------------------------- /Assets/Resources/Quests/A Bridge Too Far....asset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: fc99cda7a968a554080b6065a9be2fe4 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 11400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Resources/Quests/Flame Lizards.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!114 &11400000 4 | MonoBehaviour: 5 | m_ObjectHideFlags: 0 6 | m_CorrespondingSourceObject: {fileID: 0} 7 | m_PrefabInternal: {fileID: 0} 8 | m_GameObject: {fileID: 0} 9 | m_Enabled: 1 10 | m_EditorHideFlags: 0 11 | m_Script: {fileID: 11500000, guid: d8051ad29762a9e4bac28d409d693033, type: 3} 12 | m_Name: Flame Lizards 13 | m_EditorClassIdentifier: 14 | questName: Flame Lizards 15 | questGiver: {fileID: 1269463871297686, guid: 2a36daffaaaf2f64c9802bc58afa6980, type: 2} 16 | -------------------------------------------------------------------------------- /Assets/Resources/Quests/Flame Lizards.asset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d2259364cad59ae4894c157e42e7515b 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 11400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Resources/Quests/Kill Rock Goblins.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!114 &11400000 4 | MonoBehaviour: 5 | m_ObjectHideFlags: 0 6 | m_CorrespondingSourceObject: {fileID: 0} 7 | m_PrefabInternal: {fileID: 0} 8 | m_GameObject: {fileID: 0} 9 | m_Enabled: 1 10 | m_EditorHideFlags: 0 11 | m_Script: {fileID: 11500000, guid: d8051ad29762a9e4bac28d409d693033, type: 3} 12 | m_Name: Kill Rock Goblins 13 | m_EditorClassIdentifier: 14 | questName: Kill Rock Goblins 15 | questGiver: {fileID: 1611766483522690, guid: e980799e1ae36f7468f2e975cfc635d3, type: 2} 16 | -------------------------------------------------------------------------------- /Assets/Resources/Quests/Kill Rock Goblins.asset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a1d6d054404571644a266389347c634c 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 11400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Resources/Sprites.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4c3f9d6a771fee6479a007988661a9ad 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Resources/Sprites/Dialogue.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f552f373cc9438e4886fd82321060006 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Resources/Sprites/Dialogue/ExclamationDialogueBody.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mphilipp622/NodeBasedQuestEditor/8e33f7ad10235d52593a150326365d38cfcb76f4/Assets/Resources/Sprites/Dialogue/ExclamationDialogueBody.png -------------------------------------------------------------------------------- /Assets/Resources/Sprites/Dialogue/ExclamationDialogueBody.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4b22ee97e091c9c4cb524f8b6a908f9b 3 | TextureImporter: 4 | fileIDToRecycleName: {} 5 | externalObjects: {} 6 | serializedVersion: 5 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | grayScaleToAlpha: 0 25 | generateCubemap: 6 26 | cubemapConvolution: 0 27 | seamlessCubemap: 0 28 | textureFormat: 1 29 | maxTextureSize: 2048 30 | textureSettings: 31 | serializedVersion: 2 32 | filterMode: -1 33 | aniso: -1 34 | mipBias: -1 35 | wrapU: 1 36 | wrapV: 1 37 | wrapW: 1 38 | nPOTScale: 0 39 | lightmap: 0 40 | compressionQuality: 50 41 | spriteMode: 1 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spritePixelsToUnits: 100 47 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 48 | spriteGenerateFallbackPhysicsShape: 1 49 | alphaUsage: 1 50 | alphaIsTransparency: 1 51 | spriteTessellationDetail: -1 52 | textureType: 8 53 | textureShape: 1 54 | singleChannelComponent: 0 55 | maxTextureSizeSet: 0 56 | compressionQualitySet: 0 57 | textureFormatSet: 0 58 | platformSettings: 59 | - serializedVersion: 2 60 | buildTarget: DefaultTexturePlatform 61 | maxTextureSize: 2048 62 | resizeAlgorithm: 0 63 | textureFormat: -1 64 | textureCompression: 1 65 | compressionQuality: 50 66 | crunchedCompression: 0 67 | allowsAlphaSplitting: 0 68 | overridden: 0 69 | androidETC2FallbackOverride: 0 70 | spriteSheet: 71 | serializedVersion: 2 72 | sprites: [] 73 | outline: [] 74 | physicsShape: [] 75 | bones: [] 76 | spriteID: 690af310a2e65784990cdb6c819e1c7e 77 | vertices: [] 78 | indices: 79 | edges: [] 80 | weights: [] 81 | spritePackingTag: 82 | userData: 83 | assetBundleName: 84 | assetBundleVariant: 85 | -------------------------------------------------------------------------------- /Assets/Resources/Sprites/Dialogue/ExclamationDialogueTail.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mphilipp622/NodeBasedQuestEditor/8e33f7ad10235d52593a150326365d38cfcb76f4/Assets/Resources/Sprites/Dialogue/ExclamationDialogueTail.png -------------------------------------------------------------------------------- /Assets/Resources/Sprites/Dialogue/ExclamationDialogueTail.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1a5bbf1fc9cb4f644bef3add33ba5e33 3 | TextureImporter: 4 | fileIDToRecycleName: {} 5 | externalObjects: {} 6 | serializedVersion: 5 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | grayScaleToAlpha: 0 25 | generateCubemap: 6 26 | cubemapConvolution: 0 27 | seamlessCubemap: 0 28 | textureFormat: 1 29 | maxTextureSize: 2048 30 | textureSettings: 31 | serializedVersion: 2 32 | filterMode: -1 33 | aniso: -1 34 | mipBias: -1 35 | wrapU: 1 36 | wrapV: 1 37 | wrapW: 1 38 | nPOTScale: 0 39 | lightmap: 0 40 | compressionQuality: 50 41 | spriteMode: 1 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spritePixelsToUnits: 100 47 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 48 | spriteGenerateFallbackPhysicsShape: 1 49 | alphaUsage: 1 50 | alphaIsTransparency: 1 51 | spriteTessellationDetail: -1 52 | textureType: 8 53 | textureShape: 1 54 | singleChannelComponent: 0 55 | maxTextureSizeSet: 0 56 | compressionQualitySet: 0 57 | textureFormatSet: 0 58 | platformSettings: 59 | - serializedVersion: 2 60 | buildTarget: DefaultTexturePlatform 61 | maxTextureSize: 2048 62 | resizeAlgorithm: 0 63 | textureFormat: -1 64 | textureCompression: 1 65 | compressionQuality: 50 66 | crunchedCompression: 0 67 | allowsAlphaSplitting: 0 68 | overridden: 0 69 | androidETC2FallbackOverride: 0 70 | spriteSheet: 71 | serializedVersion: 2 72 | sprites: [] 73 | outline: [] 74 | physicsShape: [] 75 | bones: [] 76 | spriteID: e21c59e4930aab442b684d2bcee24a63 77 | vertices: [] 78 | indices: 79 | edges: [] 80 | weights: [] 81 | spritePackingTag: 82 | userData: 83 | assetBundleName: 84 | assetBundleVariant: 85 | -------------------------------------------------------------------------------- /Assets/Resources/Sprites/Dialogue/InnerMonologueBody.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mphilipp622/NodeBasedQuestEditor/8e33f7ad10235d52593a150326365d38cfcb76f4/Assets/Resources/Sprites/Dialogue/InnerMonologueBody.png -------------------------------------------------------------------------------- /Assets/Resources/Sprites/Dialogue/InnerMonologueBody.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4c977032fa56fb04f9e75393387d9d84 3 | TextureImporter: 4 | fileIDToRecycleName: {} 5 | externalObjects: {} 6 | serializedVersion: 5 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | grayScaleToAlpha: 0 25 | generateCubemap: 6 26 | cubemapConvolution: 0 27 | seamlessCubemap: 0 28 | textureFormat: 1 29 | maxTextureSize: 2048 30 | textureSettings: 31 | serializedVersion: 2 32 | filterMode: -1 33 | aniso: -1 34 | mipBias: -1 35 | wrapU: 1 36 | wrapV: 1 37 | wrapW: 1 38 | nPOTScale: 0 39 | lightmap: 0 40 | compressionQuality: 50 41 | spriteMode: 1 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spritePixelsToUnits: 100 47 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 48 | spriteGenerateFallbackPhysicsShape: 1 49 | alphaUsage: 1 50 | alphaIsTransparency: 1 51 | spriteTessellationDetail: -1 52 | textureType: 8 53 | textureShape: 1 54 | singleChannelComponent: 0 55 | maxTextureSizeSet: 0 56 | compressionQualitySet: 0 57 | textureFormatSet: 0 58 | platformSettings: 59 | - serializedVersion: 2 60 | buildTarget: DefaultTexturePlatform 61 | maxTextureSize: 2048 62 | resizeAlgorithm: 0 63 | textureFormat: -1 64 | textureCompression: 1 65 | compressionQuality: 50 66 | crunchedCompression: 0 67 | allowsAlphaSplitting: 0 68 | overridden: 0 69 | androidETC2FallbackOverride: 0 70 | spriteSheet: 71 | serializedVersion: 2 72 | sprites: [] 73 | outline: [] 74 | physicsShape: [] 75 | bones: [] 76 | spriteID: 81574e78d3d8d674dbe1a067cf497ede 77 | vertices: [] 78 | indices: 79 | edges: [] 80 | weights: [] 81 | spritePackingTag: 82 | userData: 83 | assetBundleName: 84 | assetBundleVariant: 85 | -------------------------------------------------------------------------------- /Assets/Resources/Sprites/Dialogue/InnerMonologueTail.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mphilipp622/NodeBasedQuestEditor/8e33f7ad10235d52593a150326365d38cfcb76f4/Assets/Resources/Sprites/Dialogue/InnerMonologueTail.png -------------------------------------------------------------------------------- /Assets/Resources/Sprites/Dialogue/InnerMonologueTail.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c8ea22174fd6270419b47cec4f4c3149 3 | TextureImporter: 4 | fileIDToRecycleName: {} 5 | externalObjects: {} 6 | serializedVersion: 5 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | grayScaleToAlpha: 0 25 | generateCubemap: 6 26 | cubemapConvolution: 0 27 | seamlessCubemap: 0 28 | textureFormat: 1 29 | maxTextureSize: 2048 30 | textureSettings: 31 | serializedVersion: 2 32 | filterMode: -1 33 | aniso: -1 34 | mipBias: -1 35 | wrapU: 1 36 | wrapV: 1 37 | wrapW: 1 38 | nPOTScale: 0 39 | lightmap: 0 40 | compressionQuality: 50 41 | spriteMode: 1 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spritePixelsToUnits: 100 47 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 48 | spriteGenerateFallbackPhysicsShape: 1 49 | alphaUsage: 1 50 | alphaIsTransparency: 1 51 | spriteTessellationDetail: -1 52 | textureType: 8 53 | textureShape: 1 54 | singleChannelComponent: 0 55 | maxTextureSizeSet: 0 56 | compressionQualitySet: 0 57 | textureFormatSet: 0 58 | platformSettings: 59 | - serializedVersion: 2 60 | buildTarget: DefaultTexturePlatform 61 | maxTextureSize: 2048 62 | resizeAlgorithm: 0 63 | textureFormat: -1 64 | textureCompression: 1 65 | compressionQuality: 50 66 | crunchedCompression: 0 67 | allowsAlphaSplitting: 0 68 | overridden: 0 69 | androidETC2FallbackOverride: 0 70 | spriteSheet: 71 | serializedVersion: 2 72 | sprites: [] 73 | outline: [] 74 | physicsShape: [] 75 | bones: [] 76 | spriteID: 85c2aaa6b53642441afc8a64f0fce0d9 77 | vertices: [] 78 | indices: 79 | edges: [] 80 | weights: [] 81 | spritePackingTag: 82 | userData: 83 | assetBundleName: 84 | assetBundleVariant: 85 | -------------------------------------------------------------------------------- /Assets/Resources/Sprites/Dialogue/LoopyDialogueBody.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mphilipp622/NodeBasedQuestEditor/8e33f7ad10235d52593a150326365d38cfcb76f4/Assets/Resources/Sprites/Dialogue/LoopyDialogueBody.png -------------------------------------------------------------------------------- /Assets/Resources/Sprites/Dialogue/LoopyDialogueBody.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 811ed2b985c3ad54d8696b0c53c49e87 3 | TextureImporter: 4 | fileIDToRecycleName: {} 5 | externalObjects: {} 6 | serializedVersion: 5 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | grayScaleToAlpha: 0 25 | generateCubemap: 6 26 | cubemapConvolution: 0 27 | seamlessCubemap: 0 28 | textureFormat: 1 29 | maxTextureSize: 2048 30 | textureSettings: 31 | serializedVersion: 2 32 | filterMode: -1 33 | aniso: -1 34 | mipBias: -1 35 | wrapU: 1 36 | wrapV: 1 37 | wrapW: 1 38 | nPOTScale: 0 39 | lightmap: 0 40 | compressionQuality: 50 41 | spriteMode: 1 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spritePixelsToUnits: 100 47 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 48 | spriteGenerateFallbackPhysicsShape: 1 49 | alphaUsage: 1 50 | alphaIsTransparency: 1 51 | spriteTessellationDetail: -1 52 | textureType: 8 53 | textureShape: 1 54 | singleChannelComponent: 0 55 | maxTextureSizeSet: 0 56 | compressionQualitySet: 0 57 | textureFormatSet: 0 58 | platformSettings: 59 | - serializedVersion: 2 60 | buildTarget: DefaultTexturePlatform 61 | maxTextureSize: 2048 62 | resizeAlgorithm: 0 63 | textureFormat: -1 64 | textureCompression: 1 65 | compressionQuality: 50 66 | crunchedCompression: 0 67 | allowsAlphaSplitting: 0 68 | overridden: 0 69 | androidETC2FallbackOverride: 0 70 | spriteSheet: 71 | serializedVersion: 2 72 | sprites: [] 73 | outline: [] 74 | physicsShape: [] 75 | bones: [] 76 | spriteID: bd04430f681fbf14cb4f63d39eb43701 77 | vertices: [] 78 | indices: 79 | edges: [] 80 | weights: [] 81 | spritePackingTag: 82 | userData: 83 | assetBundleName: 84 | assetBundleVariant: 85 | -------------------------------------------------------------------------------- /Assets/Resources/Sprites/Dialogue/LoopyDialogueTail.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mphilipp622/NodeBasedQuestEditor/8e33f7ad10235d52593a150326365d38cfcb76f4/Assets/Resources/Sprites/Dialogue/LoopyDialogueTail.png -------------------------------------------------------------------------------- /Assets/Resources/Sprites/Dialogue/LoopyDialogueTail.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: bc014072b4737204c9e33841851e3327 3 | TextureImporter: 4 | fileIDToRecycleName: {} 5 | externalObjects: {} 6 | serializedVersion: 5 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | grayScaleToAlpha: 0 25 | generateCubemap: 6 26 | cubemapConvolution: 0 27 | seamlessCubemap: 0 28 | textureFormat: 1 29 | maxTextureSize: 2048 30 | textureSettings: 31 | serializedVersion: 2 32 | filterMode: -1 33 | aniso: -1 34 | mipBias: -1 35 | wrapU: 1 36 | wrapV: 1 37 | wrapW: 1 38 | nPOTScale: 0 39 | lightmap: 0 40 | compressionQuality: 50 41 | spriteMode: 1 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spritePixelsToUnits: 100 47 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 48 | spriteGenerateFallbackPhysicsShape: 1 49 | alphaUsage: 1 50 | alphaIsTransparency: 1 51 | spriteTessellationDetail: -1 52 | textureType: 8 53 | textureShape: 1 54 | singleChannelComponent: 0 55 | maxTextureSizeSet: 0 56 | compressionQualitySet: 0 57 | textureFormatSet: 0 58 | platformSettings: 59 | - serializedVersion: 2 60 | buildTarget: DefaultTexturePlatform 61 | maxTextureSize: 2048 62 | resizeAlgorithm: 0 63 | textureFormat: -1 64 | textureCompression: 1 65 | compressionQuality: 50 66 | crunchedCompression: 0 67 | allowsAlphaSplitting: 0 68 | overridden: 0 69 | androidETC2FallbackOverride: 0 70 | spriteSheet: 71 | serializedVersion: 2 72 | sprites: [] 73 | outline: [] 74 | physicsShape: [] 75 | bones: [] 76 | spriteID: 00ae9bdb58e68cf4fb72d730ca0d6709 77 | vertices: [] 78 | indices: 79 | edges: [] 80 | weights: [] 81 | spritePackingTag: 82 | userData: 83 | assetBundleName: 84 | assetBundleVariant: 85 | -------------------------------------------------------------------------------- /Assets/Resources/Sprites/Dialogue/NormalDialogueBody.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mphilipp622/NodeBasedQuestEditor/8e33f7ad10235d52593a150326365d38cfcb76f4/Assets/Resources/Sprites/Dialogue/NormalDialogueBody.png -------------------------------------------------------------------------------- /Assets/Resources/Sprites/Dialogue/NormalDialogueBody.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: de692ed5e3054c944aad24b5273ffc40 3 | TextureImporter: 4 | fileIDToRecycleName: {} 5 | externalObjects: {} 6 | serializedVersion: 5 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | grayScaleToAlpha: 0 25 | generateCubemap: 6 26 | cubemapConvolution: 0 27 | seamlessCubemap: 0 28 | textureFormat: 1 29 | maxTextureSize: 2048 30 | textureSettings: 31 | serializedVersion: 2 32 | filterMode: -1 33 | aniso: -1 34 | mipBias: -1 35 | wrapU: 1 36 | wrapV: 1 37 | wrapW: 1 38 | nPOTScale: 0 39 | lightmap: 0 40 | compressionQuality: 50 41 | spriteMode: 1 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spritePixelsToUnits: 100 47 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 48 | spriteGenerateFallbackPhysicsShape: 1 49 | alphaUsage: 1 50 | alphaIsTransparency: 1 51 | spriteTessellationDetail: -1 52 | textureType: 8 53 | textureShape: 1 54 | singleChannelComponent: 0 55 | maxTextureSizeSet: 0 56 | compressionQualitySet: 0 57 | textureFormatSet: 0 58 | platformSettings: 59 | - serializedVersion: 2 60 | buildTarget: DefaultTexturePlatform 61 | maxTextureSize: 2048 62 | resizeAlgorithm: 0 63 | textureFormat: -1 64 | textureCompression: 1 65 | compressionQuality: 50 66 | crunchedCompression: 0 67 | allowsAlphaSplitting: 0 68 | overridden: 0 69 | androidETC2FallbackOverride: 0 70 | spriteSheet: 71 | serializedVersion: 2 72 | sprites: [] 73 | outline: [] 74 | physicsShape: [] 75 | bones: [] 76 | spriteID: cf50e76fce8120a438d2a43d68683b76 77 | vertices: [] 78 | indices: 79 | edges: [] 80 | weights: [] 81 | spritePackingTag: 82 | userData: 83 | assetBundleName: 84 | assetBundleVariant: 85 | -------------------------------------------------------------------------------- /Assets/Resources/Sprites/Dialogue/NormalDialogueTail.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mphilipp622/NodeBasedQuestEditor/8e33f7ad10235d52593a150326365d38cfcb76f4/Assets/Resources/Sprites/Dialogue/NormalDialogueTail.png -------------------------------------------------------------------------------- /Assets/Resources/Sprites/Dialogue/NormalDialogueTail.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 809053c0d8c2234409af389ffe9cb468 3 | TextureImporter: 4 | fileIDToRecycleName: {} 5 | externalObjects: {} 6 | serializedVersion: 5 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | grayScaleToAlpha: 0 25 | generateCubemap: 6 26 | cubemapConvolution: 0 27 | seamlessCubemap: 0 28 | textureFormat: 1 29 | maxTextureSize: 2048 30 | textureSettings: 31 | serializedVersion: 2 32 | filterMode: -1 33 | aniso: -1 34 | mipBias: -1 35 | wrapU: 1 36 | wrapV: 1 37 | wrapW: 1 38 | nPOTScale: 0 39 | lightmap: 0 40 | compressionQuality: 50 41 | spriteMode: 1 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spritePixelsToUnits: 100 47 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 48 | spriteGenerateFallbackPhysicsShape: 1 49 | alphaUsage: 1 50 | alphaIsTransparency: 1 51 | spriteTessellationDetail: -1 52 | textureType: 8 53 | textureShape: 1 54 | singleChannelComponent: 0 55 | maxTextureSizeSet: 0 56 | compressionQualitySet: 0 57 | textureFormatSet: 0 58 | platformSettings: 59 | - serializedVersion: 2 60 | buildTarget: DefaultTexturePlatform 61 | maxTextureSize: 2048 62 | resizeAlgorithm: 0 63 | textureFormat: -1 64 | textureCompression: 1 65 | compressionQuality: 50 66 | crunchedCompression: 0 67 | allowsAlphaSplitting: 0 68 | overridden: 0 69 | androidETC2FallbackOverride: 0 70 | spriteSheet: 71 | serializedVersion: 2 72 | sprites: [] 73 | outline: [] 74 | physicsShape: [] 75 | bones: [] 76 | spriteID: de04d916d7e4982428a1780909bb243c 77 | vertices: [] 78 | indices: 79 | edges: [] 80 | weights: [] 81 | spritePackingTag: 82 | userData: 83 | assetBundleName: 84 | assetBundleVariant: 85 | -------------------------------------------------------------------------------- /Assets/Resources/Sprites/EditorUI.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6a5db37530b76ad408484292912d315d 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Resources/Sprites/EditorUI/DeleteButton.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mphilipp622/NodeBasedQuestEditor/8e33f7ad10235d52593a150326365d38cfcb76f4/Assets/Resources/Sprites/EditorUI/DeleteButton.png -------------------------------------------------------------------------------- /Assets/Resources/Sprites/EditorUI/DeleteButton.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2197f4a3f1ff3c4498a16bc74891a0cf 3 | TextureImporter: 4 | fileIDToRecycleName: {} 5 | externalObjects: {} 6 | serializedVersion: 5 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | grayScaleToAlpha: 0 25 | generateCubemap: 6 26 | cubemapConvolution: 0 27 | seamlessCubemap: 0 28 | textureFormat: 1 29 | maxTextureSize: 2048 30 | textureSettings: 31 | serializedVersion: 2 32 | filterMode: -1 33 | aniso: -1 34 | mipBias: -1 35 | wrapU: 1 36 | wrapV: 1 37 | wrapW: 1 38 | nPOTScale: 0 39 | lightmap: 0 40 | compressionQuality: 50 41 | spriteMode: 1 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spritePixelsToUnits: 100 47 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 48 | spriteGenerateFallbackPhysicsShape: 1 49 | alphaUsage: 1 50 | alphaIsTransparency: 1 51 | spriteTessellationDetail: -1 52 | textureType: 8 53 | textureShape: 1 54 | singleChannelComponent: 0 55 | maxTextureSizeSet: 0 56 | compressionQualitySet: 0 57 | textureFormatSet: 0 58 | platformSettings: 59 | - serializedVersion: 2 60 | buildTarget: DefaultTexturePlatform 61 | maxTextureSize: 2048 62 | resizeAlgorithm: 0 63 | textureFormat: -1 64 | textureCompression: 1 65 | compressionQuality: 50 66 | crunchedCompression: 0 67 | allowsAlphaSplitting: 0 68 | overridden: 0 69 | androidETC2FallbackOverride: 0 70 | spriteSheet: 71 | serializedVersion: 2 72 | sprites: [] 73 | outline: [] 74 | physicsShape: [] 75 | bones: [] 76 | spriteID: 6a34e56192bade348a79945e5baa704d 77 | vertices: [] 78 | indices: 79 | edges: [] 80 | weights: [] 81 | spritePackingTag: 82 | userData: 83 | assetBundleName: 84 | assetBundleVariant: 85 | -------------------------------------------------------------------------------- /Assets/Resources/Sprites/EditorUI/DownArrow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mphilipp622/NodeBasedQuestEditor/8e33f7ad10235d52593a150326365d38cfcb76f4/Assets/Resources/Sprites/EditorUI/DownArrow.png -------------------------------------------------------------------------------- /Assets/Resources/Sprites/EditorUI/DownArrow.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 50aaa5568db0b5e4dacebe864a1f1772 3 | TextureImporter: 4 | fileIDToRecycleName: {} 5 | externalObjects: {} 6 | serializedVersion: 5 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | grayScaleToAlpha: 0 25 | generateCubemap: 6 26 | cubemapConvolution: 0 27 | seamlessCubemap: 0 28 | textureFormat: 1 29 | maxTextureSize: 2048 30 | textureSettings: 31 | serializedVersion: 2 32 | filterMode: -1 33 | aniso: -1 34 | mipBias: -1 35 | wrapU: 1 36 | wrapV: 1 37 | wrapW: 1 38 | nPOTScale: 0 39 | lightmap: 0 40 | compressionQuality: 50 41 | spriteMode: 1 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spritePixelsToUnits: 100 47 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 48 | spriteGenerateFallbackPhysicsShape: 1 49 | alphaUsage: 1 50 | alphaIsTransparency: 1 51 | spriteTessellationDetail: -1 52 | textureType: 8 53 | textureShape: 1 54 | singleChannelComponent: 0 55 | maxTextureSizeSet: 0 56 | compressionQualitySet: 0 57 | textureFormatSet: 0 58 | platformSettings: 59 | - serializedVersion: 2 60 | buildTarget: DefaultTexturePlatform 61 | maxTextureSize: 2048 62 | resizeAlgorithm: 0 63 | textureFormat: -1 64 | textureCompression: 1 65 | compressionQuality: 50 66 | crunchedCompression: 0 67 | allowsAlphaSplitting: 0 68 | overridden: 0 69 | androidETC2FallbackOverride: 0 70 | spriteSheet: 71 | serializedVersion: 2 72 | sprites: [] 73 | outline: [] 74 | physicsShape: [] 75 | bones: [] 76 | spriteID: 26d8c657082fcd64e976c9769fff1248 77 | vertices: [] 78 | indices: 79 | edges: [] 80 | weights: [] 81 | spritePackingTag: 82 | userData: 83 | assetBundleName: 84 | assetBundleVariant: 85 | -------------------------------------------------------------------------------- /Assets/Resources/Sprites/EditorUI/UpArrow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mphilipp622/NodeBasedQuestEditor/8e33f7ad10235d52593a150326365d38cfcb76f4/Assets/Resources/Sprites/EditorUI/UpArrow.png -------------------------------------------------------------------------------- /Assets/Resources/Sprites/EditorUI/UpArrow.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5210f3e72102b1040af10c5e6e4b524d 3 | TextureImporter: 4 | fileIDToRecycleName: {} 5 | externalObjects: {} 6 | serializedVersion: 5 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | grayScaleToAlpha: 0 25 | generateCubemap: 6 26 | cubemapConvolution: 0 27 | seamlessCubemap: 0 28 | textureFormat: 1 29 | maxTextureSize: 2048 30 | textureSettings: 31 | serializedVersion: 2 32 | filterMode: -1 33 | aniso: -1 34 | mipBias: -1 35 | wrapU: 1 36 | wrapV: 1 37 | wrapW: 1 38 | nPOTScale: 0 39 | lightmap: 0 40 | compressionQuality: 50 41 | spriteMode: 1 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spritePixelsToUnits: 100 47 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 48 | spriteGenerateFallbackPhysicsShape: 1 49 | alphaUsage: 1 50 | alphaIsTransparency: 1 51 | spriteTessellationDetail: -1 52 | textureType: 8 53 | textureShape: 1 54 | singleChannelComponent: 0 55 | maxTextureSizeSet: 0 56 | compressionQualitySet: 0 57 | textureFormatSet: 0 58 | platformSettings: 59 | - serializedVersion: 2 60 | buildTarget: DefaultTexturePlatform 61 | maxTextureSize: 2048 62 | resizeAlgorithm: 0 63 | textureFormat: -1 64 | textureCompression: 1 65 | compressionQuality: 50 66 | crunchedCompression: 0 67 | allowsAlphaSplitting: 0 68 | overridden: 0 69 | androidETC2FallbackOverride: 0 70 | spriteSheet: 71 | serializedVersion: 2 72 | sprites: [] 73 | outline: [] 74 | physicsShape: [] 75 | bones: [] 76 | spriteID: c3998a3d7cf668e40ba71fee4f826263 77 | vertices: [] 78 | indices: 79 | edges: [] 80 | weights: [] 81 | spritePackingTag: 82 | userData: 83 | assetBundleName: 84 | assetBundleVariant: 85 | -------------------------------------------------------------------------------- /Assets/Scenes.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 131a6b21c8605f84396be9f6751fb6e3 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Scenes/SampleScene.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2cda990e2423bbf4892e6590ba056729 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/Scripts.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1a252742487a25046ad2c68f60583b55 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Scripts/Animations.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 31e492d3bce2e3542af05b2d85b51d2e 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Scripts/Animations/AnimationManager.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | 5 | [RequireComponent(typeof(Animator))] 6 | public class AnimationManager : MonoBehaviour 7 | { 8 | // Animator Component 9 | [SerializeField] 10 | Animator thisAnimator; 11 | 12 | // will be used for idle animations. We want to know which way we were facing last 13 | float xDirPrevious, yDirPrevious; 14 | 15 | private void Awake() 16 | { 17 | ErrorCheck(); 18 | } 19 | 20 | void Start () 21 | { 22 | 23 | } 24 | 25 | void Update () 26 | { 27 | 28 | } 29 | 30 | private void ErrorCheck() 31 | { 32 | // Check Animator Component for Errors 33 | if (!thisAnimator) 34 | { 35 | thisAnimator = GetComponent(); // Attempt to get the animator. 36 | if (!thisAnimator) // if we still don't have an animator, throw console error 37 | Debug.LogError("ERROR: thisAnimator component must be assigned on object " + gameObject.name); 38 | } 39 | } 40 | 41 | /// 42 | /// Sets Blend Tree x and y direction values so that the animation updates accordingly. 43 | /// Will also set the previous x and y directions. 44 | /// 45 | /// New x direction of object 46 | /// New y direction of object 47 | /// previous x direction of object 48 | /// previous y direction of objects 49 | /// Boolean to determine if object is moving or not 50 | public void SetDirection(float newXDirection, float newYDirection, float prevX, float prevY, bool isMoving) 51 | { 52 | thisAnimator.SetFloat("xDir", newXDirection); 53 | thisAnimator.SetFloat("yDir", newYDirection); 54 | thisAnimator.SetFloat("xDirLast", prevX); 55 | thisAnimator.SetFloat("yDirLast", prevY); 56 | 57 | thisAnimator.SetBool("Movement", isMoving); // set whether we should be in idle or movement animation states 58 | } 59 | } 60 | -------------------------------------------------------------------------------- /Assets/Scripts/Animations/AnimationManager.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: cd2fcb0e03746e544a8aead092932e41 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Scripts/DataStructures.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f303fc5c723b2b248a9f215e2ea6a566 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Scripts/DataStructures/Tuple.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b5ef6bfe985d3d743b2e0ff4e3525002 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Scripts/DataStructures/Tuple2.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6ee2364aa58816f47812fcd54eec7308 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Scripts/DataStructures/Tuple3.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 031c3ce722d0ca149aa95472718a974e 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Scripts/DataStructures/Tuple4.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 166c52969a435164db85ea0655cb22a3 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Scripts/DesignPatterns.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: bd00ccfcccdc51041ab94ecd7a1f0159 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Scripts/DesignPatterns/Callback.cs: -------------------------------------------------------------------------------- 1 | public delegate void Callback(); 2 | public delegate void Callback(T arg1); 3 | public delegate void Callback(T arg1, U arg2); 4 | public delegate void Callback(T arg1, U arg2, V arg3); -------------------------------------------------------------------------------- /Assets/Scripts/DesignPatterns/Callback.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1a9509a8782b2cc42ad7faeb2e1f301a 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Scripts/DesignPatterns/Messenger.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 71fce9984fef5804c82ab2e767f26a7f 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Scripts/Dialogue.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d6e05e39deb0b114ca0fce07f0655e6f 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Scripts/Dialogue/ConversationHandler.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: aebaf92a9737a054e837fed5c97021f7 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Scripts/Dialogue/DialogueBox.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a25e483b126631e4cb99f587bad089c0 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Scripts/Dialogue/DialogueFSM.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e2983ebdad4bdc54d94146f8fdc38c3e 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Scripts/Dialogue/DialogueLoader.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ffd9edd474574624599eb001c7481a2d 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Scripts/Dialogue/DialogueManager.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9eed1fe9d812fa14991249180eed3d06 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: 7 | - dialogueBoxPrefab: {instanceID: 0} 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Scripts/Dialogue/DialogueState.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0cab8d48b95756f47b2a5bc8b7f1a742 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Scripts/EditorTools.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0e7d86090b98b2b48b6648448e40b94e 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Scripts/EditorTools/GameStateAsset.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | 5 | public class GameStateAsset : ScriptableObject 6 | { 7 | public List gameStates; 8 | 9 | public void Initialize() 10 | { 11 | gameStates = new List(); 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /Assets/Scripts/EditorTools/GameStateAsset.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 08c9ea4dfa315a745999e19617b3c5db 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Scripts/EditorTools/GameStateCheckerEditor.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | using UnityEditor; 5 | 6 | [CustomEditor(typeof(GameStateChecker), true)] 7 | [CanEditMultipleObjects] 8 | public class GameStateCheckerEditor : Editor 9 | { 10 | private GameStateAsset gameState; 11 | 12 | private bool addState, removeState; 13 | 14 | public List requiredStateSelections; 15 | 16 | private GameStateChecker checker; 17 | 18 | private Vector2 scrollPosition; 19 | 20 | private void OnEnable() 21 | { 22 | checker = (GameStateChecker)target; 23 | 24 | gameState = Resources.Load("GameState/GameStateData"); 25 | 26 | requiredStateSelections = new List(); 27 | 28 | // Load serialized data from GameStateChecker into our lists. 29 | for (int i = 0; i < gameState.gameStates.Count; i++) 30 | { 31 | if (checker.GetRequiredStates().Contains(gameState.gameStates[i].eventName)) 32 | requiredStateSelections.Add(true); 33 | else 34 | requiredStateSelections.Add(false); 35 | } 36 | } 37 | 38 | public override void OnInspectorGUI() 39 | { 40 | DisplayGameStates(); 41 | 42 | //EditorUtility.SetDirty(checker); 43 | } 44 | 45 | private void DisplayGameStates() 46 | { 47 | GUILayout.Space(5); 48 | 49 | GUILayout.Label("Select Required States"); 50 | 51 | EditorGUILayout.LabelField("", GUI.skin.horizontalSlider); 52 | 53 | GUILayout.Space(5); 54 | 55 | scrollPosition = GUILayout.BeginScrollView(scrollPosition, GUILayout.Height(100)); 56 | 57 | EditorGUIUtility.labelWidth = 250; 58 | for (int i = 0; i < gameState.gameStates.Count; i++) 59 | { 60 | GUILayout.BeginHorizontal(); 61 | 62 | requiredStateSelections[i] = EditorGUILayout.Toggle(new GUIContent(gameState.gameStates[i].eventName, "Select this box to add this game state to the list of required states"), requiredStateSelections[i]); 63 | 64 | if (requiredStateSelections[i]) 65 | checker.AddRequiredState(gameState.gameStates[i].eventName); 66 | else 67 | checker.RemoveRequiredState(gameState.gameStates[i].eventName); 68 | 69 | GUILayout.EndHorizontal(); 70 | } 71 | 72 | EditorGUIUtility.labelWidth = 0; 73 | 74 | GUILayout.EndScrollView(); 75 | 76 | } 77 | } 78 | -------------------------------------------------------------------------------- /Assets/Scripts/EditorTools/GameStateCheckerEditor.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b87b53d6a8765cb498bbcd4bc759a826 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Scripts/EditorTools/GameStateName.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | 5 | public class GameStateName : ScriptableObject 6 | { 7 | public string eventName; 8 | } 9 | -------------------------------------------------------------------------------- /Assets/Scripts/EditorTools/GameStateName.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a5900db68aa568149abc9b0c1288041b 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Scripts/EditorTools/GameStateWindow.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: be822baccbb3abb40aeaf7803f34857d 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Scripts/Enemies.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 40d8a50062f092a45aa2acb7eb3656a8 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Scripts/Enemies/Enemy.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | 5 | public class Enemy : MonoBehaviour 6 | { 7 | [SerializeField] 8 | protected int hp; 9 | 10 | [SerializeField] 11 | protected float moveSpeed; 12 | 13 | [SerializeField] 14 | protected int defense; 15 | 16 | [SerializeField] 17 | protected int attack; 18 | 19 | [SerializeField] 20 | protected string name; 21 | 22 | void Start () 23 | { 24 | 25 | } 26 | 27 | void Update () 28 | { 29 | 30 | } 31 | 32 | 33 | /// 34 | /// Kills enemy and sends a message to quest objectives for updating. 35 | /// 36 | protected void Die() 37 | { 38 | // EnemyObjective class listens for this message 39 | Messenger.Broadcast("Enemy Killed", this); 40 | } 41 | 42 | public int GetHP() 43 | { 44 | return hp; 45 | } 46 | 47 | public float GetMoveSpeed() 48 | { 49 | return moveSpeed; 50 | } 51 | 52 | public int GetDefense() 53 | { 54 | return defense; 55 | } 56 | 57 | public int GetAttack() 58 | { 59 | return attack; 60 | } 61 | 62 | public string GetName() 63 | { 64 | return name; 65 | } 66 | } 67 | -------------------------------------------------------------------------------- /Assets/Scripts/Enemies/Enemy.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0d3b21812af26ac4f9f7a2e5472e8b99 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Scripts/Enemies/FlameLizard.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | 5 | public class FlameLizard : Enemy { 6 | 7 | void Start () 8 | { 9 | 10 | } 11 | 12 | void Update () 13 | { 14 | // This is for testing purposes. When you press J, a flame lizard will die. Requires Flame Lizard prefab to exist in scene. EnemyObjective class listens for this. 15 | if (Input.GetKeyDown(KeyCode.J)) 16 | Messenger.Broadcast("Enemy Killed", this); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /Assets/Scripts/Enemies/FlameLizard.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a59d4a842a085004aa036060e4762f56 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Scripts/Enemies/RockGoblin.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | 5 | public class RockGoblin : Enemy 6 | { 7 | 8 | void Start () 9 | { 10 | 11 | } 12 | 13 | void Update () 14 | { 15 | // This is for testing purposes. When you press K, a Rock Goblin will die. Requires rock goblin prefab to exist in scene. 16 | if (Input.GetKeyDown(KeyCode.K)) 17 | Messenger.Broadcast("Enemy Killed", this); 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /Assets/Scripts/Enemies/RockGoblin.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5c215e4480a09ac4a8345ac73951218c 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Scripts/GameState.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b788e612981a7764ab25ae6dc7dd7fa8 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Scripts/GameState/GameState.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a15b60af9cf833040a1d715df0e7710c 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Scripts/GameState/GameStateChecker.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | 5 | 6 | public abstract class GameStateChecker : MonoBehaviour 7 | { 8 | [SerializeField] 9 | private List requiredStates; 10 | 11 | protected abstract void ExecuteProcedure(); 12 | 13 | protected abstract void RevertExecution(); 14 | 15 | protected abstract void Initialize(); 16 | 17 | protected virtual void OnEnable() 18 | { 19 | InitListeners(); 20 | } 21 | 22 | protected virtual void OnDisable() 23 | { 24 | DisableListeners(); 25 | } 26 | 27 | /// 28 | /// Initializes messenger listening for each possible state in the game. 29 | /// 30 | protected void InitListeners() 31 | { 32 | Messenger.AddListener("Game State Update", CheckStatesAndExecute); 33 | } 34 | 35 | /// 36 | /// Disables messenger listening for each possible state in the game. 37 | /// 38 | protected void DisableListeners() 39 | { 40 | Messenger.RemoveListener("Game State Update", CheckStatesAndExecute); 41 | } 42 | 43 | /// 44 | /// Checks with GameState.cs to see if all the required states are unlocked. Executes this object's procedure if 45 | /// all states are unlocked. 46 | /// 47 | /// 48 | protected void CheckStatesAndExecute(string stateName) 49 | { 50 | if (GameState.gameState.AreAllStatesUnlocked(requiredStates)) 51 | ExecuteProcedure(); 52 | else 53 | RevertExecution(); 54 | } 55 | 56 | /// 57 | /// Returns a list of required states on this object. 58 | /// 59 | public List GetRequiredStates() 60 | { 61 | if (requiredStates == null) 62 | requiredStates = new List(); 63 | 64 | return requiredStates; 65 | } 66 | 67 | /// 68 | /// Adds a state to the list of required states on this object. 69 | /// 70 | public void AddRequiredState(string stateName) 71 | { 72 | if (requiredStates == null) 73 | requiredStates = new List(); 74 | 75 | if (requiredStates.Contains(stateName)) 76 | return; 77 | 78 | requiredStates.Add(stateName); 79 | } 80 | 81 | /// 82 | /// Removes a state from the list of required states on this object. 83 | /// 84 | public void RemoveRequiredState(string stateName) 85 | { 86 | if (requiredStates == null) 87 | requiredStates = new List(); 88 | 89 | if (!requiredStates.Contains(stateName)) 90 | return; 91 | 92 | requiredStates.Remove(stateName); 93 | } 94 | } 95 | -------------------------------------------------------------------------------- /Assets/Scripts/GameState/GameStateChecker.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9086f3fd66046fb4bbd76b4eb702a79e 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Scripts/GameState/LocationBlocker.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | 5 | public class LocationBlocker : GameStateChecker 6 | { 7 | 8 | private Collider2D collider; 9 | 10 | void Start () 11 | { 12 | Initialize(); 13 | } 14 | 15 | void Update () 16 | { 17 | 18 | } 19 | 20 | protected override void Initialize() 21 | { 22 | collider = GetComponent(); 23 | } 24 | 25 | protected override void ExecuteProcedure() 26 | { 27 | Debug.Log("Disabling Collider"); 28 | collider.enabled = false; 29 | //Destroy(gameObject); 30 | } 31 | 32 | protected override void RevertExecution() 33 | { 34 | Debug.Log("Enabling Collider"); 35 | collider.enabled = true; 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /Assets/Scripts/GameState/LocationBlocker.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: bb30ce104de9140448735e1810dfc7d0 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Scripts/GameState/NPCLoader.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | 5 | /// 6 | /// Enables an NPC when a set of game states is true. 7 | /// 8 | public class NPCLoader : GameStateChecker 9 | { 10 | 11 | void Start () 12 | { 13 | //Initialize(); 14 | } 15 | 16 | void Update () 17 | { 18 | 19 | } 20 | 21 | protected override void Initialize() 22 | { 23 | 24 | // Disable all components at start. 25 | for (int i = 0; i < transform.childCount; i++) 26 | transform.GetChild(i).gameObject.SetActive(false); 27 | 28 | foreach (Behaviour comp in gameObject.GetComponents(typeof(Behaviour))) 29 | { 30 | if (comp.GetType() == typeof(NPCLoader)) 31 | continue; 32 | 33 | comp.enabled = false; 34 | } 35 | 36 | foreach (Renderer rend in gameObject.GetComponents(typeof(Renderer))) 37 | rend.enabled = false; 38 | } 39 | 40 | protected override void ExecuteProcedure() 41 | { 42 | // Enable all components when conditions are met. 43 | for (int i = 0; i < transform.childCount; i++) 44 | transform.GetChild(i).gameObject.SetActive(true); 45 | 46 | foreach (Behaviour comp in gameObject.GetComponents(typeof(Behaviour))) 47 | comp.enabled = true; 48 | 49 | foreach (Renderer rend in gameObject.GetComponents(typeof(Renderer))) 50 | rend.enabled = true; 51 | } 52 | 53 | protected override void RevertExecution() 54 | { 55 | // Disable all components when reverting. 56 | for (int i = 0; i < transform.childCount; i++) 57 | transform.GetChild(i).gameObject.SetActive(false); 58 | 59 | foreach (Behaviour comp in gameObject.GetComponents(typeof(Behaviour))) 60 | comp.enabled = false; 61 | 62 | foreach (Renderer rend in gameObject.GetComponents(typeof(Renderer))) 63 | rend.enabled = false; 64 | } 65 | } 66 | -------------------------------------------------------------------------------- /Assets/Scripts/GameState/NPCLoader.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 04b1441945f4f704981e4ce91835f528 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Scripts/HUD.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f6ac62cdb934c3c4db08f6993bf2e5f6 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Scripts/HUD/DisplayNPCInteraction.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | 5 | public class DisplayNPCInteraction : MonoBehaviour 6 | { 7 | 8 | [SerializeField] 9 | GameObject interactionIcon; 10 | 11 | private void Awake() 12 | { 13 | ErrorCheck(); 14 | } 15 | void Start () 16 | { 17 | interactionIcon.SetActive(false); // set the interaction icon to false by default. 18 | } 19 | 20 | void Update () 21 | { 22 | 23 | } 24 | 25 | private void OnTriggerEnter2D(Collider2D collision) 26 | { 27 | if (collision.tag == "Player") 28 | // turn on icon if player enters trigger. 29 | interactionIcon.SetActive(true); 30 | } 31 | 32 | private void OnTriggerExit2D(Collider2D collision) 33 | { 34 | if (collision.tag == "Player") 35 | // turn off the icon if player leaves trigger 36 | interactionIcon.SetActive(false); 37 | } 38 | 39 | void ErrorCheck() 40 | { 41 | // check for interaction icon. Interaction icon is the icon that displays above an npc's head to let the player know they can press a key to interact with them. 42 | if (!interactionIcon) 43 | { 44 | // if the gameObject is not assigned yet in inspector, then do a get component to assign ti. 45 | interactionIcon = transform.Find("SelectionIcon").gameObject; 46 | 47 | if (!interactionIcon) 48 | // if we STILL don't have the child game object, then that means the npc does not have the child. Quit if so. 49 | Debug.LogError("ERROR: GameObject is missing InteractionIcon child: " + transform.name); 50 | } 51 | } 52 | } 53 | -------------------------------------------------------------------------------- /Assets/Scripts/HUD/DisplayNPCInteraction.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 220291d22e8d1484ebc14c53e0afba24 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Scripts/Interaction.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2d95dc5ddbd4e8346812819c37ad625b 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Scripts/Interaction/PlayerToNPCInteraction.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | 5 | public class PlayerToNPCInteraction : MonoBehaviour 6 | { 7 | [SerializeField] 8 | private DialogueManager playerDialogueManager; 9 | 10 | [SerializeField] 11 | private QuestHandler playerQuestHandler; 12 | 13 | void Start () 14 | { 15 | InitializeScripts(); 16 | } 17 | 18 | void Update () 19 | { 20 | if (Input.GetButtonDown("InteractDialogue")) 21 | // Player input to interact with an NPC 22 | DialogueInteraction(); 23 | else if (Input.GetButtonDown("InteractQuest")) 24 | QuestInteraction(); 25 | else if (Input.GetButtonDown("InteractTurnInQuest")) 26 | TurnInQuest(); 27 | } 28 | 29 | /// 30 | /// Initialize the dialogue manager and quest handler on the player 31 | /// 32 | void InitializeScripts() 33 | { 34 | if (!playerDialogueManager) 35 | playerDialogueManager = GetComponent(); 36 | if (!playerQuestHandler) 37 | playerQuestHandler = GetComponent(); 38 | 39 | if (!playerDialogueManager) 40 | Debug.LogError("ERROR: Player must contain DialogueManager script"); 41 | if (!playerQuestHandler) 42 | Debug.LogError("ERROR: PLayer must contain QuestHandler script"); 43 | } 44 | 45 | /// 46 | /// Will attempt to perform a dialogue interaction with an NPC 47 | /// 48 | private void DialogueInteraction() 49 | { 50 | playerDialogueManager.CheckForAndActivateConversation(); 51 | } 52 | 53 | /// 54 | /// Will attempt to get a quest from an NPC 55 | /// 56 | private void QuestInteraction() 57 | { 58 | playerQuestHandler.StartQuestDialogue(); 59 | } 60 | 61 | /// 62 | /// Will attempt to turn in a quest. 63 | /// 64 | private void TurnInQuest() 65 | { 66 | playerQuestHandler.TurnInQuest(); 67 | } 68 | } 69 | -------------------------------------------------------------------------------- /Assets/Scripts/Interaction/PlayerToNPCInteraction.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 05b8b77c12675794c9ee0ccde5e8ef25 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Scripts/Movement.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 54fda02ab492bc04f9f98f672f57b90f 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Scripts/Movement/PlayerMove.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 82b9319ba57932c409b6aac2f23ab544 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Scripts/Quest.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8382e3b7677f42d4c966c36375d43f15 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Scripts/Quest/EnemyObjective.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | 5 | public class EnemyObjective : QuestObjective 6 | { 7 | /// The enemy required for this objective. 8 | private Enemy enemy; 9 | 10 | /// The number of this type of enemy that needs to be killed. 11 | private int numberToKill; 12 | 13 | /// Remaining number of enemies of this type that need to be killed. 14 | private int numberRemaining; 15 | 16 | /// 17 | /// Creates a new enemy objective. 18 | /// 19 | /// The type of enemy that must be killed. 20 | /// The number of the type of enemy to be killed. 21 | public EnemyObjective(Enemy newEnemy, int newNumberToKill, GameObject newOwner) 22 | { 23 | enemy = newEnemy; 24 | numberToKill = newNumberToKill; 25 | numberRemaining = newNumberToKill; 26 | questOwner = newOwner; 27 | objectiveObject = newEnemy.gameObject; 28 | 29 | // Create a listener for our messaging system. Will be called on by Enemy.Die(); 30 | Messenger.AddListener("Enemy Killed", EnemyKilled); 31 | } 32 | 33 | 34 | /// 35 | /// Updates the objective. 36 | /// 37 | /// The type of enemy that was killed. 38 | private void EnemyKilled(Enemy enemyThatWasKilled) 39 | { 40 | if (questOwner == null) 41 | return; 42 | 43 | if (questOwner.tag != "Player") 44 | return; 45 | 46 | if (IsComplete() || !objectiveActive) 47 | return; 48 | 49 | if (enemy.GetName() == enemyThatWasKilled.GetName()) 50 | { 51 | // Check and make sure the message we received was for this specific enemy. 52 | 53 | numberRemaining--; // decrement remaining count. 54 | 55 | if (IsComplete() && nextObjective != null) 56 | nextObjective.SetActiveObjective(); // set the next objective to active. 57 | 58 | Debug.Log("Enemy " + enemyThatWasKilled.GetName() + " Killed " + numberRemaining + " Remain"); 59 | } 60 | } 61 | 62 | /// 63 | /// Returns true if the required number of enemies of this type have been killed. 64 | /// 65 | public override bool IsComplete() 66 | { 67 | return numberRemaining <= 0 ? true : false; 68 | } 69 | } 70 | -------------------------------------------------------------------------------- /Assets/Scripts/Quest/EnemyObjective.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9f7d5507a3cd2004990b8546849b23ed 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Scripts/Quest/LocationObjective.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | 5 | public class LocationObjective : QuestObjective 6 | { 7 | 8 | /// Keeps track of if our destination has been reached or not. 9 | bool hasDestinationBeenReached; 10 | 11 | 12 | /// 13 | /// Creates a new location objective. 14 | /// 15 | /// The required location game object. 16 | public LocationObjective(GameObject newLocation) 17 | { 18 | objectiveObject = newLocation; 19 | hasDestinationBeenReached = false; 20 | 21 | // Create a new listener for messaging system. 22 | Messenger.AddListener("Location Reached", LocationReached); 23 | } 24 | 25 | 26 | /// 27 | /// Checks if the message we received was for this objective's location. Sets hasDestinationBeenReached to true if so. 28 | /// 29 | /// The location we received in the message. 30 | private void LocationReached(GameObject locationThatWasReached) 31 | { 32 | //Debug.Log("Test"); 33 | if (questOwner == null) 34 | return; 35 | 36 | if (questOwner.tag != "Player") 37 | return; 38 | 39 | if (IsComplete() || !objectiveActive) 40 | return; 41 | 42 | 43 | // Compare prefab and instance locations. Since instance is being created at the same location as prefab, the prefab and instance will both have equal positions. 44 | if (locationThatWasReached.transform.position == objectiveObject.transform.position) 45 | { 46 | Debug.Log("Location Objective Reached"); 47 | hasDestinationBeenReached = true; 48 | 49 | if (nextObjective != null) 50 | nextObjective.SetActiveObjective(); // set the next objective to active. 51 | } 52 | } 53 | 54 | 55 | /// 56 | /// Returns true if the player has reached this location. 57 | /// 58 | public override bool IsComplete() 59 | { 60 | return hasDestinationBeenReached; 61 | } 62 | } 63 | -------------------------------------------------------------------------------- /Assets/Scripts/Quest/LocationObjective.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8bae4b0edd22d804599dcbb22ebe5eb9 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Scripts/Quest/Quest.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f795663a5ee45e346afa77acdd68ec99 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Scripts/Quest/QuestAsset.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | 5 | public class QuestAsset : ScriptableObject 6 | { 7 | /// The name of the quest 8 | public string questName; 9 | 10 | public GameObject questGiver; 11 | 12 | /// List of objectives that must be completed for this quest. 13 | public List objectives; 14 | 15 | /// Hashtable containing the quests that must be completed before the player can start this quest. Key is the name of the quest. 16 | public Dictionary requiredQuests; 17 | 18 | /// The dialogueFSM associated with this quest. 19 | public DialogueFSM questDialogue; 20 | 21 | 22 | /// 23 | /// Initializes all the quest data for this quest. 24 | /// 25 | /// The name of the quest. 26 | /// The game object of the character who gives this quest. 27 | /// The objectives for this quest. 28 | /// The prerequisite quests needed to unlock this quest. 29 | /// The dialogue exchange associated with this quest. 30 | public void InitializeData(string newQuestName, GameObject newQuestGiver, List newObjectives, Dictionary newRequiredQuests, DialogueFSM newQuestDialogue) 31 | { 32 | questName = newQuestName; 33 | questGiver = newQuestGiver; 34 | objectives = newObjectives; 35 | requiredQuests = newRequiredQuests; 36 | questDialogue = newQuestDialogue; 37 | } 38 | 39 | } 40 | -------------------------------------------------------------------------------- /Assets/Scripts/Quest/QuestAsset.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d8051ad29762a9e4bac28d409d693033 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Scripts/Quest/QuestGiver.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4555b7451cd73a84a9c3ea9f2e7256cb 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Scripts/Quest/QuestHandler.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1d42b85684f480241aec09d5c031e180 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Scripts/Quest/QuestLoader.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5160aa721d14ccf4ea0e09b80941614b 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Scripts/Quest/QuestLocation.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | 5 | public class QuestLocation : MonoBehaviour 6 | { 7 | 8 | private void Awake() { 9 | 10 | } 11 | void Start () 12 | { 13 | 14 | } 15 | 16 | void Update () 17 | { 18 | 19 | } 20 | 21 | private void OnTriggerEnter2D(Collider2D collision) 22 | { 23 | //Debug.Log("TestCollider"); 24 | if (collision.tag == "Player") 25 | Messenger.Broadcast("Location Reached", gameObject); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /Assets/Scripts/Quest/QuestLocation.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 787b4d396f3ff7847b565ae34bd0d6a6 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Scripts/Quest/QuestObjective.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | 5 | /// 6 | /// Abstract base class for quest objectives. Used for polymorphism. 7 | /// 8 | public abstract class QuestObjective 9 | { 10 | /// Description of this objective 11 | protected string objectiveDescription; 12 | 13 | protected GameObject questOwner, objectiveObject; 14 | 15 | protected bool objectiveActive; 16 | 17 | protected QuestObjective nextObjective; 18 | 19 | /// 20 | /// Returns the description of the objective. 21 | /// 22 | public string GetObjectiveDescription() 23 | { 24 | return objectiveDescription; 25 | } 26 | 27 | /// 28 | /// Sets this quest objective as the active objective in this objective path. 29 | /// 30 | public void SetActiveObjective() 31 | { 32 | objectiveActive = true; 33 | } 34 | 35 | /// 36 | /// Sets the objective that comes after this objective. When this objective is complete, the next objective becomes active. 37 | /// 38 | /// The objective this objective unlocks upon completion. 39 | public void SetNextObjective(QuestObjective newNextObjective) 40 | { 41 | nextObjective = newNextObjective; 42 | } 43 | 44 | /// 45 | /// Returns the objective game object. 46 | /// 47 | public GameObject GetObjectiveObject() 48 | { 49 | return objectiveObject; 50 | } 51 | 52 | /// 53 | /// Returns true if this objective has been completed. 54 | /// 55 | public abstract bool IsComplete(); 56 | 57 | public void TransferOwner(GameObject newOwner) 58 | { 59 | questOwner = newOwner; 60 | } 61 | } -------------------------------------------------------------------------------- /Assets/Scripts/Quest/QuestObjective.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d401120d84a984546adb5edc166af8f6 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Sprites.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b748664f0c13f8c4e826d34d3686d6ab 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Sprites/Characters.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3eca490b7d249dc438cdc910c0f733b7 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Sprites/Characters/8DPlayer.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mphilipp622/NodeBasedQuestEditor/8e33f7ad10235d52593a150326365d38cfcb76f4/Assets/Sprites/Characters/8DPlayer.png -------------------------------------------------------------------------------- /Assets/Sprites/Characters/MegaMan.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mphilipp622/NodeBasedQuestEditor/8e33f7ad10235d52593a150326365d38cfcb76f4/Assets/Sprites/Characters/MegaMan.png -------------------------------------------------------------------------------- /Assets/Sprites/Characters/MegaMan.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 905d46670e49af8478b10d6cf04b9dd8 3 | TextureImporter: 4 | fileIDToRecycleName: {} 5 | externalObjects: {} 6 | serializedVersion: 5 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | grayScaleToAlpha: 0 25 | generateCubemap: 6 26 | cubemapConvolution: 0 27 | seamlessCubemap: 0 28 | textureFormat: 1 29 | maxTextureSize: 2048 30 | textureSettings: 31 | serializedVersion: 2 32 | filterMode: -1 33 | aniso: -1 34 | mipBias: -1 35 | wrapU: 1 36 | wrapV: 1 37 | wrapW: 1 38 | nPOTScale: 0 39 | lightmap: 0 40 | compressionQuality: 50 41 | spriteMode: 1 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spritePixelsToUnits: 100 47 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 48 | spriteGenerateFallbackPhysicsShape: 1 49 | alphaUsage: 1 50 | alphaIsTransparency: 1 51 | spriteTessellationDetail: -1 52 | textureType: 8 53 | textureShape: 1 54 | singleChannelComponent: 0 55 | maxTextureSizeSet: 0 56 | compressionQualitySet: 0 57 | textureFormatSet: 0 58 | platformSettings: 59 | - serializedVersion: 2 60 | buildTarget: DefaultTexturePlatform 61 | maxTextureSize: 2048 62 | resizeAlgorithm: 0 63 | textureFormat: -1 64 | textureCompression: 1 65 | compressionQuality: 50 66 | crunchedCompression: 0 67 | allowsAlphaSplitting: 0 68 | overridden: 0 69 | androidETC2FallbackOverride: 0 70 | spriteSheet: 71 | serializedVersion: 2 72 | sprites: [] 73 | outline: [] 74 | physicsShape: [] 75 | bones: [] 76 | spriteID: b53b508a790b281448c9660f16ffaf87 77 | vertices: [] 78 | indices: 79 | edges: [] 80 | weights: [] 81 | spritePackingTag: 82 | userData: 83 | assetBundleName: 84 | assetBundleVariant: 85 | -------------------------------------------------------------------------------- /Assets/Sprites/Characters/NPCBraid.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mphilipp622/NodeBasedQuestEditor/8e33f7ad10235d52593a150326365d38cfcb76f4/Assets/Sprites/Characters/NPCBraid.png -------------------------------------------------------------------------------- /Assets/Sprites/Characters/NPCBraid.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: bddd3d71e30ac7942be7bd0218ed3a8b 3 | TextureImporter: 4 | fileIDToRecycleName: {} 5 | externalObjects: {} 6 | serializedVersion: 5 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | grayScaleToAlpha: 0 25 | generateCubemap: 6 26 | cubemapConvolution: 0 27 | seamlessCubemap: 0 28 | textureFormat: 1 29 | maxTextureSize: 2048 30 | textureSettings: 31 | serializedVersion: 2 32 | filterMode: -1 33 | aniso: -1 34 | mipBias: -1 35 | wrapU: 1 36 | wrapV: 1 37 | wrapW: 1 38 | nPOTScale: 0 39 | lightmap: 0 40 | compressionQuality: 50 41 | spriteMode: 1 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spritePixelsToUnits: 100 47 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 48 | spriteGenerateFallbackPhysicsShape: 1 49 | alphaUsage: 1 50 | alphaIsTransparency: 1 51 | spriteTessellationDetail: -1 52 | textureType: 8 53 | textureShape: 1 54 | singleChannelComponent: 0 55 | maxTextureSizeSet: 0 56 | compressionQualitySet: 0 57 | textureFormatSet: 0 58 | platformSettings: 59 | - serializedVersion: 2 60 | buildTarget: DefaultTexturePlatform 61 | maxTextureSize: 2048 62 | resizeAlgorithm: 0 63 | textureFormat: -1 64 | textureCompression: 1 65 | compressionQuality: 50 66 | crunchedCompression: 0 67 | allowsAlphaSplitting: 0 68 | overridden: 0 69 | androidETC2FallbackOverride: 0 70 | spriteSheet: 71 | serializedVersion: 2 72 | sprites: [] 73 | outline: [] 74 | physicsShape: [] 75 | bones: [] 76 | spriteID: fa1ab335745e9f94f932a0b0df1ac212 77 | vertices: [] 78 | indices: 79 | edges: [] 80 | weights: [] 81 | spritePackingTag: 82 | userData: 83 | assetBundleName: 84 | assetBundleVariant: 85 | -------------------------------------------------------------------------------- /Assets/Sprites/Characters/NPCLink.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mphilipp622/NodeBasedQuestEditor/8e33f7ad10235d52593a150326365d38cfcb76f4/Assets/Sprites/Characters/NPCLink.png -------------------------------------------------------------------------------- /Assets/Sprites/Characters/Tracer.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mphilipp622/NodeBasedQuestEditor/8e33f7ad10235d52593a150326365d38cfcb76f4/Assets/Sprites/Characters/Tracer.png -------------------------------------------------------------------------------- /Assets/Sprites/Characters/Tracer.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: bf690a205895b884891ff345f485f312 3 | TextureImporter: 4 | fileIDToRecycleName: {} 5 | externalObjects: {} 6 | serializedVersion: 5 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | grayScaleToAlpha: 0 25 | generateCubemap: 6 26 | cubemapConvolution: 0 27 | seamlessCubemap: 0 28 | textureFormat: 1 29 | maxTextureSize: 2048 30 | textureSettings: 31 | serializedVersion: 2 32 | filterMode: -1 33 | aniso: -1 34 | mipBias: -1 35 | wrapU: 1 36 | wrapV: 1 37 | wrapW: 1 38 | nPOTScale: 0 39 | lightmap: 0 40 | compressionQuality: 50 41 | spriteMode: 1 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spritePixelsToUnits: 100 47 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 48 | spriteGenerateFallbackPhysicsShape: 1 49 | alphaUsage: 1 50 | alphaIsTransparency: 1 51 | spriteTessellationDetail: -1 52 | textureType: 8 53 | textureShape: 1 54 | singleChannelComponent: 0 55 | maxTextureSizeSet: 0 56 | compressionQualitySet: 0 57 | textureFormatSet: 0 58 | platformSettings: 59 | - serializedVersion: 2 60 | buildTarget: DefaultTexturePlatform 61 | maxTextureSize: 2048 62 | resizeAlgorithm: 0 63 | textureFormat: -1 64 | textureCompression: 1 65 | compressionQuality: 50 66 | crunchedCompression: 0 67 | allowsAlphaSplitting: 0 68 | overridden: 0 69 | androidETC2FallbackOverride: 0 70 | spriteSheet: 71 | serializedVersion: 2 72 | sprites: [] 73 | outline: [] 74 | physicsShape: [] 75 | bones: [] 76 | spriteID: 98f961b0402e2d849b5eef20cd6744a0 77 | vertices: [] 78 | indices: 79 | edges: [] 80 | weights: [] 81 | spritePackingTag: 82 | userData: 83 | assetBundleName: 84 | assetBundleVariant: 85 | -------------------------------------------------------------------------------- /Assets/Sprites/HUD.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d956d469da2595b489fe3fa9616376af 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Sprites/HUD/EKeyIcon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mphilipp622/NodeBasedQuestEditor/8e33f7ad10235d52593a150326365d38cfcb76f4/Assets/Sprites/HUD/EKeyIcon.png -------------------------------------------------------------------------------- /Assets/Sprites/HUD/EKeyIcon.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 46906dd7d7a121342b2541535b2d263a 3 | TextureImporter: 4 | fileIDToRecycleName: {} 5 | externalObjects: {} 6 | serializedVersion: 5 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | grayScaleToAlpha: 0 25 | generateCubemap: 6 26 | cubemapConvolution: 0 27 | seamlessCubemap: 0 28 | textureFormat: 1 29 | maxTextureSize: 2048 30 | textureSettings: 31 | serializedVersion: 2 32 | filterMode: -1 33 | aniso: -1 34 | mipBias: -1 35 | wrapU: 1 36 | wrapV: 1 37 | wrapW: 1 38 | nPOTScale: 0 39 | lightmap: 0 40 | compressionQuality: 50 41 | spriteMode: 1 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spritePixelsToUnits: 100 47 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 48 | spriteGenerateFallbackPhysicsShape: 1 49 | alphaUsage: 1 50 | alphaIsTransparency: 1 51 | spriteTessellationDetail: -1 52 | textureType: 8 53 | textureShape: 1 54 | singleChannelComponent: 0 55 | maxTextureSizeSet: 0 56 | compressionQualitySet: 0 57 | textureFormatSet: 0 58 | platformSettings: 59 | - serializedVersion: 2 60 | buildTarget: DefaultTexturePlatform 61 | maxTextureSize: 2048 62 | resizeAlgorithm: 0 63 | textureFormat: -1 64 | textureCompression: 1 65 | compressionQuality: 50 66 | crunchedCompression: 0 67 | allowsAlphaSplitting: 0 68 | overridden: 0 69 | androidETC2FallbackOverride: 0 70 | spriteSheet: 71 | serializedVersion: 2 72 | sprites: [] 73 | outline: [] 74 | physicsShape: [] 75 | bones: [] 76 | spriteID: e8b40cfb59111904d898660b50b11180 77 | vertices: [] 78 | indices: 79 | edges: [] 80 | weights: [] 81 | spritePackingTag: 82 | userData: 83 | assetBundleName: 84 | assetBundleVariant: 85 | -------------------------------------------------------------------------------- /Assets/Sprites/HUD/ExclamationDialogue.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mphilipp622/NodeBasedQuestEditor/8e33f7ad10235d52593a150326365d38cfcb76f4/Assets/Sprites/HUD/ExclamationDialogue.png -------------------------------------------------------------------------------- /Assets/Sprites/HUD/ExclamationDialogue.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5c467b8658db7f24e81538abb460b673 3 | TextureImporter: 4 | fileIDToRecycleName: {} 5 | externalObjects: {} 6 | serializedVersion: 5 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | grayScaleToAlpha: 0 25 | generateCubemap: 6 26 | cubemapConvolution: 0 27 | seamlessCubemap: 0 28 | textureFormat: 1 29 | maxTextureSize: 2048 30 | textureSettings: 31 | serializedVersion: 2 32 | filterMode: -1 33 | aniso: -1 34 | mipBias: -1 35 | wrapU: 1 36 | wrapV: 1 37 | wrapW: 1 38 | nPOTScale: 0 39 | lightmap: 0 40 | compressionQuality: 50 41 | spriteMode: 1 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spritePixelsToUnits: 100 47 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 48 | spriteGenerateFallbackPhysicsShape: 1 49 | alphaUsage: 1 50 | alphaIsTransparency: 1 51 | spriteTessellationDetail: -1 52 | textureType: 8 53 | textureShape: 1 54 | singleChannelComponent: 0 55 | maxTextureSizeSet: 0 56 | compressionQualitySet: 0 57 | textureFormatSet: 0 58 | platformSettings: 59 | - serializedVersion: 2 60 | buildTarget: DefaultTexturePlatform 61 | maxTextureSize: 2048 62 | resizeAlgorithm: 0 63 | textureFormat: -1 64 | textureCompression: 1 65 | compressionQuality: 50 66 | crunchedCompression: 0 67 | allowsAlphaSplitting: 0 68 | overridden: 0 69 | androidETC2FallbackOverride: 0 70 | spriteSheet: 71 | serializedVersion: 2 72 | sprites: [] 73 | outline: [] 74 | physicsShape: [] 75 | bones: [] 76 | spriteID: 42d0b025a87b57c4db5f9e51cf3c75c1 77 | vertices: [] 78 | indices: 79 | edges: [] 80 | weights: [] 81 | spritePackingTag: 82 | userData: 83 | assetBundleName: 84 | assetBundleVariant: 85 | -------------------------------------------------------------------------------- /Assets/Sprites/HUD/InnerMonologue.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mphilipp622/NodeBasedQuestEditor/8e33f7ad10235d52593a150326365d38cfcb76f4/Assets/Sprites/HUD/InnerMonologue.png -------------------------------------------------------------------------------- /Assets/Sprites/HUD/InnerMonologue.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: dee04ecbfed0fb248995e5cc82f0eaad 3 | TextureImporter: 4 | fileIDToRecycleName: {} 5 | externalObjects: {} 6 | serializedVersion: 5 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | grayScaleToAlpha: 0 25 | generateCubemap: 6 26 | cubemapConvolution: 0 27 | seamlessCubemap: 0 28 | textureFormat: 1 29 | maxTextureSize: 2048 30 | textureSettings: 31 | serializedVersion: 2 32 | filterMode: -1 33 | aniso: -1 34 | mipBias: -1 35 | wrapU: 1 36 | wrapV: 1 37 | wrapW: 1 38 | nPOTScale: 0 39 | lightmap: 0 40 | compressionQuality: 50 41 | spriteMode: 1 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spritePixelsToUnits: 100 47 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 48 | spriteGenerateFallbackPhysicsShape: 1 49 | alphaUsage: 1 50 | alphaIsTransparency: 1 51 | spriteTessellationDetail: -1 52 | textureType: 8 53 | textureShape: 1 54 | singleChannelComponent: 0 55 | maxTextureSizeSet: 0 56 | compressionQualitySet: 0 57 | textureFormatSet: 0 58 | platformSettings: 59 | - serializedVersion: 2 60 | buildTarget: DefaultTexturePlatform 61 | maxTextureSize: 2048 62 | resizeAlgorithm: 0 63 | textureFormat: -1 64 | textureCompression: 1 65 | compressionQuality: 50 66 | crunchedCompression: 0 67 | allowsAlphaSplitting: 0 68 | overridden: 0 69 | androidETC2FallbackOverride: 0 70 | spriteSheet: 71 | serializedVersion: 2 72 | sprites: [] 73 | outline: [] 74 | physicsShape: [] 75 | bones: [] 76 | spriteID: 6ef7771e5a277d340b04e88eca42c1b8 77 | vertices: [] 78 | indices: 79 | edges: [] 80 | weights: [] 81 | spritePackingTag: 82 | userData: 83 | assetBundleName: 84 | assetBundleVariant: 85 | -------------------------------------------------------------------------------- /Assets/Sprites/HUD/LoopyDialogue.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mphilipp622/NodeBasedQuestEditor/8e33f7ad10235d52593a150326365d38cfcb76f4/Assets/Sprites/HUD/LoopyDialogue.png -------------------------------------------------------------------------------- /Assets/Sprites/HUD/LoopyDialogue.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 62b0ee7da810e6c41b25f9c334562be0 3 | TextureImporter: 4 | fileIDToRecycleName: {} 5 | externalObjects: {} 6 | serializedVersion: 5 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | grayScaleToAlpha: 0 25 | generateCubemap: 6 26 | cubemapConvolution: 0 27 | seamlessCubemap: 0 28 | textureFormat: 1 29 | maxTextureSize: 2048 30 | textureSettings: 31 | serializedVersion: 2 32 | filterMode: -1 33 | aniso: -1 34 | mipBias: -1 35 | wrapU: 1 36 | wrapV: 1 37 | wrapW: 1 38 | nPOTScale: 0 39 | lightmap: 0 40 | compressionQuality: 50 41 | spriteMode: 1 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spritePixelsToUnits: 100 47 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 48 | spriteGenerateFallbackPhysicsShape: 1 49 | alphaUsage: 1 50 | alphaIsTransparency: 1 51 | spriteTessellationDetail: -1 52 | textureType: 8 53 | textureShape: 1 54 | singleChannelComponent: 0 55 | maxTextureSizeSet: 0 56 | compressionQualitySet: 0 57 | textureFormatSet: 0 58 | platformSettings: 59 | - serializedVersion: 2 60 | buildTarget: DefaultTexturePlatform 61 | maxTextureSize: 2048 62 | resizeAlgorithm: 0 63 | textureFormat: -1 64 | textureCompression: 1 65 | compressionQuality: 50 66 | crunchedCompression: 0 67 | allowsAlphaSplitting: 0 68 | overridden: 0 69 | androidETC2FallbackOverride: 0 70 | spriteSheet: 71 | serializedVersion: 2 72 | sprites: [] 73 | outline: [] 74 | physicsShape: [] 75 | bones: [] 76 | spriteID: f9d58b6e153b51141981c7c214b0c6b7 77 | vertices: [] 78 | indices: 79 | edges: [] 80 | weights: [] 81 | spritePackingTag: 82 | userData: 83 | assetBundleName: 84 | assetBundleVariant: 85 | -------------------------------------------------------------------------------- /Assets/Sprites/HUD/NormalDialogue.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mphilipp622/NodeBasedQuestEditor/8e33f7ad10235d52593a150326365d38cfcb76f4/Assets/Sprites/HUD/NormalDialogue.png -------------------------------------------------------------------------------- /Assets/Sprites/HUD/NormalDialogue.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f3249c4e4fcf3214981bd6e2ecbc6651 3 | TextureImporter: 4 | fileIDToRecycleName: {} 5 | externalObjects: {} 6 | serializedVersion: 5 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | grayScaleToAlpha: 0 25 | generateCubemap: 6 26 | cubemapConvolution: 0 27 | seamlessCubemap: 0 28 | textureFormat: 1 29 | maxTextureSize: 2048 30 | textureSettings: 31 | serializedVersion: 2 32 | filterMode: -1 33 | aniso: -1 34 | mipBias: -1 35 | wrapU: 1 36 | wrapV: 1 37 | wrapW: 1 38 | nPOTScale: 0 39 | lightmap: 0 40 | compressionQuality: 50 41 | spriteMode: 1 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spritePixelsToUnits: 100 47 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 48 | spriteGenerateFallbackPhysicsShape: 1 49 | alphaUsage: 1 50 | alphaIsTransparency: 1 51 | spriteTessellationDetail: -1 52 | textureType: 8 53 | textureShape: 1 54 | singleChannelComponent: 0 55 | maxTextureSizeSet: 0 56 | compressionQualitySet: 0 57 | textureFormatSet: 0 58 | platformSettings: 59 | - serializedVersion: 2 60 | buildTarget: DefaultTexturePlatform 61 | maxTextureSize: 2048 62 | resizeAlgorithm: 0 63 | textureFormat: -1 64 | textureCompression: 1 65 | compressionQuality: 50 66 | crunchedCompression: 0 67 | allowsAlphaSplitting: 0 68 | overridden: 0 69 | androidETC2FallbackOverride: 0 70 | spriteSheet: 71 | serializedVersion: 2 72 | sprites: [] 73 | outline: [] 74 | physicsShape: [] 75 | bones: [] 76 | spriteID: b87302a8b45a721438aec303cb977175 77 | vertices: [] 78 | indices: 79 | edges: [] 80 | weights: [] 81 | spritePackingTag: 82 | userData: 83 | assetBundleName: 84 | assetBundleVariant: 85 | -------------------------------------------------------------------------------- /Assets/Standard Assets.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c3979f0a472922b469fe0ba1a7c95da6 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Standard Assets/2D.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 27dbec7630294d64c9ab91261656cbd4 3 | folderAsset: yes 4 | timeCreated: 1436977288 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Standard Assets/2D/Scripts.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b656cca21e797074a84563027a508ce1 3 | folderAsset: yes 4 | DefaultImporter: 5 | userData: 6 | assetBundleName: 7 | -------------------------------------------------------------------------------- /Assets/Standard Assets/2D/Scripts/Camera2DFollow.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using UnityEngine; 3 | 4 | namespace UnityStandardAssets._2D 5 | { 6 | public class Camera2DFollow : MonoBehaviour 7 | { 8 | public Transform target; 9 | public float damping = 1; 10 | public float lookAheadFactor = 3; 11 | public float lookAheadReturnSpeed = 0.5f; 12 | public float lookAheadMoveThreshold = 0.1f; 13 | 14 | [SerializeField] 15 | private float m_OffsetZ; 16 | private Vector3 m_LastTargetPosition; 17 | private Vector3 m_CurrentVelocity; 18 | private Vector3 m_LookAheadPos; 19 | 20 | [SerializeField] 21 | private float yOffset; 22 | 23 | private float xOffset; 24 | 25 | // Use this for initialization 26 | private void Start() 27 | { 28 | GetComponent().transparencySortMode = TransparencySortMode.Orthographic; 29 | m_LastTargetPosition = target.position; 30 | //m_OffsetZ = -10f; 31 | m_OffsetZ = (transform.position - target.position).z; 32 | transform.parent = null; 33 | } 34 | 35 | 36 | // Update is called once per frame 37 | private void Update() 38 | { 39 | if (target == null) 40 | target = GameObject.FindWithTag("Player").transform; 41 | 42 | // only update lookahead pos if accelerating or changed direction 43 | float xMoveDelta = (target.position - m_LastTargetPosition).x; 44 | 45 | bool updateLookAheadTarget = Mathf.Abs(xMoveDelta) > lookAheadMoveThreshold; 46 | 47 | if (updateLookAheadTarget) 48 | { 49 | m_LookAheadPos = lookAheadFactor*Vector3.right*Mathf.Sign(xMoveDelta); 50 | } 51 | else 52 | { 53 | m_LookAheadPos = Vector3.MoveTowards(m_LookAheadPos, Vector3.zero, Time.deltaTime*lookAheadReturnSpeed); 54 | } 55 | 56 | 57 | 58 | Vector3 aheadTargetPos = target.position + m_LookAheadPos + Camera.main.transform.forward * m_OffsetZ; 59 | 60 | Vector3 newPos = Vector3.SmoothDamp(transform.position, aheadTargetPos, ref m_CurrentVelocity, damping); 61 | 62 | transform.position = newPos; 63 | 64 | m_LastTargetPosition = target.position; 65 | 66 | } 67 | } 68 | } 69 | -------------------------------------------------------------------------------- /Assets/Standard Assets/2D/Scripts/Camera2DFollow.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5d8238cc53530b64fbb7828c3d3bb591 3 | MonoImporter: 4 | serializedVersion: 2 5 | defaultReferences: [] 6 | executionOrder: 0 7 | icon: {instanceID: 0} 8 | userData: 9 | assetBundleName: 10 | -------------------------------------------------------------------------------- /Assets/TestListener.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | 5 | public class TestListener : MonoBehaviour 6 | { 7 | 8 | private void OnEnable() 9 | { 10 | Messenger.AddListener("Game State Update", MyFunction); 11 | } 12 | 13 | private void OnDisable() 14 | { 15 | Messenger.RemoveListener("Game State Update", MyFunction); 16 | } 17 | 18 | private void MyFunction(string stateName) 19 | { 20 | if (stateName == "VOLCANO_ERUPTED") 21 | Debug.Log("Oh no, a volcano erupted!"); 22 | } 23 | 24 | void Start () { 25 | 26 | } 27 | 28 | void Update () { 29 | 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /Assets/TestListener.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0670dc27d27ba094f9e1a99e21682d4e 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/TextMesh Pro.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f54d1bd14bd3ca042bd867b519fee8cc 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/TextMesh Pro/Documentation.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8e7e8f5a82a3a134e91c54efd2274ea9 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/TextMesh Pro/Documentation/TextMesh Pro User Guide 2016.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mphilipp622/NodeBasedQuestEditor/8e33f7ad10235d52593a150326365d38cfcb76f4/Assets/TextMesh Pro/Documentation/TextMesh Pro User Guide 2016.pdf -------------------------------------------------------------------------------- /Assets/TextMesh Pro/Documentation/TextMesh Pro User Guide 2016.pdf.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1b8d251f9af63b746bf2f7ffe00ebb9b 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/TextMesh Pro/Resources.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 243e06394e614e5d99fab26083b707fa 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/TextMesh Pro/Resources/Fonts & Materials.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 731f1baa9d144a9897cb1d341c2092b8 3 | folderAsset: yes 4 | timeCreated: 1442040525 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/TextMesh Pro/Resources/Fonts & Materials/LiberationSans SDF - Drop Shadow.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e73a58f6e2794ae7b1b7e50b7fb811b0 3 | timeCreated: 1484172806 4 | licenseType: Pro 5 | NativeFormatImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/TextMesh Pro/Resources/Fonts & Materials/LiberationSans SDF - Outline.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 79459efec17a4d00a321bdcc27bbc385 3 | timeCreated: 1484172856 4 | licenseType: Pro 5 | NativeFormatImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/TextMesh Pro/Resources/Fonts & Materials/LiberationSans SDF.asset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8f586378b4e144a9851e7b34d9b748ee 3 | timeCreated: 1484171803 4 | licenseType: Pro 5 | NativeFormatImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/TextMesh Pro/Resources/LineBreaking Following Characters.txt: -------------------------------------------------------------------------------- 1 | )]}〕〉》」』】〙〗〟’”⦆»ヽヾーァィゥェォッャュョヮヵヶぁぃぅぇぉっゃゅょゎゕゖㇰㇱㇲㇳㇴㇵㇶㇷㇸㇹㇺㇻㇼㇽㇾㇿ々〻‐゠–〜?!‼⁇⁈⁉・、%,.:;。!?]):;=}¢°"†‡℃〆%,. -------------------------------------------------------------------------------- /Assets/TextMesh Pro/Resources/LineBreaking Following Characters.txt.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: fade42e8bc714b018fac513c043d323b 3 | timeCreated: 1425440388 4 | licenseType: Store 5 | TextScriptImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/TextMesh Pro/Resources/LineBreaking Leading Characters.txt: -------------------------------------------------------------------------------- 1 | ([{〔〈《「『【〘〖〝‘“⦅«$—…‥〳〴〵\[({£¥"々〇〉》」$⦆¥₩ # -------------------------------------------------------------------------------- /Assets/TextMesh Pro/Resources/LineBreaking Leading Characters.txt.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d82c1b31c7e74239bff1220585707d2b 3 | timeCreated: 1425440388 4 | licenseType: Store 5 | TextScriptImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/TextMesh Pro/Resources/Shaders.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 99f836c9cb9345dba2e72c4a1f2d0695 3 | folderAsset: yes 4 | timeCreated: 1436068007 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/TextMesh Pro/Resources/Shaders/TMP_Bitmap-Custom-Atlas.shader.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 48bb5f55d8670e349b6e614913f9d910 3 | ShaderImporter: 4 | defaultTextures: [] 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/TextMesh Pro/Resources/Shaders/TMP_Bitmap-Mobile.shader.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1e3b057af24249748ff873be7fafee47 3 | ShaderImporter: 4 | defaultTextures: [] 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/TextMesh Pro/Resources/Shaders/TMP_Bitmap.shader.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 128e987d567d4e2c824d754223b3f3b0 3 | ShaderImporter: 4 | defaultTextures: [] 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/TextMesh Pro/Resources/Shaders/TMP_SDF Overlay.shader.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: dd89cf5b9246416f84610a006f916af7 3 | ShaderImporter: 4 | defaultTextures: [] 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/TextMesh Pro/Resources/Shaders/TMP_SDF-Mobile Masking.shader.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: bc1ede39bf3643ee8e493720e4259791 3 | timeCreated: 1463704911 4 | licenseType: Pro 5 | ShaderImporter: 6 | defaultTextures: [] 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/TextMesh Pro/Resources/Shaders/TMP_SDF-Mobile Overlay.shader.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a02a7d8c237544f1962732b55a9aebf1 3 | ShaderImporter: 4 | defaultTextures: [] 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/TextMesh Pro/Resources/Shaders/TMP_SDF-Mobile.shader.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: fe393ace9b354375a9cb14cdbbc28be4 3 | ShaderImporter: 4 | defaultTextures: [] 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/TextMesh Pro/Resources/Shaders/TMP_SDF-Surface-Mobile.shader.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 85187c2149c549c5b33f0cdb02836b17 3 | ShaderImporter: 4 | defaultTextures: [] 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/TextMesh Pro/Resources/Shaders/TMP_SDF-Surface.shader.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f7ada0af4f174f0694ca6a487b8f543d 3 | ShaderImporter: 4 | defaultTextures: [] 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/TextMesh Pro/Resources/Shaders/TMP_SDF.shader.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 68e6db2ebdc24f95958faec2be5558d6 3 | ShaderImporter: 4 | defaultTextures: [] 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/TextMesh Pro/Resources/Shaders/TMP_Sprite.shader.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: cf81c85f95fe47e1a27f6ae460cf182c 3 | timeCreated: 1450517184 4 | licenseType: Pro 5 | ShaderImporter: 6 | defaultTextures: [] 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/TextMesh Pro/Resources/Shaders/TMPro.cginc: -------------------------------------------------------------------------------- 1 | float2 UnpackUV(float uv) 2 | { 3 | float2 output; 4 | output.x = floor(uv / 4096); 5 | output.y = uv - 4096 * output.x; 6 | 7 | return output * 0.001953125; 8 | } 9 | 10 | fixed4 GetColor(half d, fixed4 faceColor, fixed4 outlineColor, half outline, half softness) 11 | { 12 | half faceAlpha = 1-saturate((d - outline * 0.5 + softness * 0.5) / (1.0 + softness)); 13 | half outlineAlpha = saturate((d + outline * 0.5)) * sqrt(min(1.0, outline)); 14 | 15 | faceColor.rgb *= faceColor.a; 16 | outlineColor.rgb *= outlineColor.a; 17 | 18 | faceColor = lerp(faceColor, outlineColor, outlineAlpha); 19 | 20 | faceColor *= faceAlpha; 21 | 22 | return faceColor; 23 | } 24 | 25 | float3 GetSurfaceNormal(float4 h, float bias) 26 | { 27 | bool raisedBevel = step(1, fmod(_ShaderFlags, 2)); 28 | 29 | h += bias+_BevelOffset; 30 | 31 | float bevelWidth = max(.01, _OutlineWidth+_BevelWidth); 32 | 33 | // Track outline 34 | h -= .5; 35 | h /= bevelWidth; 36 | h = saturate(h+.5); 37 | 38 | if(raisedBevel) h = 1 - abs(h*2.0 - 1.0); 39 | h = lerp(h, sin(h*3.141592/2.0), _BevelRoundness); 40 | h = min(h, 1.0-_BevelClamp); 41 | h *= _Bevel * bevelWidth * _GradientScale * -2.0; 42 | 43 | float3 va = normalize(float3(1.0, 0.0, h.y - h.x)); 44 | float3 vb = normalize(float3(0.0, -1.0, h.w - h.z)); 45 | 46 | return cross(va, vb); 47 | } 48 | 49 | float3 GetSurfaceNormal(float2 uv, float bias, float3 delta) 50 | { 51 | // Read "height field" 52 | float4 h = {tex2D(_MainTex, uv - delta.xz).a, 53 | tex2D(_MainTex, uv + delta.xz).a, 54 | tex2D(_MainTex, uv - delta.zy).a, 55 | tex2D(_MainTex, uv + delta.zy).a}; 56 | 57 | return GetSurfaceNormal(h, bias); 58 | } 59 | 60 | float3 GetSpecular(float3 n, float3 l) 61 | { 62 | float spec = pow(max(0.0, dot(n, l)), _Reflectivity); 63 | return _SpecularColor.rgb * spec * _SpecularPower; 64 | } 65 | 66 | float4 GetGlowColor(float d, float scale) 67 | { 68 | float glow = d - (_GlowOffset*_ScaleRatioB) * 0.5 * scale; 69 | float t = lerp(_GlowInner, (_GlowOuter * _ScaleRatioB), step(0.0, glow)) * 0.5 * scale; 70 | glow = saturate(abs(glow/(1.0 + t))); 71 | glow = 1.0-pow(glow, _GlowPower); 72 | glow *= sqrt(min(1.0, t)); // Fade off glow thinner than 1 screen pixel 73 | return float4(_GlowColor.rgb, saturate(_GlowColor.a * glow * 2)); 74 | } 75 | 76 | float4 BlendARGB(float4 overlying, float4 underlying) 77 | { 78 | overlying.rgb *= overlying.a; 79 | underlying.rgb *= underlying.a; 80 | float3 blended = overlying.rgb + ((1-overlying.a)*underlying.rgb); 81 | float alpha = underlying.a + (1-underlying.a)*overlying.a; 82 | return float4(blended, alpha); 83 | } 84 | 85 | -------------------------------------------------------------------------------- /Assets/TextMesh Pro/Resources/Shaders/TMPro.cginc.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 407bc68d299748449bbf7f48ee690f8d 3 | ShaderImporter: 4 | defaultTextures: [] 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/TextMesh Pro/Resources/Shaders/TMPro_Properties.cginc.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3997e2241185407d80309a82f9148466 3 | ShaderImporter: 4 | defaultTextures: [] 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/TextMesh Pro/Resources/Shaders/TMPro_Surface.cginc.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d930090c0cd643c7b55f19a38538c162 3 | ShaderImporter: 4 | defaultTextures: [] 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/TextMesh Pro/Resources/Sprite Assets.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 512a49d95c0c4332bdd98131869c23c9 3 | folderAsset: yes 4 | timeCreated: 1441876896 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/TextMesh Pro/Resources/Sprite Assets/EmojiOne.asset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c41005c129ba4d66911b75229fd70b45 3 | timeCreated: 1480316912 4 | licenseType: Pro 5 | NativeFormatImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/TextMesh Pro/Resources/Style Sheets.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4aecb92fff08436c8303b10eab8da368 3 | folderAsset: yes 4 | timeCreated: 1441876950 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/TextMesh Pro/Resources/Style Sheets/Default Style Sheet.asset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f952c082cb03451daed3ee968ac6c63e 3 | timeCreated: 1432805430 4 | licenseType: Store 5 | NativeFormatImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/TextMesh Pro/Resources/TMP Settings.asset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3f5b5dff67a942289a9defa416b206f3 3 | timeCreated: 1436653997 4 | licenseType: Pro 5 | NativeFormatImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/TextMesh Pro/Sprites.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d0603b6d5186471b96c778c3949c7ce2 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/TextMesh Pro/Sprites/EmojiOne Attribution.txt: -------------------------------------------------------------------------------- 1 | This sample of beautiful emojis are provided by EmojiOne https://www.emojione.com/ 2 | 3 | Please visit their website to view the complete set of their emojis and review their licensing terms. -------------------------------------------------------------------------------- /Assets/TextMesh Pro/Sprites/EmojiOne Attribution.txt.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 381dcb09d5029d14897e55f98031fca5 3 | TextScriptImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/TextMesh Pro/Sprites/EmojiOne.json.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8f05276190cf498a8153f6cbe761d4e6 3 | timeCreated: 1480316860 4 | licenseType: Pro 5 | TextScriptImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/TextMesh Pro/Sprites/EmojiOne.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mphilipp622/NodeBasedQuestEditor/8e33f7ad10235d52593a150326365d38cfcb76f4/Assets/TextMesh Pro/Sprites/EmojiOne.png -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2018 Mark Philipp 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. -------------------------------------------------------------------------------- /Logs/Packages-Update.log: -------------------------------------------------------------------------------- 1 | 2 | === Thu Aug 29 18:11:17 2019 3 | 4 | Packages were changed. 5 | Update Mode: updateDependencies 6 | 7 | The following packages were added: 8 | com.unity.collab-proxy@1.2.16 9 | com.unity.timeline@1.0.0 10 | com.unity.multiplayer-hlapi@1.0.2 11 | com.unity.xr.legacyinputhelpers@2.0.2 12 | The following packages were updated: 13 | com.unity.analytics from version 2.0.16 to 3.3.2 14 | com.unity.package-manager-ui from version 1.9.11 to 2.1.2 15 | com.unity.purchasing from version 2.0.3 to 2.0.6 16 | com.unity.textmeshpro from version 1.2.4 to 2.0.1 17 | -------------------------------------------------------------------------------- /NodeBasedQuestSystem.unitypackage: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mphilipp622/NodeBasedQuestEditor/8e33f7ad10235d52593a150326365d38cfcb76f4/NodeBasedQuestSystem.unitypackage -------------------------------------------------------------------------------- /Packages/manifest.json: -------------------------------------------------------------------------------- 1 | { 2 | "dependencies": { 3 | "com.unity.ads": "2.0.8", 4 | "com.unity.analytics": "3.3.2", 5 | "com.unity.collab-proxy": "1.2.16", 6 | "com.unity.multiplayer-hlapi": "1.0.2", 7 | "com.unity.package-manager-ui": "2.1.2", 8 | "com.unity.purchasing": "2.0.6", 9 | "com.unity.textmeshpro": "2.0.1", 10 | "com.unity.timeline": "1.0.0", 11 | "com.unity.xr.legacyinputhelpers": "2.0.2", 12 | "com.unity.modules.ai": "1.0.0", 13 | "com.unity.modules.animation": "1.0.0", 14 | "com.unity.modules.assetbundle": "1.0.0", 15 | "com.unity.modules.audio": "1.0.0", 16 | "com.unity.modules.cloth": "1.0.0", 17 | "com.unity.modules.director": "1.0.0", 18 | "com.unity.modules.imageconversion": "1.0.0", 19 | "com.unity.modules.imgui": "1.0.0", 20 | "com.unity.modules.jsonserialize": "1.0.0", 21 | "com.unity.modules.particlesystem": "1.0.0", 22 | "com.unity.modules.physics": "1.0.0", 23 | "com.unity.modules.physics2d": "1.0.0", 24 | "com.unity.modules.screencapture": "1.0.0", 25 | "com.unity.modules.terrain": "1.0.0", 26 | "com.unity.modules.terrainphysics": "1.0.0", 27 | "com.unity.modules.tilemap": "1.0.0", 28 | "com.unity.modules.ui": "1.0.0", 29 | "com.unity.modules.uielements": "1.0.0", 30 | "com.unity.modules.umbra": "1.0.0", 31 | "com.unity.modules.unityanalytics": "1.0.0", 32 | "com.unity.modules.unitywebrequest": "1.0.0", 33 | "com.unity.modules.unitywebrequestassetbundle": "1.0.0", 34 | "com.unity.modules.unitywebrequestaudio": "1.0.0", 35 | "com.unity.modules.unitywebrequesttexture": "1.0.0", 36 | "com.unity.modules.unitywebrequestwww": "1.0.0", 37 | "com.unity.modules.vehicles": "1.0.0", 38 | "com.unity.modules.video": "1.0.0", 39 | "com.unity.modules.vr": "1.0.0", 40 | "com.unity.modules.wind": "1.0.0", 41 | "com.unity.modules.xr": "1.0.0" 42 | } 43 | } 44 | -------------------------------------------------------------------------------- /ProjectSettings/AudioManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!11 &1 4 | AudioManager: 5 | m_ObjectHideFlags: 0 6 | m_Volume: 1 7 | Rolloff Scale: 1 8 | Doppler Factor: 1 9 | Default Speaker Mode: 2 10 | m_SampleRate: 0 11 | m_DSPBufferSize: 1024 12 | m_VirtualVoiceCount: 512 13 | m_RealVoiceCount: 32 14 | m_SpatializerPlugin: 15 | m_AmbisonicDecoderPlugin: 16 | m_DisableAudio: 0 17 | m_VirtualizeEffects: 1 18 | -------------------------------------------------------------------------------- /ProjectSettings/ClusterInputManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!236 &1 4 | ClusterInputManager: 5 | m_ObjectHideFlags: 0 6 | m_Inputs: [] 7 | -------------------------------------------------------------------------------- /ProjectSettings/DynamicsManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!55 &1 4 | PhysicsManager: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 7 7 | m_Gravity: {x: 0, y: -9.81, z: 0} 8 | m_DefaultMaterial: {fileID: 0} 9 | m_BounceThreshold: 2 10 | m_SleepThreshold: 0.005 11 | m_DefaultContactOffset: 0.01 12 | m_DefaultSolverIterations: 6 13 | m_DefaultSolverVelocityIterations: 1 14 | m_QueriesHitBackfaces: 0 15 | m_QueriesHitTriggers: 1 16 | m_EnableAdaptiveForce: 0 17 | m_ClothInterCollisionDistance: 0 18 | m_ClothInterCollisionStiffness: 0 19 | m_ContactsGeneration: 1 20 | m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 21 | m_AutoSimulation: 1 22 | m_AutoSyncTransforms: 1 23 | m_ClothInterCollisionSettingsToggle: 0 24 | m_ContactPairsMode: 0 25 | m_BroadphaseType: 0 26 | m_WorldBounds: 27 | m_Center: {x: 0, y: 0, z: 0} 28 | m_Extent: {x: 250, y: 250, z: 250} 29 | m_WorldSubdivisions: 8 30 | -------------------------------------------------------------------------------- /ProjectSettings/EditorBuildSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!1045 &1 4 | EditorBuildSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 2 7 | m_Scenes: 8 | - enabled: 1 9 | path: Assets/Scenes/SampleScene.unity 10 | guid: 2cda990e2423bbf4892e6590ba056729 11 | m_configObjects: {} 12 | -------------------------------------------------------------------------------- /ProjectSettings/EditorSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!159 &1 4 | EditorSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 7 7 | m_ExternalVersionControlSupport: Visible Meta Files 8 | m_SerializationMode: 2 9 | m_LineEndingsForNewScripts: 2 10 | m_DefaultBehaviorMode: 1 11 | m_SpritePackerMode: 4 12 | m_SpritePackerPaddingPower: 1 13 | m_EtcTextureCompressorBehavior: 1 14 | m_EtcTextureFastCompressor: 1 15 | m_EtcTextureNormalCompressor: 2 16 | m_EtcTextureBestCompressor: 4 17 | m_ProjectGenerationIncludedExtensions: txt;xml;fnt;cd 18 | m_ProjectGenerationRootNamespace: 19 | m_UserGeneratedProjectSuffix: 20 | m_CollabEditorSettings: 21 | inProgressEnabled: 1 22 | -------------------------------------------------------------------------------- /ProjectSettings/GraphicsSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!30 &1 4 | GraphicsSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 12 7 | m_Deferred: 8 | m_Mode: 1 9 | m_Shader: {fileID: 69, guid: 0000000000000000f000000000000000, type: 0} 10 | m_DeferredReflections: 11 | m_Mode: 1 12 | m_Shader: {fileID: 74, guid: 0000000000000000f000000000000000, type: 0} 13 | m_ScreenSpaceShadows: 14 | m_Mode: 1 15 | m_Shader: {fileID: 64, guid: 0000000000000000f000000000000000, type: 0} 16 | m_LegacyDeferred: 17 | m_Mode: 1 18 | m_Shader: {fileID: 63, guid: 0000000000000000f000000000000000, type: 0} 19 | m_DepthNormals: 20 | m_Mode: 1 21 | m_Shader: {fileID: 62, guid: 0000000000000000f000000000000000, type: 0} 22 | m_MotionVectors: 23 | m_Mode: 1 24 | m_Shader: {fileID: 75, guid: 0000000000000000f000000000000000, type: 0} 25 | m_LightHalo: 26 | m_Mode: 1 27 | m_Shader: {fileID: 105, guid: 0000000000000000f000000000000000, type: 0} 28 | m_LensFlare: 29 | m_Mode: 1 30 | m_Shader: {fileID: 102, guid: 0000000000000000f000000000000000, type: 0} 31 | m_AlwaysIncludedShaders: 32 | - {fileID: 10753, guid: 0000000000000000f000000000000000, type: 0} 33 | - {fileID: 10770, guid: 0000000000000000f000000000000000, type: 0} 34 | m_PreloadedShaders: [] 35 | m_SpritesDefaultMaterial: {fileID: 10754, guid: 0000000000000000f000000000000000, 36 | type: 0} 37 | m_CustomRenderPipeline: {fileID: 0} 38 | m_TransparencySortMode: 0 39 | m_TransparencySortAxis: {x: 0, y: 0, z: 1} 40 | m_DefaultRenderingPath: 1 41 | m_DefaultMobileRenderingPath: 1 42 | m_TierSettings: [] 43 | m_LightmapStripping: 0 44 | m_FogStripping: 0 45 | m_InstancingStripping: 0 46 | m_LightmapKeepPlain: 1 47 | m_LightmapKeepDirCombined: 1 48 | m_LightmapKeepDynamicPlain: 1 49 | m_LightmapKeepDynamicDirCombined: 1 50 | m_LightmapKeepShadowMask: 1 51 | m_LightmapKeepSubtractive: 1 52 | m_FogKeepLinear: 1 53 | m_FogKeepExp: 1 54 | m_FogKeepExp2: 1 55 | m_AlbedoSwatchInfos: [] 56 | m_LightsUseLinearIntensity: 0 57 | m_LightsUseColorTemperature: 0 58 | -------------------------------------------------------------------------------- /ProjectSettings/NavMeshAreas.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!126 &1 4 | NavMeshProjectSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 2 7 | areas: 8 | - name: Walkable 9 | cost: 1 10 | - name: Not Walkable 11 | cost: 1 12 | - name: Jump 13 | cost: 2 14 | - name: 15 | cost: 1 16 | - name: 17 | cost: 1 18 | - name: 19 | cost: 1 20 | - name: 21 | cost: 1 22 | - name: 23 | cost: 1 24 | - name: 25 | cost: 1 26 | - name: 27 | cost: 1 28 | - name: 29 | cost: 1 30 | - name: 31 | cost: 1 32 | - name: 33 | cost: 1 34 | - name: 35 | cost: 1 36 | - name: 37 | cost: 1 38 | - name: 39 | cost: 1 40 | - name: 41 | cost: 1 42 | - name: 43 | cost: 1 44 | - name: 45 | cost: 1 46 | - name: 47 | cost: 1 48 | - name: 49 | cost: 1 50 | - name: 51 | cost: 1 52 | - name: 53 | cost: 1 54 | - name: 55 | cost: 1 56 | - name: 57 | cost: 1 58 | - name: 59 | cost: 1 60 | - name: 61 | cost: 1 62 | - name: 63 | cost: 1 64 | - name: 65 | cost: 1 66 | - name: 67 | cost: 1 68 | - name: 69 | cost: 1 70 | - name: 71 | cost: 1 72 | m_LastAgentTypeID: -887442657 73 | m_Settings: 74 | - serializedVersion: 2 75 | agentTypeID: 0 76 | agentRadius: 0.5 77 | agentHeight: 2 78 | agentSlope: 45 79 | agentClimb: 0.75 80 | ledgeDropHeight: 0 81 | maxJumpAcrossDistance: 0 82 | minRegionArea: 2 83 | manualCellSize: 0 84 | cellSize: 0.16666667 85 | manualTileSize: 0 86 | tileSize: 256 87 | accuratePlacement: 0 88 | debug: 89 | m_Flags: 0 90 | m_SettingNames: 91 | - Humanoid 92 | -------------------------------------------------------------------------------- /ProjectSettings/NetworkManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!149 &1 4 | NetworkManager: 5 | m_ObjectHideFlags: 0 6 | m_DebugLevel: 0 7 | m_Sendrate: 15 8 | m_AssetToPrefab: {} 9 | -------------------------------------------------------------------------------- /ProjectSettings/Physics2DSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!19 &1 4 | Physics2DSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 3 7 | m_Gravity: {x: 0, y: -9.81} 8 | m_DefaultMaterial: {fileID: 0} 9 | m_VelocityIterations: 8 10 | m_PositionIterations: 3 11 | m_VelocityThreshold: 1 12 | m_MaxLinearCorrection: 0.2 13 | m_MaxAngularCorrection: 8 14 | m_MaxTranslationSpeed: 100 15 | m_MaxRotationSpeed: 360 16 | m_BaumgarteScale: 0.2 17 | m_BaumgarteTimeOfImpactScale: 0.75 18 | m_TimeToSleep: 0.5 19 | m_LinearSleepTolerance: 0.01 20 | m_AngularSleepTolerance: 2 21 | m_DefaultContactOffset: 0.01 22 | m_JobOptions: 23 | serializedVersion: 2 24 | useMultithreading: 0 25 | useConsistencySorting: 0 26 | m_InterpolationPosesPerJob: 100 27 | m_NewContactsPerJob: 30 28 | m_CollideContactsPerJob: 100 29 | m_ClearFlagsPerJob: 200 30 | m_ClearBodyForcesPerJob: 200 31 | m_SyncDiscreteFixturesPerJob: 50 32 | m_SyncContinuousFixturesPerJob: 50 33 | m_FindNearestContactsPerJob: 100 34 | m_UpdateTriggerContactsPerJob: 100 35 | m_IslandSolverCostThreshold: 100 36 | m_IslandSolverBodyCostScale: 1 37 | m_IslandSolverContactCostScale: 10 38 | m_IslandSolverJointCostScale: 10 39 | m_IslandSolverBodiesPerJob: 50 40 | m_IslandSolverContactsPerJob: 50 41 | m_AutoSimulation: 1 42 | m_QueriesHitTriggers: 1 43 | m_QueriesStartInColliders: 1 44 | m_CallbacksOnDisable: 1 45 | m_AutoSyncTransforms: 1 46 | m_AlwaysShowColliders: 0 47 | m_ShowColliderSleep: 1 48 | m_ShowColliderContacts: 0 49 | m_ShowColliderAABB: 0 50 | m_ContactArrowScale: 0.2 51 | m_ColliderAwakeColor: {r: 0.5686275, g: 0.95686275, b: 0.54509807, a: 0.7529412} 52 | m_ColliderAsleepColor: {r: 0.5686275, g: 0.95686275, b: 0.54509807, a: 0.36078432} 53 | m_ColliderContactColor: {r: 1, g: 0, b: 1, a: 0.6862745} 54 | m_ColliderAABBColor: {r: 1, g: 1, b: 0, a: 0.2509804} 55 | m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 56 | -------------------------------------------------------------------------------- /ProjectSettings/PresetManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!1386491679 &1 4 | PresetManager: 5 | m_ObjectHideFlags: 0 6 | m_DefaultList: 7 | - type: 8 | m_NativeTypeID: 20 9 | m_ManagedTypePPtr: {fileID: 0} 10 | m_ManagedTypeFallback: 11 | defaultPresets: 12 | - m_Preset: {fileID: 2655988077585873504, guid: bfcfc320427f8224bbb7a96f3d3aebad, 13 | type: 2} 14 | -------------------------------------------------------------------------------- /ProjectSettings/ProjectVersion.txt: -------------------------------------------------------------------------------- 1 | m_EditorVersion: 2019.1.12f1 2 | m_EditorVersionWithRevision: 2019.1.12f1 (f04f5427219e) 3 | -------------------------------------------------------------------------------- /ProjectSettings/TagManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!78 &1 4 | TagManager: 5 | serializedVersion: 2 6 | tags: 7 | - Character 8 | - DialogueCanvas 9 | - Enemy 10 | layers: 11 | - Default 12 | - TransparentFX 13 | - Ignore Raycast 14 | - 15 | - Water 16 | - UI 17 | - 18 | - 19 | - 20 | - 21 | - 22 | - 23 | - 24 | - 25 | - 26 | - 27 | - 28 | - 29 | - 30 | - 31 | - 32 | - 33 | - 34 | - 35 | - 36 | - 37 | - 38 | - 39 | - 40 | - 41 | - 42 | - 43 | m_SortingLayers: 44 | - name: Default 45 | uniqueID: 0 46 | locked: 0 47 | -------------------------------------------------------------------------------- /ProjectSettings/TimeManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!5 &1 4 | TimeManager: 5 | m_ObjectHideFlags: 0 6 | Fixed Timestep: 0.02 7 | Maximum Allowed Timestep: 0.1 8 | m_TimeScale: 1 9 | Maximum Particle Timestep: 0.03 10 | -------------------------------------------------------------------------------- /ProjectSettings/UnityConnectSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!310 &1 4 | UnityConnectSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 1 7 | m_Enabled: 1 8 | m_TestMode: 0 9 | m_EventOldUrl: https://api.uca.cloud.unity3d.com/v1/events 10 | m_EventUrl: https://cdp.cloud.unity3d.com/v1/events 11 | m_ConfigUrl: https://config.uca.cloud.unity3d.com 12 | m_TestInitMode: 0 13 | CrashReportingSettings: 14 | m_EventUrl: https://perf-events.cloud.unity3d.com 15 | m_Enabled: 0 16 | m_LogBufferSize: 10 17 | m_CaptureEditorExceptions: 1 18 | UnityPurchasingSettings: 19 | m_Enabled: 0 20 | m_TestMode: 0 21 | UnityAnalyticsSettings: 22 | m_Enabled: 1 23 | m_TestMode: 0 24 | m_InitializeOnStartup: 1 25 | UnityAdsSettings: 26 | m_Enabled: 0 27 | m_InitializeOnStartup: 1 28 | m_TestMode: 0 29 | m_IosGameId: 30 | m_AndroidGameId: 31 | m_GameIds: {} 32 | m_GameId: 33 | PerformanceReportingSettings: 34 | m_Enabled: 0 35 | -------------------------------------------------------------------------------- /ProjectSettings/VFXManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!937362698 &1 4 | VFXManager: 5 | m_ObjectHideFlags: 0 6 | m_IndirectShader: {fileID: 0} 7 | m_CopyBufferShader: {fileID: 0} 8 | m_SortShader: {fileID: 0} 9 | m_RenderPipeSettingsPath: 10 | m_FixedTimeStep: 0.016666668 11 | m_MaxDeltaTime: 0.05 12 | -------------------------------------------------------------------------------- /ProjectSettings/XRSettings.asset: -------------------------------------------------------------------------------- 1 | { 2 | "m_SettingKeys": [ 3 | "VR Device Disabled", 4 | "VR Device User Alert" 5 | ], 6 | "m_SettingValues": [ 7 | "False", 8 | "False" 9 | ] 10 | } -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # NodeBasedQuestEditor 2 | 3 | This repo contains a sample project for my node based quest system. It also contains the Unity asset package so other people may download and use this asset. 4 | 5 | ## What Does the Asset do? 6 | 7 | This asset extends the Unity editor and provides a user interface for creating customizable, game state dependent quest lines. These quests also include dialogue conversations based on my [Node Based Dialogue System](https://github.com/mphilipp622/NodeBasedDialogueSystem) 8 | 9 | ## Requirements 10 | 11 | This asset was developed in Unity 2018.2.2f1. Due to the way that Unity updated their package manager, it is recommended that you install at LEAST version 2018.2.2f1 [from here](https://unity3d.com/get-unity/download?thank-you=update&download_nid=57864&os=Win) 12 | 13 | This asset has not been tested on older versions and I cannot guarantee that it will work in those environments. 14 | 15 | ## How to Download 16 | 17 | If you want the entire project, you can just clone or download the repo. If you wish to download the unity package specifically, you can [download it here](https://github.com/mphilipp622/NodeBasedQuestEditor/blob/master/NodeBasedQuestSystem.unitypackage) 18 | 19 | ## How to Use 20 | 21 | It is recommended to download and read the [how to use pdf](https://github.com/mphilipp622/NodeBasedQuestEditor/blob/master/Assets/Node_Editor/HowToUseQuestEditor.pdf) 22 | 23 | You can review the [how to use video](https://youtu.be/xMCmULaIU4I) to get an introduction to the basics of using the asset. 24 | 25 | Tutorials on the basics of the dialogue system [can be found here](https://www.youtube.com/watch?v=lCHmfbOH5iI&feature=youtu.be) 26 | 27 | Additionally, you can watch [this video about working with speech bubbles](https://www.youtube.com/watch?v=U3Y4K0q5zoY&feature=youtu.be). 28 | 29 | ## Future Updates 30 | 31 | The biggest priority update currently is to implement rewards. I developed this asset for my own game, which did not utilize a reward system for the quests. However, I understand that providing exp, items, currency, etc. is important for most quest systems. I hope that the system is easy enough to extend so users can create their own reward functionality until I am able to implement it. Do know that rewards are the highest priority update for this asset. 32 | 33 | At the risk of sounding like I'm making excuses, I want it to be known that I am currently busy with a full-time job and the last semester for my BS degree in Computer Science. As such, I expect to be rather busy until 2019 and will likely not be able to commit lots of time to adding features and fixing bugs until then. Thanks! --------------------------------------------------------------------------------