diff --git a/Assembly-CSharp.csproj b/Assembly-CSharp.csproj index a827c9d..9dc1e2a 100644 --- a/Assembly-CSharp.csproj +++ b/Assembly-CSharp.csproj @@ -66,6 +66,7 @@ + diff --git a/Assets/Scenes/Main.unity b/Assets/Scenes/Main.unity index 99fa4da..c32aa00 100644 --- a/Assets/Scenes/Main.unity +++ b/Assets/Scenes/Main.unity @@ -189,6 +189,97 @@ CanvasRenderer: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 264621893} m_CullTransparentMesh: 0 +--- !u!1 &297179570 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 297179571} + - component: {fileID: 297179574} + - component: {fileID: 297179573} + - component: {fileID: 297179572} + m_Layer: 5 + m_Name: Temperature + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &297179571 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 297179570} + 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_Children: + - {fileID: 1122371561} + m_Father: {fileID: 2061692140} + m_RootOrder: 4 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 1, y: 1} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 100, y: 40} + m_Pivot: {x: 1, y: 1} +--- !u!114 &297179572 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 297179570} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d2e20753ae4907846a6cfba474a703a5, type: 3} + m_Name: + m_EditorClassIdentifier: + itemUrl: http://192.168.0.10:8080/rest/items/T1_ValueAsNumber/state + text: {fileID: 1122371562} + refreshInterval: 1 +--- !u!114 &297179573 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 297179570} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -765806418, guid: f70555f144d8491a825f0804e09c671c, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, + Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + m_Sprite: {fileID: 0} + m_Type: 0 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 +--- !u!222 &297179574 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 297179570} + m_CullTransparentMesh: 0 --- !u!1 &435464252 GameObject: m_ObjectHideFlags: 0 @@ -786,6 +877,85 @@ CanvasRenderer: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1081552757} m_CullTransparentMesh: 0 +--- !u!1 &1122371560 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1122371561} + - component: {fileID: 1122371563} + - component: {fileID: 1122371562} + m_Layer: 5 + m_Name: Text + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1122371561 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1122371560} + 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_Children: [] + m_Father: {fileID: 297179571} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: -20, y: -10} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &1122371562 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1122371560} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 708705254, guid: f70555f144d8491a825f0804e09c671c, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} + m_RaycastTarget: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, + Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + m_FontData: + m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} + m_FontSize: 25 + m_FontStyle: 0 + m_BestFit: 1 + m_MinSize: 0 + m_MaxSize: 50 + m_Alignment: 2 + m_AlignByGeometry: 0 + m_RichText: 1 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 0 + m_LineSpacing: 1 + m_Text: -100 +--- !u!222 &1122371563 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1122371560} + m_CullTransparentMesh: 0 --- !u!1 &1388953378 GameObject: m_ObjectHideFlags: 0 @@ -1294,6 +1464,7 @@ RectTransform: - {fileID: 264621894} - {fileID: 1002780204} - {fileID: 873043483} + - {fileID: 297179571} m_Father: {fileID: 0} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} diff --git a/Assets/Scripts/OpenHabItemView.cs b/Assets/Scripts/OpenHabItemView.cs new file mode 100644 index 0000000..1e34929 --- /dev/null +++ b/Assets/Scripts/OpenHabItemView.cs @@ -0,0 +1,43 @@ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Globalization; +using UnityEngine; +using UnityEngine.Networking; +using UnityEngine.UI; + +public class OpenHabItemView : MonoBehaviour +{ + [SerializeField] + private string itemUrl; + [SerializeField] + private Text text; + [SerializeField] + private float refreshInterval; + + // Start is called before the first frame update + void Start() + { + CultureInfo.CurrentCulture = new CultureInfo("en-US"); + StartCoroutine(LoadAndSet()); + } + + private IEnumerator LoadAndSet() + { + while (true) + { + var www = UnityWebRequest.Get(itemUrl); + yield return www.SendWebRequest(); + if (!www.isNetworkError && !www.isHttpError) + { + float result = float.NaN; + if (float.TryParse(www.downloadHandler.text, out result)) + { + text.text = string.Format("{0:F2}", result); + } + } + yield return new WaitForSeconds(refreshInterval); + } + } + +} diff --git a/Assets/Scripts/OpenHabItemView.cs.meta b/Assets/Scripts/OpenHabItemView.cs.meta new file mode 100644 index 0000000..172de6d --- /dev/null +++ b/Assets/Scripts/OpenHabItemView.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: d2e20753ae4907846a6cfba474a703a5 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: