From 0c30c52e9223f32c4bd1ed6c68a01f51de70a7c1 Mon Sep 17 00:00:00 2001
From: Richard Marcus <richard.marcus@fau.de>
Date: Fri, 3 Jan 2020 20:05:33 +0100
Subject: [PATCH] some files + moved UI to the right a bit

---
 Assets/HideUI.cs                              | 48 +++++++++
 Assets/HideUI.cs.meta                         | 11 +++
 Assets/HoverText.cs                           | 28 ++++++
 Assets/HoverText.cs.meta                      | 11 +++
 Assets/InventoryStuff/Inventory.meta          |  8 ++
 Assets/InventoryStuff/Items/images/Delete.png |  3 +
 .../Items/images/Delete.png.meta              | 99 +++++++++++++++++++
 Assets/InventoryStuff/Items/images/Extra.png  |  3 +
 .../Items/images/Extra.png.meta               | 99 +++++++++++++++++++
 Assets/ToolModeSelector.cs                    | 73 ++++++++++++++
 Assets/ToolModeSelector.cs.meta               | 11 +++
 Assets/TreeWorld.unity                        |  2 +-
 12 files changed, 395 insertions(+), 1 deletion(-)
 create mode 100644 Assets/HideUI.cs
 create mode 100644 Assets/HideUI.cs.meta
 create mode 100644 Assets/HoverText.cs
 create mode 100644 Assets/HoverText.cs.meta
 create mode 100644 Assets/InventoryStuff/Inventory.meta
 create mode 100644 Assets/InventoryStuff/Items/images/Delete.png
 create mode 100644 Assets/InventoryStuff/Items/images/Delete.png.meta
 create mode 100644 Assets/InventoryStuff/Items/images/Extra.png
 create mode 100644 Assets/InventoryStuff/Items/images/Extra.png.meta
 create mode 100644 Assets/ToolModeSelector.cs
 create mode 100644 Assets/ToolModeSelector.cs.meta

