game: info collecting mechanic, can build off to add as data in web
This commit is contained in:
parent
10b5abbfdc
commit
d228d1cd34
5 changed files with 229 additions and 24 deletions
|
@ -19,7 +19,7 @@ GameObject:
|
||||||
- component: {fileID: 5684876363966156978}
|
- component: {fileID: 5684876363966156978}
|
||||||
m_Layer: 0
|
m_Layer: 0
|
||||||
m_Name: Needle_Reza
|
m_Name: Needle_Reza
|
||||||
m_TagString: Untagged
|
m_TagString: InfoObject
|
||||||
m_Icon: {fileID: 0}
|
m_Icon: {fileID: 0}
|
||||||
m_NavMeshLayer: 0
|
m_NavMeshLayer: 0
|
||||||
m_StaticEditorFlags: 0
|
m_StaticEditorFlags: 0
|
||||||
|
|
|
@ -695,7 +695,7 @@ RectTransform:
|
||||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||||
m_AnchorMin: {x: 0.5, y: 0.5}
|
m_AnchorMin: {x: 0.5, y: 0.5}
|
||||||
m_AnchorMax: {x: 0.5, y: 0.5}
|
m_AnchorMax: {x: 0.5, y: 0.5}
|
||||||
m_AnchoredPosition: {x: 367, y: 191}
|
m_AnchoredPosition: {x: 370, y: 181}
|
||||||
m_SizeDelta: {x: 200, y: 50}
|
m_SizeDelta: {x: 200, y: 50}
|
||||||
m_Pivot: {x: 0.5, y: 0.5}
|
m_Pivot: {x: 0.5, y: 0.5}
|
||||||
--- !u!114 &9836844
|
--- !u!114 &9836844
|
||||||
|
@ -745,8 +745,8 @@ MonoBehaviour:
|
||||||
m_faceColor:
|
m_faceColor:
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
rgba: 4294967295
|
rgba: 4294967295
|
||||||
m_fontSize: 30
|
m_fontSize: 16
|
||||||
m_fontSizeBase: 30
|
m_fontSizeBase: 16
|
||||||
m_fontWeight: 400
|
m_fontWeight: 400
|
||||||
m_enableAutoSizing: 0
|
m_enableAutoSizing: 0
|
||||||
m_fontSizeMin: 18
|
m_fontSizeMin: 18
|
||||||
|
@ -781,7 +781,7 @@ MonoBehaviour:
|
||||||
m_VertexBufferAutoSizeReduction: 0
|
m_VertexBufferAutoSizeReduction: 0
|
||||||
m_useMaxVisibleDescender: 1
|
m_useMaxVisibleDescender: 1
|
||||||
m_pageToDisplay: 1
|
m_pageToDisplay: 1
|
||||||
m_margin: {x: -231.23126, y: 0, z: 45.508484, w: 0}
|
m_margin: {x: -231.23126, y: 0, z: 116.85144, w: -79.70676}
|
||||||
m_isUsingLegacyAnimationComponent: 0
|
m_isUsingLegacyAnimationComponent: 0
|
||||||
m_isVolumetricText: 0
|
m_isVolumetricText: 0
|
||||||
m_hasFontAssetChanged: 0
|
m_hasFontAssetChanged: 0
|
||||||
|
@ -62387,7 +62387,7 @@ MeshCollider:
|
||||||
serializedVersion: 5
|
serializedVersion: 5
|
||||||
m_Convex: 0
|
m_Convex: 0
|
||||||
m_CookingOptions: 30
|
m_CookingOptions: 30
|
||||||
m_Mesh: {fileID: 1837428087}
|
m_Mesh: {fileID: 2012346953}
|
||||||
--- !u!33 &907749283
|
--- !u!33 &907749283
|
||||||
MeshFilter:
|
MeshFilter:
|
||||||
m_ObjectHideFlags: 10
|
m_ObjectHideFlags: 10
|
||||||
|
@ -73219,11 +73219,11 @@ PrefabInstance:
|
||||||
objectReference: {fileID: 2105633704}
|
objectReference: {fileID: 2105633704}
|
||||||
- target: {fileID: 2618367384921537347, guid: 115e0f30c5ec185489b02437aec67077, type: 3}
|
- target: {fileID: 2618367384921537347, guid: 115e0f30c5ec185489b02437aec67077, type: 3}
|
||||||
propertyPath: m_VersionIndex
|
propertyPath: m_VersionIndex
|
||||||
value: 3215
|
value: 3221
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 3510408986590439666, guid: 115e0f30c5ec185489b02437aec67077, type: 3}
|
- target: {fileID: 3510408986590439666, guid: 115e0f30c5ec185489b02437aec67077, type: 3}
|
||||||
propertyPath: m_Name
|
propertyPath: m_Name
|
||||||
value: Needle_Reza (1)
|
value: Needles
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 4226959381646210589, guid: 115e0f30c5ec185489b02437aec67077, type: 3}
|
- target: {fileID: 4226959381646210589, guid: 115e0f30c5ec185489b02437aec67077, type: 3}
|
||||||
propertyPath: m_Mesh
|
propertyPath: m_Mesh
|
||||||
|
@ -80808,6 +80808,140 @@ MonoBehaviour:
|
||||||
m_SelectedFaces:
|
m_SelectedFaces:
|
||||||
m_SelectedEdges: []
|
m_SelectedEdges: []
|
||||||
m_SelectedVertices:
|
m_SelectedVertices:
|
||||||
|
--- !u!1 &1177838948
|
||||||
|
GameObject:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
serializedVersion: 6
|
||||||
|
m_Component:
|
||||||
|
- component: {fileID: 1177838949}
|
||||||
|
- component: {fileID: 1177838951}
|
||||||
|
- component: {fileID: 1177838950}
|
||||||
|
m_Layer: 5
|
||||||
|
m_Name: Crosshair
|
||||||
|
m_TagString: Untagged
|
||||||
|
m_Icon: {fileID: 0}
|
||||||
|
m_NavMeshLayer: 0
|
||||||
|
m_StaticEditorFlags: 0
|
||||||
|
m_IsActive: 1
|
||||||
|
--- !u!224 &1177838949
|
||||||
|
RectTransform:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 1177838948}
|
||||||
|
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||||
|
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||||
|
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||||
|
m_ConstrainProportionsScale: 0
|
||||||
|
m_Children: []
|
||||||
|
m_Father: {fileID: 1776114652}
|
||||||
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||||
|
m_AnchorMin: {x: 0.5, y: 0.5}
|
||||||
|
m_AnchorMax: {x: 0.5, y: 0.5}
|
||||||
|
m_AnchoredPosition: {x: 0, y: 0}
|
||||||
|
m_SizeDelta: {x: 200, y: 50}
|
||||||
|
m_Pivot: {x: 0.5, y: 0.5}
|
||||||
|
--- !u!114 &1177838950
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 1177838948}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3}
|
||||||
|
m_Name:
|
||||||
|
m_EditorClassIdentifier:
|
||||||
|
m_Material: {fileID: 0}
|
||||||
|
m_Color: {r: 1, g: 1, b: 1, a: 1}
|
||||||
|
m_RaycastTarget: 1
|
||||||
|
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
|
||||||
|
m_Maskable: 1
|
||||||
|
m_OnCullStateChanged:
|
||||||
|
m_PersistentCalls:
|
||||||
|
m_Calls: []
|
||||||
|
m_text: +
|
||||||
|
m_isRightToLeft: 0
|
||||||
|
m_fontAsset: {fileID: 11400000, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2}
|
||||||
|
m_sharedMaterial: {fileID: 2180264, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2}
|
||||||
|
m_fontSharedMaterials: []
|
||||||
|
m_fontMaterial: {fileID: 0}
|
||||||
|
m_fontMaterials: []
|
||||||
|
m_fontColor32:
|
||||||
|
serializedVersion: 2
|
||||||
|
rgba: 4294967295
|
||||||
|
m_fontColor: {r: 1, g: 1, b: 1, a: 1}
|
||||||
|
m_enableVertexGradient: 0
|
||||||
|
m_colorMode: 3
|
||||||
|
m_fontColorGradient:
|
||||||
|
topLeft: {r: 1, g: 1, b: 1, a: 1}
|
||||||
|
topRight: {r: 1, g: 1, b: 1, a: 1}
|
||||||
|
bottomLeft: {r: 1, g: 1, b: 1, a: 1}
|
||||||
|
bottomRight: {r: 1, g: 1, b: 1, a: 1}
|
||||||
|
m_fontColorGradientPreset: {fileID: 0}
|
||||||
|
m_spriteAsset: {fileID: 0}
|
||||||
|
m_tintAllSprites: 0
|
||||||
|
m_StyleSheet: {fileID: 0}
|
||||||
|
m_TextStyleHashCode: -1183493901
|
||||||
|
m_overrideHtmlColors: 0
|
||||||
|
m_faceColor:
|
||||||
|
serializedVersion: 2
|
||||||
|
rgba: 4294967295
|
||||||
|
m_fontSize: 18
|
||||||
|
m_fontSizeBase: 18
|
||||||
|
m_fontWeight: 400
|
||||||
|
m_enableAutoSizing: 0
|
||||||
|
m_fontSizeMin: 18
|
||||||
|
m_fontSizeMax: 72
|
||||||
|
m_fontStyle: 0
|
||||||
|
m_HorizontalAlignment: 2
|
||||||
|
m_VerticalAlignment: 512
|
||||||
|
m_textAlignment: 65535
|
||||||
|
m_characterSpacing: 0
|
||||||
|
m_wordSpacing: 0
|
||||||
|
m_lineSpacing: 0
|
||||||
|
m_lineSpacingMax: 0
|
||||||
|
m_paragraphSpacing: 0
|
||||||
|
m_charWidthMaxAdj: 0
|
||||||
|
m_enableWordWrapping: 1
|
||||||
|
m_wordWrappingRatios: 0.4
|
||||||
|
m_overflowMode: 0
|
||||||
|
m_linkedTextComponent: {fileID: 0}
|
||||||
|
parentLinkedComponent: {fileID: 0}
|
||||||
|
m_enableKerning: 1
|
||||||
|
m_enableExtraPadding: 0
|
||||||
|
checkPaddingRequired: 0
|
||||||
|
m_isRichText: 1
|
||||||
|
m_parseCtrlCharacters: 1
|
||||||
|
m_isOrthographic: 1
|
||||||
|
m_isCullingEnabled: 0
|
||||||
|
m_horizontalMapping: 0
|
||||||
|
m_verticalMapping: 0
|
||||||
|
m_uvLineOffset: 0
|
||||||
|
m_geometrySortingOrder: 0
|
||||||
|
m_IsTextObjectScaleStatic: 0
|
||||||
|
m_VertexBufferAutoSizeReduction: 0
|
||||||
|
m_useMaxVisibleDescender: 1
|
||||||
|
m_pageToDisplay: 1
|
||||||
|
m_margin: {x: 0, y: 0, z: 0, w: 0}
|
||||||
|
m_isUsingLegacyAnimationComponent: 0
|
||||||
|
m_isVolumetricText: 0
|
||||||
|
m_hasFontAssetChanged: 0
|
||||||
|
m_baseMaterial: {fileID: 0}
|
||||||
|
m_maskOffset: {x: 0, y: 0, z: 0, w: 0}
|
||||||
|
--- !u!222 &1177838951
|
||||||
|
CanvasRenderer:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 1177838948}
|
||||||
|
m_CullTransparentMesh: 1
|
||||||
--- !u!1 &1184053919
|
--- !u!1 &1184053919
|
||||||
GameObject:
|
GameObject:
|
||||||
m_ObjectHideFlags: 0
|
m_ObjectHideFlags: 0
|
||||||
|
@ -114248,6 +114382,7 @@ RectTransform:
|
||||||
m_Children:
|
m_Children:
|
||||||
- {fileID: 707184550}
|
- {fileID: 707184550}
|
||||||
- {fileID: 5551323}
|
- {fileID: 5551323}
|
||||||
|
- {fileID: 1177838949}
|
||||||
m_Father: {fileID: 0}
|
m_Father: {fileID: 0}
|
||||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||||
m_AnchorMin: {x: 0, y: 0}
|
m_AnchorMin: {x: 0, y: 0}
|
||||||
|
@ -122441,6 +122576,8 @@ MonoBehaviour:
|
||||||
gazeTimeRequired: 2
|
gazeTimeRequired: 2
|
||||||
displayTime: 5
|
displayTime: 5
|
||||||
infoText: {fileID: 9836844}
|
infoText: {fileID: 9836844}
|
||||||
|
audioSource: {fileID: 1898819871}
|
||||||
|
scribbleSound: {fileID: 8300000, guid: 28757b19d93f6db4bb4b45260f18bc87, type: 3}
|
||||||
--- !u!1 &1853702029
|
--- !u!1 &1853702029
|
||||||
GameObject:
|
GameObject:
|
||||||
m_ObjectHideFlags: 0
|
m_ObjectHideFlags: 0
|
||||||
|
@ -148129,11 +148266,11 @@ PrefabInstance:
|
||||||
objectReference: {fileID: 1425780483}
|
objectReference: {fileID: 1425780483}
|
||||||
- target: {fileID: 2618367384921537347, guid: 115e0f30c5ec185489b02437aec67077, type: 3}
|
- target: {fileID: 2618367384921537347, guid: 115e0f30c5ec185489b02437aec67077, type: 3}
|
||||||
propertyPath: m_VersionIndex
|
propertyPath: m_VersionIndex
|
||||||
value: 3215
|
value: 3221
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 3510408986590439666, guid: 115e0f30c5ec185489b02437aec67077, type: 3}
|
- target: {fileID: 3510408986590439666, guid: 115e0f30c5ec185489b02437aec67077, type: 3}
|
||||||
propertyPath: m_Name
|
propertyPath: m_Name
|
||||||
value: Needle_Reza
|
value: Needles
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 4226959381646210589, guid: 115e0f30c5ec185489b02437aec67077, type: 3}
|
- target: {fileID: 4226959381646210589, guid: 115e0f30c5ec185489b02437aec67077, type: 3}
|
||||||
propertyPath: m_Mesh
|
propertyPath: m_Mesh
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
/*
|
/*
|
||||||
Author: Reza
|
Author: Reza
|
||||||
Date: 3/2/25
|
Date: 3/2/25
|
||||||
Description: To keep track of tasks and game mechanics
|
Description: To keep track of tasks, which level the player is at, and game mechanics
|
||||||
*/
|
*/
|
||||||
|
|
||||||
using System.Collections;
|
using System.Collections;
|
||||||
|
@ -10,6 +10,45 @@ using UnityEngine;
|
||||||
|
|
||||||
public class GameManager : MonoBehaviour
|
public class GameManager : MonoBehaviour
|
||||||
{
|
{
|
||||||
|
/* Game Story Flow:
|
||||||
|
- Player cleans room while waiting for parents to leave
|
||||||
|
- The door unlocks after room is cleaned and explored and player either sweeps floor or brushes teeth
|
||||||
|
-
|
||||||
|
*/
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// singleton pattern: define instance field for accessing the singleton elsewhere
|
||||||
|
/// </summary>
|
||||||
|
public static GameManager Instance;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// enforces singleton behaviour; sets doesn't destroy on load and checks for multiple instances
|
||||||
|
/// </summary>
|
||||||
|
private void Awake()
|
||||||
|
{
|
||||||
|
// check if instance hasn't been set yet
|
||||||
|
if (Instance == null)
|
||||||
|
{
|
||||||
|
Debug.Log("awake as singleton instance, setting self as the forever-alive instance");
|
||||||
|
Instance = this;
|
||||||
|
DontDestroyOnLoad(gameObject);
|
||||||
|
}
|
||||||
|
// check if instance is already set and it's not this instance
|
||||||
|
else if (Instance != null && Instance != this)
|
||||||
|
{
|
||||||
|
Debug.Log("awake as non-singleton instance, destroying self");
|
||||||
|
Destroy(gameObject);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// trackable game tasks (Reza)
|
||||||
|
/// </summary>
|
||||||
|
private bool bedroomCleaned = false;
|
||||||
|
private bool teethBrushed = false;
|
||||||
|
private bool floorSweeped = false;
|
||||||
|
|
||||||
|
|
||||||
// Start is called before the first frame update
|
// Start is called before the first frame update
|
||||||
void Start()
|
void Start()
|
||||||
{
|
{
|
||||||
|
|
|
@ -15,10 +15,10 @@ public class InfoCollector : MonoBehaviour
|
||||||
public float detectionRange = 2f;
|
public float detectionRange = 2f;
|
||||||
|
|
||||||
// Defines how long the player must look at the object for to collect information
|
// Defines how long the player must look at the object for to collect information
|
||||||
public float gazeTimeRequired = 2f;
|
public float gazeTimeRequired = 1.5f;
|
||||||
|
|
||||||
// Defines how long the information UI will remain on screen
|
// Defines how long the information UI will remain on screen
|
||||||
public float displayTime = 5f;
|
public float displayTime = 7f;
|
||||||
|
|
||||||
// Defines the UI text to display
|
// Defines the UI text to display
|
||||||
public TMP_Text infoText;
|
public TMP_Text infoText;
|
||||||
|
@ -34,6 +34,13 @@ public class InfoCollector : MonoBehaviour
|
||||||
|
|
||||||
// Tracks how long the player has been looking at the object
|
// Tracks how long the player has been looking at the object
|
||||||
private float gazeTimer = 0f;
|
private float gazeTimer = 0f;
|
||||||
|
|
||||||
|
// Defines Audio References
|
||||||
|
public AudioSource audioSource;
|
||||||
|
public AudioClip scribbleSound;
|
||||||
|
|
||||||
|
// Store objects that have already been collected
|
||||||
|
private HashSet<GameObject> collectedObjects = new HashSet<GameObject>();
|
||||||
|
|
||||||
void Start()
|
void Start()
|
||||||
{
|
{
|
||||||
|
@ -56,23 +63,29 @@ public class InfoCollector : MonoBehaviour
|
||||||
// Ensures that relevant info objects are detected
|
// Ensures that relevant info objects are detected
|
||||||
if (hit.collider.CompareTag("InfoObject"))
|
if (hit.collider.CompareTag("InfoObject"))
|
||||||
{
|
{
|
||||||
// If the player is still looking at the same object, the gaze time
|
GameObject targetObject = hit.collider.gameObject;
|
||||||
if (currentObject == hit.collider.gameObject)
|
|
||||||
|
// **Fix: Stop gaze timer if object has been collected**
|
||||||
|
if (collectedObjects.Contains(targetObject))
|
||||||
|
{
|
||||||
|
return; // Exit without increasing gaze time
|
||||||
|
}
|
||||||
|
|
||||||
|
// If the player is still looking at the same object, increase gaze time
|
||||||
|
if (currentObject == targetObject)
|
||||||
{
|
{
|
||||||
// Increases gaze time
|
|
||||||
gazeTimer += Time.deltaTime;
|
gazeTimer += Time.deltaTime;
|
||||||
|
|
||||||
// If gaze time reaches required time and is not displaying yet, display the information
|
// If gaze time reaches required time and info is not displayed yet
|
||||||
if (gazeTimer >= gazeTimeRequired && !isDisplaying)
|
if (gazeTimer >= gazeTimeRequired && !isDisplaying)
|
||||||
{
|
{
|
||||||
// Display object information
|
CollectInfo(targetObject);
|
||||||
CollectInfo(currentObject);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
// Reset timer if looking at a new object
|
// Reset timer when looking at a new object
|
||||||
currentObject = hit.collider.gameObject;
|
currentObject = targetObject;
|
||||||
gazeTimer = 0f;
|
gazeTimer = 0f;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -91,9 +104,20 @@ public class InfoCollector : MonoBehaviour
|
||||||
// Prevents spamming of display
|
// Prevents spamming of display
|
||||||
isDisplaying = true;
|
isDisplaying = true;
|
||||||
|
|
||||||
|
// **Fix: Mark object as collected**
|
||||||
|
collectedObjects.Add(obj);
|
||||||
|
|
||||||
// Displays information
|
// Displays information
|
||||||
infoText.text = "Info Collected: " + obj.name + "\n" + GetObjectInfo(obj);
|
infoText.text = "<size=15>Info Collected:</size>\n\n" +
|
||||||
|
"<size=20>" + obj.name + "</size>\n" +
|
||||||
|
"<size=16>" + GetObjectInfo(obj) + "</size>";
|
||||||
Debug.Log("Collected information from: " + obj.name);
|
Debug.Log("Collected information from: " + obj.name);
|
||||||
|
|
||||||
|
// Play sound only if no other sound is currently playing
|
||||||
|
if (!audioSource.isPlaying)
|
||||||
|
{
|
||||||
|
audioSource.PlayOneShot(scribbleSound);
|
||||||
|
}
|
||||||
|
|
||||||
// Clears text after displayed time
|
// Clears text after displayed time
|
||||||
Invoke(nameof(ClearText), displayTime);
|
Invoke(nameof(ClearText), displayTime);
|
||||||
|
@ -112,9 +136,13 @@ public class InfoCollector : MonoBehaviour
|
||||||
string GetObjectInfo(GameObject obj)
|
string GetObjectInfo(GameObject obj)
|
||||||
{
|
{
|
||||||
// Check if the object's name is the same
|
// Check if the object's name is the same
|
||||||
if (obj.CompareTag("Needles"))
|
if (obj.name == "Needles")
|
||||||
// Returns predefined information
|
// Returns predefined information
|
||||||
return "Test";
|
return "A used needle. If my parents finds out they would murder me.";
|
||||||
|
|
||||||
|
if (obj.name == "Bottles")
|
||||||
|
// Returns predefined information
|
||||||
|
return "An empty bottle. It numbs the pain... but not for long enough";
|
||||||
|
|
||||||
// Default information if there is no specific case
|
// Default information if there is no specific case
|
||||||
return "An unknown object with mysterious origins.";
|
return "An unknown object with mysterious origins.";
|
||||||
|
|
|
@ -11,6 +11,7 @@ TagManager:
|
||||||
- InfoObject
|
- InfoObject
|
||||||
- Bottle
|
- Bottle
|
||||||
- Dirt
|
- Dirt
|
||||||
|
- Needles
|
||||||
layers:
|
layers:
|
||||||
- Default
|
- Default
|
||||||
- TransparentFX
|
- TransparentFX
|
||||||
|
|
Loading…
Add table
Reference in a new issue