├── .gitignore ├── Assets ├── CursorControl.meta └── CursorControl │ ├── Examples.meta │ ├── Examples │ ├── CursorControlExample.cs │ ├── CursorControlExample.cs.meta │ ├── CursorControlExample.unity │ └── CursorControlExample.unity.meta │ ├── Scripts.meta │ ├── Scripts │ ├── CursorControl.cs │ ├── CursorControl.cs.meta │ ├── CursorControlWindows.cs │ ├── CursorControlWindows.cs.meta │ ├── ICursorControl.cs │ └── ICursorControl.cs.meta │ ├── Tests.meta │ └── Tests │ ├── Unit Tests.meta │ └── Unit Tests │ ├── Editor.meta │ └── Editor │ ├── CursorControlTest.cs │ └── CursorControlTest.cs.meta ├── LICENSE ├── ProjectSettings ├── AudioManager.asset ├── ClusterInputManager.asset ├── DynamicsManager.asset ├── EditorBuildSettings.asset ├── EditorSettings.asset ├── GraphicsSettings.asset ├── InputManager.asset ├── NavMeshAreas.asset ├── NetworkManager.asset ├── Physics2DSettings.asset ├── ProjectSettings.asset ├── ProjectVersion.txt ├── QualitySettings.asset ├── TagManager.asset ├── TimeManager.asset ├── UnityAdsSettings.asset └── UnityConnectSettings.asset └── README.md /.gitignore: -------------------------------------------------------------------------------- 1 | /[Ll]ibrary/ 2 | /[Tt]emp/ 3 | /[Oo]bj/ 4 | /[Bb]uild/ 5 | /[Bb]uilds/ 6 | /Assets/AssetStoreTools* 7 | 8 | # Autogenerated VS/MD solution and project files 9 | ExportedObj/ 10 | *.csproj 11 | *.unityproj 12 | *.sln 13 | *.suo 14 | *.tmp 15 | *.user 16 | *.userprefs 17 | *.pidb 18 | *.booproj 19 | *.svd 20 | 21 | 22 | # Unity3D generated meta files 23 | *.pidb.meta 24 | 25 | # Unity3D Generated File On Crash Reports 26 | sysinfo.txt 27 | 28 | # Builds 29 | *.apk 30 | *.unitypackage 31 | -------------------------------------------------------------------------------- /Assets/CursorControl.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 182c4ad55bc479745938ccea97647d21 3 | folderAsset: yes 4 | timeCreated: 1467226827 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/CursorControl/Examples.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9aac1b7a7133cbe47ba45467ec1425ec 3 | folderAsset: yes 4 | timeCreated: 1467226856 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/CursorControl/Examples/CursorControlExample.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using UnityEngine.UI; 3 | 4 | namespace UnityCursorControl 5 | { 6 | 7 | /// 8 | /// An example script that accompanies the CursorControlExample scene 9 | /// 10 | public class CursorControlExample : MonoBehaviour 11 | { 12 | 13 | [SerializeField] 14 | private Text _globalPosText; 15 | [SerializeField] 16 | private Text _localPosText; 17 | [SerializeField] 18 | private InputField _xPos; 19 | [SerializeField] 20 | private InputField _yPos; 21 | 22 | private int _x, _y; 23 | private Vector2 _pos; 24 | 25 | private void Update() 26 | { 27 | UpdatePositionText(); 28 | SimulateMouseClicks(); 29 | } 30 | 31 | /// 32 | /// Updates the text fields with the current global and local cursor positions 33 | /// 34 | private void UpdatePositionText() 35 | { 36 | _globalPosText.text = "Global Cursor Position: " + CursorControl.GetGlobalCursorPos().ToString(); 37 | _localPosText.text = "Local Cursor Position: " + ((Vector2)Input.mousePosition).ToString(); 38 | } 39 | 40 | /// 41 | /// Simulates mouse clicks when keyboard buttons are pressed 42 | /// 43 | private void SimulateMouseClicks() 44 | { 45 | if (Input.GetKeyDown(KeyCode.L)) 46 | { 47 | CursorControl.SimulateLeftClick(); 48 | } 49 | if (Input.GetKeyDown(KeyCode.M)) 50 | { 51 | CursorControl.SimulateMiddleClick(); 52 | } 53 | if (Input.GetKeyDown(KeyCode.R)) 54 | { 55 | CursorControl.SimulateRightClick(); 56 | } 57 | } 58 | 59 | /// 60 | /// Attempts to parse the x and y position input fields as integers 61 | /// 62 | private bool TryParsePos() 63 | { 64 | if (int.TryParse(_xPos.text, out _x) && int.TryParse(_yPos.text, out _y)) 65 | { 66 | _pos = new Vector2(_x, _y); 67 | return true; 68 | } 69 | return false; 70 | } 71 | 72 | /// 73 | /// Sets the glocal cursor position to the current x and y position input fields 74 | /// 75 | public void SetGlocalCursorPos() 76 | { 77 | if (TryParsePos()) 78 | { 79 | CursorControl.SetGlobalCursorPos(_pos); 80 | } 81 | } 82 | 83 | /// 84 | /// Sets the local cursor position to the current x and y position input fields 85 | /// 86 | public void SetLocalCursorPos() 87 | { 88 | if (TryParsePos()) 89 | { 90 | CursorControl.SetLocalCursorPos(_pos); 91 | } 92 | } 93 | 94 | } 95 | 96 | } 97 | -------------------------------------------------------------------------------- /Assets/CursorControl/Examples/CursorControlExample.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2f6257eeec4d3034aadab6645380ca25 3 | timeCreated: 1467228072 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/CursorControl/Examples/CursorControlExample.unity: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!29 &1 4 | SceneSettings: 5 | m_ObjectHideFlags: 0 6 | m_PVSData: 7 | m_PVSObjectsArray: [] 8 | m_PVSPortalsArray: [] 9 | m_OcclusionBakeSettings: 10 | smallestOccluder: 5 11 | smallestHole: 0.25 12 | backfaceThreshold: 100 13 | --- !u!104 &2 14 | RenderSettings: 15 | m_ObjectHideFlags: 0 16 | serializedVersion: 7 17 | m_Fog: 0 18 | m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} 19 | m_FogMode: 3 20 | m_FogDensity: 0.01 21 | m_LinearFogStart: 0 22 | m_LinearFogEnd: 300 23 | m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} 24 | m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} 25 | m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} 26 | m_AmbientIntensity: 1 27 | m_AmbientMode: 0 28 | m_SkyboxMaterial: {fileID: 10304, guid: 0000000000000000f000000000000000, type: 0} 29 | m_HaloStrength: 0.5 30 | m_FlareStrength: 1 31 | m_FlareFadeSpeed: 3 32 | m_HaloTexture: {fileID: 0} 33 | m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} 34 | m_DefaultReflectionMode: 0 35 | m_DefaultReflectionResolution: 128 36 | m_ReflectionBounces: 1 37 | m_ReflectionIntensity: 1 38 | m_CustomReflection: {fileID: 0} 39 | m_Sun: {fileID: 0} 40 | m_IndirectSpecularColor: {r: 0, g: 0, b: 0, a: 1} 41 | --- !u!157 &3 42 | LightmapSettings: 43 | m_ObjectHideFlags: 0 44 | serializedVersion: 7 45 | m_GIWorkflowMode: 1 46 | m_GISettings: 47 | serializedVersion: 2 48 | m_BounceScale: 1 49 | m_IndirectOutputScale: 1 50 | m_AlbedoBoost: 1 51 | m_TemporalCoherenceThreshold: 1 52 | m_EnvironmentLightingMode: 0 53 | m_EnableBakedLightmaps: 1 54 | m_EnableRealtimeLightmaps: 1 55 | m_LightmapEditorSettings: 56 | serializedVersion: 4 57 | m_Resolution: 2 58 | m_BakeResolution: 40 59 | m_TextureWidth: 1024 60 | m_TextureHeight: 1024 61 | m_AO: 0 62 | m_AOMaxDistance: 1 63 | m_CompAOExponent: 0 64 | m_CompAOExponentDirect: 0 65 | m_Padding: 2 66 | m_LightmapParameters: {fileID: 0} 67 | m_LightmapsBakeMode: 1 68 | m_TextureCompression: 1 69 | m_DirectLightInLightProbes: 1 70 | m_FinalGather: 0 71 | m_FinalGatherFiltering: 1 72 | m_FinalGatherRayCount: 1024 73 | m_ReflectionCompression: 2 74 | m_LightingDataAsset: {fileID: 0} 75 | m_RuntimeCPUUsage: 25 76 | --- !u!196 &4 77 | NavMeshSettings: 78 | serializedVersion: 2 79 | m_ObjectHideFlags: 0 80 | m_BuildSettings: 81 | serializedVersion: 2 82 | agentRadius: 0.5 83 | agentHeight: 2 84 | agentSlope: 45 85 | agentClimb: 0.4 86 | ledgeDropHeight: 0 87 | maxJumpAcrossDistance: 0 88 | accuratePlacement: 0 89 | minRegionArea: 2 90 | cellSize: 0.16666667 91 | manualCellSize: 0 92 | m_NavMeshData: {fileID: 0} 93 | --- !u!1 &7321760 94 | GameObject: 95 | m_ObjectHideFlags: 0 96 | m_PrefabParentObject: {fileID: 0} 97 | m_PrefabInternal: {fileID: 0} 98 | serializedVersion: 4 99 | m_Component: 100 | - 4: {fileID: 7321765} 101 | - 20: {fileID: 7321764} 102 | - 92: {fileID: 7321763} 103 | - 124: {fileID: 7321762} 104 | - 81: {fileID: 7321761} 105 | m_Layer: 0 106 | m_Name: Main Camera 107 | m_TagString: MainCamera 108 | m_Icon: {fileID: 0} 109 | m_NavMeshLayer: 0 110 | m_StaticEditorFlags: 0 111 | m_IsActive: 1 112 | --- !u!81 &7321761 113 | AudioListener: 114 | m_ObjectHideFlags: 0 115 | m_PrefabParentObject: {fileID: 0} 116 | m_PrefabInternal: {fileID: 0} 117 | m_GameObject: {fileID: 7321760} 118 | m_Enabled: 1 119 | --- !u!124 &7321762 120 | Behaviour: 121 | m_ObjectHideFlags: 0 122 | m_PrefabParentObject: {fileID: 0} 123 | m_PrefabInternal: {fileID: 0} 124 | m_GameObject: {fileID: 7321760} 125 | m_Enabled: 1 126 | --- !u!92 &7321763 127 | Behaviour: 128 | m_ObjectHideFlags: 0 129 | m_PrefabParentObject: {fileID: 0} 130 | m_PrefabInternal: {fileID: 0} 131 | m_GameObject: {fileID: 7321760} 132 | m_Enabled: 1 133 | --- !u!20 &7321764 134 | Camera: 135 | m_ObjectHideFlags: 0 136 | m_PrefabParentObject: {fileID: 0} 137 | m_PrefabInternal: {fileID: 0} 138 | m_GameObject: {fileID: 7321760} 139 | m_Enabled: 1 140 | serializedVersion: 2 141 | m_ClearFlags: 1 142 | m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 0.019607844} 143 | m_NormalizedViewPortRect: 144 | serializedVersion: 2 145 | x: 0 146 | y: 0 147 | width: 1 148 | height: 1 149 | near clip plane: 0.3 150 | far clip plane: 1000 151 | field of view: 60 152 | orthographic: 0 153 | orthographic size: 5 154 | m_Depth: -1 155 | m_CullingMask: 156 | serializedVersion: 2 157 | m_Bits: 4294967295 158 | m_RenderingPath: -1 159 | m_TargetTexture: {fileID: 0} 160 | m_TargetDisplay: 0 161 | m_TargetEye: 3 162 | m_HDR: 0 163 | m_OcclusionCulling: 1 164 | m_StereoConvergence: 10 165 | m_StereoSeparation: 0.022 166 | m_StereoMirrorMode: 0 167 | --- !u!4 &7321765 168 | Transform: 169 | m_ObjectHideFlags: 0 170 | m_PrefabParentObject: {fileID: 0} 171 | m_PrefabInternal: {fileID: 0} 172 | m_GameObject: {fileID: 7321760} 173 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} 174 | m_LocalPosition: {x: 0, y: 1, z: -10} 175 | m_LocalScale: {x: 1, y: 1, z: 1} 176 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 177 | m_Children: [] 178 | m_Father: {fileID: 0} 179 | m_RootOrder: 0 180 | --- !u!1 &517347503 181 | GameObject: 182 | m_ObjectHideFlags: 0 183 | m_PrefabParentObject: {fileID: 0} 184 | m_PrefabInternal: {fileID: 0} 185 | serializedVersion: 4 186 | m_Component: 187 | - 4: {fileID: 517347506} 188 | - 114: {fileID: 517347505} 189 | - 114: {fileID: 517347504} 190 | m_Layer: 0 191 | m_Name: EventSystem 192 | m_TagString: Untagged 193 | m_Icon: {fileID: 0} 194 | m_NavMeshLayer: 0 195 | m_StaticEditorFlags: 0 196 | m_IsActive: 1 197 | --- !u!114 &517347504 198 | MonoBehaviour: 199 | m_ObjectHideFlags: 0 200 | m_PrefabParentObject: {fileID: 0} 201 | m_PrefabInternal: {fileID: 0} 202 | m_GameObject: {fileID: 517347503} 203 | m_Enabled: 1 204 | m_EditorHideFlags: 0 205 | m_Script: {fileID: 1077351063, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} 206 | m_Name: 207 | m_EditorClassIdentifier: 208 | m_HorizontalAxis: Horizontal 209 | m_VerticalAxis: Vertical 210 | m_SubmitButton: Submit 211 | m_CancelButton: Cancel 212 | m_InputActionsPerSecond: 10 213 | m_RepeatDelay: 0.5 214 | m_ForceModuleActive: 0 215 | --- !u!114 &517347505 216 | MonoBehaviour: 217 | m_ObjectHideFlags: 0 218 | m_PrefabParentObject: {fileID: 0} 219 | m_PrefabInternal: {fileID: 0} 220 | m_GameObject: {fileID: 517347503} 221 | m_Enabled: 1 222 | m_EditorHideFlags: 0 223 | m_Script: {fileID: -619905303, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} 224 | m_Name: 225 | m_EditorClassIdentifier: 226 | m_FirstSelected: {fileID: 0} 227 | m_sendNavigationEvents: 1 228 | m_DragThreshold: 5 229 | --- !u!4 &517347506 230 | Transform: 231 | m_ObjectHideFlags: 0 232 | m_PrefabParentObject: {fileID: 0} 233 | m_PrefabInternal: {fileID: 0} 234 | m_GameObject: {fileID: 517347503} 235 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} 236 | m_LocalPosition: {x: 0, y: 0, z: 0} 237 | m_LocalScale: {x: 1, y: 1, z: 1} 238 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 239 | m_Children: [] 240 | m_Father: {fileID: 0} 241 | m_RootOrder: 3 242 | --- !u!1 &686552155 243 | GameObject: 244 | m_ObjectHideFlags: 0 245 | m_PrefabParentObject: {fileID: 0} 246 | m_PrefabInternal: {fileID: 0} 247 | serializedVersion: 4 248 | m_Component: 249 | - 224: {fileID: 686552158} 250 | - 222: {fileID: 686552157} 251 | - 114: {fileID: 686552156} 252 | m_Layer: 5 253 | m_Name: GlobalPos 254 | m_TagString: Untagged 255 | m_Icon: {fileID: 0} 256 | m_NavMeshLayer: 0 257 | m_StaticEditorFlags: 0 258 | m_IsActive: 1 259 | --- !u!114 &686552156 260 | MonoBehaviour: 261 | m_ObjectHideFlags: 0 262 | m_PrefabParentObject: {fileID: 0} 263 | m_PrefabInternal: {fileID: 0} 264 | m_GameObject: {fileID: 686552155} 265 | m_Enabled: 1 266 | m_EditorHideFlags: 0 267 | m_Script: {fileID: 708705254, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} 268 | m_Name: 269 | m_EditorClassIdentifier: 270 | m_Material: {fileID: 0} 271 | m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} 272 | m_RaycastTarget: 1 273 | m_OnCullStateChanged: 274 | m_PersistentCalls: 275 | m_Calls: [] 276 | m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, 277 | Version=1.0.0.0, Culture=neutral, PublicKeyToken=null 278 | m_FontData: 279 | m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} 280 | m_FontSize: 20 281 | m_FontStyle: 0 282 | m_BestFit: 0 283 | m_MinSize: 2 284 | m_MaxSize: 40 285 | m_Alignment: 0 286 | m_AlignByGeometry: 0 287 | m_RichText: 1 288 | m_HorizontalOverflow: 1 289 | m_VerticalOverflow: 0 290 | m_LineSpacing: 1 291 | m_Text: 'Global Cursor Position: ' 292 | --- !u!222 &686552157 293 | CanvasRenderer: 294 | m_ObjectHideFlags: 0 295 | m_PrefabParentObject: {fileID: 0} 296 | m_PrefabInternal: {fileID: 0} 297 | m_GameObject: {fileID: 686552155} 298 | --- !u!224 &686552158 299 | RectTransform: 300 | m_ObjectHideFlags: 0 301 | m_PrefabParentObject: {fileID: 0} 302 | m_PrefabInternal: {fileID: 0} 303 | m_GameObject: {fileID: 686552155} 304 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} 305 | m_LocalPosition: {x: 0, y: 0, z: 0} 306 | m_LocalScale: {x: 1, y: 1, z: 1} 307 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 308 | m_Children: [] 309 | m_Father: {fileID: 688968535} 310 | m_RootOrder: 0 311 | m_AnchorMin: {x: 0.5, y: 0.5} 312 | m_AnchorMax: {x: 0.5, y: 0.5} 313 | m_AnchoredPosition: {x: 0, y: 100} 314 | m_SizeDelta: {x: 350, y: 30} 315 | m_Pivot: {x: 0.5, y: 0.5} 316 | --- !u!1 &688968530 317 | GameObject: 318 | m_ObjectHideFlags: 0 319 | m_PrefabParentObject: {fileID: 0} 320 | m_PrefabInternal: {fileID: 0} 321 | serializedVersion: 4 322 | m_Component: 323 | - 224: {fileID: 688968535} 324 | - 223: {fileID: 688968534} 325 | - 114: {fileID: 688968533} 326 | - 114: {fileID: 688968532} 327 | - 114: {fileID: 688968531} 328 | m_Layer: 5 329 | m_Name: Canvas 330 | m_TagString: Untagged 331 | m_Icon: {fileID: 0} 332 | m_NavMeshLayer: 0 333 | m_StaticEditorFlags: 0 334 | m_IsActive: 1 335 | --- !u!114 &688968531 336 | MonoBehaviour: 337 | m_ObjectHideFlags: 0 338 | m_PrefabParentObject: {fileID: 0} 339 | m_PrefabInternal: {fileID: 0} 340 | m_GameObject: {fileID: 688968530} 341 | m_Enabled: 1 342 | m_EditorHideFlags: 0 343 | m_Script: {fileID: 11500000, guid: 2f6257eeec4d3034aadab6645380ca25, type: 3} 344 | m_Name: 345 | m_EditorClassIdentifier: 346 | _globalPosText: {fileID: 686552156} 347 | _localPosText: {fileID: 1805253638} 348 | _xPos: {fileID: 999885396} 349 | _yPos: {fileID: 819728789} 350 | --- !u!114 &688968532 351 | MonoBehaviour: 352 | m_ObjectHideFlags: 0 353 | m_PrefabParentObject: {fileID: 0} 354 | m_PrefabInternal: {fileID: 0} 355 | m_GameObject: {fileID: 688968530} 356 | m_Enabled: 1 357 | m_EditorHideFlags: 0 358 | m_Script: {fileID: 1301386320, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} 359 | m_Name: 360 | m_EditorClassIdentifier: 361 | m_IgnoreReversedGraphics: 1 362 | m_BlockingObjects: 0 363 | m_BlockingMask: 364 | serializedVersion: 2 365 | m_Bits: 4294967295 366 | --- !u!114 &688968533 367 | MonoBehaviour: 368 | m_ObjectHideFlags: 0 369 | m_PrefabParentObject: {fileID: 0} 370 | m_PrefabInternal: {fileID: 0} 371 | m_GameObject: {fileID: 688968530} 372 | m_Enabled: 1 373 | m_EditorHideFlags: 0 374 | m_Script: {fileID: 1980459831, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} 375 | m_Name: 376 | m_EditorClassIdentifier: 377 | m_UiScaleMode: 0 378 | m_ReferencePixelsPerUnit: 100 379 | m_ScaleFactor: 1 380 | m_ReferenceResolution: {x: 800, y: 600} 381 | m_ScreenMatchMode: 0 382 | m_MatchWidthOrHeight: 0 383 | m_PhysicalUnit: 3 384 | m_FallbackScreenDPI: 96 385 | m_DefaultSpriteDPI: 96 386 | m_DynamicPixelsPerUnit: 1 387 | --- !u!223 &688968534 388 | Canvas: 389 | m_ObjectHideFlags: 0 390 | m_PrefabParentObject: {fileID: 0} 391 | m_PrefabInternal: {fileID: 0} 392 | m_GameObject: {fileID: 688968530} 393 | m_Enabled: 1 394 | serializedVersion: 2 395 | m_RenderMode: 0 396 | m_Camera: {fileID: 0} 397 | m_PlaneDistance: 100 398 | m_PixelPerfect: 0 399 | m_ReceivesEvents: 1 400 | m_OverrideSorting: 0 401 | m_OverridePixelPerfect: 0 402 | m_SortingBucketNormalizedSize: 0 403 | m_SortingLayerID: 0 404 | m_SortingOrder: 0 405 | m_TargetDisplay: 0 406 | --- !u!224 &688968535 407 | RectTransform: 408 | m_ObjectHideFlags: 0 409 | m_PrefabParentObject: {fileID: 0} 410 | m_PrefabInternal: {fileID: 0} 411 | m_GameObject: {fileID: 688968530} 412 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} 413 | m_LocalPosition: {x: 0, y: 0, z: 0} 414 | m_LocalScale: {x: 0, y: 0, z: 0} 415 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 416 | m_Children: 417 | - {fileID: 686552158} 418 | - {fileID: 1805253640} 419 | - {fileID: 999885397} 420 | - {fileID: 819728790} 421 | - {fileID: 2099284145} 422 | - {fileID: 1540329632} 423 | - {fileID: 1796127652} 424 | m_Father: {fileID: 0} 425 | m_RootOrder: 2 426 | m_AnchorMin: {x: 0, y: 0} 427 | m_AnchorMax: {x: 0, y: 0} 428 | m_AnchoredPosition: {x: 0, y: 0} 429 | m_SizeDelta: {x: 0, y: 0} 430 | m_Pivot: {x: 0, y: 0} 431 | --- !u!1 &819728788 432 | GameObject: 433 | m_ObjectHideFlags: 0 434 | m_PrefabParentObject: {fileID: 0} 435 | m_PrefabInternal: {fileID: 0} 436 | serializedVersion: 4 437 | m_Component: 438 | - 224: {fileID: 819728790} 439 | - 222: {fileID: 819728792} 440 | - 114: {fileID: 819728791} 441 | - 114: {fileID: 819728789} 442 | m_Layer: 5 443 | m_Name: YPos 444 | m_TagString: Untagged 445 | m_Icon: {fileID: 0} 446 | m_NavMeshLayer: 0 447 | m_StaticEditorFlags: 0 448 | m_IsActive: 1 449 | --- !u!114 &819728789 450 | MonoBehaviour: 451 | m_ObjectHideFlags: 0 452 | m_PrefabParentObject: {fileID: 0} 453 | m_PrefabInternal: {fileID: 0} 454 | m_GameObject: {fileID: 819728788} 455 | m_Enabled: 1 456 | m_EditorHideFlags: 0 457 | m_Script: {fileID: 575553740, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} 458 | m_Name: 459 | m_EditorClassIdentifier: 460 | m_Navigation: 461 | m_Mode: 3 462 | m_SelectOnUp: {fileID: 0} 463 | m_SelectOnDown: {fileID: 0} 464 | m_SelectOnLeft: {fileID: 0} 465 | m_SelectOnRight: {fileID: 0} 466 | m_Transition: 1 467 | m_Colors: 468 | m_NormalColor: {r: 1, g: 1, b: 1, a: 1} 469 | m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} 470 | m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} 471 | m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} 472 | m_ColorMultiplier: 1 473 | m_FadeDuration: 0.1 474 | m_SpriteState: 475 | m_HighlightedSprite: {fileID: 0} 476 | m_PressedSprite: {fileID: 0} 477 | m_DisabledSprite: {fileID: 0} 478 | m_AnimationTriggers: 479 | m_NormalTrigger: Normal 480 | m_HighlightedTrigger: Highlighted 481 | m_PressedTrigger: Pressed 482 | m_DisabledTrigger: Disabled 483 | m_Interactable: 1 484 | m_TargetGraphic: {fileID: 819728791} 485 | m_TextComponent: {fileID: 1228971508} 486 | m_Placeholder: {fileID: 1969844149} 487 | m_ContentType: 0 488 | m_InputType: 0 489 | m_AsteriskChar: 42 490 | m_KeyboardType: 0 491 | m_LineType: 0 492 | m_HideMobileInput: 0 493 | m_CharacterValidation: 0 494 | m_CharacterLimit: 0 495 | m_OnEndEdit: 496 | m_PersistentCalls: 497 | m_Calls: [] 498 | m_TypeName: UnityEngine.UI.InputField+SubmitEvent, UnityEngine.UI, Version=1.0.0.0, 499 | Culture=neutral, PublicKeyToken=null 500 | m_OnValueChanged: 501 | m_PersistentCalls: 502 | m_Calls: [] 503 | m_TypeName: UnityEngine.UI.InputField+OnChangeEvent, UnityEngine.UI, Version=1.0.0.0, 504 | Culture=neutral, PublicKeyToken=null 505 | m_CaretColor: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} 506 | m_CustomCaretColor: 0 507 | m_SelectionColor: {r: 0.65882355, g: 0.80784315, b: 1, a: 0.7529412} 508 | m_Text: 509 | m_CaretBlinkRate: 0.85 510 | m_CaretWidth: 1 511 | m_ReadOnly: 0 512 | --- !u!224 &819728790 513 | RectTransform: 514 | m_ObjectHideFlags: 0 515 | m_PrefabParentObject: {fileID: 0} 516 | m_PrefabInternal: {fileID: 0} 517 | m_GameObject: {fileID: 819728788} 518 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} 519 | m_LocalPosition: {x: 0, y: 0, z: 0} 520 | m_LocalScale: {x: 1, y: 1, z: 1} 521 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 522 | m_Children: 523 | - {fileID: 1969844151} 524 | - {fileID: 1228971506} 525 | m_Father: {fileID: 688968535} 526 | m_RootOrder: 3 527 | m_AnchorMin: {x: 0.5, y: 0.5} 528 | m_AnchorMax: {x: 0.5, y: 0.5} 529 | m_AnchoredPosition: {x: 50, y: -20} 530 | m_SizeDelta: {x: 90, y: 30} 531 | m_Pivot: {x: 0.5, y: 0.5} 532 | --- !u!114 &819728791 533 | MonoBehaviour: 534 | m_ObjectHideFlags: 0 535 | m_PrefabParentObject: {fileID: 0} 536 | m_PrefabInternal: {fileID: 0} 537 | m_GameObject: {fileID: 819728788} 538 | m_Enabled: 1 539 | m_EditorHideFlags: 0 540 | m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} 541 | m_Name: 542 | m_EditorClassIdentifier: 543 | m_Material: {fileID: 0} 544 | m_Color: {r: 1, g: 1, b: 1, a: 1} 545 | m_RaycastTarget: 1 546 | m_OnCullStateChanged: 547 | m_PersistentCalls: 548 | m_Calls: [] 549 | m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, 550 | Version=1.0.0.0, Culture=neutral, PublicKeyToken=null 551 | m_Sprite: {fileID: 10911, guid: 0000000000000000f000000000000000, type: 0} 552 | m_Type: 1 553 | m_PreserveAspect: 0 554 | m_FillCenter: 1 555 | m_FillMethod: 4 556 | m_FillAmount: 1 557 | m_FillClockwise: 1 558 | m_FillOrigin: 0 559 | --- !u!222 &819728792 560 | CanvasRenderer: 561 | m_ObjectHideFlags: 0 562 | m_PrefabParentObject: {fileID: 0} 563 | m_PrefabInternal: {fileID: 0} 564 | m_GameObject: {fileID: 819728788} 565 | --- !u!1 &999885395 566 | GameObject: 567 | m_ObjectHideFlags: 0 568 | m_PrefabParentObject: {fileID: 0} 569 | m_PrefabInternal: {fileID: 0} 570 | serializedVersion: 4 571 | m_Component: 572 | - 224: {fileID: 999885397} 573 | - 222: {fileID: 999885399} 574 | - 114: {fileID: 999885398} 575 | - 114: {fileID: 999885396} 576 | m_Layer: 5 577 | m_Name: XPos 578 | m_TagString: Untagged 579 | m_Icon: {fileID: 0} 580 | m_NavMeshLayer: 0 581 | m_StaticEditorFlags: 0 582 | m_IsActive: 1 583 | --- !u!114 &999885396 584 | MonoBehaviour: 585 | m_ObjectHideFlags: 0 586 | m_PrefabParentObject: {fileID: 0} 587 | m_PrefabInternal: {fileID: 0} 588 | m_GameObject: {fileID: 999885395} 589 | m_Enabled: 1 590 | m_EditorHideFlags: 0 591 | m_Script: {fileID: 575553740, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} 592 | m_Name: 593 | m_EditorClassIdentifier: 594 | m_Navigation: 595 | m_Mode: 3 596 | m_SelectOnUp: {fileID: 0} 597 | m_SelectOnDown: {fileID: 0} 598 | m_SelectOnLeft: {fileID: 0} 599 | m_SelectOnRight: {fileID: 0} 600 | m_Transition: 1 601 | m_Colors: 602 | m_NormalColor: {r: 1, g: 1, b: 1, a: 1} 603 | m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} 604 | m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} 605 | m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} 606 | m_ColorMultiplier: 1 607 | m_FadeDuration: 0.1 608 | m_SpriteState: 609 | m_HighlightedSprite: {fileID: 0} 610 | m_PressedSprite: {fileID: 0} 611 | m_DisabledSprite: {fileID: 0} 612 | m_AnimationTriggers: 613 | m_NormalTrigger: Normal 614 | m_HighlightedTrigger: Highlighted 615 | m_PressedTrigger: Pressed 616 | m_DisabledTrigger: Disabled 617 | m_Interactable: 1 618 | m_TargetGraphic: {fileID: 999885398} 619 | m_TextComponent: {fileID: 1987817083} 620 | m_Placeholder: {fileID: 1213295626} 621 | m_ContentType: 0 622 | m_InputType: 0 623 | m_AsteriskChar: 42 624 | m_KeyboardType: 0 625 | m_LineType: 0 626 | m_HideMobileInput: 0 627 | m_CharacterValidation: 0 628 | m_CharacterLimit: 0 629 | m_OnEndEdit: 630 | m_PersistentCalls: 631 | m_Calls: [] 632 | m_TypeName: UnityEngine.UI.InputField+SubmitEvent, UnityEngine.UI, Version=1.0.0.0, 633 | Culture=neutral, PublicKeyToken=null 634 | m_OnValueChanged: 635 | m_PersistentCalls: 636 | m_Calls: [] 637 | m_TypeName: UnityEngine.UI.InputField+OnChangeEvent, UnityEngine.UI, Version=1.0.0.0, 638 | Culture=neutral, PublicKeyToken=null 639 | m_CaretColor: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} 640 | m_CustomCaretColor: 0 641 | m_SelectionColor: {r: 0.65882355, g: 0.80784315, b: 1, a: 0.7529412} 642 | m_Text: 643 | m_CaretBlinkRate: 0.85 644 | m_CaretWidth: 1 645 | m_ReadOnly: 0 646 | --- !u!224 &999885397 647 | RectTransform: 648 | m_ObjectHideFlags: 0 649 | m_PrefabParentObject: {fileID: 0} 650 | m_PrefabInternal: {fileID: 0} 651 | m_GameObject: {fileID: 999885395} 652 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} 653 | m_LocalPosition: {x: 0, y: 0, z: 0} 654 | m_LocalScale: {x: 1, y: 1, z: 1} 655 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 656 | m_Children: 657 | - {fileID: 1213295628} 658 | - {fileID: 1987817081} 659 | m_Father: {fileID: 688968535} 660 | m_RootOrder: 2 661 | m_AnchorMin: {x: 0.5, y: 0.5} 662 | m_AnchorMax: {x: 0.5, y: 0.5} 663 | m_AnchoredPosition: {x: -50, y: -20} 664 | m_SizeDelta: {x: 90, y: 30} 665 | m_Pivot: {x: 0.5, y: 0.5} 666 | --- !u!114 &999885398 667 | MonoBehaviour: 668 | m_ObjectHideFlags: 0 669 | m_PrefabParentObject: {fileID: 0} 670 | m_PrefabInternal: {fileID: 0} 671 | m_GameObject: {fileID: 999885395} 672 | m_Enabled: 1 673 | m_EditorHideFlags: 0 674 | m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} 675 | m_Name: 676 | m_EditorClassIdentifier: 677 | m_Material: {fileID: 0} 678 | m_Color: {r: 1, g: 1, b: 1, a: 1} 679 | m_RaycastTarget: 1 680 | m_OnCullStateChanged: 681 | m_PersistentCalls: 682 | m_Calls: [] 683 | m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, 684 | Version=1.0.0.0, Culture=neutral, PublicKeyToken=null 685 | m_Sprite: {fileID: 10911, guid: 0000000000000000f000000000000000, type: 0} 686 | m_Type: 1 687 | m_PreserveAspect: 0 688 | m_FillCenter: 1 689 | m_FillMethod: 4 690 | m_FillAmount: 1 691 | m_FillClockwise: 1 692 | m_FillOrigin: 0 693 | --- !u!222 &999885399 694 | CanvasRenderer: 695 | m_ObjectHideFlags: 0 696 | m_PrefabParentObject: {fileID: 0} 697 | m_PrefabInternal: {fileID: 0} 698 | m_GameObject: {fileID: 999885395} 699 | --- !u!1 &1213295625 700 | GameObject: 701 | m_ObjectHideFlags: 0 702 | m_PrefabParentObject: {fileID: 0} 703 | m_PrefabInternal: {fileID: 0} 704 | serializedVersion: 4 705 | m_Component: 706 | - 224: {fileID: 1213295628} 707 | - 222: {fileID: 1213295627} 708 | - 114: {fileID: 1213295626} 709 | m_Layer: 5 710 | m_Name: Placeholder 711 | m_TagString: Untagged 712 | m_Icon: {fileID: 0} 713 | m_NavMeshLayer: 0 714 | m_StaticEditorFlags: 0 715 | m_IsActive: 1 716 | --- !u!114 &1213295626 717 | MonoBehaviour: 718 | m_ObjectHideFlags: 0 719 | m_PrefabParentObject: {fileID: 0} 720 | m_PrefabInternal: {fileID: 0} 721 | m_GameObject: {fileID: 1213295625} 722 | m_Enabled: 1 723 | m_EditorHideFlags: 0 724 | m_Script: {fileID: 708705254, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} 725 | m_Name: 726 | m_EditorClassIdentifier: 727 | m_Material: {fileID: 0} 728 | m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 0.5} 729 | m_RaycastTarget: 1 730 | m_OnCullStateChanged: 731 | m_PersistentCalls: 732 | m_Calls: [] 733 | m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, 734 | Version=1.0.0.0, Culture=neutral, PublicKeyToken=null 735 | m_FontData: 736 | m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} 737 | m_FontSize: 14 738 | m_FontStyle: 2 739 | m_BestFit: 0 740 | m_MinSize: 10 741 | m_MaxSize: 40 742 | m_Alignment: 0 743 | m_AlignByGeometry: 0 744 | m_RichText: 1 745 | m_HorizontalOverflow: 0 746 | m_VerticalOverflow: 0 747 | m_LineSpacing: 1 748 | m_Text: X Position 749 | --- !u!222 &1213295627 750 | CanvasRenderer: 751 | m_ObjectHideFlags: 0 752 | m_PrefabParentObject: {fileID: 0} 753 | m_PrefabInternal: {fileID: 0} 754 | m_GameObject: {fileID: 1213295625} 755 | --- !u!224 &1213295628 756 | RectTransform: 757 | m_ObjectHideFlags: 0 758 | m_PrefabParentObject: {fileID: 0} 759 | m_PrefabInternal: {fileID: 0} 760 | m_GameObject: {fileID: 1213295625} 761 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} 762 | m_LocalPosition: {x: 0, y: 0, z: 0} 763 | m_LocalScale: {x: 1, y: 1, z: 1} 764 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 765 | m_Children: [] 766 | m_Father: {fileID: 999885397} 767 | m_RootOrder: 0 768 | m_AnchorMin: {x: 0, y: 0} 769 | m_AnchorMax: {x: 1, y: 1} 770 | m_AnchoredPosition: {x: 0, y: -0.5} 771 | m_SizeDelta: {x: -20, y: -13} 772 | m_Pivot: {x: 0.5, y: 0.5} 773 | --- !u!1 &1228971505 774 | GameObject: 775 | m_ObjectHideFlags: 0 776 | m_PrefabParentObject: {fileID: 0} 777 | m_PrefabInternal: {fileID: 0} 778 | serializedVersion: 4 779 | m_Component: 780 | - 224: {fileID: 1228971506} 781 | - 222: {fileID: 1228971507} 782 | - 114: {fileID: 1228971508} 783 | m_Layer: 5 784 | m_Name: Text 785 | m_TagString: Untagged 786 | m_Icon: {fileID: 0} 787 | m_NavMeshLayer: 0 788 | m_StaticEditorFlags: 0 789 | m_IsActive: 1 790 | --- !u!224 &1228971506 791 | RectTransform: 792 | m_ObjectHideFlags: 0 793 | m_PrefabParentObject: {fileID: 0} 794 | m_PrefabInternal: {fileID: 0} 795 | m_GameObject: {fileID: 1228971505} 796 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} 797 | m_LocalPosition: {x: 0, y: 0, z: 0} 798 | m_LocalScale: {x: 1, y: 1, z: 1} 799 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 800 | m_Children: [] 801 | m_Father: {fileID: 819728790} 802 | m_RootOrder: 1 803 | m_AnchorMin: {x: 0, y: 0} 804 | m_AnchorMax: {x: 1, y: 1} 805 | m_AnchoredPosition: {x: 0, y: -0.5} 806 | m_SizeDelta: {x: -20, y: -13} 807 | m_Pivot: {x: 0.5, y: 0.5} 808 | --- !u!222 &1228971507 809 | CanvasRenderer: 810 | m_ObjectHideFlags: 0 811 | m_PrefabParentObject: {fileID: 0} 812 | m_PrefabInternal: {fileID: 0} 813 | m_GameObject: {fileID: 1228971505} 814 | --- !u!114 &1228971508 815 | MonoBehaviour: 816 | m_ObjectHideFlags: 0 817 | m_PrefabParentObject: {fileID: 0} 818 | m_PrefabInternal: {fileID: 0} 819 | m_GameObject: {fileID: 1228971505} 820 | m_Enabled: 1 821 | m_EditorHideFlags: 0 822 | m_Script: {fileID: 708705254, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} 823 | m_Name: 824 | m_EditorClassIdentifier: 825 | m_Material: {fileID: 0} 826 | m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} 827 | m_RaycastTarget: 1 828 | m_OnCullStateChanged: 829 | m_PersistentCalls: 830 | m_Calls: [] 831 | m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, 832 | Version=1.0.0.0, Culture=neutral, PublicKeyToken=null 833 | m_FontData: 834 | m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} 835 | m_FontSize: 14 836 | m_FontStyle: 0 837 | m_BestFit: 0 838 | m_MinSize: 10 839 | m_MaxSize: 40 840 | m_Alignment: 0 841 | m_AlignByGeometry: 0 842 | m_RichText: 0 843 | m_HorizontalOverflow: 0 844 | m_VerticalOverflow: 0 845 | m_LineSpacing: 1 846 | m_Text: 847 | --- !u!1 &1376083480 848 | GameObject: 849 | m_ObjectHideFlags: 0 850 | m_PrefabParentObject: {fileID: 0} 851 | m_PrefabInternal: {fileID: 0} 852 | serializedVersion: 4 853 | m_Component: 854 | - 224: {fileID: 1376083481} 855 | - 222: {fileID: 1376083483} 856 | - 114: {fileID: 1376083482} 857 | m_Layer: 5 858 | m_Name: Text 859 | m_TagString: Untagged 860 | m_Icon: {fileID: 0} 861 | m_NavMeshLayer: 0 862 | m_StaticEditorFlags: 0 863 | m_IsActive: 1 864 | --- !u!224 &1376083481 865 | RectTransform: 866 | m_ObjectHideFlags: 0 867 | m_PrefabParentObject: {fileID: 0} 868 | m_PrefabInternal: {fileID: 0} 869 | m_GameObject: {fileID: 1376083480} 870 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} 871 | m_LocalPosition: {x: 0, y: 0, z: 0} 872 | m_LocalScale: {x: 1, y: 1, z: 1} 873 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 874 | m_Children: [] 875 | m_Father: {fileID: 2099284145} 876 | m_RootOrder: 0 877 | m_AnchorMin: {x: 0, y: 0} 878 | m_AnchorMax: {x: 1, y: 1} 879 | m_AnchoredPosition: {x: 0, y: 0} 880 | m_SizeDelta: {x: 0, y: 0} 881 | m_Pivot: {x: 0.5, y: 0.5} 882 | --- !u!114 &1376083482 883 | MonoBehaviour: 884 | m_ObjectHideFlags: 0 885 | m_PrefabParentObject: {fileID: 0} 886 | m_PrefabInternal: {fileID: 0} 887 | m_GameObject: {fileID: 1376083480} 888 | m_Enabled: 1 889 | m_EditorHideFlags: 0 890 | m_Script: {fileID: 708705254, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} 891 | m_Name: 892 | m_EditorClassIdentifier: 893 | m_Material: {fileID: 0} 894 | m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} 895 | m_RaycastTarget: 1 896 | m_OnCullStateChanged: 897 | m_PersistentCalls: 898 | m_Calls: [] 899 | m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, 900 | Version=1.0.0.0, Culture=neutral, PublicKeyToken=null 901 | m_FontData: 902 | m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} 903 | m_FontSize: 14 904 | m_FontStyle: 0 905 | m_BestFit: 0 906 | m_MinSize: 10 907 | m_MaxSize: 40 908 | m_Alignment: 4 909 | m_AlignByGeometry: 0 910 | m_RichText: 1 911 | m_HorizontalOverflow: 0 912 | m_VerticalOverflow: 0 913 | m_LineSpacing: 1 914 | m_Text: Set Global Position 915 | --- !u!222 &1376083483 916 | CanvasRenderer: 917 | m_ObjectHideFlags: 0 918 | m_PrefabParentObject: {fileID: 0} 919 | m_PrefabInternal: {fileID: 0} 920 | m_GameObject: {fileID: 1376083480} 921 | --- !u!1 &1394467073 922 | GameObject: 923 | m_ObjectHideFlags: 0 924 | m_PrefabParentObject: {fileID: 0} 925 | m_PrefabInternal: {fileID: 0} 926 | serializedVersion: 4 927 | m_Component: 928 | - 224: {fileID: 1394467074} 929 | - 222: {fileID: 1394467076} 930 | - 114: {fileID: 1394467075} 931 | m_Layer: 5 932 | m_Name: Text 933 | m_TagString: Untagged 934 | m_Icon: {fileID: 0} 935 | m_NavMeshLayer: 0 936 | m_StaticEditorFlags: 0 937 | m_IsActive: 1 938 | --- !u!224 &1394467074 939 | RectTransform: 940 | m_ObjectHideFlags: 0 941 | m_PrefabParentObject: {fileID: 0} 942 | m_PrefabInternal: {fileID: 0} 943 | m_GameObject: {fileID: 1394467073} 944 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} 945 | m_LocalPosition: {x: 0, y: 0, z: 0} 946 | m_LocalScale: {x: 1, y: 1, z: 1} 947 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 948 | m_Children: [] 949 | m_Father: {fileID: 1540329632} 950 | m_RootOrder: 0 951 | m_AnchorMin: {x: 0, y: 0} 952 | m_AnchorMax: {x: 1, y: 1} 953 | m_AnchoredPosition: {x: 0, y: 0} 954 | m_SizeDelta: {x: 0, y: 0} 955 | m_Pivot: {x: 0.5, y: 0.5} 956 | --- !u!114 &1394467075 957 | MonoBehaviour: 958 | m_ObjectHideFlags: 0 959 | m_PrefabParentObject: {fileID: 0} 960 | m_PrefabInternal: {fileID: 0} 961 | m_GameObject: {fileID: 1394467073} 962 | m_Enabled: 1 963 | m_EditorHideFlags: 0 964 | m_Script: {fileID: 708705254, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} 965 | m_Name: 966 | m_EditorClassIdentifier: 967 | m_Material: {fileID: 0} 968 | m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} 969 | m_RaycastTarget: 1 970 | m_OnCullStateChanged: 971 | m_PersistentCalls: 972 | m_Calls: [] 973 | m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, 974 | Version=1.0.0.0, Culture=neutral, PublicKeyToken=null 975 | m_FontData: 976 | m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} 977 | m_FontSize: 14 978 | m_FontStyle: 0 979 | m_BestFit: 0 980 | m_MinSize: 10 981 | m_MaxSize: 40 982 | m_Alignment: 4 983 | m_AlignByGeometry: 0 984 | m_RichText: 1 985 | m_HorizontalOverflow: 0 986 | m_VerticalOverflow: 0 987 | m_LineSpacing: 1 988 | m_Text: Set Local Position 989 | --- !u!222 &1394467076 990 | CanvasRenderer: 991 | m_ObjectHideFlags: 0 992 | m_PrefabParentObject: {fileID: 0} 993 | m_PrefabInternal: {fileID: 0} 994 | m_GameObject: {fileID: 1394467073} 995 | --- !u!1 &1540329628 996 | GameObject: 997 | m_ObjectHideFlags: 0 998 | m_PrefabParentObject: {fileID: 0} 999 | m_PrefabInternal: {fileID: 0} 1000 | serializedVersion: 4 1001 | m_Component: 1002 | - 224: {fileID: 1540329632} 1003 | - 222: {fileID: 1540329631} 1004 | - 114: {fileID: 1540329630} 1005 | - 114: {fileID: 1540329629} 1006 | m_Layer: 5 1007 | m_Name: SetLocalPos 1008 | m_TagString: Untagged 1009 | m_Icon: {fileID: 0} 1010 | m_NavMeshLayer: 0 1011 | m_StaticEditorFlags: 0 1012 | m_IsActive: 1 1013 | --- !u!114 &1540329629 1014 | MonoBehaviour: 1015 | m_ObjectHideFlags: 0 1016 | m_PrefabParentObject: {fileID: 0} 1017 | m_PrefabInternal: {fileID: 0} 1018 | m_GameObject: {fileID: 1540329628} 1019 | m_Enabled: 1 1020 | m_EditorHideFlags: 0 1021 | m_Script: {fileID: 1392445389, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} 1022 | m_Name: 1023 | m_EditorClassIdentifier: 1024 | m_Navigation: 1025 | m_Mode: 3 1026 | m_SelectOnUp: {fileID: 0} 1027 | m_SelectOnDown: {fileID: 0} 1028 | m_SelectOnLeft: {fileID: 0} 1029 | m_SelectOnRight: {fileID: 0} 1030 | m_Transition: 1 1031 | m_Colors: 1032 | m_NormalColor: {r: 1, g: 1, b: 1, a: 1} 1033 | m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} 1034 | m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} 1035 | m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} 1036 | m_ColorMultiplier: 1 1037 | m_FadeDuration: 0.1 1038 | m_SpriteState: 1039 | m_HighlightedSprite: {fileID: 0} 1040 | m_PressedSprite: {fileID: 0} 1041 | m_DisabledSprite: {fileID: 0} 1042 | m_AnimationTriggers: 1043 | m_NormalTrigger: Normal 1044 | m_HighlightedTrigger: Highlighted 1045 | m_PressedTrigger: Pressed 1046 | m_DisabledTrigger: Disabled 1047 | m_Interactable: 1 1048 | m_TargetGraphic: {fileID: 1540329630} 1049 | m_OnClick: 1050 | m_PersistentCalls: 1051 | m_Calls: 1052 | - m_Target: {fileID: 688968531} 1053 | m_MethodName: SetLocalCursorPos 1054 | m_Mode: 1 1055 | m_Arguments: 1056 | m_ObjectArgument: {fileID: 0} 1057 | m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine 1058 | m_IntArgument: 0 1059 | m_FloatArgument: 0 1060 | m_StringArgument: 1061 | m_BoolArgument: 0 1062 | m_CallState: 2 1063 | m_TypeName: UnityEngine.UI.Button+ButtonClickedEvent, UnityEngine.UI, Version=1.0.0.0, 1064 | Culture=neutral, PublicKeyToken=null 1065 | --- !u!114 &1540329630 1066 | MonoBehaviour: 1067 | m_ObjectHideFlags: 0 1068 | m_PrefabParentObject: {fileID: 0} 1069 | m_PrefabInternal: {fileID: 0} 1070 | m_GameObject: {fileID: 1540329628} 1071 | m_Enabled: 1 1072 | m_EditorHideFlags: 0 1073 | m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} 1074 | m_Name: 1075 | m_EditorClassIdentifier: 1076 | m_Material: {fileID: 0} 1077 | m_Color: {r: 1, g: 1, b: 1, a: 1} 1078 | m_RaycastTarget: 1 1079 | m_OnCullStateChanged: 1080 | m_PersistentCalls: 1081 | m_Calls: [] 1082 | m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, 1083 | Version=1.0.0.0, Culture=neutral, PublicKeyToken=null 1084 | m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} 1085 | m_Type: 1 1086 | m_PreserveAspect: 0 1087 | m_FillCenter: 1 1088 | m_FillMethod: 4 1089 | m_FillAmount: 1 1090 | m_FillClockwise: 1 1091 | m_FillOrigin: 0 1092 | --- !u!222 &1540329631 1093 | CanvasRenderer: 1094 | m_ObjectHideFlags: 0 1095 | m_PrefabParentObject: {fileID: 0} 1096 | m_PrefabInternal: {fileID: 0} 1097 | m_GameObject: {fileID: 1540329628} 1098 | --- !u!224 &1540329632 1099 | RectTransform: 1100 | m_ObjectHideFlags: 0 1101 | m_PrefabParentObject: {fileID: 0} 1102 | m_PrefabInternal: {fileID: 0} 1103 | m_GameObject: {fileID: 1540329628} 1104 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} 1105 | m_LocalPosition: {x: 0, y: 0, z: 0} 1106 | m_LocalScale: {x: 1, y: 1, z: 1} 1107 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 1108 | m_Children: 1109 | - {fileID: 1394467074} 1110 | m_Father: {fileID: 688968535} 1111 | m_RootOrder: 5 1112 | m_AnchorMin: {x: 0.5, y: 0.5} 1113 | m_AnchorMax: {x: 0.5, y: 0.5} 1114 | m_AnchoredPosition: {x: 75, y: -60} 1115 | m_SizeDelta: {x: 140, y: 30} 1116 | m_Pivot: {x: 0.5, y: 0.5} 1117 | --- !u!1 &1623146338 1118 | GameObject: 1119 | m_ObjectHideFlags: 0 1120 | m_PrefabParentObject: {fileID: 0} 1121 | m_PrefabInternal: {fileID: 0} 1122 | serializedVersion: 4 1123 | m_Component: 1124 | - 4: {fileID: 1623146340} 1125 | - 108: {fileID: 1623146339} 1126 | m_Layer: 0 1127 | m_Name: Directional Light 1128 | m_TagString: Untagged 1129 | m_Icon: {fileID: 0} 1130 | m_NavMeshLayer: 0 1131 | m_StaticEditorFlags: 0 1132 | m_IsActive: 1 1133 | --- !u!108 &1623146339 1134 | Light: 1135 | m_ObjectHideFlags: 0 1136 | m_PrefabParentObject: {fileID: 0} 1137 | m_PrefabInternal: {fileID: 0} 1138 | m_GameObject: {fileID: 1623146338} 1139 | m_Enabled: 1 1140 | serializedVersion: 7 1141 | m_Type: 1 1142 | m_Color: {r: 1, g: 0.95686275, b: 0.8392157, a: 1} 1143 | m_Intensity: 1 1144 | m_Range: 10 1145 | m_SpotAngle: 30 1146 | m_CookieSize: 10 1147 | m_Shadows: 1148 | m_Type: 2 1149 | m_Resolution: -1 1150 | m_CustomResolution: -1 1151 | m_Strength: 1 1152 | m_Bias: 0.05 1153 | m_NormalBias: 0.4 1154 | m_NearPlane: 0.2 1155 | m_Cookie: {fileID: 0} 1156 | m_DrawHalo: 0 1157 | m_Flare: {fileID: 0} 1158 | m_RenderMode: 0 1159 | m_CullingMask: 1160 | serializedVersion: 2 1161 | m_Bits: 4294967295 1162 | m_Lightmapping: 4 1163 | m_AreaSize: {x: 1, y: 1} 1164 | m_BounceIntensity: 1 1165 | m_ShadowRadius: 0 1166 | m_ShadowAngle: 0 1167 | --- !u!4 &1623146340 1168 | Transform: 1169 | m_ObjectHideFlags: 0 1170 | m_PrefabParentObject: {fileID: 0} 1171 | m_PrefabInternal: {fileID: 0} 1172 | m_GameObject: {fileID: 1623146338} 1173 | m_LocalRotation: {x: 0.40821794, y: -0.23456973, z: 0.109381676, w: 0.87542605} 1174 | m_LocalPosition: {x: 0, y: 3, z: 0} 1175 | m_LocalScale: {x: 1, y: 1, z: 1} 1176 | m_LocalEulerAnglesHint: {x: 50, y: -30, z: 0} 1177 | m_Children: [] 1178 | m_Father: {fileID: 0} 1179 | m_RootOrder: 1 1180 | --- !u!1 &1796127651 1181 | GameObject: 1182 | m_ObjectHideFlags: 0 1183 | m_PrefabParentObject: {fileID: 0} 1184 | m_PrefabInternal: {fileID: 0} 1185 | serializedVersion: 4 1186 | m_Component: 1187 | - 224: {fileID: 1796127652} 1188 | - 222: {fileID: 1796127654} 1189 | - 114: {fileID: 1796127653} 1190 | m_Layer: 5 1191 | m_Name: SimulateClickInstructions 1192 | m_TagString: Untagged 1193 | m_Icon: {fileID: 0} 1194 | m_NavMeshLayer: 0 1195 | m_StaticEditorFlags: 0 1196 | m_IsActive: 1 1197 | --- !u!224 &1796127652 1198 | RectTransform: 1199 | m_ObjectHideFlags: 0 1200 | m_PrefabParentObject: {fileID: 0} 1201 | m_PrefabInternal: {fileID: 0} 1202 | m_GameObject: {fileID: 1796127651} 1203 | m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} 1204 | m_LocalPosition: {x: 0, y: 0, z: 0} 1205 | m_LocalScale: {x: 1, y: 1, z: 1} 1206 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 1207 | m_Children: [] 1208 | m_Father: {fileID: 688968535} 1209 | m_RootOrder: 6 1210 | m_AnchorMin: {x: 0.5, y: 0.5} 1211 | m_AnchorMax: {x: 0.5, y: 0.5} 1212 | m_AnchoredPosition: {x: 0, y: -140} 1213 | m_SizeDelta: {x: 350, y: 70} 1214 | m_Pivot: {x: 0.5, y: 0.5} 1215 | --- !u!114 &1796127653 1216 | MonoBehaviour: 1217 | m_ObjectHideFlags: 0 1218 | m_PrefabParentObject: {fileID: 0} 1219 | m_PrefabInternal: {fileID: 0} 1220 | m_GameObject: {fileID: 1796127651} 1221 | m_Enabled: 1 1222 | m_EditorHideFlags: 0 1223 | m_Script: {fileID: 708705254, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} 1224 | m_Name: 1225 | m_EditorClassIdentifier: 1226 | m_Material: {fileID: 0} 1227 | m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} 1228 | m_RaycastTarget: 1 1229 | m_OnCullStateChanged: 1230 | m_PersistentCalls: 1231 | m_Calls: [] 1232 | m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, 1233 | Version=1.0.0.0, Culture=neutral, PublicKeyToken=null 1234 | m_FontData: 1235 | m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} 1236 | m_FontSize: 18 1237 | m_FontStyle: 0 1238 | m_BestFit: 0 1239 | m_MinSize: 0 1240 | m_MaxSize: 40 1241 | m_Alignment: 4 1242 | m_AlignByGeometry: 0 1243 | m_RichText: 1 1244 | m_HorizontalOverflow: 1 1245 | m_VerticalOverflow: 0 1246 | m_LineSpacing: 1 1247 | m_Text: 'Press L to simulate Left Click 1248 | 1249 | Press M to simulate Middle Click 1250 | 1251 | Press R to simulate Right Click' 1252 | --- !u!222 &1796127654 1253 | CanvasRenderer: 1254 | m_ObjectHideFlags: 0 1255 | m_PrefabParentObject: {fileID: 0} 1256 | m_PrefabInternal: {fileID: 0} 1257 | m_GameObject: {fileID: 1796127651} 1258 | --- !u!1 &1805253637 1259 | GameObject: 1260 | m_ObjectHideFlags: 0 1261 | m_PrefabParentObject: {fileID: 0} 1262 | m_PrefabInternal: {fileID: 0} 1263 | serializedVersion: 4 1264 | m_Component: 1265 | - 224: {fileID: 1805253640} 1266 | - 222: {fileID: 1805253639} 1267 | - 114: {fileID: 1805253638} 1268 | m_Layer: 5 1269 | m_Name: LocalPos 1270 | m_TagString: Untagged 1271 | m_Icon: {fileID: 0} 1272 | m_NavMeshLayer: 0 1273 | m_StaticEditorFlags: 0 1274 | m_IsActive: 1 1275 | --- !u!114 &1805253638 1276 | MonoBehaviour: 1277 | m_ObjectHideFlags: 0 1278 | m_PrefabParentObject: {fileID: 0} 1279 | m_PrefabInternal: {fileID: 0} 1280 | m_GameObject: {fileID: 1805253637} 1281 | m_Enabled: 1 1282 | m_EditorHideFlags: 0 1283 | m_Script: {fileID: 708705254, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} 1284 | m_Name: 1285 | m_EditorClassIdentifier: 1286 | m_Material: {fileID: 0} 1287 | m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} 1288 | m_RaycastTarget: 1 1289 | m_OnCullStateChanged: 1290 | m_PersistentCalls: 1291 | m_Calls: [] 1292 | m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, 1293 | Version=1.0.0.0, Culture=neutral, PublicKeyToken=null 1294 | m_FontData: 1295 | m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} 1296 | m_FontSize: 20 1297 | m_FontStyle: 0 1298 | m_BestFit: 0 1299 | m_MinSize: 2 1300 | m_MaxSize: 40 1301 | m_Alignment: 0 1302 | m_AlignByGeometry: 0 1303 | m_RichText: 1 1304 | m_HorizontalOverflow: 1 1305 | m_VerticalOverflow: 0 1306 | m_LineSpacing: 1 1307 | m_Text: 'Local Cursor Position: ' 1308 | --- !u!222 &1805253639 1309 | CanvasRenderer: 1310 | m_ObjectHideFlags: 0 1311 | m_PrefabParentObject: {fileID: 0} 1312 | m_PrefabInternal: {fileID: 0} 1313 | m_GameObject: {fileID: 1805253637} 1314 | --- !u!224 &1805253640 1315 | RectTransform: 1316 | m_ObjectHideFlags: 0 1317 | m_PrefabParentObject: {fileID: 0} 1318 | m_PrefabInternal: {fileID: 0} 1319 | m_GameObject: {fileID: 1805253637} 1320 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} 1321 | m_LocalPosition: {x: 0, y: 0, z: 0} 1322 | m_LocalScale: {x: 1, y: 1, z: 1} 1323 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 1324 | m_Children: [] 1325 | m_Father: {fileID: 688968535} 1326 | m_RootOrder: 1 1327 | m_AnchorMin: {x: 0.5, y: 0.5} 1328 | m_AnchorMax: {x: 0.5, y: 0.5} 1329 | m_AnchoredPosition: {x: 0, y: 50} 1330 | m_SizeDelta: {x: 350, y: 30} 1331 | m_Pivot: {x: 0.5, y: 0.5} 1332 | --- !u!1 &1969844148 1333 | GameObject: 1334 | m_ObjectHideFlags: 0 1335 | m_PrefabParentObject: {fileID: 0} 1336 | m_PrefabInternal: {fileID: 0} 1337 | serializedVersion: 4 1338 | m_Component: 1339 | - 224: {fileID: 1969844151} 1340 | - 222: {fileID: 1969844150} 1341 | - 114: {fileID: 1969844149} 1342 | m_Layer: 5 1343 | m_Name: Placeholder 1344 | m_TagString: Untagged 1345 | m_Icon: {fileID: 0} 1346 | m_NavMeshLayer: 0 1347 | m_StaticEditorFlags: 0 1348 | m_IsActive: 1 1349 | --- !u!114 &1969844149 1350 | MonoBehaviour: 1351 | m_ObjectHideFlags: 0 1352 | m_PrefabParentObject: {fileID: 0} 1353 | m_PrefabInternal: {fileID: 0} 1354 | m_GameObject: {fileID: 1969844148} 1355 | m_Enabled: 1 1356 | m_EditorHideFlags: 0 1357 | m_Script: {fileID: 708705254, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} 1358 | m_Name: 1359 | m_EditorClassIdentifier: 1360 | m_Material: {fileID: 0} 1361 | m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 0.5} 1362 | m_RaycastTarget: 1 1363 | m_OnCullStateChanged: 1364 | m_PersistentCalls: 1365 | m_Calls: [] 1366 | m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, 1367 | Version=1.0.0.0, Culture=neutral, PublicKeyToken=null 1368 | m_FontData: 1369 | m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} 1370 | m_FontSize: 14 1371 | m_FontStyle: 2 1372 | m_BestFit: 0 1373 | m_MinSize: 10 1374 | m_MaxSize: 40 1375 | m_Alignment: 0 1376 | m_AlignByGeometry: 0 1377 | m_RichText: 1 1378 | m_HorizontalOverflow: 0 1379 | m_VerticalOverflow: 0 1380 | m_LineSpacing: 1 1381 | m_Text: Y Position 1382 | --- !u!222 &1969844150 1383 | CanvasRenderer: 1384 | m_ObjectHideFlags: 0 1385 | m_PrefabParentObject: {fileID: 0} 1386 | m_PrefabInternal: {fileID: 0} 1387 | m_GameObject: {fileID: 1969844148} 1388 | --- !u!224 &1969844151 1389 | RectTransform: 1390 | m_ObjectHideFlags: 0 1391 | m_PrefabParentObject: {fileID: 0} 1392 | m_PrefabInternal: {fileID: 0} 1393 | m_GameObject: {fileID: 1969844148} 1394 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} 1395 | m_LocalPosition: {x: 0, y: 0, z: 0} 1396 | m_LocalScale: {x: 1, y: 1, z: 1} 1397 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 1398 | m_Children: [] 1399 | m_Father: {fileID: 819728790} 1400 | m_RootOrder: 0 1401 | m_AnchorMin: {x: 0, y: 0} 1402 | m_AnchorMax: {x: 1, y: 1} 1403 | m_AnchoredPosition: {x: 0, y: -0.5} 1404 | m_SizeDelta: {x: -20, y: -13} 1405 | m_Pivot: {x: 0.5, y: 0.5} 1406 | --- !u!1 &1987817080 1407 | GameObject: 1408 | m_ObjectHideFlags: 0 1409 | m_PrefabParentObject: {fileID: 0} 1410 | m_PrefabInternal: {fileID: 0} 1411 | serializedVersion: 4 1412 | m_Component: 1413 | - 224: {fileID: 1987817081} 1414 | - 222: {fileID: 1987817082} 1415 | - 114: {fileID: 1987817083} 1416 | m_Layer: 5 1417 | m_Name: Text 1418 | m_TagString: Untagged 1419 | m_Icon: {fileID: 0} 1420 | m_NavMeshLayer: 0 1421 | m_StaticEditorFlags: 0 1422 | m_IsActive: 1 1423 | --- !u!224 &1987817081 1424 | RectTransform: 1425 | m_ObjectHideFlags: 0 1426 | m_PrefabParentObject: {fileID: 0} 1427 | m_PrefabInternal: {fileID: 0} 1428 | m_GameObject: {fileID: 1987817080} 1429 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} 1430 | m_LocalPosition: {x: 0, y: 0, z: 0} 1431 | m_LocalScale: {x: 1, y: 1, z: 1} 1432 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 1433 | m_Children: [] 1434 | m_Father: {fileID: 999885397} 1435 | m_RootOrder: 1 1436 | m_AnchorMin: {x: 0, y: 0} 1437 | m_AnchorMax: {x: 1, y: 1} 1438 | m_AnchoredPosition: {x: 0, y: -0.5} 1439 | m_SizeDelta: {x: -20, y: -13} 1440 | m_Pivot: {x: 0.5, y: 0.5} 1441 | --- !u!222 &1987817082 1442 | CanvasRenderer: 1443 | m_ObjectHideFlags: 0 1444 | m_PrefabParentObject: {fileID: 0} 1445 | m_PrefabInternal: {fileID: 0} 1446 | m_GameObject: {fileID: 1987817080} 1447 | --- !u!114 &1987817083 1448 | MonoBehaviour: 1449 | m_ObjectHideFlags: 0 1450 | m_PrefabParentObject: {fileID: 0} 1451 | m_PrefabInternal: {fileID: 0} 1452 | m_GameObject: {fileID: 1987817080} 1453 | m_Enabled: 1 1454 | m_EditorHideFlags: 0 1455 | m_Script: {fileID: 708705254, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} 1456 | m_Name: 1457 | m_EditorClassIdentifier: 1458 | m_Material: {fileID: 0} 1459 | m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} 1460 | m_RaycastTarget: 1 1461 | m_OnCullStateChanged: 1462 | m_PersistentCalls: 1463 | m_Calls: [] 1464 | m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, 1465 | Version=1.0.0.0, Culture=neutral, PublicKeyToken=null 1466 | m_FontData: 1467 | m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} 1468 | m_FontSize: 14 1469 | m_FontStyle: 0 1470 | m_BestFit: 0 1471 | m_MinSize: 10 1472 | m_MaxSize: 40 1473 | m_Alignment: 0 1474 | m_AlignByGeometry: 0 1475 | m_RichText: 0 1476 | m_HorizontalOverflow: 0 1477 | m_VerticalOverflow: 0 1478 | m_LineSpacing: 1 1479 | m_Text: 1480 | --- !u!1 &2099284141 1481 | GameObject: 1482 | m_ObjectHideFlags: 0 1483 | m_PrefabParentObject: {fileID: 0} 1484 | m_PrefabInternal: {fileID: 0} 1485 | serializedVersion: 4 1486 | m_Component: 1487 | - 224: {fileID: 2099284145} 1488 | - 222: {fileID: 2099284144} 1489 | - 114: {fileID: 2099284143} 1490 | - 114: {fileID: 2099284142} 1491 | m_Layer: 5 1492 | m_Name: SetGlobalPos 1493 | m_TagString: Untagged 1494 | m_Icon: {fileID: 0} 1495 | m_NavMeshLayer: 0 1496 | m_StaticEditorFlags: 0 1497 | m_IsActive: 1 1498 | --- !u!114 &2099284142 1499 | MonoBehaviour: 1500 | m_ObjectHideFlags: 0 1501 | m_PrefabParentObject: {fileID: 0} 1502 | m_PrefabInternal: {fileID: 0} 1503 | m_GameObject: {fileID: 2099284141} 1504 | m_Enabled: 1 1505 | m_EditorHideFlags: 0 1506 | m_Script: {fileID: 1392445389, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} 1507 | m_Name: 1508 | m_EditorClassIdentifier: 1509 | m_Navigation: 1510 | m_Mode: 3 1511 | m_SelectOnUp: {fileID: 0} 1512 | m_SelectOnDown: {fileID: 0} 1513 | m_SelectOnLeft: {fileID: 0} 1514 | m_SelectOnRight: {fileID: 0} 1515 | m_Transition: 1 1516 | m_Colors: 1517 | m_NormalColor: {r: 1, g: 1, b: 1, a: 1} 1518 | m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} 1519 | m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} 1520 | m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} 1521 | m_ColorMultiplier: 1 1522 | m_FadeDuration: 0.1 1523 | m_SpriteState: 1524 | m_HighlightedSprite: {fileID: 0} 1525 | m_PressedSprite: {fileID: 0} 1526 | m_DisabledSprite: {fileID: 0} 1527 | m_AnimationTriggers: 1528 | m_NormalTrigger: Normal 1529 | m_HighlightedTrigger: Highlighted 1530 | m_PressedTrigger: Pressed 1531 | m_DisabledTrigger: Disabled 1532 | m_Interactable: 1 1533 | m_TargetGraphic: {fileID: 2099284143} 1534 | m_OnClick: 1535 | m_PersistentCalls: 1536 | m_Calls: 1537 | - m_Target: {fileID: 688968531} 1538 | m_MethodName: SetGlocalCursorPos 1539 | m_Mode: 1 1540 | m_Arguments: 1541 | m_ObjectArgument: {fileID: 0} 1542 | m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine 1543 | m_IntArgument: 0 1544 | m_FloatArgument: 0 1545 | m_StringArgument: 1546 | m_BoolArgument: 0 1547 | m_CallState: 2 1548 | m_TypeName: UnityEngine.UI.Button+ButtonClickedEvent, UnityEngine.UI, Version=1.0.0.0, 1549 | Culture=neutral, PublicKeyToken=null 1550 | --- !u!114 &2099284143 1551 | MonoBehaviour: 1552 | m_ObjectHideFlags: 0 1553 | m_PrefabParentObject: {fileID: 0} 1554 | m_PrefabInternal: {fileID: 0} 1555 | m_GameObject: {fileID: 2099284141} 1556 | m_Enabled: 1 1557 | m_EditorHideFlags: 0 1558 | m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} 1559 | m_Name: 1560 | m_EditorClassIdentifier: 1561 | m_Material: {fileID: 0} 1562 | m_Color: {r: 1, g: 1, b: 1, a: 1} 1563 | m_RaycastTarget: 1 1564 | m_OnCullStateChanged: 1565 | m_PersistentCalls: 1566 | m_Calls: [] 1567 | m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, 1568 | Version=1.0.0.0, Culture=neutral, PublicKeyToken=null 1569 | m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} 1570 | m_Type: 1 1571 | m_PreserveAspect: 0 1572 | m_FillCenter: 1 1573 | m_FillMethod: 4 1574 | m_FillAmount: 1 1575 | m_FillClockwise: 1 1576 | m_FillOrigin: 0 1577 | --- !u!222 &2099284144 1578 | CanvasRenderer: 1579 | m_ObjectHideFlags: 0 1580 | m_PrefabParentObject: {fileID: 0} 1581 | m_PrefabInternal: {fileID: 0} 1582 | m_GameObject: {fileID: 2099284141} 1583 | --- !u!224 &2099284145 1584 | RectTransform: 1585 | m_ObjectHideFlags: 0 1586 | m_PrefabParentObject: {fileID: 0} 1587 | m_PrefabInternal: {fileID: 0} 1588 | m_GameObject: {fileID: 2099284141} 1589 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} 1590 | m_LocalPosition: {x: 0, y: 0, z: 0} 1591 | m_LocalScale: {x: 1, y: 1, z: 1} 1592 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 1593 | m_Children: 1594 | - {fileID: 1376083481} 1595 | m_Father: {fileID: 688968535} 1596 | m_RootOrder: 4 1597 | m_AnchorMin: {x: 0.5, y: 0.5} 1598 | m_AnchorMax: {x: 0.5, y: 0.5} 1599 | m_AnchoredPosition: {x: -75, y: -60} 1600 | m_SizeDelta: {x: 140, y: 30} 1601 | m_Pivot: {x: 0.5, y: 0.5} 1602 | -------------------------------------------------------------------------------- /Assets/CursorControl/Examples/CursorControlExample.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e25e931c87ff5884dacb11e4391095cf 3 | timeCreated: 1467227497 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/CursorControl/Scripts.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d67d373c6d0f9aa4ca90d2d6de8d53f5 3 | folderAsset: yes 4 | DefaultImporter: 5 | userData: 6 | -------------------------------------------------------------------------------- /Assets/CursorControl/Scripts/CursorControl.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using System; 3 | using UnityCursorControl; 4 | 5 | /// 6 | /// Gets/sets the global and local mouse cursor position 7 | /// 8 | public static class CursorControl 9 | { 10 | 11 | private static ICursorControl _cursorControl; 12 | 13 | /// 14 | /// Creates the correct ICursorControl instance depending on the platform 15 | /// 16 | static CursorControl() 17 | { 18 | if (Application.platform == RuntimePlatform.WindowsEditor || 19 | Application.platform == RuntimePlatform.WindowsPlayer) 20 | { 21 | _cursorControl = new CursorControlWindows(); 22 | } 23 | //else if (Application.platform == RuntimePlatform.OSXEditor || 24 | // Application.platform == RuntimePlatform.OSXPlayer) 25 | //{ 26 | // _cursorControl = new CursorControlMac(); 27 | //} 28 | else 29 | { 30 | throw new PlatformNotSupportedException("CursorControl is not supported on this platform"); 31 | } 32 | } 33 | 34 | public static Vector2 GetGlobalCursorPos() 35 | { 36 | return _cursorControl.GetGlobalCursorPos(); 37 | } 38 | 39 | public static void SetGlobalCursorPos(Vector2 pos) 40 | { 41 | _cursorControl.SetGlobalCursorPos(pos); 42 | } 43 | 44 | public static void SetLocalCursorPos(Vector2 pos) 45 | { 46 | _cursorControl.SetLocalCursorPos(pos); 47 | } 48 | 49 | public static void SimulateLeftClick() 50 | { 51 | _cursorControl.SimulateLeftClick(); 52 | } 53 | 54 | public static void SimulateMiddleClick() 55 | { 56 | _cursorControl.SimulateMiddleClick(); 57 | } 58 | 59 | public static void SimulateRightClick() 60 | { 61 | _cursorControl.SimulateRightClick(); 62 | } 63 | } 64 | -------------------------------------------------------------------------------- /Assets/CursorControl/Scripts/CursorControl.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d91d82e148b146147be2ad20419249f6 3 | MonoImporter: 4 | serializedVersion: 2 5 | defaultReferences: [] 6 | executionOrder: 0 7 | icon: {instanceID: 0} 8 | userData: 9 | -------------------------------------------------------------------------------- /Assets/CursorControl/Scripts/CursorControlWindows.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using System; 3 | using System.Runtime.InteropServices; 4 | 5 | namespace UnityCursorControl 6 | { 7 | 8 | /// 9 | /// Implements the ICursorControl interface for the Windows platform 10 | /// 11 | internal class CursorControlWindows : ICursorControl 12 | { 13 | 14 | /// 15 | /// Point struct needed to get the cursor position from the user32.dll 16 | /// 17 | private struct Point 18 | { 19 | public int X; 20 | public int Y; 21 | } 22 | 23 | /// 24 | /// Enum of mouse event flags, used by the mouse_event function 25 | /// 26 | [Flags] 27 | private enum MouseEventFlags 28 | { 29 | MOUSEEVENTF_ABSOLUTE = 0x8000, 30 | MOUSEEVENTF_LEFTDOWN = 0x0002, 31 | MOUSEEVENTF_LEFTUP = 0x0004, 32 | MOUSEEVENTF_MIDDLEDOWN = 0x0020, 33 | MOUSEEVENTF_MIDDLEUP = 0x0040, 34 | MOUSEEVENTF_MOVE = 0x0001, 35 | MOUSEEVENTF_RIGHTDOWN = 0x0008, 36 | MOUSEEVENTF_RIGHTUP = 0x0010, 37 | MOUSEEVENTF_XDOWN = 0x0080, 38 | MOUSEEVENTF_XUP = 0x0100, 39 | MOUSEEVENTF_WHEEL = 0x0800, 40 | MOUSEEVENTF_HWHEEL = 0x01000 41 | } 42 | 43 | /// 44 | /// Sets the global cursor position using the windows user32.dll 45 | /// 46 | /// Global cursor X position 47 | /// Global cursor Y position 48 | /// 49 | /// see https://msdn.microsoft.com/en-us/library/windows/desktop/ms648394(v=vs.85).aspx 50 | /// 51 | [DllImport("user32.dll")] 52 | private static extern bool SetCursorPos(int X, int Y); 53 | 54 | /// 55 | /// Gets the global cursor position using the windows user32.dll 56 | /// 57 | /// The Point object to save the position into 58 | /// 59 | /// see https://msdn.microsoft.com/en-us/library/windows/desktop/ms648390(v=vs.85).aspx 60 | /// 61 | [DllImport("user32.dll")] 62 | private static extern bool GetCursorPos(out Point pos); 63 | 64 | /// 65 | /// Sends a mouse event using the windows user32.dll 66 | /// 67 | /// A flag to indicate the event type, see MouseEventFlags enum 68 | /// The x position of the mouse event 69 | /// The y position of the mouse event 70 | /// Data for mouse wheel and X button events 71 | /// Any additional value associated with mouse event 72 | /// 73 | /// see https://msdn.microsoft.com/en-us/library/windows/desktop/ms646260(v=vs.85).aspx 74 | /// 75 | [DllImport("user32.dll")] 76 | private static extern void mouse_event(uint dwFlags, uint dx, uint dy, uint dwData, UIntPtr dwExtraInfo); 77 | 78 | /// 79 | /// Converts a local cursor position to a global cursor position 80 | /// 81 | private Vector2 LocalToGlobal(Vector2 pos) 82 | { 83 | Vector2 localPos = Input.mousePosition; 84 | Vector2 globalPos = GetGlobalCursorPos(); 85 | int xOffset = (int)globalPos.x - (int)localPos.x; 86 | // Unity calculates cursor position from the bottom left corner, whereas windows uses the top left corner 87 | localPos.y = Screen.height - localPos.y; 88 | int yOffset = (int)globalPos.y - (int)localPos.y; 89 | 90 | return new Vector2(pos.x + xOffset, Screen.height - pos.y + yOffset); 91 | } 92 | 93 | public Vector2 GetGlobalCursorPos() 94 | { 95 | Point pos; 96 | GetCursorPos(out pos); 97 | return new Vector2(pos.X, pos.Y); 98 | } 99 | 100 | public void SetGlobalCursorPos(Vector2 pos) 101 | { 102 | SetCursorPos((int)pos.x, (int)pos.y); 103 | } 104 | 105 | public void SetLocalCursorPos(Vector2 pos) 106 | { 107 | pos = LocalToGlobal(pos); 108 | SetCursorPos((int)pos.x, (int)pos.y); 109 | } 110 | 111 | public void SimulateLeftClick() 112 | { 113 | mouse_event((uint)MouseEventFlags.MOUSEEVENTF_LEFTDOWN, 114 | (uint)GetGlobalCursorPos().x, (uint)GetGlobalCursorPos().y, 0, UIntPtr.Zero); 115 | mouse_event((uint)MouseEventFlags.MOUSEEVENTF_LEFTUP, 116 | (uint)GetGlobalCursorPos().x, (uint)GetGlobalCursorPos().y, 0, UIntPtr.Zero); 117 | } 118 | 119 | public void SimulateMiddleClick() 120 | { 121 | mouse_event((uint)MouseEventFlags.MOUSEEVENTF_MIDDLEDOWN, 122 | (uint)GetGlobalCursorPos().x, (uint)GetGlobalCursorPos().y, 0, UIntPtr.Zero); 123 | mouse_event((uint)MouseEventFlags.MOUSEEVENTF_MIDDLEUP, 124 | (uint)GetGlobalCursorPos().x, (uint)GetGlobalCursorPos().y, 0, UIntPtr.Zero); 125 | } 126 | 127 | public void SimulateRightClick() 128 | { 129 | mouse_event((uint)MouseEventFlags.MOUSEEVENTF_RIGHTDOWN, 130 | (uint)GetGlobalCursorPos().x, (uint)GetGlobalCursorPos().y, 0, UIntPtr.Zero); 131 | mouse_event((uint)MouseEventFlags.MOUSEEVENTF_RIGHTUP, 132 | (uint)GetGlobalCursorPos().x, (uint)GetGlobalCursorPos().y, 0, UIntPtr.Zero); 133 | } 134 | 135 | } 136 | 137 | } 138 | -------------------------------------------------------------------------------- /Assets/CursorControl/Scripts/CursorControlWindows.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 017d0a9112d5ed24fbec7d8e2b7dadd3 3 | MonoImporter: 4 | serializedVersion: 2 5 | defaultReferences: [] 6 | executionOrder: 0 7 | icon: {instanceID: 0} 8 | userData: 9 | -------------------------------------------------------------------------------- /Assets/CursorControl/Scripts/ICursorControl.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace UnityCursorControl 4 | { 5 | 6 | /// 7 | /// Interface that should be implemented when adding CursorControl functionality to a new platform 8 | /// 9 | internal interface ICursorControl 10 | { 11 | 12 | /// 13 | /// Gets the global cursor position, relative to the OS 14 | /// 15 | Vector2 GetGlobalCursorPos(); 16 | 17 | /// 18 | /// Sets the global cursor position, relative to the OS 19 | /// 20 | void SetGlobalCursorPos(Vector2 pos); 21 | 22 | /// 23 | /// Sets the local cursor position, relative to the Unity game window 24 | /// 25 | void SetLocalCursorPos(Vector2 pos); 26 | 27 | /// 28 | /// Simulates a left mouse down event, immediately followed by a left mouse up event 29 | /// 30 | void SimulateLeftClick(); 31 | 32 | /// 33 | /// Simulates a middle mouse down event, immediately followed by a middle mouse up event 34 | /// 35 | void SimulateMiddleClick(); 36 | 37 | /// 38 | /// Simulates a right mouse down event, immediately followed by a right mouse up event 39 | /// 40 | void SimulateRightClick(); 41 | 42 | } 43 | 44 | } 45 | -------------------------------------------------------------------------------- /Assets/CursorControl/Scripts/ICursorControl.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: cca62a9eb322b6546991f03ce5c53ddf 3 | MonoImporter: 4 | serializedVersion: 2 5 | defaultReferences: [] 6 | executionOrder: 0 7 | icon: {instanceID: 0} 8 | userData: 9 | -------------------------------------------------------------------------------- /Assets/CursorControl/Tests.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c6ecd7ea06982134980c29442baf8145 3 | folderAsset: yes 4 | timeCreated: 1470724568 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/CursorControl/Tests/Unit Tests.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 532405bcc9d329c4ba283c7d6a3dd9aa 3 | folderAsset: yes 4 | timeCreated: 1470756824 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/CursorControl/Tests/Unit Tests/Editor.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 22ecd9e060d93e74187067da4b03d977 3 | folderAsset: yes 4 | timeCreated: 1470724577 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/CursorControl/Tests/Unit Tests/Editor/CursorControlTest.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using NUnit.Framework; 3 | 4 | namespace UnityCursorControl 5 | { 6 | 7 | /// 8 | /// Unit tests for CursorControl class 9 | /// 10 | [TestFixture] 11 | public class CursorControlTest 12 | { 13 | 14 | /// 15 | /// Stores the initial cursor position 16 | /// 17 | private Vector2 _cursorPos; 18 | 19 | /// 20 | /// Remembers the cursor position before the tests are run 21 | /// 22 | [TestFixtureSetUp] 23 | public void TestFixtureSetUp() 24 | { 25 | _cursorPos = CursorControl.GetGlobalCursorPos(); 26 | } 27 | 28 | /// 29 | /// Sets the cursor position back to its original position after the tests are run 30 | /// 31 | [TestFixtureTearDown] 32 | public void TestFixtureTearDown() 33 | { 34 | CursorControl.SetGlobalCursorPos(_cursorPos); 35 | } 36 | 37 | /// 38 | /// Tests GetGlobalCursorPos() and SetGlobalCursorPos() 39 | /// 40 | [Test] 41 | public void GlobalPosTest() 42 | { 43 | Vector2 pos = new Vector2(100, 200); 44 | CursorControl.SetGlobalCursorPos(pos); 45 | Assert.AreEqual(pos, CursorControl.GetGlobalCursorPos()); 46 | } 47 | 48 | /// 49 | /// Tests SetLocalCursorPos() 50 | /// 51 | /// 52 | /// This test should pass in theory. However, when using the Unity editor test runner, 53 | /// the game window is not in focus and therefore Input.mousePosition does not update. 54 | /// Therefore, I have left the test in but commented it out. 55 | /// 56 | //[Test] 57 | //public void LocalPosTest() 58 | //{ 59 | // Vector2 pos = new Vector2(100, 200); 60 | // CursorControl.SetLocalCursorPos(pos); 61 | // Assert.AreEqual(pos, (Vector2)Input.mousePosition); 62 | //} 63 | } 64 | 65 | } 66 | -------------------------------------------------------------------------------- /Assets/CursorControl/Tests/Unit Tests/Editor/CursorControlTest.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: cc4930827c05ba04db3bd6d03690cd08 3 | timeCreated: 1470724589 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2016 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /ProjectSettings/AudioManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!11 &1 4 | AudioManager: 5 | m_ObjectHideFlags: 0 6 | m_Volume: 1 7 | Rolloff Scale: 1 8 | Doppler Factor: 1 9 | Default Speaker Mode: 2 10 | m_SampleRate: 0 11 | m_DSPBufferSize: 0 12 | m_VirtualVoiceCount: 512 13 | m_RealVoiceCount: 32 14 | m_SpatializerPlugin: 15 | m_DisableAudio: 0 16 | -------------------------------------------------------------------------------- /ProjectSettings/ClusterInputManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!236 &1 4 | ClusterInputManager: 5 | m_ObjectHideFlags: 0 6 | m_Inputs: [] 7 | -------------------------------------------------------------------------------- /ProjectSettings/DynamicsManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!55 &1 4 | PhysicsManager: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 2 7 | m_Gravity: {x: 0, y: -9.81, z: 0} 8 | m_DefaultMaterial: {fileID: 0} 9 | m_BounceThreshold: 2 10 | m_SleepThreshold: 0.005 11 | m_DefaultContactOffset: 0.01 12 | m_SolverIterationCount: 6 13 | m_QueriesHitTriggers: 1 14 | m_EnableAdaptiveForce: 0 15 | m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 16 | -------------------------------------------------------------------------------- /ProjectSettings/EditorBuildSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!1045 &1 4 | EditorBuildSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 2 7 | m_Scenes: [] 8 | -------------------------------------------------------------------------------- /ProjectSettings/EditorSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!159 &1 4 | EditorSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 3 7 | m_ExternalVersionControlSupport: Hidden Meta Files 8 | m_SerializationMode: 2 9 | m_WebSecurityEmulationEnabled: 0 10 | m_WebSecurityEmulationHostUrl: http://www.mydomain.com/mygame.unity3d 11 | m_DefaultBehaviorMode: 0 12 | m_SpritePackerMode: 2 13 | m_SpritePackerPaddingPower: 1 14 | m_ProjectGenerationIncludedExtensions: txt;xml;fnt;cd 15 | m_ProjectGenerationRootNamespace: 16 | -------------------------------------------------------------------------------- /ProjectSettings/GraphicsSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!30 &1 4 | GraphicsSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 7 7 | m_Deferred: 8 | m_Mode: 1 9 | m_Shader: {fileID: 69, guid: 0000000000000000f000000000000000, type: 0} 10 | m_DeferredReflections: 11 | m_Mode: 1 12 | m_Shader: {fileID: 74, guid: 0000000000000000f000000000000000, type: 0} 13 | m_ScreenSpaceShadows: 14 | m_Mode: 1 15 | m_Shader: {fileID: 64, guid: 0000000000000000f000000000000000, type: 0} 16 | m_LegacyDeferred: 17 | m_Mode: 1 18 | m_Shader: {fileID: 63, guid: 0000000000000000f000000000000000, type: 0} 19 | m_DepthNormals: 20 | m_Mode: 1 21 | m_Shader: {fileID: 62, guid: 0000000000000000f000000000000000, type: 0} 22 | m_MotionVectors: 23 | m_Mode: 1 24 | m_Shader: {fileID: 75, guid: 0000000000000000f000000000000000, type: 0} 25 | m_LightHalo: 26 | m_Mode: 1 27 | m_Shader: {fileID: 105, guid: 0000000000000000f000000000000000, type: 0} 28 | m_LensFlare: 29 | m_Mode: 1 30 | m_Shader: {fileID: 102, guid: 0000000000000000f000000000000000, type: 0} 31 | m_AlwaysIncludedShaders: 32 | - {fileID: 7, guid: 0000000000000000f000000000000000, type: 0} 33 | - {fileID: 15104, guid: 0000000000000000f000000000000000, type: 0} 34 | - {fileID: 15105, guid: 0000000000000000f000000000000000, type: 0} 35 | - {fileID: 15106, guid: 0000000000000000f000000000000000, type: 0} 36 | - {fileID: 10770, guid: 0000000000000000f000000000000000, type: 0} 37 | - {fileID: 10782, guid: 0000000000000000f000000000000000, type: 0} 38 | m_PreloadedShaders: [] 39 | m_SpritesDefaultMaterial: {fileID: 10754, guid: 0000000000000000f000000000000000, 40 | type: 0} 41 | m_ShaderSettings_Tier1: 42 | useCascadedShadowMaps: 1 43 | standardShaderQuality: 2 44 | useReflectionProbeBoxProjection: 1 45 | useReflectionProbeBlending: 1 46 | m_ShaderSettings_Tier2: 47 | useCascadedShadowMaps: 1 48 | standardShaderQuality: 2 49 | useReflectionProbeBoxProjection: 1 50 | useReflectionProbeBlending: 1 51 | m_ShaderSettings_Tier3: 52 | useCascadedShadowMaps: 1 53 | standardShaderQuality: 2 54 | useReflectionProbeBoxProjection: 1 55 | useReflectionProbeBlending: 1 56 | m_BuildTargetShaderSettings: [] 57 | m_LightmapStripping: 0 58 | m_FogStripping: 0 59 | m_LightmapKeepPlain: 1 60 | m_LightmapKeepDirCombined: 1 61 | m_LightmapKeepDirSeparate: 1 62 | m_LightmapKeepDynamicPlain: 1 63 | m_LightmapKeepDynamicDirCombined: 1 64 | m_LightmapKeepDynamicDirSeparate: 1 65 | m_FogKeepLinear: 1 66 | m_FogKeepExp: 1 67 | m_FogKeepExp2: 1 68 | -------------------------------------------------------------------------------- /ProjectSettings/InputManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!13 &1 4 | InputManager: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 2 7 | m_Axes: 8 | - serializedVersion: 3 9 | m_Name: Horizontal 10 | descriptiveName: 11 | descriptiveNegativeName: 12 | negativeButton: left 13 | positiveButton: right 14 | altNegativeButton: a 15 | altPositiveButton: d 16 | gravity: 3 17 | dead: 0.001 18 | sensitivity: 3 19 | snap: 1 20 | invert: 0 21 | type: 0 22 | axis: 0 23 | joyNum: 0 24 | - serializedVersion: 3 25 | m_Name: Vertical 26 | descriptiveName: 27 | descriptiveNegativeName: 28 | negativeButton: down 29 | positiveButton: up 30 | altNegativeButton: s 31 | altPositiveButton: w 32 | gravity: 3 33 | dead: 0.001 34 | sensitivity: 3 35 | snap: 1 36 | invert: 0 37 | type: 0 38 | axis: 0 39 | joyNum: 0 40 | - serializedVersion: 3 41 | m_Name: Fire1 42 | descriptiveName: 43 | descriptiveNegativeName: 44 | negativeButton: 45 | positiveButton: left ctrl 46 | altNegativeButton: 47 | altPositiveButton: mouse 0 48 | gravity: 1000 49 | dead: 0.001 50 | sensitivity: 1000 51 | snap: 0 52 | invert: 0 53 | type: 0 54 | axis: 0 55 | joyNum: 0 56 | - serializedVersion: 3 57 | m_Name: Fire2 58 | descriptiveName: 59 | descriptiveNegativeName: 60 | negativeButton: 61 | positiveButton: left alt 62 | altNegativeButton: 63 | altPositiveButton: mouse 1 64 | gravity: 1000 65 | dead: 0.001 66 | sensitivity: 1000 67 | snap: 0 68 | invert: 0 69 | type: 0 70 | axis: 0 71 | joyNum: 0 72 | - serializedVersion: 3 73 | m_Name: Fire3 74 | descriptiveName: 75 | descriptiveNegativeName: 76 | negativeButton: 77 | positiveButton: left shift 78 | altNegativeButton: 79 | altPositiveButton: mouse 2 80 | gravity: 1000 81 | dead: 0.001 82 | sensitivity: 1000 83 | snap: 0 84 | invert: 0 85 | type: 0 86 | axis: 0 87 | joyNum: 0 88 | - serializedVersion: 3 89 | m_Name: Jump 90 | descriptiveName: 91 | descriptiveNegativeName: 92 | negativeButton: 93 | positiveButton: space 94 | altNegativeButton: 95 | altPositiveButton: 96 | gravity: 1000 97 | dead: 0.001 98 | sensitivity: 1000 99 | snap: 0 100 | invert: 0 101 | type: 0 102 | axis: 0 103 | joyNum: 0 104 | - serializedVersion: 3 105 | m_Name: Mouse X 106 | descriptiveName: 107 | descriptiveNegativeName: 108 | negativeButton: 109 | positiveButton: 110 | altNegativeButton: 111 | altPositiveButton: 112 | gravity: 0 113 | dead: 0 114 | sensitivity: 0.1 115 | snap: 0 116 | invert: 0 117 | type: 1 118 | axis: 0 119 | joyNum: 0 120 | - serializedVersion: 3 121 | m_Name: Mouse Y 122 | descriptiveName: 123 | descriptiveNegativeName: 124 | negativeButton: 125 | positiveButton: 126 | altNegativeButton: 127 | altPositiveButton: 128 | gravity: 0 129 | dead: 0 130 | sensitivity: 0.1 131 | snap: 0 132 | invert: 0 133 | type: 1 134 | axis: 1 135 | joyNum: 0 136 | - serializedVersion: 3 137 | m_Name: Mouse ScrollWheel 138 | descriptiveName: 139 | descriptiveNegativeName: 140 | negativeButton: 141 | positiveButton: 142 | altNegativeButton: 143 | altPositiveButton: 144 | gravity: 0 145 | dead: 0 146 | sensitivity: 0.1 147 | snap: 0 148 | invert: 0 149 | type: 1 150 | axis: 2 151 | joyNum: 0 152 | - serializedVersion: 3 153 | m_Name: Horizontal 154 | descriptiveName: 155 | descriptiveNegativeName: 156 | negativeButton: 157 | positiveButton: 158 | altNegativeButton: 159 | altPositiveButton: 160 | gravity: 0 161 | dead: 0.19 162 | sensitivity: 1 163 | snap: 0 164 | invert: 0 165 | type: 2 166 | axis: 0 167 | joyNum: 0 168 | - serializedVersion: 3 169 | m_Name: Vertical 170 | descriptiveName: 171 | descriptiveNegativeName: 172 | negativeButton: 173 | positiveButton: 174 | altNegativeButton: 175 | altPositiveButton: 176 | gravity: 0 177 | dead: 0.19 178 | sensitivity: 1 179 | snap: 0 180 | invert: 1 181 | type: 2 182 | axis: 1 183 | joyNum: 0 184 | - serializedVersion: 3 185 | m_Name: Fire1 186 | descriptiveName: 187 | descriptiveNegativeName: 188 | negativeButton: 189 | positiveButton: joystick button 0 190 | altNegativeButton: 191 | altPositiveButton: 192 | gravity: 1000 193 | dead: 0.001 194 | sensitivity: 1000 195 | snap: 0 196 | invert: 0 197 | type: 0 198 | axis: 0 199 | joyNum: 0 200 | - serializedVersion: 3 201 | m_Name: Fire2 202 | descriptiveName: 203 | descriptiveNegativeName: 204 | negativeButton: 205 | positiveButton: joystick button 1 206 | altNegativeButton: 207 | altPositiveButton: 208 | gravity: 1000 209 | dead: 0.001 210 | sensitivity: 1000 211 | snap: 0 212 | invert: 0 213 | type: 0 214 | axis: 0 215 | joyNum: 0 216 | - serializedVersion: 3 217 | m_Name: Fire3 218 | descriptiveName: 219 | descriptiveNegativeName: 220 | negativeButton: 221 | positiveButton: joystick button 2 222 | altNegativeButton: 223 | altPositiveButton: 224 | gravity: 1000 225 | dead: 0.001 226 | sensitivity: 1000 227 | snap: 0 228 | invert: 0 229 | type: 0 230 | axis: 0 231 | joyNum: 0 232 | - serializedVersion: 3 233 | m_Name: Jump 234 | descriptiveName: 235 | descriptiveNegativeName: 236 | negativeButton: 237 | positiveButton: joystick button 3 238 | altNegativeButton: 239 | altPositiveButton: 240 | gravity: 1000 241 | dead: 0.001 242 | sensitivity: 1000 243 | snap: 0 244 | invert: 0 245 | type: 0 246 | axis: 0 247 | joyNum: 0 248 | - serializedVersion: 3 249 | m_Name: Submit 250 | descriptiveName: 251 | descriptiveNegativeName: 252 | negativeButton: 253 | positiveButton: return 254 | altNegativeButton: 255 | altPositiveButton: joystick button 0 256 | gravity: 1000 257 | dead: 0.001 258 | sensitivity: 1000 259 | snap: 0 260 | invert: 0 261 | type: 0 262 | axis: 0 263 | joyNum: 0 264 | - serializedVersion: 3 265 | m_Name: Submit 266 | descriptiveName: 267 | descriptiveNegativeName: 268 | negativeButton: 269 | positiveButton: enter 270 | altNegativeButton: 271 | altPositiveButton: space 272 | gravity: 1000 273 | dead: 0.001 274 | sensitivity: 1000 275 | snap: 0 276 | invert: 0 277 | type: 0 278 | axis: 0 279 | joyNum: 0 280 | - serializedVersion: 3 281 | m_Name: Cancel 282 | descriptiveName: 283 | descriptiveNegativeName: 284 | negativeButton: 285 | positiveButton: escape 286 | altNegativeButton: 287 | altPositiveButton: joystick button 1 288 | gravity: 1000 289 | dead: 0.001 290 | sensitivity: 1000 291 | snap: 0 292 | invert: 0 293 | type: 0 294 | axis: 0 295 | joyNum: 0 296 | -------------------------------------------------------------------------------- /ProjectSettings/NavMeshAreas.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!126 &1 4 | NavMeshAreas: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 2 7 | areas: 8 | - name: Walkable 9 | cost: 1 10 | - name: Not Walkable 11 | cost: 1 12 | - name: Jump 13 | cost: 2 14 | - name: 15 | cost: 1 16 | - name: 17 | cost: 1 18 | - name: 19 | cost: 1 20 | - name: 21 | cost: 1 22 | - name: 23 | cost: 1 24 | - name: 25 | cost: 1 26 | - name: 27 | cost: 1 28 | - name: 29 | cost: 1 30 | - name: 31 | cost: 1 32 | - name: 33 | cost: 1 34 | - name: 35 | cost: 1 36 | - name: 37 | cost: 1 38 | - name: 39 | cost: 1 40 | - name: 41 | cost: 1 42 | - name: 43 | cost: 1 44 | - name: 45 | cost: 1 46 | - name: 47 | cost: 1 48 | - name: 49 | cost: 1 50 | - name: 51 | cost: 1 52 | - name: 53 | cost: 1 54 | - name: 55 | cost: 1 56 | - name: 57 | cost: 1 58 | - name: 59 | cost: 1 60 | - name: 61 | cost: 1 62 | - name: 63 | cost: 1 64 | - name: 65 | cost: 1 66 | - name: 67 | cost: 1 68 | - name: 69 | cost: 1 70 | - name: 71 | cost: 1 72 | -------------------------------------------------------------------------------- /ProjectSettings/NetworkManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!149 &1 4 | NetworkManager: 5 | m_ObjectHideFlags: 0 6 | m_DebugLevel: 0 7 | m_Sendrate: 15 8 | m_AssetToPrefab: {} 9 | -------------------------------------------------------------------------------- /ProjectSettings/Physics2DSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!19 &1 4 | Physics2DSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 2 7 | m_Gravity: {x: 0, y: -9.81} 8 | m_DefaultMaterial: {fileID: 0} 9 | m_VelocityIterations: 8 10 | m_PositionIterations: 3 11 | m_VelocityThreshold: 1 12 | m_MaxLinearCorrection: 0.2 13 | m_MaxAngularCorrection: 8 14 | m_MaxTranslationSpeed: 100 15 | m_MaxRotationSpeed: 360 16 | m_MinPenetrationForPenalty: 0.01 17 | m_BaumgarteScale: 0.2 18 | m_BaumgarteTimeOfImpactScale: 0.75 19 | m_TimeToSleep: 0.5 20 | m_LinearSleepTolerance: 0.01 21 | m_AngularSleepTolerance: 2 22 | m_QueriesHitTriggers: 1 23 | m_QueriesStartInColliders: 1 24 | m_ChangeStopsCallbacks: 0 25 | m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 26 | -------------------------------------------------------------------------------- /ProjectSettings/ProjectSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!129 &1 4 | PlayerSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 8 7 | productGUID: 8a045fa9e8c9c4b439a21a066fe43bef 8 | AndroidProfiler: 0 9 | defaultScreenOrientation: 4 10 | targetDevice: 2 11 | useOnDemandResources: 0 12 | accelerometerFrequency: 60 13 | companyName: DefaultCompany 14 | productName: CursorControl 15 | defaultCursor: {fileID: 0} 16 | cursorHotspot: {x: 0, y: 0} 17 | m_SplashScreenStyle: 0 18 | m_ShowUnitySplashScreen: 1 19 | m_VirtualRealitySplashScreen: {fileID: 0} 20 | defaultScreenWidth: 1024 21 | defaultScreenHeight: 768 22 | defaultScreenWidthWeb: 960 23 | defaultScreenHeightWeb: 600 24 | m_RenderingPath: 1 25 | m_MobileRenderingPath: 1 26 | m_ActiveColorSpace: 0 27 | m_MTRendering: 1 28 | m_MobileMTRendering: 0 29 | m_StackTraceTypes: 010000000100000001000000010000000100000001000000 30 | iosShowActivityIndicatorOnLoading: -1 31 | androidShowActivityIndicatorOnLoading: -1 32 | iosAppInBackgroundBehavior: 0 33 | displayResolutionDialog: 1 34 | iosAllowHTTPDownload: 1 35 | allowedAutorotateToPortrait: 1 36 | allowedAutorotateToPortraitUpsideDown: 1 37 | allowedAutorotateToLandscapeRight: 1 38 | allowedAutorotateToLandscapeLeft: 1 39 | useOSAutorotation: 1 40 | use32BitDisplayBuffer: 1 41 | disableDepthAndStencilBuffers: 0 42 | defaultIsFullScreen: 1 43 | defaultIsNativeResolution: 1 44 | runInBackground: 0 45 | captureSingleScreen: 0 46 | Override IPod Music: 0 47 | Prepare IOS For Recording: 0 48 | submitAnalytics: 1 49 | usePlayerLog: 1 50 | bakeCollisionMeshes: 0 51 | forceSingleInstance: 0 52 | resizableWindow: 0 53 | useMacAppStoreValidation: 0 54 | gpuSkinning: 0 55 | graphicsJobs: 0 56 | xboxPIXTextureCapture: 0 57 | xboxEnableAvatar: 0 58 | xboxEnableKinect: 0 59 | xboxEnableKinectAutoTracking: 0 60 | xboxEnableFitness: 0 61 | visibleInBackground: 0 62 | allowFullscreenSwitch: 1 63 | macFullscreenMode: 2 64 | d3d9FullscreenMode: 1 65 | d3d11FullscreenMode: 1 66 | xboxSpeechDB: 0 67 | xboxEnableHeadOrientation: 0 68 | xboxEnableGuest: 0 69 | xboxEnablePIXSampling: 0 70 | n3dsDisableStereoscopicView: 0 71 | n3dsEnableSharedListOpt: 1 72 | n3dsEnableVSync: 0 73 | uiUse16BitDepthBuffer: 0 74 | ignoreAlphaClear: 0 75 | xboxOneResolution: 0 76 | xboxOneMonoLoggingLevel: 0 77 | ps3SplashScreen: {fileID: 0} 78 | videoMemoryForVertexBuffers: 0 79 | psp2PowerMode: 0 80 | psp2AcquireBGM: 1 81 | wiiUTVResolution: 0 82 | wiiUGamePadMSAA: 1 83 | wiiUSupportsNunchuk: 0 84 | wiiUSupportsClassicController: 0 85 | wiiUSupportsBalanceBoard: 0 86 | wiiUSupportsMotionPlus: 0 87 | wiiUSupportsProController: 0 88 | wiiUAllowScreenCapture: 1 89 | wiiUControllerCount: 0 90 | m_SupportedAspectRatios: 91 | 4:3: 1 92 | 5:4: 1 93 | 16:10: 1 94 | 16:9: 1 95 | Others: 1 96 | bundleIdentifier: com.Company.ProductName 97 | bundleVersion: 1.0 98 | preloadedAssets: [] 99 | metroEnableIndependentInputSource: 0 100 | xboxOneDisableKinectGpuReservation: 0 101 | singlePassStereoRendering: 0 102 | protectGraphicsMemory: 0 103 | AndroidBundleVersionCode: 1 104 | AndroidMinSdkVersion: 9 105 | AndroidPreferredInstallLocation: 1 106 | aotOptions: 107 | apiCompatibilityLevel: 2 108 | stripEngineCode: 1 109 | iPhoneStrippingLevel: 0 110 | iPhoneScriptCallOptimization: 0 111 | iPhoneBuildNumber: 0 112 | ForceInternetPermission: 0 113 | ForceSDCardPermission: 0 114 | CreateWallpaper: 0 115 | APKExpansionFiles: 0 116 | preloadShaders: 0 117 | StripUnusedMeshComponents: 0 118 | VertexChannelCompressionMask: 119 | serializedVersion: 2 120 | m_Bits: 238 121 | iPhoneSdkVersion: 988 122 | iPhoneTargetOSVersion: 22 123 | tvOSSdkVersion: 0 124 | tvOSTargetOSVersion: 900 125 | uIPrerenderedIcon: 0 126 | uIRequiresPersistentWiFi: 0 127 | uIRequiresFullScreen: 1 128 | uIStatusBarHidden: 1 129 | uIExitOnSuspend: 0 130 | uIStatusBarStyle: 0 131 | iPhoneSplashScreen: {fileID: 0} 132 | iPhoneHighResSplashScreen: {fileID: 0} 133 | iPhoneTallHighResSplashScreen: {fileID: 0} 134 | iPhone47inSplashScreen: {fileID: 0} 135 | iPhone55inPortraitSplashScreen: {fileID: 0} 136 | iPhone55inLandscapeSplashScreen: {fileID: 0} 137 | iPadPortraitSplashScreen: {fileID: 0} 138 | iPadHighResPortraitSplashScreen: {fileID: 0} 139 | iPadLandscapeSplashScreen: {fileID: 0} 140 | iPadHighResLandscapeSplashScreen: {fileID: 0} 141 | appleTVSplashScreen: {fileID: 0} 142 | tvOSSmallIconLayers: [] 143 | tvOSLargeIconLayers: [] 144 | tvOSTopShelfImageLayers: [] 145 | iOSLaunchScreenType: 0 146 | iOSLaunchScreenPortrait: {fileID: 0} 147 | iOSLaunchScreenLandscape: {fileID: 0} 148 | iOSLaunchScreenBackgroundColor: 149 | serializedVersion: 2 150 | rgba: 0 151 | iOSLaunchScreenFillPct: 100 152 | iOSLaunchScreenSize: 100 153 | iOSLaunchScreenCustomXibPath: 154 | iOSLaunchScreeniPadType: 0 155 | iOSLaunchScreeniPadImage: {fileID: 0} 156 | iOSLaunchScreeniPadBackgroundColor: 157 | serializedVersion: 2 158 | rgba: 0 159 | iOSLaunchScreeniPadFillPct: 100 160 | iOSLaunchScreeniPadSize: 100 161 | iOSLaunchScreeniPadCustomXibPath: 162 | iOSDeviceRequirements: [] 163 | iOSURLSchemes: [] 164 | AndroidTargetDevice: 0 165 | AndroidSplashScreenScale: 0 166 | androidSplashScreen: {fileID: 0} 167 | AndroidKeystoreName: 168 | AndroidKeyaliasName: 169 | AndroidTVCompatibility: 1 170 | AndroidIsGame: 1 171 | androidEnableBanner: 1 172 | m_AndroidBanners: 173 | - width: 320 174 | height: 180 175 | banner: {fileID: 0} 176 | androidGamepadSupportLevel: 0 177 | resolutionDialogBanner: {fileID: 0} 178 | m_BuildTargetIcons: [] 179 | m_BuildTargetBatching: [] 180 | m_BuildTargetGraphicsAPIs: [] 181 | webPlayerTemplate: APPLICATION:Default 182 | m_TemplateCustomTags: {} 183 | wiiUTitleID: 0005000011000000 184 | wiiUGroupID: 00010000 185 | wiiUCommonSaveSize: 4096 186 | wiiUAccountSaveSize: 2048 187 | wiiUOlvAccessKey: 0 188 | wiiUTinCode: 0 189 | wiiUJoinGameId: 0 190 | wiiUJoinGameModeMask: 0000000000000000 191 | wiiUCommonBossSize: 0 192 | wiiUAccountBossSize: 0 193 | wiiUAddOnUniqueIDs: [] 194 | wiiUMainThreadStackSize: 3072 195 | wiiULoaderThreadStackSize: 1024 196 | wiiUSystemHeapSize: 128 197 | wiiUTVStartupScreen: {fileID: 0} 198 | wiiUGamePadStartupScreen: {fileID: 0} 199 | wiiUProfilerLibPath: 200 | actionOnDotNetUnhandledException: 1 201 | enableInternalProfiler: 0 202 | logObjCUncaughtExceptions: 1 203 | enableCrashReportAPI: 0 204 | locationUsageDescription: 205 | XboxTitleId: 206 | XboxImageXexPath: 207 | XboxSpaPath: 208 | XboxGenerateSpa: 0 209 | XboxDeployKinectResources: 0 210 | XboxSplashScreen: {fileID: 0} 211 | xboxEnableSpeech: 0 212 | xboxAdditionalTitleMemorySize: 0 213 | xboxDeployKinectHeadOrientation: 0 214 | xboxDeployKinectHeadPosition: 0 215 | ps3TitleConfigPath: 216 | ps3DLCConfigPath: 217 | ps3ThumbnailPath: 218 | ps3BackgroundPath: 219 | ps3SoundPath: 220 | ps3NPAgeRating: 12 221 | ps3TrophyCommId: 222 | ps3NpCommunicationPassphrase: 223 | ps3TrophyPackagePath: 224 | ps3BootCheckMaxSaveGameSizeKB: 128 225 | ps3TrophyCommSig: 226 | ps3SaveGameSlots: 1 227 | ps3TrialMode: 0 228 | ps3VideoMemoryForAudio: 0 229 | ps3EnableVerboseMemoryStats: 0 230 | ps3UseSPUForUmbra: 0 231 | ps3EnableMoveSupport: 1 232 | ps3DisableDolbyEncoding: 0 233 | ps4NPAgeRating: 12 234 | ps4NPTitleSecret: 235 | ps4NPTrophyPackPath: 236 | ps4ParentalLevel: 1 237 | ps4ContentID: ED1633-NPXX51362_00-0000000000000000 238 | ps4Category: 0 239 | ps4MasterVersion: 01.00 240 | ps4AppVersion: 01.00 241 | ps4AppType: 0 242 | ps4ParamSfxPath: 243 | ps4VideoOutPixelFormat: 0 244 | ps4VideoOutResolution: 4 245 | ps4PronunciationXMLPath: 246 | ps4PronunciationSIGPath: 247 | ps4BackgroundImagePath: 248 | ps4StartupImagePath: 249 | ps4SaveDataImagePath: 250 | ps4SdkOverride: 251 | ps4BGMPath: 252 | ps4ShareFilePath: 253 | ps4ShareOverlayImagePath: 254 | ps4PrivacyGuardImagePath: 255 | ps4NPtitleDatPath: 256 | ps4RemotePlayKeyAssignment: -1 257 | ps4RemotePlayKeyMappingDir: 258 | ps4PlayTogetherPlayerCount: 0 259 | ps4EnterButtonAssignment: 1 260 | ps4ApplicationParam1: 0 261 | ps4ApplicationParam2: 0 262 | ps4ApplicationParam3: 0 263 | ps4ApplicationParam4: 0 264 | ps4DownloadDataSize: 0 265 | ps4GarlicHeapSize: 2048 266 | ps4Passcode: frAQBc8Wsa1xVPfvJcrgRYwTiizs2trQ 267 | ps4UseDebugIl2cppLibs: 0 268 | ps4pnSessions: 1 269 | ps4pnPresence: 1 270 | ps4pnFriends: 1 271 | ps4pnGameCustomData: 1 272 | playerPrefsSupport: 0 273 | ps4ReprojectionSupport: 0 274 | ps4UseAudio3dBackend: 0 275 | ps4SocialScreenEnabled: 0 276 | ps4Audio3dVirtualSpeakerCount: 14 277 | ps4attribCpuUsage: 0 278 | ps4PatchPkgPath: 279 | ps4PatchLatestPkgPath: 280 | ps4PatchChangeinfoPath: 281 | ps4attribUserManagement: 0 282 | ps4attribMoveSupport: 0 283 | ps4attrib3DSupport: 0 284 | ps4attribShareSupport: 0 285 | ps4attribExclusiveVR: 0 286 | ps4disableAutoHideSplash: 0 287 | ps4IncludedModules: [] 288 | monoEnv: 289 | psp2Splashimage: {fileID: 0} 290 | psp2NPTrophyPackPath: 291 | psp2NPSupportGBMorGJP: 0 292 | psp2NPAgeRating: 12 293 | psp2NPTitleDatPath: 294 | psp2NPCommsID: 295 | psp2NPCommunicationsID: 296 | psp2NPCommsPassphrase: 297 | psp2NPCommsSig: 298 | psp2ParamSfxPath: 299 | psp2ManualPath: 300 | psp2LiveAreaGatePath: 301 | psp2LiveAreaBackroundPath: 302 | psp2LiveAreaPath: 303 | psp2LiveAreaTrialPath: 304 | psp2PatchChangeInfoPath: 305 | psp2PatchOriginalPackage: 306 | psp2PackagePassword: F69AzBlax3CF3EDNhm3soLBPh71Yexui 307 | psp2KeystoneFile: 308 | psp2MemoryExpansionMode: 0 309 | psp2DRMType: 0 310 | psp2StorageType: 0 311 | psp2MediaCapacity: 0 312 | psp2DLCConfigPath: 313 | psp2ThumbnailPath: 314 | psp2BackgroundPath: 315 | psp2SoundPath: 316 | psp2TrophyCommId: 317 | psp2TrophyPackagePath: 318 | psp2PackagedResourcesPath: 319 | psp2SaveDataQuota: 10240 320 | psp2ParentalLevel: 1 321 | psp2ShortTitle: Not Set 322 | psp2ContentID: IV0000-ABCD12345_00-0123456789ABCDEF 323 | psp2Category: 0 324 | psp2MasterVersion: 01.00 325 | psp2AppVersion: 01.00 326 | psp2TVBootMode: 0 327 | psp2EnterButtonAssignment: 2 328 | psp2TVDisableEmu: 0 329 | psp2AllowTwitterDialog: 1 330 | psp2Upgradable: 0 331 | psp2HealthWarning: 0 332 | psp2UseLibLocation: 0 333 | psp2InfoBarOnStartup: 0 334 | psp2InfoBarColor: 0 335 | psp2UseDebugIl2cppLibs: 0 336 | psmSplashimage: {fileID: 0} 337 | spritePackerPolicy: 338 | scriptingDefineSymbols: {} 339 | metroPackageName: CursorControl 340 | metroPackageVersion: 341 | metroCertificatePath: 342 | metroCertificatePassword: 343 | metroCertificateSubject: 344 | metroCertificateIssuer: 345 | metroCertificateNotAfter: 0000000000000000 346 | metroApplicationDescription: CursorControl 347 | wsaImages: {} 348 | metroTileShortName: 349 | metroCommandLineArgsFile: 350 | metroTileShowName: 0 351 | metroMediumTileShowName: 0 352 | metroLargeTileShowName: 0 353 | metroWideTileShowName: 0 354 | metroDefaultTileSize: 1 355 | metroTileForegroundText: 1 356 | metroTileBackgroundColor: {r: 0.13333334, g: 0.17254902, b: 0.21568628, a: 0} 357 | metroSplashScreenBackgroundColor: {r: 0.13333334, g: 0.17254902, b: 0.21568628, 358 | a: 1} 359 | metroSplashScreenUseBackgroundColor: 1 360 | platformCapabilities: {} 361 | metroFTAName: 362 | metroFTAFileTypes: [] 363 | metroProtocolName: 364 | metroCompilationOverrides: 1 365 | tizenProductDescription: 366 | tizenProductURL: 367 | tizenSigningProfileName: 368 | tizenGPSPermissions: 0 369 | tizenMicrophonePermissions: 0 370 | n3dsUseExtSaveData: 0 371 | n3dsCompressStaticMem: 1 372 | n3dsExtSaveDataNumber: 0x12345 373 | n3dsStackSize: 131072 374 | n3dsTargetPlatform: 2 375 | n3dsRegion: 7 376 | n3dsMediaSize: 0 377 | n3dsLogoStyle: 3 378 | n3dsTitle: GameName 379 | n3dsProductCode: 380 | n3dsApplicationId: 0xFF3FF 381 | stvDeviceAddress: 382 | stvProductDescription: 383 | stvProductAuthor: 384 | stvProductAuthorEmail: 385 | stvProductLink: 386 | stvProductCategory: 0 387 | XboxOneProductId: 388 | XboxOneUpdateKey: 389 | XboxOneSandboxId: 390 | XboxOneContentId: 391 | XboxOneTitleId: 392 | XboxOneSCId: 393 | XboxOneGameOsOverridePath: 394 | XboxOnePackagingOverridePath: 395 | XboxOneAppManifestOverridePath: 396 | XboxOnePackageEncryption: 0 397 | XboxOnePackageUpdateGranularity: 2 398 | XboxOneDescription: 399 | XboxOneIsContentPackage: 0 400 | XboxOneEnableGPUVariability: 0 401 | XboxOneSockets: {} 402 | XboxOneSplashScreen: {fileID: 0} 403 | XboxOneAllowedProductIds: [] 404 | XboxOnePersistentLocalStorageSize: 0 405 | intPropertyNames: 406 | - Android::ScriptingBackend 407 | - Standalone::ScriptingBackend 408 | - WebPlayer::ScriptingBackend 409 | Android::ScriptingBackend: 0 410 | Standalone::ScriptingBackend: 0 411 | WebPlayer::ScriptingBackend: 0 412 | boolPropertyNames: 413 | - Android::VR::enable 414 | - Metro::VR::enable 415 | - N3DS::VR::enable 416 | - PS3::VR::enable 417 | - PS4::VR::enable 418 | - PSM::VR::enable 419 | - PSP2::VR::enable 420 | - SamsungTV::VR::enable 421 | - Standalone::VR::enable 422 | - Tizen::VR::enable 423 | - WebGL::VR::enable 424 | - WebPlayer::VR::enable 425 | - WiiU::VR::enable 426 | - Xbox360::VR::enable 427 | - XboxOne::VR::enable 428 | - XboxOne::enus 429 | - iOS::VR::enable 430 | - tvOS::VR::enable 431 | Android::VR::enable: 0 432 | Metro::VR::enable: 0 433 | N3DS::VR::enable: 0 434 | PS3::VR::enable: 0 435 | PS4::VR::enable: 0 436 | PSM::VR::enable: 0 437 | PSP2::VR::enable: 0 438 | SamsungTV::VR::enable: 0 439 | Standalone::VR::enable: 0 440 | Tizen::VR::enable: 0 441 | WebGL::VR::enable: 0 442 | WebPlayer::VR::enable: 0 443 | WiiU::VR::enable: 0 444 | Xbox360::VR::enable: 0 445 | XboxOne::VR::enable: 0 446 | XboxOne::enus: 1 447 | iOS::VR::enable: 0 448 | tvOS::VR::enable: 0 449 | stringPropertyNames: 450 | - Analytics_ServiceEnabled::Analytics_ServiceEnabled 451 | - Build_ServiceEnabled::Build_ServiceEnabled 452 | - Collab_ServiceEnabled::Collab_ServiceEnabled 453 | - ErrorHub_ServiceEnabled::ErrorHub_ServiceEnabled 454 | - Game_Performance_ServiceEnabled::Game_Performance_ServiceEnabled 455 | - Hub_ServiceEnabled::Hub_ServiceEnabled 456 | - Purchasing_ServiceEnabled::Purchasing_ServiceEnabled 457 | - UNet_ServiceEnabled::UNet_ServiceEnabled 458 | - Unity_Ads_ServiceEnabled::Unity_Ads_ServiceEnabled 459 | Analytics_ServiceEnabled::Analytics_ServiceEnabled: False 460 | Build_ServiceEnabled::Build_ServiceEnabled: False 461 | Collab_ServiceEnabled::Collab_ServiceEnabled: False 462 | ErrorHub_ServiceEnabled::ErrorHub_ServiceEnabled: False 463 | Game_Performance_ServiceEnabled::Game_Performance_ServiceEnabled: False 464 | Hub_ServiceEnabled::Hub_ServiceEnabled: False 465 | Purchasing_ServiceEnabled::Purchasing_ServiceEnabled: False 466 | UNet_ServiceEnabled::UNet_ServiceEnabled: False 467 | Unity_Ads_ServiceEnabled::Unity_Ads_ServiceEnabled: False 468 | vectorPropertyNames: 469 | - Android::VR::enabledDevices 470 | - Metro::VR::enabledDevices 471 | - N3DS::VR::enabledDevices 472 | - PS3::VR::enabledDevices 473 | - PS4::VR::enabledDevices 474 | - PSM::VR::enabledDevices 475 | - PSP2::VR::enabledDevices 476 | - SamsungTV::VR::enabledDevices 477 | - Standalone::VR::enabledDevices 478 | - Tizen::VR::enabledDevices 479 | - WebGL::VR::enabledDevices 480 | - WebPlayer::VR::enabledDevices 481 | - WiiU::VR::enabledDevices 482 | - Xbox360::VR::enabledDevices 483 | - XboxOne::VR::enabledDevices 484 | - iOS::VR::enabledDevices 485 | - tvOS::VR::enabledDevices 486 | Android::VR::enabledDevices: 487 | - Oculus 488 | Metro::VR::enabledDevices: [] 489 | N3DS::VR::enabledDevices: [] 490 | PS3::VR::enabledDevices: [] 491 | PS4::VR::enabledDevices: 492 | - PlayStationVR 493 | PSM::VR::enabledDevices: [] 494 | PSP2::VR::enabledDevices: [] 495 | SamsungTV::VR::enabledDevices: [] 496 | Standalone::VR::enabledDevices: 497 | - Oculus 498 | Tizen::VR::enabledDevices: [] 499 | WebGL::VR::enabledDevices: [] 500 | WebPlayer::VR::enabledDevices: [] 501 | WiiU::VR::enabledDevices: [] 502 | Xbox360::VR::enabledDevices: [] 503 | XboxOne::VR::enabledDevices: [] 504 | iOS::VR::enabledDevices: [] 505 | tvOS::VR::enabledDevices: [] 506 | cloudProjectId: 507 | projectName: 508 | organizationId: 509 | cloudEnabled: 0 510 | -------------------------------------------------------------------------------- /ProjectSettings/ProjectVersion.txt: -------------------------------------------------------------------------------- 1 | m_EditorVersion: 5.4.0f3 2 | m_StandardAssetsVersion: 0 3 | -------------------------------------------------------------------------------- /ProjectSettings/QualitySettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!47 &1 4 | QualitySettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 5 7 | m_CurrentQuality: 5 8 | m_QualitySettings: 9 | - serializedVersion: 2 10 | name: Fastest 11 | pixelLightCount: 0 12 | shadows: 0 13 | shadowResolution: 0 14 | shadowProjection: 1 15 | shadowCascades: 1 16 | shadowDistance: 15 17 | shadowNearPlaneOffset: 2 18 | shadowCascade2Split: 0.33333334 19 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} 20 | blendWeights: 1 21 | textureQuality: 1 22 | anisotropicTextures: 0 23 | antiAliasing: 0 24 | softParticles: 0 25 | softVegetation: 0 26 | realtimeReflectionProbes: 0 27 | billboardsFaceCameraPosition: 0 28 | vSyncCount: 0 29 | lodBias: 0.3 30 | maximumLODLevel: 0 31 | particleRaycastBudget: 4 32 | asyncUploadTimeSlice: 2 33 | asyncUploadBufferSize: 4 34 | excludedTargetPlatforms: [] 35 | - serializedVersion: 2 36 | name: Fast 37 | pixelLightCount: 0 38 | shadows: 0 39 | shadowResolution: 0 40 | shadowProjection: 1 41 | shadowCascades: 1 42 | shadowDistance: 20 43 | shadowNearPlaneOffset: 2 44 | shadowCascade2Split: 0.33333334 45 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} 46 | blendWeights: 2 47 | textureQuality: 0 48 | anisotropicTextures: 0 49 | antiAliasing: 0 50 | softParticles: 0 51 | softVegetation: 0 52 | realtimeReflectionProbes: 0 53 | billboardsFaceCameraPosition: 0 54 | vSyncCount: 0 55 | lodBias: 0.4 56 | maximumLODLevel: 0 57 | particleRaycastBudget: 16 58 | asyncUploadTimeSlice: 2 59 | asyncUploadBufferSize: 4 60 | excludedTargetPlatforms: [] 61 | - serializedVersion: 2 62 | name: Simple 63 | pixelLightCount: 1 64 | shadows: 1 65 | shadowResolution: 0 66 | shadowProjection: 1 67 | shadowCascades: 1 68 | shadowDistance: 20 69 | shadowNearPlaneOffset: 2 70 | shadowCascade2Split: 0.33333334 71 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} 72 | blendWeights: 2 73 | textureQuality: 0 74 | anisotropicTextures: 1 75 | antiAliasing: 0 76 | softParticles: 0 77 | softVegetation: 0 78 | realtimeReflectionProbes: 0 79 | billboardsFaceCameraPosition: 0 80 | vSyncCount: 0 81 | lodBias: 0.7 82 | maximumLODLevel: 0 83 | particleRaycastBudget: 64 84 | asyncUploadTimeSlice: 2 85 | asyncUploadBufferSize: 4 86 | excludedTargetPlatforms: [] 87 | - serializedVersion: 2 88 | name: Good 89 | pixelLightCount: 2 90 | shadows: 2 91 | shadowResolution: 1 92 | shadowProjection: 1 93 | shadowCascades: 2 94 | shadowDistance: 40 95 | shadowNearPlaneOffset: 2 96 | shadowCascade2Split: 0.33333334 97 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} 98 | blendWeights: 2 99 | textureQuality: 0 100 | anisotropicTextures: 1 101 | antiAliasing: 0 102 | softParticles: 0 103 | softVegetation: 1 104 | realtimeReflectionProbes: 1 105 | billboardsFaceCameraPosition: 1 106 | vSyncCount: 1 107 | lodBias: 1 108 | maximumLODLevel: 0 109 | particleRaycastBudget: 256 110 | asyncUploadTimeSlice: 2 111 | asyncUploadBufferSize: 4 112 | excludedTargetPlatforms: [] 113 | - serializedVersion: 2 114 | name: Beautiful 115 | pixelLightCount: 3 116 | shadows: 2 117 | shadowResolution: 2 118 | shadowProjection: 1 119 | shadowCascades: 2 120 | shadowDistance: 70 121 | shadowNearPlaneOffset: 2 122 | shadowCascade2Split: 0.33333334 123 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} 124 | blendWeights: 4 125 | textureQuality: 0 126 | anisotropicTextures: 2 127 | antiAliasing: 2 128 | softParticles: 1 129 | softVegetation: 1 130 | realtimeReflectionProbes: 1 131 | billboardsFaceCameraPosition: 1 132 | vSyncCount: 1 133 | lodBias: 1.5 134 | maximumLODLevel: 0 135 | particleRaycastBudget: 1024 136 | asyncUploadTimeSlice: 2 137 | asyncUploadBufferSize: 4 138 | excludedTargetPlatforms: [] 139 | - serializedVersion: 2 140 | name: Fantastic 141 | pixelLightCount: 4 142 | shadows: 2 143 | shadowResolution: 2 144 | shadowProjection: 1 145 | shadowCascades: 4 146 | shadowDistance: 150 147 | shadowNearPlaneOffset: 2 148 | shadowCascade2Split: 0.33333334 149 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} 150 | blendWeights: 4 151 | textureQuality: 0 152 | anisotropicTextures: 2 153 | antiAliasing: 2 154 | softParticles: 1 155 | softVegetation: 1 156 | realtimeReflectionProbes: 1 157 | billboardsFaceCameraPosition: 1 158 | vSyncCount: 1 159 | lodBias: 2 160 | maximumLODLevel: 0 161 | particleRaycastBudget: 4096 162 | asyncUploadTimeSlice: 2 163 | asyncUploadBufferSize: 4 164 | excludedTargetPlatforms: [] 165 | m_PerPlatformDefaultQuality: 166 | Android: 2 167 | BlackBerry: 2 168 | GLES Emulation: 5 169 | Nintendo 3DS: 5 170 | PS3: 5 171 | PS4: 5 172 | PSM: 5 173 | PSP2: 2 174 | Samsung TV: 2 175 | Standalone: 5 176 | Tizen: 2 177 | WP8: 5 178 | Web: 5 179 | WebGL: 3 180 | WiiU: 5 181 | Windows Store Apps: 5 182 | XBOX360: 5 183 | XboxOne: 5 184 | iPhone: 2 185 | tvOS: 5 186 | -------------------------------------------------------------------------------- /ProjectSettings/TagManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!78 &1 4 | TagManager: 5 | serializedVersion: 2 6 | tags: [] 7 | layers: 8 | - Default 9 | - TransparentFX 10 | - Ignore Raycast 11 | - 12 | - Water 13 | - UI 14 | - 15 | - 16 | - 17 | - 18 | - 19 | - 20 | - 21 | - 22 | - 23 | - 24 | - 25 | - 26 | - 27 | - 28 | - 29 | - 30 | - 31 | - 32 | - 33 | - 34 | - 35 | - 36 | - 37 | - 38 | - 39 | - 40 | m_SortingLayers: 41 | - name: Default 42 | uniqueID: 0 43 | locked: 0 44 | -------------------------------------------------------------------------------- /ProjectSettings/TimeManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!5 &1 4 | TimeManager: 5 | m_ObjectHideFlags: 0 6 | Fixed Timestep: 0.02 7 | Maximum Allowed Timestep: 0.33333334 8 | m_TimeScale: 1 9 | -------------------------------------------------------------------------------- /ProjectSettings/UnityAdsSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!292 &1 4 | UnityAdsSettings: 5 | m_ObjectHideFlags: 0 6 | m_Enabled: 0 7 | m_InitializeOnStartup: 1 8 | m_TestMode: 0 9 | m_EnabledPlatforms: 4294967295 10 | m_IosGameId: 11 | m_AndroidGameId: 12 | -------------------------------------------------------------------------------- /ProjectSettings/UnityConnectSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!310 &1 4 | UnityConnectSettings: 5 | m_ObjectHideFlags: 0 6 | UnityPurchasingSettings: 7 | m_Enabled: 0 8 | m_TestMode: 0 9 | UnityAnalyticsSettings: 10 | m_Enabled: 0 11 | m_InitializeOnStartup: 1 12 | m_TestMode: 0 13 | m_TestEventUrl: 14 | m_TestConfigUrl: 15 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # CursorControl 2 | 3 | A mouse cursor control module for Unity3D. It allows you to get and set the global mouse cursor position (relative to the OS), set the local mouse cursor position (relative to the unity game window), and simulate left, middle and right clicks. 4 | 5 | Currently supporting Windows only. 6 | 7 | A compiled version of this package is available on the Unity Asset Store: [http://u3d.as/wbv](http://u3d.as/wbv). 8 | 9 | ## Usage Example 10 | 11 | The cursor control module has the following static methods: 12 | 13 | * Vector2 CursorControl.GetGlobalCursorPos() 14 | * void CursorControl.SetGlobalCursorPos(Vector2 pos) 15 | * void CursorControl.SetLocalCursorPos(Vector2 pos) 16 | * void CursorControl.SimulateLeftClick() 17 | * void CursorControl.SimulateMiddleClick() 18 | * void CursorControl.SimulateRightClick() 19 | 20 | Note: Operating Systems such as Windows consider the origin position of the mouse cursor to be the top-left corner of the display, whereas Unity considers it to be the bottom-left corner of the game window. 21 | 22 | See the CursorControlExample scene for a simple example. 23 | 24 | ## Release History 25 | 26 | * 1.1 (August 16, 2016) 27 | * Added functions to simulate left, middle and right clicks 28 | * Added unit tests to github repo 29 | * 1.0 (June 29, 2016) 30 | * Initial Release 31 | 32 | ## Known Issues 33 | 34 | * If your mouse cursor is outside the Unity game window when calling the SetLocalCursorPos() function, it may set it to an inaccurate position. 35 | * If you run Unity builds in full screen mode at a non-native resolution and call the SetLocalCursorPos() function, it may set it to an inaccurate position. 36 | 37 | ## Contributing 38 | 39 | Feel free to contribute and add a pull request to the github project. In particular, supporting extra platforms would be useful. 40 | 41 | ## Author 42 | 43 | This module was written by znebby. 44 | 45 | ## License 46 | 47 | This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details. --------------------------------------------------------------------------------