diff --git a/Assets/HideUI.cs b/Assets/HideUI.cs
new file mode 100644
index 00000000..5800b317
--- /dev/null
+++ b/Assets/HideUI.cs
@@ -0,0 +1,48 @@
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+
+public class HideUI : MonoBehaviour
+{
+
+    public KeyCode Key = KeyCode.F1;
+    public UnityStandardAssets.Characters.FirstPerson.FirstPersonController CamControl;
+    public bool LockOnly = true;
+    public MeshRenderer CursorRenderer;
+
+    void Start()
+    {
+        if (!LockOnly)
+        {
+            bool camActive = transform.localScale.x != 1;
+            CamControl.enabled = camActive;
+            CursorRenderer.enabled = camActive;
+        }
+
+    }
+
+    // Update is called once per frame
+    void Update()
+    {
+        if (Input.GetKeyDown(Key))
+        {
+
+            if (LockOnly)
+            {
+                CamControl.enabled = !CamControl.enabled;
+                CursorRenderer.enabled = CamControl.enabled;
+            }
+            else
+            {
+                transform.localScale = Vector3.one * ((transform.localScale.x + 1) % 2);
+                bool camActive = transform.localScale.x != 1;
+
+
+                CamControl.enabled = camActive;
+                CursorRenderer.enabled = camActive;
+            }
+
+
+        }
+    }
+}
diff --git a/Assets/HideUI.cs.meta b/Assets/HideUI.cs.meta
new file mode 100644
index 00000000..84fa25e9
--- /dev/null
+++ b/Assets/HideUI.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: c5dcea29b6606df49b7b08146b7e5b16
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 
diff --git a/Assets/HoverText.cs b/Assets/HoverText.cs
new file mode 100644
index 00000000..e3d07c9a
--- /dev/null
+++ b/Assets/HoverText.cs
@@ -0,0 +1,28 @@
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+using UnityEngine.EventSystems;
+
+public class HoverText : MonoBehaviour, IPointerEnterHandler, IPointerExitHandler
+{
+    Transform TextTransform;
+    // Start is called before the first frame update
+    void Start()
+    {
+        TextTransform = transform.GetChild(0);
+    }
+
+    public void OnPointerEnter(PointerEventData pointerEventData)
+    {
+        Debug.Log("hover");
+        TextTransform.gameObject.SetActive(true);
+    }
+
+    //Detect when Cursor leaves the GameObject
+    public void OnPointerExit(PointerEventData pointerEventData)
+    {
+        TextTransform.gameObject.SetActive(false);
+    }
+
+ 
+}
diff --git a/Assets/HoverText.cs.meta b/Assets/HoverText.cs.meta
new file mode 100644
index 00000000..f86d37fd
--- /dev/null
+++ b/Assets/HoverText.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: fc5c3ad69a727824d9d57b8edd909a1a
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 
diff --git a/Assets/InventoryStuff/Inventory.meta b/Assets/InventoryStuff/Inventory.meta
new file mode 100644
index 00000000..9818e1d1
--- /dev/null
+++ b/Assets/InventoryStuff/Inventory.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: b543d9677cbde534ab69c0a229bfdb06
+folderAsset: yes
+DefaultImporter:
+  externalObjects: {}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 
diff --git a/Assets/InventoryStuff/Items/images/Delete.png b/Assets/InventoryStuff/Items/images/Delete.png
new file mode 100644
index 00000000..c8a47f6a
--- /dev/null
+++ b/Assets/InventoryStuff/Items/images/Delete.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:c3529d7342c60b62b10e5a22cf1082c6751f7ab103e57d0752f95da7eb957c07
+size 11160
diff --git a/Assets/InventoryStuff/Items/images/Delete.png.meta b/Assets/InventoryStuff/Items/images/Delete.png.meta
new file mode 100644
index 00000000..530a135b
--- /dev/null
+++ b/Assets/InventoryStuff/Items/images/Delete.png.meta
@@ -0,0 +1,99 @@
+fileFormatVersion: 2
+guid: d456617ba2282854d9570dcebcc2b279
+TextureImporter:
+  fileIDToRecycleName: {}
+  externalObjects: {}
+  serializedVersion: 9
+  mipmaps:
+    mipMapMode: 0
+    enableMipMap: 0
+    sRGBTexture: 1
+    linearTexture: 0
+    fadeOut: 0
+    borderMipMap: 0
+    mipMapsPreserveCoverage: 0
+    alphaTestReferenceValue: 0.5
+    mipMapFadeDistanceStart: 1
+    mipMapFadeDistanceEnd: 3
+  bumpmap:
+    convertToNormalMap: 0
+    externalNormalMap: 0
+    heightScale: 0.25
+    normalMapFilter: 0
+  isReadable: 0
+  streamingMipmaps: 0
+  streamingMipmapsPriority: 0
+  grayScaleToAlpha: 0
+  generateCubemap: 6
+  cubemapConvolution: 0
+  seamlessCubemap: 0
+  textureFormat: 1
+  maxTextureSize: 2048
+  textureSettings:
+    serializedVersion: 2
+    filterMode: -1
+    aniso: -1
+    mipBias: -100
+    wrapU: 1
+    wrapV: 1
+    wrapW: -1
+  nPOTScale: 0
+  lightmap: 0
+  compressionQuality: 50
+  spriteMode: 1
+  spriteExtrude: 1
+  spriteMeshType: 1
+  alignment: 0
+  spritePivot: {x: 0.5, y: 0.5}
+  spritePixelsToUnits: 100
+  spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+  spriteGenerateFallbackPhysicsShape: 1
+  alphaUsage: 1
+  alphaIsTransparency: 1
+  spriteTessellationDetail: -1
+  textureType: 8
+  textureShape: 1
+  singleChannelComponent: 0
+  maxTextureSizeSet: 0
+  compressionQualitySet: 0
+  textureFormatSet: 0
+  platformSettings:
+  - serializedVersion: 2
+    buildTarget: DefaultTexturePlatform
+    maxTextureSize: 2048
+    resizeAlgorithm: 0
+    textureFormat: -1
+    textureCompression: 1
+    compressionQuality: 50
+    crunchedCompression: 0
+    allowsAlphaSplitting: 0
+    overridden: 0
+    androidETC2FallbackOverride: 0
+  - serializedVersion: 2
+    buildTarget: Standalone
+    maxTextureSize: 2048
+    resizeAlgorithm: 0
+    textureFormat: -1
+    textureCompression: 1
+    compressionQuality: 50
+    crunchedCompression: 0
+    allowsAlphaSplitting: 0
+    overridden: 0
+    androidETC2FallbackOverride: 0
+  spriteSheet:
+    serializedVersion: 2
+    sprites: []
+    outline: []
+    physicsShape: []
+    bones: []
+    spriteID: c55f6a1b720f2de47b83863fb1590096
+    vertices: []
+    indices: 
+    edges: []
+    weights: []
+  spritePackingTag: 
+  pSDRemoveMatte: 0
+  pSDShowRemoveMatteOption: 0
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 
diff --git a/Assets/InventoryStuff/Items/images/Extra.png b/Assets/InventoryStuff/Items/images/Extra.png
new file mode 100644
index 00000000..5c9597ad
--- /dev/null
+++ b/Assets/InventoryStuff/Items/images/Extra.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:71fa60d23a65087a0a996d83302d568cb9b3e50a1c08da9338c065e4ffe9f36f
+size 4009
diff --git a/Assets/InventoryStuff/Items/images/Extra.png.meta b/Assets/InventoryStuff/Items/images/Extra.png.meta
new file mode 100644
index 00000000..20b091e0
--- /dev/null
+++ b/Assets/InventoryStuff/Items/images/Extra.png.meta
@@ -0,0 +1,99 @@
+fileFormatVersion: 2
+guid: f4c84b8f318e3cb469eb72c734ccbf39
+TextureImporter:
+  fileIDToRecycleName: {}
+  externalObjects: {}
+  serializedVersion: 9
+  mipmaps:
+    mipMapMode: 0
+    enableMipMap: 0
+    sRGBTexture: 1
+    linearTexture: 0
+    fadeOut: 0
+    borderMipMap: 0
+    mipMapsPreserveCoverage: 0
+    alphaTestReferenceValue: 0.5
+    mipMapFadeDistanceStart: 1
+    mipMapFadeDistanceEnd: 3
+  bumpmap:
+    convertToNormalMap: 0
+    externalNormalMap: 0
+    heightScale: 0.25
+    normalMapFilter: 0
+  isReadable: 0
+  streamingMipmaps: 0
+  streamingMipmapsPriority: 0
+  grayScaleToAlpha: 0
+  generateCubemap: 6
+  cubemapConvolution: 0
+  seamlessCubemap: 0
+  textureFormat: 1
+  maxTextureSize: 2048
+  textureSettings:
+    serializedVersion: 2
+    filterMode: -1
+    aniso: -1
+    mipBias: -100
+    wrapU: 1
+    wrapV: 1
+    wrapW: -1
+  nPOTScale: 0
+  lightmap: 0
+  compressionQuality: 50
+  spriteMode: 1
+  spriteExtrude: 1
+  spriteMeshType: 1
+  alignment: 0
+  spritePivot: {x: 0.5, y: 0.5}
+  spritePixelsToUnits: 100
+  spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+  spriteGenerateFallbackPhysicsShape: 1
+  alphaUsage: 1
+  alphaIsTransparency: 1
+  spriteTessellationDetail: -1
+  textureType: 8
+  textureShape: 1
+  singleChannelComponent: 0
+  maxTextureSizeSet: 0
+  compressionQualitySet: 0
+  textureFormatSet: 0
+  platformSettings:
+  - serializedVersion: 2
+    buildTarget: DefaultTexturePlatform
+    maxTextureSize: 2048
+    resizeAlgorithm: 0
+    textureFormat: -1
+    textureCompression: 1
+    compressionQuality: 50
+    crunchedCompression: 0
+    allowsAlphaSplitting: 0
+    overridden: 0
+    androidETC2FallbackOverride: 0
+  - serializedVersion: 2
+    buildTarget: Standalone
+    maxTextureSize: 2048
+    resizeAlgorithm: 0
+    textureFormat: -1
+    textureCompression: 1
+    compressionQuality: 50
+    crunchedCompression: 0
+    allowsAlphaSplitting: 0
+    overridden: 0
+    androidETC2FallbackOverride: 0
+  spriteSheet:
+    serializedVersion: 2
+    sprites: []
+    outline: []
+    physicsShape: []
+    bones: []
+    spriteID: c7e5933ed8db8fe49bda7c691fdeef6d
+    vertices: []
+    indices: 
+    edges: []
+    weights: []
+  spritePackingTag: 
+  pSDRemoveMatte: 0
+  pSDShowRemoveMatteOption: 0
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 
diff --git a/Assets/ToolModeSelector.cs b/Assets/ToolModeSelector.cs
new file mode 100644
index 00000000..4c127712
--- /dev/null
+++ b/Assets/ToolModeSelector.cs
@@ -0,0 +1,73 @@
+using System;
+using System.Collections;
+using System.Collections.Generic;
+using System.Linq;
+using UnityEngine;
+using UnityEngine.UI;
+
+public class ToolModeSelector : MonoBehaviour
+{
+    private Button[] Buttons;
+
+    // Start is called before the first frame update
+    void Start()
+    {
+        //Requires buttons to be in the same order as the toolmode enum
+        //We could fully generate the buttons instead if we have icons with file names matching the enums
+        var buttons = GetComponentsInChildren<Button>();
+        Buttons = buttons.OrderBy(x => x.transform.position.x).ToArray();
+
+        for(int i = 0; i< Buttons.Length;++i)
+        {
+            int copiedIndex = i; //this is important
+            var button = Buttons[i];
+            button.onClick.AddListener(()=> Select(copiedIndex));
+            
+        }
+
+    
+        Buttons[(int)CommunicationEvents.ActiveToolMode].transform.localScale *= 2;
+
+    }
+
+    public void Select(int id)
+    {
+
+        Buttons[(int)CommunicationEvents.ActiveToolMode].transform.localScale /= 2;
+        CommunicationEvents.ToolModeChangedEvent.Invoke((ToolMode)id);
+        Buttons[(int)CommunicationEvents.ActiveToolMode].transform.localScale *= 2;
+    }
+
+
+    // Update is called once per frame
+    void Update()
+    {   //Check if the ToolMode was switched
+        CheckToolModeSelection();
+        
+    }
+
+
+    //Checks if the ToolMode was switched by User, and handle it
+    void CheckToolModeSelection()
+    {
+        if (Input.GetButtonDown("ToolMode"))
+        {
+            ToolMode tempActiveToolMode = CommunicationEvents.ActiveToolMode;
+            int id = ((int)tempActiveToolMode + 1) % System.Enum.GetNames(typeof(ToolMode)).Length;
+           // tempActiveToolMode =(ToolMode) id ;
+            //Invoke the Handler for the Facts
+            // CommunicationEvents.ToolModeChangedEvent.Invoke(tempActiveToolMode);
+            Select(id);
+        }else if(Input.GetAxis("Mouse ScrollWheel") !=0){
+
+            int move = (int) Mathf.Sign(Input.GetAxis("Mouse ScrollWheel"));
+
+            ToolMode tempActiveToolMode = CommunicationEvents.ActiveToolMode;
+            int id = ((int)tempActiveToolMode + move) % System.Enum.GetNames(typeof(ToolMode)).Length;
+            if (id < 0) id = System.Enum.GetNames(typeof(ToolMode)).Length-1;
+            Select(id);
+        }
+
+
+    }
+}
diff --git a/Assets/ToolModeSelector.cs.meta b/Assets/ToolModeSelector.cs.meta
new file mode 100644
index 00000000..2e0400de
--- /dev/null
+++ b/Assets/ToolModeSelector.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 99a29f09e243f1a4a9048a7e9fea0aec
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 
diff --git a/Assets/TreeWorld.unity b/Assets/TreeWorld.unity
index 7997c7b8..7461e9e1 100644
--- a/Assets/TreeWorld.unity
+++ b/Assets/TreeWorld.unity
@@ -1448,7 +1448,7 @@ RectTransform:
   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_AnchoredPosition: {x: 133, y: 0}
   m_SizeDelta: {x: 100, y: 100}
   m_Pivot: {x: 0.5, y: 0.5}
 --- !u!114 &1017737550
-- 
GitLab