From a3b19da5510766eefc9bc16b2286258a30c2adc1 Mon Sep 17 00:00:00 2001 From: Kayne Ruse Date: Sat, 18 Apr 2020 18:14:51 +1000 Subject: [PATCH] Working on it --- .gitignore | 38 + Assets/Animations.meta | 8 + Assets/Animations/Fire.controller | 240 ++ Assets/Animations/Fire.controller.meta | 8 + Assets/Animations/Fire_Large.anim | 74 + Assets/Animations/Fire_Large.anim.meta | 8 + Assets/Animations/Fire_Medium.anim | 74 + Assets/Animations/Fire_Medium.anim.meta | 8 + Assets/Animations/Fire_Small.anim | 74 + Assets/Animations/Fire_Small.anim.meta | 8 + Assets/CarbonInput.meta | 8 + Assets/CarbonInput/CheatSheet.pdf | Bin 0 -> 166011 bytes Assets/CarbonInput/CheatSheet.pdf.meta | 8 + Assets/CarbonInput/Documentation.pdf | Bin 0 -> 358205 bytes Assets/CarbonInput/Documentation.pdf.meta | 8 + Assets/CarbonInput/Editor.meta | 9 + .../Editor/CarbonInputEditor.asmdef | 10 + .../Editor/CarbonInputEditor.asmdef.meta | 9 + .../CarbonInput/Editor/CarbonInputMapper.cs | 155 + .../Editor/CarbonInputMapper.cs.meta | 12 + .../CarbonInput/Editor/CarbonMappingEditor.cs | 159 + .../Editor/CarbonMappingEditor.cs.meta | 12 + .../Editor/CarbonSettingsEditor.cs | 63 + .../Editor/CarbonSettingsEditor.cs.meta | 12 + Assets/CarbonInput/Editor/ReInitEditor.cs | 11 + .../CarbonInput/Editor/ReInitEditor.cs.meta | 12 + Assets/CarbonInput/Gizmos.meta | 9 + .../Gizmos/CarbonController Icon.png | Bin 0 -> 19433 bytes .../Gizmos/CarbonController Icon.png.meta | 57 + .../Gizmos/CarbonSettings Icon.png | Bin 0 -> 17075 bytes .../Gizmos/CarbonSettings Icon.png.meta | 57 + Assets/CarbonInput/Gizmos/readme.txt | 1 + Assets/CarbonInput/Gizmos/readme.txt.meta | 8 + Assets/CarbonInput/Graphics.meta | 9 + Assets/CarbonInput/Graphics/Dark.png | Bin 0 -> 1734 bytes Assets/CarbonInput/Graphics/Dark.png.meta | 92 + Assets/CarbonInput/Graphics/DarkA.png | Bin 0 -> 2120 bytes Assets/CarbonInput/Graphics/DarkA.png.meta | 92 + Assets/CarbonInput/Graphics/DarkArrow.png | Bin 0 -> 870 bytes .../CarbonInput/Graphics/DarkArrow.png.meta | 92 + Assets/CarbonInput/Graphics/DarkB.png | Bin 0 -> 2073 bytes Assets/CarbonInput/Graphics/DarkB.png.meta | 92 + Assets/CarbonInput/Graphics/DarkBase.png | Bin 0 -> 8468 bytes Assets/CarbonInput/Graphics/DarkBase.png.meta | 92 + Assets/CarbonInput/Graphics/DarkStick.png | Bin 0 -> 4557 bytes .../CarbonInput/Graphics/DarkStick.png.meta | 92 + Assets/CarbonInput/Graphics/DarkX.png | Bin 0 -> 2612 bytes Assets/CarbonInput/Graphics/DarkX.png.meta | 92 + Assets/CarbonInput/Graphics/DarkY.png | Bin 0 -> 2147 bytes Assets/CarbonInput/Graphics/DarkY.png.meta | 92 + Assets/CarbonInput/Graphics/Light.png | Bin 0 -> 1973 bytes Assets/CarbonInput/Graphics/Light.png.meta | 92 + Assets/CarbonInput/Graphics/LightArrow.png | Bin 0 -> 1178 bytes .../CarbonInput/Graphics/LightArrow.png.meta | 92 + Assets/CarbonInput/Graphics/LightBase.png | Bin 0 -> 8433 bytes .../CarbonInput/Graphics/LightBase.png.meta | 92 + Assets/CarbonInput/Graphics/LightStick.png | Bin 0 -> 3076 bytes .../CarbonInput/Graphics/LightStick.png.meta | 92 + Assets/CarbonInput/Prefabs.meta | 9 + Assets/CarbonInput/Prefabs/ABXY.prefab | 381 +++ Assets/CarbonInput/Prefabs/ABXY.prefab.meta | 8 + Assets/CarbonInput/Prefabs/ButtonA.prefab | 96 + .../CarbonInput/Prefabs/ButtonA.prefab.meta | 8 + Assets/CarbonInput/Prefabs/ButtonB.prefab | 96 + .../CarbonInput/Prefabs/ButtonB.prefab.meta | 8 + Assets/CarbonInput/Prefabs/ButtonDark.prefab | 96 + .../Prefabs/ButtonDark.prefab.meta | 8 + Assets/CarbonInput/Prefabs/ButtonLight.prefab | 96 + .../Prefabs/ButtonLight.prefab.meta | 8 + Assets/CarbonInput/Prefabs/ButtonX.prefab | 96 + .../CarbonInput/Prefabs/ButtonX.prefab.meta | 8 + Assets/CarbonInput/Prefabs/ButtonY.prefab | 96 + .../CarbonInput/Prefabs/ButtonY.prefab.meta | 8 + Assets/CarbonInput/Prefabs/DarkLeft.prefab | 112 + .../CarbonInput/Prefabs/DarkLeft.prefab.meta | 8 + Assets/CarbonInput/Prefabs/DarkRight.prefab | 112 + .../CarbonInput/Prefabs/DarkRight.prefab.meta | 8 + .../CarbonInput/Prefabs/JoystickDark.prefab | 267 ++ .../Prefabs/JoystickDark.prefab.meta | 8 + .../CarbonInput/Prefabs/JoystickLight.prefab | 243 ++ .../Prefabs/JoystickLight.prefab.meta | 8 + Assets/CarbonInput/Prefabs/LightLeft.prefab | 112 + .../CarbonInput/Prefabs/LightLeft.prefab.meta | 8 + Assets/CarbonInput/Prefabs/LightRight.prefab | 120 + .../Prefabs/LightRight.prefab.meta | 8 + .../Prefabs/ScalableTouchControls.prefab | 900 ++++++ .../Prefabs/ScalableTouchControls.prefab.meta | 8 + Assets/CarbonInput/Resources.meta | 9 + .../CarbonInput/Resources/CarbonInput.asset | 15 + .../Resources/CarbonInput.asset.meta | 8 + Assets/CarbonInput/Resources/Mappings.meta | 9 + .../Resources/Mappings/IpegaAndroid.asset | 112 + .../Mappings/IpegaAndroid.asset.meta | 8 + .../Resources/Mappings/IpegaPC.asset | 112 + .../Resources/Mappings/IpegaPC.asset.meta | 8 + .../Resources/Mappings/Keyboard.asset | 114 + .../Resources/Mappings/Keyboard.asset.meta | 8 + .../Resources/Mappings/Keyboard1.asset | 114 + .../Resources/Mappings/Keyboard1.asset.meta | 8 + .../CarbonInput/Resources/Mappings/PS3.asset | 112 + .../Resources/Mappings/PS3.asset.meta | 13 + .../CarbonInput/Resources/Mappings/PS4.asset | 114 + .../Resources/Mappings/PS4.asset.meta | 13 + .../Resources/Mappings/PS4Linux.asset | 114 + .../Resources/Mappings/PS4Linux.asset.meta | 13 + .../Resources/Mappings/PS4_Android.asset | 112 + .../Resources/Mappings/PS4_Android.asset.meta | 8 + .../Resources/Mappings/PS4_Mac.asset | 114 + .../Resources/Mappings/PS4_Mac.asset.meta | 8 + .../Resources/Mappings/PS4_bluetooth.asset | 114 + .../Mappings/PS4_bluetooth.asset.meta | 8 + .../Resources/Mappings/WebGL.asset | 114 + .../Resources/Mappings/WebGL.asset.meta | 13 + .../Resources/Mappings/XBox360.asset | 112 + .../Resources/Mappings/XBox360.asset.meta | 13 + .../Resources/Mappings/XBox360Linux.asset | 114 + .../Mappings/XBox360Linux.asset.meta | 13 + .../Resources/Mappings/XBox360Mac.asset | 112 + .../Resources/Mappings/XBox360Mac.asset.meta | 13 + .../Resources/Mappings/XBox360Wired.asset | 112 + .../Mappings/XBox360Wired.asset.meta | 13 + .../Resources/Mappings/XboxOne.asset | 112 + .../Resources/Mappings/XboxOne.asset.meta | 13 + Assets/CarbonInput/Scripts.meta | 9 + .../CarbonInput/Scripts/CarbonController.cs | 268 ++ .../Scripts/CarbonController.cs.meta | 16 + .../CarbonInput/Scripts/CarbonInputModule.cs | 469 +++ .../Scripts/CarbonInputModule.cs.meta | 12 + .../Scripts/CarbonInputRuntime.asmdef | 3 + .../Scripts/CarbonInputRuntime.asmdef.meta | 9 + Assets/CarbonInput/Scripts/CarbonSettings.cs | 41 + .../Scripts/CarbonSettings.cs.meta | 12 + .../CarbonInput/Scripts/ControllerInstance.cs | 19 + .../Scripts/ControllerInstance.cs.meta | 16 + Assets/CarbonInput/Scripts/Enums.cs | 91 + Assets/CarbonInput/Scripts/Enums.cs.meta | 12 + Assets/CarbonInput/Scripts/GamePad.cs | 297 ++ Assets/CarbonInput/Scripts/GamePad.cs.meta | 16 + Assets/CarbonInput/Scripts/GamePadState.cs | 262 ++ .../CarbonInput/Scripts/GamePadState.cs.meta | 16 + Assets/CarbonInput/Scripts/Mappings.cs | 152 + Assets/CarbonInput/Scripts/Mappings.cs.meta | 16 + Assets/CarbonInput/Scripts/ReInit.cs | 44 + Assets/CarbonInput/Scripts/ReInit.cs.meta | 12 + .../CarbonInput/Scripts/SwitchPS4Gamepad.cs | 32 + .../Scripts/SwitchPS4Gamepad.cs.meta | 12 + Assets/CarbonInput/Scripts/TouchInput.meta | 9 + .../Scripts/TouchInput/BaseTouchInput.cs | 53 + .../Scripts/TouchInput/BaseTouchInput.cs.meta | 18 + .../Scripts/TouchInput/DisableTouchInput.cs | 44 + .../TouchInput/DisableTouchInput.cs.meta | 18 + .../Scripts/TouchInput/TouchButton.cs | 57 + .../Scripts/TouchInput/TouchButton.cs.meta | 18 + .../Scripts/TouchInput/TouchMapping.cs | 45 + .../Scripts/TouchInput/TouchMapping.cs.meta | 18 + .../Scripts/TouchInput/TouchStick.cs | 175 ++ .../Scripts/TouchInput/TouchStick.cs.meta | 18 + Assets/CarbonInput/readme.txt | 27 + Assets/CarbonInput/readme.txt.meta | 8 + Assets/Prefabs.meta | 8 + Assets/Prefabs/Fading Tile.prefab | 97 + Assets/Prefabs/Fading Tile.prefab.meta | 7 + Assets/Prefabs/Tree.prefab | 126 + Assets/Prefabs/Tree.prefab.meta | 7 + Assets/Scenes.meta | 8 + Assets/Scenes/SampleScene.unity | 659 +++++ Assets/Scenes/SampleScene.unity.meta | 7 + Assets/Scripts.meta | 8 + Assets/Scripts/FadeToBlack.cs | 30 + Assets/Scripts/FadeToBlack.cs.meta | 11 + Assets/Scripts/GameObjects.meta | 8 + Assets/Scripts/GameObjects/Character.cs | 67 + Assets/Scripts/GameObjects/Character.cs.meta | 11 + Assets/Scripts/GameObjects/FadingTile.cs | 38 + Assets/Scripts/GameObjects/FadingTile.cs.meta | 11 + Assets/Scripts/GameObjects/Fire.cs | 39 + Assets/Scripts/GameObjects/Fire.cs.meta | 11 + Assets/Scripts/GameObjects/Ground.cs | 42 + Assets/Scripts/GameObjects/Ground.cs.meta | 11 + Assets/Scripts/GameObjects/Tree.cs | 13 + Assets/Scripts/GameObjects/Tree.cs.meta | 11 + Assets/Scripts/LevelController.cs | 13 + Assets/Scripts/LevelController.cs.meta | 11 + Assets/Sprites.meta | 8 + Assets/Sprites/character.png | Bin 0 -> 1054 bytes Assets/Sprites/character.png.meta | 116 + Assets/Sprites/fire.meta | 8 + Assets/Sprites/fire/large_1.png | Bin 0 -> 991 bytes Assets/Sprites/fire/large_1.png.meta | 116 + Assets/Sprites/fire/large_2.png | Bin 0 -> 1053 bytes Assets/Sprites/fire/large_2.png.meta | 116 + Assets/Sprites/fire/large_3.png | Bin 0 -> 1014 bytes Assets/Sprites/fire/large_3.png.meta | 116 + Assets/Sprites/fire/medium_1.png | Bin 0 -> 725 bytes Assets/Sprites/fire/medium_1.png.meta | 116 + Assets/Sprites/fire/medium_2.png | Bin 0 -> 778 bytes Assets/Sprites/fire/medium_2.png.meta | 116 + Assets/Sprites/fire/medium_3.png | Bin 0 -> 759 bytes Assets/Sprites/fire/medium_3.png.meta | 116 + Assets/Sprites/fire/small_1.png | Bin 0 -> 649 bytes Assets/Sprites/fire/small_1.png.meta | 116 + Assets/Sprites/fire/small_2.png | Bin 0 -> 681 bytes Assets/Sprites/fire/small_2.png.meta | 116 + Assets/Sprites/fire/small_3.png | Bin 0 -> 673 bytes Assets/Sprites/fire/small_3.png.meta | 116 + Assets/Sprites/fire_base.png | Bin 0 -> 860 bytes Assets/Sprites/fire_base.png.meta | 116 + Assets/Sprites/tile.png | Bin 0 -> 600 bytes Assets/Sprites/tile.png.meta | 140 + Assets/Sprites/tree.png | Bin 0 -> 1034 bytes Assets/Sprites/tree.png.meta | 116 + Packages/manifest.json | 48 + ProjectSettings/AudioManager.asset | 19 + ProjectSettings/ClusterInputManager.asset | 6 + ProjectSettings/DynamicsManager.asset | 34 + ProjectSettings/EditorBuildSettings.asset | 8 + ProjectSettings/EditorSettings.asset | 35 + ProjectSettings/GraphicsSettings.asset | 57 + ProjectSettings/InputManager.asset | 2599 +++++++++++++++++ ProjectSettings/NavMeshAreas.asset | 91 + ProjectSettings/NetworkManager.asset | 8 + ProjectSettings/Physics2DSettings.asset | 56 + ProjectSettings/PresetManager.asset | 7 + ProjectSettings/ProjectSettings.asset | 645 ++++ ProjectSettings/ProjectVersion.txt | 2 + ProjectSettings/QualitySettings.asset | 192 ++ ProjectSettings/TagManager.asset | 43 + ProjectSettings/TimeManager.asset | 9 + ProjectSettings/UnityConnectSettings.asset | 34 + ProjectSettings/VFXManager.asset | 12 + ProjectSettings/XRSettings.asset | 10 + Sprites/character.xcf | Bin 0 -> 2346 bytes Sprites/fire.xcf | Bin 0 -> 8904 bytes Sprites/fire_base.xcf | Bin 0 -> 1536 bytes Sprites/tile.xcf | Bin 0 -> 951 bytes Sprites/tree.xcf | Bin 0 -> 3007 bytes 236 files changed, 16300 insertions(+) create mode 100644 .gitignore create mode 100644 Assets/Animations.meta create mode 100644 Assets/Animations/Fire.controller create mode 100644 Assets/Animations/Fire.controller.meta create mode 100644 Assets/Animations/Fire_Large.anim create mode 100644 Assets/Animations/Fire_Large.anim.meta create mode 100644 Assets/Animations/Fire_Medium.anim create mode 100644 Assets/Animations/Fire_Medium.anim.meta create mode 100644 Assets/Animations/Fire_Small.anim create mode 100644 Assets/Animations/Fire_Small.anim.meta create mode 100644 Assets/CarbonInput.meta create mode 100644 Assets/CarbonInput/CheatSheet.pdf create mode 100644 Assets/CarbonInput/CheatSheet.pdf.meta create mode 100644 Assets/CarbonInput/Documentation.pdf create mode 100644 Assets/CarbonInput/Documentation.pdf.meta create mode 100644 Assets/CarbonInput/Editor.meta create mode 100644 Assets/CarbonInput/Editor/CarbonInputEditor.asmdef create mode 100644 Assets/CarbonInput/Editor/CarbonInputEditor.asmdef.meta create mode 100644 Assets/CarbonInput/Editor/CarbonInputMapper.cs create mode 100644 Assets/CarbonInput/Editor/CarbonInputMapper.cs.meta create mode 100644 Assets/CarbonInput/Editor/CarbonMappingEditor.cs create mode 100644 Assets/CarbonInput/Editor/CarbonMappingEditor.cs.meta create mode 100644 Assets/CarbonInput/Editor/CarbonSettingsEditor.cs create mode 100644 Assets/CarbonInput/Editor/CarbonSettingsEditor.cs.meta create mode 100644 Assets/CarbonInput/Editor/ReInitEditor.cs create mode 100644 Assets/CarbonInput/Editor/ReInitEditor.cs.meta create mode 100644 Assets/CarbonInput/Gizmos.meta create mode 100644 Assets/CarbonInput/Gizmos/CarbonController Icon.png create mode 100644 Assets/CarbonInput/Gizmos/CarbonController Icon.png.meta create mode 100644 Assets/CarbonInput/Gizmos/CarbonSettings Icon.png create mode 100644 Assets/CarbonInput/Gizmos/CarbonSettings Icon.png.meta create mode 100644 Assets/CarbonInput/Gizmos/readme.txt create mode 100644 Assets/CarbonInput/Gizmos/readme.txt.meta create mode 100644 Assets/CarbonInput/Graphics.meta create mode 100644 Assets/CarbonInput/Graphics/Dark.png create mode 100644 Assets/CarbonInput/Graphics/Dark.png.meta create mode 100644 Assets/CarbonInput/Graphics/DarkA.png create mode 100644 Assets/CarbonInput/Graphics/DarkA.png.meta create mode 100644 Assets/CarbonInput/Graphics/DarkArrow.png create mode 100644 Assets/CarbonInput/Graphics/DarkArrow.png.meta create mode 100644 Assets/CarbonInput/Graphics/DarkB.png create mode 100644 Assets/CarbonInput/Graphics/DarkB.png.meta create mode 100644 Assets/CarbonInput/Graphics/DarkBase.png create mode 100644 Assets/CarbonInput/Graphics/DarkBase.png.meta create mode 100644 Assets/CarbonInput/Graphics/DarkStick.png create mode 100644 Assets/CarbonInput/Graphics/DarkStick.png.meta create mode 100644 Assets/CarbonInput/Graphics/DarkX.png create mode 100644 Assets/CarbonInput/Graphics/DarkX.png.meta create mode 100644 Assets/CarbonInput/Graphics/DarkY.png create mode 100644 Assets/CarbonInput/Graphics/DarkY.png.meta create mode 100644 Assets/CarbonInput/Graphics/Light.png create mode 100644 Assets/CarbonInput/Graphics/Light.png.meta create mode 100644 Assets/CarbonInput/Graphics/LightArrow.png create mode 100644 Assets/CarbonInput/Graphics/LightArrow.png.meta create mode 100644 Assets/CarbonInput/Graphics/LightBase.png create mode 100644 Assets/CarbonInput/Graphics/LightBase.png.meta create mode 100644 Assets/CarbonInput/Graphics/LightStick.png create mode 100644 Assets/CarbonInput/Graphics/LightStick.png.meta create mode 100644 Assets/CarbonInput/Prefabs.meta create mode 100644 Assets/CarbonInput/Prefabs/ABXY.prefab create mode 100644 Assets/CarbonInput/Prefabs/ABXY.prefab.meta create mode 100644 Assets/CarbonInput/Prefabs/ButtonA.prefab create mode 100644 Assets/CarbonInput/Prefabs/ButtonA.prefab.meta create mode 100644 Assets/CarbonInput/Prefabs/ButtonB.prefab create mode 100644 Assets/CarbonInput/Prefabs/ButtonB.prefab.meta create mode 100644 Assets/CarbonInput/Prefabs/ButtonDark.prefab create mode 100644 Assets/CarbonInput/Prefabs/ButtonDark.prefab.meta create mode 100644 Assets/CarbonInput/Prefabs/ButtonLight.prefab create mode 100644 Assets/CarbonInput/Prefabs/ButtonLight.prefab.meta create mode 100644 Assets/CarbonInput/Prefabs/ButtonX.prefab create mode 100644 Assets/CarbonInput/Prefabs/ButtonX.prefab.meta create mode 100644 Assets/CarbonInput/Prefabs/ButtonY.prefab create mode 100644 Assets/CarbonInput/Prefabs/ButtonY.prefab.meta create mode 100644 Assets/CarbonInput/Prefabs/DarkLeft.prefab create mode 100644 Assets/CarbonInput/Prefabs/DarkLeft.prefab.meta create mode 100644 Assets/CarbonInput/Prefabs/DarkRight.prefab create mode 100644 Assets/CarbonInput/Prefabs/DarkRight.prefab.meta create mode 100644 Assets/CarbonInput/Prefabs/JoystickDark.prefab create mode 100644 Assets/CarbonInput/Prefabs/JoystickDark.prefab.meta create mode 100644 Assets/CarbonInput/Prefabs/JoystickLight.prefab create mode 100644 Assets/CarbonInput/Prefabs/JoystickLight.prefab.meta create mode 100644 Assets/CarbonInput/Prefabs/LightLeft.prefab create mode 100644 Assets/CarbonInput/Prefabs/LightLeft.prefab.meta create mode 100644 Assets/CarbonInput/Prefabs/LightRight.prefab create mode 100644 Assets/CarbonInput/Prefabs/LightRight.prefab.meta create mode 100644 Assets/CarbonInput/Prefabs/ScalableTouchControls.prefab create mode 100644 Assets/CarbonInput/Prefabs/ScalableTouchControls.prefab.meta create mode 100644 Assets/CarbonInput/Resources.meta create mode 100644 Assets/CarbonInput/Resources/CarbonInput.asset create mode 100644 Assets/CarbonInput/Resources/CarbonInput.asset.meta create mode 100644 Assets/CarbonInput/Resources/Mappings.meta create mode 100644 Assets/CarbonInput/Resources/Mappings/IpegaAndroid.asset create mode 100644 Assets/CarbonInput/Resources/Mappings/IpegaAndroid.asset.meta create mode 100644 Assets/CarbonInput/Resources/Mappings/IpegaPC.asset create mode 100644 Assets/CarbonInput/Resources/Mappings/IpegaPC.asset.meta create mode 100644 Assets/CarbonInput/Resources/Mappings/Keyboard.asset create mode 100644 Assets/CarbonInput/Resources/Mappings/Keyboard.asset.meta create mode 100644 Assets/CarbonInput/Resources/Mappings/Keyboard1.asset create mode 100644 Assets/CarbonInput/Resources/Mappings/Keyboard1.asset.meta create mode 100644 Assets/CarbonInput/Resources/Mappings/PS3.asset create mode 100644 Assets/CarbonInput/Resources/Mappings/PS3.asset.meta create mode 100644 Assets/CarbonInput/Resources/Mappings/PS4.asset create mode 100644 Assets/CarbonInput/Resources/Mappings/PS4.asset.meta create mode 100644 Assets/CarbonInput/Resources/Mappings/PS4Linux.asset create mode 100644 Assets/CarbonInput/Resources/Mappings/PS4Linux.asset.meta create mode 100644 Assets/CarbonInput/Resources/Mappings/PS4_Android.asset create mode 100644 Assets/CarbonInput/Resources/Mappings/PS4_Android.asset.meta create mode 100644 Assets/CarbonInput/Resources/Mappings/PS4_Mac.asset create mode 100644 Assets/CarbonInput/Resources/Mappings/PS4_Mac.asset.meta create mode 100644 Assets/CarbonInput/Resources/Mappings/PS4_bluetooth.asset create mode 100644 Assets/CarbonInput/Resources/Mappings/PS4_bluetooth.asset.meta create mode 100644 Assets/CarbonInput/Resources/Mappings/WebGL.asset create mode 100644 Assets/CarbonInput/Resources/Mappings/WebGL.asset.meta create mode 100644 Assets/CarbonInput/Resources/Mappings/XBox360.asset create mode 100644 Assets/CarbonInput/Resources/Mappings/XBox360.asset.meta create mode 100644 Assets/CarbonInput/Resources/Mappings/XBox360Linux.asset create mode 100644 Assets/CarbonInput/Resources/Mappings/XBox360Linux.asset.meta create mode 100644 Assets/CarbonInput/Resources/Mappings/XBox360Mac.asset create mode 100644 Assets/CarbonInput/Resources/Mappings/XBox360Mac.asset.meta create mode 100644 Assets/CarbonInput/Resources/Mappings/XBox360Wired.asset create mode 100644 Assets/CarbonInput/Resources/Mappings/XBox360Wired.asset.meta create mode 100644 Assets/CarbonInput/Resources/Mappings/XboxOne.asset create mode 100644 Assets/CarbonInput/Resources/Mappings/XboxOne.asset.meta create mode 100644 Assets/CarbonInput/Scripts.meta create mode 100644 Assets/CarbonInput/Scripts/CarbonController.cs create mode 100644 Assets/CarbonInput/Scripts/CarbonController.cs.meta create mode 100644 Assets/CarbonInput/Scripts/CarbonInputModule.cs create mode 100644 Assets/CarbonInput/Scripts/CarbonInputModule.cs.meta create mode 100644 Assets/CarbonInput/Scripts/CarbonInputRuntime.asmdef create mode 100644 Assets/CarbonInput/Scripts/CarbonInputRuntime.asmdef.meta create mode 100644 Assets/CarbonInput/Scripts/CarbonSettings.cs create mode 100644 Assets/CarbonInput/Scripts/CarbonSettings.cs.meta create mode 100644 Assets/CarbonInput/Scripts/ControllerInstance.cs create mode 100644 Assets/CarbonInput/Scripts/ControllerInstance.cs.meta create mode 100644 Assets/CarbonInput/Scripts/Enums.cs create mode 100644 Assets/CarbonInput/Scripts/Enums.cs.meta create mode 100644 Assets/CarbonInput/Scripts/GamePad.cs create mode 100644 Assets/CarbonInput/Scripts/GamePad.cs.meta create mode 100644 Assets/CarbonInput/Scripts/GamePadState.cs create mode 100644 Assets/CarbonInput/Scripts/GamePadState.cs.meta create mode 100644 Assets/CarbonInput/Scripts/Mappings.cs create mode 100644 Assets/CarbonInput/Scripts/Mappings.cs.meta create mode 100644 Assets/CarbonInput/Scripts/ReInit.cs create mode 100644 Assets/CarbonInput/Scripts/ReInit.cs.meta create mode 100644 Assets/CarbonInput/Scripts/SwitchPS4Gamepad.cs create mode 100644 Assets/CarbonInput/Scripts/SwitchPS4Gamepad.cs.meta create mode 100644 Assets/CarbonInput/Scripts/TouchInput.meta create mode 100644 Assets/CarbonInput/Scripts/TouchInput/BaseTouchInput.cs create mode 100644 Assets/CarbonInput/Scripts/TouchInput/BaseTouchInput.cs.meta create mode 100644 Assets/CarbonInput/Scripts/TouchInput/DisableTouchInput.cs create mode 100644 Assets/CarbonInput/Scripts/TouchInput/DisableTouchInput.cs.meta create mode 100644 Assets/CarbonInput/Scripts/TouchInput/TouchButton.cs create mode 100644 Assets/CarbonInput/Scripts/TouchInput/TouchButton.cs.meta create mode 100644 Assets/CarbonInput/Scripts/TouchInput/TouchMapping.cs create mode 100644 Assets/CarbonInput/Scripts/TouchInput/TouchMapping.cs.meta create mode 100644 Assets/CarbonInput/Scripts/TouchInput/TouchStick.cs create mode 100644 Assets/CarbonInput/Scripts/TouchInput/TouchStick.cs.meta create mode 100644 Assets/CarbonInput/readme.txt create mode 100644 Assets/CarbonInput/readme.txt.meta create mode 100644 Assets/Prefabs.meta create mode 100644 Assets/Prefabs/Fading Tile.prefab create mode 100644 Assets/Prefabs/Fading Tile.prefab.meta create mode 100644 Assets/Prefabs/Tree.prefab create mode 100644 Assets/Prefabs/Tree.prefab.meta create mode 100644 Assets/Scenes.meta create mode 100644 Assets/Scenes/SampleScene.unity create mode 100644 Assets/Scenes/SampleScene.unity.meta create mode 100644 Assets/Scripts.meta create mode 100644 Assets/Scripts/FadeToBlack.cs create mode 100644 Assets/Scripts/FadeToBlack.cs.meta create mode 100644 Assets/Scripts/GameObjects.meta create mode 100644 Assets/Scripts/GameObjects/Character.cs create mode 100644 Assets/Scripts/GameObjects/Character.cs.meta create mode 100644 Assets/Scripts/GameObjects/FadingTile.cs create mode 100644 Assets/Scripts/GameObjects/FadingTile.cs.meta create mode 100644 Assets/Scripts/GameObjects/Fire.cs create mode 100644 Assets/Scripts/GameObjects/Fire.cs.meta create mode 100644 Assets/Scripts/GameObjects/Ground.cs create mode 100644 Assets/Scripts/GameObjects/Ground.cs.meta create mode 100644 Assets/Scripts/GameObjects/Tree.cs create mode 100644 Assets/Scripts/GameObjects/Tree.cs.meta create mode 100644 Assets/Scripts/LevelController.cs create mode 100644 Assets/Scripts/LevelController.cs.meta create mode 100644 Assets/Sprites.meta create mode 100644 Assets/Sprites/character.png create mode 100644 Assets/Sprites/character.png.meta create mode 100644 Assets/Sprites/fire.meta create mode 100644 Assets/Sprites/fire/large_1.png create mode 100644 Assets/Sprites/fire/large_1.png.meta create mode 100644 Assets/Sprites/fire/large_2.png create mode 100644 Assets/Sprites/fire/large_2.png.meta create mode 100644 Assets/Sprites/fire/large_3.png create mode 100644 Assets/Sprites/fire/large_3.png.meta create mode 100644 Assets/Sprites/fire/medium_1.png create mode 100644 Assets/Sprites/fire/medium_1.png.meta create mode 100644 Assets/Sprites/fire/medium_2.png create mode 100644 Assets/Sprites/fire/medium_2.png.meta create mode 100644 Assets/Sprites/fire/medium_3.png create mode 100644 Assets/Sprites/fire/medium_3.png.meta create mode 100644 Assets/Sprites/fire/small_1.png create mode 100644 Assets/Sprites/fire/small_1.png.meta create mode 100644 Assets/Sprites/fire/small_2.png create mode 100644 Assets/Sprites/fire/small_2.png.meta create mode 100644 Assets/Sprites/fire/small_3.png create mode 100644 Assets/Sprites/fire/small_3.png.meta create mode 100644 Assets/Sprites/fire_base.png create mode 100644 Assets/Sprites/fire_base.png.meta create mode 100644 Assets/Sprites/tile.png create mode 100644 Assets/Sprites/tile.png.meta create mode 100644 Assets/Sprites/tree.png create mode 100644 Assets/Sprites/tree.png.meta create mode 100644 Packages/manifest.json create mode 100644 ProjectSettings/AudioManager.asset create mode 100644 ProjectSettings/ClusterInputManager.asset create mode 100644 ProjectSettings/DynamicsManager.asset create mode 100644 ProjectSettings/EditorBuildSettings.asset create mode 100644 ProjectSettings/EditorSettings.asset create mode 100644 ProjectSettings/GraphicsSettings.asset create mode 100644 ProjectSettings/InputManager.asset create mode 100644 ProjectSettings/NavMeshAreas.asset create mode 100644 ProjectSettings/NetworkManager.asset create mode 100644 ProjectSettings/Physics2DSettings.asset create mode 100644 ProjectSettings/PresetManager.asset create mode 100644 ProjectSettings/ProjectSettings.asset create mode 100644 ProjectSettings/ProjectVersion.txt create mode 100644 ProjectSettings/QualitySettings.asset create mode 100644 ProjectSettings/TagManager.asset create mode 100644 ProjectSettings/TimeManager.asset create mode 100644 ProjectSettings/UnityConnectSettings.asset create mode 100644 ProjectSettings/VFXManager.asset create mode 100644 ProjectSettings/XRSettings.asset create mode 100644 Sprites/character.xcf create mode 100644 Sprites/fire.xcf create mode 100644 Sprites/fire_base.xcf create mode 100644 Sprites/tile.xcf create mode 100644 Sprites/tree.xcf diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..63f345d --- /dev/null +++ b/.gitignore @@ -0,0 +1,38 @@ +[Ll]ibrary/ +[Tt]emp/ +[Oo]bj/ +[Bb]uild/ +[Bb]uilds/ +Assets/AssetStoreTools* + +# Visual Studio 2015 cache directory +/.vs/ + +# Autogenerated VS/MD/Consulo solution and project files +ExportedObj/ +.consulo/ +*.csproj +*.unityproj +*.sln +*.suo +*.tmp +*.user +*.userprefs +*.pidb +*.booproj +*.svd +*.pdb + +# Unity3D generated meta files +*.pidb.meta +*.pdb.meta + +# Unity3D Generated File On Crash Reports +sysinfo.txt + +# Builds +*.apk +*.unitypackage + +#steam +steam_sdk/ \ No newline at end of file diff --git a/Assets/Animations.meta b/Assets/Animations.meta new file mode 100644 index 0000000..2a7fd07 --- /dev/null +++ b/Assets/Animations.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: d4ce3cad17a9964c49377393fba59765 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Animations/Fire.controller b/Assets/Animations/Fire.controller new file mode 100644 index 0000000..61ec1d7 --- /dev/null +++ b/Assets/Animations/Fire.controller @@ -0,0 +1,240 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1102 &-7242123668434255461 +AnimatorState: + serializedVersion: 5 + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Fire_Large + m_Speed: 1 + m_CycleOffset: 0 + m_Transitions: + - {fileID: 2377654247485305871} + m_StateMachineBehaviours: [] + m_Position: {x: 50, y: 50, z: 0} + m_IKOnFeet: 0 + m_WriteDefaultValues: 1 + m_Mirror: 0 + m_SpeedParameterActive: 0 + m_MirrorParameterActive: 0 + m_CycleOffsetParameterActive: 0 + m_TimeParameterActive: 0 + m_Motion: {fileID: 7400000, guid: 3aa04e06793b7986f8d330ab7e140d7a, type: 2} + m_Tag: + m_SpeedParameter: + m_MirrorParameter: + m_CycleOffsetParameter: + m_TimeParameter: +--- !u!1102 &-3967938475098992837 +AnimatorState: + serializedVersion: 5 + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Fire_Small + m_Speed: 1 + m_CycleOffset: 0 + m_Transitions: + - {fileID: 5203014014945431137} + m_StateMachineBehaviours: [] + m_Position: {x: 50, y: 50, z: 0} + m_IKOnFeet: 0 + m_WriteDefaultValues: 1 + m_Mirror: 0 + m_SpeedParameterActive: 0 + m_MirrorParameterActive: 0 + m_CycleOffsetParameterActive: 0 + m_TimeParameterActive: 0 + m_Motion: {fileID: 7400000, guid: 1af92b179d4126b8cbc72dd2b3decc9a, type: 2} + m_Tag: + m_SpeedParameter: + m_MirrorParameter: + m_CycleOffsetParameter: + m_TimeParameter: +--- !u!91 &9100000 +AnimatorController: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Fire + serializedVersion: 5 + m_AnimatorParameters: + - m_Name: size + m_Type: 3 + m_DefaultFloat: 0 + m_DefaultInt: 0 + m_DefaultBool: 0 + m_Controller: {fileID: 0} + m_AnimatorLayers: + - serializedVersion: 5 + m_Name: Base Layer + m_StateMachine: {fileID: 3947884304617259984} + m_Mask: {fileID: 0} + m_Motions: [] + m_Behaviours: [] + m_BlendingMode: 0 + m_SyncedLayerIndex: -1 + m_DefaultWeight: 0 + m_IKPass: 0 + m_SyncedLayerAffectsTiming: 0 + m_Controller: {fileID: 9100000} +--- !u!1101 &2377654247485305871 +AnimatorStateTransition: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: + m_Conditions: + - m_ConditionMode: 4 + m_ConditionEvent: size + m_EventTreshold: 3 + m_DstStateMachine: {fileID: 0} + m_DstState: {fileID: 9076948865318807003} + m_Solo: 0 + m_Mute: 0 + m_IsExit: 0 + serializedVersion: 3 + m_TransitionDuration: 0 + m_TransitionOffset: 0 + m_ExitTime: 0 + m_HasExitTime: 1 + m_HasFixedDuration: 1 + m_InterruptionSource: 0 + m_OrderedInterruption: 1 + m_CanTransitionToSelf: 1 +--- !u!1107 &3947884304617259984 +AnimatorStateMachine: + serializedVersion: 5 + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Base Layer + m_ChildStates: + - serializedVersion: 1 + m_State: {fileID: -3967938475098992837} + m_Position: {x: 330, y: -40, z: 0} + - serializedVersion: 1 + m_State: {fileID: 9076948865318807003} + m_Position: {x: 330, y: 50, z: 0} + - serializedVersion: 1 + m_State: {fileID: -7242123668434255461} + m_Position: {x: 330, y: 140, z: 0} + m_ChildStateMachines: [] + m_AnyStateTransitions: [] + m_EntryTransitions: [] + m_StateMachineTransitions: {} + m_StateMachineBehaviours: [] + m_AnyStatePosition: {x: 50, y: 20, z: 0} + m_EntryPosition: {x: 50, y: 120, z: 0} + m_ExitPosition: {x: 800, y: 120, z: 0} + m_ParentStateMachinePosition: {x: 800, y: 20, z: 0} + m_DefaultState: {fileID: -3967938475098992837} +--- !u!1101 &4487856842708553727 +AnimatorStateTransition: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: + m_Conditions: + - m_ConditionMode: 3 + m_ConditionEvent: size + m_EventTreshold: 2 + m_DstStateMachine: {fileID: 0} + m_DstState: {fileID: -7242123668434255461} + m_Solo: 0 + m_Mute: 0 + m_IsExit: 0 + serializedVersion: 3 + m_TransitionDuration: 0 + m_TransitionOffset: 0 + m_ExitTime: 0 + m_HasExitTime: 1 + m_HasFixedDuration: 1 + m_InterruptionSource: 0 + m_OrderedInterruption: 1 + m_CanTransitionToSelf: 1 +--- !u!1101 &5203014014945431137 +AnimatorStateTransition: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: + m_Conditions: + - m_ConditionMode: 3 + m_ConditionEvent: size + m_EventTreshold: 1 + m_DstStateMachine: {fileID: 0} + m_DstState: {fileID: 9076948865318807003} + m_Solo: 0 + m_Mute: 0 + m_IsExit: 0 + serializedVersion: 3 + m_TransitionDuration: 0 + m_TransitionOffset: 0 + m_ExitTime: 0 + m_HasExitTime: 1 + m_HasFixedDuration: 1 + m_InterruptionSource: 0 + m_OrderedInterruption: 1 + m_CanTransitionToSelf: 1 +--- !u!1101 &8055767767851202117 +AnimatorStateTransition: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: + m_Conditions: + - m_ConditionMode: 4 + m_ConditionEvent: size + m_EventTreshold: 2 + m_DstStateMachine: {fileID: 0} + m_DstState: {fileID: -3967938475098992837} + m_Solo: 0 + m_Mute: 0 + m_IsExit: 0 + serializedVersion: 3 + m_TransitionDuration: 0 + m_TransitionOffset: 0 + m_ExitTime: 0 + m_HasExitTime: 1 + m_HasFixedDuration: 1 + m_InterruptionSource: 0 + m_OrderedInterruption: 1 + m_CanTransitionToSelf: 1 +--- !u!1102 &9076948865318807003 +AnimatorState: + serializedVersion: 5 + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Fire_Medium + m_Speed: 1 + m_CycleOffset: 0 + m_Transitions: + - {fileID: 4487856842708553727} + - {fileID: 8055767767851202117} + m_StateMachineBehaviours: [] + m_Position: {x: 50, y: 50, z: 0} + m_IKOnFeet: 0 + m_WriteDefaultValues: 1 + m_Mirror: 0 + m_SpeedParameterActive: 0 + m_MirrorParameterActive: 0 + m_CycleOffsetParameterActive: 0 + m_TimeParameterActive: 0 + m_Motion: {fileID: 7400000, guid: 78f828aafcab99b57b64058d6a260ea9, type: 2} + m_Tag: + m_SpeedParameter: + m_MirrorParameter: + m_CycleOffsetParameter: + m_TimeParameter: diff --git a/Assets/Animations/Fire.controller.meta b/Assets/Animations/Fire.controller.meta new file mode 100644 index 0000000..e7afb9a --- /dev/null +++ b/Assets/Animations/Fire.controller.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: ddf225d2c3ffdc783b59df4d81fc8038 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Animations/Fire_Large.anim b/Assets/Animations/Fire_Large.anim new file mode 100644 index 0000000..109a10c --- /dev/null +++ b/Assets/Animations/Fire_Large.anim @@ -0,0 +1,74 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!74 &7400000 +AnimationClip: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Fire_Large + serializedVersion: 6 + m_Legacy: 0 + m_Compressed: 0 + m_UseHighQualityCurve: 1 + m_RotationCurves: [] + m_CompressedRotationCurves: [] + m_EulerCurves: [] + m_PositionCurves: [] + m_ScaleCurves: [] + m_FloatCurves: [] + m_PPtrCurves: + - curve: + - time: 0 + value: {fileID: 21300000, guid: df99cd1ef8b819c79bd6883e133ddd00, type: 3} + - time: 0.016666668 + value: {fileID: 21300000, guid: 6a1bbc5036f86f5f185d7b55d90cd1bb, type: 3} + - time: 0.033333335 + value: {fileID: 21300000, guid: 9d01303ed461fc2a882c9394a1af57c1, type: 3} + attribute: m_Sprite + path: + classID: 212 + script: {fileID: 0} + m_SampleRate: 60 + m_WrapMode: 0 + m_Bounds: + m_Center: {x: 0, y: 0, z: 0} + m_Extent: {x: 0, y: 0, z: 0} + m_ClipBindingConstant: + genericBindings: + - serializedVersion: 2 + path: 0 + attribute: 0 + script: {fileID: 0} + typeID: 212 + customType: 23 + isPPtrCurve: 1 + pptrCurveMapping: + - {fileID: 21300000, guid: df99cd1ef8b819c79bd6883e133ddd00, type: 3} + - {fileID: 21300000, guid: 6a1bbc5036f86f5f185d7b55d90cd1bb, type: 3} + - {fileID: 21300000, guid: 9d01303ed461fc2a882c9394a1af57c1, type: 3} + m_AnimationClipSettings: + serializedVersion: 2 + m_AdditiveReferencePoseClip: {fileID: 0} + m_AdditiveReferencePoseTime: 0 + m_StartTime: 0 + m_StopTime: 0.050000004 + m_OrientationOffsetY: 0 + m_Level: 0 + m_CycleOffset: 0 + m_HasAdditiveReferencePose: 0 + m_LoopTime: 1 + m_LoopBlend: 0 + m_LoopBlendOrientation: 0 + m_LoopBlendPositionY: 0 + m_LoopBlendPositionXZ: 0 + m_KeepOriginalOrientation: 0 + m_KeepOriginalPositionY: 1 + m_KeepOriginalPositionXZ: 0 + m_HeightFromFeet: 0 + m_Mirror: 0 + m_EditorCurves: [] + m_EulerEditorCurves: [] + m_HasGenericRootTransform: 0 + m_HasMotionFloatCurves: 0 + m_Events: [] diff --git a/Assets/Animations/Fire_Large.anim.meta b/Assets/Animations/Fire_Large.anim.meta new file mode 100644 index 0000000..ca49dca --- /dev/null +++ b/Assets/Animations/Fire_Large.anim.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 3aa04e06793b7986f8d330ab7e140d7a +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Animations/Fire_Medium.anim b/Assets/Animations/Fire_Medium.anim new file mode 100644 index 0000000..ba6756f --- /dev/null +++ b/Assets/Animations/Fire_Medium.anim @@ -0,0 +1,74 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!74 &7400000 +AnimationClip: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Fire_Medium + serializedVersion: 6 + m_Legacy: 0 + m_Compressed: 0 + m_UseHighQualityCurve: 1 + m_RotationCurves: [] + m_CompressedRotationCurves: [] + m_EulerCurves: [] + m_PositionCurves: [] + m_ScaleCurves: [] + m_FloatCurves: [] + m_PPtrCurves: + - curve: + - time: 0 + value: {fileID: 21300000, guid: 594ab07e74bbcad38b3160ab88b80190, type: 3} + - time: 0.016666668 + value: {fileID: 21300000, guid: 339a583b78a4babe99d18b16da6997ce, type: 3} + - time: 0.033333335 + value: {fileID: 21300000, guid: 0267b227095f563c0be629261f05e724, type: 3} + attribute: m_Sprite + path: + classID: 212 + script: {fileID: 0} + m_SampleRate: 60 + m_WrapMode: 0 + m_Bounds: + m_Center: {x: 0, y: 0, z: 0} + m_Extent: {x: 0, y: 0, z: 0} + m_ClipBindingConstant: + genericBindings: + - serializedVersion: 2 + path: 0 + attribute: 0 + script: {fileID: 0} + typeID: 212 + customType: 23 + isPPtrCurve: 1 + pptrCurveMapping: + - {fileID: 21300000, guid: 594ab07e74bbcad38b3160ab88b80190, type: 3} + - {fileID: 21300000, guid: 339a583b78a4babe99d18b16da6997ce, type: 3} + - {fileID: 21300000, guid: 0267b227095f563c0be629261f05e724, type: 3} + m_AnimationClipSettings: + serializedVersion: 2 + m_AdditiveReferencePoseClip: {fileID: 0} + m_AdditiveReferencePoseTime: 0 + m_StartTime: 0 + m_StopTime: 0.050000004 + m_OrientationOffsetY: 0 + m_Level: 0 + m_CycleOffset: 0 + m_HasAdditiveReferencePose: 0 + m_LoopTime: 1 + m_LoopBlend: 0 + m_LoopBlendOrientation: 0 + m_LoopBlendPositionY: 0 + m_LoopBlendPositionXZ: 0 + m_KeepOriginalOrientation: 0 + m_KeepOriginalPositionY: 1 + m_KeepOriginalPositionXZ: 0 + m_HeightFromFeet: 0 + m_Mirror: 0 + m_EditorCurves: [] + m_EulerEditorCurves: [] + m_HasGenericRootTransform: 0 + m_HasMotionFloatCurves: 0 + m_Events: [] diff --git a/Assets/Animations/Fire_Medium.anim.meta b/Assets/Animations/Fire_Medium.anim.meta new file mode 100644 index 0000000..aa179b4 --- /dev/null +++ b/Assets/Animations/Fire_Medium.anim.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 78f828aafcab99b57b64058d6a260ea9 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Animations/Fire_Small.anim b/Assets/Animations/Fire_Small.anim new file mode 100644 index 0000000..2452c54 --- /dev/null +++ b/Assets/Animations/Fire_Small.anim @@ -0,0 +1,74 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!74 &7400000 +AnimationClip: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Fire_Small + serializedVersion: 6 + m_Legacy: 0 + m_Compressed: 0 + m_UseHighQualityCurve: 1 + m_RotationCurves: [] + m_CompressedRotationCurves: [] + m_EulerCurves: [] + m_PositionCurves: [] + m_ScaleCurves: [] + m_FloatCurves: [] + m_PPtrCurves: + - curve: + - time: 0 + value: {fileID: 21300000, guid: 8e4bdcb647508e7879e1cf6716135b6c, type: 3} + - time: 0.016666668 + value: {fileID: 21300000, guid: ba7b9d0c169cdd70ba763419bd2721ef, type: 3} + - time: 0.033333335 + value: {fileID: 21300000, guid: d56eb73f29fa40a168de0f09921d91df, type: 3} + attribute: m_Sprite + path: + classID: 212 + script: {fileID: 0} + m_SampleRate: 60 + m_WrapMode: 0 + m_Bounds: + m_Center: {x: 0, y: 0, z: 0} + m_Extent: {x: 0, y: 0, z: 0} + m_ClipBindingConstant: + genericBindings: + - serializedVersion: 2 + path: 0 + attribute: 0 + script: {fileID: 0} + typeID: 212 + customType: 23 + isPPtrCurve: 1 + pptrCurveMapping: + - {fileID: 21300000, guid: 8e4bdcb647508e7879e1cf6716135b6c, type: 3} + - {fileID: 21300000, guid: ba7b9d0c169cdd70ba763419bd2721ef, type: 3} + - {fileID: 21300000, guid: d56eb73f29fa40a168de0f09921d91df, type: 3} + m_AnimationClipSettings: + serializedVersion: 2 + m_AdditiveReferencePoseClip: {fileID: 0} + m_AdditiveReferencePoseTime: 0 + m_StartTime: 0 + m_StopTime: 0.050000004 + m_OrientationOffsetY: 0 + m_Level: 0 + m_CycleOffset: 0 + m_HasAdditiveReferencePose: 0 + m_LoopTime: 1 + m_LoopBlend: 0 + m_LoopBlendOrientation: 0 + m_LoopBlendPositionY: 0 + m_LoopBlendPositionXZ: 0 + m_KeepOriginalOrientation: 0 + m_KeepOriginalPositionY: 1 + m_KeepOriginalPositionXZ: 0 + m_HeightFromFeet: 0 + m_Mirror: 0 + m_EditorCurves: [] + m_EulerEditorCurves: [] + m_HasGenericRootTransform: 0 + m_HasMotionFloatCurves: 0 + m_Events: [] diff --git a/Assets/Animations/Fire_Small.anim.meta b/Assets/Animations/Fire_Small.anim.meta new file mode 100644 index 0000000..ac435a5 --- /dev/null +++ b/Assets/Animations/Fire_Small.anim.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 1af92b179d4126b8cbc72dd2b3decc9a +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/CarbonInput.meta b/Assets/CarbonInput.meta new file mode 100644 index 0000000..22f0006 --- /dev/null +++ b/Assets/CarbonInput.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 1e66b3f397778b0c28bcbf583e9f3df2 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/CarbonInput/CheatSheet.pdf b/Assets/CarbonInput/CheatSheet.pdf new file mode 100644 index 0000000000000000000000000000000000000000..9965696eff709114df376a9d52cffd9223b75eed GIT binary patch literal 166011 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 G$^Qd0ncl_# literal 0 HcmV?d00001 diff --git a/Assets/CarbonInput/CheatSheet.pdf.meta b/Assets/CarbonInput/CheatSheet.pdf.meta new file mode 100644 index 0000000..52944e4 --- /dev/null +++ b/Assets/CarbonInput/CheatSheet.pdf.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: b015f5ba7c284f847908c6f18732e638 +timeCreated: 1456526015 +licenseType: Store +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/CarbonInput/Documentation.pdf b/Assets/CarbonInput/Documentation.pdf new file mode 100644 index 0000000000000000000000000000000000000000..575152cca9e8d1b886b2b08d3c810643026c2751 GIT binary patch literal 358205 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

