From 38f5763fc2f4d5fc14ff8c679c8271b105d7dbe1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Denis=20Nu=C8=9Biu?= Date: Sat, 29 Jun 2019 14:06:50 +0300 Subject: [PATCH 1/3] Add mobile-input --- Assets/Prefabs/MobileInputControls.prefab | 450 ++++++++ .../Prefabs/MobileInputControls.prefab.meta | 7 + Assets/Scenes/SampleScene.unity | 145 ++- Assets/Scripts/src/Player/PlayerController.cs | 25 +- Assets/Standard Assets.meta | 9 + .../Standard Assets/CrossPlatformInput.meta | 9 + .../CrossPlatformInputGuidelines.txt | 32 + .../CrossPlatformInputGuidelines.txt.meta | 5 + .../CrossPlatformInput/Prefabs.meta | 9 + .../Prefabs/CarTiltControls.prefab | 461 +++++++++ .../Prefabs/CarTiltControls.prefab.meta | 5 + .../Prefabs/DualTouchControls.prefab | 578 +++++++++++ .../Prefabs/DualTouchControls.prefab.meta | 5 + .../Prefabs/MobileAircraftControls.prefab | 972 ++++++++++++++++++ .../MobileAircraftControls.prefab.meta | 5 + .../Prefabs/MobileSingleStickControl.prefab | 376 +++++++ .../MobileSingleStickControl.prefab.meta | 5 + .../Prefabs/MobileTiltControlRig.prefab | 144 +++ .../Prefabs/MobileTiltControlRig.prefab.meta | 5 + .../CrossPlatformInput/Scripts.meta | 9 + .../Scripts/AxisTouchButton.cs | 75 ++ .../Scripts/AxisTouchButton.cs.meta | 9 + .../Scripts/ButtonHandler.cs | 50 + .../Scripts/ButtonHandler.cs.meta | 9 + .../Scripts/CrossPlatformInputManager.cs | 318 ++++++ .../Scripts/CrossPlatformInputManager.cs.meta | 11 + .../Scripts/InputAxisScrollbar.cs | 17 + .../Scripts/InputAxisScrollbar.cs.meta | 9 + .../CrossPlatformInput/Scripts/Joystick.cs | 118 +++ .../Scripts/Joystick.cs.meta | 9 + .../Scripts/MobileControlRig.cs | 102 ++ .../Scripts/MobileControlRig.cs.meta | 9 + .../Scripts/PlatformSpecific.meta | 9 + .../Scripts/PlatformSpecific/MobileInput.cs | 133 +++ .../PlatformSpecific/MobileInput.cs.meta | 9 + .../PlatformSpecific/StandaloneInput.cs | 79 ++ .../PlatformSpecific/StandaloneInput.cs.meta | 9 + .../CrossPlatformInput/Scripts/TiltInput.cs | 145 +++ .../Scripts/TiltInput.cs.meta | 13 + .../CrossPlatformInput/Scripts/TouchPad.cs | 156 +++ .../Scripts/TouchPad.cs.meta | 9 + .../Scripts/VirtualInput.cs | 134 +++ .../Scripts/VirtualInput.cs.meta | 9 + .../CrossPlatformInput/Sprites.meta | 9 + .../Sprites/ButtonAcceleratorOverSprite.png | Bin 0 -> 10618 bytes .../ButtonAcceleratorOverSprite.png.meta | 52 + .../Sprites/ButtonAcceleratorUpSprite.png | Bin 0 -> 10747 bytes .../ButtonAcceleratorUpSprite.png.meta | 52 + .../Sprites/ButtonArrowOverSprite.png | Bin 0 -> 8229 bytes .../Sprites/ButtonArrowOverSprite.png.meta | 52 + .../Sprites/ButtonArrowUpSprite.png | Bin 0 -> 8376 bytes .../Sprites/ButtonArrowUpSprite.png.meta | 52 + .../Sprites/ButtonBrakeOverSprite.png | Bin 0 -> 5818 bytes .../Sprites/ButtonBrakeOverSprite.png.meta | 52 + .../Sprites/ButtonBrakeUpSprite.png | Bin 0 -> 5873 bytes .../Sprites/ButtonBrakeUpSprite.png.meta | 52 + .../Sprites/ButtonCameraCycleUpSprite.png | Bin 0 -> 5764 bytes .../ButtonCameraCycleUpSprite.png.meta | 52 + .../Sprites/ButtonResetSprite.png | Bin 0 -> 8412 bytes .../Sprites/ButtonResetSprite.png.meta | 53 + .../Sprites/ButtonSpacebarSprite.png | Bin 0 -> 3471 bytes .../Sprites/ButtonSpacebarSprite.png.meta | 53 + .../Sprites/ButtonThumbstickOverSprite.png | Bin 0 -> 8099 bytes .../ButtonThumbstickOverSprite.png.meta | 52 + .../Sprites/ButtonThumbstickUpSprite.png | Bin 0 -> 8278 bytes .../Sprites/ButtonThumbstickUpSprite.png.meta | 52 + .../Sprites/ButtonTimescaleFullUpSprite.png | Bin 0 -> 8409 bytes .../ButtonTimescaleFullUpSprite.png.meta | 52 + .../Sprites/ButtonTimescaleSlowUpSprite.png | Bin 0 -> 9144 bytes .../ButtonTimescaleSlowUpSprite.png.meta | 52 + .../Sprites/SliderBackgroundSprite.png | Bin 0 -> 2309 bytes .../Sprites/SliderBackgroundSprite.png.meta | 53 + .../Sprites/SliderHandleSprite.png | Bin 0 -> 1671 bytes .../Sprites/SliderHandleSprite.png.meta | 52 + .../Sprites/TouchpadSprite.png | Bin 0 -> 3828 bytes .../Sprites/TouchpadSprite.png.meta | 53 + Assets/Standard Assets/Editor.meta | 9 + .../Editor/CrossPlatformInput.meta | 9 + .../CrossPlatformInputInitialize.cs | 137 +++ .../CrossPlatformInputInitialize.cs.meta | 9 + ProjectSettings/EditorBuildSettings.asset | 19 +- ProjectSettings/GraphicsSettings.asset | 2 +- ProjectSettings/ProjectSettings.asset | 103 +- ProjectSettings/QualitySettings.asset | 4 +- 84 files changed, 5798 insertions(+), 36 deletions(-) create mode 100644 Assets/Prefabs/MobileInputControls.prefab create mode 100644 Assets/Prefabs/MobileInputControls.prefab.meta create mode 100644 Assets/Standard Assets.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/CrossPlatformInputGuidelines.txt create mode 100644 Assets/Standard Assets/CrossPlatformInput/CrossPlatformInputGuidelines.txt.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Prefabs.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Prefabs/CarTiltControls.prefab create mode 100644 Assets/Standard Assets/CrossPlatformInput/Prefabs/CarTiltControls.prefab.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Prefabs/DualTouchControls.prefab create mode 100644 Assets/Standard Assets/CrossPlatformInput/Prefabs/DualTouchControls.prefab.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Prefabs/MobileAircraftControls.prefab create mode 100644 Assets/Standard Assets/CrossPlatformInput/Prefabs/MobileAircraftControls.prefab.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Prefabs/MobileSingleStickControl.prefab create mode 100644 Assets/Standard Assets/CrossPlatformInput/Prefabs/MobileSingleStickControl.prefab.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Prefabs/MobileTiltControlRig.prefab create mode 100644 Assets/Standard Assets/CrossPlatformInput/Prefabs/MobileTiltControlRig.prefab.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Scripts.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Scripts/AxisTouchButton.cs create mode 100644 Assets/Standard Assets/CrossPlatformInput/Scripts/AxisTouchButton.cs.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Scripts/ButtonHandler.cs create mode 100644 Assets/Standard Assets/CrossPlatformInput/Scripts/ButtonHandler.cs.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Scripts/CrossPlatformInputManager.cs create mode 100644 Assets/Standard Assets/CrossPlatformInput/Scripts/CrossPlatformInputManager.cs.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Scripts/InputAxisScrollbar.cs create mode 100644 Assets/Standard Assets/CrossPlatformInput/Scripts/InputAxisScrollbar.cs.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Scripts/Joystick.cs create mode 100644 Assets/Standard Assets/CrossPlatformInput/Scripts/Joystick.cs.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Scripts/MobileControlRig.cs create mode 100644 Assets/Standard Assets/CrossPlatformInput/Scripts/MobileControlRig.cs.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Scripts/PlatformSpecific.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Scripts/PlatformSpecific/MobileInput.cs create mode 100644 Assets/Standard Assets/CrossPlatformInput/Scripts/PlatformSpecific/MobileInput.cs.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Scripts/PlatformSpecific/StandaloneInput.cs create mode 100644 Assets/Standard Assets/CrossPlatformInput/Scripts/PlatformSpecific/StandaloneInput.cs.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Scripts/TiltInput.cs create mode 100644 Assets/Standard Assets/CrossPlatformInput/Scripts/TiltInput.cs.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Scripts/TouchPad.cs create mode 100644 Assets/Standard Assets/CrossPlatformInput/Scripts/TouchPad.cs.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Scripts/VirtualInput.cs create mode 100644 Assets/Standard Assets/CrossPlatformInput/Scripts/VirtualInput.cs.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Sprites.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonAcceleratorOverSprite.png create mode 100644 Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonAcceleratorOverSprite.png.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonAcceleratorUpSprite.png create mode 100644 Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonAcceleratorUpSprite.png.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonArrowOverSprite.png create mode 100644 Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonArrowOverSprite.png.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonArrowUpSprite.png create mode 100644 Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonArrowUpSprite.png.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonBrakeOverSprite.png create mode 100644 Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonBrakeOverSprite.png.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonBrakeUpSprite.png create mode 100644 Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonBrakeUpSprite.png.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonCameraCycleUpSprite.png create mode 100644 Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonCameraCycleUpSprite.png.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonResetSprite.png create mode 100644 Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonResetSprite.png.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonSpacebarSprite.png create mode 100644 Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonSpacebarSprite.png.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonThumbstickOverSprite.png create mode 100644 Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonThumbstickOverSprite.png.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonThumbstickUpSprite.png create mode 100644 Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonThumbstickUpSprite.png.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonTimescaleFullUpSprite.png create mode 100644 Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonTimescaleFullUpSprite.png.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonTimescaleSlowUpSprite.png create mode 100644 Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonTimescaleSlowUpSprite.png.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Sprites/SliderBackgroundSprite.png create mode 100644 Assets/Standard Assets/CrossPlatformInput/Sprites/SliderBackgroundSprite.png.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Sprites/SliderHandleSprite.png create mode 100644 Assets/Standard Assets/CrossPlatformInput/Sprites/SliderHandleSprite.png.meta create mode 100644 Assets/Standard Assets/CrossPlatformInput/Sprites/TouchpadSprite.png create mode 100644 Assets/Standard Assets/CrossPlatformInput/Sprites/TouchpadSprite.png.meta create mode 100644 Assets/Standard Assets/Editor.meta create mode 100644 Assets/Standard Assets/Editor/CrossPlatformInput.meta create mode 100644 Assets/Standard Assets/Editor/CrossPlatformInput/CrossPlatformInputInitialize.cs create mode 100644 Assets/Standard Assets/Editor/CrossPlatformInput/CrossPlatformInputInitialize.cs.meta diff --git a/Assets/Prefabs/MobileInputControls.prefab b/Assets/Prefabs/MobileInputControls.prefab new file mode 100644 index 0000000..f663540 --- /dev/null +++ b/Assets/Prefabs/MobileInputControls.prefab @@ -0,0 +1,450 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &2219516564249810536 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2219516564235934920} + - component: {fileID: 2219516564235965864} + - component: {fileID: 2219516564256383880} + - component: {fileID: 2219516564256383876} + m_Layer: 5 + m_Name: MobileInputControls + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &2219516564235934920 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2219516564249810536} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 0, y: 0, z: 0} + m_Children: + - {fileID: 2219516564235934924} + - {fileID: 2219516564235934922} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 0, y: 0} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0, y: 0} +--- !u!223 &2219516564235965864 +Canvas: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2219516564249810536} + m_Enabled: 1 + serializedVersion: 3 + m_RenderMode: 0 + m_Camera: {fileID: 0} + m_PlaneDistance: 100 + m_PixelPerfect: 1 + m_ReceivesEvents: 1 + m_OverrideSorting: 0 + m_OverridePixelPerfect: 0 + m_SortingBucketNormalizedSize: 0 + m_AdditionalShaderChannelsFlag: 25 + m_SortingLayerID: 0 + m_SortingOrder: 0 + m_TargetDisplay: 0 +--- !u!114 &2219516564256383880 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2219516564249810536} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 1301386320, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreReversedGraphics: 1 + m_BlockingObjects: 0 + m_BlockingMask: + serializedVersion: 2 + m_Bits: 4294967295 +--- !u!114 &2219516564256383876 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2219516564249810536} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 71398ce7fbc3a5b4fa50b50bd54317a7, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!1 &2219516564249810538 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2219516564235934922} + - component: {fileID: 2219516564236381706} + - component: {fileID: 2219516564256383874} + - component: {fileID: 2219516564256383872} + m_Layer: 5 + m_Name: MobileJoystick + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &2219516564235934922 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2219516564249810538} + 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: 2219516564235934920} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.16000001, y: 0.2} + m_AnchorMax: {x: 0.16000001, y: 0.2} + m_AnchoredPosition: {x: -40, y: -39.999985} + m_SizeDelta: {x: 80, y: 80} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &2219516564236381706 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2219516564249810538} + m_CullTransparentMesh: 0 +--- !u!114 &2219516564256383874 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2219516564249810538} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, 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: 21300000, guid: 9866a92691696b346901281f2b329034, type: 3} + 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!114 &2219516564256383872 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2219516564249810538} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 00c3c865782347f41b6358d9fba14b48, type: 3} + m_Name: + m_EditorClassIdentifier: + MovementRange: 100 + axesToUse: 0 + horizontalAxisName: Horizontal + verticalAxisName: Vertical +--- !u!1 &2219516564249810540 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2219516564235934924} + - component: {fileID: 2219516564236381704} + - component: {fileID: 2219516564256383886} + - component: {fileID: 2219516564256383884} + - component: {fileID: 2219516564256383882} + m_Layer: 5 + m_Name: PlaceBombButton + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &2219516564235934924 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2219516564249810540} + 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: 2219516564235934926} + m_Father: {fileID: 2219516564235934920} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.78, y: 0.01} + m_AnchorMax: {x: 0.99, y: 0.15} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &2219516564236381704 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2219516564249810540} + m_CullTransparentMesh: 0 +--- !u!114 &2219516564256383886 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2219516564249810540} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 0.36320752, g: 0.53883654, 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: 21300000, guid: 3d8675433a508ec47b8f895201eacf20, type: 3} + 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!114 &2219516564256383884 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2219516564249810540} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -1862395651, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Delegates: + - eventID: 2 + callback: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 2219516564256383882} + m_MethodName: + m_Mode: 1 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: Jump + m_BoolArgument: 0 + m_CallState: 1 + m_TypeName: UnityEngine.EventSystems.EventTrigger+TriggerEvent, UnityEngine.UI, + Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + - eventID: 3 + callback: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 2219516564256383882} + m_MethodName: SetUpState + m_Mode: 1 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: Jump + m_BoolArgument: 0 + m_CallState: 1 + m_TypeName: UnityEngine.EventSystems.EventTrigger+TriggerEvent, UnityEngine.UI, + Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + delegates: + - eventID: 2 + callback: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 2219516564256383882} + m_MethodName: SetDownState + m_Mode: 1 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: Jump + m_BoolArgument: 0 + m_CallState: 1 + m_TypeName: UnityEngine.EventSystems.EventTrigger+TriggerEvent, UnityEngine.UI, + Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + - eventID: 3 + callback: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 2219516564256383882} + m_MethodName: SetUpState + m_Mode: 1 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: Jump + m_BoolArgument: 0 + m_CallState: 1 + m_TypeName: UnityEngine.EventSystems.EventTrigger+TriggerEvent, UnityEngine.UI, + Version=1.0.0.0, Culture=neutral, PublicKeyToken=null +--- !u!114 &2219516564256383882 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2219516564249810540} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 85bf3be603548374ca46f521a3aa7fda, type: 3} + m_Name: + m_EditorClassIdentifier: + Name: PlaceBomb +--- !u!1 &2219516564249810542 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2219516564235934926} + - component: {fileID: 2219516564236381708} + - component: {fileID: 2219516564256383896} + - component: {fileID: 2219516564256383878} + m_Layer: 5 + m_Name: Text + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &2219516564235934926 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2219516564249810542} + 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: 2219516564235934924} + 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: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &2219516564236381708 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2219516564249810542} + m_CullTransparentMesh: 0 +--- !u!114 &2219516564256383896 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2219516564249810542} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 708705254, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 0.6431373} + 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: 26 + m_FontStyle: 0 + m_BestFit: 0 + m_MinSize: 10 + m_MaxSize: 40 + m_Alignment: 4 + m_AlignByGeometry: 0 + m_RichText: 1 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 0 + m_LineSpacing: 1 + m_Text: Bomb +--- !u!114 &2219516564256383878 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2219516564249810542} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 1573420865, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_EffectColor: {r: 0, g: 0, b: 0, a: 0.1254902} + m_EffectDistance: {x: 2, y: -2} + m_UseGraphicAlpha: 1 diff --git a/Assets/Prefabs/MobileInputControls.prefab.meta b/Assets/Prefabs/MobileInputControls.prefab.meta new file mode 100644 index 0000000..41abab3 --- /dev/null +++ b/Assets/Prefabs/MobileInputControls.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 4ca131020414f4b1597dac2e1d292d7f +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scenes/SampleScene.unity b/Assets/Scenes/SampleScene.unity index b1f0ec3..0dc5017 100644 --- a/Assets/Scenes/SampleScene.unity +++ b/Assets/Scenes/SampleScene.unity @@ -404,7 +404,7 @@ Transform: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 519420028} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 10.75168, y: -4.0430503, z: -10} + m_LocalPosition: {x: 11.459104, y: -4.0430503, z: -10} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} @@ -478,7 +478,7 @@ Transform: m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 4 + m_RootOrder: 5 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!4 &1352658977 stripped Transform: @@ -562,6 +562,11 @@ PrefabInstance: m_Modification: m_TransformParent: {fileID: 0} m_Modifications: + - target: {fileID: 158905820630581597, guid: fdaa7451ab31b477b930076bbc888bab, + type: 3} + propertyPath: m_Name + value: GameManager + objectReference: {fileID: 0} - target: {fileID: 6316647355651322741, guid: fdaa7451ab31b477b930076bbc888bab, type: 3} propertyPath: upgradePrefabs.Array.size @@ -573,11 +578,6 @@ PrefabInstance: value: objectReference: {fileID: 4585348266300200282, guid: 2ea1eb2b6b05340a4a99948a6eb818b2, type: 3} - - target: {fileID: 158905820630581597, guid: fdaa7451ab31b477b930076bbc888bab, - type: 3} - propertyPath: m_Name - value: GameManager - objectReference: {fileID: 0} - target: {fileID: 158905820630581587, guid: fdaa7451ab31b477b930076bbc888bab, type: 3} propertyPath: m_LocalPosition.x @@ -645,6 +645,125 @@ PrefabInstance: objectReference: {fileID: 185746015} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: fdaa7451ab31b477b930076bbc888bab, type: 3} +--- !u!1001 &2219516563411082784 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 2219516564249810536, guid: 4ca131020414f4b1597dac2e1d292d7f, + type: 3} + propertyPath: m_Name + value: MobileInputControls + objectReference: {fileID: 0} + - target: {fileID: 2219516564235934920, guid: 4ca131020414f4b1597dac2e1d292d7f, + type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2219516564235934920, guid: 4ca131020414f4b1597dac2e1d292d7f, + type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2219516564235934920, guid: 4ca131020414f4b1597dac2e1d292d7f, + type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2219516564235934920, guid: 4ca131020414f4b1597dac2e1d292d7f, + type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2219516564235934920, guid: 4ca131020414f4b1597dac2e1d292d7f, + type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2219516564235934920, guid: 4ca131020414f4b1597dac2e1d292d7f, + type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2219516564235934920, guid: 4ca131020414f4b1597dac2e1d292d7f, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 2219516564235934920, guid: 4ca131020414f4b1597dac2e1d292d7f, + type: 3} + propertyPath: m_RootOrder + value: 8 + objectReference: {fileID: 0} + - target: {fileID: 2219516564235934920, guid: 4ca131020414f4b1597dac2e1d292d7f, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2219516564235934920, guid: 4ca131020414f4b1597dac2e1d292d7f, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2219516564235934920, guid: 4ca131020414f4b1597dac2e1d292d7f, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2219516564235934920, guid: 4ca131020414f4b1597dac2e1d292d7f, + type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2219516564235934920, guid: 4ca131020414f4b1597dac2e1d292d7f, + type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2219516564235934920, guid: 4ca131020414f4b1597dac2e1d292d7f, + type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2219516564235934920, guid: 4ca131020414f4b1597dac2e1d292d7f, + type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2219516564235934920, guid: 4ca131020414f4b1597dac2e1d292d7f, + type: 3} + propertyPath: m_AnchorMin.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2219516564235934920, guid: 4ca131020414f4b1597dac2e1d292d7f, + type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2219516564235934920, guid: 4ca131020414f4b1597dac2e1d292d7f, + type: 3} + propertyPath: m_AnchorMax.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2219516564235934920, guid: 4ca131020414f4b1597dac2e1d292d7f, + type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2219516564235934920, guid: 4ca131020414f4b1597dac2e1d292d7f, + type: 3} + propertyPath: m_Pivot.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2219516564235934920, guid: 4ca131020414f4b1597dac2e1d292d7f, + type: 3} + propertyPath: m_Pivot.y + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 4ca131020414f4b1597dac2e1d292d7f, type: 3} --- !u!1001 &6843575829779162303 PrefabInstance: m_ObjectHideFlags: 0 @@ -730,6 +849,11 @@ PrefabInstance: m_Modification: m_TransformParent: {fileID: 0} m_Modifications: + - target: {fileID: 7054975846833851214, guid: f064c0737a3e54f1fadc75fc09919760, + type: 3} + propertyPath: m_Name + value: Grid + objectReference: {fileID: 0} - target: {fileID: 7054975846833851208, guid: f064c0737a3e54f1fadc75fc09919760, type: 3} propertyPath: m_LocalPosition.x @@ -785,11 +909,6 @@ PrefabInstance: propertyPath: m_LocalEulerAnglesHint.z value: 0 objectReference: {fileID: 0} - - target: {fileID: 7054975846833851214, guid: f064c0737a3e54f1fadc75fc09919760, - type: 3} - propertyPath: m_Name - value: Grid - objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: f064c0737a3e54f1fadc75fc09919760, type: 3} --- !u!1001 &9082059503859367018 @@ -842,7 +961,7 @@ PrefabInstance: - target: {fileID: 9082059503774285365, guid: fd1ddd924c55b4f9694b98102c91a0a6, type: 3} propertyPath: m_RootOrder - value: 5 + value: 4 objectReference: {fileID: 0} - target: {fileID: 9082059503774285365, guid: fd1ddd924c55b4f9694b98102c91a0a6, type: 3} diff --git a/Assets/Scripts/src/Player/PlayerController.cs b/Assets/Scripts/src/Player/PlayerController.cs index f34270d..21d749a 100644 --- a/Assets/Scripts/src/Player/PlayerController.cs +++ b/Assets/Scripts/src/Player/PlayerController.cs @@ -3,6 +3,7 @@ using src.Base; using src.Helpers; using src.Interfaces; using UnityEngine; +using UnityStandardAssets.CrossPlatformInput; namespace src.Player { @@ -40,18 +41,20 @@ namespace src.Player #if UNITY_EDITOR || UNITY_STANDALONE || UNITY_WEBGL var horizontal = Input.GetAxisRaw("Horizontal"); var vertical = Input.GetAxisRaw("Vertical"); +#elif UNITY_IOS || UNITY_ANDROID + var horizontal = CrossPlatformInputManager.GetAxisRaw("Horizontal"); + var vertical = CrossPlatformInputManager.GetAxisRaw("Vertical"); +#elif UNITY_PS4 || UNITY_XBOXONE +// // Console movement is not supported yet. +#endif + var movementVector = new Vector2(horizontal, vertical).NormalizeToCross(); - + _animator.SetFloat(AnimHorizontal, movementVector.x); _animator.SetFloat(AnimVertical, movementVector.y); - - + + rigidbody2d.MovePosition(rigidbody2d.position + movementSpeed * Time.deltaTime * movementVector); -#elif UNITY_IOS || UNITY_ANDROID - // Phone movement is not supported yet. -#elif UNITY_PS4 || UNITY_XBOXONE - // Console movement is not supported yet. -#endif } private void PlaceBomb() @@ -67,7 +70,10 @@ namespace src.Player PlaceBomb(); } #elif UNITY_IOS || UNITY_ANDROID - // Phone bomb placement is not supported yet. + if (CrossPlatformInputManager.GetButton("PlaceBomb")) + { + PlaceBomb(); + } #elif UNITY_PS4 || UNITY_XBOXONE // Console bomb placement is not supported yet. #endif @@ -82,7 +88,6 @@ namespace src.Player { if (other.CompareTag("Bomb")) { - other.isTrigger = false; } } diff --git a/Assets/Standard Assets.meta b/Assets/Standard Assets.meta new file mode 100644 index 0000000..718a548 --- /dev/null +++ b/Assets/Standard Assets.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: c6195a43a0187a34e9c6be23520d3766 +folderAsset: yes +timeCreated: 1436977287 +licenseType: Store +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Standard Assets/CrossPlatformInput.meta b/Assets/Standard Assets/CrossPlatformInput.meta new file mode 100644 index 0000000..056038c --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 710bc43f80d178548bd226c252c8e65b +folderAsset: yes +timeCreated: 1436977288 +licenseType: Store +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Standard Assets/CrossPlatformInput/CrossPlatformInputGuidelines.txt b/Assets/Standard Assets/CrossPlatformInput/CrossPlatformInputGuidelines.txt new file mode 100644 index 0000000..461c8df --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/CrossPlatformInputGuidelines.txt @@ -0,0 +1,32 @@ + +Importing the CrossPlatformInput package adds a menu item to Unity, "CrossPlatformInput", which allows you to enable or disable the CrossPlatformInput in the editor. You must enable the CrossPlatformInput in order to see the control rigs in the editor, and to start using Unity Remote to control your game. + +The CrossPlatformInput sample assets contains two main sections. + +1) The folder of prefabs provide a variety of ready-to-use "MobileControlRigs". Each control rig is suitable for a different purpose, and each implements the touch or tilt-based equivalent of some of the default standalone axes or buttons. These are ready to drop into your scene, and to use them you simply need to read the axes via the CrossPlatformInput class, rather than Unity's regular Input class. + +2) The set of scripts provided are the scripts we used to put together the control rigs prefabs. They provide a simplified way of reading basic mobile input, such as tilt, taps and swipe gestures. They are designed so that various mobile controls can be read in the same way as regular Unity axes and buttons. You can use these scripts to build your own MobileControlRigs. + + + +For example the Car control rig feeds the tilt input of the mobile device to the "Horizontal" axis, and has an accelerator and brake touch button which are fed as a pair into the "Vertical" axis. These are virtual equivalents of the real "Horizontal" and "Vertical" axes defined in Unity's Input Manager. + +Therefore when you read CrossPlatformInput.GetAxis("Horizontal"), you will either get the "real" input value - if your build target is non-mobile, or the value from the mobile control rig - if your build target is set to a mobile platform. + +The CrossPlatformInput scripts and prefabs are provided together as an example of how you can implement a cross-platform control solution in Unity. They also allow us to provide our other sample scenes in a form that can be published as standalone or to mobile targets with no modification. + +To use the CrossPlatformInput, you need to drop a "Mobile Control Rig" into your scene (or create your own), and then make calls to CrossPlatformInput functions, referring to the axes and buttons that the Rig implements. + +When reading input from the CrossPlatformInput class, the values returned will be taken either from Unity's Input Manager settings, or from the mobile-specific controls set up, depending on which build target you have selected. + +The CrossPlatformInput class is designed to be called instead of Unity's own Input class, and so mirrors certain parts of the Input API - specifically the functions relating to Axes and Buttons: + GetAxis, GetAxisRaw + GetButton, GetButtonDown, GetButtonUp + +Notes for coders: +This package sets two compiler define symbols. One is always set automatically, the other is optionally set from a menu item. + +Importing the "CrossPlatformInput" package will automatically add a compiler define symbol, "CROSS_PLATFORM_INPUT". This enables the CrossPlatformInput functions defined in some of the other Sample Asset packages (such as the Characters, Planes, etc). Without this symbol defined, those packages use Unity's regular Input class, which means they can be imported alone and still work without the CrossPlatformInput package. + +The optional define (which is set by default, but can be disabled using the "Mobile Input" menu), is "MOBILE_INPUT". This causes the MobileControlRigs to become active when a mobile build target is selected. It also enables certain mobile-specific control nuances in some of the packages, which make more sense when the character or vehicle is being controlled using mobile input (such as auto-leveling the character's look direction). This define is optional because some developers prefer to use standalone input methods instead of the Unity Remote app, when testing mobile apps in the editor's play mode. + diff --git a/Assets/Standard Assets/CrossPlatformInput/CrossPlatformInputGuidelines.txt.meta b/Assets/Standard Assets/CrossPlatformInput/CrossPlatformInputGuidelines.txt.meta new file mode 100644 index 0000000..bc74ece --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/CrossPlatformInputGuidelines.txt.meta @@ -0,0 +1,5 @@ +fileFormatVersion: 2 +guid: a3b997593a4f12c4c991490593f3b513 +TextScriptImporter: + userData: + assetBundleName: diff --git a/Assets/Standard Assets/CrossPlatformInput/Prefabs.meta b/Assets/Standard Assets/CrossPlatformInput/Prefabs.meta new file mode 100644 index 0000000..92bca4f --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Prefabs.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 5d3fb8e05edcf4b41aef584ca1b0d06f +folderAsset: yes +timeCreated: 1436977288 +licenseType: Store +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Standard Assets/CrossPlatformInput/Prefabs/CarTiltControls.prefab b/Assets/Standard Assets/CrossPlatformInput/Prefabs/CarTiltControls.prefab new file mode 100644 index 0000000..9f5e2f2 --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Prefabs/CarTiltControls.prefab @@ -0,0 +1,461 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &100000 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 4 + m_Component: + - 224: {fileID: 22400000} + - 223: {fileID: 22300000} + - 114: {fileID: 11400002} + - 114: {fileID: 11400000} + m_Layer: 5 + m_Name: CarTiltControls + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &100002 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 4 + m_Component: + - 224: {fileID: 22400002} + - 222: {fileID: 22200002} + - 114: {fileID: 11400010} + - 114: {fileID: 11400008} + m_Layer: 5 + m_Name: LookUpAndDownTouchpad + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 0 +--- !u!1 &100004 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 4 + m_Component: + - 4: {fileID: 400000} + - 114: {fileID: 11400012} + m_Layer: 0 + m_Name: TiltSteerInput + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 0 +--- !u!1 &100006 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 4 + m_Component: + - 224: {fileID: 22400004} + - 222: {fileID: 22200004} + - 114: {fileID: 11400016} + - 114: {fileID: 11400014} + - 114: {fileID: 11436680} + m_Layer: 5 + m_Name: Brake + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 0 +--- !u!1 &100008 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 4 + m_Component: + - 224: {fileID: 22400006} + - 222: {fileID: 22200000} + - 114: {fileID: 11400006} + - 114: {fileID: 11400004} + - 114: {fileID: 11455192} + m_Layer: 5 + m_Name: Accelerator + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 0 +--- !u!4 &400000 +Transform: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100004} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -118.998169, y: -211.682297, z: -502.618439} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 22400000} + m_RootOrder: 2 +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100000} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 71398ce7fbc3a5b4fa50b50bd54317a7, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!114 &11400002 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100000} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 1301386320, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Priority: 3 + ignoreReversedGraphics: 1 + blockingObjects: 0 + m_BlockingMask: + serializedVersion: 2 + m_Bits: 4294967295 +--- !u!114 &11400004 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100008} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 9ab98b66288df7b4fa182075f2f12bd6, type: 3} + m_Name: + m_EditorClassIdentifier: + axisName: Vertical + axisValue: 1 + responseSpeed: 999 + returnToCentreSpeed: 3 +--- !u!114 &11400006 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100008} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_Sprite: {fileID: 21300000, guid: f588d850485d0ae479d73cf3bd0b7b00, type: 3} + m_Type: 0 + m_PreserveAspect: 1 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 +--- !u!114 &11400008 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100002} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 1caf40fc8bebb6b43b2550c05ca791d6, type: 3} + m_Name: + m_EditorClassIdentifier: + axesToUse: 0 + controlStyle: 2 + horizontalAxisName: Mouse X + verticalAxisName: Mouse Y + Xsensitivity: 1 + Ysensitivity: 1 +--- !u!114 &11400010 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100002} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: .13333334} + m_Sprite: {fileID: 21300000, guid: e4f1fee3de32377429fd1348fae62b10, type: 3} + m_Type: 1 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 +--- !u!114 &11400012 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100004} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5c2d84226fbbaf94e9c1451f1c39b06a, type: 3} + m_Name: + m_EditorClassIdentifier: + mapping: + type: 0 + axisName: Horizontal + tiltAroundAxis: 0 + fullTiltAngle: 50 + centreAngleOffset: 0 +--- !u!114 &11400014 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100006} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 9ab98b66288df7b4fa182075f2f12bd6, type: 3} + m_Name: + m_EditorClassIdentifier: + axisName: Vertical + axisValue: -1 + responseSpeed: 999 + returnToCentreSpeed: 3 +--- !u!114 &11400016 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100006} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_Sprite: {fileID: 21300000, guid: 827c9cd4a3943534f909ac6473e17288, type: 3} + m_Type: 0 + m_PreserveAspect: 1 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 +--- !u!114 &11436680 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100006} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 1392445389, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 2 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: .960784316, g: .960784316, b: .960784316, a: 1} + m_PressedColor: {r: .784313738, g: .784313738, b: .784313738, a: 1} + m_DisabledColor: {r: .784313738, g: .784313738, b: .784313738, a: .501960814} + m_ColorMultiplier: 1 + m_FadeDuration: .100000001 + m_SpriteState: + m_HighlightedSprite: {fileID: 21300000, guid: 5b1a64ea234fb2343b8d0686c51280de, + type: 3} + m_PressedSprite: {fileID: 21300000, guid: 5b1a64ea234fb2343b8d0686c51280de, type: 3} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 11400016} + m_OnClick: + m_PersistentCalls: + m_Calls: [] + m_TypeName: UnityEngine.UI.Button+ButtonClickedEvent, UnityEngine.UI, Version=1.0.0.0, + Culture=neutral, PublicKeyToken=null +--- !u!114 &11455192 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100008} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 1392445389, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 2 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: .960784316, g: .960784316, b: .960784316, a: 1} + m_PressedColor: {r: .784313738, g: .784313738, b: .784313738, a: 1} + m_DisabledColor: {r: .784313738, g: .784313738, b: .784313738, a: .501960814} + m_ColorMultiplier: 1 + m_FadeDuration: .100000001 + m_SpriteState: + m_HighlightedSprite: {fileID: 21300000, guid: eb5f6e2757c821940b69cf1456f7865a, + type: 3} + m_PressedSprite: {fileID: 21300000, guid: eb5f6e2757c821940b69cf1456f7865a, type: 3} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 11400006} + m_OnClick: + m_PersistentCalls: + m_Calls: [] + m_TypeName: UnityEngine.UI.Button+ButtonClickedEvent, UnityEngine.UI, Version=1.0.0.0, + Culture=neutral, PublicKeyToken=null +--- !u!222 &22200000 +CanvasRenderer: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100008} +--- !u!222 &22200002 +CanvasRenderer: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100002} +--- !u!222 &22200004 +CanvasRenderer: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100006} +--- !u!223 &22300000 +Canvas: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100000} + m_Enabled: 1 + serializedVersion: 2 + m_RenderMode: 0 + m_Camera: {fileID: 0} + m_PlaneDistance: 100 + m_PixelPerfect: 1 + m_ReceivesEvents: 1 + m_OverrideSorting: 0 + m_OverridePixelPerfect: 0 + m_SortingLayerID: 0 + m_SortingOrder: 0 +--- !u!224 &22400000 +RectTransform: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100000} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 0, y: 0, z: 0} + m_Children: + - {fileID: 22400006} + - {fileID: 22400004} + - {fileID: 400000} + - {fileID: 22400002} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 0, y: 0} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0, y: 0} +--- !u!224 &22400002 +RectTransform: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100002} + 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: 22400000} + m_RootOrder: 3 + m_AnchorMin: {x: .200000003, y: .300000012} + m_AnchorMax: {x: .800000012, y: .800000012} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: .5, y: .5} +--- !u!224 &22400004 +RectTransform: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100006} + 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: 22400000} + m_RootOrder: 1 + m_AnchorMin: {x: .0199999996, y: .0299999993} + m_AnchorMax: {x: .0799999982, y: .180000007} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: .5, y: .5} +--- !u!224 &22400006 +RectTransform: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100008} + 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: 22400000} + m_RootOrder: 0 + m_AnchorMin: {x: .920000017, y: .0299999993} + m_AnchorMax: {x: .980000019, y: .180000007} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: .5, y: .5} +--- !u!1001 &100100000 +Prefab: + m_ObjectHideFlags: 1 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: [] + m_RemovedComponents: [] + m_ParentPrefab: {fileID: 0} + m_RootGameObject: {fileID: 100000} + m_IsPrefabParent: 1 diff --git a/Assets/Standard Assets/CrossPlatformInput/Prefabs/CarTiltControls.prefab.meta b/Assets/Standard Assets/CrossPlatformInput/Prefabs/CarTiltControls.prefab.meta new file mode 100644 index 0000000..6c76391 --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Prefabs/CarTiltControls.prefab.meta @@ -0,0 +1,5 @@ +fileFormatVersion: 2 +guid: 174090ae7f9eff84abe76f0ff062efac +NativeFormatImporter: + userData: + assetBundleName: diff --git a/Assets/Standard Assets/CrossPlatformInput/Prefabs/DualTouchControls.prefab b/Assets/Standard Assets/CrossPlatformInput/Prefabs/DualTouchControls.prefab new file mode 100644 index 0000000..50de521 --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Prefabs/DualTouchControls.prefab @@ -0,0 +1,578 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &100000 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 4 + m_Component: + - 224: {fileID: 22400000} + - 223: {fileID: 22300000} + - 114: {fileID: 11400002} + - 114: {fileID: 11400000} + m_Layer: 5 + m_Name: DualTouchControls + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &100002 +GameObject: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 4 + m_Component: + - 224: {fileID: 22400002} + - 222: {fileID: 22200002} + - 114: {fileID: 11400006} + m_Layer: 5 + m_Name: Text + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &100004 +GameObject: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 4 + m_Component: + - 224: {fileID: 22400004} + - 222: {fileID: 22200000} + - 114: {fileID: 11400004} + m_Layer: 5 + m_Name: Text + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &100006 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 4 + m_Component: + - 224: {fileID: 22400006} + - 222: {fileID: 22200004} + - 114: {fileID: 11400012} + - 114: {fileID: 11400010} + - 114: {fileID: 11400008} + m_Layer: 5 + m_Name: Jump + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 0 +--- !u!1 &100008 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 4 + m_Component: + - 224: {fileID: 22400008} + - 222: {fileID: 22200008} + - 114: {fileID: 11400022} + - 114: {fileID: 11400020} + m_Layer: 5 + m_Name: TurnAndLookTouchpad + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 0 +--- !u!1 &100010 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 4 + m_Component: + - 224: {fileID: 22400010} + - 222: {fileID: 22200006} + - 114: {fileID: 11400016} + - 114: {fileID: 11400014} + m_Layer: 5 + m_Name: MoveTouchpad + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 0 +--- !u!1 &100012 +GameObject: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 4 + m_Component: + - 224: {fileID: 22400012} + - 222: {fileID: 22200010} + - 114: {fileID: 11400026} + m_Layer: 5 + m_Name: Text + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100000} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 71398ce7fbc3a5b4fa50b50bd54317a7, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!114 &11400002 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100000} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 1301386320, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Priority: 3 + ignoreReversedGraphics: 1 + blockingObjects: 0 + m_BlockingMask: + serializedVersion: 2 + m_Bits: 4294967295 +--- !u!114 &11400004 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100004} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 708705254, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: .227450982} + m_FontData: + m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} + m_FontSize: 14 + m_FontStyle: 0 + m_BestFit: 1 + m_MinSize: 5 + m_MaxSize: 72 + m_Alignment: 4 + m_RichText: 1 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 0 + m_LineSpacing: 1 + m_Text: Turn/Look Touch Area +--- !u!114 &11400006 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100002} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 708705254, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: .227450982} + m_FontData: + m_Font: {fileID: 12800000, guid: b51a3e520f9164da198dc59c8acfccd6, type: 3} + m_FontSize: 14 + m_FontStyle: 0 + m_BestFit: 1 + m_MinSize: 5 + m_MaxSize: 72 + m_Alignment: 4 + m_RichText: 1 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 0 + m_LineSpacing: 1 + m_Text: Move Touch Area +--- !u!114 &11400008 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100006} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 85bf3be603548374ca46f521a3aa7fda, type: 3} + m_Name: + m_EditorClassIdentifier: + Name: Jump +--- !u!114 &11400010 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100006} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -1862395651, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + delegates: + - eventID: 2 + callback: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 11400008} + m_MethodName: SetDownState + m_Mode: 1 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: Jump + m_BoolArgument: 0 + m_CallState: 1 + m_TypeName: UnityEngine.EventSystems.EventTrigger+TriggerEvent, UnityEngine.UI, + Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + - eventID: 3 + callback: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 11400008} + m_MethodName: SetUpState + m_Mode: 1 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: Jump + m_BoolArgument: 0 + m_CallState: 1 + m_TypeName: UnityEngine.EventSystems.EventTrigger+TriggerEvent, UnityEngine.UI, + Version=1.0.0.0, Culture=neutral, PublicKeyToken=null +--- !u!114 &11400012 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100006} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: .13333334} + m_Sprite: {fileID: 21300000, guid: 3d8675433a508ec47b8f895201eacf20, type: 3} + m_Type: 0 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 +--- !u!114 &11400014 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100010} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 1caf40fc8bebb6b43b2550c05ca791d6, type: 3} + m_Name: + m_EditorClassIdentifier: + axesToUse: 0 + controlStyle: 0 + horizontalAxisName: Horizontal + verticalAxisName: Vertical + Xsensitivity: 1 + Ysensitivity: 1 +--- !u!114 &11400016 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100010} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: .13333334} + m_Sprite: {fileID: 21300000, guid: e4f1fee3de32377429fd1348fae62b10, type: 3} + m_Type: 1 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 +--- !u!114 &11400020 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100008} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 1caf40fc8bebb6b43b2550c05ca791d6, type: 3} + m_Name: + m_EditorClassIdentifier: + axesToUse: 0 + controlStyle: 2 + horizontalAxisName: Mouse X + verticalAxisName: Mouse Y + Xsensitivity: 1 + Ysensitivity: 1 +--- !u!114 &11400022 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100008} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: .13333334} + m_Sprite: {fileID: 21300000, guid: e4f1fee3de32377429fd1348fae62b10, type: 3} + m_Type: 1 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 +--- !u!114 &11400026 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100012} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 708705254, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: .188235298} + m_FontData: + m_Font: {fileID: 12800000, guid: 01cd679a1b9ee48bf9c546f6ce2cb97e, type: 3} + m_FontSize: 26 + m_FontStyle: 0 + m_BestFit: 1 + m_MinSize: 5 + m_MaxSize: 72 + m_Alignment: 4 + m_RichText: 1 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 0 + m_LineSpacing: 1 + m_Text: JUMP +--- !u!222 &22200000 +CanvasRenderer: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100004} +--- !u!222 &22200002 +CanvasRenderer: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100002} +--- !u!222 &22200004 +CanvasRenderer: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100006} +--- !u!222 &22200006 +CanvasRenderer: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100010} +--- !u!222 &22200008 +CanvasRenderer: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100008} +--- !u!222 &22200010 +CanvasRenderer: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100012} +--- !u!223 &22300000 +Canvas: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100000} + m_Enabled: 1 + serializedVersion: 2 + m_RenderMode: 0 + m_Camera: {fileID: 0} + m_PlaneDistance: 100 + m_PixelPerfect: 1 + m_ReceivesEvents: 1 + m_OverrideSorting: 0 + m_OverridePixelPerfect: 0 + m_SortingLayerID: 0 + m_SortingOrder: 0 +--- !u!224 &22400000 +RectTransform: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100000} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 0, y: 0, z: 0} + m_Children: + - {fileID: 22400010} + - {fileID: 22400008} + - {fileID: 22400006} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 0, y: 0} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0, y: 0} +--- !u!224 &22400002 +RectTransform: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100002} + 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: 22400010} + m_RootOrder: 0 + m_AnchorMin: {x: .100000001, y: .419999987} + m_AnchorMax: {x: .899999976, y: .579999983} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: .5, y: .5} +--- !u!224 &22400004 +RectTransform: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100004} + 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: 22400008} + m_RootOrder: 0 + m_AnchorMin: {x: .100000001, y: .419999987} + m_AnchorMax: {x: .899999976, y: .579999983} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: .5, y: .5} +--- !u!224 &22400006 +RectTransform: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100006} + 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: 22400012} + m_Father: {fileID: 22400000} + m_RootOrder: 2 + m_AnchorMin: {x: .540000021, y: .0199999996} + m_AnchorMax: {x: .959999979, y: .170000002} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: .5, y: .5} +--- !u!224 &22400008 +RectTransform: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100008} + 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: 22400004} + m_Father: {fileID: 22400000} + m_RootOrder: 1 + m_AnchorMin: {x: .504999995, y: .200000003} + m_AnchorMax: {x: .99000001, y: .899999976} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: .5, y: .5} +--- !u!224 &22400010 +RectTransform: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100010} + 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: 22400002} + m_Father: {fileID: 22400000} + m_RootOrder: 0 + m_AnchorMin: {x: .00999999978, y: .200000003} + m_AnchorMax: {x: .495000005, y: .899999976} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: .5, y: .5} +--- !u!224 &22400012 +RectTransform: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100012} + 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: 22400006} + m_RootOrder: 0 + m_AnchorMin: {x: .0500000007, y: .180000007} + m_AnchorMax: {x: .949999988, y: .819999993} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: .5, y: .5} +--- !u!1001 &100100000 +Prefab: + m_ObjectHideFlags: 1 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: [] + m_RemovedComponents: [] + m_ParentPrefab: {fileID: 0} + m_RootGameObject: {fileID: 100000} + m_IsPrefabParent: 1 diff --git a/Assets/Standard Assets/CrossPlatformInput/Prefabs/DualTouchControls.prefab.meta b/Assets/Standard Assets/CrossPlatformInput/Prefabs/DualTouchControls.prefab.meta new file mode 100644 index 0000000..d70a960 --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Prefabs/DualTouchControls.prefab.meta @@ -0,0 +1,5 @@ +fileFormatVersion: 2 +guid: 2169821f0567671499a5c10104c69c24 +NativeFormatImporter: + userData: + assetBundleName: diff --git a/Assets/Standard Assets/CrossPlatformInput/Prefabs/MobileAircraftControls.prefab b/Assets/Standard Assets/CrossPlatformInput/Prefabs/MobileAircraftControls.prefab new file mode 100644 index 0000000..caac418 --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Prefabs/MobileAircraftControls.prefab @@ -0,0 +1,972 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &100000 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 4 + m_Component: + - 224: {fileID: 22400000} + - 223: {fileID: 22300000} + - 114: {fileID: 11400000} + - 114: {fileID: 11400030} + m_Layer: 5 + m_Name: MobileAircraftControls + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &100002 +GameObject: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 4 + m_Component: + - 224: {fileID: 22400002} + - 222: {fileID: 22200000} + - 114: {fileID: 11400002} + m_Layer: 5 + m_Name: Handle + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &100004 +GameObject: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 4 + m_Component: + - 224: {fileID: 22400004} + m_Layer: 5 + m_Name: Sliding Area + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &100006 +GameObject: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 4 + m_Component: + - 224: {fileID: 22400006} + - 222: {fileID: 22200002} + - 114: {fileID: 11400004} + m_Layer: 5 + m_Name: Background + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &100008 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 4 + m_Component: + - 4: {fileID: 400000} + - 114: {fileID: 11400014} + m_Layer: 0 + m_Name: TiltSteerInputH + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &100010 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 4 + m_Component: + - 4: {fileID: 400002} + - 114: {fileID: 11400028} + m_Layer: 0 + m_Name: TiltSteerInputV + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &100012 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 4 + m_Component: + - 224: {fileID: 22400008} + - 114: {fileID: 11494550} + - 114: {fileID: 11483774} + m_Layer: 5 + m_Name: Throttle + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &100014 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 4 + m_Component: + - 224: {fileID: 22400010} + - 222: {fileID: 22200006} + - 114: {fileID: 11400020} + - 114: {fileID: 11400018} + - 114: {fileID: 11400016} + m_Layer: 5 + m_Name: Brake + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &100016 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 4 + m_Component: + - 224: {fileID: 22400012} + - 222: {fileID: 22200004} + - 114: {fileID: 11400012} + - 114: {fileID: 11400010} + - 114: {fileID: 11400008} + - 114: {fileID: 11424508} + m_Layer: 5 + m_Name: Right + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &100018 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 4 + m_Component: + - 224: {fileID: 22400014} + - 222: {fileID: 22200008} + - 114: {fileID: 11400026} + - 114: {fileID: 11400024} + - 114: {fileID: 11400022} + - 114: {fileID: 11443148} + m_Layer: 5 + m_Name: Left + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &100020 +GameObject: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 4 + m_Component: + - 224: {fileID: 22400016} + - 222: {fileID: 22200010} + - 114: {fileID: 11400032} + m_Layer: 5 + m_Name: Text + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &400000 +Transform: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100008} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -542.68457, y: -205.718719, z: -62.2698517} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 22400000} + m_RootOrder: 5 +--- !u!4 &400002 +Transform: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100010} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -542.68457, y: -205.718719, z: -62.2698517} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 22400000} + m_RootOrder: 4 +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100000} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 1301386320, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Priority: 3 + ignoreReversedGraphics: 1 + blockingObjects: 0 + m_BlockingMask: + serializedVersion: 2 + m_Bits: 4294967295 +--- !u!114 &11400002 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100002} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_Sprite: {fileID: 21300000, guid: e4f1fee3de32377429fd1348fae62b10, type: 3} + m_Type: 0 + m_PreserveAspect: 1 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 +--- !u!114 &11400004 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100006} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: .13333334} + m_Sprite: {fileID: 21300000, guid: ea5873cfd9158664f89459f0c9e1d853, type: 3} + m_Type: 1 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 +--- !u!114 &11400008 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100016} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 85bf3be603548374ca46f521a3aa7fda, type: 3} + m_Name: + m_EditorClassIdentifier: + Name: Horizontal +--- !u!114 &11400010 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100016} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -1862395651, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + delegates: + - eventID: 2 + callback: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 11400008} + m_MethodName: SetAxisPositiveState + m_Mode: 1 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_IntArgument: 0 + m_FloatArgument: 1 + m_StringArgument: Horizontal + m_BoolArgument: 0 + m_CallState: 1 + m_TypeName: UnityEngine.EventSystems.EventTrigger+TriggerEvent, UnityEngine.UI, + Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + - eventID: 3 + callback: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 11400008} + m_MethodName: SetAxisNeutralState + m_Mode: 1 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: Horizontal + m_BoolArgument: 0 + m_CallState: 1 + m_TypeName: UnityEngine.EventSystems.EventTrigger+TriggerEvent, UnityEngine.UI, + Version=1.0.0.0, Culture=neutral, PublicKeyToken=null +--- !u!114 &11400012 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100016} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: .588} + m_Sprite: {fileID: 21300000, guid: 4db017495c69e8140a56a0e2b669e3f8, type: 3} + m_Type: 0 + m_PreserveAspect: 1 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 +--- !u!114 &11400014 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100008} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5c2d84226fbbaf94e9c1451f1c39b06a, type: 3} + m_Name: + m_EditorClassIdentifier: + mapping: + type: 0 + axisName: Mouse X + tiltAroundAxis: 0 + fullTiltAngle: 50 + centreAngleOffset: 0 +--- !u!114 &11400016 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100014} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 85bf3be603548374ca46f521a3aa7fda, type: 3} + m_Name: + m_EditorClassIdentifier: + Name: Fire1 +--- !u!114 &11400018 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100014} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -1862395651, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + delegates: + - eventID: 2 + callback: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 11400016} + m_MethodName: SetAxisPositiveState + m_Mode: 1 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_IntArgument: 1 + m_FloatArgument: 0 + m_StringArgument: Fire1 + m_BoolArgument: 0 + m_CallState: 1 + m_TypeName: UnityEngine.EventSystems.EventTrigger+TriggerEvent, UnityEngine.UI, + Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + - eventID: 3 + callback: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 11400016} + m_MethodName: SetAxisNegativeState + m_Mode: 1 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: Fire1 + m_BoolArgument: 0 + m_CallState: 1 + m_TypeName: UnityEngine.EventSystems.EventTrigger+TriggerEvent, UnityEngine.UI, + Version=1.0.0.0, Culture=neutral, PublicKeyToken=null +--- !u!114 &11400020 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100014} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: .13333334} + m_Sprite: {fileID: 21300000, guid: 3d8675433a508ec47b8f895201eacf20, type: 3} + m_Type: 1 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 +--- !u!114 &11400022 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100018} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 85bf3be603548374ca46f521a3aa7fda, type: 3} + m_Name: + m_EditorClassIdentifier: + Name: Horizontal +--- !u!114 &11400024 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100018} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -1862395651, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + delegates: + - eventID: 2 + callback: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 11400022} + m_MethodName: SetAxisNegativeState + m_Mode: 1 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_IntArgument: 0 + m_FloatArgument: -1 + m_StringArgument: Horizontal + m_BoolArgument: 0 + m_CallState: 1 + m_TypeName: UnityEngine.EventSystems.EventTrigger+TriggerEvent, UnityEngine.UI, + Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + - eventID: 3 + callback: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 11400022} + m_MethodName: SetAxisNeutralState + m_Mode: 1 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: Horizontal + m_BoolArgument: 0 + m_CallState: 1 + m_TypeName: UnityEngine.EventSystems.EventTrigger+TriggerEvent, UnityEngine.UI, + Version=1.0.0.0, Culture=neutral, PublicKeyToken=null +--- !u!114 &11400026 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100018} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: .588} + m_Sprite: {fileID: 21300000, guid: 4db017495c69e8140a56a0e2b669e3f8, type: 3} + m_Type: 0 + m_PreserveAspect: 1 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 +--- !u!114 &11400028 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100010} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5c2d84226fbbaf94e9c1451f1c39b06a, type: 3} + m_Name: + m_EditorClassIdentifier: + mapping: + type: 0 + axisName: Mouse Y + tiltAroundAxis: 1 + fullTiltAngle: -35 + centreAngleOffset: 45 +--- !u!114 &11400030 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100000} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 71398ce7fbc3a5b4fa50b50bd54317a7, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!114 &11400032 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100020} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 708705254, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: .635294139} + m_FontData: + m_Font: {fileID: 12800000, guid: 01cd679a1b9ee48bf9c546f6ce2cb97e, type: 3} + m_FontSize: 26 + m_FontStyle: 0 + m_BestFit: 1 + m_MinSize: 5 + m_MaxSize: 72 + m_Alignment: 4 + m_RichText: 1 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 0 + m_LineSpacing: 1 + m_Text: BRAKE +--- !u!114 &11424508 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100016} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 1392445389, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 2 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: .960784316, g: .960784316, b: .960784316, a: 1} + m_PressedColor: {r: .784313738, g: .784313738, b: .784313738, a: 1} + m_DisabledColor: {r: .784313738, g: .784313738, b: .784313738, a: .501960814} + m_ColorMultiplier: 1 + m_FadeDuration: .100000001 + m_SpriteState: + m_HighlightedSprite: {fileID: 21300000, guid: 49b611e658efbf443b686a4036f74fe3, + type: 3} + m_PressedSprite: {fileID: 21300000, guid: 49b611e658efbf443b686a4036f74fe3, type: 3} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 11400012} + m_OnClick: + m_PersistentCalls: + m_Calls: [] + m_TypeName: UnityEngine.UI.Button+ButtonClickedEvent, UnityEngine.UI, Version=1.0.0.0, + Culture=neutral, PublicKeyToken=null +--- !u!114 &11443148 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100018} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 1392445389, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 2 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: .960784316, g: .960784316, b: .960784316, a: 1} + m_PressedColor: {r: .784313738, g: .784313738, b: .784313738, a: 1} + m_DisabledColor: {r: .784313738, g: .784313738, b: .784313738, a: .501960814} + m_ColorMultiplier: 1 + m_FadeDuration: .100000001 + m_SpriteState: + m_HighlightedSprite: {fileID: 21300000, guid: 49b611e658efbf443b686a4036f74fe3, + type: 3} + m_PressedSprite: {fileID: 21300000, guid: 49b611e658efbf443b686a4036f74fe3, type: 3} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 11400026} + m_OnClick: + m_PersistentCalls: + m_Calls: [] + m_TypeName: UnityEngine.UI.Button+ButtonClickedEvent, UnityEngine.UI, Version=1.0.0.0, + Culture=neutral, PublicKeyToken=null +--- !u!114 &11483774 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100012} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -2061169968, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 1 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: .960784316, g: .960784316, b: .960784316, a: 1} + m_PressedColor: {r: .784313738, g: .784313738, b: .784313738, a: 1} + m_DisabledColor: {r: .784313738, g: .784313738, b: .784313738, a: .501960814} + m_ColorMultiplier: 1 + m_FadeDuration: .100000001 + m_SpriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 0} + m_HandleRect: {fileID: 22400002} + m_Direction: 2 + m_Value: .5 + m_Size: .200000003 + m_NumberOfSteps: 0 + m_OnValueChanged: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 11494550} + m_MethodName: HandleInput + m_Mode: 0 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: + m_BoolArgument: 0 + m_CallState: 1 + m_TypeName: UnityEngine.UI.Scrollbar+ScrollEvent, UnityEngine.UI, Version=1.0.0.0, + Culture=neutral, PublicKeyToken=null +--- !u!114 &11494550 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100012} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 7d3269566d48b8447bb48d2259e28f8b, type: 3} + m_Name: + m_EditorClassIdentifier: + axis: Vertical +--- !u!222 &22200000 +CanvasRenderer: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100002} +--- !u!222 &22200002 +CanvasRenderer: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100006} +--- !u!222 &22200004 +CanvasRenderer: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100016} +--- !u!222 &22200006 +CanvasRenderer: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100014} +--- !u!222 &22200008 +CanvasRenderer: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100018} +--- !u!222 &22200010 +CanvasRenderer: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100020} +--- !u!223 &22300000 +Canvas: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100000} + m_Enabled: 1 + serializedVersion: 2 + m_RenderMode: 0 + m_Camera: {fileID: 0} + m_PlaneDistance: 100 + m_PixelPerfect: 1 + m_ReceivesEvents: 1 + m_OverrideSorting: 0 + m_OverridePixelPerfect: 0 + m_SortingLayerID: 0 + m_SortingOrder: 0 +--- !u!224 &22400000 +RectTransform: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100000} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 0, y: 0, z: 0} + m_Children: + - {fileID: 22400014} + - {fileID: 22400012} + - {fileID: 22400010} + - {fileID: 22400008} + - {fileID: 400002} + - {fileID: 400000} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 0, y: 0} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0, y: 0} +--- !u!224 &22400002 +RectTransform: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100002} + 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: 22400004} + m_RootOrder: 0 + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 0, y: 0} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: .5, y: .5} +--- !u!224 &22400004 +RectTransform: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100004} + 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: 22400002} + m_Father: {fileID: 22400006} + m_RootOrder: 0 + m_AnchorMin: {x: .0900000036, y: 0} + m_AnchorMax: {x: .870000005, y: 1} + m_AnchoredPosition: {x: 2, y: 0} + m_SizeDelta: {x: -2, y: 0} + m_Pivot: {x: .5, y: .5} +--- !u!224 &22400006 +RectTransform: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100006} + 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: 22400004} + m_Father: {fileID: 22400008} + m_RootOrder: 0 + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: .5, y: .5} +--- !u!224 &22400008 +RectTransform: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100012} + 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: 22400006} + m_Father: {fileID: 22400000} + m_RootOrder: 3 + m_AnchorMin: {x: .0199999996, y: .256999999} + m_AnchorMax: {x: .0799999982, y: .860000014} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: .5, y: .5} +--- !u!224 &22400010 +RectTransform: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100014} + 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: 22400016} + m_Father: {fileID: 22400000} + m_RootOrder: 2 + m_AnchorMin: {x: .349999994, y: .0299999993} + m_AnchorMax: {x: .649999976, y: .129999995} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: .5, y: .5} +--- !u!224 &22400012 +RectTransform: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100016} + 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: 22400000} + m_RootOrder: 1 + m_AnchorMin: {x: .920000017, y: .0299999993} + m_AnchorMax: {x: .980000019, y: .180000007} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: .5, y: .5} +--- !u!224 &22400014 +RectTransform: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100018} + m_LocalRotation: {x: 0, y: 0, z: 1, w: -1.62920685e-07} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 22400000} + m_RootOrder: 0 + m_AnchorMin: {x: .0199999996, y: .0299999993} + m_AnchorMax: {x: .0799999982, y: .180000007} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: .5, y: .5} +--- !u!224 &22400016 +RectTransform: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100020} + 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: 22400010} + m_RootOrder: 0 + m_AnchorMin: {x: .0199999996, y: .140000001} + m_AnchorMax: {x: .980000019, y: .860000014} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: .5, y: .5} +--- !u!1001 &100100000 +Prefab: + m_ObjectHideFlags: 1 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: [] + m_RemovedComponents: [] + m_ParentPrefab: {fileID: 0} + m_RootGameObject: {fileID: 100000} + m_IsPrefabParent: 1 diff --git a/Assets/Standard Assets/CrossPlatformInput/Prefabs/MobileAircraftControls.prefab.meta b/Assets/Standard Assets/CrossPlatformInput/Prefabs/MobileAircraftControls.prefab.meta new file mode 100644 index 0000000..6576b7a --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Prefabs/MobileAircraftControls.prefab.meta @@ -0,0 +1,5 @@ +fileFormatVersion: 2 +guid: 3369231b1ed7ad34e84d9240a571db81 +NativeFormatImporter: + userData: + assetBundleName: diff --git a/Assets/Standard Assets/CrossPlatformInput/Prefabs/MobileSingleStickControl.prefab b/Assets/Standard Assets/CrossPlatformInput/Prefabs/MobileSingleStickControl.prefab new file mode 100644 index 0000000..1b677f8 --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Prefabs/MobileSingleStickControl.prefab @@ -0,0 +1,376 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &100000 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 4 + m_Component: + - 224: {fileID: 22400000} + - 223: {fileID: 22300000} + - 114: {fileID: 11400000} + - 114: {fileID: 11400012} + m_Layer: 5 + m_Name: MobileSingleStickControl + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &100002 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 4 + m_Component: + - 224: {fileID: 22400002} + - 222: {fileID: 22200002} + - 114: {fileID: 11400010} + - 114: {fileID: 11400008} + m_Layer: 5 + m_Name: MobileJoystick + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &100004 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 4 + m_Component: + - 224: {fileID: 22400004} + - 222: {fileID: 22200000} + - 114: {fileID: 11400006} + - 114: {fileID: 11400004} + - 114: {fileID: 11400002} + m_Layer: 5 + m_Name: JumpButton + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &100006 +GameObject: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 4 + m_Component: + - 224: {fileID: 22400006} + - 222: {fileID: 22200004} + - 114: {fileID: 11400016} + - 114: {fileID: 11400014} + m_Layer: 5 + m_Name: Text + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100000} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 1301386320, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + ignoreReversedGraphics: 1 + blockingObjects: 0 + m_BlockingMask: + serializedVersion: 2 + m_Bits: 4294967295 +--- !u!114 &11400002 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100004} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 85bf3be603548374ca46f521a3aa7fda, type: 3} + m_Name: + m_EditorClassIdentifier: + Name: Jump +--- !u!114 &11400004 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100004} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -1862395651, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + delegates: + - eventID: 2 + callback: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 11400002} + m_MethodName: SetDownState + m_Mode: 1 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: Jump + m_BoolArgument: 0 + m_CallState: 1 + m_TypeName: UnityEngine.EventSystems.EventTrigger+TriggerEvent, UnityEngine.UI, + Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + - eventID: 3 + callback: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 11400002} + m_MethodName: SetUpState + m_Mode: 1 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: Jump + m_BoolArgument: 0 + m_CallState: 1 + m_TypeName: UnityEngine.EventSystems.EventTrigger+TriggerEvent, UnityEngine.UI, + Version=1.0.0.0, Culture=neutral, PublicKeyToken=null +--- !u!114 &11400006 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100004} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_Sprite: {fileID: 21300000, guid: 3d8675433a508ec47b8f895201eacf20, type: 3} + m_Type: 0 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 +--- !u!114 &11400008 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100002} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 00c3c865782347f41b6358d9fba14b48, type: 3} + m_Name: + m_EditorClassIdentifier: + MovementRange: 100 + axesToUse: 0 + horizontalAxisName: Horizontal + verticalAxisName: Vertical +--- !u!114 &11400010 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100002} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_Sprite: {fileID: 21300000, guid: 9866a92691696b346901281f2b329034, type: 3} + m_Type: 0 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 +--- !u!114 &11400012 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100000} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 71398ce7fbc3a5b4fa50b50bd54317a7, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!114 &11400014 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100006} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 1573420865, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_EffectColor: {r: 0, g: 0, b: 0, a: .125490203} + m_EffectDistance: {x: 2, y: -2} + m_UseGraphicAlpha: 1 +--- !u!114 &11400016 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100006} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 708705254, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: .643137276} + m_FontData: + m_Font: {fileID: 12800000, guid: 01cd679a1b9ee48bf9c546f6ce2cb97e, type: 3} + m_FontSize: 26 + m_FontStyle: 0 + m_BestFit: 0 + m_MinSize: 10 + m_MaxSize: 40 + m_Alignment: 4 + m_RichText: 1 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 0 + m_LineSpacing: 1 + m_Text: Jump +--- !u!222 &22200000 +CanvasRenderer: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100004} +--- !u!222 &22200002 +CanvasRenderer: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100002} +--- !u!222 &22200004 +CanvasRenderer: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100006} +--- !u!223 &22300000 +Canvas: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100000} + m_Enabled: 1 + serializedVersion: 2 + m_RenderMode: 0 + m_Camera: {fileID: 0} + m_PlaneDistance: 100 + m_PixelPerfect: 1 + m_ReceivesEvents: 1 + m_OverrideSorting: 0 + m_OverridePixelPerfect: 0 + m_SortingLayerID: 0 + m_SortingOrder: 0 +--- !u!224 &22400000 +RectTransform: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100000} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 0, y: 0, z: 0} + m_Children: + - {fileID: 22400004} + - {fileID: 22400002} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 0, y: 0} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0, y: 0} +--- !u!224 &22400002 +RectTransform: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100002} + 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: 22400000} + m_RootOrder: 1 + m_AnchorMin: {x: .160000011, y: .200000003} + m_AnchorMax: {x: .160000011, y: .200000003} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 80, y: 80} + m_Pivot: {x: .5, y: .5} +--- !u!224 &22400004 +RectTransform: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100004} + 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: 22400006} + m_Father: {fileID: 22400000} + m_RootOrder: 0 + m_AnchorMin: {x: .779999971, y: .00999999978} + m_AnchorMax: {x: .99000001, y: .150000006} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: .5, y: .5} +--- !u!224 &22400006 +RectTransform: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100006} + 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: 22400004} + m_RootOrder: 0 + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: .5, y: .5} +--- !u!1001 &100100000 +Prefab: + m_ObjectHideFlags: 1 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: [] + m_RemovedComponents: [] + m_ParentPrefab: {fileID: 0} + m_RootGameObject: {fileID: 100000} + m_IsPrefabParent: 1 diff --git a/Assets/Standard Assets/CrossPlatformInput/Prefabs/MobileSingleStickControl.prefab.meta b/Assets/Standard Assets/CrossPlatformInput/Prefabs/MobileSingleStickControl.prefab.meta new file mode 100644 index 0000000..8d63434 --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Prefabs/MobileSingleStickControl.prefab.meta @@ -0,0 +1,5 @@ +fileFormatVersion: 2 +guid: 9529ecc3d479da5499993355e6c2cb4f +NativeFormatImporter: + userData: + assetBundleName: diff --git a/Assets/Standard Assets/CrossPlatformInput/Prefabs/MobileTiltControlRig.prefab b/Assets/Standard Assets/CrossPlatformInput/Prefabs/MobileTiltControlRig.prefab new file mode 100644 index 0000000..5356909 --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Prefabs/MobileTiltControlRig.prefab @@ -0,0 +1,144 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &100000 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 4 + m_Component: + - 4: {fileID: 400000} + - 114: {fileID: 11400004} + m_Layer: 0 + m_Name: MobileTiltControlRig + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &100002 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 4 + m_Component: + - 4: {fileID: 400002} + - 114: {fileID: 11400000} + m_Layer: 0 + m_Name: TiltSteerInputH + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &100004 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 4 + m_Component: + - 4: {fileID: 400004} + - 114: {fileID: 11400002} + m_Layer: 0 + m_Name: TiltSteerInputV + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &400000 +Transform: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100000} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 385.509033, y: 268.018066, z: -62.2695312} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 400004} + - {fileID: 400002} + m_Father: {fileID: 0} + m_RootOrder: 0 +--- !u!4 &400002 +Transform: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100002} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -928.193604, y: -473.736786, z: -.00032043457} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 400000} + m_RootOrder: 1 +--- !u!4 &400004 +Transform: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100004} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -928.193604, y: -473.736786, z: -.00032043457} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 400000} + m_RootOrder: 0 +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100002} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5c2d84226fbbaf94e9c1451f1c39b06a, type: 3} + m_Name: + m_EditorClassIdentifier: + mapping: + type: 0 + axisName: Horizontal + tiltAroundAxis: 0 + fullTiltAngle: 50 + centreAngleOffset: 0 +--- !u!114 &11400002 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100004} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5c2d84226fbbaf94e9c1451f1c39b06a, type: 3} + m_Name: + m_EditorClassIdentifier: + mapping: + type: 0 + axisName: Vertical + tiltAroundAxis: 1 + fullTiltAngle: -35 + centreAngleOffset: 45 +--- !u!114 &11400004 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 100000} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 71398ce7fbc3a5b4fa50b50bd54317a7, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!1001 &100100000 +Prefab: + m_ObjectHideFlags: 1 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: [] + m_RemovedComponents: [] + m_ParentPrefab: {fileID: 0} + m_RootGameObject: {fileID: 100000} + m_IsPrefabParent: 1 diff --git a/Assets/Standard Assets/CrossPlatformInput/Prefabs/MobileTiltControlRig.prefab.meta b/Assets/Standard Assets/CrossPlatformInput/Prefabs/MobileTiltControlRig.prefab.meta new file mode 100644 index 0000000..271d5a2 --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Prefabs/MobileTiltControlRig.prefab.meta @@ -0,0 +1,5 @@ +fileFormatVersion: 2 +guid: 999388b68bb99b44099461bfbed94358 +NativeFormatImporter: + userData: + assetBundleName: diff --git a/Assets/Standard Assets/CrossPlatformInput/Scripts.meta b/Assets/Standard Assets/CrossPlatformInput/Scripts.meta new file mode 100644 index 0000000..b620d0b --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Scripts.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 3f66eeca8ac36914e9ec9a716a9d9f73 +folderAsset: yes +timeCreated: 1436977288 +licenseType: Store +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Standard Assets/CrossPlatformInput/Scripts/AxisTouchButton.cs b/Assets/Standard Assets/CrossPlatformInput/Scripts/AxisTouchButton.cs new file mode 100644 index 0000000..75db18a --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Scripts/AxisTouchButton.cs @@ -0,0 +1,75 @@ +using System; +using UnityEngine; +using UnityEngine.EventSystems; + +namespace UnityStandardAssets.CrossPlatformInput +{ + public class AxisTouchButton : MonoBehaviour, IPointerDownHandler, IPointerUpHandler + { + // designed to work in a pair with another axis touch button + // (typically with one having -1 and one having 1 axisValues) + public string axisName = "Horizontal"; // The name of the axis + public float axisValue = 1; // The axis that the value has + public float responseSpeed = 3; // The speed at which the axis touch button responds + public float returnToCentreSpeed = 3; // The speed at which the button will return to its centre + + AxisTouchButton m_PairedWith; // Which button this one is paired with + CrossPlatformInputManager.VirtualAxis m_Axis; // A reference to the virtual axis as it is in the cross platform input + + void OnEnable() + { + if (!CrossPlatformInputManager.AxisExists(axisName)) + { + // if the axis doesnt exist create a new one in cross platform input + m_Axis = new CrossPlatformInputManager.VirtualAxis(axisName); + CrossPlatformInputManager.RegisterVirtualAxis(m_Axis); + } + else + { + m_Axis = CrossPlatformInputManager.VirtualAxisReference(axisName); + } + FindPairedButton(); + } + + void FindPairedButton() + { + // find the other button witch which this button should be paired + // (it should have the same axisName) + var otherAxisButtons = FindObjectsOfType(typeof(AxisTouchButton)) as AxisTouchButton[]; + + if (otherAxisButtons != null) + { + for (int i = 0; i < otherAxisButtons.Length; i++) + { + if (otherAxisButtons[i].axisName == axisName && otherAxisButtons[i] != this) + { + m_PairedWith = otherAxisButtons[i]; + } + } + } + } + + void OnDisable() + { + // The object is disabled so remove it from the cross platform input system + m_Axis.Remove(); + } + + + public void OnPointerDown(PointerEventData data) + { + if (m_PairedWith == null) + { + FindPairedButton(); + } + // update the axis and record that the button has been pressed this frame + m_Axis.Update(Mathf.MoveTowards(m_Axis.GetValue, axisValue, responseSpeed * Time.deltaTime)); + } + + + public void OnPointerUp(PointerEventData data) + { + m_Axis.Update(Mathf.MoveTowards(m_Axis.GetValue, 0, responseSpeed * Time.deltaTime)); + } + } +} \ No newline at end of file diff --git a/Assets/Standard Assets/CrossPlatformInput/Scripts/AxisTouchButton.cs.meta b/Assets/Standard Assets/CrossPlatformInput/Scripts/AxisTouchButton.cs.meta new file mode 100644 index 0000000..241497f --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Scripts/AxisTouchButton.cs.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 9ab98b66288df7b4fa182075f2f12bd6 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: diff --git a/Assets/Standard Assets/CrossPlatformInput/Scripts/ButtonHandler.cs b/Assets/Standard Assets/CrossPlatformInput/Scripts/ButtonHandler.cs new file mode 100644 index 0000000..ca34acf --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Scripts/ButtonHandler.cs @@ -0,0 +1,50 @@ +using System; +using UnityEngine; + +namespace UnityStandardAssets.CrossPlatformInput +{ + public class ButtonHandler : MonoBehaviour + { + + public string Name; + + void OnEnable() + { + + } + + public void SetDownState() + { + CrossPlatformInputManager.SetButtonDown(Name); + } + + + public void SetUpState() + { + CrossPlatformInputManager.SetButtonUp(Name); + } + + + public void SetAxisPositiveState() + { + CrossPlatformInputManager.SetAxisPositive(Name); + } + + + public void SetAxisNeutralState() + { + CrossPlatformInputManager.SetAxisZero(Name); + } + + + public void SetAxisNegativeState() + { + CrossPlatformInputManager.SetAxisNegative(Name); + } + + public void Update() + { + + } + } +} diff --git a/Assets/Standard Assets/CrossPlatformInput/Scripts/ButtonHandler.cs.meta b/Assets/Standard Assets/CrossPlatformInput/Scripts/ButtonHandler.cs.meta new file mode 100644 index 0000000..1aadb06 --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Scripts/ButtonHandler.cs.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 85bf3be603548374ca46f521a3aa7fda +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: diff --git a/Assets/Standard Assets/CrossPlatformInput/Scripts/CrossPlatformInputManager.cs b/Assets/Standard Assets/CrossPlatformInput/Scripts/CrossPlatformInputManager.cs new file mode 100644 index 0000000..7f28944 --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Scripts/CrossPlatformInputManager.cs @@ -0,0 +1,318 @@ +using System; +using UnityEngine; +using UnityStandardAssets.CrossPlatformInput.PlatformSpecific; + +namespace UnityStandardAssets.CrossPlatformInput +{ + public static class CrossPlatformInputManager + { + public enum ActiveInputMethod + { + Hardware, + Touch + } + + + private static VirtualInput activeInput; + + private static VirtualInput s_TouchInput; + private static VirtualInput s_HardwareInput; + + + static CrossPlatformInputManager() + { + s_TouchInput = new MobileInput(); + s_HardwareInput = new StandaloneInput(); +#if MOBILE_INPUT + activeInput = s_TouchInput; +#else + activeInput = s_HardwareInput; +#endif + } + + public static void SwitchActiveInputMethod(ActiveInputMethod activeInputMethod) + { + switch (activeInputMethod) + { + case ActiveInputMethod.Hardware: + activeInput = s_HardwareInput; + break; + + case ActiveInputMethod.Touch: + activeInput = s_TouchInput; + break; + } + } + + public static bool AxisExists(string name) + { + return activeInput.AxisExists(name); + } + + public static bool ButtonExists(string name) + { + return activeInput.ButtonExists(name); + } + + public static void RegisterVirtualAxis(VirtualAxis axis) + { + activeInput.RegisterVirtualAxis(axis); + } + + + public static void RegisterVirtualButton(VirtualButton button) + { + activeInput.RegisterVirtualButton(button); + } + + + public static void UnRegisterVirtualAxis(string name) + { + if (name == null) + { + throw new ArgumentNullException("name"); + } + activeInput.UnRegisterVirtualAxis(name); + } + + + public static void UnRegisterVirtualButton(string name) + { + activeInput.UnRegisterVirtualButton(name); + } + + + // returns a reference to a named virtual axis if it exists otherwise null + public static VirtualAxis VirtualAxisReference(string name) + { + return activeInput.VirtualAxisReference(name); + } + + + // returns the platform appropriate axis for the given name + public static float GetAxis(string name) + { + return GetAxis(name, false); + } + + + public static float GetAxisRaw(string name) + { + return GetAxis(name, true); + } + + + // private function handles both types of axis (raw and not raw) + private static float GetAxis(string name, bool raw) + { + return activeInput.GetAxis(name, raw); + } + + + // -- Button handling -- + public static bool GetButton(string name) + { + return activeInput.GetButton(name); + } + + + public static bool GetButtonDown(string name) + { + return activeInput.GetButtonDown(name); + } + + + public static bool GetButtonUp(string name) + { + return activeInput.GetButtonUp(name); + } + + + public static void SetButtonDown(string name) + { + activeInput.SetButtonDown(name); + } + + + public static void SetButtonUp(string name) + { + activeInput.SetButtonUp(name); + } + + + public static void SetAxisPositive(string name) + { + activeInput.SetAxisPositive(name); + } + + + public static void SetAxisNegative(string name) + { + activeInput.SetAxisNegative(name); + } + + + public static void SetAxisZero(string name) + { + activeInput.SetAxisZero(name); + } + + + public static void SetAxis(string name, float value) + { + activeInput.SetAxis(name, value); + } + + + public static Vector3 mousePosition + { + get { return activeInput.MousePosition(); } + } + + + public static void SetVirtualMousePositionX(float f) + { + activeInput.SetVirtualMousePositionX(f); + } + + + public static void SetVirtualMousePositionY(float f) + { + activeInput.SetVirtualMousePositionY(f); + } + + + public static void SetVirtualMousePositionZ(float f) + { + activeInput.SetVirtualMousePositionZ(f); + } + + + // virtual axis and button classes - applies to mobile input + // Can be mapped to touch joysticks, tilt, gyro, etc, depending on desired implementation. + // Could also be implemented by other input devices - kinect, electronic sensors, etc + public class VirtualAxis + { + public string name { get; private set; } + private float m_Value; + public bool matchWithInputManager { get; private set; } + + + public VirtualAxis(string name) + : this(name, true) + { + } + + + public VirtualAxis(string name, bool matchToInputSettings) + { + this.name = name; + matchWithInputManager = matchToInputSettings; + } + + + // removes an axes from the cross platform input system + public void Remove() + { + UnRegisterVirtualAxis(name); + } + + + // a controller gameobject (eg. a virtual thumbstick) should update this class + public void Update(float value) + { + m_Value = value; + } + + + public float GetValue + { + get { return m_Value; } + } + + + public float GetValueRaw + { + get { return m_Value; } + } + } + + // a controller gameobject (eg. a virtual GUI button) should call the + // 'pressed' function of this class. Other objects can then read the + // Get/Down/Up state of this button. + public class VirtualButton + { + public string name { get; private set; } + public bool matchWithInputManager { get; private set; } + + private int m_LastPressedFrame = -5; + private int m_ReleasedFrame = -5; + private bool m_Pressed; + + + public VirtualButton(string name) + : this(name, true) + { + } + + + public VirtualButton(string name, bool matchToInputSettings) + { + this.name = name; + matchWithInputManager = matchToInputSettings; + } + + + // A controller gameobject should call this function when the button is pressed down + public void Pressed() + { + if (m_Pressed) + { + return; + } + m_Pressed = true; + m_LastPressedFrame = Time.frameCount; + } + + + // A controller gameobject should call this function when the button is released + public void Released() + { + m_Pressed = false; + m_ReleasedFrame = Time.frameCount; + } + + + // the controller gameobject should call Remove when the button is destroyed or disabled + public void Remove() + { + UnRegisterVirtualButton(name); + } + + + // these are the states of the button which can be read via the cross platform input system + public bool GetButton + { + get { return m_Pressed; } + } + + + public bool GetButtonDown + { + get + { + return m_LastPressedFrame - Time.frameCount == -1; + } + } + + + public bool GetButtonUp + { + get + { + return (m_ReleasedFrame == Time.frameCount - 1); + } + } + } + } +} diff --git a/Assets/Standard Assets/CrossPlatformInput/Scripts/CrossPlatformInputManager.cs.meta b/Assets/Standard Assets/CrossPlatformInput/Scripts/CrossPlatformInputManager.cs.meta new file mode 100644 index 0000000..ea900aa --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Scripts/CrossPlatformInputManager.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 6ac1ce5a5adfd9f46adbf5b6f752a47c +labels: +- Done +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: -1010 + icon: {instanceID: 0} + userData: + assetBundleName: diff --git a/Assets/Standard Assets/CrossPlatformInput/Scripts/InputAxisScrollbar.cs b/Assets/Standard Assets/CrossPlatformInput/Scripts/InputAxisScrollbar.cs new file mode 100644 index 0000000..b29832b --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Scripts/InputAxisScrollbar.cs @@ -0,0 +1,17 @@ +using System; +using UnityEngine; + +namespace UnityStandardAssets.CrossPlatformInput +{ + public class InputAxisScrollbar : MonoBehaviour + { + public string axis; + + void Update() { } + + public void HandleInput(float value) + { + CrossPlatformInputManager.SetAxis(axis, (value*2f) - 1f); + } + } +} diff --git a/Assets/Standard Assets/CrossPlatformInput/Scripts/InputAxisScrollbar.cs.meta b/Assets/Standard Assets/CrossPlatformInput/Scripts/InputAxisScrollbar.cs.meta new file mode 100644 index 0000000..956782c --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Scripts/InputAxisScrollbar.cs.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 7d3269566d48b8447bb48d2259e28f8b +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: diff --git a/Assets/Standard Assets/CrossPlatformInput/Scripts/Joystick.cs b/Assets/Standard Assets/CrossPlatformInput/Scripts/Joystick.cs new file mode 100644 index 0000000..fad46a8 --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Scripts/Joystick.cs @@ -0,0 +1,118 @@ +using System; +using UnityEngine; +using UnityEngine.EventSystems; + +namespace UnityStandardAssets.CrossPlatformInput +{ + public class Joystick : MonoBehaviour, IPointerDownHandler, IPointerUpHandler, IDragHandler + { + public enum AxisOption + { + // Options for which axes to use + Both, // Use both + OnlyHorizontal, // Only horizontal + OnlyVertical // Only vertical + } + + public int MovementRange = 100; + public AxisOption axesToUse = AxisOption.Both; // The options for the axes that the still will use + public string horizontalAxisName = "Horizontal"; // The name given to the horizontal axis for the cross platform input + public string verticalAxisName = "Vertical"; // The name given to the vertical axis for the cross platform input + + Vector3 m_StartPos; + bool m_UseX; // Toggle for using the x axis + bool m_UseY; // Toggle for using the Y axis + CrossPlatformInputManager.VirtualAxis m_HorizontalVirtualAxis; // Reference to the joystick in the cross platform input + CrossPlatformInputManager.VirtualAxis m_VerticalVirtualAxis; // Reference to the joystick in the cross platform input + + void OnEnable() + { + CreateVirtualAxes(); + } + + void Start() + { + m_StartPos = transform.position; + } + + void UpdateVirtualAxes(Vector3 value) + { + var delta = m_StartPos - value; + delta.y = -delta.y; + delta /= MovementRange; + if (m_UseX) + { + m_HorizontalVirtualAxis.Update(-delta.x); + } + + if (m_UseY) + { + m_VerticalVirtualAxis.Update(delta.y); + } + } + + void CreateVirtualAxes() + { + // set axes to use + m_UseX = (axesToUse == AxisOption.Both || axesToUse == AxisOption.OnlyHorizontal); + m_UseY = (axesToUse == AxisOption.Both || axesToUse == AxisOption.OnlyVertical); + + // create new axes based on axes to use + if (m_UseX) + { + m_HorizontalVirtualAxis = new CrossPlatformInputManager.VirtualAxis(horizontalAxisName); + CrossPlatformInputManager.RegisterVirtualAxis(m_HorizontalVirtualAxis); + } + if (m_UseY) + { + m_VerticalVirtualAxis = new CrossPlatformInputManager.VirtualAxis(verticalAxisName); + CrossPlatformInputManager.RegisterVirtualAxis(m_VerticalVirtualAxis); + } + } + + + public void OnDrag(PointerEventData data) + { + Vector3 newPos = Vector3.zero; + + if (m_UseX) + { + int delta = (int)(data.position.x - m_StartPos.x); + delta = Mathf.Clamp(delta, - MovementRange, MovementRange); + newPos.x = delta; + } + + if (m_UseY) + { + int delta = (int)(data.position.y - m_StartPos.y); + delta = Mathf.Clamp(delta, -MovementRange, MovementRange); + newPos.y = delta; + } + transform.position = new Vector3(m_StartPos.x + newPos.x, m_StartPos.y + newPos.y, m_StartPos.z + newPos.z); + UpdateVirtualAxes(transform.position); + } + + + public void OnPointerUp(PointerEventData data) + { + transform.position = m_StartPos; + UpdateVirtualAxes(m_StartPos); + } + + + public void OnPointerDown(PointerEventData data) { } + + void OnDisable() + { + // remove the joysticks from the cross platform input + if (m_UseX) + { + m_HorizontalVirtualAxis.Remove(); + } + if (m_UseY) + { + m_VerticalVirtualAxis.Remove(); + } + } + } +} \ No newline at end of file diff --git a/Assets/Standard Assets/CrossPlatformInput/Scripts/Joystick.cs.meta b/Assets/Standard Assets/CrossPlatformInput/Scripts/Joystick.cs.meta new file mode 100644 index 0000000..aaac767 --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Scripts/Joystick.cs.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 00c3c865782347f41b6358d9fba14b48 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: diff --git a/Assets/Standard Assets/CrossPlatformInput/Scripts/MobileControlRig.cs b/Assets/Standard Assets/CrossPlatformInput/Scripts/MobileControlRig.cs new file mode 100644 index 0000000..5333a62 --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Scripts/MobileControlRig.cs @@ -0,0 +1,102 @@ +using System; +#if UNITY_EDITOR +using UnityEditor; +#endif +using UnityEngine; + + +namespace UnityStandardAssets.CrossPlatformInput +{ + [ExecuteInEditMode] + public class MobileControlRig : MonoBehaviour +#if UNITY_EDITOR + , UnityEditor.Build.IActiveBuildTargetChanged +#endif + { + // this script enables or disables the child objects of a control rig + // depending on whether the USE_MOBILE_INPUT define is declared. + + // This define is set or unset by a menu item that is included with + // the Cross Platform Input package. + + +#if !UNITY_EDITOR + void OnEnable() + { + CheckEnableControlRig(); + } +#else + public int callbackOrder + { + get + { + return 1; + } + } +#endif + + private void Start() + { +#if UNITY_EDITOR + if (Application.isPlaying) //if in the editor, need to check if we are playing, as start is also called just after exiting play +#endif + { + UnityEngine.EventSystems.EventSystem system = GameObject.FindObjectOfType(); + + if (system == null) + {//the scene have no event system, spawn one + GameObject o = new GameObject("EventSystem"); + + o.AddComponent(); + o.AddComponent(); + } + } + } + +#if UNITY_EDITOR + + private void OnEnable() + { + EditorApplication.update += Update; + } + + + private void OnDisable() + { + EditorApplication.update -= Update; + } + + + private void Update() + { + CheckEnableControlRig(); + } +#endif + + + private void CheckEnableControlRig() + { +#if MOBILE_INPUT + EnableControlRig(true); +#else + EnableControlRig(false); +#endif + } + + + private void EnableControlRig(bool enabled) + { + foreach (Transform t in transform) + { + t.gameObject.SetActive(enabled); + } + } + +#if UNITY_EDITOR + public void OnActiveBuildTargetChanged(BuildTarget previousTarget, BuildTarget newTarget) + { + CheckEnableControlRig(); + } +#endif + } +} \ No newline at end of file diff --git a/Assets/Standard Assets/CrossPlatformInput/Scripts/MobileControlRig.cs.meta b/Assets/Standard Assets/CrossPlatformInput/Scripts/MobileControlRig.cs.meta new file mode 100644 index 0000000..0ee49e8 --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Scripts/MobileControlRig.cs.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 71398ce7fbc3a5b4fa50b50bd54317a7 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: diff --git a/Assets/Standard Assets/CrossPlatformInput/Scripts/PlatformSpecific.meta b/Assets/Standard Assets/CrossPlatformInput/Scripts/PlatformSpecific.meta new file mode 100644 index 0000000..0d6520a --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Scripts/PlatformSpecific.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 0bc72db1e9dcb9647818df5a07871127 +folderAsset: yes +timeCreated: 1436977288 +licenseType: Store +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Standard Assets/CrossPlatformInput/Scripts/PlatformSpecific/MobileInput.cs b/Assets/Standard Assets/CrossPlatformInput/Scripts/PlatformSpecific/MobileInput.cs new file mode 100644 index 0000000..580bda7 --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Scripts/PlatformSpecific/MobileInput.cs @@ -0,0 +1,133 @@ +using System; +using UnityEngine; + +namespace UnityStandardAssets.CrossPlatformInput.PlatformSpecific +{ + public class MobileInput : VirtualInput + { + private void AddButton(string name) + { + // we have not registered this button yet so add it, happens in the constructor + CrossPlatformInputManager.RegisterVirtualButton(new CrossPlatformInputManager.VirtualButton(name)); + } + + + private void AddAxes(string name) + { + // we have not registered this button yet so add it, happens in the constructor + CrossPlatformInputManager.RegisterVirtualAxis(new CrossPlatformInputManager.VirtualAxis(name)); + } + + + public override float GetAxis(string name, bool raw) + { + if (!m_VirtualAxes.ContainsKey(name)) + { + AddAxes(name); + } + return m_VirtualAxes[name].GetValue; + } + + + public override void SetButtonDown(string name) + { + if (!m_VirtualButtons.ContainsKey(name)) + { + AddButton(name); + } + m_VirtualButtons[name].Pressed(); + } + + + public override void SetButtonUp(string name) + { + if (!m_VirtualButtons.ContainsKey(name)) + { + AddButton(name); + } + m_VirtualButtons[name].Released(); + } + + + public override void SetAxisPositive(string name) + { + if (!m_VirtualAxes.ContainsKey(name)) + { + AddAxes(name); + } + m_VirtualAxes[name].Update(1f); + } + + + public override void SetAxisNegative(string name) + { + if (!m_VirtualAxes.ContainsKey(name)) + { + AddAxes(name); + } + m_VirtualAxes[name].Update(-1f); + } + + + public override void SetAxisZero(string name) + { + if (!m_VirtualAxes.ContainsKey(name)) + { + AddAxes(name); + } + m_VirtualAxes[name].Update(0f); + } + + + public override void SetAxis(string name, float value) + { + if (!m_VirtualAxes.ContainsKey(name)) + { + AddAxes(name); + } + m_VirtualAxes[name].Update(value); + } + + + public override bool GetButtonDown(string name) + { + if (m_VirtualButtons.ContainsKey(name)) + { + return m_VirtualButtons[name].GetButtonDown; + } + + AddButton(name); + return m_VirtualButtons[name].GetButtonDown; + } + + + public override bool GetButtonUp(string name) + { + if (m_VirtualButtons.ContainsKey(name)) + { + return m_VirtualButtons[name].GetButtonUp; + } + + AddButton(name); + return m_VirtualButtons[name].GetButtonUp; + } + + + public override bool GetButton(string name) + { + if (m_VirtualButtons.ContainsKey(name)) + { + return m_VirtualButtons[name].GetButton; + } + + AddButton(name); + return m_VirtualButtons[name].GetButton; + } + + + public override Vector3 MousePosition() + { + return virtualMousePosition; + } + } +} diff --git a/Assets/Standard Assets/CrossPlatformInput/Scripts/PlatformSpecific/MobileInput.cs.meta b/Assets/Standard Assets/CrossPlatformInput/Scripts/PlatformSpecific/MobileInput.cs.meta new file mode 100644 index 0000000..e0ffb74 --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Scripts/PlatformSpecific/MobileInput.cs.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 9703d53e47195aa4190acd11369ccd1b +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: diff --git a/Assets/Standard Assets/CrossPlatformInput/Scripts/PlatformSpecific/StandaloneInput.cs b/Assets/Standard Assets/CrossPlatformInput/Scripts/PlatformSpecific/StandaloneInput.cs new file mode 100644 index 0000000..9cc1a37 --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Scripts/PlatformSpecific/StandaloneInput.cs @@ -0,0 +1,79 @@ +using System; +using UnityEngine; + +namespace UnityStandardAssets.CrossPlatformInput.PlatformSpecific +{ + public class StandaloneInput : VirtualInput + { + public override float GetAxis(string name, bool raw) + { + return raw ? Input.GetAxisRaw(name) : Input.GetAxis(name); + } + + + public override bool GetButton(string name) + { + return Input.GetButton(name); + } + + + public override bool GetButtonDown(string name) + { + return Input.GetButtonDown(name); + } + + + public override bool GetButtonUp(string name) + { + return Input.GetButtonUp(name); + } + + + public override void SetButtonDown(string name) + { + throw new Exception( + " This is not possible to be called for standalone input. Please check your platform and code where this is called"); + } + + + public override void SetButtonUp(string name) + { + throw new Exception( + " This is not possible to be called for standalone input. Please check your platform and code where this is called"); + } + + + public override void SetAxisPositive(string name) + { + throw new Exception( + " This is not possible to be called for standalone input. Please check your platform and code where this is called"); + } + + + public override void SetAxisNegative(string name) + { + throw new Exception( + " This is not possible to be called for standalone input. Please check your platform and code where this is called"); + } + + + public override void SetAxisZero(string name) + { + throw new Exception( + " This is not possible to be called for standalone input. Please check your platform and code where this is called"); + } + + + public override void SetAxis(string name, float value) + { + throw new Exception( + " This is not possible to be called for standalone input. Please check your platform and code where this is called"); + } + + + public override Vector3 MousePosition() + { + return Input.mousePosition; + } + } +} \ No newline at end of file diff --git a/Assets/Standard Assets/CrossPlatformInput/Scripts/PlatformSpecific/StandaloneInput.cs.meta b/Assets/Standard Assets/CrossPlatformInput/Scripts/PlatformSpecific/StandaloneInput.cs.meta new file mode 100644 index 0000000..d4c99a6 --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Scripts/PlatformSpecific/StandaloneInput.cs.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 9961032f4f02c4f41997c3ea399d2f22 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: diff --git a/Assets/Standard Assets/CrossPlatformInput/Scripts/TiltInput.cs b/Assets/Standard Assets/CrossPlatformInput/Scripts/TiltInput.cs new file mode 100644 index 0000000..328e3b4 --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Scripts/TiltInput.cs @@ -0,0 +1,145 @@ +using System; +using UnityEngine; +#if UNITY_EDITOR +using UnityEditor; +#endif + +namespace UnityStandardAssets.CrossPlatformInput +{ + // helps with managing tilt input on mobile devices + public class TiltInput : MonoBehaviour + { + // options for the various orientations + public enum AxisOptions + { + ForwardAxis, + SidewaysAxis, + } + + + [Serializable] + public class AxisMapping + { + public enum MappingType + { + NamedAxis, + MousePositionX, + MousePositionY, + MousePositionZ + }; + + + public MappingType type; + public string axisName; + } + + + public AxisMapping mapping; + public AxisOptions tiltAroundAxis = AxisOptions.ForwardAxis; + public float fullTiltAngle = 25; + public float centreAngleOffset = 0; + + + private CrossPlatformInputManager.VirtualAxis m_SteerAxis; + + + private void OnEnable() + { + if (mapping.type == AxisMapping.MappingType.NamedAxis) + { + m_SteerAxis = new CrossPlatformInputManager.VirtualAxis(mapping.axisName); + CrossPlatformInputManager.RegisterVirtualAxis(m_SteerAxis); + } + } + + + private void Update() + { + float angle = 0; + if (Input.acceleration != Vector3.zero) + { + switch (tiltAroundAxis) + { + case AxisOptions.ForwardAxis: + angle = Mathf.Atan2(Input.acceleration.x, -Input.acceleration.y)*Mathf.Rad2Deg + + centreAngleOffset; + break; + case AxisOptions.SidewaysAxis: + angle = Mathf.Atan2(Input.acceleration.z, -Input.acceleration.y)*Mathf.Rad2Deg + + centreAngleOffset; + break; + } + } + + float axisValue = Mathf.InverseLerp(-fullTiltAngle, fullTiltAngle, angle)*2 - 1; + switch (mapping.type) + { + case AxisMapping.MappingType.NamedAxis: + m_SteerAxis.Update(axisValue); + break; + case AxisMapping.MappingType.MousePositionX: + CrossPlatformInputManager.SetVirtualMousePositionX(axisValue*Screen.width); + break; + case AxisMapping.MappingType.MousePositionY: + CrossPlatformInputManager.SetVirtualMousePositionY(axisValue*Screen.width); + break; + case AxisMapping.MappingType.MousePositionZ: + CrossPlatformInputManager.SetVirtualMousePositionZ(axisValue*Screen.width); + break; + } + } + + + private void OnDisable() + { + m_SteerAxis.Remove(); + } + } +} + + +namespace UnityStandardAssets.CrossPlatformInput.Inspector +{ +#if UNITY_EDITOR + [CustomPropertyDrawer(typeof (TiltInput.AxisMapping))] + public class TiltInputAxisStylePropertyDrawer : PropertyDrawer + { + public override void OnGUI(Rect position, SerializedProperty property, GUIContent label) + { + EditorGUI.BeginProperty(position, label, property); + + float x = position.x; + float y = position.y; + float inspectorWidth = position.width; + + // Don't make child fields be indented + var indent = EditorGUI.indentLevel; + EditorGUI.indentLevel = 0; + + var props = new[] {"type", "axisName"}; + var widths = new[] {.4f, .6f}; + if (property.FindPropertyRelative("type").enumValueIndex > 0) + { + // hide name if not a named axis + props = new[] {"type"}; + widths = new[] {1f}; + } + const float lineHeight = 18; + for (int n = 0; n < props.Length; ++n) + { + float w = widths[n]*inspectorWidth; + + // Calculate rects + Rect rect = new Rect(x, y, w, lineHeight); + x += w; + + EditorGUI.PropertyField(rect, property.FindPropertyRelative(props[n]), GUIContent.none); + } + + // Set indent back to what it was + EditorGUI.indentLevel = indent; + EditorGUI.EndProperty(); + } + } +#endif +} diff --git a/Assets/Standard Assets/CrossPlatformInput/Scripts/TiltInput.cs.meta b/Assets/Standard Assets/CrossPlatformInput/Scripts/TiltInput.cs.meta new file mode 100644 index 0000000..93f79bf --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Scripts/TiltInput.cs.meta @@ -0,0 +1,13 @@ +fileFormatVersion: 2 +guid: 5c2d84226fbbaf94e9c1451f1c39b06a +labels: +- Not +- Fully +- Implemented +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: -1001 + icon: {instanceID: 0} + userData: + assetBundleName: diff --git a/Assets/Standard Assets/CrossPlatformInput/Scripts/TouchPad.cs b/Assets/Standard Assets/CrossPlatformInput/Scripts/TouchPad.cs new file mode 100644 index 0000000..3c33612 --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Scripts/TouchPad.cs @@ -0,0 +1,156 @@ +using System; +using UnityEngine; +using UnityEngine.EventSystems; +using UnityEngine.UI; + +namespace UnityStandardAssets.CrossPlatformInput +{ + [RequireComponent(typeof(Image))] + public class TouchPad : MonoBehaviour, IPointerDownHandler, IPointerUpHandler + { + // Options for which axes to use + public enum AxisOption + { + Both, // Use both + OnlyHorizontal, // Only horizontal + OnlyVertical // Only vertical + } + + + public enum ControlStyle + { + Absolute, // operates from teh center of the image + Relative, // operates from the center of the initial touch + Swipe, // swipe to touch touch no maintained center + } + + + public AxisOption axesToUse = AxisOption.Both; // The options for the axes that the still will use + public ControlStyle controlStyle = ControlStyle.Absolute; // control style to use + public string horizontalAxisName = "Horizontal"; // The name given to the horizontal axis for the cross platform input + public string verticalAxisName = "Vertical"; // The name given to the vertical axis for the cross platform input + public float Xsensitivity = 1f; + public float Ysensitivity = 1f; + + Vector3 m_StartPos; + Vector2 m_PreviousDelta; + Vector3 m_JoytickOutput; + bool m_UseX; // Toggle for using the x axis + bool m_UseY; // Toggle for using the Y axis + CrossPlatformInputManager.VirtualAxis m_HorizontalVirtualAxis; // Reference to the joystick in the cross platform input + CrossPlatformInputManager.VirtualAxis m_VerticalVirtualAxis; // Reference to the joystick in the cross platform input + bool m_Dragging; + int m_Id = -1; + Vector2 m_PreviousTouchPos; // swipe style control touch + + +#if !UNITY_EDITOR + private Vector3 m_Center; + private Image m_Image; +#else + Vector3 m_PreviousMouse; +#endif + + void OnEnable() + { + CreateVirtualAxes(); + } + + void Start() + { +#if !UNITY_EDITOR + m_Image = GetComponent(); + m_Center = m_Image.transform.position; +#endif + } + + void CreateVirtualAxes() + { + // set axes to use + m_UseX = (axesToUse == AxisOption.Both || axesToUse == AxisOption.OnlyHorizontal); + m_UseY = (axesToUse == AxisOption.Both || axesToUse == AxisOption.OnlyVertical); + + // create new axes based on axes to use + if (m_UseX) + { + m_HorizontalVirtualAxis = new CrossPlatformInputManager.VirtualAxis(horizontalAxisName); + CrossPlatformInputManager.RegisterVirtualAxis(m_HorizontalVirtualAxis); + } + if (m_UseY) + { + m_VerticalVirtualAxis = new CrossPlatformInputManager.VirtualAxis(verticalAxisName); + CrossPlatformInputManager.RegisterVirtualAxis(m_VerticalVirtualAxis); + } + } + + void UpdateVirtualAxes(Vector3 value) + { + value = value.normalized; + if (m_UseX) + { + m_HorizontalVirtualAxis.Update(value.x); + } + + if (m_UseY) + { + m_VerticalVirtualAxis.Update(value.y); + } + } + + + public void OnPointerDown(PointerEventData data) + { + m_Dragging = true; + m_Id = data.pointerId; +#if !UNITY_EDITOR + if (controlStyle != ControlStyle.Absolute ) + m_Center = data.position; +#endif + } + + void Update() + { + if (!m_Dragging) + { + return; + } + if (Input.touchCount >= m_Id + 1 && m_Id != -1) + { +#if !UNITY_EDITOR + + if (controlStyle == ControlStyle.Swipe) + { + m_Center = m_PreviousTouchPos; + m_PreviousTouchPos = Input.touches[m_Id].position; + } + Vector2 pointerDelta = new Vector2(Input.touches[m_Id].position.x - m_Center.x , Input.touches[m_Id].position.y - m_Center.y).normalized; + pointerDelta.x *= Xsensitivity; + pointerDelta.y *= Ysensitivity; +#else + Vector2 pointerDelta; + pointerDelta.x = Input.mousePosition.x - m_PreviousMouse.x; + pointerDelta.y = Input.mousePosition.y - m_PreviousMouse.y; + m_PreviousMouse = new Vector3(Input.mousePosition.x, Input.mousePosition.y, 0f); +#endif + UpdateVirtualAxes(new Vector3(pointerDelta.x, pointerDelta.y, 0)); + } + } + + + public void OnPointerUp(PointerEventData data) + { + m_Dragging = false; + m_Id = -1; + UpdateVirtualAxes(Vector3.zero); + } + + void OnDisable() + { + if (CrossPlatformInputManager.AxisExists(horizontalAxisName)) + CrossPlatformInputManager.UnRegisterVirtualAxis(horizontalAxisName); + + if (CrossPlatformInputManager.AxisExists(verticalAxisName)) + CrossPlatformInputManager.UnRegisterVirtualAxis(verticalAxisName); + } + } +} \ No newline at end of file diff --git a/Assets/Standard Assets/CrossPlatformInput/Scripts/TouchPad.cs.meta b/Assets/Standard Assets/CrossPlatformInput/Scripts/TouchPad.cs.meta new file mode 100644 index 0000000..0b176aa --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Scripts/TouchPad.cs.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 1caf40fc8bebb6b43b2550c05ca791d6 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: diff --git a/Assets/Standard Assets/CrossPlatformInput/Scripts/VirtualInput.cs b/Assets/Standard Assets/CrossPlatformInput/Scripts/VirtualInput.cs new file mode 100644 index 0000000..0b9f5ad --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Scripts/VirtualInput.cs @@ -0,0 +1,134 @@ +using System; +using System.Collections.Generic; +using UnityEngine; + + +namespace UnityStandardAssets.CrossPlatformInput +{ + public abstract class VirtualInput + { + public Vector3 virtualMousePosition { get; private set; } + + + protected Dictionary m_VirtualAxes = + new Dictionary(); + // Dictionary to store the name relating to the virtual axes + protected Dictionary m_VirtualButtons = + new Dictionary(); + protected List m_AlwaysUseVirtual = new List(); + // list of the axis and button names that have been flagged to always use a virtual axis or button + + + public bool AxisExists(string name) + { + return m_VirtualAxes.ContainsKey(name); + } + + public bool ButtonExists(string name) + { + return m_VirtualButtons.ContainsKey(name); + } + + + public void RegisterVirtualAxis(CrossPlatformInputManager.VirtualAxis axis) + { + // check if we already have an axis with that name and log and error if we do + if (m_VirtualAxes.ContainsKey(axis.name)) + { + Debug.LogError("There is already a virtual axis named " + axis.name + " registered."); + } + else + { + // add any new axes + m_VirtualAxes.Add(axis.name, axis); + + // if we dont want to match with the input manager setting then revert to always using virtual + if (!axis.matchWithInputManager) + { + m_AlwaysUseVirtual.Add(axis.name); + } + } + } + + + public void RegisterVirtualButton(CrossPlatformInputManager.VirtualButton button) + { + // check if already have a buttin with that name and log an error if we do + if (m_VirtualButtons.ContainsKey(button.name)) + { + Debug.LogError("There is already a virtual button named " + button.name + " registered."); + } + else + { + // add any new buttons + m_VirtualButtons.Add(button.name, button); + + // if we dont want to match to the input manager then always use a virtual axis + if (!button.matchWithInputManager) + { + m_AlwaysUseVirtual.Add(button.name); + } + } + } + + + public void UnRegisterVirtualAxis(string name) + { + // if we have an axis with that name then remove it from our dictionary of registered axes + if (m_VirtualAxes.ContainsKey(name)) + { + m_VirtualAxes.Remove(name); + } + } + + + public void UnRegisterVirtualButton(string name) + { + // if we have a button with this name then remove it from our dictionary of registered buttons + if (m_VirtualButtons.ContainsKey(name)) + { + m_VirtualButtons.Remove(name); + } + } + + + // returns a reference to a named virtual axis if it exists otherwise null + public CrossPlatformInputManager.VirtualAxis VirtualAxisReference(string name) + { + return m_VirtualAxes.ContainsKey(name) ? m_VirtualAxes[name] : null; + } + + + public void SetVirtualMousePositionX(float f) + { + virtualMousePosition = new Vector3(f, virtualMousePosition.y, virtualMousePosition.z); + } + + + public void SetVirtualMousePositionY(float f) + { + virtualMousePosition = new Vector3(virtualMousePosition.x, f, virtualMousePosition.z); + } + + + public void SetVirtualMousePositionZ(float f) + { + virtualMousePosition = new Vector3(virtualMousePosition.x, virtualMousePosition.y, f); + } + + + public abstract float GetAxis(string name, bool raw); + + public abstract bool GetButton(string name); + public abstract bool GetButtonDown(string name); + public abstract bool GetButtonUp(string name); + + public abstract void SetButtonDown(string name); + public abstract void SetButtonUp(string name); + public abstract void SetAxisPositive(string name); + public abstract void SetAxisNegative(string name); + public abstract void SetAxisZero(string name); + public abstract void SetAxis(string name, float value); + public abstract Vector3 MousePosition(); + } +} diff --git a/Assets/Standard Assets/CrossPlatformInput/Scripts/VirtualInput.cs.meta b/Assets/Standard Assets/CrossPlatformInput/Scripts/VirtualInput.cs.meta new file mode 100644 index 0000000..8f6c44d --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Scripts/VirtualInput.cs.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 0f57aeb1b8dce3342bea5c28ac17db24 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: diff --git a/Assets/Standard Assets/CrossPlatformInput/Sprites.meta b/Assets/Standard Assets/CrossPlatformInput/Sprites.meta new file mode 100644 index 0000000..4a23b97 --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Sprites.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 1835e4537efbdd94b93c2dd136860f1d +folderAsset: yes +timeCreated: 1436977288 +licenseType: Store +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonAcceleratorOverSprite.png b/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonAcceleratorOverSprite.png new file mode 100644 index 0000000000000000000000000000000000000000..ebf8eddcb2bb49819fcd8db35e63830df2ef5282 GIT binary patch literal 10618 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 literal 0 HcmV?d00001 diff --git a/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonAcceleratorUpSprite.png.meta b/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonAcceleratorUpSprite.png.meta new file mode 100644 index 0000000..1ec1baa --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonAcceleratorUpSprite.png.meta @@ -0,0 +1,52 @@ +fileFormatVersion: 2 +guid: f588d850485d0ae479d73cf3bd0b7b00 +TextureImporter: + fileIDToRecycleName: {} + serializedVersion: 2 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + linearTexture: 0 + correctGamma: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: .25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 0 + cubemapConvolution: 0 + cubemapConvolutionSteps: 8 + cubemapConvolutionExponent: 1.5 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 256 + textureSettings: + filterMode: 1 + aniso: 16 + mipBias: -1 + wrapMode: 1 + nPOTScale: 0 + lightmap: 0 + rGBM: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: .5, y: .5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaIsTransparency: 1 + textureType: 8 + buildTargetSettings: [] + spriteSheet: + sprites: [] + spritePackingTag: + userData: + assetBundleName: diff --git a/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonArrowOverSprite.png b/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonArrowOverSprite.png new file mode 100644 index 0000000000000000000000000000000000000000..e8d1848506019b900b22339e49bcf0e3c1d31bc3 GIT binary patch literal 8229 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 literal 0 HcmV?d00001 diff --git a/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonArrowOverSprite.png.meta b/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonArrowOverSprite.png.meta new file mode 100644 index 0000000..8af76bc --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonArrowOverSprite.png.meta @@ -0,0 +1,52 @@ +fileFormatVersion: 2 +guid: 49b611e658efbf443b686a4036f74fe3 +TextureImporter: + fileIDToRecycleName: {} + serializedVersion: 2 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + linearTexture: 0 + correctGamma: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: .25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 0 + cubemapConvolution: 0 + cubemapConvolutionSteps: 8 + cubemapConvolutionExponent: 1.5 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 256 + textureSettings: + filterMode: 1 + aniso: 16 + mipBias: -1 + wrapMode: 1 + nPOTScale: 0 + lightmap: 0 + rGBM: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: .5, y: .5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaIsTransparency: 1 + textureType: 8 + buildTargetSettings: [] + spriteSheet: + sprites: [] + spritePackingTag: + userData: + assetBundleName: diff --git a/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonArrowUpSprite.png b/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonArrowUpSprite.png new file mode 100644 index 0000000000000000000000000000000000000000..11b1e8c90416382b12472be09e9b90d0cc1653a8 GIT binary patch literal 8376 zcmaJ{cRbbq{{Nig$T8xWQR0{p#~#Nxh+}0WBtqt~!og8S;*c33N;Z+bC1htLWzR%5 ziR@#q-|2h5-}}3N+{Zote8&4Vp0D|Ne?G4hp{J{Uk>WB1000*?HPHG103x1(0O$qc z!OSDyj(A}4R5kWAz}k6wS$SZ98@5<$3|!O2${wSSv9k4X@50Cf07wwiyM&}0OS?D-K=aLU_9a07<)%o6z4{LGbh~97R7m2Qb$C`O$FoNsNw5@ zG4RzjwDEmlBV)^{r~sGumL&>s!FXE1yUBoLCr-P@bo2;;~mzS52m$(qt!(LcaMn*_bl!ClTqtOmK12(fPMvSKQx@BDzf2+saK?R7gbF z#pRD(e^KK+^)des@?eiAHe}SA=XGZDldGlGf6aQep^>jqa*`77#hzPpaDwpcG5|DQ1Z%W5>n z!|@TuR?P$J0{_d;vX1`+gPpB}jjffm48q1nQUYNuA|ZmXvbB{)Sc^)FOJGFBr9`d7 zIsfLj{SW{BD^H1ch<3RB14mZI4k?Ne6Bj{9*@;UcL`5+~kv7s22&A;Fh?R{9MiL_` z%_&TTDEudN{v(zCxkb#+Kd1jL4C2MVOAF<S1j*;bd37e78oB44 zk&#X>Ix$#oBE&Ww0){4vjN`Sf)ZCBStA*})&ymo+p(w2uDyr5$D(Ulgdd*NSzcrxj z(qVMe#SKzURE54%f(9}KDrqP$z2Kf!*tj3u%GLIGf6A-x$@%oXQag=060+|JnMzGa?oJC=U~0Qv1(aY5^LBlTGso<3z)pADvguR#uFdM# z(bMX;G22@|7X5@TpdFn%$D=E9Dv^eq-Y}rQ+?Hl`6{zNLu5fDIx1&rb=HWcNRT$(J z>>_MR5vfcXL#9C!KP4TS?|FE_0P6=GeooH%Ds zM-C+m;m-PNa7txHHaaMNB(90n;@UgZ7pdr%T{3RcS<uGM&3{`1A}5Ef2C~i zidO&p_UTVD~y`OiMeYI7?C z-3bS%gCp>Sr+(8%l2h0NTBFJ*-O6qk*73l>^Ma}!R$*Gua0Po&zA!mB zpvK)~>@A++B4jFnY-g~oK-ignQjR6@QUVAXCu9e*89kpynW;s2a-4Om_f4RKv(!*L zQ-rY5d}G%h!{Nrh@2_-h^?PSZ6KHhHRTyxK&O)&HN#vRdchj(PdFa|zrl5E?GDxOE z#I%miNr8r+7Wqe~JJ8-%BCS^h``U^a-MHqsEM;++vE6UCi@$zXJ3|4;%#zWBj5Btq zQ(cVvf>dk%f_Nh z4mIX@z*ugJWMut}v)ayk{i6#*W#b!a%0docRLg(M~It9|5!+@}N0{qhfTcc#@dlzymp{ef*0poo$Ak08;K_+N{ z>^^M6H}s`_SDbMf*^JvW>>+!_DXdSpKeq4N{e>wdwoqV6$G^h;CuOye_x(WXRQt!@ zDXv5nOGDg{0fo`yu_sExb+zfDizaQb7VZdPyS?dai^mFp8V6Hc&+GRJZzMwjYWpiq zXYnEfWPVSPYs)N5f!a{~Ru_BcnDF@bc^Qbp0_ViMAUI5v%+hRIv3JZ|!`~A8y*^!a zG3jNr5_!A@!ve!%dh*OT3GbVT)g;4ooq||%5dQQ zwdTY%i;x8}CdR-!E8^53xA+rlCVjt^HfP21>wR_U?u#a2z+|BD!qbhDmX&V9jE4r6 z(S7(YbYF73rSR+=OcaQn5ewJ!hrk!!XYXwnkAi{8=g7x1{7iwur+0yuh(_zX>{5F` zz}rNZMB!?>%MRvK_ly+P z5pQS2`x<;^DjFMD_(TPISrSw9;slULv@4w)@HsA@QUPwaUYR}yZAN(yexPddS0N^( zv_;3|pRjgXAcmGyb>5rLO+TFj-^TC1(W&7NH1M{+(z>bZsLPe+>PuaB_MM)dRhzuT z^ma`+)M<$OMA6rU6vOB#q?oaXG0#p@Rdq|)4Fz-NF{K0$lj70BDtT*r25&e|ytwS6 z%nZW1=IKQBo0*n63&_t>i@bm|8Lh9kGTsb-xrrRO99{-~LR5d_D+itp45wD{rrO$$ zCR0&a?noCU7;4ivjZKOp5K9Zweo|>h={Iv8ei)lIJT&P8i;OpbXWVobR@K_Oa9|ng z4TW!!cAq-*-|4yJ>Y;$HpO)Z!LZz3Q{Uz0jyH2nKm2H%pGq{(a6EL=i| zgbj7lcMde@UY&LGiMWl^p|AP{LZ%M*>DWXn`CaZM`S`JFw@bYMM`<&8_l~&^uEseV zGi@HUvxxr9@VmDW@BEGcFmWEDerC_AP-*$!(6fX$z7~l~kBBDHa0f}qnzkIX;oHWa zm*sWfLTV*a&)0@hm`*IqZ=J1A4(cawFRICMJaT zPiWbI`3qpKOPoH(-j%nMir89AiAEpzjP>Sf_}`c|Dp`(y(UxxlDD$&`ruM+{mw=p> zYr5OJv5u!li7WnUkJixwb7Wj1+gruSkrya|ffVoK$De}3nTEx`_=#^C`0i(Q(Cn(> z7gk9d9E*ufmL?YY4d&fWZ!Vj(H+7#)0)KyFl<`JfWZrP9L@}8NJ2s#%!sSVG!3K7A zQ{6#rLJIoQtPy`mEPyutqf)7ZNt~~0(qmAxF&|+z5#lShtpL$tb9QoFnIcK-8D&1( ziwbLP%~wr4q*0@wA1O@8OWy=>nyBAg{$@!wy1})TM zT9r98!$5%#J$1zoblT%119X@MX)!Ts@s+hXQ{rLwt;TUTN>j z<~wl|$+G=+)D@rKs5+IN_wJqJ;8B^|N-UOElTGK5sq2%UKq%+oleU3Mv7=v0h?jTo z*+uLTqM~z0veoB?Ii~3{mpmK80F_zs>59h8Si1`7OOu5XnYSvB@9k>HgI7)AfLH~u zTo{wHR_;pjWv!~85s7Ssyjo+(D1o@~pksyv9H!??o4-}9-@liO5+`dPEVHTODsQri zt>@%e_XVs`*QleU$+0=PFXsDif35m?S7qMuQP?AB@m6r*2lG6DDzHp@Z%N)Wu}MDO zE}}ZzAZ$vDS+ftV&QbnJ{H+2QADB#@RQ;HJt=YSa&c%_HRXgCaVklj*q>ANpo@(Oy z&KsTZeBP7!l8IlQy3st}>BnnDWlSK}Z6e<#Vw>Jm66^P7edhW*P1;CD|LqZ@Izjh4 zvlG9V2ZGMTTqPbl4nsdmhE6#}ProCB?|Ec3#Ye~(-@Dlt@IGYwYjK5MKDNk+(Dm8M zn9r8#BazAgIQpo*WRLR)H8$`>e8C!;WTCj^ys{X#kPkn@k4AU_=5wvql_C>@?>04m z3=6LF}#Ek>5r;*ff=7JQ-R8vh1rnkl-_&Ut>ypGghuuL)bIsQ!M-@y7OJHh zM{~8-Z=7z8{NGJT2WGYwp^rN)Wdo+p=y31rl5<^ja^HRUkl=9ZEAMQTQ>*a`V^AT% zcMl8)nC1*sNp&U~UR6GOh8Rc}qNOGLs)YzLh-m=js$aps5khZRQfl<9LL{kKBV2wY zr)G!F4s*CT{?r9T&T61@-zt1eKxJWi0o` z+slzv_C{u`D8>+*>k?Txa-i@~i{g%rK1@H^F^zE+Vs2-qtlZ34AWIaoNzcT3o^bYP z&Qz-^Ct!8d_QAyE8@uTmUSRy$D^;JfRg$Vxzfhj$HEuTe3)m^fHM30}E+V;uqq`&UR^ zYgc}wW6D?m7QOOFo;jqq@HM)Y9+)BfEqFaQDWyhVQ#Gf`#bKJY1O0yP5vavlK+(!Y zSEw<$Dy@*)oNt(VB)E~MI}ON`FJiAanZq3ImZJ2h>XE+kyv#WQjc^7PK&e?rD=&wP zTGMBvQIx9R4+@;blB&lH9LgUyQK5saQ$!$ucMq9+MX5_o@o-hw~@rLAZw(7>GHdy``=`u%SjBzw@i{wyMP?CXVoQgHR4UyLh>~%{?*R zz*g>(DxBcz^(iA+D$w=}_3DrmU$_E`+_QUHW^Uq#t*Vegx$Q}ECB_r$C#*5;^}X}) z)f>L^7fxl?1i`f*;$dbj& zn+aQ#Y0JEpWR5%R`tg`Ora~dixAh?+LEbx_dsa?CnRcZyDA@h?U zkd-PYSMKcQXc6AM-zQ4_2PmXdhh4s-Ea`tXXU$;U}mU?~k3X(SXWf#I4FuX0=NWwllO!!gui-Ib>KJ9DCvXbLWO{M?bMa zyv24_6q!iaj4412Ee4(F@$Z^-8OK>pNtI`Gkum zJ6SqgF^X+bR@T(6ooV`YwR3h`4&ROyTD?dL1T!tUKFhT;gyK##in^lHqq3;jJG;A( zR@!zGziwD4<4=S&(SGhm=PxF0{V8BEpH|;!r!hWF_>efdx_uQCcQp!G^@6!Rl>qJDc`^&lp$GfkZuI5#~bNp0_;#+qVRA1o& z9?xFGiS3>l5k7Hk4c5%xb0^oirJWTitrt3Ixi_i~=tIMT6QgH!QU>Ql$r%I>qnh)7 zDcV1vdt#s;lzI8LuVl?C45-&JG?NDclEQ?ZUmkeoPR=l3d`3Sx{r!E4LUZVxfx-+v zdE((70C_wkjDzb>$v7b&Mn=7CLS(QiC~xFusOvp>I*}R*B&Oz&%sZg-q6cei9;;pG zxp9ZR00QtB`*pAWsEb4FaS&66SNgRb_r|BF=8b&EMBtmtheWbXgrYNxPBWX7;nAao zgoHSh`<23@1OJnZiC8wgCH=|LmASSy$F6S>3UZ3Lx~s27MkKIWbZdgw)%2cxMd3b3 zfetAA#n~!8P0RR8s8&Ef_sZ4p^;-~M7VaB?U@E}xev#O{=RwQZlcku5XK_u4qUiL@ z>D(Nyd|u{|imT4GL>SgdMw}=1tdRjCi5IFIxt_@F`R!lrkx2}~CqG3?zP>U^0&~Wn zN6p%&$@a&iY>0XEVRg(=ZBTc3OPc2WlAAfWJo=)&=&Cl_5{_V&*C1N*`c*tiG(unC zwtg$OVZO}oH$*juem|%bSH2earoAm&G9|u3lsQl6YKDYB^L@S*FO_$qfRA~b*-a;R z`_>0*W&`&8bp*uA;E79Fy^|#|K(T!rr%+lVt4{`DvElq|P1ARtzycXEds*;dHHRo& z)$a#1V5N<4-{aOvMEqlW|L3aNytdiN_4oGy5vqRjiXm)m`;{j`3ybkjCaAj)w7#EW z!+}5BwqJvZqWh|PRc{5(D833Thae`F(WDA=NwE(MJAVhXL6rEp%jx__5)#9i^ryTe zo3|{qZssBmNugOXCcjD#!la47J2#7}s~iW>UyjdCn@+1v1~HKShGDt8tHQvel*FYU zplK&{F7nmm5>(pFW_h2>AH{{`hRsHdfqu&V)R|16U|pI=JU)H8o;~p0=ZR^0&_ODK zQeiZ-^2#=Aun)17q)#Vn`yd;Jx@`+&3ge0PW>sxkADCQu#*=hIxFG*+QpCivu}on{ zN@@pjBR@(46SNTsDQmojP@E?08ygs?G;2)VxU#(s6Tul2F7f^n03MlATcmB)?EmiV zefX+JOq`ufp34 zPae>jcSJP{V$Va;&#d}LTU_Zo8;S$Z8&&*_jyWZJB=!wHwZ*-z<{p^U{|&qjmUI%j zEC^6+WL}y<^$v?0-d;S;u2h9v+?vvSfYYP8msN8vH+2HufV8;Eb&ZXLKlKXFu2e*A zmGo`cnB1f|<(LP9IcbVUSP3tH$rVyV4yLKC39e4_6 z(6*6-(QIfC-xD%;cv@h(KPgL ztEC=!KWCkso``;3)E^NaE-(4>Gb`A#2D7s(9Ui$~T$`%dS2Df)-7j1E?z3l(E1^B5 zGEg{U^KD!&H#oCA7{OSvl`dR~bC^6Y$^LPvX=rT&nd%e5yEXm77+JN6M(aQ{Tr(30JLZ;nhXGH}HH8&LhT*xTy5FRuD z&}k1Up1x(7%Rz9ZNaonHE#I`Mf0WDi;>E+WbL+g>t_Ncd21h!FBVCGIp$jkeB8ugJ{ zW{iG;Jc*rMWhSEODL&I0c`1zX42pJ<>XU?7;^r`|E>+W0hQ7C4;aHy4jb>%C^gp&f4L~Ed;)AfQ@wZXd=0YVzjJe+6qqp?vlx4w z@2`S4RS7KhV?2JfbqBy7aoL^P9IgfE##oe|!)8YHlq6<&+UfBZw&L!0VHaRCxzO-r zPzFaXFdW%8oXYV4if@f{{z+>JI4w3L3)mw5Jkgjw<&BrKUIg}Ee(*qdF-DT(IlR&KdcX z;^4|isl7!PX!{m1yfa!&O;JBV2Q0!xeF}#)03T<0R5=cIKodD^pAH9VU=MrUTcG8# zUp2Fn&+g6CmjUZ;$fpNK{1flIb@8Mo+0n;O{3#-vBtebzpxZZ=*`4FJ8URX;LX2Wt zmxWbm%GRlU%i}&W!&=rHBo)BjoY4)M_tm9$@m>N!jC0 zP%^0B7iR?X^1K8i6-Pgx?BQVoHb?o3OCjyK?bmYuXok`rGP2WC(to zwr@Go?qK*Xd-py|xe#mbxZi2E#2o1fX+`xp=3Vh-5#>%PNqz=2+&tL&qaMAyR||xp z$oxzg^TFx^sS<4(@J&1ntmSG1e_<&@A zO_L5;y&QFIB#bPwWnVW=lg;BdWlqCluWM%+P=N} z=j*g?Aa%HkT)I@9r}PrAqR0&k{B;W%O6AaJUuypq+=cDoX!+3?Sm0-V6ZwkSI}Dk# z&y(G|(gss9rG=@-N49j#%UocC+a2azcE2ec3LH_9qh~@Z8heZaf3gh6Q|ujKiI8GbDDUavMkP+m}6EdkWY5WhX(Peidle!F7uGUd#j1 zu*4w2>JI0x$SvFqahO7@4Er+1&z>Z_} z9(eV@S-?C3Tay+@gk(ntcCY$?95qX|m59(w*A_stlsAf^8^SaZ7#>k@WiA{daq zku$Z|?^WE~^$YTT8tHq;;_T?u%Fb0WHsxA`-h=~67VZwE&jQOIIa}vs8ArlO&R7f1 z47yQh;=r%FM?}T5@9S_zhrf>~Q{QcRvl9d7jK7Suk+& d`uvh5a0wUD=t&6q{O7*}nyR|!Qf14a{{v-8Sd9Px literal 0 HcmV?d00001 diff --git a/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonArrowUpSprite.png.meta b/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonArrowUpSprite.png.meta new file mode 100644 index 0000000..05148c9 --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonArrowUpSprite.png.meta @@ -0,0 +1,52 @@ +fileFormatVersion: 2 +guid: 4db017495c69e8140a56a0e2b669e3f8 +TextureImporter: + fileIDToRecycleName: {} + serializedVersion: 2 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + linearTexture: 0 + correctGamma: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: .25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 0 + cubemapConvolution: 0 + cubemapConvolutionSteps: 8 + cubemapConvolutionExponent: 1.5 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 256 + textureSettings: + filterMode: 1 + aniso: 16 + mipBias: -1 + wrapMode: 1 + nPOTScale: 0 + lightmap: 0 + rGBM: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: .5, y: .5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaIsTransparency: 1 + textureType: 8 + buildTargetSettings: [] + spriteSheet: + sprites: [] + spritePackingTag: + userData: + assetBundleName: diff --git a/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonBrakeOverSprite.png b/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonBrakeOverSprite.png new file mode 100644 index 0000000000000000000000000000000000000000..684d53a48ff0cf6c7ab5c793b85b1e40da7475d6 GIT binary patch literal 5818 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 R8%hAWa25{c_f35h{|B-o8KwXL literal 0 HcmV?d00001 diff --git a/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonBrakeOverSprite.png.meta b/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonBrakeOverSprite.png.meta new file mode 100644 index 0000000..ae89df0 --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonBrakeOverSprite.png.meta @@ -0,0 +1,52 @@ +fileFormatVersion: 2 +guid: 5b1a64ea234fb2343b8d0686c51280de +TextureImporter: + fileIDToRecycleName: {} + serializedVersion: 2 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + linearTexture: 0 + correctGamma: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: .25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 0 + cubemapConvolution: 0 + cubemapConvolutionSteps: 8 + cubemapConvolutionExponent: 1.5 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 256 + textureSettings: + filterMode: 1 + aniso: 16 + mipBias: -1 + wrapMode: 1 + nPOTScale: 0 + lightmap: 0 + rGBM: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: .5, y: .5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaIsTransparency: 1 + textureType: 8 + buildTargetSettings: [] + spriteSheet: + sprites: [] + spritePackingTag: + userData: + assetBundleName: diff --git a/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonBrakeUpSprite.png b/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonBrakeUpSprite.png new file mode 100644 index 0000000000000000000000000000000000000000..578c00ceb2c2ee4070c96ea58fbd16ad1b3e4120 GIT binary patch literal 5873 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 literal 0 HcmV?d00001 diff --git a/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonCameraCycleUpSprite.png.meta b/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonCameraCycleUpSprite.png.meta new file mode 100644 index 0000000..3394885 --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonCameraCycleUpSprite.png.meta @@ -0,0 +1,52 @@ +fileFormatVersion: 2 +guid: a3983c59ebf804b4abba687bd7c9e92f +TextureImporter: + fileIDToRecycleName: {} + serializedVersion: 2 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + linearTexture: 0 + correctGamma: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: .25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 0 + cubemapConvolution: 0 + cubemapConvolutionSteps: 8 + cubemapConvolutionExponent: 1.5 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 256 + textureSettings: + filterMode: 1 + aniso: 16 + mipBias: -1 + wrapMode: 1 + nPOTScale: 0 + lightmap: 0 + rGBM: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: .5, y: .5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaIsTransparency: 1 + textureType: 8 + buildTargetSettings: [] + spriteSheet: + sprites: [] + spritePackingTag: + userData: + assetBundleName: diff --git a/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonResetSprite.png b/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonResetSprite.png new file mode 100644 index 0000000000000000000000000000000000000000..c5d88d99eba43b8a61f5fbfea115c9a8d2bb39e0 GIT binary patch literal 8412 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 literal 0 HcmV?d00001 diff --git a/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonThumbstickOverSprite.png.meta b/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonThumbstickOverSprite.png.meta new file mode 100644 index 0000000..11b1a1d --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonThumbstickOverSprite.png.meta @@ -0,0 +1,52 @@ +fileFormatVersion: 2 +guid: 5485e2f56028a3c4cb54f5caa167377e +TextureImporter: + fileIDToRecycleName: {} + serializedVersion: 2 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + linearTexture: 0 + correctGamma: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: .25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 0 + cubemapConvolution: 0 + cubemapConvolutionSteps: 8 + cubemapConvolutionExponent: 1.5 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 256 + textureSettings: + filterMode: 1 + aniso: 16 + mipBias: -1 + wrapMode: 1 + nPOTScale: 0 + lightmap: 0 + rGBM: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: .5, y: .5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaIsTransparency: 1 + textureType: 8 + buildTargetSettings: [] + spriteSheet: + sprites: [] + spritePackingTag: + userData: + assetBundleName: diff --git a/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonThumbstickUpSprite.png b/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonThumbstickUpSprite.png new file mode 100644 index 0000000000000000000000000000000000000000..0a4df1dd80fe8588d5fc5c90a979dbcdcaee6ef7 GIT binary patch literal 8278 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 literal 0 HcmV?d00001 diff --git a/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonTimescaleFullUpSprite.png.meta b/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonTimescaleFullUpSprite.png.meta new file mode 100644 index 0000000..efb87d8 --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonTimescaleFullUpSprite.png.meta @@ -0,0 +1,52 @@ +fileFormatVersion: 2 +guid: 0c6271a290ef75b4c97d58746c86c5b8 +TextureImporter: + fileIDToRecycleName: {} + serializedVersion: 2 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + linearTexture: 0 + correctGamma: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: .25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 0 + cubemapConvolution: 0 + cubemapConvolutionSteps: 8 + cubemapConvolutionExponent: 1.5 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 256 + textureSettings: + filterMode: 1 + aniso: 16 + mipBias: -1 + wrapMode: 1 + nPOTScale: 0 + lightmap: 0 + rGBM: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: .5, y: .5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaIsTransparency: 1 + textureType: 8 + buildTargetSettings: [] + spriteSheet: + sprites: [] + spritePackingTag: + userData: + assetBundleName: diff --git a/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonTimescaleSlowUpSprite.png b/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonTimescaleSlowUpSprite.png new file mode 100644 index 0000000000000000000000000000000000000000..e14ec79187e517cac99c31e0f37ad4cb2f1eb1bd GIT binary patch literal 9144 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 literal 0 HcmV?d00001 diff --git a/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonTimescaleSlowUpSprite.png.meta b/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonTimescaleSlowUpSprite.png.meta new file mode 100644 index 0000000..2296fcc --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Sprites/ButtonTimescaleSlowUpSprite.png.meta @@ -0,0 +1,52 @@ +fileFormatVersion: 2 +guid: 9d7c6e4896067aa4fa512a00f692ac1c +TextureImporter: + fileIDToRecycleName: {} + serializedVersion: 2 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + linearTexture: 0 + correctGamma: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: .25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 0 + cubemapConvolution: 0 + cubemapConvolutionSteps: 8 + cubemapConvolutionExponent: 1.5 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 256 + textureSettings: + filterMode: 1 + aniso: 16 + mipBias: -1 + wrapMode: 1 + nPOTScale: 0 + lightmap: 0 + rGBM: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: .5, y: .5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaIsTransparency: 1 + textureType: 8 + buildTargetSettings: [] + spriteSheet: + sprites: [] + spritePackingTag: + userData: + assetBundleName: diff --git a/Assets/Standard Assets/CrossPlatformInput/Sprites/SliderBackgroundSprite.png b/Assets/Standard Assets/CrossPlatformInput/Sprites/SliderBackgroundSprite.png new file mode 100644 index 0000000000000000000000000000000000000000..64db848dfc16fd000f9d1f7db5d149d06753d83a GIT binary patch literal 2309 zcmdT_Yfuwc6uzi{MJU#S9gCyeSX!)I_K}2SBS9d65*4sO#i@vHc5iTTlMR~<1hkl{ z)7B0?rd1oORh(9Hc03ghiX3PR0Kn?>y_aOO|CoZ?huRc=BC@EX8NF}rgK@uyNA!4%9 z1uzTJY-!P67!N?VATDQ=G%9_#juEV}v=0;Ovf5=f0P#aycAA+0CBzI1IGbK^rDm%F z;aI&QSDlWh+YN9$msTdi?6Qm;rfdR3v5FxHNW4oY3s|8L>(K4GB}|^G*m31j?++@w-HiaW4IP0aTKR?YNZY*k+w%6 zXA@bAF3XtOmP=mg72_qzuEVgBl9JdGWvn0;U<5@`7*1j&iOLAnQEHQD7ix11Xjd>o z2P1NJi4$yyPmwkYPD!tjojy8()t;W-A#8KB6-q7{=A!Kw5sPD1tM6QXv_r~*k8L~? z?Z_#$Lo5qA1gFTz_hA{(PL^xed7^e8%XHxEPLcPYlVvc-Lo2jN4%rmpcO*O4Ws019 zfi!Ov7^m;6$*5O2ogAxE8%bPCkt#}=oN7!a2#Qc8Y1I^NR1#`jYtZ_V`2?OM$~&>F z%#9$d#jju-szA;-!@_}_?rWX$>nUUP~sTqyUjMgP~?gsn<@%c#D5(+?ins97^fj{ zHI8cIG-lKcRSZf~7Kq}E*`lSCP(_$=MH`=eqIB&QAW6o|swfg=DHfs@l?tMik~X6n zHKn9*N=rhLRba9ymeEO^#KX3JP2#1ti06DgqvL5?fm|Gvg%;Y$ONxYSo@1eyEKgs7 zC^&6wwq4{T7?1gSljmfzKYFBtJ)!R3exjM%k@AH2!j93D7ahY5ZSq8m^5_n$Dr%5_ z5$2kVNja{TOGk;coT9$luGOf%=-JY;Gb!5s%bB#a<)$4+lOhW3Mf|Gu+XsG`H#I1@ zZXQ1r@0Hg#@ZI1dN2n%yl?lCVW*ExTpWJ?li?}l*IVx`DlJ%_U!Cg~FKpRy z*t=`^&Wc^3b>2Gf`_V^gPI;z!E_-fz4tjPRuAN%AAQv3;{6SnX=YKOfST{`cOx``I z;_keM54Lv2d##PgUORTrj0VqL&krN3y(d1ZzSraYVDZjtV++q88Z+LxtNdtWVrKn0 z4>xhzkfzso;8}7in-n%_YS3R0R8)x$1GgoeV`b&4{9RRJ zBHgFA47uC7GhpzPpIWN(?%&^Mx`A$s`nZ3Hfaou_<^^2Z9oiBeaV)=n#I2CZvsVpV z=(2)`Bsf*vWhuERY}@h=5?54Mx?cS)p)zM*_rbnK&Mwo%t;h9u;u43K@}b zFt`|;i3SL81JDI@?=0A#6dyh=A$se{o4FZ7Zk^s6v-nO#aZuw6p3JRGzjI!uwU_c@ zc5|O|$5C*nUuQzklk90smvMnlZ*^++dBFc!;NMC9XOa>58zN61_}WuVJ!oEh*Xx{F zxH&)bVb$osIalu21cKvTK{wD7B>MizJAzMpy0gD`XHgA7C-%sVHFHfs^Xl-JxnJ=h z?o!vGa6pv%%B_HXUV0=#6LgZoH#IV(M>tbtS_#2KS-o6 z*M-(CRE-UI9rLX1AG2=L?vuiciDuOD>&(j8y_=Nzn=bUOTr$W)S$^J9iH|fdWA?4V zYA>t?dk57odkI_@D1B2wL#zGh)DJ(KIBmY?cI2#=-L<;(#;e0`ZE0OL+HDy?3?tNk zPdn0FF@M&f!ka@c$M@Bi1~)QqFuxBfpWa>iuBHwG#A~h7 z9}t_1!*BnkJzFVWyD@n0_OUal+J?a!hXMDLJA<}?_e$r4uylevH2|1WGK?#e$4&VM D(of}V literal 0 HcmV?d00001 diff --git a/Assets/Standard Assets/CrossPlatformInput/Sprites/SliderBackgroundSprite.png.meta b/Assets/Standard Assets/CrossPlatformInput/Sprites/SliderBackgroundSprite.png.meta new file mode 100644 index 0000000..b9d74d9 --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Sprites/SliderBackgroundSprite.png.meta @@ -0,0 +1,53 @@ +fileFormatVersion: 2 +guid: ea5873cfd9158664f89459f0c9e1d853 +TextureImporter: + fileIDToRecycleName: + 21300000: SliderBackground + serializedVersion: 2 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + linearTexture: 0 + correctGamma: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: .25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 0 + cubemapConvolution: 0 + cubemapConvolutionSteps: 8 + cubemapConvolutionExponent: 1.5 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 256 + textureSettings: + filterMode: 1 + aniso: 16 + mipBias: -1 + wrapMode: 1 + nPOTScale: 0 + lightmap: 0 + rGBM: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: .5, y: .5} + spriteBorder: {x: 31, y: 15, z: 31, w: 15} + spritePixelsToUnits: 100 + alphaIsTransparency: 1 + textureType: 8 + buildTargetSettings: [] + spriteSheet: + sprites: [] + spritePackingTag: + userData: + assetBundleName: diff --git a/Assets/Standard Assets/CrossPlatformInput/Sprites/SliderHandleSprite.png b/Assets/Standard Assets/CrossPlatformInput/Sprites/SliderHandleSprite.png new file mode 100644 index 0000000000000000000000000000000000000000..0dd9c199f361f30893a4b7aaf0d50d287fc22937 GIT binary patch literal 1671 zcmb_dZ%hIYSOZ|`wlj6yXWrW z9bnCc*Z>tto0_6cu^+0`1X4@?1RHy~Yi(=VC^cznQ&a-fLJgp((bg!^cfe6U7(bZq zhuwMa&HQHOH#2WriVI&#Te4~i03fYkld}YX$B+oZi<8m&(wDvQgACo}(YGl+J;qBtgrcD&5&rrZGstdcg>t8iO=VX07GEwCcKaRZhU;t+rz>O2N$4u3+wPlhl zDnV^syiBuMJE1D=gkrv`_^}zDIq3m0&{oj~d5R}&CXpv-6T=WT9+66>M~s=m z=j_G%_?zuhw1e^pB*Nhs-f9wz6ic9#j08S}C`2;eI`_3w zVhiaw3r_)D5H5&(cqBH=`jG34i-3bOGEwR{XOoi+~r~Z=gZiU#?+MT;jWnB z(&DOcexV$D@92W(kFU&VIlJQR;fgE!R;DyW_PWB~wMC0oWsJXBaro~)%0E#1mJKpf zpDx5e7@>m2;8BIxnyK*(@04)I*N*1wYZ~+1@RarR`7?KIIo7jUxOnQ-?{khdjNE=> zAQ-)zjJ7^4Fm#wv4`|at-g5&hvvxiGZ z@0`qvUD%NO`N*j@@aJ@M<*k(Wzvvj>)%Nk#%jV+6xe<~=}iCX)Y!ZBMxQ-1H5NhNi8H~U*dTe}hx+VezrRqmIpbEBXY89GSa;<5 za7UzZY0kWCpUH> zk|s5<<67tPtaG0o$_!uYxZQq}obC+v-Dv}hqR)=1!X$U@>j9^&w|A0=6b{J4?I)(X st{jZ^-3Wm2FGC;29<2!`7v4*yfa_(IJm_o)p+5sCa1}Z~$*XAm7rtC34*&oF literal 0 HcmV?d00001 diff --git a/Assets/Standard Assets/CrossPlatformInput/Sprites/SliderHandleSprite.png.meta b/Assets/Standard Assets/CrossPlatformInput/Sprites/SliderHandleSprite.png.meta new file mode 100644 index 0000000..a323916 --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Sprites/SliderHandleSprite.png.meta @@ -0,0 +1,52 @@ +fileFormatVersion: 2 +guid: 0626b924325d1c34cafa6b22297f4e4f +TextureImporter: + fileIDToRecycleName: {} + serializedVersion: 2 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + linearTexture: 0 + correctGamma: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: .25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 0 + cubemapConvolution: 0 + cubemapConvolutionSteps: 8 + cubemapConvolutionExponent: 1.5 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 256 + textureSettings: + filterMode: 1 + aniso: 16 + mipBias: -1 + wrapMode: 1 + nPOTScale: 0 + lightmap: 0 + rGBM: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: .5, y: .5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaIsTransparency: 1 + textureType: 8 + buildTargetSettings: [] + spriteSheet: + sprites: [] + spritePackingTag: + userData: + assetBundleName: diff --git a/Assets/Standard Assets/CrossPlatformInput/Sprites/TouchpadSprite.png b/Assets/Standard Assets/CrossPlatformInput/Sprites/TouchpadSprite.png new file mode 100644 index 0000000000000000000000000000000000000000..9b86e30d8c798957305f7b45625bab0ff2fd8cc8 GIT binary patch literal 3828 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 literal 0 HcmV?d00001 diff --git a/Assets/Standard Assets/CrossPlatformInput/Sprites/TouchpadSprite.png.meta b/Assets/Standard Assets/CrossPlatformInput/Sprites/TouchpadSprite.png.meta new file mode 100644 index 0000000..fc51dbc --- /dev/null +++ b/Assets/Standard Assets/CrossPlatformInput/Sprites/TouchpadSprite.png.meta @@ -0,0 +1,53 @@ +fileFormatVersion: 2 +guid: e4f1fee3de32377429fd1348fae62b10 +TextureImporter: + fileIDToRecycleName: + 21300000: JumpButton + serializedVersion: 2 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + linearTexture: 0 + correctGamma: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: .25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 0 + cubemapConvolution: 0 + cubemapConvolutionSteps: 8 + cubemapConvolutionExponent: 1.5 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 1024 + textureSettings: + filterMode: 1 + aniso: 16 + mipBias: -1 + wrapMode: 1 + nPOTScale: 0 + lightmap: 0 + rGBM: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: .5, y: .5} + spriteBorder: {x: 65, y: 65, z: 65, w: 65} + spritePixelsToUnits: 100 + alphaIsTransparency: 1 + textureType: 8 + buildTargetSettings: [] + spriteSheet: + sprites: [] + spritePackingTag: + userData: + assetBundleName: diff --git a/Assets/Standard Assets/Editor.meta b/Assets/Standard Assets/Editor.meta new file mode 100644 index 0000000..f37ba4d --- /dev/null +++ b/Assets/Standard Assets/Editor.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 8f7308500f322e644817ccfc3e0a17a5 +folderAsset: yes +timeCreated: 1436977287 +licenseType: Store +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Standard Assets/Editor/CrossPlatformInput.meta b/Assets/Standard Assets/Editor/CrossPlatformInput.meta new file mode 100644 index 0000000..af54611 --- /dev/null +++ b/Assets/Standard Assets/Editor/CrossPlatformInput.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 696c0e7b8c74e1442acbf15c2df9e72d +folderAsset: yes +timeCreated: 1436977288 +licenseType: Store +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Standard Assets/Editor/CrossPlatformInput/CrossPlatformInputInitialize.cs b/Assets/Standard Assets/Editor/CrossPlatformInput/CrossPlatformInputInitialize.cs new file mode 100644 index 0000000..a830a67 --- /dev/null +++ b/Assets/Standard Assets/Editor/CrossPlatformInput/CrossPlatformInputInitialize.cs @@ -0,0 +1,137 @@ +using System; +using System.Collections.Generic; +using UnityEditor; + +namespace UnityStandardAssets.CrossPlatformInput.Inspector +{ + [InitializeOnLoad] + public class CrossPlatformInitialize + { + // Custom compiler defines: + // + // CROSS_PLATFORM_INPUT : denotes that cross platform input package exists, so that other packages can use their CrossPlatformInput functions. + // EDITOR_MOBILE_INPUT : denotes that mobile input should be used in editor, if a mobile build target is selected. (i.e. using Unity Remote app). + // MOBILE_INPUT : denotes that mobile input should be used right now! + + static CrossPlatformInitialize() + { + var defines = GetDefinesList(buildTargetGroups[0]); + if (!defines.Contains("CROSS_PLATFORM_INPUT")) + { + SetEnabled("CROSS_PLATFORM_INPUT", true, false); + SetEnabled("MOBILE_INPUT", true, true); + } + } + + + [MenuItem("Mobile Input/Enable")] + private static void Enable() + { + SetEnabled("MOBILE_INPUT", true, true); + switch (EditorUserBuildSettings.activeBuildTarget) + { + case BuildTarget.Android: + case BuildTarget.iOS: + case BuildTarget.PSM: + case BuildTarget.Tizen: + case BuildTarget.WSAPlayer: + EditorUtility.DisplayDialog("Mobile Input", + "You have enabled Mobile Input. You'll need to use the Unity Remote app on a connected device to control your game in the Editor.", + "OK"); + break; + + default: + EditorUtility.DisplayDialog("Mobile Input", + "You have enabled Mobile Input, but you have a non-mobile build target selected in your build settings. The mobile control rigs won't be active or visible on-screen until you switch the build target to a mobile platform.", + "OK"); + break; + } + } + + + [MenuItem("Mobile Input/Enable", true)] + private static bool EnableValidate() + { + var defines = GetDefinesList(mobileBuildTargetGroups[0]); + return !defines.Contains("MOBILE_INPUT"); + } + + + [MenuItem("Mobile Input/Disable")] + private static void Disable() + { + SetEnabled("MOBILE_INPUT", false, true); + switch (EditorUserBuildSettings.activeBuildTarget) + { + case BuildTarget.Android: + case BuildTarget.iOS: + EditorUtility.DisplayDialog("Mobile Input", + "You have disabled Mobile Input. Mobile control rigs won't be visible, and the Cross Platform Input functions will always return standalone controls.", + "OK"); + break; + } + } + + + [MenuItem("Mobile Input/Disable", true)] + private static bool DisableValidate() + { + var defines = GetDefinesList(mobileBuildTargetGroups[0]); + return defines.Contains("MOBILE_INPUT"); + } + + + private static BuildTargetGroup[] buildTargetGroups = new BuildTargetGroup[] + { + BuildTargetGroup.Standalone, + BuildTargetGroup.Android, + BuildTargetGroup.iOS + }; + + private static BuildTargetGroup[] mobileBuildTargetGroups = new BuildTargetGroup[] + { + BuildTargetGroup.Android, + BuildTargetGroup.iOS, + BuildTargetGroup.PSM, + BuildTargetGroup.Tizen, + BuildTargetGroup.WSA + }; + + + private static void SetEnabled(string defineName, bool enable, bool mobile) + { + //Debug.Log("setting "+defineName+" to "+enable); + foreach (var group in mobile ? mobileBuildTargetGroups : buildTargetGroups) + { + var defines = GetDefinesList(group); + if (enable) + { + if (defines.Contains(defineName)) + { + return; + } + defines.Add(defineName); + } + else + { + if (!defines.Contains(defineName)) + { + return; + } + while (defines.Contains(defineName)) + { + defines.Remove(defineName); + } + } + string definesString = string.Join(";", defines.ToArray()); + PlayerSettings.SetScriptingDefineSymbolsForGroup(group, definesString); + } + } + + + private static List GetDefinesList(BuildTargetGroup group) + { + return new List(PlayerSettings.GetScriptingDefineSymbolsForGroup(group).Split(';')); + } + } +} diff --git a/Assets/Standard Assets/Editor/CrossPlatformInput/CrossPlatformInputInitialize.cs.meta b/Assets/Standard Assets/Editor/CrossPlatformInput/CrossPlatformInputInitialize.cs.meta new file mode 100644 index 0000000..56f7e86 --- /dev/null +++ b/Assets/Standard Assets/Editor/CrossPlatformInput/CrossPlatformInputInitialize.cs.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: db7667203062c644ea1877077e30ebd6 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: diff --git a/ProjectSettings/EditorBuildSettings.asset b/ProjectSettings/EditorBuildSettings.asset index 98b932a..1984102 100644 --- a/ProjectSettings/EditorBuildSettings.asset +++ b/ProjectSettings/EditorBuildSettings.asset @@ -1,8 +1,11 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!1045 &1 -EditorBuildSettings: - m_ObjectHideFlags: 0 - serializedVersion: 2 - m_Scenes: [] - m_configObjects: {} +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1045 &1 +EditorBuildSettings: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Scenes: + - enabled: 1 + path: Assets/Scenes/SampleScene.unity + guid: 5711ab7baf0734b41b7830369dd2b171 + m_configObjects: {} diff --git a/ProjectSettings/GraphicsSettings.asset b/ProjectSettings/GraphicsSettings.asset index 9a5a0bc..5000397 100644 --- a/ProjectSettings/GraphicsSettings.asset +++ b/ProjectSettings/GraphicsSettings.asset @@ -34,7 +34,7 @@ GraphicsSettings: - {fileID: 10783, guid: 0000000000000000f000000000000000, type: 0} - {fileID: 16000, guid: 0000000000000000f000000000000000, type: 0} - {fileID: 17000, guid: 0000000000000000f000000000000000, type: 0} - - {fileID: 16001, guid: 0000000000000000f000000000000000, type: 0} + - {fileID: 16002, guid: 0000000000000000f000000000000000, type: 0} m_PreloadedShaders: [] m_SpritesDefaultMaterial: {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} diff --git a/ProjectSettings/ProjectSettings.asset b/ProjectSettings/ProjectSettings.asset index a06219e..2edde75 100644 --- a/ProjectSettings/ProjectSettings.asset +++ b/ProjectSettings/ProjectSettings.asset @@ -12,7 +12,7 @@ PlayerSettings: targetDevice: 2 useOnDemandResources: 0 accelerometerFrequency: 60 - companyName: DefaultCompany + companyName: SmeltGames productName: MADBombs defaultCursor: {fileID: 0} cursorHotspot: {x: 0, y: 0} @@ -153,6 +153,7 @@ PlayerSettings: androidSupportedAspectRatio: 1 androidMaxAspectRatio: 2.1 applicationIdentifier: + Android: com.SmeltGames Standalone: com.Company.ProductName buildNumber: {} AndroidBundleVersionCode: 1 @@ -259,7 +260,99 @@ PlayerSettings: androidGamepadSupportLevel: 0 resolutionDialogBanner: {fileID: 0} m_BuildTargetIcons: [] - m_BuildTargetPlatformIcons: [] + m_BuildTargetPlatformIcons: + - m_BuildTarget: Android + m_Icons: + - m_Textures: [] + m_Width: 432 + m_Height: 432 + m_Kind: 2 + m_SubKind: + - m_Textures: [] + m_Width: 324 + m_Height: 324 + m_Kind: 2 + m_SubKind: + - m_Textures: [] + m_Width: 216 + m_Height: 216 + m_Kind: 2 + m_SubKind: + - m_Textures: [] + m_Width: 162 + m_Height: 162 + m_Kind: 2 + m_SubKind: + - m_Textures: [] + m_Width: 108 + m_Height: 108 + m_Kind: 2 + m_SubKind: + - m_Textures: [] + m_Width: 81 + m_Height: 81 + m_Kind: 2 + m_SubKind: + - m_Textures: [] + m_Width: 192 + m_Height: 192 + m_Kind: 0 + m_SubKind: + - m_Textures: [] + m_Width: 144 + m_Height: 144 + m_Kind: 0 + m_SubKind: + - m_Textures: [] + m_Width: 96 + m_Height: 96 + m_Kind: 0 + m_SubKind: + - m_Textures: [] + m_Width: 72 + m_Height: 72 + m_Kind: 0 + m_SubKind: + - m_Textures: [] + m_Width: 48 + m_Height: 48 + m_Kind: 0 + m_SubKind: + - m_Textures: [] + m_Width: 36 + m_Height: 36 + m_Kind: 0 + m_SubKind: + - m_Textures: [] + m_Width: 192 + m_Height: 192 + m_Kind: 1 + m_SubKind: + - m_Textures: [] + m_Width: 144 + m_Height: 144 + m_Kind: 1 + m_SubKind: + - m_Textures: [] + m_Width: 96 + m_Height: 96 + m_Kind: 1 + m_SubKind: + - m_Textures: [] + m_Width: 72 + m_Height: 72 + m_Kind: 1 + m_SubKind: + - m_Textures: [] + m_Width: 48 + m_Height: 48 + m_Kind: 1 + m_SubKind: + - m_Textures: [] + m_Width: 36 + m_Height: 36 + m_Kind: 1 + m_SubKind: m_BuildTargetBatching: [] m_BuildTargetGraphicsAPIs: [] m_BuildTargetVRSettings: [] @@ -496,7 +589,11 @@ PlayerSettings: webGLCompressionFormat: 1 webGLLinkerTarget: 1 webGLThreadsSupport: 0 - scriptingDefineSymbols: {} + scriptingDefineSymbols: + 1: CROSS_PLATFORM_INPUT + 4: CROSS_PLATFORM_INPUT;MOBILE_INPUT + 7: CROSS_PLATFORM_INPUT;MOBILE_INPUT + 14: MOBILE_INPUT platformArchitecture: {} scriptingBackend: {} il2cppCompilerConfiguration: {} diff --git a/ProjectSettings/QualitySettings.asset b/ProjectSettings/QualitySettings.asset index f94cd44..70425e2 100644 --- a/ProjectSettings/QualitySettings.asset +++ b/ProjectSettings/QualitySettings.asset @@ -216,4 +216,6 @@ QualitySettings: asyncUploadPersistentBuffer: 1 resolutionScalingFixedDPIFactor: 1 excludedTargetPlatforms: [] - m_PerPlatformDefaultQuality: {} + m_PerPlatformDefaultQuality: + Android: 0 + Standalone: 0 From 6015c44604c9a68efd70ebca685a39092f424a6b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Denis=20Nu=C8=9Biu?= Date: Sun, 30 Jun 2019 17:26:07 +0300 Subject: [PATCH 2/3] Remove joystick and add buttons for mobile movement --- Assets/Prefabs/MobileInputControls.prefab | 734 +++++++++++++++--- Assets/Scenes/SampleScene.unity | 70 ++ Assets/Scripts/src/Player/PlayerController.cs | 22 +- Assets/Scripts/src/Upgrade/TestUpgrade.cs | 2 +- Assets/Sprites/UI.meta | 8 + Assets/Sprites/UI/Controls.meta | 8 + Assets/Sprites/UI/Controls/MoveDown.png | Bin 0 -> 371 bytes Assets/Sprites/UI/Controls/MoveDown.png.meta | 110 +++ Assets/Sprites/UI/Controls/MoveLeft.png | Bin 0 -> 413 bytes Assets/Sprites/UI/Controls/MoveLeft.png.meta | 110 +++ Assets/Sprites/UI/Controls/MoveRight.png | Bin 0 -> 387 bytes Assets/Sprites/UI/Controls/MoveRight.png.meta | 110 +++ Assets/Sprites/UI/Controls/MoveUp.png | Bin 0 -> 361 bytes Assets/Sprites/UI/Controls/MoveUp.png.meta | 110 +++ .../CrossPlatformInputInitialize.cs | 7 +- ProjectSettings/ProjectSettings.asset | 4 +- 16 files changed, 1190 insertions(+), 105 deletions(-) create mode 100644 Assets/Sprites/UI.meta create mode 100644 Assets/Sprites/UI/Controls.meta create mode 100644 Assets/Sprites/UI/Controls/MoveDown.png create mode 100644 Assets/Sprites/UI/Controls/MoveDown.png.meta create mode 100644 Assets/Sprites/UI/Controls/MoveLeft.png create mode 100644 Assets/Sprites/UI/Controls/MoveLeft.png.meta create mode 100644 Assets/Sprites/UI/Controls/MoveRight.png create mode 100644 Assets/Sprites/UI/Controls/MoveRight.png.meta create mode 100644 Assets/Sprites/UI/Controls/MoveUp.png create mode 100644 Assets/Sprites/UI/Controls/MoveUp.png.meta diff --git a/Assets/Prefabs/MobileInputControls.prefab b/Assets/Prefabs/MobileInputControls.prefab index f663540..e3eef22 100644 --- a/Assets/Prefabs/MobileInputControls.prefab +++ b/Assets/Prefabs/MobileInputControls.prefab @@ -1,5 +1,323 @@ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: +--- !u!1 &311312839 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 311312840} + - component: {fileID: 311312842} + - component: {fileID: 311312841} + - component: {fileID: 311312843} + - component: {fileID: 4780998966717423641} + m_Layer: 5 + m_Name: MoveUpButton + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &311312840 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 311312839} + 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: 2219516564235934920} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.163, y: 0.31100002} + m_AnchorMax: {x: 0.163, y: 0.31100002} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 100, y: 100} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &311312842 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 311312839} + m_CullTransparentMesh: 0 +--- !u!114 &311312841 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 311312839} + 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: 21300000, guid: 87cb220e6c20e456a9ecf748e567bb16, type: 3} + 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!114 &311312843 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 311312839} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 85bf3be603548374ca46f521a3aa7fda, type: 3} + m_Name: + m_EditorClassIdentifier: + Name: MoveUp +--- !u!114 &4780998966717423641 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 311312839} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -1862395651, guid: f70555f144d8491a825f0804e09c671c, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Delegates: + - eventID: 2 + callback: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 311312843} + m_MethodName: SetDownState + m_Mode: 1 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: + m_BoolArgument: 0 + m_CallState: 1 + - m_Target: {fileID: 311312842} + m_MethodName: SetAlpha + m_Mode: 4 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0.8 + m_StringArgument: + m_BoolArgument: 0 + m_CallState: 1 + m_TypeName: UnityEngine.EventSystems.EventTrigger+TriggerEvent, UnityEngine.UI, + Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + - eventID: 3 + callback: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 311312843} + m_MethodName: SetUpState + m_Mode: 1 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: + m_BoolArgument: 0 + m_CallState: 1 + - m_Target: {fileID: 311312842} + m_MethodName: SetAlpha + m_Mode: 4 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 1 + m_StringArgument: + m_BoolArgument: 0 + m_CallState: 1 + m_TypeName: UnityEngine.EventSystems.EventTrigger+TriggerEvent, UnityEngine.UI, + Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + delegates: [] +--- !u!1 &1533625511004221075 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2794171661481808020} + - component: {fileID: 4417380224599296100} + - component: {fileID: 7270506208529234008} + - component: {fileID: 1533625511004221076} + - component: {fileID: 1533625511004221077} + m_Layer: 5 + m_Name: MoveRightButton + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &2794171661481808020 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1533625511004221075} + 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: 2219516564235934920} + m_RootOrder: 3 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.2342355, y: 0.2132826} + m_AnchorMax: {x: 0.2342355, y: 0.2132826} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 100, y: 100} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &4417380224599296100 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1533625511004221075} + m_CullTransparentMesh: 0 +--- !u!114 &7270506208529234008 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1533625511004221075} + 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: 21300000, guid: f52b08ca7956240dcb3074cf458fa015, type: 3} + 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!114 &1533625511004221076 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1533625511004221075} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 85bf3be603548374ca46f521a3aa7fda, type: 3} + m_Name: + m_EditorClassIdentifier: + Name: MoveRight +--- !u!114 &1533625511004221077 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1533625511004221075} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -1862395651, guid: f70555f144d8491a825f0804e09c671c, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Delegates: + - eventID: 2 + callback: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 1533625511004221076} + m_MethodName: SetDownState + m_Mode: 1 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: + m_BoolArgument: 0 + m_CallState: 1 + - m_Target: {fileID: 4417380224599296100} + m_MethodName: SetAlpha + m_Mode: 4 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0.8 + m_StringArgument: + m_BoolArgument: 0 + m_CallState: 1 + m_TypeName: UnityEngine.EventSystems.EventTrigger+TriggerEvent, UnityEngine.UI, + Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + - eventID: 3 + callback: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 1533625511004221076} + m_MethodName: SetUpState + m_Mode: 1 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: + m_BoolArgument: 0 + m_CallState: 2 + - m_Target: {fileID: 4417380224599296100} + m_MethodName: SetAlpha + m_Mode: 4 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 1 + m_StringArgument: + m_BoolArgument: 0 + m_CallState: 1 + m_TypeName: UnityEngine.EventSystems.EventTrigger+TriggerEvent, UnityEngine.UI, + Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + delegates: [] --- !u!1 &2219516564249810536 GameObject: m_ObjectHideFlags: 0 @@ -31,7 +349,10 @@ RectTransform: m_LocalScale: {x: 0, y: 0, z: 0} m_Children: - {fileID: 2219516564235934924} - - {fileID: 2219516564235934922} + - {fileID: 311312840} + - {fileID: 1067509750367631514} + - {fileID: 2794171661481808020} + - {fileID: 6194349751570614361} m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} @@ -90,97 +411,6 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 71398ce7fbc3a5b4fa50b50bd54317a7, type: 3} m_Name: m_EditorClassIdentifier: ---- !u!1 &2219516564249810538 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 2219516564235934922} - - component: {fileID: 2219516564236381706} - - component: {fileID: 2219516564256383874} - - component: {fileID: 2219516564256383872} - m_Layer: 5 - m_Name: MobileJoystick - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &2219516564235934922 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 2219516564249810538} - 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: 2219516564235934920} - m_RootOrder: 1 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.16000001, y: 0.2} - m_AnchorMax: {x: 0.16000001, y: 0.2} - m_AnchoredPosition: {x: -40, y: -39.999985} - m_SizeDelta: {x: 80, y: 80} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &2219516564236381706 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 2219516564249810538} - m_CullTransparentMesh: 0 ---- !u!114 &2219516564256383874 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 2219516564249810538} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, 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: 21300000, guid: 9866a92691696b346901281f2b329034, type: 3} - 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!114 &2219516564256383872 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 2219516564249810538} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 00c3c865782347f41b6358d9fba14b48, type: 3} - m_Name: - m_EditorClassIdentifier: - MovementRange: 100 - axesToUse: 0 - horizontalAxisName: Horizontal - verticalAxisName: Vertical --- !u!1 &2219516564249810540 GameObject: m_ObjectHideFlags: 0 @@ -276,7 +506,7 @@ MonoBehaviour: m_PersistentCalls: m_Calls: - m_Target: {fileID: 2219516564256383882} - m_MethodName: + m_MethodName: SetDownState m_Mode: 1 m_Arguments: m_ObjectArgument: {fileID: 0} @@ -448,3 +678,321 @@ MonoBehaviour: m_EffectColor: {r: 0, g: 0, b: 0, a: 0.1254902} m_EffectDistance: {x: 2, y: -2} m_UseGraphicAlpha: 1 +--- !u!1 &7551096532728223647 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 6194349751570614361} + - component: {fileID: 1369717971988284717} + - component: {fileID: 7585056594013102649} + - component: {fileID: 7551096532728223648} + - component: {fileID: 7551096532728223649} + m_Layer: 5 + m_Name: MoveLeftButton + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &6194349751570614361 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7551096532728223647} + 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: 2219516564235934920} + m_RootOrder: 4 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.08852906, y: 0.2132826} + m_AnchorMax: {x: 0.08852906, y: 0.2132826} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 100, y: 100} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &1369717971988284717 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7551096532728223647} + m_CullTransparentMesh: 0 +--- !u!114 &7585056594013102649 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7551096532728223647} + 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: 21300000, guid: 6c6cbf7ac317d400d8634a23257a03f2, type: 3} + 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!114 &7551096532728223648 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7551096532728223647} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -1862395651, guid: f70555f144d8491a825f0804e09c671c, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Delegates: + - eventID: 2 + callback: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 7551096532728223649} + m_MethodName: SetDownState + m_Mode: 1 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: + m_BoolArgument: 0 + m_CallState: 1 + - m_Target: {fileID: 1369717971988284717} + m_MethodName: SetAlpha + m_Mode: 4 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0.8 + m_StringArgument: + m_BoolArgument: 0 + m_CallState: 1 + m_TypeName: UnityEngine.EventSystems.EventTrigger+TriggerEvent, UnityEngine.UI, + Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + - eventID: 3 + callback: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 7551096532728223649} + m_MethodName: SetUpState + m_Mode: 1 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: + m_BoolArgument: 0 + m_CallState: 1 + - m_Target: {fileID: 1369717971988284717} + m_MethodName: SetAlpha + m_Mode: 4 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 1 + m_StringArgument: + m_BoolArgument: 0 + m_CallState: 1 + m_TypeName: UnityEngine.EventSystems.EventTrigger+TriggerEvent, UnityEngine.UI, + Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + delegates: [] +--- !u!114 &7551096532728223649 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7551096532728223647} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 85bf3be603548374ca46f521a3aa7fda, type: 3} + m_Name: + m_EditorClassIdentifier: + Name: MoveLeft +--- !u!1 &8007755715420797612 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1067509750367631514} + - component: {fileID: 3292941157813790793} + - component: {fileID: 4857339152836130214} + - component: {fileID: 8007755715420797613} + - component: {fileID: 8007755715420797614} + m_Layer: 5 + m_Name: MoveDownButton + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1067509750367631514 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8007755715420797612} + 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: 2219516564235934920} + m_RootOrder: 2 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.163, y: 0.12164131} + m_AnchorMax: {x: 0.163, y: 0.12164131} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 100, y: 100} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &3292941157813790793 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8007755715420797612} + m_CullTransparentMesh: 0 +--- !u!114 &4857339152836130214 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8007755715420797612} + 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: 21300000, guid: 2e89ff637e2b14dc4bf0f12f83af972d, type: 3} + 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!114 &8007755715420797613 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8007755715420797612} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 85bf3be603548374ca46f521a3aa7fda, type: 3} + m_Name: + m_EditorClassIdentifier: + Name: MoveDown +--- !u!114 &8007755715420797614 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8007755715420797612} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -1862395651, guid: f70555f144d8491a825f0804e09c671c, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Delegates: + - eventID: 2 + callback: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 8007755715420797613} + m_MethodName: SetDownState + m_Mode: 1 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: + m_BoolArgument: 0 + m_CallState: 1 + - m_Target: {fileID: 3292941157813790793} + m_MethodName: SetAlpha + m_Mode: 4 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0.8 + m_StringArgument: + m_BoolArgument: 0 + m_CallState: 1 + m_TypeName: UnityEngine.EventSystems.EventTrigger+TriggerEvent, UnityEngine.UI, + Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + - eventID: 3 + callback: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 8007755715420797613} + m_MethodName: SetUpState + m_Mode: 1 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: + m_BoolArgument: 0 + m_CallState: 1 + - m_Target: {fileID: 3292941157813790793} + m_MethodName: SetAlpha + m_Mode: 4 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 1 + m_StringArgument: + m_BoolArgument: 0 + m_CallState: 1 + m_TypeName: UnityEngine.EventSystems.EventTrigger+TriggerEvent, UnityEngine.UI, + Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + delegates: [] diff --git a/Assets/Scenes/SampleScene.unity b/Assets/Scenes/SampleScene.unity index 0dc5017..b8d629a 100644 --- a/Assets/Scenes/SampleScene.unity +++ b/Assets/Scenes/SampleScene.unity @@ -762,6 +762,76 @@ PrefabInstance: propertyPath: m_Pivot.y value: 0 objectReference: {fileID: 0} + - target: {fileID: 311312840, guid: 4ca131020414f4b1597dac2e1d292d7f, type: 3} + propertyPath: m_LocalScale.x + value: 1.5 + objectReference: {fileID: 0} + - target: {fileID: 311312840, guid: 4ca131020414f4b1597dac2e1d292d7f, type: 3} + propertyPath: m_LocalScale.y + value: 1.5 + objectReference: {fileID: 0} + - target: {fileID: 311312840, guid: 4ca131020414f4b1597dac2e1d292d7f, type: 3} + propertyPath: m_LocalScale.z + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 311312840, guid: 4ca131020414f4b1597dac2e1d292d7f, type: 3} + propertyPath: m_AnchoredPosition.y + value: 40 + objectReference: {fileID: 0} + - target: {fileID: 311312840, guid: 4ca131020414f4b1597dac2e1d292d7f, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1067509750367631514, guid: 4ca131020414f4b1597dac2e1d292d7f, + type: 3} + propertyPath: m_LocalScale.x + value: 1.5 + objectReference: {fileID: 0} + - target: {fileID: 1067509750367631514, guid: 4ca131020414f4b1597dac2e1d292d7f, + type: 3} + propertyPath: m_LocalScale.y + value: 1.5 + objectReference: {fileID: 0} + - target: {fileID: 2794171661481808020, guid: 4ca131020414f4b1597dac2e1d292d7f, + type: 3} + propertyPath: m_LocalScale.x + value: 1.5 + objectReference: {fileID: 0} + - target: {fileID: 2794171661481808020, guid: 4ca131020414f4b1597dac2e1d292d7f, + type: 3} + propertyPath: m_LocalScale.y + value: 1.5 + objectReference: {fileID: 0} + - target: {fileID: 2794171661481808020, guid: 4ca131020414f4b1597dac2e1d292d7f, + type: 3} + propertyPath: m_AnchoredPosition.x + value: 46 + objectReference: {fileID: 0} + - target: {fileID: 2794171661481808020, guid: 4ca131020414f4b1597dac2e1d292d7f, + type: 3} + propertyPath: m_AnchoredPosition.y + value: 16 + objectReference: {fileID: 0} + - target: {fileID: 6194349751570614361, guid: 4ca131020414f4b1597dac2e1d292d7f, + type: 3} + propertyPath: m_LocalScale.x + value: 1.5 + objectReference: {fileID: 0} + - target: {fileID: 6194349751570614361, guid: 4ca131020414f4b1597dac2e1d292d7f, + type: 3} + propertyPath: m_LocalScale.y + value: 1.5 + objectReference: {fileID: 0} + - target: {fileID: 6194349751570614361, guid: 4ca131020414f4b1597dac2e1d292d7f, + type: 3} + propertyPath: m_AnchoredPosition.x + value: -46 + objectReference: {fileID: 0} + - target: {fileID: 6194349751570614361, guid: 4ca131020414f4b1597dac2e1d292d7f, + type: 3} + propertyPath: m_AnchoredPosition.y + value: 16 + objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 4ca131020414f4b1597dac2e1d292d7f, type: 3} --- !u!1001 &6843575829779162303 diff --git a/Assets/Scripts/src/Player/PlayerController.cs b/Assets/Scripts/src/Player/PlayerController.cs index 21d749a..f86e907 100644 --- a/Assets/Scripts/src/Player/PlayerController.cs +++ b/Assets/Scripts/src/Player/PlayerController.cs @@ -38,12 +38,28 @@ namespace src.Player private void HandleMovement() { -#if UNITY_EDITOR || UNITY_STANDALONE || UNITY_WEBGL +#if UNITY_STANDALONE || UNITY_WEBGL || UNITY_EDITOR var horizontal = Input.GetAxisRaw("Horizontal"); var vertical = Input.GetAxisRaw("Vertical"); #elif UNITY_IOS || UNITY_ANDROID - var horizontal = CrossPlatformInputManager.GetAxisRaw("Horizontal"); - var vertical = CrossPlatformInputManager.GetAxisRaw("Vertical"); + var horizontal = 0; + var vertical = 0; + if (CrossPlatformInputManager.GetButton("MoveUp")) + { + vertical = 1; + } + if (CrossPlatformInputManager.GetButton("MoveDown")) + { + vertical = -1; + } + if (CrossPlatformInputManager.GetButton("MoveRight")) + { + horizontal = 1; + } + if (CrossPlatformInputManager.GetButton("MoveLeft")) + { + horizontal = -1; + } #elif UNITY_PS4 || UNITY_XBOXONE // // Console movement is not supported yet. #endif diff --git a/Assets/Scripts/src/Upgrade/TestUpgrade.cs b/Assets/Scripts/src/Upgrade/TestUpgrade.cs index 07fb37e..92d8d9b 100644 --- a/Assets/Scripts/src/Upgrade/TestUpgrade.cs +++ b/Assets/Scripts/src/Upgrade/TestUpgrade.cs @@ -7,7 +7,7 @@ namespace src.Upgrade { public class TestUpgrade : UpgradeBase { - public void PerformUpgrade() + public new void PerformUpgrade() { DebugHelper.LogWarning("Test upgrade works!"); } diff --git a/Assets/Sprites/UI.meta b/Assets/Sprites/UI.meta new file mode 100644 index 0000000..5760c60 --- /dev/null +++ b/Assets/Sprites/UI.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: ec07b610af29a445ab0462319381d480 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Sprites/UI/Controls.meta b/Assets/Sprites/UI/Controls.meta new file mode 100644 index 0000000..ac7d626 --- /dev/null +++ b/Assets/Sprites/UI/Controls.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 0af55ef52f2cc4abf81f3f91188b26f4 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Sprites/UI/Controls/MoveDown.png b/Assets/Sprites/UI/Controls/MoveDown.png new file mode 100644 index 0000000000000000000000000000000000000000..b85d3bcd98c21c3617ce73412d5ea49a42cdcc9d GIT binary patch literal 371 zcmV-(0gV2MP)Px$ElET{R9J=WmcI>xKp4dzhSmTk#>PTJ)Q$mcWd!2@j9_DDVQ1qA3}74qTL+-j z5I0bX1Dq8EkmEiMOf>S!`}5xK`#3m&MveYm3II6k9g7Cs%~JVfU^YtyfXSdAFW9nyCGC)}fYIrFCDnyxZpyV0QyS-Z0NCViG zsTjJ(oi}tX^_{0k>YB~Fw6d2BRZ_2Ewi7ayR|5DNd49k=Kj8juHEQ$|dI4p2h74%P)Px$S4l)cR9J=GSFvrwFc3TjZUfobAPAB&1E^I-5Hf(5aF^aqM(_ZJMzC59;4*;_ z7;qB=uqAi^x-cFP0+IZupDA*!NIw7W@J9jv9n00)&fngx>-!{C;i_&d0JOWkcil~j z;+t)2k6n*r*9X@c?c!D4*kR#Af5Kw^>a3$C0a4EBTKxjQyO!W;5BQ27`crU!Gy`19 zefk5DCge~aG9N)K!8Ll1fz7~X+uH8uo8@wD_W;uaRo&RH&kxR0F@h4%RO3R@J>X%0 zT%M|P!YBihSw4icd*=oI5~CM*d44dnX@=P}6CHM!-D0^~JF|ZbP7jntZh(s%DSZ%> zfY{(d$^y#+Ws#fv$0xBQ9Eh`kJBpKKL0RM?NkWKzl5ygg!$R~ND2v=^u%YrO4ZVtd zET~LEVj_kOwNV@^iFy{$%oxJ=YnCL8Bw3Oy4M~zz=d0li4brqVeN`oX00000NkvXX Hu0mjf3W~DI literal 0 HcmV?d00001 diff --git a/Assets/Sprites/UI/Controls/MoveLeft.png.meta b/Assets/Sprites/UI/Controls/MoveLeft.png.meta new file mode 100644 index 0000000..bc6bbb7 --- /dev/null +++ b/Assets/Sprites/UI/Controls/MoveLeft.png.meta @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: 6c6cbf7ac317d400d8634a23257a03f2 +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: 0 + 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: 32 + 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: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 306166f138fb4491aa88d3a8fe561fa7 + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Sprites/UI/Controls/MoveRight.png b/Assets/Sprites/UI/Controls/MoveRight.png new file mode 100644 index 0000000000000000000000000000000000000000..66d3c8afd410485f143dda4cf4c75dea6474d779 GIT binary patch literal 387 zcmV-}0et?6P)Px$JxN4CR9J=0mO&1|Koo|5Vk>PWVlBeb0c<&fI6yC9*L^pR-~i$XY#qRoh#P1p z4p0jj84@$^P2Y%r*J#bx@Ab_*;9rwwt14e_s?h5+T{mp^hibb&1Ossb6s1B@D(sGz zAP^1PkNJ92b)xp`I*B99rxWWl+&B%GDM}??5*C1l&>#{3PMx1+Fe6bCwgEE|B_Yw< zEa>>!sAa&6?{`5ardR-;CgN@nv+;oR-(m)Iic;ZvK9OyZ0hZ~aaZ`5|2xa#aH(*Aa zu-RY%a4i7tvm~eiN?M$oshwaZi6a2`+7&DSZu-NKvmMDL;J$qlN2I+#+yHkY5<3g@ z;@tBPx$BS}O-R9J=WmOT!FKoEr=#@3+Tz!)t(fUO?EcmR)JV`pJ!;}JN3@d(&@06H~9 z3map?PdLC@L12YtXP3li_$pX-=e>DD2tZBEFJn6{vmKY|)G$;J9*!sG2O$8U(>5`i zjFoCNR1H*xk^$RslkNe)4??Jpf*e~qdLETgkP_fK=TS+5WFUAwE7_AqIxbQ4Jd{yL zZK8-%O_Xj>5vQ2=`gcI+PN(~rvJ?s*R3R>7B6qP$@iG%y?|>IZ@WM!^#AgCB-N&M< z#oPdZt+i(W&^24ab9pIbZfwV8x9de(m`BD)Z!pAk)KAVQ7oyI~gsDc-Ni;=;sKPOn z(PTCj71E)oc3i&+0O$K7S+q7wZBbq%eZN@mwEiJ$YW|NmV4S4}`-(F600000NkvXX Hu0mjfrA3l7 literal 0 HcmV?d00001 diff --git a/Assets/Sprites/UI/Controls/MoveUp.png.meta b/Assets/Sprites/UI/Controls/MoveUp.png.meta new file mode 100644 index 0000000..22e7631 --- /dev/null +++ b/Assets/Sprites/UI/Controls/MoveUp.png.meta @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: 87cb220e6c20e456a9ecf748e567bb16 +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: 0 + 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: 32 + 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: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: d9ed11d4d395045e18f7e3ee398afe1b + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Standard Assets/Editor/CrossPlatformInput/CrossPlatformInputInitialize.cs b/Assets/Standard Assets/Editor/CrossPlatformInput/CrossPlatformInputInitialize.cs index a830a67..91f1f34 100644 --- a/Assets/Standard Assets/Editor/CrossPlatformInput/CrossPlatformInputInitialize.cs +++ b/Assets/Standard Assets/Editor/CrossPlatformInput/CrossPlatformInputInitialize.cs @@ -1,8 +1,7 @@ -using System; using System.Collections.Generic; using UnityEditor; -namespace UnityStandardAssets.CrossPlatformInput.Inspector +namespace Standard_Assets.Editor.CrossPlatformInput { [InitializeOnLoad] public class CrossPlatformInitialize @@ -32,8 +31,6 @@ namespace UnityStandardAssets.CrossPlatformInput.Inspector { case BuildTarget.Android: case BuildTarget.iOS: - case BuildTarget.PSM: - case BuildTarget.Tizen: case BuildTarget.WSAPlayer: EditorUtility.DisplayDialog("Mobile Input", "You have enabled Mobile Input. You'll need to use the Unity Remote app on a connected device to control your game in the Editor.", @@ -92,8 +89,6 @@ namespace UnityStandardAssets.CrossPlatformInput.Inspector { BuildTargetGroup.Android, BuildTargetGroup.iOS, - BuildTargetGroup.PSM, - BuildTargetGroup.Tizen, BuildTargetGroup.WSA }; diff --git a/ProjectSettings/ProjectSettings.asset b/ProjectSettings/ProjectSettings.asset index 2edde75..fd9ce9d 100644 --- a/ProjectSettings/ProjectSettings.asset +++ b/ProjectSettings/ProjectSettings.asset @@ -55,8 +55,8 @@ PlayerSettings: iosAppInBackgroundBehavior: 0 displayResolutionDialog: 1 iosAllowHTTPDownload: 1 - allowedAutorotateToPortrait: 1 - allowedAutorotateToPortraitUpsideDown: 1 + allowedAutorotateToPortrait: 0 + allowedAutorotateToPortraitUpsideDown: 0 allowedAutorotateToLandscapeRight: 1 allowedAutorotateToLandscapeLeft: 1 useOSAutorotation: 1 From 23fc20c4ad1c768e6be7fea75cbb80f2bda6e21d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Denis=20Nu=C8=9Biu?= Date: Sun, 30 Jun 2019 17:35:39 +0300 Subject: [PATCH 3/3] Listen for escape key and quit the application --- Assets/Scripts/src/Managers/GameManager.cs | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/Assets/Scripts/src/Managers/GameManager.cs b/Assets/Scripts/src/Managers/GameManager.cs index 5f4ba61..22b96b9 100644 --- a/Assets/Scripts/src/Managers/GameManager.cs +++ b/Assets/Scripts/src/Managers/GameManager.cs @@ -44,5 +44,12 @@ namespace src.Managers { _levelManager.InitLevel(); } + + /* Listen for meta keys */ + private void Update(){ + if (Input.GetKeyDown(KeyCode.Escape)) + Application.Quit(); + } + } } \ No newline at end of file