From 8b5c99ae8de97eee3f5b1ab8624b3f33c9db430e Mon Sep 17 00:00:00 2001 From: Rizvee Date: Wed, 23 Feb 2022 02:16:40 -0600 Subject: [PATCH] worked on interactions --- Assets/Scene 1 Assets/Dialogue.cs | 3 +- Assets/Scene 1 Assets/TextTrigger.cs | 13 ++ Assets/Scene 1 Assets/TextTrigger.cs.meta | 11 ++ Assets/Scene 1 Assets/Textbox.prefab | 4 +- Assets/Scene 1 Assets/Trigger.cs | 66 ++++++++++ Assets/Scene 1 Assets/Trigger.cs.meta | 11 ++ Assets/Scenes/Scene1.unity | 151 +++++++++++++++++++++- ProjectSettings/TagManager.asset | 1 + UserSettings/EditorUserSettings.asset | 10 +- 9 files changed, 259 insertions(+), 11 deletions(-) create mode 100644 Assets/Scene 1 Assets/TextTrigger.cs create mode 100644 Assets/Scene 1 Assets/TextTrigger.cs.meta create mode 100644 Assets/Scene 1 Assets/Trigger.cs create mode 100644 Assets/Scene 1 Assets/Trigger.cs.meta diff --git a/Assets/Scene 1 Assets/Dialogue.cs b/Assets/Scene 1 Assets/Dialogue.cs index 3f46599..1913ff7 100644 --- a/Assets/Scene 1 Assets/Dialogue.cs +++ b/Assets/Scene 1 Assets/Dialogue.cs @@ -12,7 +12,7 @@ public class Dialogue : MonoBehaviour public List pages = new List(); public List emotes = new List(); int curPage = 0; - public bool isOpen = true; + public bool isOpen = false; //used to activate/deactivate test object //activate through outside means probably public GameObject textTest; @@ -29,7 +29,6 @@ public class Dialogue : MonoBehaviour { if (pages.Count > 0) { - textbox.text = pages[0]; arrow.text = ""; } } diff --git a/Assets/Scene 1 Assets/TextTrigger.cs b/Assets/Scene 1 Assets/TextTrigger.cs new file mode 100644 index 0000000..7f38386 --- /dev/null +++ b/Assets/Scene 1 Assets/TextTrigger.cs @@ -0,0 +1,13 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +public class TextTrigger : Trigger +{ + public Dialogue TextBox; + public override void Action() + { + TextBox.gameObject.SetActive(true); + TextBox.GetComponent().isOpen = true; + } +} diff --git a/Assets/Scene 1 Assets/TextTrigger.cs.meta b/Assets/Scene 1 Assets/TextTrigger.cs.meta new file mode 100644 index 0000000..8ea4947 --- /dev/null +++ b/Assets/Scene 1 Assets/TextTrigger.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 58ad46602c4301d47a7b6f71726a1cd9 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scene 1 Assets/Textbox.prefab b/Assets/Scene 1 Assets/Textbox.prefab index c2a4443..e3650c3 100644 --- a/Assets/Scene 1 Assets/Textbox.prefab +++ b/Assets/Scene 1 Assets/Textbox.prefab @@ -607,8 +607,10 @@ MonoBehaviour: arrow: {fileID: 7395190149993767727} audioManager: {fileID: 0} pages: [] + emotes: isOpen: 0 textTest: {fileID: 7059772332581294260} + isTalking: 0 --- !u!1 &7059772333148747624 GameObject: m_ObjectHideFlags: 0 @@ -808,7 +810,7 @@ GameObject: - component: {fileID: -2532599903388458229} m_Layer: 0 m_Name: Textbox - m_TagString: Untagged + m_TagString: Event m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 diff --git a/Assets/Scene 1 Assets/Trigger.cs b/Assets/Scene 1 Assets/Trigger.cs new file mode 100644 index 0000000..e6e0edf --- /dev/null +++ b/Assets/Scene 1 Assets/Trigger.cs @@ -0,0 +1,66 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + + +//to implement inheritance +public abstract class Trigger : MonoBehaviour +{ + //tags for the trigger + public bool forceInteract; + public bool repeatable; + bool isActive; + //only worry about this if it is not repeatable + bool hasOccurred; + public int value; + // Start is called before the first frame update + void Start() + { + hasOccurred = false; + } + + //checks if player is in range of the trigger + private void OnTriggerEnter2D(Collider2D other) { + if(other.CompareTag("Player")) { + isActive = true; + } + } + + private void OnTriggerExit2D(Collider2D other) { + if(other.CompareTag("Player")) { + isActive = false; + } + if(forceInteract && repeatable) { + hasOccurred = false; + } + } + // Update is called once per frame + void Update() + { + //checks if conditions are right + if(isActive && !hasOccurred) + { + //executes action upon entering + if(forceInteract) + { + Action(); + hasOccurred = true; + isActive = false; + } + //only executes action if input is pressed + else + { + if(Input.GetKeyDown(KeyCode.E)) { + Action(); + if(!repeatable) + { + hasOccurred = true; + } + } + } + } + } + + public abstract void Action(); + +} diff --git a/Assets/Scene 1 Assets/Trigger.cs.meta b/Assets/Scene 1 Assets/Trigger.cs.meta new file mode 100644 index 0000000..d974af6 --- /dev/null +++ b/Assets/Scene 1 Assets/Trigger.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 8c5bd9ef9eec88943a606227bd1cc04a +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scenes/Scene1.unity b/Assets/Scenes/Scene1.unity index ec70642..4ab8414 100644 --- a/Assets/Scenes/Scene1.unity +++ b/Assets/Scenes/Scene1.unity @@ -465,6 +465,17 @@ Transform: m_Father: {fileID: 187176289} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &526420747 stripped +MonoBehaviour: + m_CorrespondingSourceObject: {fileID: 3758862681294202868, guid: 6ea336e93a8128346aad568255a7e6af, type: 3} + m_PrefabInstance: {fileID: 7059772332933783824} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4098cb6d8f351b44ca98b3bb6311f330, type: 3} + m_Name: + m_EditorClassIdentifier: --- !u!224 &651905127 stripped RectTransform: m_CorrespondingSourceObject: {fileID: 816242365082533824, guid: 158e2c5bf8709994a87286eb92997cd6, type: 3} @@ -1422,7 +1433,7 @@ GameObject: - component: {fileID: 1684111837} m_Layer: 3 m_Name: Char - m_TagString: Untagged + m_TagString: Player m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 @@ -1442,6 +1453,132 @@ Transform: m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1868589409 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1868589413} + - component: {fileID: 1868589412} + - component: {fileID: 1868589411} + - component: {fileID: 1868589410} + m_Layer: 0 + m_Name: testTrigger + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &1868589410 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1868589409} + m_Enabled: 0 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 58ad46602c4301d47a7b6f71726a1cd9, type: 3} + m_Name: + m_EditorClassIdentifier: + forceInteract: 0 + repeatable: 0 + value: 0 + TextBox: {fileID: 526420747} +--- !u!212 &1868589411 +SpriteRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1868589409} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 0 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_Sprite: {fileID: 4887068915747301843, guid: 73ae3db8a07b2424caf7884baa7964f8, type: 3} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_FlipX: 0 + m_FlipY: 0 + m_DrawMode: 0 + m_Size: {x: 1.5625, y: 1.625} + m_AdaptiveModeThreshold: 0.5 + m_SpriteTileMode: 0 + m_WasSpriteAssigned: 1 + m_MaskInteraction: 0 + m_SpriteSortPoint: 0 +--- !u!61 &1868589412 +BoxCollider2D: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1868589409} + m_Enabled: 1 + m_Density: 1 + m_Material: {fileID: 6200000, guid: 2b77ac6a45b826146a861b65c591e1d2, type: 2} + m_IsTrigger: 1 + m_UsedByEffector: 0 + m_UsedByComposite: 0 + m_Offset: {x: 0, y: 0} + m_SpriteTilingProperty: + border: {x: 0, y: 0, z: 0, w: 0} + pivot: {x: 0.5, y: 0.5} + oldSize: {x: 1.5625, y: 1.625} + newSize: {x: 1.5625, y: 1.625} + adaptiveTilingThreshold: 0.5 + drawMode: 0 + adaptiveTiling: 0 + m_AutoTiling: 0 + serializedVersion: 2 + m_Size: {x: 2, y: 2} + m_EdgeRadius: 1 +--- !u!4 &1868589413 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1868589409} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 7, y: -2, z: 0} + m_LocalScale: {x: 2.5, y: 2.5, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 5 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &1910266858 GameObject: m_ObjectHideFlags: 0 @@ -1550,7 +1687,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 3758862681294202868, guid: 6ea336e93a8128346aad568255a7e6af, type: 3} propertyPath: isOpen - value: 1 + value: 0 objectReference: {fileID: 0} - target: {fileID: 3758862681294202868, guid: 6ea336e93a8128346aad568255a7e6af, type: 3} propertyPath: isTalking @@ -1608,6 +1745,10 @@ PrefabInstance: propertyPath: m_Enabled value: 1 objectReference: {fileID: 0} + - target: {fileID: 7059772332581294260, guid: 6ea336e93a8128346aad568255a7e6af, type: 3} + propertyPath: m_IsActive + value: 0 + objectReference: {fileID: 0} - target: {fileID: 7059772332581294261, guid: 6ea336e93a8128346aad568255a7e6af, type: 3} propertyPath: m_Pivot.x value: 0 @@ -1686,7 +1827,11 @@ PrefabInstance: objectReference: {fileID: -6507631187338287659, guid: 8bd1780577b8eaf43ad60554189eb11e, type: 2} - target: {fileID: 7059772333487008123, guid: 6ea336e93a8128346aad568255a7e6af, type: 3} propertyPath: m_Name - value: Textbox + value: TestText + objectReference: {fileID: 0} + - target: {fileID: 7059772333487008123, guid: 6ea336e93a8128346aad568255a7e6af, type: 3} + propertyPath: m_TagString + value: Event objectReference: {fileID: 0} - target: {fileID: 7059772333487008124, guid: 6ea336e93a8128346aad568255a7e6af, type: 3} propertyPath: m_RootOrder diff --git a/ProjectSettings/TagManager.asset b/ProjectSettings/TagManager.asset index c139c90..df25647 100644 --- a/ProjectSettings/TagManager.asset +++ b/ProjectSettings/TagManager.asset @@ -5,6 +5,7 @@ TagManager: serializedVersion: 2 tags: - AudioManager + - Event layers: - Default - TransparentFX diff --git a/UserSettings/EditorUserSettings.asset b/UserSettings/EditorUserSettings.asset index efa097a..3a1378c 100644 --- a/UserSettings/EditorUserSettings.asset +++ b/UserSettings/EditorUserSettings.asset @@ -9,17 +9,17 @@ EditorUserSettings: value: 22424703114646680e0b0227036c6c111b07142f1f2b233e2867083debf42d flags: 0 RecentlyUsedScenePath-1: - value: 22424703114646680e0b0227036c6c1313191d7b623d28393930 - flags: 0 - RecentlyUsedScenePath-2: value: 22424703114646680e0b0227036c72111f1958072926337e38271427fb flags: 0 - RecentlyUsedScenePath-3: + RecentlyUsedScenePath-2: value: 22424703114646680e0b0227036c4b1505032b292926237e38271427fb flags: 0 - RecentlyUsedScenePath-4: + RecentlyUsedScenePath-3: value: 22424703114646680e0b0227036c7d15181d116d3f6815332827187df7ee3d2cfb flags: 0 + RecentlyUsedScenePath-4: + value: 22424703114646680e0b0227036c6c1313191d7b623d28393930 + flags: 0 vcSharedLogLevel: value: 0d5e400f0650 flags: 0