k0GO_7%FLHKTV)&`4Sz-pht!)X0 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

_lJq>3 zo3)YLz5UGe;3Lil|Dl$$7Z+KHF!bwJXhX?F^V(i4sD3$>qOSd7me+{@rD-}9U-(9N zdr%fFt+1W${cRDUe+^tdw{h4S5$-)c_fX#NUY2UfZd853Bi_2_G^I`*JTV7#+~i z0Qsa2WdW?f0z)reU!9H+Mz z*^O_#nS=xnGL9CPA23Ovl(*{T$XtBm=cX3+{3rfcGyu?}Sx33zyE370BVc`1xyc5C)H`hEBF zh^P5$zB~G#J;|jkH<9#GN1s;EW9TY1RaI&}lb8kkQ)sfQxy?83@m6;$tJ2YHX7ajq z0g01f96F&2MP(#dcRm>!9tK*_VDeBmqD7|(N%GmPkmFL{I_3>Ysh?8yuGDm>P_M-8E;1=~--{b^98y-Bv1BFw zeYp%CZ zLBz@^!FxojddtPvm>`>@FfzK;Pg@zDCf=PqO;vRV`MM3- zXz()q`?^5NdjL$t3%)?!X+6@q{F}qVg9|u{5nnSN^C}zOm^+Hy)+`?aGnbr~x@*sq z_`l`2Ed_s0|H*ORn)WdZst<7Wu%Ss)j|F61`WiEQKECTy}wDj z6xn@pY$rJ4#+%O%l)(>YLgkFS^x68V=U98_w$AZAV>)Ayu3kLCQ^R@W{NzJ$0ZIL0 zIEsSanC&=?+tVdf4J!ZQCvLD%=-rEE@wt+>!-^gCuNl+WYGxLyEnI*aG%K)!TPPNB zfg&-1s8B3o+i_9YOqwu+o6YF1NHn>aj;+ZDC%TO<1x<$TwenjEPmL16Ga}UMmw+s| zT+gSi3=Qg6(44t?wmc&v<8unDyrPrMb!vFO`gRyCZ%$TpH~}7yn|CzjQ{HL3hSncT zONevPlj#EcrdP#W*ePbtXO?0wm^)DHZZ{H2`Q+R0GrTd%lyjq3=14CN8d0!4b&0m? zP~h=!UG-)VJBNllg~2u+JyL@$3t8`2C7!e!qz}^UjV`@80Xo)17#` zFVnca4Yx~Ul$6%9FUy}}lt?xrkP9cRZ^GyDMJLNW#t*D?H*^E+9`-~xgbDS;mer_! zQ?Q2lXO)bnpC2A#JPEzLT;~Ceq1D#X3MOP~4zCO@a@{@uaPwYo)b~zq6;qUr!e`Qz zuRQjOo#F)(;>)G>)4FE6x1*cR>$y$vZ2H*L*N(1;vR@WsA^0fhI0CO`&|oIPl??SE z+TYeEuvMnh>CL}|pv{keZil;&nr5$krSaA+aGhh)w2pV>ObP$zThscbF2*{KKfnpe z)Wzg4#OHJ&l_}|SOHq4LKU7prxx0y<`B?c{0X^J#jOF9uPkf|&qHrDav?5(XZ91^= zqXyQGxYy2K@78$N6h)%5%OZTq=mGi9H=8Qb?$j5EkmUZ5_$-ZtlH;gApqCq8OPV!p z3Bij2r<_FPyKOZ?kwnv5m=mRSS+VuZx5r}RXfEn(U6nY8wzU=bWT-k+UTLd2CA|>Y zi$hVOW&~!yhK2!iIutr(sF~P{F{n^AFnUTTi3!~&$c~rV)z?=!f#IvXBKp|VupoKx zqx6b#?+tBmta<(BJ-l;gkm{XzTGm_OWN820PDU!?0w}WCaK@-hEj2lv|iCoh?)EW zMby^84{&Kq(8a~A2WKpHr*?MkiPvSRklv#{TTgl?>jh(PR-b-1F!YisGYacl6#sC> z-swD#ttZJv<2sUQ*7%#K*+|awwER}DcrnFYsO+2$rk8Yk0ipA%Kl`Xyfm8KsQGZ#n zBGGd;^V+8iR+=oORzH$B`j3MP>f3na6NeqHPV~lqi%E(YPzaHMR^s01k1gfMJ*RBb z*N_$MhBS^RfY$6Mw*jLq-6imfMH9Yi*n`)EI^d8CJNG2jSz}7~-eMCwHb0!H(h7W< zvY@<|9Z?;xJ1F&)%Q>F5!sOU0Y1s|Mi$Cso957oljA372_CVqYIwTszOW0_YO6mr(f;TPE)D=?lqa&rq^Kavjd`MXQ_FU?tE;QwyLX`-ogE#U z5IH7x=9qd5MKrII$VZ5dJNnrXE$ta|&UAY-&6P3<+N--fLJr_WasR-;02rpz7%=BO z`7mXW6sqv}&0M0ngXZtYSKY|hJ1wJT2cKsBBQV{2WKU=r5&EhL_8I|WVu52#Vt>lUv z)vNFFxr_4I8u=a?$sCX;9!Y?11ReXm_2C7Yb_sG zRjGAnw>?5_rXy`0x--iMDbnt_RWW!ujNp8UeZ(`z_UL9oV5lrO42cY0U!-7Fo}j># zDFd&^lv&S4Ktkhq!E&Y{3~X6^%_fgyvs}7R`W1Hx*T!N3tC3lwy5?Mm z^<}9Z?-$X#jQu0VUXDzpL{q>D1Rbc>7Kr0)Bg>%WN(}VnD!E!C!?;u=Xm~#qX#=z@ z_*~ScWsg*$5!81PG4#BfgDkc(j|k?I%FD}Nh-mZPh?mtEsSpg4)%zG`{QB+NvJ!IQ zBpP&n*)|F&H#LfhA|hXq&|h@*skm$zpGPgK^h5frb%Va|wAAEM& z`9{_i|LN@LMd@g8eUo`MKG!{zxj7z`vVJ?CqS3AtD$#v8$wdMuaah4_M05IuIOa~8GGPu#IMvyRCnMl$T>;bcS-~sZ8pYH#o8BR;VD)-Ab43~I zs&dRG5-IaW(oT{<{ELGui9x7c(u9M03h{oeQMF8VR0!`&Q97`^dP<(chOR>-z-U6~ zhxm=pms_#n&!|JKaEX3hdbdf+7@(uIXkow%osFUuog-$we4@#pPUvW{h8Vm-f1)DFUS~7UwC0-1Zy>b((ol65$my&)I^k%>w*hT$Jm@E*n zF_-)&F&0-|IkUJl8@VL%B$ULtwUDzA(id#J`v(Wu2n05QiUj9^m#V2cb79*hFeTo= zje#%8ex3*drgqsDY+gS#mGeJ|l5uj;#OEg$il1;=&3H&8=S$|kbh{5%Tr39=xWD=5m1|(pPmGLY4&#-! z@@1=F*pcE023C>8x5`im`(1B#c6LBZFC0bZd%p6cP57r^`HUen5XRk`Kn0T}OF(*s zhkWVMQ?>cX!nmac7-MPkhk4d)fG~Ka?CVb?kTWrInZ(Z1UOHBQTLZO#5 zi~R?$3kvs2`|7qnSH);+F|7yS9uvruKtgUn7jBv=Lo0miY>Rhw8C>p^*&?pt1fp=# zHNtv6(QJpx8K#eSns?v^qWaXKg>3gTn`lr9-QS=%fvH;q&A$Xe5MLMG(cV{Lh$w}2 zz39^H@YmK2FK%P$SY9|3rw%9}W@U)Z+T1V#x`fxaIZcYvq+YLHhv>hIo_oo6Tsp8$ z#&^#I&qcOHnd{D=RAMeUgjSm{!~;E&!gO9CI+@ovXR5D3f|0tuAuZ+5%J5Z78r2Z4+zMG!mh zJF>0ftfFxsfquRRJ1f@*p#As|h^?e?Xu#}g=;8LTX=`qDfKp??k9mFw#3dORy`=>0-1&|bH%jIk<+~|ZR(IRxy@943KDN=HejP_@J{>)6^{kl%V6#l zVrc&Q?rud2?+#6WbK|Aqa}dZ6R{5}l1D_>a2t*k`Gh1A;5HL6bn}Fp);nJ2 zN3)Jaq@Rn@5(q)rH=(ZMW49}bET3-{f3;a1o-1CmaQK?rO{2(Ybj?_R>BbUn2LGj4 zi$Wr<4N6C}P_4sE?!fz?!U2V?`h&I4&o3Ki@!Z?dX}U#LoP9H3O-1y@FniMa_mv-A zaINfU)J7gEh*wYg`*9RHkLAPsx_GHj(Qe<5uHHD%(#Gph*REgH&!Q5K(RuX!e%z5Y zwEGB{u~|gZany*x9nC;>N2kTkO;O9m)<9H{!03RfYt?EIIb$2@VjG%iPN@1FGd5~a zSK4GpZ=8VrjN9d6w%Sq*6j(V*bIo*vRgY$+U8Xs4ee(+w9#{^WCtdw)NKKdDo=rFP zbzO^Y6v%`kPOf|UZ}+c~c3OcKs_t3jC6vwB#4J8qO(i5HZMse(_aK?{_<9Zf|C5vM04$V&FW<^{1`apAWkDDjkBKt zi>{pVsv&z{2*6d|wm}3nTbx}Z+)Wj9poeSaV!w6ZFz z$Q`qh9&L0y@4L8G0`s@GyE$)=G4H*0eM=Og=uV2r!DMG4>lq&(Z=+(HN=3|8u28VP z#&qQr-dX+c;i`$wg3o|fK^f|E$ZbrS#w$;fSa60EB%!#dpuLn+md9ct6KX}G##TCX zA<_@7dL5cccG>u`+*YS{U$B)SPUF+ppia!jyPJ=#pr)@uc?w&v;(0sjUsAJGO%gXM z8)~5QnF0%JnT;P0I3O;?e*3Uy!{m=3P5jZY^dPelb}{^tU~UDfSZygMeu&)A_fhqF z_>7_%=znb@#sCXGXKAos6~nS+uu-)-IPTMQUSLdAD>;Y$DpRv}Vk=;vu0WFLcP3`Z zi6%H*A(0lr6B_91=XYd}Ue9p5b0{JWu1ase_MxGo+|bMa%}NkC+~hj6R=b-YQ@|r) z8pUtv{mlt!bb|xXLPJInrcDCE9Q&IQ7ol_on6Mh^dwU!yk3F|uF~&IV^FFjg=MRKA zEB-Wyf5Avf&!HH`I-szt{oys&lEva1<{bR?pLpT760`H7g)>5EJ!@Ph2s-Qqt?pel zSa%E%m(`23!H;SFA#^C|FwV$Zw2CU8xIdF~j#sV)PyWZ#Bp;c){6}LZhTE=eiktOA z8LUqgQZr*K?lv~?PT32GF;#`lCDNbNM;IGEQ1kAa6%GojR7#jq1$Ey1vD`g0l(a1L z)+Cz#dDsOxY602{PnBa9@Mf=Hg!YG-kX#9-l=x{TjqY_|mW}_!>a|$kCT`5Va1p6< zpGTfZYrQul$nWZA-U`0czHCt#kxa?cX>+ESpJ$n8%F+y-&)z+HGiXA>%GExp^?)(v zv4h5RI%?yHb{M$~LfP6WwLz$WgU0+kYQqi@{b4AhD`&XDMaj+Ul^mI3>JrQNWAY0( zx?{J0hAoSxn~*d@+uv$E@Pl7ahjQLD5+I{@{id8)LmkeVnET?qB+U}JcKzN`!-V?V z;Rai|68UX2w(a576d=wsb#Ad6vkf?yhcfHmuhXEoe-p|~lm31{VPJXLVTmQygv63W z1*h>E%~4+T#rKQj!}n+I?@TzD>oB(m;D$5C_#g0g8&TW&3(emDUJg@{q!Bp@p_sa~ zeCi*$m3Hj|zuycds{PDU<-ur@fsUpyRQ7N%+x98$WD@VgJ&EL4Tu=VJL`nR5wj_?RUV`l{owL>q1Umb<;&q z*#k4mW?&ugU0b`r22*+PtzCM}l-ulf&+pXv`k8!7fRDs;Pg^{n%4;x{vL!firG}c# zjwwd=m}ON$)6wh0v47JZE4F5|8ql9ENuQ@8e^ke;v_?8Duhg&1ygJQJntHoyZEbDX zfknxr|K4m<_zmHK(^>)H){~c%anHMlm`Xg4ZybsRFOwI&Fwl`$p>&?952V|vZwu7u z9k^n0Ck5Nx-s}}P__%VC$^{=sQMfDI=(Cs;pJjd-y)N&UUQKqt zS-C{rk}3knGGZmzd##faPq8M$r^LrXV0c*f!Ng4|uTteiraUHDP31~L%jeZkO21m} zGAyr*KbpAs+{DOGf#kp?k&W)wTN4%)7sluMhI3b_6mAvA1|~QbHEWf@RBBP9L^M~{ z9^d+A+InTJg54mVE$%GMy$;ol)lZzRW9yWk-wEC4dGdaiO@)!$Jo2ZRKtOm!<%bKp zQ(2S4?@~>lq50U_S(o+J-mrC<$ZR|KM7^5Qe|cZ9DVRuQb9cXd(I;uXHM8aWa3LKf zQqk12)sI=_*%q_P$8EK<;=UoNbQY+ZXG7zj6OI>DHq$>QR9(}1qknOEh5PmE68DA# z99I9LON(fx#;18~?VqLCmdfrlmr%X2vK!McOG2PmTfwlLXnZE7@Zjov)cbwJY*ZxR zJga@2=i4E&xcgVd+G&=_yp(zd)AB!-3qP;iM*GMo{>Xpu?)B@rp8nS)qd>9Ka)r4V z=~9q7r2px*=?ogdy52jTtZm#eem{e4RE^C1vRG^Sm(jP@9zli@C)O+XO?F#&F2&L+ zy^OZ_V8W?lQmYe|w$Bch?DCLx`m~ zvGrXmca)p8xf90cY++B#FDe9s!!SMx31U7SZx?GA-|d?g_STjtVm@sT3)E?dij%pG zH8G!_ofXO!CX5gu=2Nz|v#~|N1mQ?xK3O}IyN0!!oU@aQ^Ihw^D3}N_pPaL!vzxYy zxg~%nZ+*|s(pt&Q+?$wB-TJN#1_m&+!~PNTDcU)rtleOIijL+eYk6x+XDe&sYuAW> z*VF6EN<9u(50K(!{o-566Ae5ACh-6B_kRZiS?B-n!2KVn00U->930g<|3w!RLH@t( zf=D>xpDrl+-|c}~O0xgzfczpNpqFC1-oN!c&|5J*P{Z8K$z4JM+mGF0NQ}qB=`QfW z5&uPp=hJYrwz9KCIlI9SaL{@Gt^Z~?Xz(o~+I>Khycn;9Y=)(c$4?q3Or-yd~S)%;Dxl%mg9DX7#v1 z($gy|k~OUHmnn&f@F3nI)|ABf59dII@bU34L|WZff(+w9+66KVKcxyrcYZy8{(NGT z;&Te(FilNOaATNiZX%`U%9rM^ZeUnpWntl_clotC0giDi5M_wC&PMaq2G+qs&*0X_ zNgYR!@9&H`OC9~x){=6WhJ>5Dy1IhhsL=l5;ipfYP+z)~3J#i0O*wme28wx$2nlf{ zD1!zne_by6*aBDQeQINEO$CKsoCUVCrU6GDDe6x$GmD0oWAk3Jg*Gf~v0qS8QfdW9 zZ%ax`nc+m)puwA)Zb_;hJ3sWZHI%=D2P{Fe=!EYcZg%pWRbaaST4-GBD+-6lQ)ZTl zODA|=Nsyokr&am|>bm>&sp-z@L^OHMz|xD$)Y1CfPk^%JtM{wYQg;J`FAo{SiHV8n z85l4HRk|spB3#^glWJ#mvn7#FH@p(F6I1pvsZW7H&acu35ul_}LwO7y$Hz;n?^4JL zT;dTH7M75xE-igjeNf^sT-egm5)l#c^5x6%aU+r{yw8yn?)k05%K+>)6%|$MLk7G! zL&aPz9{rLtPuvF;pZ8r(Qgy4aC>`xN^h@2{-JO{+zj^cKrr0@1;F9XGe&+PgrGe?M zuQtCp6eW;22ijk;aW3k!edfuCtDReg`J+38%rUPwz=lZ!uj6d*LNH$<8gb6z(vr2? zxZAt$A%k-t&qzyN`|5pTdzU8sdToP?YRmf)gLe;>pF7EE9} z59z(pE#PMy9kdtB?1_tsncv#O!^5MFY0qqG`CMQK4%Ly%g1dlQJ|sCtEe{vnbUf>^ z{e6h++HPH6A3{{LvbNU$HH-8si9!2vfLI(HoEL83>=Zcjr}mVWHZAG#FMg+X=!P~PG5d@TrF~(tgd|Zs=cHbL4SVX!<0XghV&yi z==Xi-4fBn-<`~5TVHUG6^-{(Y{S$q_klX9)A_2$M0Ea5EA7kfcXTcb-`0bkz94<}j zseJ)QwM>MOr#ghik~bd}wGWC@APj?8Nx^moH!1OrPiEsH&-%YuPsdWP@`xYf~Rh zfxY>qOJcVu-Ze|iZ+HzC8XJD}KLV1Zd2ZvG{b4(2W>ZsB{D~q;Y@&iayu$oCC%i8Cf}z-noA?m*OUkbBYBm;``p z3nnK`9t~IFbktcCOGron!#T&p_ZR20J^CgmSHXqFOiW~Py!k--YF@_N^V8x$-X^y^ zyR$OZL{~XCH#dDwwc$=Fkik(=Q82Os=&WJ-vu!yNp){uqK4*sv|$DS=$x zK-b~E%VrJFB|16gvr>rc0$q&*RuGw6FJ)Z}hE~ z)ppv=>Ic#)y%}NzH+Fy%)G^H#`tQp!6+4(ilht3w#l=a(;CsP+d3V4yD0V;qX=sq2 zSyGw)#{c3?X=zQ3AJ~ipFCPit9fx%d9v$tL@e@Cg@ZHhT(>odM)i5>&%;Gq@>HVv@ z!spj&iFGGT_6f4-Ola?Wr?H3hl2LQua+=Z4WKwKhMib*M^iSKZuClVA#4>K=HNw@o zl4eEx0hh=3YVbKbR~p@*F@05Fj7HgMxV#%Jg&@@o4bybE1Q)lpUX>LTI9aIMn3<^l zY~Ee1TI2A4oSY0M7mM@rj}sE=XIx^&Ovv9FRVFImDL3G`5NTj&=;!CRwY3!q9;IsZ zKiVD!JpsHFV1h=SZF~m=&sDv`kHuhFN~XUBf6CQKA3iZL#k@v$H}_xBJEgbZa{GTi zSSykx@;lyJ2n+K8=VS12@jgAnPnH3Ear4>Z+vk@*b~Q%&A(X+DR`q5T-dlHW+&KTB z5imx}me!n8jzdeW-vKzA2o6|Q+w?HXa-#3VHy?wecF^c%)m(niKYJF|MvCQL=}=Qq zX$q3L8rj^Llr2?LR#sNIt`EIvY4aFMfz{_vx+MlO_3MD$jw3;(<&FLVQu|2&AE1IdG6|$kEY3dY=x$yhd-#U>h{_SG_(vg zmuF}9_4T>V>ObK&&Z*88sKQYv^ZX?Y?vecJwukmu9-o*>-rMMHD9{X&21X#^D`OwT z#l?GmcqxF6ad)iE?-G5hso(a{m#gJ3aO}e8cEPiMJ%=boH!TY|&BLQLFsm}Gx>ula znVXv%2$E-8k^%9@f#e+{&o*4YwSsBJogNEc>58XFRu|E6L&*;n^sCyEqK!RdN{WiO zcz6u-^x&orNMTRn=7WVN%0d(=Y2bA(6^lO^RNaKauS8w-PG!O|4@} zn?3uXyO$H`Xxn22e5fDcrAl6b$JVnV5D8#d{B?IL5`ou89wdxiU1m{iW`1E_1OoA2WQPBrGYcS)yl?^j|CCwu@72zKsx`J? zBtL>z^gov?D*S&gmLD$2D=HxRpNd7m5&!4R2&6EtfUxj?%FGWc^Diw4>~G};rZE8H z8s;dV!?+9kO#lTil#(_Is54-gd|EKD(sBlR5eW&P3bzmK z-t%+!;ndM+Qh4^Q{yrU1wnf5{GzkR>Pp}8oA(g*s=)-G80U0|Jldl}#x2wFHjtQ{u zXzbIq4e+tKqst%X&RjDZ*T@A7l-E*5K%&Z&1be~?|GeoK`w`tr;rzkmX4K3 z2@|UqsV9l9Zzh%e>o$J$Ez|enYI>&fmxqeuzf2wZOW9#doc< zsK=KjdP~;pk%+;S+=jRboHaJY4PHgOu8zr9>}Q_LJ`}s8(YMYK!>%$`$Z0;lWnlS% z)v%oEtY6KT(yR0OQVqT~KKH)z@^e-D=F*8IRz^~p-KA*1E_&PZ9dQrEi)`_P4~@0r zf>iD4Y-Q$|ca|7tueR~J)UtdkJQHKL!)JD!CdnFHy57SW?{JVe+J;J35p1kd-CBQo zkA`PffT!f$*lh9vY1ZxcUZcqCBIZ`rOXK|`p64vY>%}eYU1AeM4T-uhGp7qS&~oks z`rN!O`lW-`C=iH!ro%2c|{W9T!z$906QdxAq8-M zZ|Y-MTU>yM)D?>ib#JMAaz~~;HphX{w66F*ylk`_p$-dl>SKl0f!asPFW=l9e`G!? zSIyJz`{@@?;DXPK@E<
    41)7v4B$l2v@CuwtR7*KAC+JVSZmy|r@$g+>E^ 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

    ~NQW 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 + /// Editor extension used to initialize the Unity Input axes. + /// + public static class CarbonInputMapper { + ///

    + /// Deadzone for Unity axis. + /// + private const float Dead = 0.1f; + /// + /// Sensitivity for Unity axis. + /// + private const float Sensitivity = 1.0f; + + /// + /// Helper class, used to manage the settings for a single axis + /// + public class JoystickAxis { + public string Name; + public int Axis; + public int JoyNum; + public JoystickAxis(string name, int axis, int joyNum) { + this.Name = name; + this.Axis = axis; + this.JoyNum = joyNum; + } + } + +#if UNITY_2018_3_OR_NEWER + /// + /// Provides the project settings entry for CarbonInput + /// + [SettingsProvider] + static SettingsProvider CreateSettingsProvider() { + var provider = new SettingsProvider("Project/CarbonInputSettings", SettingsScope.Project, new []{"Carbon", "Input", "CarbonInput", "Axis", "Axes"}) { + label = "CarbonInput", + guiHandler = searchContext => { + if(GUILayout.Button("Create Carbon Input Axes") && EditorUtility.DisplayDialog("Init CarbonInput", "This will modify the InputManager settings by adding a bunch of axes.", "OK", "Cancel")) + AddCarbonAxes(); + if(GUILayout.Button("Remove Carbon Input Axes") && EditorUtility.DisplayDialog("Remove CarbonInput", "This will modify the InputManager settings by removing all axes named \"cin_Axis*\".", "OK", "Cancel")) + RemoveCarbonAxes(); + } + }; + return provider; + } +#else + /// + /// Initializes CarbonInput by setting up all unity axes. + /// + [MenuItem("Edit/Project Settings/Carbon Input/Create Carbon Input Axes")] + static void Init() { + if(EditorUtility.DisplayDialog("Init CarbonInput", "This will modify the InputManager settings by adding a bunch of axes.", "OK", "Cancel")) + AddCarbonAxes(); + } + + /// + /// Removes all generated unity axes. + /// + [MenuItem("Edit/Project Settings/Carbon Input/Remove Carbon Input Axes")] + static void Clear() { + if(EditorUtility.DisplayDialog("Remove CarbonInput", "This will modify the InputManager settings by removing all axes named \"cin_Axis*\".", "OK", "Cancel")) + RemoveCarbonAxes(); + } +#endif + + /// + /// Creates a new mapping used for keyboards. + /// + [MenuItem("Assets/Create/Carbon Input/Keyboard Mapping", false, 1)] + static void NewFallbackMapping() { + SaveInNewFile(CarbonController.CreateFallback(), "Keyboard"); + } + + /// + /// Helper method, used to store the given asset in a new file + /// + /// + private static void SaveInNewFile(ScriptableObject asset, string name) { + string dir = "Assets"; + if(Selection.activeObject != null) + dir = AssetDatabase.GetAssetPath(Selection.activeObject); + + int id = 0; + string file; + do { + file = Path.Combine(dir, name + id++ + ".asset"); + } while(File.Exists(file)); + AssetDatabase.CreateAsset(asset, file); + Selection.activeObject = asset; + EditorUtility.FocusProjectWindow(); + } + + /// + /// Removes all generated axes + /// + private static void RemoveCarbonAxes() { + SerializedObject serializedObject = new SerializedObject(AssetDatabase.LoadAllAssetsAtPath("ProjectSettings/InputManager.asset")[0]); + SerializedProperty axesProperty = serializedObject.FindProperty("m_Axes"); + for(int i = axesProperty.arraySize - 1; i >= 0; i--) { + SerializedProperty prop = axesProperty.GetArrayElementAtIndex(i); + prop.Next(true); + if(prop.stringValue.StartsWith(CarbonController.Tag)) axesProperty.DeleteArrayElementAtIndex(i); + } + serializedObject.ApplyModifiedProperties(); + } + /// + /// Generates all axes. + /// + private static void AddCarbonAxes() { + RemoveCarbonAxes(); // clean up first + // Any, Player One, ..., Player Eight + for(int id = 0; id < CarbonController.PlayerIndices; id++) { + for(int i = 0; i < CarbonController.InputAxisCount; i++) + //cin_AxisID_I example: cin_Axis0_00 => axis 0 for any joystick + AddAxis(new JoystickAxis(CarbonController.CreateName(id, i), i, id)); + } + } + /// + /// Adds a single unity axis to the InputManager. + /// + /// + private static void AddAxis(JoystickAxis axis) { + SerializedObject serializedObject = new SerializedObject(AssetDatabase.LoadAllAssetsAtPath("ProjectSettings/InputManager.asset")[0]); + SerializedProperty axesProperty = serializedObject.FindProperty("m_Axes"); + axesProperty.arraySize++; + serializedObject.ApplyModifiedProperties(); + SerializedProperty axisProperty = axesProperty.GetArrayElementAtIndex(axesProperty.arraySize - 1); + SetAxis(axisProperty, axis); + serializedObject.ApplyModifiedProperties(); + } + /// + /// Sets the values of a single axis. + /// + /// + /// + private static void SetAxis(SerializedProperty axisProperty, JoystickAxis axis) { + axisProperty.Next(true); + axisProperty.stringValue = axis.Name; + do { + switch(axisProperty.name) { + case "dead": axisProperty.floatValue = Dead; break; + case "sensitivity": axisProperty.floatValue = Sensitivity; break; + case "type": axisProperty.intValue = 2; break; // 2 = Joystick Axis + case "axis": axisProperty.intValue = axis.Axis; break; + case "joyNum": axisProperty.intValue = axis.JoyNum; break; + } + } while(axisProperty.Next(false)); + } + } +} diff --git a/Assets/CarbonInput/Editor/CarbonInputMapper.cs.meta b/Assets/CarbonInput/Editor/CarbonInputMapper.cs.meta new file mode 100644 index 0000000..337917f --- /dev/null +++ b/Assets/CarbonInput/Editor/CarbonInputMapper.cs.meta @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 634cb37e51c70014eb137d98ce2e7150 +timeCreated: 1455632895 +licenseType: Store +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/CarbonInput/Editor/CarbonMappingEditor.cs b/Assets/CarbonInput/Editor/CarbonMappingEditor.cs new file mode 100644 index 0000000..ececd3b --- /dev/null +++ b/Assets/CarbonInput/Editor/CarbonMappingEditor.cs @@ -0,0 +1,159 @@ +using UnityEngine; +using UnityEditor; + +namespace CarbonInput { + /// + /// Editor for . + /// + [CustomEditor(typeof(CarbonController))] + public class CarbonMappingEditor : Editor { + /// + /// Foldout buttons + /// + private bool showButtons = true; + /// + /// Foldout axes. + /// + private bool showAxes = true; + + public override void OnInspectorGUI() { + GUI.changed = false; + CarbonController mapping = (CarbonController)target; + + EditorGUI.BeginChangeCheck(); + string regex = EditorGUILayout.TextField(new GUIContent("RegEx", "Regular expression used to match joystick names."), mapping.RegEx); + if(EditorGUI.EndChangeCheck()) { + Undo.RecordObject(mapping, "Changed Gamepad RegEx"); + mapping.RegEx = regex; + } + + EditorGUI.BeginChangeCheck(); + int priority = EditorGUILayout.IntField(new GUIContent("Priority", "Lower values are checked earlier."), mapping.Priority); + if(EditorGUI.EndChangeCheck()) { + Undo.RecordObject(mapping, "Changed Gamepad Priority"); + mapping.Priority = priority; + } + + EditorGUILayout.BeginHorizontal(); + EditorGUILayout.PrefixLabel("Platform"); + EditorGUI.BeginChangeCheck(); +#if UNITY_2017_3_OR_NEWER + CPlatform platform = (CPlatform)EditorGUILayout.EnumFlagsField(mapping.Platform); +#else + CPlatform platform = (CPlatform)EditorGUILayout.EnumMaskField(mapping.Platform); +#endif + if(EditorGUI.EndChangeCheck()) { + Undo.RecordObject(mapping, "Changed Gamepad Platform"); + mapping.Platform = platform; + } + EditorGUILayout.EndHorizontal(); + + EditorGUI.BeginChangeCheck(); + bool useOnce = EditorGUILayout.Toggle(new GUIContent("Use Once", "Whether this mapping should only be used for one joystick."), mapping.UseOnce); + if(EditorGUI.EndChangeCheck()) { + Undo.RecordObject(mapping, "Changed Gamepad Use Once"); + mapping.UseOnce = useOnce; + } + + showButtons = EditorGUILayout.Foldout(showButtons, "Buttons"); + if(showButtons) { + EditorGUILayout.BeginVertical(); + for(int i = 0; i < CarbonController.ButtonCount; i++) { + ButtonMapping btn = mapping.Buttons[i]; + ButtonMapping tmp = new ButtonMapping(btn); + EditorGUI.BeginChangeCheck(); + EditorGUILayout.BeginHorizontal(); + EditorGUILayout.LabelField(((CButton)i).ToString(), GUILayout.MaxWidth(50f)); + tmp.Type = (ButtonMapping.ButtonType)EditorGUILayout.EnumPopup(btn.Type, GUILayout.MaxWidth(100f)); + if(btn.Type == ButtonMapping.ButtonType.Wrapper) { + tmp.Key = (KeyCode)EditorGUILayout.EnumPopup(btn.Key, GUILayout.MaxWidth(100f)); + } else { + tmp.Button = Mathf.Clamp(EditorGUILayout.IntField(btn.Button, GUILayout.MaxWidth(100f)), 0, 19); + } + EditorGUILayout.EndHorizontal(); + if(EditorGUI.EndChangeCheck()) { + Undo.RecordObject(mapping, "Changed Button Mapping"); + btn.CopyFrom(tmp); // copy back + } + } + EditorGUILayout.EndVertical(); + } + + showAxes = EditorGUILayout.Foldout(showAxes, "Axes"); + if(showAxes) { + EditorGUILayout.BeginVertical(); + EditorGUILayout.BeginHorizontal(); + EditorGUILayout.LabelField("Name", GUILayout.MaxWidth(50f)); + EditorGUILayout.LabelField("Axis", GUILayout.MaxWidth(70f)); + EditorGUILayout.LabelField("Invert", GUILayout.MaxWidth(40f)); + EditorGUILayout.LabelField("Type", GUILayout.MaxWidth(80f)); + EditorGUILayout.EndHorizontal(); + for(int i = 0; i < CarbonController.AxisCount; i++) { + AxisMapping axis = mapping.Axes[i]; + AxisMapping tmp = new AxisMapping(axis); + EditorGUI.BeginChangeCheck(); + EditorGUILayout.BeginHorizontal(); + EditorGUILayout.LabelField(((CAxis)i).ToString(), GUILayout.MaxWidth(50f)); + if(axis.Type == AxisMapping.AxisType.KeyWrapper || axis.Type == AxisMapping.AxisType.ButtonWrapper2) { + EditorGUILayout.LabelField("", GUILayout.MaxWidth(80f)); + } else if(axis.Type == AxisMapping.AxisType.ButtonWrapper) { + tmp.Axis = Mathf.Clamp(EditorGUILayout.IntField(axis.Axis, GUILayout.MaxWidth(80f)), 0, CarbonController.JoystickButtonCount - 1); + } else { + tmp.Axis = Mathf.Clamp(EditorGUILayout.IntField(axis.Axis, GUILayout.MaxWidth(80f)), 0, CarbonController.InputAxisCount - 1); + } + tmp.Invert = EditorGUILayout.Toggle(axis.Invert, GUILayout.MaxWidth(20f)); + tmp.Type = (AxisMapping.AxisType)EditorGUILayout.EnumPopup(axis.Type, GUILayout.MaxWidth(100f)); + EditorGUILayout.EndHorizontal(); + + switch(axis.Type) { + case AxisMapping.AxisType.KeyWrapper: + EditorGUILayout.BeginHorizontal(); + EditorGUILayout.Space(); + EditorGUILayout.LabelField("Negative", GUILayout.MaxWidth(60f)); + tmp.Key1 = (KeyCode)EditorGUILayout.EnumPopup(axis.Key1, GUILayout.MaxWidth(80f)); + EditorGUILayout.LabelField("Positive", GUILayout.MaxWidth(60f)); + tmp.Key2 = (KeyCode)EditorGUILayout.EnumPopup(axis.Key2, GUILayout.MaxWidth(80f)); + EditorGUILayout.EndHorizontal(); + break; + case AxisMapping.AxisType.ButtonWrapper: + EditorGUILayout.BeginHorizontal(); + EditorGUILayout.Space(); + EditorGUILayout.LabelField("Released", GUILayout.MaxWidth(60f)); + tmp.Min = EditorGUILayout.FloatField(axis.Min, GUILayout.MaxWidth(40f)); + EditorGUILayout.LabelField("Pressed", GUILayout.MaxWidth(60f)); + tmp.Max = EditorGUILayout.FloatField(axis.Max, GUILayout.MaxWidth(40f)); + EditorGUILayout.EndHorizontal(); + break; + case AxisMapping.AxisType.ButtonWrapper2: + EditorGUILayout.BeginHorizontal(); + EditorGUILayout.Space(); + EditorGUILayout.LabelField("Negative", GUILayout.MaxWidth(60f)); + tmp.Axis = Mathf.Clamp(EditorGUILayout.IntField(axis.Axis, GUILayout.MaxWidth(40f)), 0, CarbonController.JoystickButtonCount - 1); + EditorGUILayout.LabelField("Positive", GUILayout.MaxWidth(60f)); + tmp.Alternative = Mathf.Clamp(EditorGUILayout.IntField(axis.Alternative, GUILayout.MaxWidth(40f)), 0, CarbonController.JoystickButtonCount - 1); + EditorGUILayout.EndHorizontal(); + break; + case AxisMapping.AxisType.Clamped: + EditorGUILayout.BeginHorizontal(); + EditorGUILayout.Space(); + EditorGUILayout.LabelField("Min", GUILayout.MaxWidth(40f)); + tmp.Min = EditorGUILayout.FloatField(axis.Min, GUILayout.MaxWidth(40f)); + EditorGUILayout.LabelField("Max", GUILayout.MaxWidth(40f)); + tmp.Max = EditorGUILayout.FloatField(axis.Max, GUILayout.MaxWidth(40f)); + EditorGUILayout.EndHorizontal(); + break; + } + if(EditorGUI.EndChangeCheck()) { + Undo.RecordObject(mapping, "Changed Axis Mapping"); + axis.CopyFrom(tmp); // copy back + } + } + EditorGUILayout.EndVertical(); + } + + if(GUI.changed) { + EditorUtility.SetDirty(target); + } + } + } +} diff --git a/Assets/CarbonInput/Editor/CarbonMappingEditor.cs.meta b/Assets/CarbonInput/Editor/CarbonMappingEditor.cs.meta new file mode 100644 index 0000000..3312ce3 --- /dev/null +++ b/Assets/CarbonInput/Editor/CarbonMappingEditor.cs.meta @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: eff2d4adbe77113479dbc708ac7a63a0 +timeCreated: 1455638714 +licenseType: Store +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/CarbonInput/Editor/CarbonSettingsEditor.cs b/Assets/CarbonInput/Editor/CarbonSettingsEditor.cs new file mode 100644 index 0000000..034eec5 --- /dev/null +++ b/Assets/CarbonInput/Editor/CarbonSettingsEditor.cs @@ -0,0 +1,63 @@ +using UnityEngine; +using UnityEditor; + +namespace CarbonInput { + /// + /// Editor for . + /// + [CustomEditor(typeof(CarbonSettings))] + public class CarbonSettingsEditor : Editor { + /// + /// Short info text for + /// + private static string[] BehaviourHelp = { + "UseMappingOne:\nUse the same mapping PlayerIndex.One uses, but listen on any gamepad for that mapping.", + "UseControllerOne:\nAlways use PlayerIndex.One whenever PlayerIndex.Any is used.", + "CheckAll:\nGo over all players and use first match. Slightly slower than the other two behaviours, but it is the most accurate." + }; + + private CarbonSettings Settings { get { return (CarbonSettings)target; } } + + public override void OnInspectorGUI() { + GUI.changed = false; + EditorGUILayout.HelpBox(BehaviourHelp[(int)Settings.Behaviour], MessageType.Info); + EditorGUILayout.BeginHorizontal(); + EditorGUILayout.LabelField(new GUIContent("Behaviour", "Defines the behaviour of PlayerIndex.Any"), GUILayout.Width(100)); + EditorGUI.BeginChangeCheck(); + AnyBehaviour value = (AnyBehaviour)EditorGUILayout.EnumPopup(Settings.Behaviour); + if(EditorGUI.EndChangeCheck()) { + Undo.RecordObject(Settings, "Changed Behaviour to " + value.ToString()); + Settings.Behaviour = value; + } + EditorGUILayout.EndHorizontal(); + EditorGUILayout.Separator(); + + EditorGUILayout.HelpBox( + "The default behaviour of any axis is as follows:\n" + + "X axis goes from -1 (left) to +1(right)\n" + + "Y axis goes from -1 (up) to +1 (down)", MessageType.Info); + EditorGUILayout.LabelField("Inverted Axis"); + EditorGUILayout.BeginHorizontal(); + AxisToggle(CAxis.LX); AxisToggle(CAxis.RX); AxisToggle(CAxis.DX); + EditorGUILayout.EndHorizontal(); + EditorGUILayout.BeginHorizontal(); + AxisToggle(CAxis.LY); AxisToggle(CAxis.RY); AxisToggle(CAxis.DY); + EditorGUILayout.EndHorizontal(); + + if(GUI.changed) EditorUtility.SetDirty(target); + } + + /// + /// Helper method used to invert an axis, providing an undo action. + /// + /// + private void AxisToggle(CAxis axis) { + EditorGUI.BeginChangeCheck(); + bool value = EditorGUILayout.ToggleLeft(axis.ToString(), Settings[axis], GUILayout.Width(40)); + if(EditorGUI.EndChangeCheck()) { + Undo.RecordObject(Settings, "Inverted Axis " + axis.ToString()); + Settings[axis] = value; + } + } + } +} diff --git a/Assets/CarbonInput/Editor/CarbonSettingsEditor.cs.meta b/Assets/CarbonInput/Editor/CarbonSettingsEditor.cs.meta new file mode 100644 index 0000000..ee1419a --- /dev/null +++ b/Assets/CarbonInput/Editor/CarbonSettingsEditor.cs.meta @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: d75853247afc34d4bbf918cbcd251c95 +timeCreated: 1455907842 +licenseType: Store +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/CarbonInput/Editor/ReInitEditor.cs b/Assets/CarbonInput/Editor/ReInitEditor.cs new file mode 100644 index 0000000..99b6054 --- /dev/null +++ b/Assets/CarbonInput/Editor/ReInitEditor.cs @@ -0,0 +1,11 @@ +using UnityEditor; + +namespace CarbonInput { + [CustomEditor(typeof(ReInit))] + public class ReInitEditor : Editor { + public override void OnInspectorGUI() { + EditorGUILayout.HelpBox("The automatically generated \"GamePad ReInit\" gameobject " + + "and this script are used to detect if a gamepad has (dis)connected.", MessageType.Info); + } + } +} \ No newline at end of file diff --git a/Assets/CarbonInput/Editor/ReInitEditor.cs.meta b/Assets/CarbonInput/Editor/ReInitEditor.cs.meta new file mode 100644 index 0000000..1346ef7 --- /dev/null +++ b/Assets/CarbonInput/Editor/ReInitEditor.cs.meta @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 5154737445f00d24f98525a4ac20dcfd +timeCreated: 1483359505 +licenseType: Store +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/CarbonInput/Gizmos.meta b/Assets/CarbonInput/Gizmos.meta new file mode 100644 index 0000000..7974e95 --- /dev/null +++ b/Assets/CarbonInput/Gizmos.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: ea45dcadf3b669f4a83e128277dde6d7 +folderAsset: yes +timeCreated: 1456526605 +licenseType: Store +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/CarbonInput/Gizmos/CarbonController Icon.png b/Assets/CarbonInput/Gizmos/CarbonController Icon.png new file mode 100644 index 0000000000000000000000000000000000000000..513b63a16d257bc1fec675084cc6f7cba9f4d475 GIT binary patch literal 19433 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 z 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 literal 0 HcmV?d00001 diff --git a/Assets/CarbonInput/Gizmos/CarbonController Icon.png.meta b/Assets/CarbonInput/Gizmos/CarbonController Icon.png.meta new file mode 100644 index 0000000..5212615 --- /dev/null +++ b/Assets/CarbonInput/Gizmos/CarbonController Icon.png.meta @@ -0,0 +1,57 @@ +fileFormatVersion: 2 +guid: 06d57916e2cee5c4aa72f7fdd36ed624 +timeCreated: 1456526767 +licenseType: Store +TextureImporter: + fileIDToRecycleName: {} + serializedVersion: 2 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + linearTexture: 0 + correctGamma: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 0 + cubemapConvolution: 0 + cubemapConvolutionSteps: 7 + cubemapConvolutionExponent: 1.5 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 2048 + textureSettings: + filterMode: -1 + aniso: -1 + mipBias: -1 + wrapMode: -1 + nPOTScale: 1 + lightmap: 0 + rGBM: 0 + compressionQuality: 50 + allowsAlphaSplitting: 0 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaIsTransparency: 0 + textureType: -1 + buildTargetSettings: [] + spriteSheet: + sprites: [] + outline: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/CarbonInput/Gizmos/CarbonSettings Icon.png b/Assets/CarbonInput/Gizmos/CarbonSettings Icon.png new file mode 100644 index 0000000000000000000000000000000000000000..b698eeb421fa9a4f3fbccb852d71d02c852a0737 GIT binary patch literal 17075 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%0D767kv$cEzH(Ee7>z$~y30bp&=t>8-O2^7f6Wn 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 D#A@h_ literal 0 HcmV?d00001 diff --git a/Assets/CarbonInput/Graphics/DarkB.png.meta b/Assets/CarbonInput/Graphics/DarkB.png.meta new file mode 100644 index 0000000..578f85e --- /dev/null +++ b/Assets/CarbonInput/Graphics/DarkB.png.meta @@ -0,0 +1,92 @@ +fileFormatVersion: 2 +guid: 98d7f118bcca34946a995c52bc40dea5 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 11 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: -1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + applyGammaDecoding: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 5e97eb03825dee720800000000000000 + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/CarbonInput/Graphics/DarkBase.png b/Assets/CarbonInput/Graphics/DarkBase.png new file mode 100644 index 0000000000000000000000000000000000000000..4621d0eeadac9afee2174b38b808843754d90f60 GIT binary patch literal 8468 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 literal 0 HcmV?d00001 diff --git a/Assets/CarbonInput/Graphics/DarkBase.png.meta b/Assets/CarbonInput/Graphics/DarkBase.png.meta new file mode 100644 index 0000000..609e913 --- /dev/null +++ b/Assets/CarbonInput/Graphics/DarkBase.png.meta @@ -0,0 +1,92 @@ +fileFormatVersion: 2 +guid: 74ee184c93bf323408525923cd72c7ff +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 11 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: -1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + applyGammaDecoding: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 5e97eb03825dee720800000000000000 + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/CarbonInput/Graphics/DarkStick.png b/Assets/CarbonInput/Graphics/DarkStick.png new file mode 100644 index 0000000000000000000000000000000000000000..1fc09b7bd6c29ea1b52de10212f8751e6f854e3d GIT binary patch literal 4557 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 literal 0 HcmV?d00001 diff --git a/Assets/CarbonInput/Graphics/DarkStick.png.meta b/Assets/CarbonInput/Graphics/DarkStick.png.meta new file mode 100644 index 0000000..eb97c92 --- /dev/null +++ b/Assets/CarbonInput/Graphics/DarkStick.png.meta @@ -0,0 +1,92 @@ +fileFormatVersion: 2 +guid: f21ba0f3526cf6542a7c0e99a06294c3 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 11 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: -1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + applyGammaDecoding: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 5e97eb03825dee720800000000000000 + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/CarbonInput/Graphics/DarkX.png b/Assets/CarbonInput/Graphics/DarkX.png new file mode 100644 index 0000000000000000000000000000000000000000..3baf7dbd0c7e9523b99ebdf0449dd3a5e7016ad2 GIT binary patch literal 2612 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 A#sB~S literal 0 HcmV?d00001 diff --git a/Assets/CarbonInput/Graphics/LightBase.png.meta b/Assets/CarbonInput/Graphics/LightBase.png.meta new file mode 100644 index 0000000..ea208c7 --- /dev/null +++ b/Assets/CarbonInput/Graphics/LightBase.png.meta @@ -0,0 +1,92 @@ +fileFormatVersion: 2 +guid: add56e014af900b4c9ed27006168622d +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 11 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: -1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + applyGammaDecoding: 1 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 5e97eb03825dee720800000000000000 + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/CarbonInput/Graphics/LightStick.png b/Assets/CarbonInput/Graphics/LightStick.png new file mode 100644 index 0000000000000000000000000000000000000000..837f8bae4258cf0900fbbc78c98dd23adbbda1ad GIT binary patch literal 3076 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 SOR?qv0000 + /// Describes a mapping for a specific controller. This mapping is independend of the PlayerIndex. + /// Each CarbonController defines how buttons and axes are mapped correctly to the Unity Input. + /// + [CreateAssetMenu(fileName = "NewCarbonMapping", menuName = "Carbon Input/GamePad Mapping")] + public class CarbonController : ScriptableObject { + ///

    + /// Number of buttons defined in the enumeration. + /// + public const int ButtonCount = 10; // Must match the CButton enum! + /// + /// Number of axes defined in the enumeration. + /// + public const int AxisCount = 8; // Must match the CAxis enum! + /// + /// Number of generated axes, + /// + public const int InputAxisCount = 16; // Must match the number of generated Input axes! + /// + /// Number of joystick buttons supported by unity. + /// + public const int JoystickButtonCount = 20; // Number of joystick buttons supported by Unity + /// + /// Number of entries in enumeration. + /// + public const int PlayerIndices = 9; // Any, One, ..., Eight + /// + /// Prefix of all generated axes. + /// + public const string Tag = "cin_Axis"; + + /// + /// Mapping of [, JoystickAxis] to its name. + /// + private static readonly string[,] AxisNames; + static CarbonController() { + // construct all strings beforehand + AxisNames = new string[PlayerIndices, InputAxisCount]; + for(int id = 0; id < PlayerIndices; id++) { + for(int axis = 0; axis < InputAxisCount; axis++) { + AxisNames[id, axis] = CreateName(id, axis); + } + } + } + /// + /// Create the input axis name for and axis. + /// + /// + /// + /// + public static string CreateName(int id, int axis) { + return Tag + id + "_" + axis.ToString("D2"); + } + + /// + /// Regular expression used to check if this mapping can be used for a controller. + /// + public string RegEx; + /// + /// Platforms supported by this mapping. + /// + public CPlatform Platform; + /// + /// Priority of this mapping. On startup the system will try to find a correct mapping for all controller. Lower priority mappings will be tester earlier. + /// + public int Priority = 1000; + /// + /// If true, this mapping will only be used once, even if it could be used multiple times. + /// + public bool UseOnce; + /// + /// If true, this mapping can be replaced by touch mappings. + /// + public bool Replacable; + /// + /// All mappings for all possible . This array must have exactly many entries. + /// + public AxisMapping[] Axes = new AxisMapping[AxisCount]; + /// + /// All mappings for all possible s. This array must have exactly many entries. + /// + public ButtonMapping[] Buttons = new ButtonMapping[ButtonCount]; + + /// + /// Returns true if this mapping is a fallback mapping. + /// A mapping is considered a fallback, if it doesn't have a proper . + /// By default, the keyboard is considered a fallback mapping. + /// + /// + public bool IsFallback() { + return string.IsNullOrEmpty(RegEx); + } + + public CarbonController() { + for(int i = 0; i < Buttons.Length; i++) Buttons[i] = new ButtonMapping(); + for(int i = 0; i < Axes.Length; i++) Axes[i] = new AxisMapping(); + } + + /// + /// Checks if controller button btn of player id is pressed. + /// + /// GamePad button + /// Index of player + /// + public virtual bool GetButton(CButton btn, int id) { + ButtonMapping key = Buttons[(int)btn]; + if(key.Type == ButtonMapping.ButtonType.Wrapper) { + if(key.Key != KeyCode.None) return Input.GetKey(key.Key); + } else { + //JoystickButton0 = 330 ... JoystickButton19 = 349 + //Joystick1Button0 = 350 ... Joystick1Button19 = 369 + // ... + //Joystick8Button0 = 490 ... Joystick8Button19 = 509 + return Input.GetKey(KeyCode.JoystickButton0 + id * JoystickButtonCount + key.Button); + } + return false; + } + + /// + /// Returns the value of the virtual axis of player identified by the parameter; + /// + /// + /// + /// + public virtual float GetAxis(CAxis axis, int id) { + AxisMapping mapping = Axes[(int)axis]; + float result = 0; + switch(mapping.Type) { + case AxisMapping.AxisType.Default: + result = Input.GetAxis(AxisNames[id, mapping.Axis]); + break; + case AxisMapping.AxisType.ButtonWrapper: + result = Input.GetKey(KeyCode.JoystickButton0 + id * JoystickButtonCount + mapping.Axis) ? mapping.Max : mapping.Min; + break; + case AxisMapping.AxisType.KeyWrapper: + bool key1 = Input.GetKey(mapping.Key1); + bool key2 = Input.GetKey(mapping.Key2); + if(key1 && !key2) result = -1; + else if(!key1 && key2) result = 1; + else result = 0; + break; + case AxisMapping.AxisType.Clamped: + result = Mathf.Clamp(Input.GetAxis(AxisNames[id, mapping.Axis]), mapping.Min, mapping.Max); + break; + case AxisMapping.AxisType.ButtonWrapper2: + key1 = Input.GetKey(KeyCode.JoystickButton0 + id * JoystickButtonCount + mapping.Axis); + key2 = Input.GetKey(KeyCode.JoystickButton0 + id * JoystickButtonCount + mapping.Alternative); + if(key1 && !key2) result = -1; + else if(!key1 && key2) result = 1; + else result = 0; + break; + case AxisMapping.AxisType.TriggerLimiter: + result = (Input.GetAxis(AxisNames[id, mapping.Axis]) + 1f) / 2f; + break; + } + if(mapping.Invert) return -result; + return result; + } + + /// + /// Returns true if this mapping is supported on the execution platform. + /// + /// + public bool SupportedOnThisPlatform() { + switch(Application.platform) { + case RuntimePlatform.WebGLPlayer: return Has(CPlatform.WebGL); + case RuntimePlatform.Android: return Has(CPlatform.Android); + case RuntimePlatform.IPhonePlayer: return Has(CPlatform.IOS); + case RuntimePlatform.LinuxEditor: + case RuntimePlatform.LinuxPlayer: return Has(CPlatform.Linux); + case RuntimePlatform.OSXEditor: + case RuntimePlatform.OSXPlayer: + return Has(CPlatform.OSX); + case RuntimePlatform.PS4: return Has(CPlatform.PS4); +#if !UNITY_2018_3_OR_NEWER + case RuntimePlatform.PSP2: return Has(CPlatform.PSP2); +#endif +#if !UNITY_2018_1_OR_NEWER + case RuntimePlatform.WiiU: return Has(CPlatform.Wii); +#endif + case RuntimePlatform.WindowsEditor: + case RuntimePlatform.WindowsPlayer: return Has(CPlatform.Windows); + case RuntimePlatform.WSAPlayerARM: + case RuntimePlatform.WSAPlayerX64: + case RuntimePlatform.WSAPlayerX86: return Has(CPlatform.WSA); + case RuntimePlatform.XboxOne: return Has(CPlatform.XBoxOne); + } + return false; + } + + + /// + /// Checks if the given is set in . + /// + /// + /// + private bool Has(CPlatform flag) { + return (Platform & flag) == flag; + } + + /// + /// This will return a fallback instance, using the keyboard. + /// + /// + public static CarbonController CreateFallback() { + CarbonController cc = CreateInstance(); + cc.Platform = (CPlatform)(-1); + MakeKeyWrapper(cc.Buttons[0], KeyCode.RightShift); + MakeKeyWrapper(cc.Buttons[1], KeyCode.RightControl); + MakeKeyWrapper(cc.Buttons[2], KeyCode.LeftShift); + MakeKeyWrapper(cc.Buttons[3], KeyCode.Space); + MakeKeyWrapper(cc.Buttons[4], KeyCode.Escape); + MakeKeyWrapper(cc.Buttons[5], KeyCode.Return); + MakeKeyWrapper(cc.Buttons[6], KeyCode.Q); + MakeKeyWrapper(cc.Buttons[7], KeyCode.E); + MakeKeyWrapper(cc.Buttons[8]); + MakeKeyWrapper(cc.Buttons[9]); + MakeKeyWrapper(cc.Axes[0], KeyCode.A, KeyCode.D); + MakeKeyWrapper(cc.Axes[1], KeyCode.W, KeyCode.S); + for(int i = 2; i < AxisCount; i++) MakeKeyWrapper(cc.Axes[i]); + return cc; + } + + /// + /// This will return a fallback instance, which doesn't respond to any key. + /// + /// + public static CarbonController CreateDisabledInput() { + var cc = CreateInstance(); + cc.name = "DisabledInput"; + cc.Platform = (CPlatform)(-1); + cc.Replacable = true; + for(int i = 0; i < ButtonCount; i++) + MakeKeyWrapper(cc.Buttons[i]); + for(int i = 0; i < AxisCount; i++) + MakeKeyWrapper(cc.Axes[i]); + return cc; + } + + /// + /// Sets the given to be a + /// + /// + /// + /// + private static void MakeKeyWrapper(AxisMapping mapping, KeyCode key1 = KeyCode.None, KeyCode key2 = KeyCode.None) { + mapping.Type = AxisMapping.AxisType.KeyWrapper; + mapping.Key1 = key1; + mapping.Min = key1 != KeyCode.None ? -1 : 0; + mapping.Key2 = key2; + mapping.Max = key2 != KeyCode.None ? 1 : 0; + } + + /// + /// Sets the given to be a . + /// + /// + /// + private static void MakeKeyWrapper(ButtonMapping mapping, KeyCode key = KeyCode.None) { + mapping.Type = ButtonMapping.ButtonType.Wrapper; + mapping.Key = key; + } + } +} diff --git a/Assets/CarbonInput/Scripts/CarbonController.cs.meta b/Assets/CarbonInput/Scripts/CarbonController.cs.meta new file mode 100644 index 0000000..93f1ed8 --- /dev/null +++ b/Assets/CarbonInput/Scripts/CarbonController.cs.meta @@ -0,0 +1,16 @@ +fileFormatVersion: 2 +guid: c038c960b0ce7624993fdb8e9953dba8 +labels: +- Gamepad +- Input +- Joystick +timeCreated: 1455638784 +licenseType: Store +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/CarbonInput/Scripts/CarbonInputModule.cs b/Assets/CarbonInput/Scripts/CarbonInputModule.cs new file mode 100644 index 0000000..23f345a --- /dev/null +++ b/Assets/CarbonInput/Scripts/CarbonInputModule.cs @@ -0,0 +1,469 @@ +using System; +using UnityEngine; +using UnityEngine.EventSystems; +using UnityEngine.Serialization; + +namespace CarbonInput { + [AddComponentMenu("Event/Carbon Input Module")] + public class CarbonInputModule : PointerInputModule { + private const float Threshold = 0.3f; + public PlayerIndex Player = PlayerIndex.Any; + public CAxis HorizontalAxis = CAxis.LX; + public bool InvertHorizontal; + public CAxis VerticalAxis = CAxis.LY; + public bool InvertVertical = true; + public CButton SubmitButton = CButton.A; + public CButton CancelButton = CButton.B; + + private float m_PrevActionTime; + private Vector2 m_LastMoveVector; + private int m_ConsecutiveMoveCount; + + private Vector2 m_LastMousePosition; + private Vector2 m_MousePosition; + private Vector2 _lastRawMove; + + private bool HorizontalPressed { get { return Math.Abs(_lastRawMove.x) < Threshold && Math.Abs(GamePad.GetAxis(HorizontalAxis, Player)) > Threshold; } } + private bool VerticalPressed { get { return Math.Abs(_lastRawMove.y) < Threshold && Math.Abs(GamePad.GetAxis(VerticalAxis, Player)) > Threshold; } } + + protected CarbonInputModule() { + } + + [Obsolete("Mode is no longer needed on input module as it handles both mouse and keyboard simultaneously.", false)] + public enum InputMode { + Mouse, + Buttons + } + + [Obsolete("Mode is no longer needed on input module as it handles both mouse and keyboard simultaneously.", false)] + public InputMode inputMode { + get { return InputMode.Mouse; } + } + + [SerializeField] + private float m_InputActionsPerSecond = 10; + + [SerializeField] + private float m_RepeatDelay = 0.5f; + + [SerializeField] + [FormerlySerializedAs("m_AllowActivationOnMobileDevice")] + private bool m_ForceModuleActive; + + [Obsolete("allowActivationOnMobileDevice has been deprecated. Use forceModuleActive instead (UnityUpgradable) -> forceModuleActive")] + public bool allowActivationOnMobileDevice { + get { return m_ForceModuleActive; } + set { m_ForceModuleActive = value; } + } + + public bool forceModuleActive { + get { return m_ForceModuleActive; } + set { m_ForceModuleActive = value; } + } + + public float inputActionsPerSecond { + get { return m_InputActionsPerSecond; } + set { m_InputActionsPerSecond = value; } + } + + public float repeatDelay { + get { return m_RepeatDelay; } + set { m_RepeatDelay = value; } + } + + public override void UpdateModule() { + m_LastMousePosition = m_MousePosition; + m_MousePosition = Input.mousePosition; + } + + public override bool IsModuleSupported() { + return m_ForceModuleActive || Input.mousePresent || Input.touchSupported; + } + + public override bool ShouldActivateModule() { + if(!base.ShouldActivateModule()) + return false; + + var state = GamePad.GetState(Player); + var shouldActivate = m_ForceModuleActive; + shouldActivate |= state.Pressed(SubmitButton); + shouldActivate |= state.Pressed(CancelButton); + shouldActivate |= GetRawMoveVector().sqrMagnitude > 0.0f; + shouldActivate |= (m_MousePosition - m_LastMousePosition).sqrMagnitude > 0.0f; + shouldActivate |= Input.GetMouseButtonDown(0); + + if(Input.touchCount > 0) + shouldActivate = true; + + return shouldActivate; + } + + public override void ActivateModule() { + base.ActivateModule(); + m_MousePosition = Input.mousePosition; + m_LastMousePosition = Input.mousePosition; + + var toSelect = eventSystem.currentSelectedGameObject; + if(toSelect == null) + toSelect = eventSystem.firstSelectedGameObject; + + eventSystem.SetSelectedGameObject(toSelect, GetBaseEventData()); + } + + public override void DeactivateModule() { + base.DeactivateModule(); + ClearSelection(); + } + + public override void Process() { + bool usedEvent = SendUpdateEventToSelectedObject(); + + if(eventSystem.sendNavigationEvents) { + if(!usedEvent) + usedEvent |= SendMoveEventToSelectedObject(); + + if(!usedEvent) + SendSubmitEventToSelectedObject(); + } + + // touch needs to take precedence because of the mouse emulation layer + if(!ProcessTouchEvents()) + ProcessMouseEvent(); + _lastRawMove = GetRawMoveVector(); + } + + private bool ProcessTouchEvents() { + for(int i = 0; i < Input.touchCount; ++i) { + Touch input = Input.GetTouch(i); + + if(input.type == TouchType.Indirect) + continue; + + bool released; + bool pressed; + var pointer = GetTouchPointerEventData(input, out pressed, out released); + + ProcessTouchPress(pointer, pressed, released); + + if(!released) { + ProcessMove(pointer); + ProcessDrag(pointer); + } else + RemovePointerData(pointer); + } + return Input.touchCount > 0; + } + + private void ProcessTouchPress(PointerEventData pointerEvent, bool pressed, bool released) { + var currentOverGo = pointerEvent.pointerCurrentRaycast.gameObject; + + // PointerDown notification + if(pressed) { + pointerEvent.eligibleForClick = true; + pointerEvent.delta = Vector2.zero; + pointerEvent.dragging = false; + pointerEvent.useDragThreshold = true; + pointerEvent.pressPosition = pointerEvent.position; + pointerEvent.pointerPressRaycast = pointerEvent.pointerCurrentRaycast; + + DeselectIfSelectionChanged(currentOverGo, pointerEvent); + + if(pointerEvent.pointerEnter != currentOverGo) { + // send a pointer enter to the touched element if it isn't the one to select... + HandlePointerExitAndEnter(pointerEvent, currentOverGo); + pointerEvent.pointerEnter = currentOverGo; + } + + // search for the control that will receive the press + // if we can't find a press handler set the press + // handler to be what would receive a click. + var newPressed = ExecuteEvents.ExecuteHierarchy(currentOverGo, pointerEvent, ExecuteEvents.pointerDownHandler); + + // didnt find a press handler... search for a click handler + if(newPressed == null) + newPressed = ExecuteEvents.GetEventHandler(currentOverGo); + + // Debug.Log("Pressed: " + newPressed); + + float time = Time.unscaledTime; + + if(newPressed == pointerEvent.lastPress) { + var diffTime = time - pointerEvent.clickTime; + if(diffTime < 0.3f) + ++pointerEvent.clickCount; + else + pointerEvent.clickCount = 1; + + pointerEvent.clickTime = time; + } else { + pointerEvent.clickCount = 1; + } + + pointerEvent.pointerPress = newPressed; + pointerEvent.rawPointerPress = currentOverGo; + + pointerEvent.clickTime = time; + + // Save the drag handler as well + pointerEvent.pointerDrag = ExecuteEvents.GetEventHandler(currentOverGo); + + if(pointerEvent.pointerDrag != null) + ExecuteEvents.Execute(pointerEvent.pointerDrag, pointerEvent, ExecuteEvents.initializePotentialDrag); + } + + // PointerUp notification + if(released) { + // Debug.Log("Executing pressup on: " + pointer.pointerPress); + ExecuteEvents.Execute(pointerEvent.pointerPress, pointerEvent, ExecuteEvents.pointerUpHandler); + + // Debug.Log("KeyCode: " + pointer.eventData.keyCode); + + // see if we mouse up on the same element that we clicked on... + var pointerUpHandler = ExecuteEvents.GetEventHandler(currentOverGo); + + // PointerClick and Drop events + if(pointerEvent.pointerPress == pointerUpHandler && pointerEvent.eligibleForClick) { + ExecuteEvents.Execute(pointerEvent.pointerPress, pointerEvent, ExecuteEvents.pointerClickHandler); + } else if(pointerEvent.pointerDrag != null && pointerEvent.dragging) { + ExecuteEvents.ExecuteHierarchy(currentOverGo, pointerEvent, ExecuteEvents.dropHandler); + } + + pointerEvent.eligibleForClick = false; + pointerEvent.pointerPress = null; + pointerEvent.rawPointerPress = null; + + if(pointerEvent.pointerDrag != null && pointerEvent.dragging) + ExecuteEvents.Execute(pointerEvent.pointerDrag, pointerEvent, ExecuteEvents.endDragHandler); + + pointerEvent.dragging = false; + pointerEvent.pointerDrag = null; + + if(pointerEvent.pointerDrag != null) + ExecuteEvents.Execute(pointerEvent.pointerDrag, pointerEvent, ExecuteEvents.endDragHandler); + + pointerEvent.pointerDrag = null; + + // send exit events as we need to simulate this on touch up on touch device + ExecuteEvents.ExecuteHierarchy(pointerEvent.pointerEnter, pointerEvent, ExecuteEvents.pointerExitHandler); + pointerEvent.pointerEnter = null; + } + } + + /// + /// Process submit keys. + /// + protected bool SendSubmitEventToSelectedObject() { + if(eventSystem.currentSelectedGameObject == null) + return false; + + var state = GamePad.GetState(Player); + var data = GetBaseEventData(); + if(state.Pressed(SubmitButton)) + ExecuteEvents.Execute(eventSystem.currentSelectedGameObject, data, ExecuteEvents.submitHandler); + + if(state.Pressed(CancelButton)) + ExecuteEvents.Execute(eventSystem.currentSelectedGameObject, data, ExecuteEvents.cancelHandler); + return data.used; + } + + private Vector2 GetMoveVector() { + var x = GamePad.GetAxis(HorizontalAxis, Player); + if(InvertHorizontal) x = -x; + var y = GamePad.GetAxis(VerticalAxis, Player); + if(InvertVertical) y = -y; + return new Vector2(x, y); + } + + private Vector2 GetRawMoveVector() { + Vector2 move = GetMoveVector(); + + if(HorizontalPressed) { + if(move.x < 0) + move.x = -1f; + if(move.x > 0) + move.x = 1f; + } + if(VerticalPressed) { + if(move.y < 0) + move.y = -1f; + if(move.y > 0) + move.y = 1f; + } + return move; + } + + /// + /// Process keyboard events. + /// + protected bool SendMoveEventToSelectedObject() { + float time = Time.unscaledTime; + + Vector2 movement = GetRawMoveVector(); + if(Mathf.Approximately(movement.x, 0f) && Mathf.Approximately(movement.y, 0f)) { + m_ConsecutiveMoveCount = 0; + return false; + } + + // If user pressed key again, always allow event + bool allow = HorizontalPressed || VerticalPressed; + bool similarDir = (Vector2.Dot(movement, m_LastMoveVector) > 0); + if(!allow) { + // Otherwise, user held down key or axis. + // If direction didn't change at least 90 degrees, wait for delay before allowing consequtive event. + if(similarDir && m_ConsecutiveMoveCount == 1) + allow = (time > m_PrevActionTime + m_RepeatDelay); + // If direction changed at least 90 degree, or we already had the delay, repeat at repeat rate. + else + allow = (time > m_PrevActionTime + 1f / m_InputActionsPerSecond); + } + if(!allow) + return false; + + // Debug.Log(m_ProcessingEvent.rawType + " axis:" + m_AllowAxisEvents + " value:" + "(" + x + "," + y + ")"); + var axisEventData = GetAxisEventData(movement.x, movement.y, 0.6f); + + if(axisEventData.moveDir != MoveDirection.None) { + ExecuteEvents.Execute(eventSystem.currentSelectedGameObject, axisEventData, ExecuteEvents.moveHandler); + if(!similarDir) + m_ConsecutiveMoveCount = 0; + m_ConsecutiveMoveCount++; + m_PrevActionTime = time; + m_LastMoveVector = movement; + } else { + m_ConsecutiveMoveCount = 0; + } + + return axisEventData.used; + } + + protected void ProcessMouseEvent() { + ProcessMouseEvent(0); + } + + /// + /// Process all mouse events. + /// + protected void ProcessMouseEvent(int id) { + var mouseData = GetMousePointerEventData(id); + var leftButtonData = mouseData.GetButtonState(PointerEventData.InputButton.Left).eventData; + + // Process the first mouse button fully + ProcessMousePress(leftButtonData); + ProcessMove(leftButtonData.buttonData); + ProcessDrag(leftButtonData.buttonData); + + // Now process right / middle clicks + ProcessMousePress(mouseData.GetButtonState(PointerEventData.InputButton.Right).eventData); + ProcessDrag(mouseData.GetButtonState(PointerEventData.InputButton.Right).eventData.buttonData); + ProcessMousePress(mouseData.GetButtonState(PointerEventData.InputButton.Middle).eventData); + ProcessDrag(mouseData.GetButtonState(PointerEventData.InputButton.Middle).eventData.buttonData); + + if(!Mathf.Approximately(leftButtonData.buttonData.scrollDelta.sqrMagnitude, 0.0f)) { + var scrollHandler = ExecuteEvents.GetEventHandler(leftButtonData.buttonData.pointerCurrentRaycast.gameObject); + ExecuteEvents.ExecuteHierarchy(scrollHandler, leftButtonData.buttonData, ExecuteEvents.scrollHandler); + } + } + + protected bool SendUpdateEventToSelectedObject() { + if(eventSystem.currentSelectedGameObject == null) + return false; + + var data = GetBaseEventData(); + ExecuteEvents.Execute(eventSystem.currentSelectedGameObject, data, ExecuteEvents.updateSelectedHandler); + return data.used; + } + + /// + /// Process the current mouse press. + /// + protected void ProcessMousePress(MouseButtonEventData data) { + var pointerEvent = data.buttonData; + var currentOverGo = pointerEvent.pointerCurrentRaycast.gameObject; + + // PointerDown notification + if(data.PressedThisFrame()) { + pointerEvent.eligibleForClick = true; + pointerEvent.delta = Vector2.zero; + pointerEvent.dragging = false; + pointerEvent.useDragThreshold = true; + pointerEvent.pressPosition = pointerEvent.position; + pointerEvent.pointerPressRaycast = pointerEvent.pointerCurrentRaycast; + + DeselectIfSelectionChanged(currentOverGo, pointerEvent); + + // search for the control that will receive the press + // if we can't find a press handler set the press + // handler to be what would receive a click. + var newPressed = ExecuteEvents.ExecuteHierarchy(currentOverGo, pointerEvent, ExecuteEvents.pointerDownHandler); + + // didnt find a press handler... search for a click handler + if(newPressed == null) + newPressed = ExecuteEvents.GetEventHandler(currentOverGo); + + // Debug.Log("Pressed: " + newPressed); + + float time = Time.unscaledTime; + + if(newPressed == pointerEvent.lastPress) { + var diffTime = time - pointerEvent.clickTime; + if(diffTime < 0.3f) + ++pointerEvent.clickCount; + else + pointerEvent.clickCount = 1; + + pointerEvent.clickTime = time; + } else { + pointerEvent.clickCount = 1; + } + + pointerEvent.pointerPress = newPressed; + pointerEvent.rawPointerPress = currentOverGo; + + pointerEvent.clickTime = time; + + // Save the drag handler as well + pointerEvent.pointerDrag = ExecuteEvents.GetEventHandler(currentOverGo); + + if(pointerEvent.pointerDrag != null) + ExecuteEvents.Execute(pointerEvent.pointerDrag, pointerEvent, ExecuteEvents.initializePotentialDrag); + } + + // PointerUp notification + if(data.ReleasedThisFrame()) { + // Debug.Log("Executing pressup on: " + pointer.pointerPress); + ExecuteEvents.Execute(pointerEvent.pointerPress, pointerEvent, ExecuteEvents.pointerUpHandler); + + // Debug.Log("KeyCode: " + pointer.eventData.keyCode); + + // see if we mouse up on the same element that we clicked on... + var pointerUpHandler = ExecuteEvents.GetEventHandler(currentOverGo); + + // PointerClick and Drop events + if(pointerEvent.pointerPress == pointerUpHandler && pointerEvent.eligibleForClick) { + ExecuteEvents.Execute(pointerEvent.pointerPress, pointerEvent, ExecuteEvents.pointerClickHandler); + } else if(pointerEvent.pointerDrag != null && pointerEvent.dragging) { + ExecuteEvents.ExecuteHierarchy(currentOverGo, pointerEvent, ExecuteEvents.dropHandler); + } + + pointerEvent.eligibleForClick = false; + pointerEvent.pointerPress = null; + pointerEvent.rawPointerPress = null; + + if(pointerEvent.pointerDrag != null && pointerEvent.dragging) + ExecuteEvents.Execute(pointerEvent.pointerDrag, pointerEvent, ExecuteEvents.endDragHandler); + + pointerEvent.dragging = false; + pointerEvent.pointerDrag = null; + + // redo pointer enter / exit to refresh state + // so that if we moused over somethign that ignored it before + // due to having pressed on something else + // it now gets it. + if(currentOverGo != pointerEvent.pointerEnter) { + HandlePointerExitAndEnter(pointerEvent, null); + HandlePointerExitAndEnter(pointerEvent, currentOverGo); + } + } + } + } +} \ No newline at end of file diff --git a/Assets/CarbonInput/Scripts/CarbonInputModule.cs.meta b/Assets/CarbonInput/Scripts/CarbonInputModule.cs.meta new file mode 100644 index 0000000..7c326bc --- /dev/null +++ b/Assets/CarbonInput/Scripts/CarbonInputModule.cs.meta @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: c23f78a1d53c00e469381bd390575be4 +timeCreated: 1506844177 +licenseType: Store +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/CarbonInput/Scripts/CarbonInputRuntime.asmdef b/Assets/CarbonInput/Scripts/CarbonInputRuntime.asmdef new file mode 100644 index 0000000..f5a2891 --- /dev/null +++ b/Assets/CarbonInput/Scripts/CarbonInputRuntime.asmdef @@ -0,0 +1,3 @@ +{ + "name": "CarbonInputRuntime" +} diff --git a/Assets/CarbonInput/Scripts/CarbonInputRuntime.asmdef.meta b/Assets/CarbonInput/Scripts/CarbonInputRuntime.asmdef.meta new file mode 100644 index 0000000..9d69ae9 --- /dev/null +++ b/Assets/CarbonInput/Scripts/CarbonInputRuntime.asmdef.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: c04efb7064997fd46bdd8b7b41abab35 +timeCreated: 1565201667 +licenseType: Store +AssemblyDefinitionImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/CarbonInput/Scripts/CarbonSettings.cs b/Assets/CarbonInput/Scripts/CarbonSettings.cs new file mode 100644 index 0000000..fa175cd --- /dev/null +++ b/Assets/CarbonInput/Scripts/CarbonSettings.cs @@ -0,0 +1,41 @@ +using UnityEngine; + +namespace CarbonInput { + /// + /// Used to store global settings for CarbonInput. + /// + [CreateAssetMenu(fileName = "CarbonInput", menuName = "Carbon Input/Settings", order = 100)] + public class CarbonSettings : ScriptableObject { + /// + /// Defines the behaviour of PlayerIndex.Any + /// + [Tooltip("Defines the behaviour of PlayerIndex.Any")] + public AnyBehaviour Behaviour = AnyBehaviour.CheckAll; + /// + /// Defines if any must be inverted. + /// + [SerializeField] + // ReSharper disable once InconsistentNaming + private bool[] InvertedAxis = new bool[CarbonController.AxisCount]; + + /// + /// Gets or sets the given axis to be inverted or not. + /// + /// + /// + public bool this[CAxis axis] { + get { return InvertedAxis[(int)axis]; } + set { InvertedAxis[(int)axis] = value; } + } + + /// + /// Will try to load the CarbonInput asset. If the asset is not found, it wil return a new CarbonSettings object. + /// + /// + public static CarbonSettings Default() { + CarbonSettings settings = Resources.Load("CarbonInput"); + if(settings != null) return settings; + return CreateInstance(); + } + } +} diff --git a/Assets/CarbonInput/Scripts/CarbonSettings.cs.meta b/Assets/CarbonInput/Scripts/CarbonSettings.cs.meta new file mode 100644 index 0000000..dce49cd --- /dev/null +++ b/Assets/CarbonInput/Scripts/CarbonSettings.cs.meta @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 4cd6a205b4f3e8440b49c91f90e95ea2 +timeCreated: 1455907889 +licenseType: Store +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/CarbonInput/Scripts/ControllerInstance.cs b/Assets/CarbonInput/Scripts/ControllerInstance.cs new file mode 100644 index 0000000..3cda1fd --- /dev/null +++ b/Assets/CarbonInput/Scripts/ControllerInstance.cs @@ -0,0 +1,19 @@ +namespace CarbonInput { + public class ControllerInstance { + public CarbonController Controller; + public int Index; + + public ControllerInstance(CarbonController controller, int index) { + Controller = controller; + Index = index + 1; + } + + public bool GetButton(CButton button) { + return Controller.GetButton(button, Index); + } + + public float GetAxis(CAxis axis) { + return Controller.GetAxis(axis, Index); + } + } +} \ No newline at end of file diff --git a/Assets/CarbonInput/Scripts/ControllerInstance.cs.meta b/Assets/CarbonInput/Scripts/ControllerInstance.cs.meta new file mode 100644 index 0000000..9d946ac --- /dev/null +++ b/Assets/CarbonInput/Scripts/ControllerInstance.cs.meta @@ -0,0 +1,16 @@ +fileFormatVersion: 2 +guid: 5ce0c19a8201a5b41b3155e5fbd127d3 +labels: +- Gamepad +- Input +- Joystick +timeCreated: 1462002425 +licenseType: Store +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/CarbonInput/Scripts/Enums.cs b/Assets/CarbonInput/Scripts/Enums.cs new file mode 100644 index 0000000..5ce1eb3 --- /dev/null +++ b/Assets/CarbonInput/Scripts/Enums.cs @@ -0,0 +1,91 @@ +using System; +using UnityEngine; + +// ReSharper disable InconsistentNaming +// ReSharper disable CheckNamespace + +/// +/// Specifies the game controller associated with a player. +/// +public enum PlayerIndex { + Any, One, Two, Three, Four, Five, Six, Seven, Eight +} + +/// +/// Describes a single button of a gamepad using the common XBox layout. +/// +public enum CButton { + A, B, X, Y, + Back, Start, + LB, RB, + LS, RS, +} + +/// +/// Describes a single button of a gamepad using the playstation layout. +/// +public enum PSButton { + Cross, Circle, Square, Triangle, + Select, Start, + L1, R1, + //L2 and R2 are mapped by LT and RT + L3, R3 +} + +/// +/// Describes a single axis of a gamepad. The dpad is also considered an axis. +/// +public enum CAxis { + LX, LY, + RX, RY, + LT, RT, + DX, DY +} + +/// +/// Flag mapping used to define all supported platforms. +/// +[Flags] +public enum CPlatform { + Windows = 1 << 0, + Linux = 1 << 1, + OSX = 1 << 2, + WSA = 1 << 3, + Android = 1 << 4, + IOS = 1 << 5, + [Obsolete] WP8 = 1 << 6, + Wii = 1 << 7, + [Obsolete] XBox360 = 1 << 8, + XBoxOne = 1 << 9, + [Obsolete] PS3 = 1 << 10, + PS4 = 1 << 11, + PSP2 = 1 << 12, + WebGL = 1 << 13 +} + +/// +/// Enumeration of all sticks of a gamepad. Used to get a consisting of the corresponding x and y values of a given axis. +/// +public enum CStick { + Left, Right, DPad +} + +/// +/// Describes the different behaviours of . +/// +public enum AnyBehaviour { + /// + /// Use the same mapping uses, but listen on any gamepad for that mapping. + /// + UseMappingOne, + /// + /// Always use whenever is used. + /// + UseControllerOne, + /// + /// Go over all players and use first match. + /// Slightly slower than the other two behaviours, but it is the most accurate. + /// + CheckAll +} + diff --git a/Assets/CarbonInput/Scripts/Enums.cs.meta b/Assets/CarbonInput/Scripts/Enums.cs.meta new file mode 100644 index 0000000..b68802d --- /dev/null +++ b/Assets/CarbonInput/Scripts/Enums.cs.meta @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 254fffb768b22e0498fb4bdbb3d0a031 +timeCreated: 1455636603 +licenseType: Store +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/CarbonInput/Scripts/GamePad.cs b/Assets/CarbonInput/Scripts/GamePad.cs new file mode 100644 index 0000000..50a6189 --- /dev/null +++ b/Assets/CarbonInput/Scripts/GamePad.cs @@ -0,0 +1,297 @@ +using UnityEngine; +using System.Collections.Generic; +using System.Linq; +using System.Text.RegularExpressions; +using CarbonInput; + +/// +/// Interface to the carbon controller input system. +/// +// ReSharper disable once CheckNamespace +// ReSharper disable InconsistentNaming +public static class GamePad { + public delegate void OnReloadEvent(); + /// + /// This event is fired when a reload has happened. + /// + public static event OnReloadEvent OnReload; + /// + /// Used for lazy initialization. + /// + private static bool IsInitialized; + /// + /// Array of all mappings supporting this platform. + /// + private static CarbonController[] AllMappings; + /// + /// One mapping for each player, including (index 0). + /// + private static ControllerInstance[] PlayerMappings; + /// + /// s of all players. + /// + private static readonly GamePadState[] States = new GamePadState[CarbonController.PlayerIndices]; + /// + /// Number of connected and supported hardware gamepads, without TouchInput/Keyboard. + /// + private static int gamepadCount; + /// + /// Number of connected and supported hardware gamepads, without TouchInput/Keyboard. + /// + public static int GamePadCount { get { if(!IsInitialized) Initialize(); return gamepadCount; } } + + /// + /// Used to store settings like and inverted axes. + /// + private static CarbonSettings settings; + /// + /// Used to store settings like and inverted axes. + /// + public static CarbonSettings Settings { + get { + if(!IsInitialized) Initialize(); + return settings; + } + set { + if(!IsInitialized) Initialize(); + settings = value; + } + } + + private static readonly CarbonController disabledInput = CarbonController.CreateDisabledInput(); + + /// + /// Returns an array of all mappings supported by this platform. + /// + /// + public static CarbonController[] GetAllMappings() { + if(!IsInitialized) Initialize(); + return AllMappings; + } + /// + /// Returns an array of all player mappings. Index 0 is the mapping for and indices 1 to 8 meant to + /// reference to . + /// + /// + public static ControllerInstance[] GetPlayerMappings() { + if(!IsInitialized) Initialize(); + return PlayerMappings; + } + + /// + /// Reinitializes all GamePads. + /// + public static void ReInit() { + var touchMappings = GetPlayerMappings().Skip(1).Where(x => x.Controller is TouchMapping).ToList(); + Initialize(); + var mappings = GetPlayerMappings(); + int idx = 0; + for(int i = 1; i < CarbonController.PlayerIndices && idx < touchMappings.Count; i++) { + if(mappings[i] != null && mappings[i].Controller.Replacable) { + mappings[i] = touchMappings[idx++]; + if(i == 1) mappings[0] = mappings[1]; // required for PlayerIndex.Any if used with AnyBehaviour.UseMappingOne + } + } + if(OnReload != null) + OnReload(); + } + + /// + /// Initializes this library by loading all mappings from file and matching the given gamepads. + /// + private static void Initialize() { + if(!IsInitialized) { // first init + new GameObject("GamePad ReInit").AddComponent(); + } + List mappings = new List(Resources.LoadAll("Mappings")); // load all mappings + mappings.RemoveAll(mapping => !mapping.SupportedOnThisPlatform()); // keep only mappings for this platform + mappings.Sort((a, b) => a.Priority - b.Priority); // sort by priority, lower is better + AllMappings = mappings.ToArray(); + // now try to match with the names of the connected joysticks + int nameIndex = 0; + gamepadCount = 0; + List matches = new List(); + foreach(string name in Input.GetJoystickNames()) { + CarbonController toRemove = null; + foreach(CarbonController cc in mappings) { + if(!string.IsNullOrEmpty(cc.RegEx) && Regex.IsMatch(name, cc.RegEx, RegexOptions.IgnoreCase)) { + matches.Add(new ControllerInstance(cc, nameIndex)); + gamepadCount++; + if(cc.UseOnce) toRemove = cc; + break; + } + } + if(toRemove != null) mappings.Remove(toRemove); + nameIndex++; + } + // add fallbacks (keyboard) + var fallbacks = AllMappings.Where(x => x.IsFallback()).ToList(); + fallbacks.Add(disabledInput); + + PlayerMappings = new ControllerInstance[CarbonController.PlayerIndices]; + for(int i = 1; i < CarbonController.PlayerIndices; i++) { + int idx = i - 1; + if(idx < matches.Count) PlayerMappings[i] = matches[idx]; // real GamePad + else { // Keyboard Fallback + var fallback = fallbacks.First(); + PlayerMappings[i] = new ControllerInstance(fallback, idx); + if(fallback.UseOnce) fallbacks.RemoveAt(0); + } + } + PlayerMappings[0] = PlayerMappings[1]; // always use first found mapping as the "global" mapping for Anyone + for(int i = 0; i < CarbonController.PlayerIndices; i++) States[i] = new GamePadState((PlayerIndex)i); + + settings = CarbonSettings.Default(); + IsInitialized = true; + } + + /// + /// Returns the mapping used by player . + /// + /// + /// + public static ControllerInstance GetMapping(PlayerIndex id) { + if(!IsInitialized) Initialize(); + return PlayerMappings[(int)id]; + } + + /// + /// Returns true if there is any real gamepad connected. + /// + /// + public static bool AnyConnected() { + if(!IsInitialized) Initialize(); + return gamepadCount > 0; + } + + /// + /// Returns the state of button of player . + /// + /// + /// + /// + public static bool GetButton(CButton btn, PlayerIndex id = PlayerIndex.Any) { + if(!IsInitialized) Initialize(); + if(id == PlayerIndex.Any) { + switch(settings.Behaviour) { + case AnyBehaviour.UseControllerOne: return PlayerMappings[1].GetButton(btn); + case AnyBehaviour.CheckAll: + for(int i = 1; i < CarbonController.PlayerIndices; i++) { + if(PlayerMappings[i].GetButton(btn)) return true; + } + return false; + } + } + return PlayerMappings[(int)id].GetButton(btn); + } + + /// + /// Returns the state of button of player using a playstation controller layout. + /// + /// + /// + /// + public static bool GetButton(PSButton btn, PlayerIndex id = PlayerIndex.Any) { + return GetButton((CButton)btn, id); + } + + /// + /// Returns the of player . The result is in range [-1, 1], except for the two triggers. + /// They are in range [0, 1]. + /// + /// + /// + /// + public static float GetAxis(CAxis axis, PlayerIndex id = PlayerIndex.Any) { + if(!IsInitialized) Initialize(); + if(Settings[axis]) return -GetAxisRaw(axis, id); + return GetAxisRaw(axis, id); + } + private static float GetAxisRaw(CAxis axis, PlayerIndex id) { + if(id == PlayerIndex.Any) { + switch(settings.Behaviour) { + case AnyBehaviour.UseControllerOne: return PlayerMappings[1].GetAxis(axis); + case AnyBehaviour.CheckAll: + for(int i = 1; i < CarbonController.PlayerIndices; i++) { + float value = PlayerMappings[i].GetAxis(axis); + if(Mathf.Abs(value) > 0.02f) return value; + } + return 0f; + } + } + return PlayerMappings[(int)id].GetAxis(axis); + } + + /// + /// Returns a for the specified stick of player . + /// + /// + /// + /// + public static Vector2 GetStick(CStick stick, PlayerIndex id = PlayerIndex.Any) { + switch(stick) { + case CStick.Left: return GetLeftStick(id); + case CStick.Right: return GetRightStick(id); + default: return GetDPad(id); + } + } + + /// + /// Returns a vector for the left thumbstick of player . + /// + /// + /// + public static Vector2 GetLeftStick(PlayerIndex id = PlayerIndex.Any) { + return new Vector2(GetAxis(CAxis.LX, id), GetAxis(CAxis.LY, id)); + } + + /// + /// Returns a vector for the right thumbstick of player . + /// + /// + /// + public static Vector2 GetRightStick(PlayerIndex id = PlayerIndex.Any) { + return new Vector2(GetAxis(CAxis.RX, id), GetAxis(CAxis.RY, id)); + } + + /// + /// Returns the left trigger of player . Result is in range [0, 1]. + /// + /// + /// + public static float GetLeftTrigger(PlayerIndex id = PlayerIndex.Any) { + return GetAxis(CAxis.LT, id); + } + + /// + /// Returns the right trigger of player . Result is in range [0, 1]. + /// + /// + /// + public static float GetRightTrigger(PlayerIndex id = PlayerIndex.Any) { + return GetAxis(CAxis.RT, id); + } + + /// + /// Returns a vector for the dpad of player . + /// + /// + /// + public static Vector2 GetDPad(PlayerIndex id = PlayerIndex.Any) { + return new Vector2(GetAxis(CAxis.DX, id), GetAxis(CAxis.DY, id)); + } + + /// + /// Returns the state of player . + /// A contains all pressed buttons and axes values. + /// It also stores information from the last frame in order to distinguish between a single press and a continuous pressing. + /// + /// + /// + public static GamePadState GetState(PlayerIndex id = PlayerIndex.Any) { + if(!IsInitialized) Initialize(); + GamePadState state = States[(int)id]; + state.Update(); + return state; + } +} diff --git a/Assets/CarbonInput/Scripts/GamePad.cs.meta b/Assets/CarbonInput/Scripts/GamePad.cs.meta new file mode 100644 index 0000000..1ec9ff7 --- /dev/null +++ b/Assets/CarbonInput/Scripts/GamePad.cs.meta @@ -0,0 +1,16 @@ +fileFormatVersion: 2 +guid: e9d410e5e689bdf4e8770d6a55f96bc4 +labels: +- Gamepad +- Input +- Joystick +timeCreated: 1455633863 +licenseType: Store +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/CarbonInput/Scripts/GamePadState.cs b/Assets/CarbonInput/Scripts/GamePadState.cs new file mode 100644 index 0000000..90eebfd --- /dev/null +++ b/Assets/CarbonInput/Scripts/GamePadState.cs @@ -0,0 +1,262 @@ +using UnityEngine; +using CarbonInput; + +/// +/// Represents the current state of a specific gamepad. +/// The state of any button can be accessed by the attributes , ,... or via the method . +/// returns true during the frame it was pressed. +/// returns true during the frame it was released. +/// , and will give you direct access to the corresponding axes. +/// The trigger can be accessed by and . +/// +// ReSharper disable once CheckNamespace +// ReSharper disable InconsistentNaming +public class GamePadState { + /// + /// Any axis is being considered "pressed" if it's absolute value is greater than this threshold. + /// + private const float AxisPressedThreshold = 0.3f; + + #region Buttons + /// + /// Stores the state of all buttons from the last frame. + /// + private bool[] LastFrameButtons = new bool[CarbonController.ButtonCount]; + /// + /// Stores the state of all buttons from this frame. + /// + private bool[] Buttons = new bool[CarbonController.ButtonCount]; + + /// + /// Is true while is pressed. + /// + public bool A { get { return Buttons[(int)CButton.A]; } } + /// + /// Is true while is pressed. + /// + public bool B { get { return Buttons[(int)CButton.B]; } } + /// + /// Is true while is pressed. + /// + public bool X { get { return Buttons[(int)CButton.X]; } } + /// + /// Is true while is pressed. + /// + public bool Y { get { return Buttons[(int)CButton.Y]; } } + /// + /// Is true while is pressed. + /// + public bool Back { get { return Buttons[(int)CButton.Back]; } } + /// + /// Is true while is pressed. + /// + public bool Start { get { return Buttons[(int)CButton.Start]; } } + /// + /// Is true while is pressed. + /// + public bool LB { get { return Buttons[(int)CButton.LB]; } } + /// + /// Is true while is pressed. + /// + public bool RB { get { return Buttons[(int)CButton.RB]; } } + /// + /// Is true while is pressed. + /// + public bool LS { get { return Buttons[(int)CButton.LS]; } } + /// + /// Is true while is pressed. + /// + public bool RS { get { return Buttons[(int)CButton.RS]; } } + #endregion + + #region Axis + /// + /// Stores the state of all axis values from the last frame. + /// + private float[] LastAxis = new float[CarbonController.AxisCount]; + /// + /// Stores the state of all axis values from this frame. + /// + private float[] Axis = new float[CarbonController.AxisCount]; + + /// + /// X and Y axis of the left thumbstick. + /// + public Vector2 Left { get { return new Vector2(Axis[(int)CAxis.LX], Axis[(int)CAxis.LY]); } } + /// + /// X and Y axis of the right thumbstick. + /// + public Vector2 Right { get { return new Vector2(Axis[(int)CAxis.RX], Axis[(int)CAxis.RY]); } } + /// + /// Left trigger. + /// + public float LT { get { return Axis[(int)CAxis.LT]; } } + /// + /// Right trigger. + /// + public float RT { get { return Axis[(int)CAxis.RT]; } } + /// + /// X and Y axis of the dpad. + /// + public Vector2 DPad { get { return new Vector2(Axis[(int)CAxis.DX], Axis[(int)CAxis.DY]); } } + #endregion + + /// + /// Defines the owner of this . + /// + private readonly PlayerIndex Index; + /// + /// Number of the last frame, used to determine if we're in a new frame or not. + /// + private int LastFrame; + + /// + /// Returns true if the button state has changed since the last frame. + /// + /// + /// + public bool HasChanged(CButton btn) { return Buttons[(int)btn] != LastFrameButtons[(int)btn]; } + + /// + /// Returns true while the button is pressed. + /// + /// + /// + public bool Button(CButton btn) { return Buttons[(int)btn]; } + /// + /// Returns true during the frame the user pressed the button. + /// + /// + /// + public bool Pressed(CButton btn) { return Buttons[(int)btn] && !LastFrameButtons[(int)btn]; } + /// + /// Returns true during the frame the user released the button. + /// + /// + /// + public bool Released(CButton btn) { return !Buttons[(int)btn] && LastFrameButtons[(int)btn]; } + + /// + /// Returns true while the axis is "pressed", which is if the absolute value of this axis is greater than a certain threshold. + /// + /// + /// + public bool Button(CAxis axis) { + return Mathf.Abs(Axis[(int)axis]) > AxisPressedThreshold; + } + /// + /// Returns true during the frame the axis is "pressed", which is if the absolute value of this axis is greater than a certain threshold. + /// + /// + /// + public bool Pressed(CAxis axis) { + bool pressedNow = Mathf.Abs(Axis[(int)axis]) > AxisPressedThreshold; + bool pressedLastFrame = Mathf.Abs(LastAxis[(int)axis]) > AxisPressedThreshold; + return pressedNow && !pressedLastFrame; + } + /// + /// Returns true during the frame the axis is no longer "pressed", which is if the absolute value of this axis is greater than a certain threshold. + /// + /// + /// + public bool Released(CAxis axis) { + bool pressedNow = Mathf.Abs(Axis[(int)axis]) > AxisPressedThreshold; + bool pressedLastFrame = Mathf.Abs(LastAxis[(int)axis]) > AxisPressedThreshold; + return !pressedNow && pressedLastFrame; + } + + /// + /// Returns the value of the given axis. + /// + /// + /// + public float GetAxis(CAxis axis) { + return Axis[(int)axis]; + } + + #region PSButton + /// + /// Returns true while the button is pressed. + /// + /// + /// + public bool Button(PSButton btn) { return Button((CButton)btn); } + /// + /// Returns true during the frame the user pressed the button. + /// + /// + /// + public bool Pressed(PSButton btn) { return Pressed((CButton)btn); } + /// + /// Returns true during the frame the user released the button. + /// + /// + /// + public bool Released(PSButton btn) { return Released((CButton)btn); } + #endregion + + /// + /// Returns true if any button is currently pressed. + /// + public bool AnyButton { get; private set; } + /// + /// Returns true if any axis is currently not zero. + /// + public bool AnyAxis { get; private set; } + /// + /// Returns true if any button is currently pressed or if any axis is currently not zero. + /// + public bool AnyButtonOrAxis { get { return AnyButton || AnyAxis; } } + + /// + /// Returns a button that is currently pressed or null if no buttons are pressed. + /// + /// + public CButton? GetAnyButton() { + for(int i = 0; i < CarbonController.ButtonCount; i++) + if(Buttons[i]) return (CButton)i; + return null; + } + + /// + /// Returns an axis that is not zero or null if all axis are zero. + /// + /// + public CAxis? GetAnyAxis() { + for(int i = 0; i < CarbonController.AxisCount; i++) + if(Mathf.Abs(Axis[i]) > AxisPressedThreshold) return (CAxis)i; + return null; + } + + public GamePadState(PlayerIndex id) { + Index = id; + } + + /// + /// This will update all buttons and axes of this instance. + /// Multiple calls in the same frame won't have any effect. + /// + public void Update() { + if(LastFrame == Time.frameCount) return; + LastFrame = Time.frameCount; + SwapArrays(); + AnyButton = false; + for(int i = 0; i < Buttons.Length; i++) { + AnyButton |= (Buttons[i] = GamePad.GetButton((CButton)i, Index)); + } + AnyAxis = false; + for(int i = 0; i < Axis.Length; i++) { + AnyAxis |= Mathf.Abs(Axis[i] = GamePad.GetAxis((CAxis)i, Index)) > AxisPressedThreshold; + } + } + + private void SwapArrays() { + bool[] tmp = LastFrameButtons; + LastFrameButtons = Buttons; + Buttons = tmp; + + float[] axis = LastAxis; + LastAxis = Axis; + Axis = axis; + } +} diff --git a/Assets/CarbonInput/Scripts/GamePadState.cs.meta b/Assets/CarbonInput/Scripts/GamePadState.cs.meta new file mode 100644 index 0000000..0f0f621 --- /dev/null +++ b/Assets/CarbonInput/Scripts/GamePadState.cs.meta @@ -0,0 +1,16 @@ +fileFormatVersion: 2 +guid: b67ce27dec0bf414c8f69f7def8a1077 +labels: +- Gamepad +- Input +- Joystick +timeCreated: 1455696443 +licenseType: Store +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/CarbonInput/Scripts/Mappings.cs b/Assets/CarbonInput/Scripts/Mappings.cs new file mode 100644 index 0000000..0f2fa73 --- /dev/null +++ b/Assets/CarbonInput/Scripts/Mappings.cs @@ -0,0 +1,152 @@ +using UnityEngine; + +// User don't have to use this directly, so there is no need to have this in global namespace +namespace CarbonInput { + /// + /// Describes a mapping for a single gamepad button. + /// For normal gamepads, IsWrapper is false and therefor the Button attribute is used. + /// If IsWrapper is set to true, the KeyCode is used. + /// + [System.Serializable] + public class ButtonMapping { + /// + /// If is this is the joystick button id. + /// + public int Button; + /// + /// If is this is the key used to emulate this gamepad button. + /// + public KeyCode Key; + /// + /// Defines if this mapping is a wrapper or not. + /// + public ButtonType Type = ButtonType.Default; + + public ButtonMapping() { } + /// + /// Copy constructor. + /// + /// + public ButtonMapping(ButtonMapping other) { CopyFrom(other); } + + /// + /// Copy all values from the parameter. + /// + /// + public void CopyFrom(ButtonMapping other) { + Button = other.Button; + Key = other.Key; + Type = other.Type; + } + + /// + /// Defines if a button is wrapper or not. + /// + public enum ButtonType { + /// + /// Button is a real gamepad button. + /// + Default, + /// + /// Uses a keyboard key to emulate a gamepad button. + /// + Wrapper + } + } + + /// + /// Describes a mapping for a single gamepad axis. + /// Every axis can be inverted. + /// + [System.Serializable] + public class AxisMapping { + /// + /// Index of gamepad axis, used if Type is Default or Clamped. + /// Used as button index if Type is ButtonWrapper or ButtonWrapper2. + /// + public int Axis; + /// + /// Only used if Type is ButtonWrapper2. + /// Button index for positive value. + /// + public int Alternative; + /// + /// Whether this axis will be inverted. + /// + public bool Invert = false; + /// + /// Defines how this mapping behaves. + /// + public AxisType Type = AxisType.Default; + /// + /// If Type is ButtonWrapper, this is the value returned if the button is not pressed. + /// If Type is Clamped, this is the lower bound of the axis. + /// + public float Min = 0.0f; + /// + /// If Type is ButtonWrapper, this is the value returned if the button is pressed. + /// If Type is Clamped, this is the upper bound of the axis. + /// + public float Max = 1.0f; + /// + /// Used for KeyWrapper. Axis value is -1 if this key is pressed and Key2 is not pressed. + /// + public KeyCode Key1; + /// + /// Used for KeyWrapper. Axis value is 1 if this key is pressed and Key1 is not pressed. + /// + public KeyCode Key2; + + public AxisMapping() { } + /// + /// Copy constructor. + /// + /// + public AxisMapping(AxisMapping other) { CopyFrom(other); } + + /// + /// Copy all values from the parameter. + /// + /// + public void CopyFrom(AxisMapping other) { + Axis = other.Axis; + Alternative = other.Alternative; + Invert = other.Invert; + Type = other.Type; + Min = other.Min; + Max = other.Max; + Key1 = other.Key1; + Key2 = other.Key2; + } + + /// + /// Enumeration of all possible axis types. + /// + public enum AxisType { + /// + /// Axis is a normal gamepad axis. + /// + Default, + /// + /// Gamepad does not have this axis, but it has a button for that axis + /// + ButtonWrapper, + /// + /// Gamepad does not have anything for this, fallback to KeyCodes + /// + KeyWrapper, + /// + /// The range of this axis is not in the normal range. + /// + Clamped, + /// + /// Gamepad does not have this axis, but it can be emulated by two buttons. + /// + ButtonWrapper2, + /// + /// Gamepad axis goes from -1 to 1, but it should go from 0 to 1. + /// + TriggerLimiter + } + } +} diff --git a/Assets/CarbonInput/Scripts/Mappings.cs.meta b/Assets/CarbonInput/Scripts/Mappings.cs.meta new file mode 100644 index 0000000..94a254d --- /dev/null +++ b/Assets/CarbonInput/Scripts/Mappings.cs.meta @@ -0,0 +1,16 @@ +fileFormatVersion: 2 +guid: 3be0fab311c3f9646b6a78261d1e628a +labels: +- Gamepad +- Input +- Joystick +timeCreated: 1455638035 +licenseType: Store +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/CarbonInput/Scripts/ReInit.cs b/Assets/CarbonInput/Scripts/ReInit.cs new file mode 100644 index 0000000..18f0e8f --- /dev/null +++ b/Assets/CarbonInput/Scripts/ReInit.cs @@ -0,0 +1,44 @@ +using UnityEngine; +using System.Collections; + +namespace CarbonInput { + /// + /// This class will check if a new gamepad was connected or if a gamepad lost its connection. + /// If this is the case, they are reinitialized. + /// + public class ReInit : MonoBehaviour { + private string[] _names; + + void Start() { + _names = Input.GetJoystickNames(); + StartCoroutine(CheckRoutine()); + DontDestroyOnLoad(gameObject); + } + + /// + /// Checks once a second if any gamepad has lost connection or was reconnected. + /// + /// + private IEnumerator CheckRoutine() { + yield return new WaitForSeconds(0.25f); + // On UWP platform Unity needs a few milliseconds to init all gamepads, + // therefore it might be the case that they will be initilized now + while(true) { + if(JoysticksChanged()) { + _names = Input.GetJoystickNames(); + GamePad.ReInit(); + } + yield return new WaitForSeconds(1f); + } + } + + private bool JoysticksChanged() { + var names = Input.GetJoystickNames(); + if(names.Length != _names.Length) return true; + for(var i = 0; i < names.Length; i++) { + if(names[i] != _names[i]) return true; + } + return false; + } + } +} \ No newline at end of file diff --git a/Assets/CarbonInput/Scripts/ReInit.cs.meta b/Assets/CarbonInput/Scripts/ReInit.cs.meta new file mode 100644 index 0000000..e600acf --- /dev/null +++ b/Assets/CarbonInput/Scripts/ReInit.cs.meta @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 8625f2a23b7973242b753f01cf6d7131 +timeCreated: 1483358527 +licenseType: Store +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/CarbonInput/Scripts/SwitchPS4Gamepad.cs b/Assets/CarbonInput/Scripts/SwitchPS4Gamepad.cs new file mode 100644 index 0000000..4a4a1c4 --- /dev/null +++ b/Assets/CarbonInput/Scripts/SwitchPS4Gamepad.cs @@ -0,0 +1,32 @@ +using UnityEngine; +using UnityEngine.UI; + +namespace CarbonInput { + public class SwitchPS4Gamepad : MonoBehaviour { + public CarbonController Wired; + public CarbonController Bluetooth; + public Toggle Toggle; + + private int highPriority; + private int lowPriority; + + private void Start() { + highPriority = Mathf.Min(Wired.Priority, Bluetooth.Priority); + lowPriority = Mathf.Max(Wired.Priority, Bluetooth.Priority); + if(Toggle != null) { + Toggle.isOn = Bluetooth.Priority < Wired.Priority; + } + } + + public void ChangeMapping(bool useBluetooth) { + if(useBluetooth) { + Bluetooth.Priority = highPriority; + Wired.Priority = lowPriority; + } else { + Wired.Priority = highPriority; + Bluetooth.Priority = lowPriority; + } + GamePad.ReInit(); + } + } +} diff --git a/Assets/CarbonInput/Scripts/SwitchPS4Gamepad.cs.meta b/Assets/CarbonInput/Scripts/SwitchPS4Gamepad.cs.meta new file mode 100644 index 0000000..45a74e0 --- /dev/null +++ b/Assets/CarbonInput/Scripts/SwitchPS4Gamepad.cs.meta @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 93d840a09c7ea71489775748bfc05d32 +timeCreated: 1523470047 +licenseType: Store +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/CarbonInput/Scripts/TouchInput.meta b/Assets/CarbonInput/Scripts/TouchInput.meta new file mode 100644 index 0000000..f69ec9e --- /dev/null +++ b/Assets/CarbonInput/Scripts/TouchInput.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: ae75e61147db4204ca8bc1fcfc536818 +folderAsset: yes +timeCreated: 1455826393 +licenseType: Store +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/CarbonInput/Scripts/TouchInput/BaseTouchInput.cs b/Assets/CarbonInput/Scripts/TouchInput/BaseTouchInput.cs new file mode 100644 index 0000000..00688ba --- /dev/null +++ b/Assets/CarbonInput/Scripts/TouchInput/BaseTouchInput.cs @@ -0,0 +1,53 @@ +using UnityEngine; + +namespace CarbonInput { + /// + /// Base class for all touch controls. + /// + public class BaseTouchInput : MonoBehaviour { + /// + /// The index of the player this control belongs to. If set to Any, it will use the first free player. + /// + [Tooltip("The index of the player this control belongs to. If set to Any, it will use the first free player.")] + public PlayerIndex Index; + /// + /// Mapping of this control. + /// + protected TouchMapping Mapping; + + /// + /// Initialize this input by injecting a into . + /// + protected void InitMapping() { + if(Index == PlayerIndex.Any) { + ControllerInstance[] mappings = GamePad.GetPlayerMappings(); + for(int i = 1; i < CarbonController.PlayerIndices; i++) { + if(mappings[i].Controller.Replacable || mappings[i].Controller is TouchMapping) { + UseMapping(i); + return; + } + } + // all mappings already in use + } else { + UseMapping((int)Index); + } + } + + /// + /// Changes index of the to a . + /// + /// + private void UseMapping(int idx) { + ControllerInstance[] mappings = GamePad.GetPlayerMappings(); + // if there is already a TouchMapping, use it. + if(mappings[idx] != null && mappings[idx].Controller is TouchMapping) + Mapping = (TouchMapping)mappings[idx].Controller; + else {//otherwise overwrite the old value + Mapping = ScriptableObject.CreateInstance(); + mappings[idx] = new ControllerInstance(Mapping, 0); + } + // if we set PlayerIndex.One, we must also set PlayerIndex.Any, because AnyBehaviour.UseMappingOne needs this + if(idx == 1) mappings[0] = mappings[1]; + } + } +} diff --git a/Assets/CarbonInput/Scripts/TouchInput/BaseTouchInput.cs.meta b/Assets/CarbonInput/Scripts/TouchInput/BaseTouchInput.cs.meta new file mode 100644 index 0000000..e546363 --- /dev/null +++ b/Assets/CarbonInput/Scripts/TouchInput/BaseTouchInput.cs.meta @@ -0,0 +1,18 @@ +fileFormatVersion: 2 +guid: 996c12ad06e1905499f873d083ef1fb0 +labels: +- Touchinput +- Touch +- Input +- Gamepad +- Joystick +timeCreated: 1455829286 +licenseType: Store +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/CarbonInput/Scripts/TouchInput/DisableTouchInput.cs b/Assets/CarbonInput/Scripts/TouchInput/DisableTouchInput.cs new file mode 100644 index 0000000..2e3d622 --- /dev/null +++ b/Assets/CarbonInput/Scripts/TouchInput/DisableTouchInput.cs @@ -0,0 +1,44 @@ +using UnityEngine; + +namespace CarbonInput { + /// + /// Attach this to the canvas all touch controls are in. + /// On startup this script will check if there are any real gamepads and if so, it will disable the touch controls. + /// + public class DisableTouchInput : MonoBehaviour { + [Tooltip("If true, touch controls will be disabled on Console Platforms, even if there are no gamepads connected.")] + public bool HideOnConsole = true; + [Tooltip("If true, touch controls will be disabled in Web Player, even if there are no gamepads connected.")] + public bool HideOnWeb = true; + [Tooltip("If true, touch controls will be disabled in the Editor, even if there are no gamepads connected.")] + public bool HideOnEditMode = false; + [Tooltip("If true, touch controls will be disabled on Windows, Linux and Mac, even if there are no gamepads connected.")] + public bool HideOnPC = true; + void Start() { +#if UNITY_EDITOR + if(HideOnEditMode) { Hide(); return; } +#endif +#if UNITY_WEB + if(HideOnWeb) { Hide(); return; } +#endif +#if UNITY_STANDALONE + if(HideOnPC) { Hide(); return; } +#endif + if(HideOnConsole && Application.isConsolePlatform + || GamePad.GamePadCount > 0) { // There are gamepads so we don't need touchcontrols + Hide(); + } + } + + /// + /// Deactivates all children with a component. + /// + private void Hide() { + // Iterate over all children + foreach(RectTransform rect in GetComponentsInChildren()) { + if(rect.GetComponent() != null) // Deactivate all TouchControls + rect.gameObject.SetActive(false); + } + } + } +} diff --git a/Assets/CarbonInput/Scripts/TouchInput/DisableTouchInput.cs.meta b/Assets/CarbonInput/Scripts/TouchInput/DisableTouchInput.cs.meta new file mode 100644 index 0000000..311a1f5 --- /dev/null +++ b/Assets/CarbonInput/Scripts/TouchInput/DisableTouchInput.cs.meta @@ -0,0 +1,18 @@ +fileFormatVersion: 2 +guid: f8fff0c72c46bce4e827c2d00d47911f +labels: +- Touchinput +- Touch +- Input +- Gamepad +- Joystick +timeCreated: 1456010930 +licenseType: Store +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/CarbonInput/Scripts/TouchInput/TouchButton.cs b/Assets/CarbonInput/Scripts/TouchInput/TouchButton.cs new file mode 100644 index 0000000..9c3945f --- /dev/null +++ b/Assets/CarbonInput/Scripts/TouchInput/TouchButton.cs @@ -0,0 +1,57 @@ +using UnityEngine; +using UnityEngine.EventSystems; +using UnityEngine.UI; + +namespace CarbonInput { + /// + /// Touch control simulating a single gamepad button. + /// + public class TouchButton : BaseTouchInput, IPointerDownHandler, IPointerUpHandler, IDragHandler { + /// + /// The this control emulates. + /// + public CButton Button; + /// + /// Opacity of this control if it is pressed. + /// + [Tooltip("Opacity of this control if it is pressed.")] + [Range(0, 1)] + public float OpacityPressed = 0.5f; + /// + /// Opacity of this control if it is not pressed. + /// + [Tooltip("Opacity of this control if it is not pressed.")] + [Range(0, 1)] + public float OpacityReleased = 1f; + + void Start() { + InitMapping(); + UpdateState(false); + } + + /// + /// Updates the state of this control. This methods sets the opacity and the state in the . + /// + /// + public void UpdateState(bool pressed) { + var image = GetComponent(); + var color = image.color; + color.a = pressed ? OpacityPressed : OpacityReleased; + image.color = color; + if(Mapping != null) Mapping[Button] = pressed; + } + + public void OnPointerDown(PointerEventData eventData) { + UpdateState(true); + } + + public void OnPointerUp(PointerEventData eventData) { + UpdateState(false); + } + + public void OnDrag(PointerEventData eventData) { + RectTransform rect = GetComponent(); + UpdateState(RectTransformUtility.RectangleContainsScreenPoint(rect, eventData.position)); + } + } +} diff --git a/Assets/CarbonInput/Scripts/TouchInput/TouchButton.cs.meta b/Assets/CarbonInput/Scripts/TouchInput/TouchButton.cs.meta new file mode 100644 index 0000000..6794334 --- /dev/null +++ b/Assets/CarbonInput/Scripts/TouchInput/TouchButton.cs.meta @@ -0,0 +1,18 @@ +fileFormatVersion: 2 +guid: d698f325b18cad948af4abeae474734d +labels: +- Touchinput +- Touch +- Input +- Gamepad +- Joystick +timeCreated: 1455826413 +licenseType: Store +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/CarbonInput/Scripts/TouchInput/TouchMapping.cs b/Assets/CarbonInput/Scripts/TouchInput/TouchMapping.cs new file mode 100644 index 0000000..b99a7c2 --- /dev/null +++ b/Assets/CarbonInput/Scripts/TouchInput/TouchMapping.cs @@ -0,0 +1,45 @@ +namespace CarbonInput { + /// + /// Internal wrapper class, used to access touch input. + /// + public class TouchMapping : CarbonController { + /// + /// Currently pressed buttons. + /// + private readonly bool[] buttonMap = new bool[ButtonCount]; + /// + /// Current values of all axes. + /// + private readonly float[] axisMap = new float[AxisCount]; + + private void OnEnable() { + name = "TouchInput"; + } + + /// + /// Gets or sets if the specific button is pressed or not. + /// + /// + /// + public bool this[CButton button] { + get { return buttonMap[(int)button]; } + set { buttonMap[(int)button] = value; } + } + /// + /// Gets or sets the value of the given axis. + /// + /// + /// + public float this[CAxis axis] { + get { return axisMap[(int)axis]; } + set { axisMap[(int)axis] = value; } + } + + public override bool GetButton(CButton btn, int id) { + return this[btn]; + } + public override float GetAxis(CAxis axis, int id) { + return this[axis]; + } + } +} diff --git a/Assets/CarbonInput/Scripts/TouchInput/TouchMapping.cs.meta b/Assets/CarbonInput/Scripts/TouchInput/TouchMapping.cs.meta new file mode 100644 index 0000000..8312905 --- /dev/null +++ b/Assets/CarbonInput/Scripts/TouchInput/TouchMapping.cs.meta @@ -0,0 +1,18 @@ +fileFormatVersion: 2 +guid: 4fae99fbdd9f6aa47b8f0aedfa36d8b7 +labels: +- Touchinput +- Touch +- Input +- Gamepad +- Joystick +timeCreated: 1455827496 +licenseType: Store +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/CarbonInput/Scripts/TouchInput/TouchStick.cs b/Assets/CarbonInput/Scripts/TouchInput/TouchStick.cs new file mode 100644 index 0000000..8108b4d --- /dev/null +++ b/Assets/CarbonInput/Scripts/TouchInput/TouchStick.cs @@ -0,0 +1,175 @@ +using UnityEngine; +using System.Collections; +using UnityEngine.EventSystems; + +namespace CarbonInput { + /// + /// Touch control simulating a thumbstick. + /// + public class TouchStick : BaseTouchInput, IPointerDownHandler, IPointerUpHandler, IDragHandler { + private const float NearZero = 0.0001f; + + /// + /// Horizontal axis of this control. + /// + [Tooltip("Horizontal axis")] + public CAxis X = CAxis.LX; + /// + /// Vertical axis of this control. + /// + [Tooltip("Vertical axis")] + public CAxis Y = CAxis.LY; + + /// + /// Touches inside this area will be handled by the stick. + /// + [Tooltip("Touches inside this area will be handled by the stick.")] + public RectTransform TouchArea; + /// + /// Base of the joystick. + /// + [Tooltip("Base of the joystick.")] + public RectTransform Base; + /// + /// Knob of the joystick. + /// + [Tooltip("Knob of the joystick.")] + public RectTransform Stick; + + /// + /// Maximum distance between center of base and center of stick. + /// + [Tooltip("Maximum distance between center of base and center of stick.")] + [Range(20, 120)] + public float Range = 60; + /// + /// Should the joystick disappear on release? + /// + [Tooltip("Should the joystick disappear on release?")] + public bool HideOnRelease; + /// + /// If HideOnRelease is set to true, this value will determine after which time the joystick will start to fade out. + /// + [Tooltip("If HideOnRelease is set to true, this value will determine after which time the joystick will start to fade out.")] + public float FadeoutDelay; + /// + /// If HideOnRelease is set to true, this value will determine how long the fadeout will last. + /// + [Tooltip("If HideOnRelease is set to true, this value will determine how long the fadeout will last.")] + public float FadeoutTime = 1f; + /// + /// If the user moves to far away from the stick, should the stick follow? + /// + [Tooltip("If the user moves to far away from the stick, should the stick follow?")] + public bool Movable; + + private CanvasRenderer[] childRenderer; + + void Start() { + InitMapping(); + childRenderer = GetComponentsInChildren(); + if(HideOnRelease) Hide(false); + } + + /// + /// Shows this control. + /// + public void Show() { + StopAllCoroutines(); + SetOpacity(1f); + } + + /// + /// Hides this control. + /// + /// If true, the control will slowly fade out. + public void Hide(bool fadeout) { + StopAllCoroutines(); + if(fadeout) StartCoroutine(FadeSequence()); + else SetOpacity(0f); + } + + /// + /// Sets the opacity of this control and all children. + /// + /// + private void SetOpacity(float opacity) { + foreach(CanvasRenderer renderer in childRenderer) renderer.SetAlpha(opacity); + } + + /// + /// Coroutine used to slowly fadeout. + /// + /// + private IEnumerator FadeSequence() { + if(FadeoutDelay > 0) yield return new WaitForSeconds(FadeoutDelay); + float opacity = 1f; + float speed = 1f / FadeoutTime; + while(opacity >= 0.0f) { + opacity -= Time.deltaTime * speed; + if(opacity < 0) opacity = 0; + SetOpacity(opacity); + yield return null; + } + } + + /// + /// Sets the value of this stick in the and also sets the knob position. + /// If is true, it will also follow the user. + /// + /// Touch position in world space + private void UpdateStick(Vector2 pos) { + // get direction in local space + Vector2 direction = (pos - (Vector2)Base.position); + direction.x /= Base.lossyScale.x; + direction.y /= Base.lossyScale.y; + float length = direction.magnitude; + if(length < NearZero) { + UpdateAxis(Vector2.zero); + return; + } + if(length > Range) { + if(Movable) { + Vector2 delta = direction.normalized * (length - Range); + Vector2 newPos = (Vector2)Base.localPosition + delta; + newPos.x = Mathf.Clamp(newPos.x, TouchArea.rect.xMin, TouchArea.rect.xMax); + newPos.y = Mathf.Clamp(newPos.y, TouchArea.rect.yMin, TouchArea.rect.yMax); + Base.localPosition = newPos; + } + length = Range; + } + UpdateAxis(direction.normalized * (length / Range)); + } + + /// + /// Updates the . + /// + /// + private void UpdateAxis(Vector2 axis) { + if(Mapping == null) return; + Stick.localPosition = axis * Range; + Mapping[X] = axis.x; + Mapping[Y] = -axis.y; // invert to match "normal" controller axis + } + + public void OnPointerDown(PointerEventData data) { + Show(); + if(RectTransformUtility.RectangleContainsScreenPoint(Stick, data.position) || + RectTransformUtility.RectangleContainsScreenPoint(Base, data.position)) { + UpdateStick(data.position); + } else if(Movable) { + Base.position = data.position; + UpdateAxis(Vector2.zero); + } + } + + public void OnPointerUp(PointerEventData data) { + UpdateAxis(Vector2.zero); + if(HideOnRelease) Hide(true); + } + + public void OnDrag(PointerEventData data) { + UpdateStick(data.position); + } + } +} diff --git a/Assets/CarbonInput/Scripts/TouchInput/TouchStick.cs.meta b/Assets/CarbonInput/Scripts/TouchInput/TouchStick.cs.meta new file mode 100644 index 0000000..eb707fc --- /dev/null +++ b/Assets/CarbonInput/Scripts/TouchInput/TouchStick.cs.meta @@ -0,0 +1,18 @@ +fileFormatVersion: 2 +guid: d08a4cd93a9455549863e3be1bc004f2 +labels: +- Touchinput +- Touch +- Input +- Gamepad +- Joystick +timeCreated: 1455826432 +licenseType: Store +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/CarbonInput/readme.txt b/Assets/CarbonInput/readme.txt new file mode 100644 index 0000000..c06de7b --- /dev/null +++ b/Assets/CarbonInput/readme.txt @@ -0,0 +1,27 @@ +Getting started +1. If not already done, download and import CarbonInput from Unity Asset Store +2. Initialize the input system by clicking the following menut item: + Edit > Project Settings > Carbon Input > Create Carbon Input Axes + Now the necessary axes are automatically set up and you can start using CarbonInput +3. Query a button or axis directly: + bool button = GamePad.GetButton(CButton.A); + float axis = GamePad.GetAxis(CAxis.LX); + You could also query a Vector2: + Vector2 leftStick = GamePad.GetStick(CStick.Left); + // alternative: + Vector2 leftStick = GamePad.GetLeftStick(); +4. You can also query the complete state of a gamepad: + GamePadState state = GamePad.GetState(); + bool fire = state.A; + Vector2 move = state.Left; + The GamePadState does not only store the current state, but also the state from the last frame. + Therefor you can also check if a button was pressed or released during this frame: + bool pressed = state.Pressed(CButton.A); + bool released = state.Released(CButton.A); +5. The mentioned methods are able to accept a PlayerIndex as an optional parameter. + If you don't specify an index, the special index PlayerIndex.Any is used. + Example for second player: GamePad.GetButton(CButton.A, PlayerIndex.Two) + +That's basically all. +p.s. +If you want to have icons for the CarbonInput asset files, you have to move the content of the CarbonInput/Gizmos folder to the Gizmos folder in your assets root directory. diff --git a/Assets/CarbonInput/readme.txt.meta b/Assets/CarbonInput/readme.txt.meta new file mode 100644 index 0000000..b5fdccf --- /dev/null +++ b/Assets/CarbonInput/readme.txt.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 1d843d4332cac1a43a2c809c97ddd8c8 +timeCreated: 1455802996 +licenseType: Store +TextScriptImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Prefabs.meta b/Assets/Prefabs.meta new file mode 100644 index 0000000..5d58175 --- /dev/null +++ b/Assets/Prefabs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: d15fd0600c1de8dd2bb1a518d42fcf6c +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Prefabs/Fading Tile.prefab b/Assets/Prefabs/Fading Tile.prefab new file mode 100644 index 0000000..92d64ac --- /dev/null +++ b/Assets/Prefabs/Fading Tile.prefab @@ -0,0 +1,97 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &7774004014614795595 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 7774004014614795589} + - component: {fileID: 7774004014614795588} + - component: {fileID: 7774004014614795590} + m_Layer: 0 + m_Name: Fading Tile + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &7774004014614795589 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7774004014614795595} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!212 &7774004014614795588 +SpriteRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7774004014614795595} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 0 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: -32768 + m_Sprite: {fileID: 7399533318584292489, guid: 7d40eb5636a00037bb35d882197f6a1a, + type: 3} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_FlipX: 0 + m_FlipY: 0 + m_DrawMode: 0 + m_Size: {x: 32, y: 32} + m_AdaptiveModeThreshold: 0.5 + m_SpriteTileMode: 0 + m_WasSpriteAssigned: 1 + m_MaskInteraction: 0 + m_SpriteSortPoint: 0 +--- !u!114 &7774004014614795590 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7774004014614795595} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 3568a979977247a55a05ef45aca8d951, type: 3} + m_Name: + m_EditorClassIdentifier: diff --git a/Assets/Prefabs/Fading Tile.prefab.meta b/Assets/Prefabs/Fading Tile.prefab.meta new file mode 100644 index 0000000..02434b4 --- /dev/null +++ b/Assets/Prefabs/Fading Tile.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: a502626c7fe3139d88fe524e1e4516c5 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Prefabs/Tree.prefab b/Assets/Prefabs/Tree.prefab new file mode 100644 index 0000000..2646e89 --- /dev/null +++ b/Assets/Prefabs/Tree.prefab @@ -0,0 +1,126 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &5537780838073177683 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5537780838073177686} + - component: {fileID: 5537780838073177681} + - component: {fileID: 5537780838073177680} + - component: {fileID: -4609438826138415305} + - component: {fileID: 7998975642883131971} + m_Layer: 0 + m_Name: Tree + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &5537780838073177686 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5537780838073177683} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -60, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!212 &5537780838073177681 +SpriteRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5537780838073177683} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 0 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_Sprite: {fileID: 21300000, guid: ef534146f0b5d174c84f7bf8f50b1b22, type: 3} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_FlipX: 0 + m_FlipY: 0 + m_DrawMode: 0 + m_Size: {x: 32, y: 64} + m_AdaptiveModeThreshold: 0.5 + m_SpriteTileMode: 0 + m_WasSpriteAssigned: 1 + m_MaskInteraction: 0 + m_SpriteSortPoint: 0 +--- !u!58 &5537780838073177680 +CircleCollider2D: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5537780838073177683} + m_Enabled: 1 + m_Density: 1 + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_UsedByEffector: 0 + m_UsedByComposite: 0 + m_Offset: {x: -6, y: 6} + serializedVersion: 2 + m_Radius: 8 +--- !u!114 &-4609438826138415305 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5537780838073177683} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 0aaaa632174b054d4bd837b96202c530, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!114 &7998975642883131971 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5537780838073177683} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 7a2ab35da005f7d6c83a51f94e2b5490, type: 3} + m_Name: + m_EditorClassIdentifier: diff --git a/Assets/Prefabs/Tree.prefab.meta b/Assets/Prefabs/Tree.prefab.meta new file mode 100644 index 0000000..0befceb --- /dev/null +++ b/Assets/Prefabs/Tree.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 600eb996560bbd16db2cf42f5b7f9d49 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scenes.meta b/Assets/Scenes.meta new file mode 100644 index 0000000..e3a0130 --- /dev/null +++ b/Assets/Scenes.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 2e747a7122ef02762b1f469fc528ddb6 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scenes/SampleScene.unity b/Assets/Scenes/SampleScene.unity new file mode 100644 index 0000000..a2a78f3 --- /dev/null +++ b/Assets/Scenes/SampleScene.unity @@ -0,0 +1,659 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!29 &1 +OcclusionCullingSettings: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_OcclusionBakeSettings: + smallestOccluder: 5 + smallestHole: 0.25 + backfaceThreshold: 100 + m_SceneGUID: 00000000000000000000000000000000 + m_OcclusionCullingData: {fileID: 0} +--- !u!104 &2 +RenderSettings: + m_ObjectHideFlags: 0 + serializedVersion: 9 + m_Fog: 0 + m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} + m_FogMode: 3 + m_FogDensity: 0.01 + m_LinearFogStart: 0 + m_LinearFogEnd: 300 + m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} + m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} + m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} + m_AmbientIntensity: 1 + m_AmbientMode: 3 + m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} + m_SkyboxMaterial: {fileID: 0} + m_HaloStrength: 0.5 + m_FlareStrength: 1 + m_FlareFadeSpeed: 3 + m_HaloTexture: {fileID: 0} + m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} + m_DefaultReflectionMode: 0 + m_DefaultReflectionResolution: 128 + m_ReflectionBounces: 1 + m_ReflectionIntensity: 1 + m_CustomReflection: {fileID: 0} + m_Sun: {fileID: 0} + m_IndirectSpecularColor: {r: 0, g: 0, b: 0, a: 1} + m_UseRadianceAmbientProbe: 0 +--- !u!157 &3 +LightmapSettings: + m_ObjectHideFlags: 0 + serializedVersion: 11 + m_GIWorkflowMode: 1 + m_GISettings: + serializedVersion: 2 + m_BounceScale: 1 + m_IndirectOutputScale: 1 + m_AlbedoBoost: 1 + m_EnvironmentLightingMode: 0 + m_EnableBakedLightmaps: 0 + m_EnableRealtimeLightmaps: 0 + m_LightmapEditorSettings: + serializedVersion: 12 + m_Resolution: 2 + m_BakeResolution: 40 + m_AtlasSize: 1024 + m_AO: 0 + m_AOMaxDistance: 1 + m_CompAOExponent: 1 + m_CompAOExponentDirect: 0 + m_ExtractAmbientOcclusion: 0 + m_Padding: 2 + m_LightmapParameters: {fileID: 0} + m_LightmapsBakeMode: 1 + m_TextureCompression: 1 + m_FinalGather: 0 + m_FinalGatherFiltering: 1 + m_FinalGatherRayCount: 256 + m_ReflectionCompression: 2 + m_MixedBakeMode: 2 + m_BakeBackend: 0 + m_PVRSampling: 1 + m_PVRDirectSampleCount: 32 + m_PVRSampleCount: 500 + m_PVRBounces: 2 + m_PVREnvironmentSampleCount: 500 + m_PVREnvironmentReferencePointCount: 2048 + m_PVRFilteringMode: 2 + m_PVRDenoiserTypeDirect: 0 + m_PVRDenoiserTypeIndirect: 0 + m_PVRDenoiserTypeAO: 0 + m_PVRFilterTypeDirect: 0 + m_PVRFilterTypeIndirect: 0 + m_PVRFilterTypeAO: 0 + m_PVREnvironmentMIS: 0 + m_PVRCulling: 1 + m_PVRFilteringGaussRadiusDirect: 1 + m_PVRFilteringGaussRadiusIndirect: 5 + m_PVRFilteringGaussRadiusAO: 2 + m_PVRFilteringAtrousPositionSigmaDirect: 0.5 + m_PVRFilteringAtrousPositionSigmaIndirect: 2 + m_PVRFilteringAtrousPositionSigmaAO: 1 + m_ExportTrainingData: 0 + m_TrainingDataDestination: TrainingData + m_LightProbeSampleCountMultiplier: 4 + m_LightingDataAsset: {fileID: 0} + m_UseShadowmask: 1 +--- !u!196 &4 +NavMeshSettings: + serializedVersion: 2 + m_ObjectHideFlags: 0 + m_BuildSettings: + serializedVersion: 2 + agentTypeID: 0 + agentRadius: 0.5 + agentHeight: 2 + agentSlope: 45 + agentClimb: 0.4 + ledgeDropHeight: 0 + maxJumpAcrossDistance: 0 + minRegionArea: 2 + manualCellSize: 0 + cellSize: 0.16666667 + manualTileSize: 0 + tileSize: 256 + accuratePlacement: 0 + debug: + m_Flags: 0 + m_NavMeshData: {fileID: 0} +--- !u!1 &407533482 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 407533483} + - component: {fileID: 407533484} + m_Layer: 0 + m_Name: Level Controller + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &407533483 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 407533482} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &407533484 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 407533482} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4beeacff2211776f08d07aba88e15714, type: 3} + m_Name: + m_EditorClassIdentifier: + globalLightLevel: 1 + increment: -0.00027 +--- !u!1 &519420028 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 519420032} + - component: {fileID: 519420031} + - component: {fileID: 519420029} + m_Layer: 0 + m_Name: Main Camera + m_TagString: MainCamera + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!81 &519420029 +AudioListener: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 519420028} + m_Enabled: 1 +--- !u!20 &519420031 +Camera: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 519420028} + m_Enabled: 1 + serializedVersion: 2 + m_ClearFlags: 2 + m_BackGroundColor: {r: 0, g: 0, b: 0, a: 0} + m_projectionMatrixMode: 1 + m_GateFitMode: 2 + m_FOVAxisMode: 0 + m_SensorSize: {x: 36, y: 24} + m_LensShift: {x: 0, y: 0} + m_FocalLength: 50 + m_NormalizedViewPortRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 1 + height: 1 + near clip plane: 0.3 + far clip plane: 1000 + field of view: 60 + orthographic: 1 + orthographic size: 100 + m_Depth: -1 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RenderingPath: -1 + m_TargetTexture: {fileID: 0} + m_TargetDisplay: 0 + m_TargetEye: 0 + m_HDR: 1 + m_AllowMSAA: 0 + m_AllowDynamicResolution: 0 + m_ForceIntoRT: 0 + m_OcclusionCulling: 0 + m_StereoConvergence: 10 + m_StereoSeparation: 0.022 +--- !u!4 &519420032 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 519420028} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 24, z: -10} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 708403714} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &549122371 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 549122373} + - component: {fileID: 549122372} + - component: {fileID: 549122374} + - component: {fileID: 549122375} + m_Layer: 0 + m_Name: Fire + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!212 &549122372 +SpriteRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 549122371} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 0 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_Sprite: {fileID: 21300000, guid: df99cd1ef8b819c79bd6883e133ddd00, type: 3} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_FlipX: 0 + m_FlipY: 0 + m_DrawMode: 0 + m_Size: {x: 32, y: 48} + m_AdaptiveModeThreshold: 0.5 + m_SpriteTileMode: 0 + m_WasSpriteAssigned: 1 + m_MaskInteraction: 0 + m_SpriteSortPoint: 0 +--- !u!4 &549122373 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 549122371} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 1189231047} + m_Father: {fileID: 0} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!95 &549122374 +Animator: + serializedVersion: 3 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 549122371} + m_Enabled: 1 + m_Avatar: {fileID: 0} + m_Controller: {fileID: 9100000, guid: ddf225d2c3ffdc783b59df4d81fc8038, type: 2} + m_CullingMode: 0 + m_UpdateMode: 0 + m_ApplyRootMotion: 0 + m_LinearVelocityBlending: 0 + m_WarningMessage: + m_HasTransformHierarchy: 1 + m_AllowConstantClipSamplingOptimization: 1 + m_KeepAnimatorControllerStateOnDisable: 0 +--- !u!114 &549122375 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 549122371} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 26985665716a9ec3eaedc74ed0ddd51f, type: 3} + m_Name: + m_EditorClassIdentifier: + size: 1 +--- !u!1 &708403710 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 708403714} + - component: {fileID: 708403713} + - component: {fileID: 708403715} + - component: {fileID: 708403716} + - component: {fileID: 708403712} + - component: {fileID: 708403711} + m_Layer: 0 + m_Name: Character + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &708403711 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 708403710} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 9031b04b82be9f34aa1d8f27d7621db8, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!114 &708403712 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 708403710} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 0aaaa632174b054d4bd837b96202c530, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!212 &708403713 +SpriteRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 708403710} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 0 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_Sprite: {fileID: 21300000, guid: 7eeec02261b06017787a7374f7eb767b, type: 3} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_FlipX: 0 + m_FlipY: 0 + m_DrawMode: 0 + m_Size: {x: 0.32, y: 0.48} + m_AdaptiveModeThreshold: 0.5 + m_SpriteTileMode: 0 + m_WasSpriteAssigned: 1 + m_MaskInteraction: 0 + m_SpriteSortPoint: 0 +--- !u!4 &708403714 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 708403710} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 48, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 519420032} + m_Father: {fileID: 0} + m_RootOrder: 3 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!50 &708403715 +Rigidbody2D: + serializedVersion: 4 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 708403710} + m_BodyType: 0 + m_Simulated: 1 + m_UseFullKinematicContacts: 0 + m_UseAutoMass: 0 + m_Mass: 1 + m_LinearDrag: 0 + m_AngularDrag: 0 + m_GravityScale: 0 + m_Material: {fileID: 0} + m_Interpolate: 0 + m_SleepingMode: 1 + m_CollisionDetection: 0 + m_Constraints: 4 +--- !u!58 &708403716 +CircleCollider2D: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 708403710} + m_Enabled: 1 + m_Density: 1 + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_UsedByEffector: 0 + m_UsedByComposite: 0 + m_Offset: {x: 0, y: 12} + serializedVersion: 2 + m_Radius: 16 +--- !u!1 &1189231046 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1189231047} + - component: {fileID: 1189231048} + - component: {fileID: 1189231049} + m_Layer: 0 + m_Name: Base + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1189231047 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1189231046} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 6, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 549122373} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!212 &1189231048 +SpriteRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1189231046} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 0 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: -100 + m_Sprite: {fileID: 21300000, guid: 9d98c71db54db3ee78e86b9f188951ac, type: 3} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_FlipX: 0 + m_FlipY: 0 + m_DrawMode: 0 + m_Size: {x: 32, y: 32} + m_AdaptiveModeThreshold: 0.5 + m_SpriteTileMode: 0 + m_WasSpriteAssigned: 1 + m_MaskInteraction: 0 + m_SpriteSortPoint: 0 +--- !u!58 &1189231049 +CircleCollider2D: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1189231046} + m_Enabled: 1 + m_Density: 1 + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_UsedByEffector: 0 + m_UsedByComposite: 0 + m_Offset: {x: 0, y: -6} + serializedVersion: 2 + m_Radius: 16 +--- !u!1 &2042861698 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2042861700} + - component: {fileID: 2042861699} + m_Layer: 0 + m_Name: Ground + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &2042861699 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2042861698} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 9f848b3c767b145fcb528148f52492de, type: 3} + m_Name: + m_EditorClassIdentifier: + tilePrefab: {fileID: 7774004014614795595, guid: a502626c7fe3139d88fe524e1e4516c5, + type: 3} + treePrefab: {fileID: 5537780838073177683, guid: 600eb996560bbd16db2cf42f5b7f9d49, + type: 3} +--- !u!4 &2042861700 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2042861698} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 2 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} diff --git a/Assets/Scenes/SampleScene.unity.meta b/Assets/Scenes/SampleScene.unity.meta new file mode 100644 index 0000000..8c7c4ee --- /dev/null +++ b/Assets/Scenes/SampleScene.unity.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 2cda990e2423bbf4892e6590ba056729 +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts.meta b/Assets/Scripts.meta new file mode 100644 index 0000000..4bea702 --- /dev/null +++ b/Assets/Scripts.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 3924a5e8f6fa4c932afa0ffb3c99536c +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/FadeToBlack.cs b/Assets/Scripts/FadeToBlack.cs new file mode 100644 index 0000000..bf27979 --- /dev/null +++ b/Assets/Scripts/FadeToBlack.cs @@ -0,0 +1,30 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +public class FadeToBlack : MonoBehaviour { + LevelController levelController; + SpriteRenderer spriteRenderer; + + void Awake() { + spriteRenderer = GetComponent(); + levelController = GameObject.Find("Level Controller").GetComponent(); + } + + void FixedUpdate() { + HandleAnimation(); + } + + void HandleAnimation() { + //determine the brightness based on distance from the center of the tilemap + float distance = Vector3.Distance(transform.localPosition, Vector3.zero) / 32f; + float brightness = 1 - Mathf.Log(distance, 10) + levelController.globalLightLevel - 0.5f; + + Color color = Color.white; + color.r = brightness; + color.g = brightness; + color.b = brightness; + + spriteRenderer.color = color; + } +} \ No newline at end of file diff --git a/Assets/Scripts/FadeToBlack.cs.meta b/Assets/Scripts/FadeToBlack.cs.meta new file mode 100644 index 0000000..d3ca596 --- /dev/null +++ b/Assets/Scripts/FadeToBlack.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 0aaaa632174b054d4bd837b96202c530 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/GameObjects.meta b/Assets/Scripts/GameObjects.meta new file mode 100644 index 0000000..cc6f5ac --- /dev/null +++ b/Assets/Scripts/GameObjects.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 3cb5a455764fe0a9893b9793905f73c0 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/GameObjects/Character.cs b/Assets/Scripts/GameObjects/Character.cs new file mode 100644 index 0000000..0a0d03a --- /dev/null +++ b/Assets/Scripts/GameObjects/Character.cs @@ -0,0 +1,67 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +public class Character : MonoBehaviour { + //components + SpriteRenderer spriteRenderer; + Rigidbody2D rb; + + //movement + float horizontalInput; + float verticalInput; + float lastHorizontalInput; + float lastVerticalInput; + const float deadZone = 0.15f; + const float maxSpeed = 60f; + const float moveForce = 400f; + + void Awake() { + spriteRenderer = GetComponent(); + rb = GetComponent(); + } + + void Update() { + HandleInput(); + } + + void FixedUpdate() { + HandleMovement(); + HandleAnimation(); + } + + void HandleInput() { + horizontalInput = GamePad.GetAxis(CAxis.LX); + verticalInput = -GamePad.GetAxis(CAxis.LY); + + if (Mathf.Abs(horizontalInput) > deadZone || Mathf.Abs(verticalInput) > deadZone) { + lastHorizontalInput = horizontalInput; + lastVerticalInput = verticalInput; + } + } + + void HandleMovement() { + //stop the player if input in that direction has been removed + if (horizontalInput * rb.velocity.x <= 0) { + rb.velocity = new Vector2(rb.velocity.x * 0.65f, rb.velocity.y); + } + + if (verticalInput * rb.velocity.y <= 0) { + rb.velocity = new Vector2(rb.velocity.x, rb.velocity.y * 0.65f); + } + + //move in the inputted direction, if not at max speed + if (horizontalInput * rb.velocity.x < maxSpeed) { + rb.AddForce(Vector2.right * horizontalInput * moveForce); + } + + if (verticalInput * rb.velocity.y < maxSpeed) { + rb.AddForce(Vector2.up * verticalInput * moveForce); + } + } + + void HandleAnimation() { + spriteRenderer.sortingOrder = -(int)Mathf.Floor(transform.localPosition.y * 100); + spriteRenderer.flipX = lastHorizontalInput > 0f; + } +} \ No newline at end of file diff --git a/Assets/Scripts/GameObjects/Character.cs.meta b/Assets/Scripts/GameObjects/Character.cs.meta new file mode 100644 index 0000000..c182a69 --- /dev/null +++ b/Assets/Scripts/GameObjects/Character.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 9031b04b82be9f34aa1d8f27d7621db8 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/GameObjects/FadingTile.cs b/Assets/Scripts/GameObjects/FadingTile.cs new file mode 100644 index 0000000..90dd619 --- /dev/null +++ b/Assets/Scripts/GameObjects/FadingTile.cs @@ -0,0 +1,38 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +public class FadingTile : MonoBehaviour { + static LevelController levelController; + + SpriteRenderer spriteRenderer; + + void Awake() { + spriteRenderer = GetComponent(); + + if (!levelController) { + levelController = GameObject.Find("Level Controller").GetComponent(); + } + } + + void FixedUpdate() { + HandleAnimation(); + } + + void HandleAnimation() { + //determine the brightness based on distance from the center of the tilemap + float distance = Vector3.Distance(transform.localPosition, Vector3.zero) / 32f; + + //bugfix for tile under the fire + if (distance == 0) { + distance = 0.5f; + } + + float brightness = 1 - Mathf.Log(distance, 10) + levelController.globalLightLevel - 0.5f; + + Color color = Color.white; + color.a = brightness; + + spriteRenderer.color = color; + } +} diff --git a/Assets/Scripts/GameObjects/FadingTile.cs.meta b/Assets/Scripts/GameObjects/FadingTile.cs.meta new file mode 100644 index 0000000..73d033f --- /dev/null +++ b/Assets/Scripts/GameObjects/FadingTile.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 3568a979977247a55a05ef45aca8d951 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/GameObjects/Fire.cs b/Assets/Scripts/GameObjects/Fire.cs new file mode 100644 index 0000000..4d0f0c7 --- /dev/null +++ b/Assets/Scripts/GameObjects/Fire.cs @@ -0,0 +1,39 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +public class Fire : MonoBehaviour { + Animator animator; + LevelController levelController; + + [SerializeField] + int size = 1; + + void Awake() { + animator = GetComponent(); + levelController = GameObject.Find("Level Controller").GetComponent(); + } + + void Start() { + animator.speed = 1f / 10f; + } + + void Update() { + //change based on global light level + if (levelController.globalLightLevel <= 0.3f) { + size = 1; + } else if (levelController.globalLightLevel < 0.7f) { + size = 2; + } else { + size = 3; + } + } + + void FixedUpdate() { + HandleAnimation(); + } + + void HandleAnimation() { + animator.SetInteger("size", size); + } +} \ No newline at end of file diff --git a/Assets/Scripts/GameObjects/Fire.cs.meta b/Assets/Scripts/GameObjects/Fire.cs.meta new file mode 100644 index 0000000..fd9b301 --- /dev/null +++ b/Assets/Scripts/GameObjects/Fire.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 26985665716a9ec3eaedc74ed0ddd51f +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/GameObjects/Ground.cs b/Assets/Scripts/GameObjects/Ground.cs new file mode 100644 index 0000000..20d01c0 --- /dev/null +++ b/Assets/Scripts/GameObjects/Ground.cs @@ -0,0 +1,42 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +public class Ground : MonoBehaviour { + [SerializeField] + GameObject tilePrefab; + + [SerializeField] + GameObject treePrefab; + + void Awake() { + //generate tiles + const int size = 20; + + for (int i = -size; i <= size; i++) { + for (int j = -size; j <= size; j++) { + Instantiate(tilePrefab, new Vector3(i * 32, j * 32, 0), Quaternion.identity, transform); + } + } + + for (int i = 0; i < 50; i++) { + GenerateTree(5, size); + } + + for (int i = 0; i < 3; i++) { + GenerateTree(2, 5); + } + } + + void GenerateTree(float near, float far) { + //geenrate trees + float direction = Random.Range(0, 360); //angle + float distance = Random.Range(near, far); //H & A + + //SOH CAH TOA + float sin = Mathf.Sin(direction * Mathf.PI / 180f); + float cos = Mathf.Cos(direction * Mathf.PI / 180f); + + Instantiate(treePrefab, new Vector3(distance * cos * 32, distance * sin * 32, 0), Quaternion.identity, transform); + } +} \ No newline at end of file diff --git a/Assets/Scripts/GameObjects/Ground.cs.meta b/Assets/Scripts/GameObjects/Ground.cs.meta new file mode 100644 index 0000000..0664a66 --- /dev/null +++ b/Assets/Scripts/GameObjects/Ground.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 9f848b3c767b145fcb528148f52492de +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/GameObjects/Tree.cs b/Assets/Scripts/GameObjects/Tree.cs new file mode 100644 index 0000000..fb6c6b9 --- /dev/null +++ b/Assets/Scripts/GameObjects/Tree.cs @@ -0,0 +1,13 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +public class Tree : MonoBehaviour { + SpriteRenderer spriteRenderer; + + void Awake() { + spriteRenderer = GetComponent(); + + spriteRenderer.sortingOrder = -(int)Mathf.Floor(transform.localPosition.y * 100); + } +} \ No newline at end of file diff --git a/Assets/Scripts/GameObjects/Tree.cs.meta b/Assets/Scripts/GameObjects/Tree.cs.meta new file mode 100644 index 0000000..2b9c08b --- /dev/null +++ b/Assets/Scripts/GameObjects/Tree.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 7a2ab35da005f7d6c83a51f94e2b5490 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/LevelController.cs b/Assets/Scripts/LevelController.cs new file mode 100644 index 0000000..8937294 --- /dev/null +++ b/Assets/Scripts/LevelController.cs @@ -0,0 +1,13 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +public class LevelController : MonoBehaviour { + public float globalLightLevel = 1f; + public float increment = 0f; + + void FixedUpdate() { + globalLightLevel += increment; + globalLightLevel = Mathf.Clamp(globalLightLevel, 0, 1); + } +} \ No newline at end of file diff --git a/Assets/Scripts/LevelController.cs.meta b/Assets/Scripts/LevelController.cs.meta new file mode 100644 index 0000000..e6ff103 --- /dev/null +++ b/Assets/Scripts/LevelController.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 4beeacff2211776f08d07aba88e15714 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Sprites.meta b/Assets/Sprites.meta new file mode 100644 index 0000000..d18c2ea --- /dev/null +++ b/Assets/Sprites.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 55152c896bf9fd8fe9eaa659afbc0003 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Sprites/character.png b/Assets/Sprites/character.png new file mode 100644 index 0000000000000000000000000000000000000000..019adaee30434140bf87db33f7a2d2ed650421dd GIT binary patch literal 1054 zcmV+(1mXLMP)EX>4Tx04R}tkvmAkKpe)uzVJas&<-LF5vr2~Q4vS2LJ=y2TA@`3lS^OFq#;Rh zaTHt&4n7vE4ld5RI=Bjg-~+_T(Mi!oO8j3^Xc6PVaX-Gh@8j+}z+W#j)eMdUs%9Cf zL|n*ZSA~vO1kr~Ox-cv;Q=b#XBs|C0J$!tC`-NgjguFvE0V2XsEe3JSuIyt^Pc>L;heUz%ypVWNMI355FtQD6(y8mAx5i4iis5M$36Umj$b5~Os*0b zITlcX3d!+<|H1EW&HUtqn-q=%p%>f!7y&wVfkw@?zmILZaRLOMfh(=$uhfB=Ptt2G zEqVm>ZUYzBElu77E_Z-|CtWfmM+(sN=kvh(8GTb0=)VQJ*WBKk`#607($rP*1~@nb zMhld^?(y!<_TK(I)9mjD7J_nuQlYh300006VoOIv07d{p0AA5OGs^$~010qNS#tmY zE+YT{E+YYWr9XB6000McNlirueSad^gZEa<4bO1wgWnpw> zWFU8GbZ8()Nlj2!fese{00H(%L_t(o!|hl-PXa*@ow?9S!H>8QDk`+Zf`Y`}P-0Jw z6c;L_xLDh3Y3xZXOoYyZ%E}-=f&%NYFiVcT*}bpbJ4l@BGRfY1`(}3T-69czE~cXm z0RVWui{e>?=er0w162fMuq2U%Pz4MIM>>uatH5wD+b3()x)E|JA}oPmIo~H=9)FCH z;D|Una2p|)iBo_iLdI1HD-lruFag8*v3Ev+aXF3DFGr9000p|u$+Uf zX4EPWHyy1L5Y1N#fsf$5FmSB`;jmTz!~}G)-K{epQO|eL*eDK@NUGLiH8J-!Ok1MG zY67osPskFuIKRYTIVT&nU#up{{D5ijFmSWcizo2;^$Y+2?bg`HPGw-RIn+(PZl@nR z65FjY3nl|{z2f;UDis(GW+cBrs1nW#a1Ja-cCO2wQ8NsrJVznq;8mdxrruq zpv0JtHss{}7dUAJj*CDV`Ar#A&v)@S6ey$lGWWoCw>J8bGG2l-{Slc1Mejbf0&(D3 z2s)o$BQJIM%!1sQj+v!tQ>y^hB-alOZ`GIDm7qL}>kSZSs!ma0A z6B5zErBv8@$&12yRWutt<$BH&A`u;oVjDLhs?)(*GFv~P|As_Mz{I8V$tj?`CoDRC Y0n&vAwe*nBUjP6A07*qoM6N<$g1gSeY5)KL literal 0 HcmV?d00001 diff --git a/Assets/Sprites/character.png.meta b/Assets/Sprites/character.png.meta new file mode 100644 index 0000000..19d81db --- /dev/null +++ b/Assets/Sprites/character.png.meta @@ -0,0 +1,116 @@ +fileFormatVersion: 2 +guid: 7eeec02261b06017787a7374f7eb767b +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 11 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: -1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 0 + alignment: 7 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 1 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + applyGammaDecoding: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 5e97eb03825dee720800000000000000 + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Sprites/fire.meta b/Assets/Sprites/fire.meta new file mode 100644 index 0000000..af5b3c0 --- /dev/null +++ b/Assets/Sprites/fire.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 65c72cab79664eebb873c3e7d6c75584 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Sprites/fire/large_1.png b/Assets/Sprites/fire/large_1.png new file mode 100644 index 0000000000000000000000000000000000000000..637b97ced8d3b07998dc69457d8160070c8730de GIT binary patch literal 991 zcmV<510ei~P)EX>4Tx04R}tkv&MmP!xqv(@I4uf_4xQ$xu645EXIMDionYs1;guFnQ@8G-*g$ zTpR`0f`dPcRR6lU)^quLz(YK14AhGs~Ehq$E7+>z+EP?qWR4yYJ8HRdW^td?N8IGt4US2J!S} z)!@8O9A-sXB|aw}GwFiFk6c$=e&bwlSm2pqGo6|z4ik%o4pust6-|wJia4TbI^_!) zmsQSNoV9X|weHDZ7|Q7@%Uq{5j06_31PLM()KEehRm5o5NwJWk^SFn9$ni_$Qpi;T zBgX%a0@IUxHTPr^~;U^3A z0?`6xuY0_^yK`>;_O#~r15Ijjn9TDc=l}o!24YJ`L;(K){{a7>y{D4^000SaNLh0L z04^f{04^f|c%?sf00007bV*G`2jm120uvNAAd6uD000?uMObu0Z*6U5Zgc=ca%Ew3 zWn>_CX>@2HM@dakSAh-}0005DNkl)9Faj;h%}?=u`27BQzBV~7_dXCc9(^EVlZZnQGKO&{;BFE^ zM)VOBdL9R(?0Z#M-%}a>7 z(a$#KMUDR4)pT-{Vc0m#8h4I((ESrR^`R5JX*6rLW%ZQfMB~tR9B2{Tc0V8ol1ern zxe>Wx$#t6)gJG?_{nN2lDWaU~I@}d=p?Ynm7|*!6nQkgIgw!5WJilq;LQL literal 0 HcmV?d00001 diff --git a/Assets/Sprites/fire/large_1.png.meta b/Assets/Sprites/fire/large_1.png.meta new file mode 100644 index 0000000..0f69a1f --- /dev/null +++ b/Assets/Sprites/fire/large_1.png.meta @@ -0,0 +1,116 @@ +fileFormatVersion: 2 +guid: df99cd1ef8b819c79bd6883e133ddd00 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 11 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: -1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 0 + alignment: 7 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 1 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + applyGammaDecoding: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 5e97eb03825dee720800000000000000 + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Sprites/fire/large_2.png b/Assets/Sprites/fire/large_2.png new file mode 100644 index 0000000000000000000000000000000000000000..b2c66860195e49f25765d9e70a32add4ad0c47f4 GIT binary patch literal 1053 zcmV+&1mgRNP)EX>4Tx04R}tkv&MmP!xqv(@I4uf_4xQ$xu645EXIMDionYs1;guFnQ@8G-*g$ zTpR`0f`dPcRR6lU)^quLz(YK14AhGs~Ehq$E7+>z+EP?qWR4yYJ8HRdW^td?N8IGt4US2J!S} z)!@8O9A-sXB|aw}GwFiFk6c$=e&bwlSm2pqGo6|z4ik%o4pust6-|wJia4TbI^_!) zmsQSNoV9X|weHDZ7|Q7@%Uq{5j06_31PLM()KEehRm5o5NwJWk^SFn9$ni_$Qpi;T zBgX%a0@IUxHTPr^~;U^3A z0?`6xuY0_^yK`>;_O#~r15Ijjn9TDc=l}o!24YJ`L;(K){{a7>y{D4^000SaNLh0L z04^f{04^f|c%?sf00007bV*G`2jm120uvlK`vX$|000?uMObu0Z*6U5Zgc=ca%Ew3 zWn>_CX>@2HM@dakSAh-}0005>Nkl zJ}%qK4b|6i68yZCMEn1KYgPb+(W4B^`I-mnWn3ml*@2gRaj-G$XV{xOXHR@##ioky zH#MM`uyU{D1B>eYCHpEX>4Tx04R}tkv&MmP!xqv(@I4uf_4xQ$xu645EXIMDionYs1;guFnQ@8G-*g$ zTpR`0f`dPcRR6lU)^quLz(YK14AhGs~Ehq$E7+>z+EP?qWR4yYJ8HRdW^td?N8IGt4US2J!S} z)!@8O9A-sXB|aw}GwFiFk6c$=e&bwlSm2pqGo6|z4ik%o4pust6-|wJia4TbI^_!) zmsQSNoV9X|weHDZ7|Q7@%Uq{5j06_31PLM()KEehRm5o5NwJWk^SFn9$ni_$Qpi;T zBgX%a0@IUxHTPr^~;U^3A z0?`6xuY0_^yK`>;_O#~r15Ijjn9TDc=l}o!24YJ`L;(K){{a7>y{D4^000SaNLh0L z04^f{04^f|c%?sf00007bV*G`2jm120uv{R@alH}000?uMObu0Z*6U5Zgc=ca%Ew3 zWn>_CX>@2HM@dakSAh-}0005aNklS9+0JGrP56*Z=rXWm#QN9Q~TZA}+ zeWnYs4p31G@fMLA0iWRlnyZ1uHGdj2_lDAv)<6Q>KLW1U^N(Hd#g68rBBst8TmaYXwT^JSh{bFn>e!IfxRw!7bb(vK=lD!xWvelk zVQ^3~8@5hB3j+*^wR!(~Z$I%|_uoC&)>#29E#QF3CO!?IbPDUF<7X78g4h104qL6L z&SFz{-G3H%!3XyS9EymH46pamGg3-{V-`Ti0qujwGVfy{tOp;O*C%!W8jomryc`-J zgDz}^NNyp~Ks0v@&IcUs|7_HNJqva?4a4K9VmM#9G9?f?J)07*qoM6N<$f*L8kLjV8( literal 0 HcmV?d00001 diff --git a/Assets/Sprites/fire/large_3.png.meta b/Assets/Sprites/fire/large_3.png.meta new file mode 100644 index 0000000..07357c7 --- /dev/null +++ b/Assets/Sprites/fire/large_3.png.meta @@ -0,0 +1,116 @@ +fileFormatVersion: 2 +guid: 9d01303ed461fc2a882c9394a1af57c1 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 11 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: -1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 0 + alignment: 7 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 1 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + applyGammaDecoding: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 5e97eb03825dee720800000000000000 + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Sprites/fire/medium_1.png b/Assets/Sprites/fire/medium_1.png new file mode 100644 index 0000000000000000000000000000000000000000..e79ca1933beffa252522e83a81fbbfff4ee52bb7 GIT binary patch literal 725 zcmV;`0xJE9P)EX>4Tx04R}tkv&MmP!xqv(@I4uf_4xQ$xu645EXIMDionYs1;guFnQ@8G-*g$ zTpR`0f`dPcRR6lU)^quLz(YK14AhGs~Ehq$E7+>z+EP?qWR4yYJ8HRdW^td?N8IGt4US2J!S} z)!@8O9A-sXB|aw}GwFiFk6c$=e&bwlSm2pqGo6|z4ik%o4pust6-|wJia4TbI^_!) zmsQSNoV9X|weHDZ7|Q7@%Uq{5j06_31PLM()KEehRm5o5NwJWk^SFn9$ni_$Qpi;T zBgX%a0@IUxHTPr^~;U^3A z0?`6xuY0_^yK`>;_O#~r15Ijjn9TDc=l}o!24YJ`L;(K){{a7>y{D4^000SaNLh0L z04^f{04^f|c%?sf00007bV*G`2jm120unJ~KW=9L000?uMObu0Z*6U5Zgc=ca%Ew3 zWn>_CX>@2HM@dakSAh-}00022NklA*WwFF2{)0htp|wcuwv#&{@bDGmS&)j&XOI#0Ug00000NkvXX Hu0mjfW{58J literal 0 HcmV?d00001 diff --git a/Assets/Sprites/fire/medium_1.png.meta b/Assets/Sprites/fire/medium_1.png.meta new file mode 100644 index 0000000..44cc306 --- /dev/null +++ b/Assets/Sprites/fire/medium_1.png.meta @@ -0,0 +1,116 @@ +fileFormatVersion: 2 +guid: 594ab07e74bbcad38b3160ab88b80190 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 11 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: -1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 0 + alignment: 7 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 1 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + applyGammaDecoding: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 5e97eb03825dee720800000000000000 + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Sprites/fire/medium_2.png b/Assets/Sprites/fire/medium_2.png new file mode 100644 index 0000000000000000000000000000000000000000..b27355da4273108e4ca15611c81eee21b2b35808 GIT binary patch literal 778 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 CYzyiD literal 0 HcmV?d00001 diff --git a/Assets/Sprites/fire/small_2.png.meta b/Assets/Sprites/fire/small_2.png.meta new file mode 100644 index 0000000..0c560ab --- /dev/null +++ b/Assets/Sprites/fire/small_2.png.meta @@ -0,0 +1,116 @@ +fileFormatVersion: 2 +guid: ba7b9d0c169cdd70ba763419bd2721ef +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 11 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: -1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 0 + alignment: 7 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 1 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + applyGammaDecoding: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 5e97eb03825dee720800000000000000 + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Sprites/fire/small_3.png b/Assets/Sprites/fire/small_3.png new file mode 100644 index 0000000000000000000000000000000000000000..0a55edae0740b4e79b629f775219039c4be4a775 GIT binary patch literal 673 zcmeAS@N?(olHy`uVBq!ia0vp^3P5bY!3HD?)>Py(Ffg`eIy(n=Iy);A6y>L7=A<$( zXiTh~XzOt}K%~|GvX`q?Q<;F^$pGs}0nx%MS|SUbR)|KG8dScNH_7yfijiTx-qdX0 z9m+1A9xEHe>iB{E$jOVI7hS#f=xc82_;~1X?VR%S5BL6NSQwZ#OH_j0WN+3op+dvS zv7*iEITpyz5D(7SE0pX%r#0Mb&StwePsLiCGF~i zJ^nIju92#C>T<>}n~wCygvZo9jwy(EFf-A3?ksga;qF$xFsm7&zP%M)7K^g1o^nf0 z4?Pz>XKPXK)^{i4B~HE6J{_~%w1-7(BMYaJ$dv#m$Ed;N)z-cN!~ zgfb}~XVSW$U|sjY{)cU}w!P&;wbn-t*SmA;dzcQ!E{NRz_I>j0ym<`&(jR!`|JLSB zcsBV)?r5C_>VN3FMcVYMsf(!O8p9~b? zEbxddW?;}$24TjErS@e&LG}_)Usv`gEJ92|YR})iUH}x5EOCt}an8@pP0cG|a4t$s zEJ;mKD9gsN;^~dwfEy<=W{FuIJUQ7n~Giw2csN2bt#S>gTe~DWM4fLh}of literal 0 HcmV?d00001 diff --git a/Assets/Sprites/fire/small_3.png.meta b/Assets/Sprites/fire/small_3.png.meta new file mode 100644 index 0000000..ddc62a6 --- /dev/null +++ b/Assets/Sprites/fire/small_3.png.meta @@ -0,0 +1,116 @@ +fileFormatVersion: 2 +guid: d56eb73f29fa40a168de0f09921d91df +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 11 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: -1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 0 + alignment: 7 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 1 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + applyGammaDecoding: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 5e97eb03825dee720800000000000000 + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Sprites/fire_base.png b/Assets/Sprites/fire_base.png new file mode 100644 index 0000000000000000000000000000000000000000..8059af9f5e7973deb7b5226c2c671f57076c9a25 GIT binary patch literal 860 zcmV-i1Ec(jP)EX>4Tx04R}tkv&MmP!xqv(@I4uf_4xQ$xu645EXIMDionYs1;guFnQ@8G-*g$ zTpR`0f`dPcRR6lU)^quLz(YK14AhGs~Ehq$E7+>z+EP?qWR4yYJ8HRdW^td?N8IGt4US2J!S} z)!@8O9A-sXB|aw}GwFiFk6c$=e&bwlSm2pqGo6|z4ik%o4pust6-|wJia4TbI^_!) zmsQSNoV9X|weHDZ7|Q7@%Uq{5j06_31PLM()KEehRm5o5NwJWk^SFn9$ni_$Qpi;T zBgX%a0@IUxHTPr^~;U^3A z0?`6xuY0_^yK`>;_O#~r15Ijjn9TDc=l}o!24YJ`L;(K){{a7>y{D4^000SaNLh0L z04^f{04^f|c%?sf00007bV*G`2jm120X89uCL#O)000?uMObu0Z*6U5Zgc=ca%Ew3 zWn>_CX>@2HM@dakSAh-}0003qNklaDSjeA(0R`1htybw*V(0fn8__EDBJO*t$vjAq mTq|M;^o>16f)m-EuJ{6=!0@s)u@_VT0000xlq%tsQ zOst(~>v1?hq}Bhjm#bD&nSkKQ0P9Er(ZVZQA`6{Xh(?tfRKAoq$@GYdkzu{w)NJ1! z$}XNBD;vY=_<{Y%$%~#BUA^|`Yi{ZIc<6EMobvMz_x@&B7??IoRD#`PZ`LxQLc__i zqRs0$7RcMV7%CZ`o-uieip}fS^Q>0BOR_n=`~CS>p~Yg%HA)|KjL&F&Wc&Cf?dpR) z{xWHg&4j`YWb$J9NJDTsJ5GtqeNEOkEN?pD4qs~Mucy%k*+i?Xbqa!XDR zJr_M^YfjHn&?6bwJvUBR^m#{n{fUp>Pl8T_ zGASQt(z>8vUH8HMhi$aBz2!r-)<+K4yL0P%m=4A+h}{16ee&(Rc?|#3A9&^e*5*xk zHu+0cbhiv+?d=0cOQVCoHJp}B_;7N9@6CySwzSm9RoE}iKgGnn-QoN!>+RPp{p1@= z&T3UM%g8WYWJ+CMy=V9C;=KRgwmkdJ?3-0I4uk z@Q5sCV9-+rVaAH3_GLgp_7YEDSN10?Ldzopr07kF!j{pDw literal 0 HcmV?d00001 diff --git a/Assets/Sprites/tile.png.meta b/Assets/Sprites/tile.png.meta new file mode 100644 index 0000000..b77b4fb --- /dev/null +++ b/Assets/Sprites/tile.png.meta @@ -0,0 +1,140 @@ +fileFormatVersion: 2 +guid: 7d40eb5636a00037bb35d882197f6a1a +TextureImporter: + internalIDToNameTable: + - first: + 213: 7399533318584292489 + second: tile_0 + externalObjects: {} + serializedVersion: 11 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: -1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 2 + spriteExtrude: 1 + spriteMeshType: 0 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 1 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + applyGammaDecoding: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: + - serializedVersion: 2 + name: tile_0 + rect: + serializedVersion: 2 + x: 0 + y: 0 + width: 32 + height: 32 + alignment: 0 + pivot: {x: 0, y: 0} + border: {x: 0, y: 0, z: 0, w: 0} + outline: [] + physicsShape: [] + tessellationDetail: 0 + bones: [] + spriteID: 98452ed495c60b660800000000000000 + internalID: 7399533318584292489 + vertices: [] + indices: + edges: [] + weights: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 5e97eb03825dee720800000000000000 + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Sprites/tree.png b/Assets/Sprites/tree.png new file mode 100644 index 0000000000000000000000000000000000000000..07894f0ef0ec13756bab5736ab730e9f64b89960 GIT binary patch literal 1034 zcmV+l1oiugP)EX>4Tx04R}tkv&MmKpe$izo&<-LF8LE>7Q4!s=3Pq?8YK2xEOfLO`CJjl7 zi=*ILaPVWX>fqw6tAnc`2!4P#IXWr2NQwVT3N2zhIPS;0dyl(!fWJ{;su>&uRLwHd z$%K&2tqS2+1kr~OW-uc$Q=b#X6ge3JS*_Gq>z@3Dk-WCD%ypVWNMaF75FtQD4P{hdAx^7CiitGsCp`Rvj$b5~Os+B* zITlcb3d!+<|H1EW&BDaEn-oa^p%>f!7zV<-K(lV!-^aGyJOKjFz?IhaR~x|eC+YRJ z7CQoZw}Ff6wkGcZmpj0~lP(#OBL!&s3kBf)jJ_!c^xp#AYi@6?eVjf38R{x^0~{Oz zBSp$y_jq?#XK(+WY4!I5$_jGIW~Mz}00006VoOIv0A&Ck006!z%{Tx6010qNS#tmY zE+YT{E+YYWr9XB6000McNlirueSad^gZEa<4bO1wgWnpw> zWFU8GbZ8()Nlj2!fese{00H7jL_t(&-sM=aQo}F|wRP#rRAv^I{swpDu0PRE3m{d#);yIE zP)1Tf6x9F+L~#+$fdJ0LP}*sL5HTPD6aoR9mwh6W0P}$WE!C@SL^&rL2N+!+w2Vu& z0@6itG6OpbrM#aD$!HJejE5G{5~8)Q_v)S}WkJs6f}?}jJNxs&vP6g%$ua8s;pa9r zKAX_wxfrJaq3>eWo7kcp&s{$lyWLElQAfIIx50?UY{0bp$}c>I`&{;Z0Z2(PI+mJ_ zr(NrC2-aB@Yt{^+tyr@{f>MUK+E_+G!nysH3QO@Un7hb=RvjP>%QB8*jqiQg8xaQK z1NGK+li#=>niFf|`w%)NaeMjbqKnaSpELBoU=~mixKF(fc{bkv157f2SQ!4i9?$}_t`KM%UT+Arg}6QqR82$db@eo? z!T|MJLkCb(fY~9?&;iskT&*5hTo!Q2wBOXb(3rH{03PQj(r_<`%K!iX07*qoM6N<$ Ef(m`bEdT%j literal 0 HcmV?d00001 diff --git a/Assets/Sprites/tree.png.meta b/Assets/Sprites/tree.png.meta new file mode 100644 index 0000000..ddb656c --- /dev/null +++ b/Assets/Sprites/tree.png.meta @@ -0,0 +1,116 @@ +fileFormatVersion: 2 +guid: ef534146f0b5d174c84f7bf8f50b1b22 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 11 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: -1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 0 + alignment: 7 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 0.5 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + applyGammaDecoding: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 5e97eb03825dee720800000000000000 + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Packages/manifest.json b/Packages/manifest.json new file mode 100644 index 0000000..8b02e76 --- /dev/null +++ b/Packages/manifest.json @@ -0,0 +1,48 @@ +{ + "dependencies": { + "com.unity.2d.animation": "3.1.1", + "com.unity.2d.pixel-perfect": "2.0.4", + "com.unity.2d.psdimporter": "2.1.0", + "com.unity.2d.sprite": "1.0.0", + "com.unity.2d.spriteshape": "3.0.9", + "com.unity.2d.tilemap": "1.0.0", + "com.unity.collab-proxy": "1.2.16", + "com.unity.ide.rider": "1.1.4", + "com.unity.ide.vscode": "1.1.4", + "com.unity.test-framework": "1.1.11", + "com.unity.textmeshpro": "2.0.1", + "com.unity.timeline": "1.2.13", + "com.unity.ugui": "1.0.0", + "com.unity.modules.ai": "1.0.0", + "com.unity.modules.androidjni": "1.0.0", + "com.unity.modules.animation": "1.0.0", + "com.unity.modules.assetbundle": "1.0.0", + "com.unity.modules.audio": "1.0.0", + "com.unity.modules.cloth": "1.0.0", + "com.unity.modules.director": "1.0.0", + "com.unity.modules.imageconversion": "1.0.0", + "com.unity.modules.imgui": "1.0.0", + "com.unity.modules.jsonserialize": "1.0.0", + "com.unity.modules.particlesystem": "1.0.0", + "com.unity.modules.physics": "1.0.0", + "com.unity.modules.physics2d": "1.0.0", + "com.unity.modules.screencapture": "1.0.0", + "com.unity.modules.terrain": "1.0.0", + "com.unity.modules.terrainphysics": "1.0.0", + "com.unity.modules.tilemap": "1.0.0", + "com.unity.modules.ui": "1.0.0", + "com.unity.modules.uielements": "1.0.0", + "com.unity.modules.umbra": "1.0.0", + "com.unity.modules.unityanalytics": "1.0.0", + "com.unity.modules.unitywebrequest": "1.0.0", + "com.unity.modules.unitywebrequestassetbundle": "1.0.0", + "com.unity.modules.unitywebrequestaudio": "1.0.0", + "com.unity.modules.unitywebrequesttexture": "1.0.0", + "com.unity.modules.unitywebrequestwww": "1.0.0", + "com.unity.modules.vehicles": "1.0.0", + "com.unity.modules.video": "1.0.0", + "com.unity.modules.vr": "1.0.0", + "com.unity.modules.wind": "1.0.0", + "com.unity.modules.xr": "1.0.0" + } +} diff --git a/ProjectSettings/AudioManager.asset b/ProjectSettings/AudioManager.asset new file mode 100644 index 0000000..74ccc85 --- /dev/null +++ b/ProjectSettings/AudioManager.asset @@ -0,0 +1,19 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!11 &1 +AudioManager: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Volume: 1 + Rolloff Scale: 1 + Doppler Factor: 1 + Default Speaker Mode: 2 + m_SampleRate: 0 + m_DSPBufferSize: 1024 + m_VirtualVoiceCount: 512 + m_RealVoiceCount: 32 + m_SpatializerPlugin: + m_AmbisonicDecoderPlugin: + m_DisableAudio: 0 + m_VirtualizeEffects: 1 + m_RequestedDSPBufferSize: 1024 diff --git a/ProjectSettings/ClusterInputManager.asset b/ProjectSettings/ClusterInputManager.asset new file mode 100644 index 0000000..a84cf4e --- /dev/null +++ b/ProjectSettings/ClusterInputManager.asset @@ -0,0 +1,6 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!236 &1 +ClusterInputManager: + m_ObjectHideFlags: 0 + m_Inputs: [] diff --git a/ProjectSettings/DynamicsManager.asset b/ProjectSettings/DynamicsManager.asset new file mode 100644 index 0000000..53f3851 --- /dev/null +++ b/ProjectSettings/DynamicsManager.asset @@ -0,0 +1,34 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!55 &1 +PhysicsManager: + m_ObjectHideFlags: 0 + serializedVersion: 11 + m_Gravity: {x: 0, y: -9.81, z: 0} + m_DefaultMaterial: {fileID: 0} + m_BounceThreshold: 2 + m_SleepThreshold: 0.005 + m_DefaultContactOffset: 0.01 + m_DefaultSolverIterations: 6 + m_DefaultSolverVelocityIterations: 1 + m_QueriesHitBackfaces: 0 + m_QueriesHitTriggers: 1 + m_EnableAdaptiveForce: 0 + m_ClothInterCollisionDistance: 0 + m_ClothInterCollisionStiffness: 0 + m_ContactsGeneration: 1 + m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff + m_AutoSimulation: 1 + m_AutoSyncTransforms: 0 + m_ReuseCollisionCallbacks: 1 + m_ClothInterCollisionSettingsToggle: 0 + m_ContactPairsMode: 0 + m_BroadphaseType: 0 + m_WorldBounds: + m_Center: {x: 0, y: 0, z: 0} + m_Extent: {x: 250, y: 250, z: 250} + m_WorldSubdivisions: 8 + m_FrictionType: 0 + m_EnableEnhancedDeterminism: 0 + m_EnableUnifiedHeightmaps: 1 + m_DefaultMaxAngluarSpeed: 7 diff --git a/ProjectSettings/EditorBuildSettings.asset b/ProjectSettings/EditorBuildSettings.asset new file mode 100644 index 0000000..98b932a --- /dev/null +++ b/ProjectSettings/EditorBuildSettings.asset @@ -0,0 +1,8 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1045 &1 +EditorBuildSettings: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Scenes: [] + m_configObjects: {} diff --git a/ProjectSettings/EditorSettings.asset b/ProjectSettings/EditorSettings.asset new file mode 100644 index 0000000..5a7387f --- /dev/null +++ b/ProjectSettings/EditorSettings.asset @@ -0,0 +1,35 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!159 &1 +EditorSettings: + m_ObjectHideFlags: 0 + serializedVersion: 9 + m_ExternalVersionControlSupport: Visible Meta Files + m_SerializationMode: 2 + m_LineEndingsForNewScripts: 0 + m_DefaultBehaviorMode: 1 + m_PrefabRegularEnvironment: {fileID: 0} + m_PrefabUIEnvironment: {fileID: 0} + m_SpritePackerMode: 4 + m_SpritePackerPaddingPower: 1 + m_EtcTextureCompressorBehavior: 1 + m_EtcTextureFastCompressor: 1 + m_EtcTextureNormalCompressor: 2 + m_EtcTextureBestCompressor: 4 + m_ProjectGenerationIncludedExtensions: txt;xml;fnt;cd;asmdef;rsp;asmref + m_ProjectGenerationRootNamespace: + m_CollabEditorSettings: + inProgressEnabled: 1 + m_EnableTextureStreamingInEditMode: 1 + m_EnableTextureStreamingInPlayMode: 1 + m_AsyncShaderCompilation: 1 + m_EnterPlayModeOptionsEnabled: 0 + m_EnterPlayModeOptions: 3 + m_ShowLightmapResolutionOverlay: 1 + m_UseLegacyProbeSampleCount: 1 + m_AssetPipelineMode: 1 + m_CacheServerMode: 0 + m_CacheServerEndpoint: + m_CacheServerNamespacePrefix: default + m_CacheServerEnableDownload: 1 + m_CacheServerEnableUpload: 1 diff --git a/ProjectSettings/GraphicsSettings.asset b/ProjectSettings/GraphicsSettings.asset new file mode 100644 index 0000000..ae52db9 --- /dev/null +++ b/ProjectSettings/GraphicsSettings.asset @@ -0,0 +1,57 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!30 &1 +GraphicsSettings: + m_ObjectHideFlags: 0 + serializedVersion: 12 + m_Deferred: + m_Mode: 1 + m_Shader: {fileID: 69, guid: 0000000000000000f000000000000000, type: 0} + m_DeferredReflections: + m_Mode: 1 + m_Shader: {fileID: 74, guid: 0000000000000000f000000000000000, type: 0} + m_ScreenSpaceShadows: + m_Mode: 1 + m_Shader: {fileID: 64, guid: 0000000000000000f000000000000000, type: 0} + m_LegacyDeferred: + m_Mode: 1 + m_Shader: {fileID: 63, guid: 0000000000000000f000000000000000, type: 0} + m_DepthNormals: + m_Mode: 1 + m_Shader: {fileID: 62, guid: 0000000000000000f000000000000000, type: 0} + m_MotionVectors: + m_Mode: 1 + m_Shader: {fileID: 75, guid: 0000000000000000f000000000000000, type: 0} + m_LightHalo: + m_Mode: 1 + m_Shader: {fileID: 105, guid: 0000000000000000f000000000000000, type: 0} + m_LensFlare: + m_Mode: 1 + m_Shader: {fileID: 102, guid: 0000000000000000f000000000000000, type: 0} + m_AlwaysIncludedShaders: + - {fileID: 10753, guid: 0000000000000000f000000000000000, type: 0} + - {fileID: 10770, guid: 0000000000000000f000000000000000, type: 0} + m_PreloadedShaders: [] + m_SpritesDefaultMaterial: {fileID: 10754, guid: 0000000000000000f000000000000000, + type: 0} + m_CustomRenderPipeline: {fileID: 0} + m_TransparencySortMode: 0 + m_TransparencySortAxis: {x: 0, y: 0, z: 1} + m_DefaultRenderingPath: 1 + m_DefaultMobileRenderingPath: 1 + m_TierSettings: [] + m_LightmapStripping: 0 + m_FogStripping: 0 + m_InstancingStripping: 0 + m_LightmapKeepPlain: 1 + m_LightmapKeepDirCombined: 1 + m_LightmapKeepDynamicPlain: 1 + m_LightmapKeepDynamicDirCombined: 1 + m_LightmapKeepShadowMask: 1 + m_LightmapKeepSubtractive: 1 + m_FogKeepLinear: 1 + m_FogKeepExp: 1 + m_FogKeepExp2: 1 + m_AlbedoSwatchInfos: [] + m_LightsUseLinearIntensity: 0 + m_LightsUseColorTemperature: 0 diff --git a/ProjectSettings/InputManager.asset b/ProjectSettings/InputManager.asset new file mode 100644 index 0000000..e0c1229 --- /dev/null +++ b/ProjectSettings/InputManager.asset @@ -0,0 +1,2599 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!13 &1 +InputManager: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Axes: + - serializedVersion: 3 + m_Name: Horizontal + descriptiveName: + descriptiveNegativeName: + negativeButton: left + positiveButton: right + altNegativeButton: a + altPositiveButton: d + gravity: 3 + dead: 0.001 + sensitivity: 3 + snap: 1 + invert: 0 + type: 0 + axis: 0 + joyNum: 0 + - serializedVersion: 3 + m_Name: Vertical + descriptiveName: + descriptiveNegativeName: + negativeButton: down + positiveButton: up + altNegativeButton: s + altPositiveButton: w + gravity: 3 + dead: 0.001 + sensitivity: 3 + snap: 1 + invert: 0 + type: 0 + axis: 0 + joyNum: 0 + - serializedVersion: 3 + m_Name: Fire1 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: left ctrl + altNegativeButton: + altPositiveButton: mouse 0 + gravity: 1000 + dead: 0.001 + sensitivity: 1000 + snap: 0 + invert: 0 + type: 0 + axis: 0 + joyNum: 0 + - serializedVersion: 3 + m_Name: Fire2 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: left alt + altNegativeButton: + altPositiveButton: mouse 1 + gravity: 1000 + dead: 0.001 + sensitivity: 1000 + snap: 0 + invert: 0 + type: 0 + axis: 0 + joyNum: 0 + - serializedVersion: 3 + m_Name: Fire3 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: left shift + altNegativeButton: + altPositiveButton: mouse 2 + gravity: 1000 + dead: 0.001 + sensitivity: 1000 + snap: 0 + invert: 0 + type: 0 + axis: 0 + joyNum: 0 + - serializedVersion: 3 + m_Name: Jump + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: space + altNegativeButton: + altPositiveButton: + gravity: 1000 + dead: 0.001 + sensitivity: 1000 + snap: 0 + invert: 0 + type: 0 + axis: 0 + joyNum: 0 + - serializedVersion: 3 + m_Name: Mouse X + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: + altNegativeButton: + altPositiveButton: + gravity: 0 + dead: 0 + sensitivity: 0.1 + snap: 0 + invert: 0 + type: 1 + axis: 0 + joyNum: 0 + - serializedVersion: 3 + m_Name: Mouse Y + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: + altNegativeButton: + altPositiveButton: + gravity: 0 + dead: 0 + sensitivity: 0.1 + snap: 0 + invert: 0 + type: 1 + axis: 1 + joyNum: 0 + - serializedVersion: 3 + m_Name: Mouse ScrollWheel + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: + altNegativeButton: + altPositiveButton: + gravity: 0 + dead: 0 + sensitivity: 0.1 + snap: 0 + invert: 0 + type: 1 + axis: 2 + joyNum: 0 + - serializedVersion: 3 + m_Name: Horizontal + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: + altNegativeButton: + altPositiveButton: + gravity: 0 + dead: 0.19 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 0 + joyNum: 0 + - serializedVersion: 3 + m_Name: Vertical + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: + altNegativeButton: + altPositiveButton: + gravity: 0 + dead: 0.19 + sensitivity: 1 + snap: 0 + invert: 1 + type: 2 + axis: 1 + joyNum: 0 + - serializedVersion: 3 + m_Name: Fire1 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: joystick button 0 + altNegativeButton: + altPositiveButton: + gravity: 1000 + dead: 0.001 + sensitivity: 1000 + snap: 0 + invert: 0 + type: 0 + axis: 0 + joyNum: 0 + - serializedVersion: 3 + m_Name: Fire2 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: joystick button 1 + altNegativeButton: + altPositiveButton: + gravity: 1000 + dead: 0.001 + sensitivity: 1000 + snap: 0 + invert: 0 + type: 0 + axis: 0 + joyNum: 0 + - serializedVersion: 3 + m_Name: Fire3 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: joystick button 2 + altNegativeButton: + altPositiveButton: + gravity: 1000 + dead: 0.001 + sensitivity: 1000 + snap: 0 + invert: 0 + type: 0 + axis: 0 + joyNum: 0 + - serializedVersion: 3 + m_Name: Jump + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: joystick button 3 + altNegativeButton: + altPositiveButton: + gravity: 1000 + dead: 0.001 + sensitivity: 1000 + snap: 0 + invert: 0 + type: 0 + axis: 0 + joyNum: 0 + - serializedVersion: 3 + m_Name: Submit + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: return + altNegativeButton: + altPositiveButton: joystick button 0 + gravity: 1000 + dead: 0.001 + sensitivity: 1000 + snap: 0 + invert: 0 + type: 0 + axis: 0 + joyNum: 0 + - serializedVersion: 3 + m_Name: Submit + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: enter + altNegativeButton: + altPositiveButton: space + gravity: 1000 + dead: 0.001 + sensitivity: 1000 + snap: 0 + invert: 0 + type: 0 + axis: 0 + joyNum: 0 + - serializedVersion: 3 + m_Name: Cancel + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.001 + sensitivity: 1000 + snap: 0 + invert: 0 + type: 0 + axis: 0 + joyNum: 0 + - serializedVersion: 3 + m_Name: cin_Axis0_00 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 0 + joyNum: 0 + - serializedVersion: 3 + m_Name: cin_Axis0_01 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 1 + joyNum: 0 + - serializedVersion: 3 + m_Name: cin_Axis0_02 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 2 + joyNum: 0 + - serializedVersion: 3 + m_Name: cin_Axis0_03 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 3 + joyNum: 0 + - serializedVersion: 3 + m_Name: cin_Axis0_04 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 4 + joyNum: 0 + - serializedVersion: 3 + m_Name: cin_Axis0_05 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 5 + joyNum: 0 + - serializedVersion: 3 + m_Name: cin_Axis0_06 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 6 + joyNum: 0 + - serializedVersion: 3 + m_Name: cin_Axis0_07 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 7 + joyNum: 0 + - serializedVersion: 3 + m_Name: cin_Axis0_08 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 8 + joyNum: 0 + - serializedVersion: 3 + m_Name: cin_Axis0_09 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 9 + joyNum: 0 + - serializedVersion: 3 + m_Name: cin_Axis0_10 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 10 + joyNum: 0 + - serializedVersion: 3 + m_Name: cin_Axis0_11 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 11 + joyNum: 0 + - serializedVersion: 3 + m_Name: cin_Axis0_12 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 12 + joyNum: 0 + - serializedVersion: 3 + m_Name: cin_Axis0_13 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 13 + joyNum: 0 + - serializedVersion: 3 + m_Name: cin_Axis0_14 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 14 + joyNum: 0 + - serializedVersion: 3 + m_Name: cin_Axis0_15 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 15 + joyNum: 0 + - serializedVersion: 3 + m_Name: cin_Axis1_00 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 0 + joyNum: 1 + - serializedVersion: 3 + m_Name: cin_Axis1_01 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 1 + joyNum: 1 + - serializedVersion: 3 + m_Name: cin_Axis1_02 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 2 + joyNum: 1 + - serializedVersion: 3 + m_Name: cin_Axis1_03 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 3 + joyNum: 1 + - serializedVersion: 3 + m_Name: cin_Axis1_04 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 4 + joyNum: 1 + - serializedVersion: 3 + m_Name: cin_Axis1_05 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 5 + joyNum: 1 + - serializedVersion: 3 + m_Name: cin_Axis1_06 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 6 + joyNum: 1 + - serializedVersion: 3 + m_Name: cin_Axis1_07 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 7 + joyNum: 1 + - serializedVersion: 3 + m_Name: cin_Axis1_08 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 8 + joyNum: 1 + - serializedVersion: 3 + m_Name: cin_Axis1_09 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 9 + joyNum: 1 + - serializedVersion: 3 + m_Name: cin_Axis1_10 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 10 + joyNum: 1 + - serializedVersion: 3 + m_Name: cin_Axis1_11 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 11 + joyNum: 1 + - serializedVersion: 3 + m_Name: cin_Axis1_12 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 12 + joyNum: 1 + - serializedVersion: 3 + m_Name: cin_Axis1_13 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 13 + joyNum: 1 + - serializedVersion: 3 + m_Name: cin_Axis1_14 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 14 + joyNum: 1 + - serializedVersion: 3 + m_Name: cin_Axis1_15 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 15 + joyNum: 1 + - serializedVersion: 3 + m_Name: cin_Axis2_00 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 0 + joyNum: 2 + - serializedVersion: 3 + m_Name: cin_Axis2_01 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 1 + joyNum: 2 + - serializedVersion: 3 + m_Name: cin_Axis2_02 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 2 + joyNum: 2 + - serializedVersion: 3 + m_Name: cin_Axis2_03 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 3 + joyNum: 2 + - serializedVersion: 3 + m_Name: cin_Axis2_04 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 4 + joyNum: 2 + - serializedVersion: 3 + m_Name: cin_Axis2_05 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 5 + joyNum: 2 + - serializedVersion: 3 + m_Name: cin_Axis2_06 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 6 + joyNum: 2 + - serializedVersion: 3 + m_Name: cin_Axis2_07 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 7 + joyNum: 2 + - serializedVersion: 3 + m_Name: cin_Axis2_08 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 8 + joyNum: 2 + - serializedVersion: 3 + m_Name: cin_Axis2_09 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 9 + joyNum: 2 + - serializedVersion: 3 + m_Name: cin_Axis2_10 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 10 + joyNum: 2 + - serializedVersion: 3 + m_Name: cin_Axis2_11 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 11 + joyNum: 2 + - serializedVersion: 3 + m_Name: cin_Axis2_12 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 12 + joyNum: 2 + - serializedVersion: 3 + m_Name: cin_Axis2_13 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 13 + joyNum: 2 + - serializedVersion: 3 + m_Name: cin_Axis2_14 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 14 + joyNum: 2 + - serializedVersion: 3 + m_Name: cin_Axis2_15 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 15 + joyNum: 2 + - serializedVersion: 3 + m_Name: cin_Axis3_00 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 0 + joyNum: 3 + - serializedVersion: 3 + m_Name: cin_Axis3_01 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 1 + joyNum: 3 + - serializedVersion: 3 + m_Name: cin_Axis3_02 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 2 + joyNum: 3 + - serializedVersion: 3 + m_Name: cin_Axis3_03 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 3 + joyNum: 3 + - serializedVersion: 3 + m_Name: cin_Axis3_04 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 4 + joyNum: 3 + - serializedVersion: 3 + m_Name: cin_Axis3_05 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 5 + joyNum: 3 + - serializedVersion: 3 + m_Name: cin_Axis3_06 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 6 + joyNum: 3 + - serializedVersion: 3 + m_Name: cin_Axis3_07 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 7 + joyNum: 3 + - serializedVersion: 3 + m_Name: cin_Axis3_08 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 8 + joyNum: 3 + - serializedVersion: 3 + m_Name: cin_Axis3_09 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 9 + joyNum: 3 + - serializedVersion: 3 + m_Name: cin_Axis3_10 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 10 + joyNum: 3 + - serializedVersion: 3 + m_Name: cin_Axis3_11 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 11 + joyNum: 3 + - serializedVersion: 3 + m_Name: cin_Axis3_12 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 12 + joyNum: 3 + - serializedVersion: 3 + m_Name: cin_Axis3_13 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 13 + joyNum: 3 + - serializedVersion: 3 + m_Name: cin_Axis3_14 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 14 + joyNum: 3 + - serializedVersion: 3 + m_Name: cin_Axis3_15 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 15 + joyNum: 3 + - serializedVersion: 3 + m_Name: cin_Axis4_00 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 0 + joyNum: 4 + - serializedVersion: 3 + m_Name: cin_Axis4_01 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 1 + joyNum: 4 + - serializedVersion: 3 + m_Name: cin_Axis4_02 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 2 + joyNum: 4 + - serializedVersion: 3 + m_Name: cin_Axis4_03 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 3 + joyNum: 4 + - serializedVersion: 3 + m_Name: cin_Axis4_04 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 4 + joyNum: 4 + - serializedVersion: 3 + m_Name: cin_Axis4_05 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 5 + joyNum: 4 + - serializedVersion: 3 + m_Name: cin_Axis4_06 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 6 + joyNum: 4 + - serializedVersion: 3 + m_Name: cin_Axis4_07 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 7 + joyNum: 4 + - serializedVersion: 3 + m_Name: cin_Axis4_08 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 8 + joyNum: 4 + - serializedVersion: 3 + m_Name: cin_Axis4_09 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 9 + joyNum: 4 + - serializedVersion: 3 + m_Name: cin_Axis4_10 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 10 + joyNum: 4 + - serializedVersion: 3 + m_Name: cin_Axis4_11 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 11 + joyNum: 4 + - serializedVersion: 3 + m_Name: cin_Axis4_12 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 12 + joyNum: 4 + - serializedVersion: 3 + m_Name: cin_Axis4_13 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 13 + joyNum: 4 + - serializedVersion: 3 + m_Name: cin_Axis4_14 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 14 + joyNum: 4 + - serializedVersion: 3 + m_Name: cin_Axis4_15 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 15 + joyNum: 4 + - serializedVersion: 3 + m_Name: cin_Axis5_00 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 0 + joyNum: 5 + - serializedVersion: 3 + m_Name: cin_Axis5_01 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 1 + joyNum: 5 + - serializedVersion: 3 + m_Name: cin_Axis5_02 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 2 + joyNum: 5 + - serializedVersion: 3 + m_Name: cin_Axis5_03 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 3 + joyNum: 5 + - serializedVersion: 3 + m_Name: cin_Axis5_04 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 4 + joyNum: 5 + - serializedVersion: 3 + m_Name: cin_Axis5_05 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 5 + joyNum: 5 + - serializedVersion: 3 + m_Name: cin_Axis5_06 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 6 + joyNum: 5 + - serializedVersion: 3 + m_Name: cin_Axis5_07 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 7 + joyNum: 5 + - serializedVersion: 3 + m_Name: cin_Axis5_08 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 8 + joyNum: 5 + - serializedVersion: 3 + m_Name: cin_Axis5_09 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 9 + joyNum: 5 + - serializedVersion: 3 + m_Name: cin_Axis5_10 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 10 + joyNum: 5 + - serializedVersion: 3 + m_Name: cin_Axis5_11 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 11 + joyNum: 5 + - serializedVersion: 3 + m_Name: cin_Axis5_12 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 12 + joyNum: 5 + - serializedVersion: 3 + m_Name: cin_Axis5_13 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 13 + joyNum: 5 + - serializedVersion: 3 + m_Name: cin_Axis5_14 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 14 + joyNum: 5 + - serializedVersion: 3 + m_Name: cin_Axis5_15 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 15 + joyNum: 5 + - serializedVersion: 3 + m_Name: cin_Axis6_00 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 0 + joyNum: 6 + - serializedVersion: 3 + m_Name: cin_Axis6_01 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 1 + joyNum: 6 + - serializedVersion: 3 + m_Name: cin_Axis6_02 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 2 + joyNum: 6 + - serializedVersion: 3 + m_Name: cin_Axis6_03 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 3 + joyNum: 6 + - serializedVersion: 3 + m_Name: cin_Axis6_04 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 4 + joyNum: 6 + - serializedVersion: 3 + m_Name: cin_Axis6_05 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 5 + joyNum: 6 + - serializedVersion: 3 + m_Name: cin_Axis6_06 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 6 + joyNum: 6 + - serializedVersion: 3 + m_Name: cin_Axis6_07 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 7 + joyNum: 6 + - serializedVersion: 3 + m_Name: cin_Axis6_08 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 8 + joyNum: 6 + - serializedVersion: 3 + m_Name: cin_Axis6_09 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 9 + joyNum: 6 + - serializedVersion: 3 + m_Name: cin_Axis6_10 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 10 + joyNum: 6 + - serializedVersion: 3 + m_Name: cin_Axis6_11 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 11 + joyNum: 6 + - serializedVersion: 3 + m_Name: cin_Axis6_12 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 12 + joyNum: 6 + - serializedVersion: 3 + m_Name: cin_Axis6_13 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 13 + joyNum: 6 + - serializedVersion: 3 + m_Name: cin_Axis6_14 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 14 + joyNum: 6 + - serializedVersion: 3 + m_Name: cin_Axis6_15 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 15 + joyNum: 6 + - serializedVersion: 3 + m_Name: cin_Axis7_00 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 0 + joyNum: 7 + - serializedVersion: 3 + m_Name: cin_Axis7_01 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 1 + joyNum: 7 + - serializedVersion: 3 + m_Name: cin_Axis7_02 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 2 + joyNum: 7 + - serializedVersion: 3 + m_Name: cin_Axis7_03 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 3 + joyNum: 7 + - serializedVersion: 3 + m_Name: cin_Axis7_04 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 4 + joyNum: 7 + - serializedVersion: 3 + m_Name: cin_Axis7_05 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 5 + joyNum: 7 + - serializedVersion: 3 + m_Name: cin_Axis7_06 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 6 + joyNum: 7 + - serializedVersion: 3 + m_Name: cin_Axis7_07 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 7 + joyNum: 7 + - serializedVersion: 3 + m_Name: cin_Axis7_08 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 8 + joyNum: 7 + - serializedVersion: 3 + m_Name: cin_Axis7_09 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 9 + joyNum: 7 + - serializedVersion: 3 + m_Name: cin_Axis7_10 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 10 + joyNum: 7 + - serializedVersion: 3 + m_Name: cin_Axis7_11 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 11 + joyNum: 7 + - serializedVersion: 3 + m_Name: cin_Axis7_12 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 12 + joyNum: 7 + - serializedVersion: 3 + m_Name: cin_Axis7_13 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 13 + joyNum: 7 + - serializedVersion: 3 + m_Name: cin_Axis7_14 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 14 + joyNum: 7 + - serializedVersion: 3 + m_Name: cin_Axis7_15 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 15 + joyNum: 7 + - serializedVersion: 3 + m_Name: cin_Axis8_00 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 0 + joyNum: 8 + - serializedVersion: 3 + m_Name: cin_Axis8_01 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 1 + joyNum: 8 + - serializedVersion: 3 + m_Name: cin_Axis8_02 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 2 + joyNum: 8 + - serializedVersion: 3 + m_Name: cin_Axis8_03 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 3 + joyNum: 8 + - serializedVersion: 3 + m_Name: cin_Axis8_04 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 4 + joyNum: 8 + - serializedVersion: 3 + m_Name: cin_Axis8_05 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 5 + joyNum: 8 + - serializedVersion: 3 + m_Name: cin_Axis8_06 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 6 + joyNum: 8 + - serializedVersion: 3 + m_Name: cin_Axis8_07 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 7 + joyNum: 8 + - serializedVersion: 3 + m_Name: cin_Axis8_08 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 8 + joyNum: 8 + - serializedVersion: 3 + m_Name: cin_Axis8_09 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 9 + joyNum: 8 + - serializedVersion: 3 + m_Name: cin_Axis8_10 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 10 + joyNum: 8 + - serializedVersion: 3 + m_Name: cin_Axis8_11 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 11 + joyNum: 8 + - serializedVersion: 3 + m_Name: cin_Axis8_12 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 12 + joyNum: 8 + - serializedVersion: 3 + m_Name: cin_Axis8_13 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 13 + joyNum: 8 + - serializedVersion: 3 + m_Name: cin_Axis8_14 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 14 + joyNum: 8 + - serializedVersion: 3 + m_Name: cin_Axis8_15 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.1 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 15 + joyNum: 8 diff --git a/ProjectSettings/NavMeshAreas.asset b/ProjectSettings/NavMeshAreas.asset new file mode 100644 index 0000000..c8fa1b5 --- /dev/null +++ b/ProjectSettings/NavMeshAreas.asset @@ -0,0 +1,91 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!126 &1 +NavMeshProjectSettings: + m_ObjectHideFlags: 0 + serializedVersion: 2 + areas: + - name: Walkable + cost: 1 + - name: Not Walkable + cost: 1 + - name: Jump + cost: 2 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + m_LastAgentTypeID: -887442657 + m_Settings: + - serializedVersion: 2 + agentTypeID: 0 + agentRadius: 0.5 + agentHeight: 2 + agentSlope: 45 + agentClimb: 0.75 + ledgeDropHeight: 0 + maxJumpAcrossDistance: 0 + minRegionArea: 2 + manualCellSize: 0 + cellSize: 0.16666667 + manualTileSize: 0 + tileSize: 256 + accuratePlacement: 0 + debug: + m_Flags: 0 + m_SettingNames: + - Humanoid diff --git a/ProjectSettings/NetworkManager.asset b/ProjectSettings/NetworkManager.asset new file mode 100644 index 0000000..e9cd578 --- /dev/null +++ b/ProjectSettings/NetworkManager.asset @@ -0,0 +1,8 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!149 &1 +NetworkManager: + m_ObjectHideFlags: 0 + m_DebugLevel: 0 + m_Sendrate: 15 + m_AssetToPrefab: {} diff --git a/ProjectSettings/Physics2DSettings.asset b/ProjectSettings/Physics2DSettings.asset new file mode 100644 index 0000000..1a546aa --- /dev/null +++ b/ProjectSettings/Physics2DSettings.asset @@ -0,0 +1,56 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!19 &1 +Physics2DSettings: + m_ObjectHideFlags: 0 + serializedVersion: 4 + m_Gravity: {x: 0, y: -9.81} + m_DefaultMaterial: {fileID: 0} + m_VelocityIterations: 8 + m_PositionIterations: 3 + m_VelocityThreshold: 1 + m_MaxLinearCorrection: 0.2 + m_MaxAngularCorrection: 8 + m_MaxTranslationSpeed: 100 + m_MaxRotationSpeed: 360 + m_BaumgarteScale: 0.2 + m_BaumgarteTimeOfImpactScale: 0.75 + m_TimeToSleep: 0.5 + m_LinearSleepTolerance: 0.01 + m_AngularSleepTolerance: 2 + m_DefaultContactOffset: 0.01 + m_JobOptions: + serializedVersion: 2 + useMultithreading: 0 + useConsistencySorting: 0 + m_InterpolationPosesPerJob: 100 + m_NewContactsPerJob: 30 + m_CollideContactsPerJob: 100 + m_ClearFlagsPerJob: 200 + m_ClearBodyForcesPerJob: 200 + m_SyncDiscreteFixturesPerJob: 50 + m_SyncContinuousFixturesPerJob: 50 + m_FindNearestContactsPerJob: 100 + m_UpdateTriggerContactsPerJob: 100 + m_IslandSolverCostThreshold: 100 + m_IslandSolverBodyCostScale: 1 + m_IslandSolverContactCostScale: 10 + m_IslandSolverJointCostScale: 10 + m_IslandSolverBodiesPerJob: 50 + m_IslandSolverContactsPerJob: 50 + m_AutoSimulation: 1 + m_QueriesHitTriggers: 1 + m_QueriesStartInColliders: 1 + m_CallbacksOnDisable: 1 + m_ReuseCollisionCallbacks: 1 + m_AutoSyncTransforms: 0 + m_AlwaysShowColliders: 0 + m_ShowColliderSleep: 1 + m_ShowColliderContacts: 0 + m_ShowColliderAABB: 0 + m_ContactArrowScale: 0.2 + m_ColliderAwakeColor: {r: 0.5686275, g: 0.95686275, b: 0.54509807, a: 0.7529412} + m_ColliderAsleepColor: {r: 0.5686275, g: 0.95686275, b: 0.54509807, a: 0.36078432} + m_ColliderContactColor: {r: 1, g: 0, b: 1, a: 0.6862745} + m_ColliderAABBColor: {r: 1, g: 1, b: 0, a: 0.2509804} + m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff diff --git a/ProjectSettings/PresetManager.asset b/ProjectSettings/PresetManager.asset new file mode 100644 index 0000000..7d66f80 --- /dev/null +++ b/ProjectSettings/PresetManager.asset @@ -0,0 +1,7 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1386491679 &1 +PresetManager: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_DefaultPresets: {} diff --git a/ProjectSettings/ProjectSettings.asset b/ProjectSettings/ProjectSettings.asset new file mode 100644 index 0000000..66ece0b --- /dev/null +++ b/ProjectSettings/ProjectSettings.asset @@ -0,0 +1,645 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!129 &1 +PlayerSettings: + m_ObjectHideFlags: 0 + serializedVersion: 20 + productGUID: 7958e99a6a9a31ed18ee4cdf7aca73e6 + AndroidProfiler: 0 + AndroidFilterTouchesWhenObscured: 0 + AndroidEnableSustainedPerformanceMode: 0 + defaultScreenOrientation: 4 + targetDevice: 2 + useOnDemandResources: 0 + accelerometerFrequency: 60 + companyName: DefaultCompany + productName: Keep It Alive + defaultCursor: {fileID: 0} + cursorHotspot: {x: 0, y: 0} + m_SplashScreenBackgroundColor: {r: 0.13725491, g: 0.12156863, b: 0.1254902, a: 1} + m_ShowUnitySplashScreen: 1 + m_ShowUnitySplashLogo: 1 + m_SplashScreenOverlayOpacity: 1 + m_SplashScreenAnimation: 1 + m_SplashScreenLogoStyle: 1 + m_SplashScreenDrawMode: 0 + m_SplashScreenBackgroundAnimationZoom: 1 + m_SplashScreenLogoAnimationZoom: 1 + m_SplashScreenBackgroundLandscapeAspect: 1 + m_SplashScreenBackgroundPortraitAspect: 1 + m_SplashScreenBackgroundLandscapeUvs: + serializedVersion: 2 + x: 0 + y: 0 + width: 1 + height: 1 + m_SplashScreenBackgroundPortraitUvs: + serializedVersion: 2 + x: 0 + y: 0 + width: 1 + height: 1 + m_SplashScreenLogos: [] + m_VirtualRealitySplashScreen: {fileID: 0} + m_HolographicTrackingLossScreen: {fileID: 0} + defaultScreenWidth: 1024 + defaultScreenHeight: 768 + defaultScreenWidthWeb: 960 + defaultScreenHeightWeb: 600 + m_StereoRenderingPath: 0 + m_ActiveColorSpace: 0 + m_MTRendering: 1 + m_StackTraceTypes: 010000000100000001000000010000000100000001000000 + iosShowActivityIndicatorOnLoading: -1 + androidShowActivityIndicatorOnLoading: -1 + iosUseCustomAppBackgroundBehavior: 0 + iosAllowHTTPDownload: 1 + allowedAutorotateToPortrait: 1 + allowedAutorotateToPortraitUpsideDown: 1 + allowedAutorotateToLandscapeRight: 1 + allowedAutorotateToLandscapeLeft: 1 + useOSAutorotation: 1 + use32BitDisplayBuffer: 1 + preserveFramebufferAlpha: 0 + disableDepthAndStencilBuffers: 0 + androidStartInFullscreen: 1 + androidRenderOutsideSafeArea: 1 + androidUseSwappy: 0 + androidBlitType: 0 + defaultIsNativeResolution: 1 + macRetinaSupport: 1 + runInBackground: 1 + captureSingleScreen: 0 + muteOtherAudioSources: 0 + Prepare IOS For Recording: 0 + Force IOS Speakers When Recording: 0 + deferSystemGesturesMode: 0 + hideHomeButton: 0 + submitAnalytics: 1 + usePlayerLog: 1 + bakeCollisionMeshes: 0 + forceSingleInstance: 0 + useFlipModelSwapchain: 1 + resizableWindow: 0 + useMacAppStoreValidation: 0 + macAppStoreCategory: public.app-category.games + gpuSkinning: 0 + xboxPIXTextureCapture: 0 + xboxEnableAvatar: 0 + xboxEnableKinect: 0 + xboxEnableKinectAutoTracking: 0 + xboxEnableFitness: 0 + visibleInBackground: 1 + allowFullscreenSwitch: 1 + fullscreenMode: 1 + xboxSpeechDB: 0 + xboxEnableHeadOrientation: 0 + xboxEnableGuest: 0 + xboxEnablePIXSampling: 0 + metalFramebufferOnly: 0 + xboxOneResolution: 0 + xboxOneSResolution: 0 + xboxOneXResolution: 3 + xboxOneMonoLoggingLevel: 0 + xboxOneLoggingLevel: 1 + xboxOneDisableEsram: 0 + xboxOneEnableTypeOptimization: 0 + xboxOnePresentImmediateThreshold: 0 + switchQueueCommandMemory: 0 + switchQueueControlMemory: 16384 + switchQueueComputeMemory: 262144 + switchNVNShaderPoolsGranularity: 33554432 + switchNVNDefaultPoolsGranularity: 16777216 + switchNVNOtherPoolsGranularity: 16777216 + vulkanNumSwapchainBuffers: 3 + vulkanEnableSetSRGBWrite: 0 + m_SupportedAspectRatios: + 4:3: 1 + 5:4: 1 + 16:10: 1 + 16:9: 1 + Others: 1 + bundleVersion: 0.1 + preloadedAssets: [] + metroInputSource: 0 + wsaTransparentSwapchain: 0 + m_HolographicPauseOnTrackingLoss: 1 + xboxOneDisableKinectGpuReservation: 1 + xboxOneEnable7thCore: 1 + vrSettings: + cardboard: + depthFormat: 0 + enableTransitionView: 0 + daydream: + depthFormat: 0 + useSustainedPerformanceMode: 0 + enableVideoLayer: 0 + useProtectedVideoMemory: 0 + minimumSupportedHeadTracking: 0 + maximumSupportedHeadTracking: 1 + hololens: + depthFormat: 1 + depthBufferSharingEnabled: 1 + lumin: + depthFormat: 0 + frameTiming: 2 + enableGLCache: 0 + glCacheMaxBlobSize: 524288 + glCacheMaxFileSize: 8388608 + oculus: + sharedDepthBuffer: 1 + dashSupport: 1 + lowOverheadMode: 0 + protectedContext: 0 + v2Signing: 1 + enable360StereoCapture: 0 + isWsaHolographicRemotingEnabled: 0 + enableFrameTimingStats: 0 + useHDRDisplay: 0 + D3DHDRBitDepth: 0 + m_ColorGamuts: 00000000 + targetPixelDensity: 30 + resolutionScalingMode: 0 + androidSupportedAspectRatio: 1 + androidMaxAspectRatio: 2.1 + applicationIdentifier: {} + buildNumber: {} + AndroidBundleVersionCode: 1 + AndroidMinSdkVersion: 19 + AndroidTargetSdkVersion: 0 + AndroidPreferredInstallLocation: 1 + aotOptions: + stripEngineCode: 1 + iPhoneStrippingLevel: 0 + iPhoneScriptCallOptimization: 0 + ForceInternetPermission: 0 + ForceSDCardPermission: 0 + CreateWallpaper: 0 + APKExpansionFiles: 0 + keepLoadedShadersAlive: 0 + StripUnusedMeshComponents: 1 + VertexChannelCompressionMask: 4054 + iPhoneSdkVersion: 988 + iOSTargetOSVersionString: 10.0 + tvOSSdkVersion: 0 + tvOSRequireExtendedGameController: 0 + tvOSTargetOSVersionString: 10.0 + uIPrerenderedIcon: 0 + uIRequiresPersistentWiFi: 0 + uIRequiresFullScreen: 1 + uIStatusBarHidden: 1 + uIExitOnSuspend: 0 + uIStatusBarStyle: 0 + iPhoneSplashScreen: {fileID: 0} + iPhoneHighResSplashScreen: {fileID: 0} + iPhoneTallHighResSplashScreen: {fileID: 0} + iPhone47inSplashScreen: {fileID: 0} + iPhone55inPortraitSplashScreen: {fileID: 0} + iPhone55inLandscapeSplashScreen: {fileID: 0} + iPhone58inPortraitSplashScreen: {fileID: 0} + iPhone58inLandscapeSplashScreen: {fileID: 0} + iPadPortraitSplashScreen: {fileID: 0} + iPadHighResPortraitSplashScreen: {fileID: 0} + iPadLandscapeSplashScreen: {fileID: 0} + iPadHighResLandscapeSplashScreen: {fileID: 0} + iPhone65inPortraitSplashScreen: {fileID: 0} + iPhone65inLandscapeSplashScreen: {fileID: 0} + iPhone61inPortraitSplashScreen: {fileID: 0} + iPhone61inLandscapeSplashScreen: {fileID: 0} + appleTVSplashScreen: {fileID: 0} + appleTVSplashScreen2x: {fileID: 0} + tvOSSmallIconLayers: [] + tvOSSmallIconLayers2x: [] + tvOSLargeIconLayers: [] + tvOSLargeIconLayers2x: [] + tvOSTopShelfImageLayers: [] + tvOSTopShelfImageLayers2x: [] + tvOSTopShelfImageWideLayers: [] + tvOSTopShelfImageWideLayers2x: [] + iOSLaunchScreenType: 0 + iOSLaunchScreenPortrait: {fileID: 0} + iOSLaunchScreenLandscape: {fileID: 0} + iOSLaunchScreenBackgroundColor: + serializedVersion: 2 + rgba: 0 + iOSLaunchScreenFillPct: 100 + iOSLaunchScreenSize: 100 + iOSLaunchScreenCustomXibPath: + iOSLaunchScreeniPadType: 0 + iOSLaunchScreeniPadImage: {fileID: 0} + iOSLaunchScreeniPadBackgroundColor: + serializedVersion: 2 + rgba: 0 + iOSLaunchScreeniPadFillPct: 100 + iOSLaunchScreeniPadSize: 100 + iOSLaunchScreeniPadCustomXibPath: + iOSUseLaunchScreenStoryboard: 0 + iOSLaunchScreenCustomStoryboardPath: + iOSDeviceRequirements: [] + iOSURLSchemes: [] + iOSBackgroundModes: 0 + iOSMetalForceHardShadows: 0 + metalEditorSupport: 1 + metalAPIValidation: 1 + iOSRenderExtraFrameOnPause: 0 + appleDeveloperTeamID: + iOSManualSigningProvisioningProfileID: + tvOSManualSigningProvisioningProfileID: + iOSManualSigningProvisioningProfileType: 0 + tvOSManualSigningProvisioningProfileType: 0 + appleEnableAutomaticSigning: 0 + iOSRequireARKit: 0 + iOSAutomaticallyDetectAndAddCapabilities: 1 + appleEnableProMotion: 0 + clonedFromGUID: 5f34be1353de5cf4398729fda238591b + templatePackageId: com.unity.template.2d@3.3.0 + templateDefaultScene: Assets/Scenes/SampleScene.unity + AndroidTargetArchitectures: 1 + AndroidSplashScreenScale: 0 + androidSplashScreen: {fileID: 0} + AndroidKeystoreName: + AndroidKeyaliasName: + AndroidBuildApkPerCpuArchitecture: 0 + AndroidTVCompatibility: 0 + AndroidIsGame: 1 + AndroidEnableTango: 0 + androidEnableBanner: 1 + androidUseLowAccuracyLocation: 0 + androidUseCustomKeystore: 0 + m_AndroidBanners: + - width: 320 + height: 180 + banner: {fileID: 0} + androidGamepadSupportLevel: 0 + AndroidValidateAppBundleSize: 1 + AndroidAppBundleSizeToValidate: 150 + m_BuildTargetIcons: [] + m_BuildTargetPlatformIcons: [] + m_BuildTargetBatching: [] + m_BuildTargetGraphicsJobs: + - m_BuildTarget: MacStandaloneSupport + m_GraphicsJobs: 0 + - m_BuildTarget: Switch + m_GraphicsJobs: 0 + - m_BuildTarget: MetroSupport + m_GraphicsJobs: 0 + - m_BuildTarget: AppleTVSupport + m_GraphicsJobs: 0 + - m_BuildTarget: BJMSupport + m_GraphicsJobs: 0 + - m_BuildTarget: LinuxStandaloneSupport + m_GraphicsJobs: 0 + - m_BuildTarget: PS4Player + m_GraphicsJobs: 0 + - m_BuildTarget: iOSSupport + m_GraphicsJobs: 0 + - m_BuildTarget: WindowsStandaloneSupport + m_GraphicsJobs: 0 + - m_BuildTarget: XboxOnePlayer + m_GraphicsJobs: 0 + - m_BuildTarget: LuminSupport + m_GraphicsJobs: 0 + - m_BuildTarget: AndroidPlayer + m_GraphicsJobs: 0 + - m_BuildTarget: WebGLSupport + m_GraphicsJobs: 0 + m_BuildTargetGraphicsJobMode: + - m_BuildTarget: PS4Player + m_GraphicsJobMode: 0 + - m_BuildTarget: XboxOnePlayer + m_GraphicsJobMode: 0 + m_BuildTargetGraphicsAPIs: + - m_BuildTarget: AndroidPlayer + m_APIs: 150000000b000000 + m_Automatic: 0 + m_BuildTargetVRSettings: [] + openGLRequireES31: 0 + openGLRequireES31AEP: 0 + openGLRequireES32: 0 + m_TemplateCustomTags: {} + mobileMTRendering: + Android: 1 + iPhone: 1 + tvOS: 1 + m_BuildTargetGroupLightmapEncodingQuality: [] + m_BuildTargetGroupLightmapSettings: [] + playModeTestRunnerEnabled: 0 + runPlayModeTestAsEditModeTest: 0 + actionOnDotNetUnhandledException: 1 + enableInternalProfiler: 0 + logObjCUncaughtExceptions: 1 + enableCrashReportAPI: 0 + cameraUsageDescription: + locationUsageDescription: + microphoneUsageDescription: + switchNetLibKey: + switchSocketMemoryPoolSize: 6144 + switchSocketAllocatorPoolSize: 128 + switchSocketConcurrencyLimit: 14 + switchScreenResolutionBehavior: 2 + switchUseCPUProfiler: 0 + switchApplicationID: 0x01004b9000490000 + switchNSODependencies: + switchTitleNames_0: + switchTitleNames_1: + switchTitleNames_2: + switchTitleNames_3: + switchTitleNames_4: + switchTitleNames_5: + switchTitleNames_6: + switchTitleNames_7: + switchTitleNames_8: + switchTitleNames_9: + switchTitleNames_10: + switchTitleNames_11: + switchTitleNames_12: + switchTitleNames_13: + switchTitleNames_14: + switchPublisherNames_0: + switchPublisherNames_1: + switchPublisherNames_2: + switchPublisherNames_3: + switchPublisherNames_4: + switchPublisherNames_5: + switchPublisherNames_6: + switchPublisherNames_7: + switchPublisherNames_8: + switchPublisherNames_9: + switchPublisherNames_10: + switchPublisherNames_11: + switchPublisherNames_12: + switchPublisherNames_13: + switchPublisherNames_14: + switchIcons_0: {fileID: 0} + switchIcons_1: {fileID: 0} + switchIcons_2: {fileID: 0} + switchIcons_3: {fileID: 0} + switchIcons_4: {fileID: 0} + switchIcons_5: {fileID: 0} + switchIcons_6: {fileID: 0} + switchIcons_7: {fileID: 0} + switchIcons_8: {fileID: 0} + switchIcons_9: {fileID: 0} + switchIcons_10: {fileID: 0} + switchIcons_11: {fileID: 0} + switchIcons_12: {fileID: 0} + switchIcons_13: {fileID: 0} + switchIcons_14: {fileID: 0} + switchSmallIcons_0: {fileID: 0} + switchSmallIcons_1: {fileID: 0} + switchSmallIcons_2: {fileID: 0} + switchSmallIcons_3: {fileID: 0} + switchSmallIcons_4: {fileID: 0} + switchSmallIcons_5: {fileID: 0} + switchSmallIcons_6: {fileID: 0} + switchSmallIcons_7: {fileID: 0} + switchSmallIcons_8: {fileID: 0} + switchSmallIcons_9: {fileID: 0} + switchSmallIcons_10: {fileID: 0} + switchSmallIcons_11: {fileID: 0} + switchSmallIcons_12: {fileID: 0} + switchSmallIcons_13: {fileID: 0} + switchSmallIcons_14: {fileID: 0} + switchManualHTML: + switchAccessibleURLs: + switchLegalInformation: + switchMainThreadStackSize: 1048576 + switchPresenceGroupId: + switchLogoHandling: 0 + switchReleaseVersion: 0 + switchDisplayVersion: 1.0.0 + switchStartupUserAccount: 0 + switchTouchScreenUsage: 0 + switchSupportedLanguagesMask: 0 + switchLogoType: 0 + switchApplicationErrorCodeCategory: + switchUserAccountSaveDataSize: 0 + switchUserAccountSaveDataJournalSize: 0 + switchApplicationAttribute: 0 + switchCardSpecSize: -1 + switchCardSpecClock: -1 + switchRatingsMask: 0 + switchRatingsInt_0: 0 + switchRatingsInt_1: 0 + switchRatingsInt_2: 0 + switchRatingsInt_3: 0 + switchRatingsInt_4: 0 + switchRatingsInt_5: 0 + switchRatingsInt_6: 0 + switchRatingsInt_7: 0 + switchRatingsInt_8: 0 + switchRatingsInt_9: 0 + switchRatingsInt_10: 0 + switchRatingsInt_11: 0 + switchRatingsInt_12: 0 + switchLocalCommunicationIds_0: + switchLocalCommunicationIds_1: + switchLocalCommunicationIds_2: + switchLocalCommunicationIds_3: + switchLocalCommunicationIds_4: + switchLocalCommunicationIds_5: + switchLocalCommunicationIds_6: + switchLocalCommunicationIds_7: + switchParentalControl: 0 + switchAllowsScreenshot: 1 + switchAllowsVideoCapturing: 1 + switchAllowsRuntimeAddOnContentInstall: 0 + switchDataLossConfirmation: 0 + switchUserAccountLockEnabled: 0 + switchSystemResourceMemory: 16777216 + switchSupportedNpadStyles: 22 + switchNativeFsCacheSize: 32 + switchIsHoldTypeHorizontal: 0 + switchSupportedNpadCount: 8 + switchSocketConfigEnabled: 0 + switchTcpInitialSendBufferSize: 32 + switchTcpInitialReceiveBufferSize: 64 + switchTcpAutoSendBufferSizeMax: 256 + switchTcpAutoReceiveBufferSizeMax: 256 + switchUdpSendBufferSize: 9 + switchUdpReceiveBufferSize: 42 + switchSocketBufferEfficiency: 4 + switchSocketInitializeEnabled: 1 + switchNetworkInterfaceManagerInitializeEnabled: 1 + switchPlayerConnectionEnabled: 1 + ps4NPAgeRating: 12 + ps4NPTitleSecret: + ps4NPTrophyPackPath: + ps4ParentalLevel: 11 + ps4ContentID: ED1633-NPXX51362_00-0000000000000000 + ps4Category: 0 + ps4MasterVersion: 01.00 + ps4AppVersion: 01.00 + ps4AppType: 0 + ps4ParamSfxPath: + ps4VideoOutPixelFormat: 0 + ps4VideoOutInitialWidth: 1920 + ps4VideoOutBaseModeInitialWidth: 1920 + ps4VideoOutReprojectionRate: 60 + ps4PronunciationXMLPath: + ps4PronunciationSIGPath: + ps4BackgroundImagePath: + ps4StartupImagePath: + ps4StartupImagesFolder: + ps4IconImagesFolder: + ps4SaveDataImagePath: + ps4SdkOverride: + ps4BGMPath: + ps4ShareFilePath: + ps4ShareOverlayImagePath: + ps4PrivacyGuardImagePath: + ps4NPtitleDatPath: + ps4RemotePlayKeyAssignment: -1 + ps4RemotePlayKeyMappingDir: + ps4PlayTogetherPlayerCount: 0 + ps4EnterButtonAssignment: 1 + ps4ApplicationParam1: 0 + ps4ApplicationParam2: 0 + ps4ApplicationParam3: 0 + ps4ApplicationParam4: 0 + ps4DownloadDataSize: 0 + ps4GarlicHeapSize: 2048 + ps4ProGarlicHeapSize: 2560 + playerPrefsMaxSize: 32768 + ps4Passcode: frAQBc8Wsa1xVPfvJcrgRYwTiizs2trQ + ps4pnSessions: 1 + ps4pnPresence: 1 + ps4pnFriends: 1 + ps4pnGameCustomData: 1 + playerPrefsSupport: 0 + enableApplicationExit: 0 + resetTempFolder: 1 + restrictedAudioUsageRights: 0 + ps4UseResolutionFallback: 0 + ps4ReprojectionSupport: 0 + ps4UseAudio3dBackend: 0 + ps4SocialScreenEnabled: 0 + ps4ScriptOptimizationLevel: 0 + ps4Audio3dVirtualSpeakerCount: 14 + ps4attribCpuUsage: 0 + ps4PatchPkgPath: + ps4PatchLatestPkgPath: + ps4PatchChangeinfoPath: + ps4PatchDayOne: 0 + ps4attribUserManagement: 0 + ps4attribMoveSupport: 0 + ps4attrib3DSupport: 0 + ps4attribShareSupport: 0 + ps4attribExclusiveVR: 0 + ps4disableAutoHideSplash: 0 + ps4videoRecordingFeaturesUsed: 0 + ps4contentSearchFeaturesUsed: 0 + ps4attribEyeToEyeDistanceSettingVR: 0 + ps4IncludedModules: [] + ps4attribVROutputEnabled: 0 + monoEnv: + splashScreenBackgroundSourceLandscape: {fileID: 0} + splashScreenBackgroundSourcePortrait: {fileID: 0} + blurSplashScreenBackground: 1 + spritePackerPolicy: + webGLMemorySize: 16 + webGLExceptionSupport: 1 + webGLNameFilesAsHashes: 0 + webGLDataCaching: 1 + webGLDebugSymbols: 0 + webGLEmscriptenArgs: + webGLModulesDirectory: + webGLTemplate: APPLICATION:Default + webGLAnalyzeBuildSize: 0 + webGLUseEmbeddedResources: 0 + webGLCompressionFormat: 1 + webGLLinkerTarget: 1 + webGLThreadsSupport: 0 + webGLWasmStreaming: 0 + scriptingDefineSymbols: {} + platformArchitecture: {} + scriptingBackend: {} + il2cppCompilerConfiguration: {} + managedStrippingLevel: {} + incrementalIl2cppBuild: {} + allowUnsafeCode: 0 + additionalIl2CppArgs: + scriptingRuntimeVersion: 1 + gcIncremental: 0 + gcWBarrierValidation: 0 + apiCompatibilityLevelPerPlatform: {} + m_RenderingPath: 1 + m_MobileRenderingPath: 1 + metroPackageName: Template_2D + metroPackageVersion: + metroCertificatePath: + metroCertificatePassword: + metroCertificateSubject: + metroCertificateIssuer: + metroCertificateNotAfter: 0000000000000000 + metroApplicationDescription: Template_2D + wsaImages: {} + metroTileShortName: + metroTileShowName: 0 + metroMediumTileShowName: 0 + metroLargeTileShowName: 0 + metroWideTileShowName: 0 + metroSupportStreamingInstall: 0 + metroLastRequiredScene: 0 + metroDefaultTileSize: 1 + metroTileForegroundText: 2 + metroTileBackgroundColor: {r: 0.13333334, g: 0.17254902, b: 0.21568628, a: 0} + metroSplashScreenBackgroundColor: {r: 0.12941177, g: 0.17254902, b: 0.21568628, + a: 1} + metroSplashScreenUseBackgroundColor: 0 + platformCapabilities: {} + metroTargetDeviceFamilies: {} + metroFTAName: + metroFTAFileTypes: [] + metroProtocolName: + XboxOneProductId: + XboxOneUpdateKey: + XboxOneSandboxId: + XboxOneContentId: + XboxOneTitleId: + XboxOneSCId: + XboxOneGameOsOverridePath: + XboxOnePackagingOverridePath: + XboxOneAppManifestOverridePath: + XboxOneVersion: 1.0.0.0 + XboxOnePackageEncryption: 0 + XboxOnePackageUpdateGranularity: 2 + XboxOneDescription: + XboxOneLanguage: + - enus + XboxOneCapability: [] + XboxOneGameRating: {} + XboxOneIsContentPackage: 0 + XboxOneEnableGPUVariability: 1 + XboxOneSockets: {} + XboxOneSplashScreen: {fileID: 0} + XboxOneAllowedProductIds: [] + XboxOnePersistentLocalStorageSize: 0 + XboxOneXTitleMemory: 8 + XboxOneOverrideIdentityName: + vrEditorSettings: + daydream: + daydreamIconForeground: {fileID: 0} + daydreamIconBackground: {fileID: 0} + cloudServicesEnabled: + UNet: 1 + luminIcon: + m_Name: + m_ModelFolderPath: + m_PortalFolderPath: + luminCert: + m_CertPath: + m_SignPackage: 1 + luminIsChannelApp: 0 + luminVersion: + m_VersionCode: 1 + m_VersionName: + apiCompatibilityLevel: 6 + cloudProjectId: + framebufferDepthMemorylessMode: 0 + projectName: + organizationId: + cloudEnabled: 0 + enableNativePlatformBackendsForNewInputSystem: 0 + disableOldInputManagerSupport: 0 + legacyClampBlendShapeWeights: 0 diff --git a/ProjectSettings/ProjectVersion.txt b/ProjectSettings/ProjectVersion.txt new file mode 100644 index 0000000..4b912eb --- /dev/null +++ b/ProjectSettings/ProjectVersion.txt @@ -0,0 +1,2 @@ +m_EditorVersion: 2019.3.7f1 +m_EditorVersionWithRevision: 2019.3.7f1 (6437fd74d35d) diff --git a/ProjectSettings/QualitySettings.asset b/ProjectSettings/QualitySettings.asset new file mode 100644 index 0000000..698f64f --- /dev/null +++ b/ProjectSettings/QualitySettings.asset @@ -0,0 +1,192 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!47 &1 +QualitySettings: + m_ObjectHideFlags: 0 + serializedVersion: 5 + m_CurrentQuality: 3 + m_QualitySettings: + - serializedVersion: 2 + name: Very Low + pixelLightCount: 0 + shadows: 0 + shadowResolution: 0 + shadowProjection: 1 + shadowCascades: 1 + shadowDistance: 15 + shadowNearPlaneOffset: 3 + shadowCascade2Split: 0.33333334 + shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} + shadowmaskMode: 0 + blendWeights: 1 + textureQuality: 1 + anisotropicTextures: 0 + antiAliasing: 0 + softParticles: 0 + softVegetation: 0 + realtimeReflectionProbes: 0 + billboardsFaceCameraPosition: 0 + vSyncCount: 0 + lodBias: 0.3 + maximumLODLevel: 0 + particleRaycastBudget: 4 + asyncUploadTimeSlice: 2 + asyncUploadBufferSize: 16 + resolutionScalingFixedDPIFactor: 1 + excludedTargetPlatforms: [] + - serializedVersion: 2 + name: Low + pixelLightCount: 0 + shadows: 0 + shadowResolution: 0 + shadowProjection: 1 + shadowCascades: 1 + shadowDistance: 20 + shadowNearPlaneOffset: 3 + shadowCascade2Split: 0.33333334 + shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} + shadowmaskMode: 0 + blendWeights: 2 + textureQuality: 0 + anisotropicTextures: 0 + antiAliasing: 0 + softParticles: 0 + softVegetation: 0 + realtimeReflectionProbes: 0 + billboardsFaceCameraPosition: 0 + vSyncCount: 0 + lodBias: 0.4 + maximumLODLevel: 0 + particleRaycastBudget: 16 + asyncUploadTimeSlice: 2 + asyncUploadBufferSize: 16 + resolutionScalingFixedDPIFactor: 1 + excludedTargetPlatforms: [] + - serializedVersion: 2 + name: Medium + pixelLightCount: 1 + shadows: 0 + shadowResolution: 0 + shadowProjection: 1 + shadowCascades: 1 + shadowDistance: 20 + shadowNearPlaneOffset: 3 + shadowCascade2Split: 0.33333334 + shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} + shadowmaskMode: 0 + blendWeights: 2 + textureQuality: 0 + anisotropicTextures: 0 + antiAliasing: 0 + softParticles: 0 + softVegetation: 0 + realtimeReflectionProbes: 0 + billboardsFaceCameraPosition: 0 + vSyncCount: 1 + lodBias: 0.7 + maximumLODLevel: 0 + particleRaycastBudget: 64 + asyncUploadTimeSlice: 2 + asyncUploadBufferSize: 16 + resolutionScalingFixedDPIFactor: 1 + excludedTargetPlatforms: [] + - serializedVersion: 2 + name: High + pixelLightCount: 2 + shadows: 0 + shadowResolution: 1 + shadowProjection: 1 + shadowCascades: 2 + shadowDistance: 40 + shadowNearPlaneOffset: 3 + shadowCascade2Split: 0.33333334 + shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} + shadowmaskMode: 1 + blendWeights: 2 + textureQuality: 0 + anisotropicTextures: 0 + antiAliasing: 0 + softParticles: 0 + softVegetation: 1 + realtimeReflectionProbes: 0 + billboardsFaceCameraPosition: 0 + vSyncCount: 1 + lodBias: 1 + maximumLODLevel: 0 + particleRaycastBudget: 256 + asyncUploadTimeSlice: 2 + asyncUploadBufferSize: 16 + resolutionScalingFixedDPIFactor: 1 + excludedTargetPlatforms: [] + - serializedVersion: 2 + name: Very High + pixelLightCount: 3 + shadows: 0 + shadowResolution: 2 + shadowProjection: 1 + shadowCascades: 2 + shadowDistance: 70 + shadowNearPlaneOffset: 3 + shadowCascade2Split: 0.33333334 + shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} + shadowmaskMode: 1 + blendWeights: 4 + textureQuality: 0 + anisotropicTextures: 0 + antiAliasing: 0 + softParticles: 0 + softVegetation: 1 + realtimeReflectionProbes: 0 + billboardsFaceCameraPosition: 0 + vSyncCount: 1 + lodBias: 1.5 + maximumLODLevel: 0 + particleRaycastBudget: 1024 + asyncUploadTimeSlice: 2 + asyncUploadBufferSize: 16 + resolutionScalingFixedDPIFactor: 1 + excludedTargetPlatforms: [] + - serializedVersion: 2 + name: Ultra + pixelLightCount: 4 + shadows: 0 + shadowResolution: 0 + shadowProjection: 1 + shadowCascades: 4 + shadowDistance: 150 + shadowNearPlaneOffset: 3 + shadowCascade2Split: 0.33333334 + shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} + shadowmaskMode: 1 + blendWeights: 4 + textureQuality: 0 + anisotropicTextures: 0 + antiAliasing: 0 + softParticles: 0 + softVegetation: 1 + realtimeReflectionProbes: 0 + billboardsFaceCameraPosition: 0 + vSyncCount: 1 + lodBias: 2 + maximumLODLevel: 0 + particleRaycastBudget: 4096 + asyncUploadTimeSlice: 2 + asyncUploadBufferSize: 16 + resolutionScalingFixedDPIFactor: 1 + excludedTargetPlatforms: [] + m_PerPlatformDefaultQuality: + Android: 2 + Nintendo 3DS: 5 + Nintendo Switch: 5 + PS4: 5 + PSM: 5 + PSP2: 2 + Stadia: 5 + Standalone: 5 + Tizen: 2 + WebGL: 3 + WiiU: 5 + Windows Store Apps: 5 + XboxOne: 5 + iPhone: 2 + tvOS: 2 diff --git a/ProjectSettings/TagManager.asset b/ProjectSettings/TagManager.asset new file mode 100644 index 0000000..3281f1b --- /dev/null +++ b/ProjectSettings/TagManager.asset @@ -0,0 +1,43 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!78 &1 +TagManager: + serializedVersion: 2 + tags: [] + layers: + - Default + - TransparentFX + - Ignore Raycast + - + - Water + - UI + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + m_SortingLayers: + - name: Default + uniqueID: 0 + locked: 0 diff --git a/ProjectSettings/TimeManager.asset b/ProjectSettings/TimeManager.asset new file mode 100644 index 0000000..b816de4 --- /dev/null +++ b/ProjectSettings/TimeManager.asset @@ -0,0 +1,9 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!5 &1 +TimeManager: + m_ObjectHideFlags: 0 + Fixed Timestep: 0.02 + Maximum Allowed Timestep: 0.1 + m_TimeScale: 1 + Maximum Particle Timestep: 0.03 diff --git a/ProjectSettings/UnityConnectSettings.asset b/ProjectSettings/UnityConnectSettings.asset new file mode 100644 index 0000000..fa0b146 --- /dev/null +++ b/ProjectSettings/UnityConnectSettings.asset @@ -0,0 +1,34 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!310 &1 +UnityConnectSettings: + m_ObjectHideFlags: 0 + serializedVersion: 1 + m_Enabled: 0 + m_TestMode: 0 + m_EventOldUrl: https://api.uca.cloud.unity3d.com/v1/events + m_EventUrl: https://cdp.cloud.unity3d.com/v1/events + m_ConfigUrl: https://config.uca.cloud.unity3d.com + m_TestInitMode: 0 + CrashReportingSettings: + m_EventUrl: https://perf-events.cloud.unity3d.com + m_Enabled: 0 + m_LogBufferSize: 10 + m_CaptureEditorExceptions: 1 + UnityPurchasingSettings: + m_Enabled: 0 + m_TestMode: 0 + UnityAnalyticsSettings: + m_Enabled: 0 + m_TestMode: 0 + m_InitializeOnStartup: 1 + UnityAdsSettings: + m_Enabled: 0 + m_InitializeOnStartup: 1 + m_TestMode: 0 + m_IosGameId: + m_AndroidGameId: + m_GameIds: {} + m_GameId: + PerformanceReportingSettings: + m_Enabled: 0 diff --git a/ProjectSettings/VFXManager.asset b/ProjectSettings/VFXManager.asset new file mode 100644 index 0000000..379de33 --- /dev/null +++ b/ProjectSettings/VFXManager.asset @@ -0,0 +1,12 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!937362698 &1 +VFXManager: + m_ObjectHideFlags: 0 + m_IndirectShader: {fileID: 0} + m_CopyBufferShader: {fileID: 0} + m_SortShader: {fileID: 0} + m_StripUpdateShader: {fileID: 0} + m_RenderPipeSettingsPath: + m_FixedTimeStep: 0.016666668 + m_MaxDeltaTime: 0.05 diff --git a/ProjectSettings/XRSettings.asset b/ProjectSettings/XRSettings.asset new file mode 100644 index 0000000..482590c --- /dev/null +++ b/ProjectSettings/XRSettings.asset @@ -0,0 +1,10 @@ +{ + "m_SettingKeys": [ + "VR Device Disabled", + "VR Device User Alert" + ], + "m_SettingValues": [ + "False", + "False" + ] +} \ No newline at end of file diff --git a/Sprites/character.xcf b/Sprites/character.xcf new file mode 100644 index 0000000000000000000000000000000000000000..64a8df776ccb0f723dc7cc6c90885a7559e4ada1 GIT binary patch literal 2346 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 literal 0 HcmV?d00001 diff --git a/Sprites/fire_base.xcf b/Sprites/fire_base.xcf new file mode 100644 index 0000000000000000000000000000000000000000..dd0cb597714e3835d54d4aa4a12ab53efe45bb4d GIT binary patch literal 1536 zcmZvb&1)k^5XGyzXEfG_BirlE5|YE@3%oD}>n>Qx9+n&exy*GyE6cM=Y-y3&$u10J zPr3&|{)a&RyPTumU$w_D3u#f)uU@^Xnm5?>^6qW^Zhn*hb~Tv@CvQXXU&JY4438(o z(Mu=|&N-0~miWBIs(VWOOB~mXzMQY`?iMRgE?PW$xmnEo;yV9*>EGn9e*EcYt(-*Z z@@`fyF6+(mS~*q!bFuaBZx{J?eY?DVKDfB4=j+?`CclW+<)(f;%dg^Z@|^PP|0z%M z_|x*c?c3RWxvKNY71{ewvNpNAUoCyUT+QDsw%W12x!Ep!9`zmk06!J$J9m!xrIS3u z9H61zhCj^azt)@e{VLkkuc)U-=vNKI*NR_!;K`RKl-JgNi@D^R4*sfx2OXSu@UVkN z9emuuW3cXfJQ+ZD>-_Iq%q8C`4jk@pJGlFo0sVOF{UhSe+t9fj`{%Fi7++0R zXJrD$H`tZ!FOY!GDc^#!;>4uEKYf za^t%iOihLFDw(<>1>>vArdg4I@eOtbzRA;wsmEFm9^ZvQmrj!c--V4+@I9^IOcAEG z;!VJ|aOm)jLT9m8Lgl7uf$umE-{h`1NP)kihXmi1g~E4{(GE{;SgUnY9fS^B;5(*@ z*;e$C;G2!D@9<2H!nusXiHyTgo`y`m2u?l=M!p1}!<~jP^;5X9oP-hFKnDCP_QMgq Z2MJb&ApvI4R(iB(IYX+g$Kec4* literal 0 HcmV?d00001 diff --git a/Sprites/tile.xcf b/Sprites/tile.xcf new file mode 100644 index 0000000000000000000000000000000000000000..a01b39cb7013bc2d56e393483acfd4cd945772af GIT binary patch literal 951 zcmb7?%TB^T6oyMnynrZPS1u0T0*fZ}2}mTyxF9ic=dP4#nE)+mi^9U-Ql`;}|efuzmr%piscF4>sCJF|Y$r1SU9A zn)?pHH>dkxc5pMS12oN>l_0fRr)wEho4 zIydtvSMa3Zb7AJ|(q}7SWnkvV(i_ISXxxJ4+&NLinGp1=AB?!|FE literal 0 HcmV?d00001 diff --git a/Sprites/tree.xcf b/Sprites/tree.xcf new file mode 100644 index 0000000000000000000000000000000000000000..88e29b6d3566e5e0aad1af8180a4467e8d3da5f6 GIT binary patch literal 3007 zcmb_e%Wm676rBetiF%lnmL;8y4!BL?ici5vMT}uwdLu#Lt3JdZi;ryqkHZ>ckaC$%kWHR=da>7lhgRyCr3vN zD+Z1MT0a3@fOCBGfW}jV2v}Qy2MC~Fa>`S{pFn4d(ub4z`FVD+fX_(We0rIkEV38z zceBOI_{*=JeN9T_QfKEU)9i41IeS4d%Kr6HzIc0<#rgbf_Tq8#(dl$DKbv31kDNKY zoIXE^pSYi+$B>`@gM1XbAClkXuTCbji)noH1m4?wUg;dZzL+iI*~R2#meY>;>1m!V zVwYdx1-+k4GglVBtT>>}KPr9Y0|0zbh;LJNc@W*@QL35 zKylg{lpKbQDtxcPn-v~cc&ozO72c`v5S;qmtvU$xruv_i9EN>L++x9gQsLEa2*P(u ze1FGaW8fH|x>(}p!n)5GpT~|d@mpaTYbTr!fxSfXU0?^eWqgo$e2Fh=KMA-3w%}Xl z^WMrf;0xY`W|`zs67n#K_(sy@?L;6J@|Ls2+dN3>uvDYY8%f96dNSaC(sOa&)h%@D zBNM;O4>?bU+$IM=v5$0~)bLlt`3?OsdHjkDo`efDC0dF&33?rmd3Z;`EcXGymXIaJ zuDPgmipOg3w=oi76YYKOB~3S~g(g=ch9y_%7C~>8wm2f2JaBtyWEx$d2gg*`Ip=wf z>2PFz@}4J%XD$W{heiQ{*$-Du4$T9ZfBMSe{+OHO{#wWzt?vu4F)ousX~83KD+ znq6QAxE-5;_RMl@OkW2^0bB6x*f+hEZNL|%3(bzDiF9Z}9hnW?HEk^r3r)*e;%yV? zIxN+wn}+Tz<4Iu5O`IAF2H^KQvqqjnxN0v5$1FYle@xxxtJmdqoD1HUdpa zD8(^EypA{a@Qz|^jSq8 zwm2fIAGp0VGL0_KgJY`ekujqYro)l>`n}QGn0*(6g#(vT1O371{m}@yh)ZqJjN>fr zer;s;1Nbey+#l_G@cQ}+Y~-FkGUVunJff6*FN93w6|&2cWyVLDl{)K2Yi7}!JgP26 z*Hp9Q?Ubt_u$M};3+w>5ks73)T1HCs(?BU;3%-qf)mzyHe4)C~ zY$R2bhAK=WwUKsJI~9n9s^u*4whGcZEY+y1M%r<?570HN_*YZZIRtUXj6*DuJdXlwt%Cuj54?-cdwW`GAO)$d(wp=AzOmUQ~m> zjgbhOXzwd8ZMsn{G`SivEV)9r2zs-$#Sz)`f!j+X)93;{IHtO03U?Pwha>aT_bN@v zF98QGr3UG(N(K9?&}3@SjN>dDEC46l|DVuF+l<>Gu*am`1$LNk2dr-UEU*gLVlCTq zXxlE^un`Mw$RfMJy0*=Fw#Bw=!1@+5**Y6opKSv>RD!3yVoL#mt-@{HciX9qz=)hRfdKhS+yjW;SZ19Ruv^O-s9*t(p&A&