├── .gitattributes ├── .gitignore ├── Assets ├── SimpleSpriteAnimator.meta ├── SimpleSpriteAnimator │ ├── Editor.meta │ ├── Editor │ │ ├── SpriteAnimationEditor.cs │ │ └── SpriteAnimationEditor.cs.meta │ ├── SpriteAnimation.cs │ ├── SpriteAnimation.cs.meta │ ├── SpriteAnimationFrame.cs │ ├── SpriteAnimationFrame.cs.meta │ ├── SpriteAnimationHelper.cs │ ├── SpriteAnimationHelper.cs.meta │ ├── SpriteAnimationState.cs │ ├── SpriteAnimationState.cs.meta │ ├── SpriteAnimationType.cs │ ├── SpriteAnimationType.cs.meta │ ├── SpriteAnimator.cs │ └── SpriteAnimator.cs.meta ├── SimpleSpriteAnimatorDemo.meta └── SimpleSpriteAnimatorDemo │ ├── Animations.meta │ ├── Animations │ ├── AlienClimb.asset │ ├── AlienClimb.asset.meta │ ├── AlienWalk.asset │ └── AlienWalk.asset.meta │ ├── Scenes.meta │ ├── Scenes │ ├── Demo.unity │ └── Demo.unity.meta │ ├── Scripts.meta │ ├── Scripts │ ├── AnimatorTester.cs │ └── AnimatorTester.cs.meta │ ├── Sprites.meta │ └── Sprites │ ├── Alien.png │ └── Alien.png.meta ├── LICENSE ├── ProjectSettings ├── AudioManager.asset ├── DynamicsManager.asset ├── EditorBuildSettings.asset ├── EditorSettings.asset ├── GraphicsSettings.asset ├── InputManager.asset ├── NavMeshAreas.asset ├── NetworkManager.asset ├── Physics2DSettings.asset ├── ProjectSettings.asset ├── ProjectVersion.txt ├── QualitySettings.asset ├── TagManager.asset ├── TimeManager.asset ├── UnityAdsSettings.asset └── UnityAnalyticsManager.asset └── README.md /.gitattributes: -------------------------------------------------------------------------------- 1 | # Auto detect text files and perform LF normalization 2 | * text=auto 3 | 4 | # Custom for Visual Studio 5 | *.cs diff=csharp 6 | 7 | # Standard to msysgit 8 | *.doc diff=astextplain 9 | *.DOC diff=astextplain 10 | *.docx diff=astextplain 11 | *.DOCX diff=astextplain 12 | *.dot diff=astextplain 13 | *.DOT diff=astextplain 14 | *.pdf diff=astextplain 15 | *.PDF diff=astextplain 16 | *.rtf diff=astextplain 17 | *.RTF diff=astextplain 18 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | [Ll]ibrary/ 2 | [Tt]emp/ 3 | [Oo]bj/ 4 | [Bb]uild/ 5 | 6 | # Autogenerated VS/MD solution and project files 7 | /*.csproj 8 | /*.unityproj 9 | /*.sln 10 | /*.suo 11 | /*.user 12 | /*.userprefs 13 | /*.pidb 14 | /*.booproj 15 | 16 | #Unity3D Generated File On Crash Reports 17 | sysinfo.txt 18 | 19 | # ========================= 20 | # Operating System Files 21 | # ========================= 22 | 23 | # OSX 24 | # ========================= 25 | 26 | .DS_Store 27 | .AppleDouble 28 | .LSOverride 29 | 30 | # Thumbnails 31 | ._* 32 | 33 | # Files that might appear on external disk 34 | .Spotlight-V100 35 | .Trashes 36 | 37 | # Directories potentially created on remote AFP share 38 | .AppleDB 39 | .AppleDesktop 40 | Network Trash Folder 41 | Temporary Items 42 | .apdisk 43 | 44 | # Windows 45 | # ========================= 46 | 47 | # Windows image file caches 48 | Thumbs.db 49 | ehthumbs.db 50 | 51 | # Folder config file 52 | Desktop.ini 53 | 54 | # Recycle Bin used on file shares 55 | $RECYCLE.BIN/ 56 | 57 | # Windows Installer files 58 | *.cab 59 | *.msi 60 | *.msm 61 | *.msp 62 | 63 | # Windows shortcuts 64 | *.lnk 65 | 66 | .vs 67 | -------------------------------------------------------------------------------- /Assets/SimpleSpriteAnimator.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b0a2897fa9bea084bb398884250bc0b0 3 | folderAsset: yes 4 | timeCreated: 1448232072 5 | licenseType: Free 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/SimpleSpriteAnimator/Editor.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: fad743b167b914b4497d070ca2459260 3 | folderAsset: yes 4 | timeCreated: 1443209159 5 | licenseType: Free 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/SimpleSpriteAnimator/Editor/SpriteAnimationEditor.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using UnityEditorInternal; 3 | using UnityEditor; 4 | 5 | namespace SimpleSpriteAnimator 6 | { 7 | [CustomEditor(typeof(SpriteAnimation))] 8 | public class SpriteAnimationEditor : Editor 9 | { 10 | private ReorderableList framesList; 11 | 12 | private SpriteAnimation SelectedSpriteAnimation 13 | { 14 | get { return target as SpriteAnimation; } 15 | } 16 | 17 | private float timeTracker = 0; 18 | 19 | private SpriteAnimationFrame currentFrame; 20 | 21 | private SpriteAnimationHelper spriteAnimationHelper; 22 | 23 | private void OnEnable() 24 | { 25 | timeTracker = (float)EditorApplication.timeSinceStartup; 26 | spriteAnimationHelper = new SpriteAnimationHelper(SelectedSpriteAnimation); 27 | 28 | InitializeFrameList(); 29 | 30 | EditorApplication.update += OnUpdate; 31 | } 32 | 33 | private void OnDisable() 34 | { 35 | EditorApplication.update -= OnUpdate; 36 | } 37 | 38 | public override void OnInspectorGUI() 39 | { 40 | //serializedObject.Update(); 41 | 42 | EditorGUI.BeginChangeCheck(); 43 | 44 | if (SelectedSpriteAnimation != null && framesList != null) 45 | { 46 | SelectedSpriteAnimation.Name = EditorGUILayout.TextField("Name", SelectedSpriteAnimation.Name); 47 | 48 | framesList.DoLayoutList(); 49 | 50 | SelectedSpriteAnimation.FPS = Mathf.Max(EditorGUILayout.IntField("FPS", SelectedSpriteAnimation.FPS), 0); 51 | 52 | SelectedSpriteAnimation.SpriteAnimationType = (SpriteAnimationType)EditorGUILayout.EnumPopup("Type", SelectedSpriteAnimation.SpriteAnimationType); 53 | } 54 | 55 | if (EditorGUI.EndChangeCheck()) 56 | { 57 | EditorUtility.SetDirty(target); 58 | } 59 | 60 | //serializedObject.ApplyModifiedProperties(); 61 | } 62 | 63 | public override bool HasPreviewGUI() 64 | { 65 | return HasAnimationAndFrames(); 66 | } 67 | 68 | public override bool RequiresConstantRepaint() 69 | { 70 | return HasAnimationAndFrames(); 71 | } 72 | 73 | public override void OnPreviewGUI(Rect r, GUIStyle background) 74 | { 75 | if (currentFrame != null && currentFrame.Sprite != null) 76 | { 77 | Texture t = currentFrame.Sprite.texture; 78 | Rect tr = currentFrame.Sprite.textureRect; 79 | Rect r2 = new Rect(tr.x / t.width, tr.y / t.height, tr.width / t.width, tr.height / t.height); 80 | 81 | Rect previewRect = r; 82 | 83 | float targetAspectRatio = tr.width / tr.height; 84 | float windowAspectRatio = r.width / r.height; 85 | float scaleHeight = windowAspectRatio / targetAspectRatio; 86 | 87 | if (scaleHeight < 1f) 88 | { 89 | previewRect.width = r.width; 90 | previewRect.height = scaleHeight * r.height; 91 | previewRect.x = r.x; 92 | previewRect.y = r.y + (r.height - previewRect.height) / 2f; 93 | } 94 | else 95 | { 96 | float scaleWidth = 1f / scaleHeight; 97 | 98 | previewRect.width = scaleWidth * r.width; 99 | previewRect.height = r.height; 100 | previewRect.x = r.x + (r.width - previewRect.width) / 2f; 101 | previewRect.y = r.y; 102 | } 103 | 104 | GUI.DrawTextureWithTexCoords(previewRect, t, r2, true); 105 | } 106 | } 107 | 108 | private void InitializeFrameList() 109 | { 110 | framesList = new ReorderableList(SelectedSpriteAnimation.Frames, typeof(Sprite), true, true, true, true); 111 | //framesList.elementHeight = EditorGUIUtility.singleLineHeight * 5f; 112 | 113 | framesList.drawElementCallback = DrawElement; 114 | framesList.drawHeaderCallback = DrawHeader; 115 | } 116 | 117 | private void DrawElement(Rect rect, int index, bool isActive, bool isFocused) 118 | { 119 | SpriteAnimationFrame spriteAnimationFrame = SelectedSpriteAnimation.Frames[index]; 120 | 121 | rect.y += 2; 122 | 123 | spriteAnimationFrame.Sprite = EditorGUI.ObjectField(new Rect(rect.x, rect.y, rect.width, EditorGUIUtility.singleLineHeight), "", spriteAnimationFrame.Sprite, typeof(Sprite), false) as Sprite; 124 | } 125 | 126 | private void DrawHeader(Rect rect) 127 | { 128 | EditorGUI.LabelField(rect, "Frames"); 129 | } 130 | 131 | private bool HasAnimationAndFrames() 132 | { 133 | return SelectedSpriteAnimation != null && SelectedSpriteAnimation.Frames.Count > 0; 134 | } 135 | 136 | private void OnUpdate() 137 | { 138 | if (SelectedSpriteAnimation.Frames.Count > 0) 139 | { 140 | float deltaTime = (float)EditorApplication.timeSinceStartup - timeTracker; 141 | timeTracker += deltaTime; 142 | currentFrame = spriteAnimationHelper.UpdateAnimation(deltaTime); 143 | } 144 | } 145 | } 146 | } -------------------------------------------------------------------------------- /Assets/SimpleSpriteAnimator/Editor/SpriteAnimationEditor.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1c113106c9bef194d90d69803af3bba1 3 | timeCreated: 1445211516 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/SimpleSpriteAnimator/SpriteAnimation.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using System.Collections; 3 | using System.Collections.Generic; 4 | using System; 5 | 6 | namespace SimpleSpriteAnimator 7 | { 8 | [Serializable] 9 | [CreateAssetMenu] 10 | public class SpriteAnimation : ScriptableObject 11 | { 12 | [SerializeField] 13 | private string animationName = "animation"; 14 | 15 | public string Name 16 | { 17 | get { return animationName; } 18 | set { animationName = value; } 19 | } 20 | 21 | [SerializeField] 22 | private int fps = 30; 23 | 24 | public int FPS 25 | { 26 | get { return fps; } 27 | set { fps = value; } 28 | } 29 | 30 | [SerializeField] 31 | private List frames = new List(); 32 | 33 | public List Frames 34 | { 35 | get { return frames; } 36 | } 37 | 38 | [SerializeField] 39 | private SpriteAnimationType spriteAnimationType = SpriteAnimationType.Looping; 40 | public SpriteAnimationType SpriteAnimationType 41 | { 42 | get { return spriteAnimationType; } 43 | set { spriteAnimationType = value; } 44 | } 45 | } 46 | } 47 | -------------------------------------------------------------------------------- /Assets/SimpleSpriteAnimator/SpriteAnimation.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 04e6f6b396aaad8409ac6804e2834b12 3 | timeCreated: 1443208627 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/SimpleSpriteAnimator/SpriteAnimationFrame.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using System.Collections; 3 | using System; 4 | 5 | namespace SimpleSpriteAnimator 6 | { 7 | [Serializable] 8 | public class SpriteAnimationFrame 9 | { 10 | [SerializeField] 11 | private Sprite sprite; 12 | 13 | public Sprite Sprite 14 | { 15 | get { return sprite; } 16 | set { sprite = value; } 17 | } 18 | } 19 | } -------------------------------------------------------------------------------- /Assets/SimpleSpriteAnimator/SpriteAnimationFrame.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 076ed8772223aee40b21d1cd7c15bbd6 3 | timeCreated: 1443214119 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/SimpleSpriteAnimator/SpriteAnimationHelper.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using System.Collections; 3 | 4 | namespace SimpleSpriteAnimator 5 | { 6 | public class SpriteAnimationHelper 7 | { 8 | private float animationTime = 0.0f; 9 | 10 | public SpriteAnimation CurrentAnimation { get; set; } 11 | 12 | public SpriteAnimationHelper() 13 | { 14 | } 15 | 16 | public SpriteAnimationHelper(SpriteAnimation spriteAnimation) 17 | { 18 | CurrentAnimation = spriteAnimation; 19 | } 20 | 21 | public SpriteAnimationFrame UpdateAnimation(float deltaTime) 22 | { 23 | if (CurrentAnimation) 24 | { 25 | animationTime += deltaTime * CurrentAnimation.FPS; 26 | 27 | return GetAnimationFrame(); 28 | } 29 | 30 | return null; 31 | } 32 | 33 | public void ChangeAnimation(SpriteAnimation spriteAnimation) 34 | { 35 | animationTime = 0f; 36 | CurrentAnimation = spriteAnimation; 37 | } 38 | 39 | private SpriteAnimationFrame GetAnimationFrame() 40 | { 41 | int currentFrame = 0; 42 | 43 | switch (CurrentAnimation.SpriteAnimationType) 44 | { 45 | case SpriteAnimationType.Looping: 46 | currentFrame = GetLoopingFrame(); 47 | break; 48 | case SpriteAnimationType.PlayOnce: 49 | currentFrame = GetPlayOnceFrame(); 50 | break; 51 | } 52 | 53 | return CurrentAnimation.Frames[currentFrame]; 54 | } 55 | 56 | private int GetLoopingFrame() 57 | { 58 | return (int)animationTime % CurrentAnimation.Frames.Count; 59 | } 60 | 61 | private int GetPlayOnceFrame() 62 | { 63 | return Mathf.Min((int)animationTime, CurrentAnimation.Frames.Count - 1); 64 | } 65 | } 66 | } 67 | -------------------------------------------------------------------------------- /Assets/SimpleSpriteAnimator/SpriteAnimationHelper.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2b30fcaa986e5f241bfb97bd7f34c311 3 | timeCreated: 1448224104 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/SimpleSpriteAnimator/SpriteAnimationState.cs: -------------------------------------------------------------------------------- 1 | namespace SimpleSpriteAnimator 2 | { 3 | public enum SpriteAnimationState 4 | { 5 | Playing = 0, 6 | Paused = 1 7 | } 8 | } -------------------------------------------------------------------------------- /Assets/SimpleSpriteAnimator/SpriteAnimationState.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: fd73549c242acfe48845edc1ec75abb1 3 | timeCreated: 1448587194 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/SimpleSpriteAnimator/SpriteAnimationType.cs: -------------------------------------------------------------------------------- 1 | namespace SimpleSpriteAnimator 2 | { 3 | public enum SpriteAnimationType 4 | { 5 | Looping = 0, 6 | PlayOnce = 1 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /Assets/SimpleSpriteAnimator/SpriteAnimationType.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 256b164c734d3884284585021125ed2b 3 | timeCreated: 1448320747 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/SimpleSpriteAnimator/SpriteAnimator.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using System.Collections.Generic; 3 | 4 | namespace SimpleSpriteAnimator 5 | { 6 | [RequireComponent(typeof(SpriteRenderer))] 7 | public class SpriteAnimator : MonoBehaviour 8 | { 9 | [SerializeField] 10 | private List spriteAnimations; 11 | 12 | [SerializeField] 13 | private bool playAutomatically = true; 14 | 15 | private SpriteAnimation DefaultAnimation 16 | { 17 | get { return spriteAnimations.Count > 0 ? spriteAnimations[0] : null; } 18 | } 19 | 20 | private SpriteAnimation CurrentAnimation 21 | { 22 | get { return spriteAnimationHelper.CurrentAnimation; } 23 | } 24 | 25 | public bool Playing 26 | { 27 | get { return state == SpriteAnimationState.Playing; } 28 | } 29 | 30 | public bool Paused 31 | { 32 | get { return state == SpriteAnimationState.Paused; } 33 | } 34 | 35 | private SpriteRenderer spriteRenderer; 36 | 37 | private SpriteAnimationHelper spriteAnimationHelper; 38 | 39 | private SpriteAnimationState state = SpriteAnimationState.Playing; 40 | 41 | private void Awake() 42 | { 43 | spriteRenderer = GetComponent(); 44 | 45 | spriteAnimationHelper = new SpriteAnimationHelper(); 46 | } 47 | 48 | private void Start() 49 | { 50 | if (playAutomatically) 51 | { 52 | Play(DefaultAnimation); 53 | } 54 | } 55 | 56 | private void LateUpdate() 57 | { 58 | if (Playing) 59 | { 60 | SpriteAnimationFrame currentFrame = spriteAnimationHelper.UpdateAnimation(Time.deltaTime); 61 | 62 | if (currentFrame != null) 63 | { 64 | spriteRenderer.sprite = currentFrame.Sprite; 65 | } 66 | } 67 | } 68 | 69 | public void Play() 70 | { 71 | if (CurrentAnimation == null) 72 | { 73 | spriteAnimationHelper.ChangeAnimation(DefaultAnimation); 74 | } 75 | 76 | Play(CurrentAnimation); 77 | } 78 | 79 | public void Play(string name) 80 | { 81 | Play(GetAnimationByName(name)); 82 | } 83 | 84 | public void Play(SpriteAnimation animation) 85 | { 86 | state = SpriteAnimationState.Playing; 87 | spriteAnimationHelper.ChangeAnimation(animation); 88 | } 89 | 90 | private SpriteAnimation GetAnimationByName(string name) 91 | { 92 | for (int i = 0; i < spriteAnimations.Count; i++) 93 | { 94 | if (spriteAnimations[i].Name == name) 95 | { 96 | return spriteAnimations[i]; 97 | } 98 | } 99 | 100 | return null; 101 | } 102 | } 103 | } 104 | -------------------------------------------------------------------------------- /Assets/SimpleSpriteAnimator/SpriteAnimator.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4f68ed8ddcd58d140a37806eca2b5694 3 | timeCreated: 1443208619 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/SimpleSpriteAnimatorDemo.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f871f8fb22a9f604a8b4d6338701842b 3 | folderAsset: yes 4 | timeCreated: 1448232081 5 | licenseType: Free 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/SimpleSpriteAnimatorDemo/Animations.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 54f087fcb0d43f2429431fa0f6dd6c3d 3 | folderAsset: yes 4 | timeCreated: 1448205088 5 | licenseType: Free 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/SimpleSpriteAnimatorDemo/Animations/AlienClimb.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!114 &11400000 4 | MonoBehaviour: 5 | m_ObjectHideFlags: 0 6 | m_PrefabParentObject: {fileID: 0} 7 | m_PrefabInternal: {fileID: 0} 8 | m_GameObject: {fileID: 0} 9 | m_Enabled: 1 10 | m_EditorHideFlags: 0 11 | m_Script: {fileID: 11500000, guid: 04e6f6b396aaad8409ac6804e2834b12, type: 3} 12 | m_Name: AlienClimb 13 | m_EditorClassIdentifier: 14 | animationName: Climb 15 | fps: 2 16 | frames: 17 | - sprite: {fileID: 21300038, guid: c5768973a0bf4674184626e217a7e66d, type: 3} 18 | - sprite: {fileID: 21300052, guid: c5768973a0bf4674184626e217a7e66d, type: 3} 19 | spriteAnimationType: 0 20 | -------------------------------------------------------------------------------- /Assets/SimpleSpriteAnimatorDemo/Animations/AlienClimb.asset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4c261293112ad2e4094a4efa22cae7eb 3 | timeCreated: 1448753869 4 | licenseType: Free 5 | NativeFormatImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/SimpleSpriteAnimatorDemo/Animations/AlienWalk.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!114 &11400000 4 | MonoBehaviour: 5 | m_ObjectHideFlags: 0 6 | m_PrefabParentObject: {fileID: 0} 7 | m_PrefabInternal: {fileID: 0} 8 | m_GameObject: {fileID: 0} 9 | m_Enabled: 1 10 | m_EditorHideFlags: 0 11 | m_Script: {fileID: 11500000, guid: 04e6f6b396aaad8409ac6804e2834b12, type: 3} 12 | m_Name: AlienWalk 13 | m_EditorClassIdentifier: 14 | animationName: Walk 15 | fps: 4 16 | frames: 17 | - sprite: {fileID: 21300022, guid: c5768973a0bf4674184626e217a7e66d, type: 3} 18 | - sprite: {fileID: 21300036, guid: c5768973a0bf4674184626e217a7e66d, type: 3} 19 | spriteAnimationType: 0 20 | -------------------------------------------------------------------------------- /Assets/SimpleSpriteAnimatorDemo/Animations/AlienWalk.asset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 61ada22025e30644d8a4097a3df88434 3 | timeCreated: 1448753792 4 | licenseType: Free 5 | NativeFormatImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/SimpleSpriteAnimatorDemo/Scenes.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5609f1b75bfdf0f4a908d6fe36c3168c 3 | folderAsset: yes 4 | timeCreated: 1443208590 5 | licenseType: Free 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/SimpleSpriteAnimatorDemo/Scenes/Demo.unity: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!29 &1 4 | SceneSettings: 5 | m_ObjectHideFlags: 0 6 | m_PVSData: 7 | m_PVSObjectsArray: [] 8 | m_PVSPortalsArray: [] 9 | m_OcclusionBakeSettings: 10 | smallestOccluder: 5 11 | smallestHole: .25 12 | backfaceThreshold: 100 13 | --- !u!104 &2 14 | RenderSettings: 15 | m_ObjectHideFlags: 0 16 | serializedVersion: 6 17 | m_Fog: 0 18 | m_FogColor: {r: .5, g: .5, b: .5, a: 1} 19 | m_FogMode: 3 20 | m_FogDensity: .00999999978 21 | m_LinearFogStart: 0 22 | m_LinearFogEnd: 300 23 | m_AmbientSkyColor: {r: .211999997, g: .226999998, b: .259000003, a: 1} 24 | m_AmbientEquatorColor: {r: .114, g: .125, b: .133000001, a: 1} 25 | m_AmbientGroundColor: {r: .0469999984, g: .0430000015, b: .0350000001, a: 1} 26 | m_AmbientIntensity: 1 27 | m_AmbientMode: 3 28 | m_SkyboxMaterial: {fileID: 0} 29 | m_HaloStrength: .5 30 | m_FlareStrength: 1 31 | m_FlareFadeSpeed: 3 32 | m_HaloTexture: {fileID: 0} 33 | m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} 34 | m_DefaultReflectionMode: 0 35 | m_DefaultReflectionResolution: 128 36 | m_ReflectionBounces: 1 37 | m_ReflectionIntensity: 1 38 | m_CustomReflection: {fileID: 0} 39 | m_Sun: {fileID: 0} 40 | --- !u!157 &3 41 | LightmapSettings: 42 | m_ObjectHideFlags: 0 43 | serializedVersion: 5 44 | m_GIWorkflowMode: 1 45 | m_LightmapsMode: 1 46 | m_GISettings: 47 | serializedVersion: 2 48 | m_BounceScale: 1 49 | m_IndirectOutputScale: 1 50 | m_AlbedoBoost: 1 51 | m_TemporalCoherenceThreshold: 1 52 | m_EnvironmentLightingMode: 0 53 | m_EnableBakedLightmaps: 0 54 | m_EnableRealtimeLightmaps: 0 55 | m_LightmapEditorSettings: 56 | serializedVersion: 3 57 | m_Resolution: 2 58 | m_BakeResolution: 40 59 | m_TextureWidth: 1024 60 | m_TextureHeight: 1024 61 | m_AOMaxDistance: 1 62 | m_Padding: 2 63 | m_CompAOExponent: 0 64 | m_LightmapParameters: {fileID: 0} 65 | m_TextureCompression: 1 66 | m_FinalGather: 0 67 | m_FinalGatherRayCount: 1024 68 | m_ReflectionCompression: 2 69 | m_LightmapSnapshot: {fileID: 0} 70 | m_RuntimeCPUUsage: 25 71 | --- !u!196 &4 72 | NavMeshSettings: 73 | serializedVersion: 2 74 | m_ObjectHideFlags: 0 75 | m_BuildSettings: 76 | serializedVersion: 2 77 | agentRadius: .5 78 | agentHeight: 2 79 | agentSlope: 45 80 | agentClimb: .400000006 81 | ledgeDropHeight: 0 82 | maxJumpAcrossDistance: 0 83 | accuratePlacement: 0 84 | minRegionArea: 2 85 | cellSize: .166666672 86 | manualCellSize: 0 87 | m_NavMeshData: {fileID: 0} 88 | --- !u!1 &206338611 89 | GameObject: 90 | m_ObjectHideFlags: 0 91 | m_PrefabParentObject: {fileID: 0} 92 | m_PrefabInternal: {fileID: 0} 93 | serializedVersion: 4 94 | m_Component: 95 | - 4: {fileID: 206338613} 96 | - 212: {fileID: 206338614} 97 | - 114: {fileID: 206338612} 98 | - 114: {fileID: 206338615} 99 | m_Layer: 0 100 | m_Name: AnimatedAlien 101 | m_TagString: Untagged 102 | m_Icon: {fileID: 0} 103 | m_NavMeshLayer: 0 104 | m_StaticEditorFlags: 0 105 | m_IsActive: 1 106 | --- !u!114 &206338612 107 | MonoBehaviour: 108 | m_ObjectHideFlags: 0 109 | m_PrefabParentObject: {fileID: 0} 110 | m_PrefabInternal: {fileID: 0} 111 | m_GameObject: {fileID: 206338611} 112 | m_Enabled: 1 113 | m_EditorHideFlags: 0 114 | m_Script: {fileID: 11500000, guid: 4f68ed8ddcd58d140a37806eca2b5694, type: 3} 115 | m_Name: 116 | m_EditorClassIdentifier: 117 | spriteAnimations: 118 | - {fileID: 11400000, guid: 61ada22025e30644d8a4097a3df88434, type: 2} 119 | - {fileID: 11400000, guid: 4c261293112ad2e4094a4efa22cae7eb, type: 2} 120 | playAutomatically: 1 121 | --- !u!4 &206338613 122 | Transform: 123 | m_ObjectHideFlags: 0 124 | m_PrefabParentObject: {fileID: 0} 125 | m_PrefabInternal: {fileID: 0} 126 | m_GameObject: {fileID: 206338611} 127 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} 128 | m_LocalPosition: {x: 0, y: 0, z: 0} 129 | m_LocalScale: {x: 1, y: 1, z: 1} 130 | m_Children: [] 131 | m_Father: {fileID: 0} 132 | m_RootOrder: 1 133 | --- !u!212 &206338614 134 | SpriteRenderer: 135 | m_ObjectHideFlags: 0 136 | m_PrefabParentObject: {fileID: 0} 137 | m_PrefabInternal: {fileID: 0} 138 | m_GameObject: {fileID: 206338611} 139 | m_Enabled: 1 140 | m_CastShadows: 0 141 | m_ReceiveShadows: 0 142 | m_Materials: 143 | - {fileID: 10754, guid: 0000000000000000e000000000000000, type: 0} 144 | m_SubsetIndices: 145 | m_StaticBatchRoot: {fileID: 0} 146 | m_UseLightProbes: 0 147 | m_ReflectionProbeUsage: 0 148 | m_ProbeAnchor: {fileID: 0} 149 | m_ScaleInLightmap: 1 150 | m_PreserveUVs: 0 151 | m_ImportantGI: 0 152 | m_AutoUVMaxDistance: .5 153 | m_AutoUVMaxAngle: 89 154 | m_LightmapParameters: {fileID: 0} 155 | m_SortingLayerID: 0 156 | m_SortingOrder: 0 157 | m_Sprite: {fileID: 21300036, guid: c5768973a0bf4674184626e217a7e66d, type: 3} 158 | m_Color: {r: 1, g: 1, b: 1, a: 1} 159 | --- !u!114 &206338615 160 | MonoBehaviour: 161 | m_ObjectHideFlags: 0 162 | m_PrefabParentObject: {fileID: 0} 163 | m_PrefabInternal: {fileID: 0} 164 | m_GameObject: {fileID: 206338611} 165 | m_Enabled: 1 166 | m_EditorHideFlags: 0 167 | m_Script: {fileID: 11500000, guid: df73f12254f3d4243ad3a9e04739c707, type: 3} 168 | m_Name: 169 | m_EditorClassIdentifier: 170 | --- !u!1 &497225774 171 | GameObject: 172 | m_ObjectHideFlags: 0 173 | m_PrefabParentObject: {fileID: 0} 174 | m_PrefabInternal: {fileID: 0} 175 | serializedVersion: 4 176 | m_Component: 177 | - 4: {fileID: 497225779} 178 | - 20: {fileID: 497225778} 179 | - 92: {fileID: 497225777} 180 | - 124: {fileID: 497225776} 181 | - 81: {fileID: 497225775} 182 | m_Layer: 0 183 | m_Name: Main Camera 184 | m_TagString: MainCamera 185 | m_Icon: {fileID: 0} 186 | m_NavMeshLayer: 0 187 | m_StaticEditorFlags: 0 188 | m_IsActive: 1 189 | --- !u!81 &497225775 190 | AudioListener: 191 | m_ObjectHideFlags: 0 192 | m_PrefabParentObject: {fileID: 0} 193 | m_PrefabInternal: {fileID: 0} 194 | m_GameObject: {fileID: 497225774} 195 | m_Enabled: 1 196 | --- !u!124 &497225776 197 | Behaviour: 198 | m_ObjectHideFlags: 0 199 | m_PrefabParentObject: {fileID: 0} 200 | m_PrefabInternal: {fileID: 0} 201 | m_GameObject: {fileID: 497225774} 202 | m_Enabled: 1 203 | --- !u!92 &497225777 204 | Behaviour: 205 | m_ObjectHideFlags: 0 206 | m_PrefabParentObject: {fileID: 0} 207 | m_PrefabInternal: {fileID: 0} 208 | m_GameObject: {fileID: 497225774} 209 | m_Enabled: 1 210 | --- !u!20 &497225778 211 | Camera: 212 | m_ObjectHideFlags: 0 213 | m_PrefabParentObject: {fileID: 0} 214 | m_PrefabInternal: {fileID: 0} 215 | m_GameObject: {fileID: 497225774} 216 | m_Enabled: 1 217 | serializedVersion: 2 218 | m_ClearFlags: 1 219 | m_BackGroundColor: {r: .192156866, g: .301960796, b: .474509805, a: .0196078438} 220 | m_NormalizedViewPortRect: 221 | serializedVersion: 2 222 | x: 0 223 | y: 0 224 | width: 1 225 | height: 1 226 | near clip plane: .300000012 227 | far clip plane: 1000 228 | field of view: 60 229 | orthographic: 1 230 | orthographic size: 5 231 | m_Depth: -1 232 | m_CullingMask: 233 | serializedVersion: 2 234 | m_Bits: 4294967295 235 | m_RenderingPath: -1 236 | m_TargetTexture: {fileID: 0} 237 | m_TargetDisplay: 0 238 | m_TargetEye: 3 239 | m_HDR: 0 240 | m_OcclusionCulling: 1 241 | m_StereoConvergence: 10 242 | m_StereoSeparation: .0219999999 243 | m_StereoMirrorMode: 0 244 | --- !u!4 &497225779 245 | Transform: 246 | m_ObjectHideFlags: 0 247 | m_PrefabParentObject: {fileID: 0} 248 | m_PrefabInternal: {fileID: 0} 249 | m_GameObject: {fileID: 497225774} 250 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} 251 | m_LocalPosition: {x: 0, y: 0, z: -10} 252 | m_LocalScale: {x: 1, y: 1, z: 1} 253 | m_Children: [] 254 | m_Father: {fileID: 0} 255 | m_RootOrder: 0 256 | -------------------------------------------------------------------------------- /Assets/SimpleSpriteAnimatorDemo/Scenes/Demo.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 72192a1e9d38e7245b7749a3592ce1d5 3 | timeCreated: 1443208609 4 | licenseType: Free 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/SimpleSpriteAnimatorDemo/Scripts.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 53f77bc6191e1e8448cd6666fcccf7c5 3 | folderAsset: yes 4 | timeCreated: 1448668883 5 | licenseType: Free 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/SimpleSpriteAnimatorDemo/Scripts/AnimatorTester.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using SimpleSpriteAnimator; 3 | 4 | public class AnimatorTester : MonoBehaviour 5 | { 6 | private SpriteAnimator spriteAnimator; 7 | 8 | void Start () 9 | { 10 | spriteAnimator = GetComponent(); 11 | } 12 | 13 | private void OnGUI() 14 | { 15 | if (GUI.Button(new Rect(10, 10, 150, 30), "Play Walk Animation")) 16 | { 17 | spriteAnimator.Play("Walk"); 18 | } 19 | 20 | if (GUI.Button(new Rect(10, 50, 150, 30), "Play Climb Animation")) 21 | { 22 | spriteAnimator.Play("Climb"); 23 | } 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /Assets/SimpleSpriteAnimatorDemo/Scripts/AnimatorTester.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: df73f12254f3d4243ad3a9e04739c707 3 | timeCreated: 1448668651 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/SimpleSpriteAnimatorDemo/Sprites.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 80743a4ff8e2ee548ac67a1a8acf73b8 3 | folderAsset: yes 4 | timeCreated: 1443208597 5 | licenseType: Free 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/SimpleSpriteAnimatorDemo/Sprites/Alien.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RyanNielson/SimpleSpriteAnimator/179836f2aaf78859fc5c38bf875d745c71f6650f/Assets/SimpleSpriteAnimatorDemo/Sprites/Alien.png -------------------------------------------------------------------------------- /Assets/SimpleSpriteAnimatorDemo/Sprites/Alien.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c5768973a0bf4674184626e217a7e66d 3 | timeCreated: 1448753696 4 | licenseType: Free 5 | TextureImporter: 6 | fileIDToRecycleName: 7 | 21300000: Spritesheet_0 8 | 21300002: Spritesheet_1 9 | 21300004: Spritesheet_2 10 | 21300006: Spritesheet_3 11 | 21300008: Spritesheet_4 12 | 21300010: Spritesheet_5 13 | 21300012: Spritesheet_6 14 | 21300014: Spritesheet_7 15 | 21300016: Spritesheet_8 16 | 21300018: Spritesheet_9 17 | 21300020: Spritesheet_10 18 | 21300022: Spritesheet_11 19 | 21300024: Spritesheet_12 20 | 21300026: Spritesheet_13 21 | 21300028: Spritesheet_14 22 | 21300030: Spritesheet_15 23 | 21300032: Spritesheet_16 24 | 21300034: Spritesheet_17 25 | 21300036: Spritesheet_18 26 | 21300038: Spritesheet_19 27 | 21300040: Spritesheet_20 28 | 21300042: Spritesheet_21 29 | 21300044: Spritesheet_22 30 | 21300046: Spritesheet_23 31 | 21300048: Spritesheet_24 32 | 21300050: Spritesheet_25 33 | 21300052: Spritesheet_26 34 | 21300054: Spritesheet_27 35 | 21300056: Spritesheet_28 36 | 21300058: Spritesheet_29 37 | 21300060: Spritesheet_30 38 | 21300062: Spritesheet_31 39 | 21300064: Spritesheet_32 40 | 21300066: Spritesheet_33 41 | 21300068: Spritesheet_34 42 | 21300070: Spritesheet_35 43 | 21300072: Spritesheet_36 44 | 21300074: Spritesheet_37 45 | 21300076: Spritesheet_38 46 | 21300078: Spritesheet_39 47 | 21300080: Spritesheet_40 48 | 21300082: Spritesheet_41 49 | 21300084: Spritesheet_42 50 | 21300086: Spritesheet_43 51 | 21300088: Spritesheet_44 52 | 21300090: Spritesheet_45 53 | 21300092: Spritesheet_46 54 | 21300094: Spritesheet_47 55 | 21300096: Spritesheet_48 56 | 21300098: Spritesheet_49 57 | 21300100: Spritesheet_50 58 | 21300102: Spritesheet_51 59 | 21300104: Spritesheet_52 60 | 21300106: Spritesheet_53 61 | 21300108: Spritesheet_54 62 | serializedVersion: 2 63 | mipmaps: 64 | mipMapMode: 0 65 | enableMipMap: 0 66 | linearTexture: 0 67 | correctGamma: 0 68 | fadeOut: 0 69 | borderMipMap: 0 70 | mipMapFadeDistanceStart: 1 71 | mipMapFadeDistanceEnd: 3 72 | bumpmap: 73 | convertToNormalMap: 0 74 | externalNormalMap: 0 75 | heightScale: .25 76 | normalMapFilter: 0 77 | isReadable: 0 78 | grayScaleToAlpha: 0 79 | generateCubemap: 0 80 | cubemapConvolution: 0 81 | cubemapConvolutionSteps: 8 82 | cubemapConvolutionExponent: 1.5 83 | seamlessCubemap: 0 84 | textureFormat: -3 85 | maxTextureSize: 2048 86 | textureSettings: 87 | filterMode: 2 88 | aniso: 16 89 | mipBias: -1 90 | wrapMode: 1 91 | nPOTScale: 0 92 | lightmap: 0 93 | rGBM: 0 94 | compressionQuality: 50 95 | allowsAlphaSplitting: 0 96 | spriteMode: 2 97 | spriteExtrude: 1 98 | spriteMeshType: 1 99 | alignment: 0 100 | spritePivot: {x: .5, y: .5} 101 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 102 | spritePixelsToUnits: 100 103 | alphaIsTransparency: 1 104 | textureType: 8 105 | buildTargetSettings: [] 106 | spriteSheet: 107 | sprites: 108 | - name: Spritesheet_0 109 | rect: 110 | serializedVersion: 2 111 | x: 0 112 | y: 1792 113 | width: 128 114 | height: 256 115 | alignment: 0 116 | pivot: {x: 0, y: 0} 117 | border: {x: 0, y: 0, z: 0, w: 0} 118 | - name: Spritesheet_1 119 | rect: 120 | serializedVersion: 2 121 | x: 128 122 | y: 1792 123 | width: 128 124 | height: 256 125 | alignment: 0 126 | pivot: {x: 0, y: 0} 127 | border: {x: 0, y: 0, z: 0, w: 0} 128 | - name: Spritesheet_2 129 | rect: 130 | serializedVersion: 2 131 | x: 256 132 | y: 1792 133 | width: 128 134 | height: 256 135 | alignment: 0 136 | pivot: {x: 0, y: 0} 137 | border: {x: 0, y: 0, z: 0, w: 0} 138 | - name: Spritesheet_3 139 | rect: 140 | serializedVersion: 2 141 | x: 384 142 | y: 1792 143 | width: 128 144 | height: 256 145 | alignment: 0 146 | pivot: {x: 0, y: 0} 147 | border: {x: 0, y: 0, z: 0, w: 0} 148 | - name: Spritesheet_4 149 | rect: 150 | serializedVersion: 2 151 | x: 512 152 | y: 1792 153 | width: 128 154 | height: 256 155 | alignment: 0 156 | pivot: {x: 0, y: 0} 157 | border: {x: 0, y: 0, z: 0, w: 0} 158 | - name: Spritesheet_5 159 | rect: 160 | serializedVersion: 2 161 | x: 640 162 | y: 1792 163 | width: 128 164 | height: 256 165 | alignment: 0 166 | pivot: {x: 0, y: 0} 167 | border: {x: 0, y: 0, z: 0, w: 0} 168 | - name: Spritesheet_6 169 | rect: 170 | serializedVersion: 2 171 | x: 768 172 | y: 1792 173 | width: 128 174 | height: 256 175 | alignment: 0 176 | pivot: {x: 0, y: 0} 177 | border: {x: 0, y: 0, z: 0, w: 0} 178 | - name: Spritesheet_7 179 | rect: 180 | serializedVersion: 2 181 | x: 0 182 | y: 1536 183 | width: 128 184 | height: 256 185 | alignment: 0 186 | pivot: {x: 0, y: 0} 187 | border: {x: 0, y: 0, z: 0, w: 0} 188 | - name: Spritesheet_8 189 | rect: 190 | serializedVersion: 2 191 | x: 128 192 | y: 1536 193 | width: 128 194 | height: 256 195 | alignment: 0 196 | pivot: {x: 0, y: 0} 197 | border: {x: 0, y: 0, z: 0, w: 0} 198 | - name: Spritesheet_9 199 | rect: 200 | serializedVersion: 2 201 | x: 256 202 | y: 1536 203 | width: 128 204 | height: 256 205 | alignment: 0 206 | pivot: {x: 0, y: 0} 207 | border: {x: 0, y: 0, z: 0, w: 0} 208 | - name: Spritesheet_10 209 | rect: 210 | serializedVersion: 2 211 | x: 384 212 | y: 1536 213 | width: 128 214 | height: 256 215 | alignment: 0 216 | pivot: {x: 0, y: 0} 217 | border: {x: 0, y: 0, z: 0, w: 0} 218 | - name: Spritesheet_11 219 | rect: 220 | serializedVersion: 2 221 | x: 512 222 | y: 1536 223 | width: 128 224 | height: 256 225 | alignment: 0 226 | pivot: {x: 0, y: 0} 227 | border: {x: 0, y: 0, z: 0, w: 0} 228 | - name: Spritesheet_12 229 | rect: 230 | serializedVersion: 2 231 | x: 640 232 | y: 1536 233 | width: 128 234 | height: 256 235 | alignment: 0 236 | pivot: {x: 0, y: 0} 237 | border: {x: 0, y: 0, z: 0, w: 0} 238 | - name: Spritesheet_13 239 | rect: 240 | serializedVersion: 2 241 | x: 768 242 | y: 1536 243 | width: 128 244 | height: 256 245 | alignment: 0 246 | pivot: {x: 0, y: 0} 247 | border: {x: 0, y: 0, z: 0, w: 0} 248 | - name: Spritesheet_14 249 | rect: 250 | serializedVersion: 2 251 | x: 0 252 | y: 1280 253 | width: 128 254 | height: 256 255 | alignment: 0 256 | pivot: {x: 0, y: 0} 257 | border: {x: 0, y: 0, z: 0, w: 0} 258 | - name: Spritesheet_15 259 | rect: 260 | serializedVersion: 2 261 | x: 128 262 | y: 1280 263 | width: 128 264 | height: 256 265 | alignment: 0 266 | pivot: {x: 0, y: 0} 267 | border: {x: 0, y: 0, z: 0, w: 0} 268 | - name: Spritesheet_16 269 | rect: 270 | serializedVersion: 2 271 | x: 256 272 | y: 1280 273 | width: 128 274 | height: 256 275 | alignment: 0 276 | pivot: {x: 0, y: 0} 277 | border: {x: 0, y: 0, z: 0, w: 0} 278 | - name: Spritesheet_17 279 | rect: 280 | serializedVersion: 2 281 | x: 384 282 | y: 1280 283 | width: 128 284 | height: 256 285 | alignment: 0 286 | pivot: {x: 0, y: 0} 287 | border: {x: 0, y: 0, z: 0, w: 0} 288 | - name: Spritesheet_18 289 | rect: 290 | serializedVersion: 2 291 | x: 512 292 | y: 1280 293 | width: 128 294 | height: 256 295 | alignment: 0 296 | pivot: {x: 0, y: 0} 297 | border: {x: 0, y: 0, z: 0, w: 0} 298 | - name: Spritesheet_19 299 | rect: 300 | serializedVersion: 2 301 | x: 640 302 | y: 1280 303 | width: 128 304 | height: 256 305 | alignment: 0 306 | pivot: {x: 0, y: 0} 307 | border: {x: 0, y: 0, z: 0, w: 0} 308 | - name: Spritesheet_20 309 | rect: 310 | serializedVersion: 2 311 | x: 768 312 | y: 1280 313 | width: 128 314 | height: 256 315 | alignment: 0 316 | pivot: {x: 0, y: 0} 317 | border: {x: 0, y: 0, z: 0, w: 0} 318 | - name: Spritesheet_21 319 | rect: 320 | serializedVersion: 2 321 | x: 0 322 | y: 1024 323 | width: 128 324 | height: 256 325 | alignment: 0 326 | pivot: {x: 0, y: 0} 327 | border: {x: 0, y: 0, z: 0, w: 0} 328 | - name: Spritesheet_22 329 | rect: 330 | serializedVersion: 2 331 | x: 128 332 | y: 1024 333 | width: 128 334 | height: 256 335 | alignment: 0 336 | pivot: {x: 0, y: 0} 337 | border: {x: 0, y: 0, z: 0, w: 0} 338 | - name: Spritesheet_23 339 | rect: 340 | serializedVersion: 2 341 | x: 256 342 | y: 1024 343 | width: 128 344 | height: 256 345 | alignment: 0 346 | pivot: {x: 0, y: 0} 347 | border: {x: 0, y: 0, z: 0, w: 0} 348 | - name: Spritesheet_24 349 | rect: 350 | serializedVersion: 2 351 | x: 384 352 | y: 1024 353 | width: 128 354 | height: 256 355 | alignment: 0 356 | pivot: {x: 0, y: 0} 357 | border: {x: 0, y: 0, z: 0, w: 0} 358 | - name: Spritesheet_25 359 | rect: 360 | serializedVersion: 2 361 | x: 512 362 | y: 1024 363 | width: 128 364 | height: 256 365 | alignment: 0 366 | pivot: {x: 0, y: 0} 367 | border: {x: 0, y: 0, z: 0, w: 0} 368 | - name: Spritesheet_26 369 | rect: 370 | serializedVersion: 2 371 | x: 640 372 | y: 1024 373 | width: 128 374 | height: 256 375 | alignment: 0 376 | pivot: {x: 0, y: 0} 377 | border: {x: 0, y: 0, z: 0, w: 0} 378 | - name: Spritesheet_27 379 | rect: 380 | serializedVersion: 2 381 | x: 768 382 | y: 1024 383 | width: 128 384 | height: 256 385 | alignment: 0 386 | pivot: {x: 0, y: 0} 387 | border: {x: 0, y: 0, z: 0, w: 0} 388 | - name: Spritesheet_28 389 | rect: 390 | serializedVersion: 2 391 | x: 0 392 | y: 768 393 | width: 128 394 | height: 256 395 | alignment: 0 396 | pivot: {x: 0, y: 0} 397 | border: {x: 0, y: 0, z: 0, w: 0} 398 | - name: Spritesheet_29 399 | rect: 400 | serializedVersion: 2 401 | x: 128 402 | y: 768 403 | width: 128 404 | height: 256 405 | alignment: 0 406 | pivot: {x: 0, y: 0} 407 | border: {x: 0, y: 0, z: 0, w: 0} 408 | - name: Spritesheet_30 409 | rect: 410 | serializedVersion: 2 411 | x: 256 412 | y: 768 413 | width: 128 414 | height: 256 415 | alignment: 0 416 | pivot: {x: 0, y: 0} 417 | border: {x: 0, y: 0, z: 0, w: 0} 418 | - name: Spritesheet_31 419 | rect: 420 | serializedVersion: 2 421 | x: 384 422 | y: 768 423 | width: 128 424 | height: 256 425 | alignment: 0 426 | pivot: {x: 0, y: 0} 427 | border: {x: 0, y: 0, z: 0, w: 0} 428 | - name: Spritesheet_32 429 | rect: 430 | serializedVersion: 2 431 | x: 512 432 | y: 768 433 | width: 128 434 | height: 256 435 | alignment: 0 436 | pivot: {x: 0, y: 0} 437 | border: {x: 0, y: 0, z: 0, w: 0} 438 | - name: Spritesheet_33 439 | rect: 440 | serializedVersion: 2 441 | x: 640 442 | y: 768 443 | width: 128 444 | height: 256 445 | alignment: 0 446 | pivot: {x: 0, y: 0} 447 | border: {x: 0, y: 0, z: 0, w: 0} 448 | - name: Spritesheet_34 449 | rect: 450 | serializedVersion: 2 451 | x: 768 452 | y: 768 453 | width: 128 454 | height: 256 455 | alignment: 0 456 | pivot: {x: 0, y: 0} 457 | border: {x: 0, y: 0, z: 0, w: 0} 458 | - name: Spritesheet_35 459 | rect: 460 | serializedVersion: 2 461 | x: 0 462 | y: 512 463 | width: 128 464 | height: 256 465 | alignment: 0 466 | pivot: {x: 0, y: 0} 467 | border: {x: 0, y: 0, z: 0, w: 0} 468 | - name: Spritesheet_36 469 | rect: 470 | serializedVersion: 2 471 | x: 128 472 | y: 512 473 | width: 128 474 | height: 256 475 | alignment: 0 476 | pivot: {x: 0, y: 0} 477 | border: {x: 0, y: 0, z: 0, w: 0} 478 | - name: Spritesheet_37 479 | rect: 480 | serializedVersion: 2 481 | x: 256 482 | y: 512 483 | width: 128 484 | height: 256 485 | alignment: 0 486 | pivot: {x: 0, y: 0} 487 | border: {x: 0, y: 0, z: 0, w: 0} 488 | - name: Spritesheet_38 489 | rect: 490 | serializedVersion: 2 491 | x: 384 492 | y: 512 493 | width: 128 494 | height: 256 495 | alignment: 0 496 | pivot: {x: 0, y: 0} 497 | border: {x: 0, y: 0, z: 0, w: 0} 498 | - name: Spritesheet_39 499 | rect: 500 | serializedVersion: 2 501 | x: 512 502 | y: 512 503 | width: 128 504 | height: 256 505 | alignment: 0 506 | pivot: {x: 0, y: 0} 507 | border: {x: 0, y: 0, z: 0, w: 0} 508 | - name: Spritesheet_40 509 | rect: 510 | serializedVersion: 2 511 | x: 640 512 | y: 512 513 | width: 128 514 | height: 256 515 | alignment: 0 516 | pivot: {x: 0, y: 0} 517 | border: {x: 0, y: 0, z: 0, w: 0} 518 | - name: Spritesheet_41 519 | rect: 520 | serializedVersion: 2 521 | x: 768 522 | y: 512 523 | width: 128 524 | height: 256 525 | alignment: 0 526 | pivot: {x: 0, y: 0} 527 | border: {x: 0, y: 0, z: 0, w: 0} 528 | - name: Spritesheet_42 529 | rect: 530 | serializedVersion: 2 531 | x: 0 532 | y: 256 533 | width: 128 534 | height: 256 535 | alignment: 0 536 | pivot: {x: 0, y: 0} 537 | border: {x: 0, y: 0, z: 0, w: 0} 538 | - name: Spritesheet_43 539 | rect: 540 | serializedVersion: 2 541 | x: 128 542 | y: 256 543 | width: 128 544 | height: 256 545 | alignment: 0 546 | pivot: {x: 0, y: 0} 547 | border: {x: 0, y: 0, z: 0, w: 0} 548 | - name: Spritesheet_44 549 | rect: 550 | serializedVersion: 2 551 | x: 256 552 | y: 256 553 | width: 128 554 | height: 256 555 | alignment: 0 556 | pivot: {x: 0, y: 0} 557 | border: {x: 0, y: 0, z: 0, w: 0} 558 | - name: Spritesheet_45 559 | rect: 560 | serializedVersion: 2 561 | x: 384 562 | y: 256 563 | width: 128 564 | height: 256 565 | alignment: 0 566 | pivot: {x: 0, y: 0} 567 | border: {x: 0, y: 0, z: 0, w: 0} 568 | - name: Spritesheet_46 569 | rect: 570 | serializedVersion: 2 571 | x: 512 572 | y: 256 573 | width: 128 574 | height: 256 575 | alignment: 0 576 | pivot: {x: 0, y: 0} 577 | border: {x: 0, y: 0, z: 0, w: 0} 578 | - name: Spritesheet_47 579 | rect: 580 | serializedVersion: 2 581 | x: 640 582 | y: 256 583 | width: 128 584 | height: 256 585 | alignment: 0 586 | pivot: {x: 0, y: 0} 587 | border: {x: 0, y: 0, z: 0, w: 0} 588 | - name: Spritesheet_48 589 | rect: 590 | serializedVersion: 2 591 | x: 768 592 | y: 256 593 | width: 128 594 | height: 256 595 | alignment: 0 596 | pivot: {x: 0, y: 0} 597 | border: {x: 0, y: 0, z: 0, w: 0} 598 | - name: Spritesheet_49 599 | rect: 600 | serializedVersion: 2 601 | x: 0 602 | y: 0 603 | width: 128 604 | height: 256 605 | alignment: 0 606 | pivot: {x: 0, y: 0} 607 | border: {x: 0, y: 0, z: 0, w: 0} 608 | - name: Spritesheet_50 609 | rect: 610 | serializedVersion: 2 611 | x: 128 612 | y: 0 613 | width: 128 614 | height: 256 615 | alignment: 0 616 | pivot: {x: 0, y: 0} 617 | border: {x: 0, y: 0, z: 0, w: 0} 618 | - name: Spritesheet_51 619 | rect: 620 | serializedVersion: 2 621 | x: 256 622 | y: 0 623 | width: 128 624 | height: 256 625 | alignment: 0 626 | pivot: {x: 0, y: 0} 627 | border: {x: 0, y: 0, z: 0, w: 0} 628 | - name: Spritesheet_52 629 | rect: 630 | serializedVersion: 2 631 | x: 384 632 | y: 0 633 | width: 128 634 | height: 256 635 | alignment: 0 636 | pivot: {x: 0, y: 0} 637 | border: {x: 0, y: 0, z: 0, w: 0} 638 | - name: Spritesheet_53 639 | rect: 640 | serializedVersion: 2 641 | x: 512 642 | y: 0 643 | width: 128 644 | height: 256 645 | alignment: 0 646 | pivot: {x: 0, y: 0} 647 | border: {x: 0, y: 0, z: 0, w: 0} 648 | - name: Spritesheet_54 649 | rect: 650 | serializedVersion: 2 651 | x: 640 652 | y: 0 653 | width: 128 654 | height: 256 655 | alignment: 0 656 | pivot: {x: 0, y: 0} 657 | border: {x: 0, y: 0, z: 0, w: 0} 658 | spritePackingTag: 659 | userData: 660 | assetBundleName: 661 | assetBundleVariant: 662 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2015 Ryan Nielson 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /ProjectSettings/AudioManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!11 &1 4 | AudioManager: 5 | m_ObjectHideFlags: 0 6 | m_Volume: 1 7 | Rolloff Scale: 1 8 | Doppler Factor: 1 9 | Default Speaker Mode: 2 10 | m_SampleRate: 0 11 | m_DSPBufferSize: 0 12 | m_VirtualVoiceCount: 512 13 | m_RealVoiceCount: 32 14 | m_SpatializerPlugin: 15 | m_DisableAudio: 0 16 | -------------------------------------------------------------------------------- /ProjectSettings/DynamicsManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!55 &1 4 | PhysicsManager: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 2 7 | m_Gravity: {x: 0, y: -9.81000042, z: 0} 8 | m_DefaultMaterial: {fileID: 0} 9 | m_BounceThreshold: 2 10 | m_SleepThreshold: .00499999989 11 | m_DefaultContactOffset: .00999999978 12 | m_SolverIterationCount: 6 13 | m_QueriesHitTriggers: 1 14 | m_EnableAdaptiveForce: 0 15 | m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 16 | -------------------------------------------------------------------------------- /ProjectSettings/EditorBuildSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!1045 &1 4 | EditorBuildSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 2 7 | m_Scenes: [] 8 | -------------------------------------------------------------------------------- /ProjectSettings/EditorSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!159 &1 4 | EditorSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 3 7 | m_ExternalVersionControlSupport: Hidden Meta Files 8 | m_SerializationMode: 2 9 | m_WebSecurityEmulationEnabled: 0 10 | m_WebSecurityEmulationHostUrl: http://www.mydomain.com/mygame.unity3d 11 | m_DefaultBehaviorMode: 1 12 | m_SpritePackerMode: 2 13 | m_SpritePackerPaddingPower: 1 14 | m_ProjectGenerationIncludedExtensions: txt;xml;fnt;cd 15 | m_ProjectGenerationRootNamespace: 16 | -------------------------------------------------------------------------------- /ProjectSettings/GraphicsSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!30 &1 4 | GraphicsSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 4 7 | m_Deferred: 8 | m_Mode: 1 9 | m_Shader: {fileID: 69, guid: 0000000000000000f000000000000000, type: 0} 10 | m_DeferredReflections: 11 | m_Mode: 1 12 | m_Shader: {fileID: 74, guid: 0000000000000000f000000000000000, type: 0} 13 | m_LegacyDeferred: 14 | m_Mode: 1 15 | m_Shader: {fileID: 63, guid: 0000000000000000f000000000000000, type: 0} 16 | m_AlwaysIncludedShaders: 17 | - {fileID: 7, guid: 0000000000000000f000000000000000, type: 0} 18 | - {fileID: 15104, guid: 0000000000000000f000000000000000, type: 0} 19 | - {fileID: 15105, guid: 0000000000000000f000000000000000, type: 0} 20 | - {fileID: 15106, guid: 0000000000000000f000000000000000, type: 0} 21 | - {fileID: 10770, guid: 0000000000000000f000000000000000, type: 0} 22 | - {fileID: 10782, guid: 0000000000000000f000000000000000, type: 0} 23 | m_PreloadedShaders: [] 24 | m_LightmapStripping: 0 25 | m_LightmapKeepPlain: 1 26 | m_LightmapKeepDirCombined: 1 27 | m_LightmapKeepDirSeparate: 1 28 | m_LightmapKeepDynamicPlain: 1 29 | m_LightmapKeepDynamicDirCombined: 1 30 | m_LightmapKeepDynamicDirSeparate: 1 31 | m_FogStripping: 0 32 | m_FogKeepLinear: 1 33 | m_FogKeepExp: 1 34 | m_FogKeepExp2: 1 35 | -------------------------------------------------------------------------------- /ProjectSettings/InputManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!13 &1 4 | InputManager: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 2 7 | m_Axes: 8 | - serializedVersion: 3 9 | m_Name: Horizontal 10 | descriptiveName: 11 | descriptiveNegativeName: 12 | negativeButton: left 13 | positiveButton: right 14 | altNegativeButton: a 15 | altPositiveButton: d 16 | gravity: 3 17 | dead: .00100000005 18 | sensitivity: 3 19 | snap: 1 20 | invert: 0 21 | type: 0 22 | axis: 0 23 | joyNum: 0 24 | - serializedVersion: 3 25 | m_Name: Vertical 26 | descriptiveName: 27 | descriptiveNegativeName: 28 | negativeButton: down 29 | positiveButton: up 30 | altNegativeButton: s 31 | altPositiveButton: w 32 | gravity: 3 33 | dead: .00100000005 34 | sensitivity: 3 35 | snap: 1 36 | invert: 0 37 | type: 0 38 | axis: 0 39 | joyNum: 0 40 | - serializedVersion: 3 41 | m_Name: Fire1 42 | descriptiveName: 43 | descriptiveNegativeName: 44 | negativeButton: 45 | positiveButton: left ctrl 46 | altNegativeButton: 47 | altPositiveButton: mouse 0 48 | gravity: 1000 49 | dead: .00100000005 50 | sensitivity: 1000 51 | snap: 0 52 | invert: 0 53 | type: 0 54 | axis: 0 55 | joyNum: 0 56 | - serializedVersion: 3 57 | m_Name: Fire2 58 | descriptiveName: 59 | descriptiveNegativeName: 60 | negativeButton: 61 | positiveButton: left alt 62 | altNegativeButton: 63 | altPositiveButton: mouse 1 64 | gravity: 1000 65 | dead: .00100000005 66 | sensitivity: 1000 67 | snap: 0 68 | invert: 0 69 | type: 0 70 | axis: 0 71 | joyNum: 0 72 | - serializedVersion: 3 73 | m_Name: Fire3 74 | descriptiveName: 75 | descriptiveNegativeName: 76 | negativeButton: 77 | positiveButton: left shift 78 | altNegativeButton: 79 | altPositiveButton: mouse 2 80 | gravity: 1000 81 | dead: .00100000005 82 | sensitivity: 1000 83 | snap: 0 84 | invert: 0 85 | type: 0 86 | axis: 0 87 | joyNum: 0 88 | - serializedVersion: 3 89 | m_Name: Jump 90 | descriptiveName: 91 | descriptiveNegativeName: 92 | negativeButton: 93 | positiveButton: space 94 | altNegativeButton: 95 | altPositiveButton: 96 | gravity: 1000 97 | dead: .00100000005 98 | sensitivity: 1000 99 | snap: 0 100 | invert: 0 101 | type: 0 102 | axis: 0 103 | joyNum: 0 104 | - serializedVersion: 3 105 | m_Name: Mouse X 106 | descriptiveName: 107 | descriptiveNegativeName: 108 | negativeButton: 109 | positiveButton: 110 | altNegativeButton: 111 | altPositiveButton: 112 | gravity: 0 113 | dead: 0 114 | sensitivity: .100000001 115 | snap: 0 116 | invert: 0 117 | type: 1 118 | axis: 0 119 | joyNum: 0 120 | - serializedVersion: 3 121 | m_Name: Mouse Y 122 | descriptiveName: 123 | descriptiveNegativeName: 124 | negativeButton: 125 | positiveButton: 126 | altNegativeButton: 127 | altPositiveButton: 128 | gravity: 0 129 | dead: 0 130 | sensitivity: .100000001 131 | snap: 0 132 | invert: 0 133 | type: 1 134 | axis: 1 135 | joyNum: 0 136 | - serializedVersion: 3 137 | m_Name: Mouse ScrollWheel 138 | descriptiveName: 139 | descriptiveNegativeName: 140 | negativeButton: 141 | positiveButton: 142 | altNegativeButton: 143 | altPositiveButton: 144 | gravity: 0 145 | dead: 0 146 | sensitivity: .100000001 147 | snap: 0 148 | invert: 0 149 | type: 1 150 | axis: 2 151 | joyNum: 0 152 | - serializedVersion: 3 153 | m_Name: Horizontal 154 | descriptiveName: 155 | descriptiveNegativeName: 156 | negativeButton: 157 | positiveButton: 158 | altNegativeButton: 159 | altPositiveButton: 160 | gravity: 0 161 | dead: .189999998 162 | sensitivity: 1 163 | snap: 0 164 | invert: 0 165 | type: 2 166 | axis: 0 167 | joyNum: 0 168 | - serializedVersion: 3 169 | m_Name: Vertical 170 | descriptiveName: 171 | descriptiveNegativeName: 172 | negativeButton: 173 | positiveButton: 174 | altNegativeButton: 175 | altPositiveButton: 176 | gravity: 0 177 | dead: .189999998 178 | sensitivity: 1 179 | snap: 0 180 | invert: 1 181 | type: 2 182 | axis: 1 183 | joyNum: 0 184 | - serializedVersion: 3 185 | m_Name: Fire1 186 | descriptiveName: 187 | descriptiveNegativeName: 188 | negativeButton: 189 | positiveButton: joystick button 0 190 | altNegativeButton: 191 | altPositiveButton: 192 | gravity: 1000 193 | dead: .00100000005 194 | sensitivity: 1000 195 | snap: 0 196 | invert: 0 197 | type: 0 198 | axis: 0 199 | joyNum: 0 200 | - serializedVersion: 3 201 | m_Name: Fire2 202 | descriptiveName: 203 | descriptiveNegativeName: 204 | negativeButton: 205 | positiveButton: joystick button 1 206 | altNegativeButton: 207 | altPositiveButton: 208 | gravity: 1000 209 | dead: .00100000005 210 | sensitivity: 1000 211 | snap: 0 212 | invert: 0 213 | type: 0 214 | axis: 0 215 | joyNum: 0 216 | - serializedVersion: 3 217 | m_Name: Fire3 218 | descriptiveName: 219 | descriptiveNegativeName: 220 | negativeButton: 221 | positiveButton: joystick button 2 222 | altNegativeButton: 223 | altPositiveButton: 224 | gravity: 1000 225 | dead: .00100000005 226 | sensitivity: 1000 227 | snap: 0 228 | invert: 0 229 | type: 0 230 | axis: 0 231 | joyNum: 0 232 | - serializedVersion: 3 233 | m_Name: Jump 234 | descriptiveName: 235 | descriptiveNegativeName: 236 | negativeButton: 237 | positiveButton: joystick button 3 238 | altNegativeButton: 239 | altPositiveButton: 240 | gravity: 1000 241 | dead: .00100000005 242 | sensitivity: 1000 243 | snap: 0 244 | invert: 0 245 | type: 0 246 | axis: 0 247 | joyNum: 0 248 | - serializedVersion: 3 249 | m_Name: Submit 250 | descriptiveName: 251 | descriptiveNegativeName: 252 | negativeButton: 253 | positiveButton: return 254 | altNegativeButton: 255 | altPositiveButton: joystick button 0 256 | gravity: 1000 257 | dead: .00100000005 258 | sensitivity: 1000 259 | snap: 0 260 | invert: 0 261 | type: 0 262 | axis: 0 263 | joyNum: 0 264 | - serializedVersion: 3 265 | m_Name: Submit 266 | descriptiveName: 267 | descriptiveNegativeName: 268 | negativeButton: 269 | positiveButton: enter 270 | altNegativeButton: 271 | altPositiveButton: space 272 | gravity: 1000 273 | dead: .00100000005 274 | sensitivity: 1000 275 | snap: 0 276 | invert: 0 277 | type: 0 278 | axis: 0 279 | joyNum: 0 280 | - serializedVersion: 3 281 | m_Name: Cancel 282 | descriptiveName: 283 | descriptiveNegativeName: 284 | negativeButton: 285 | positiveButton: escape 286 | altNegativeButton: 287 | altPositiveButton: joystick button 1 288 | gravity: 1000 289 | dead: .00100000005 290 | sensitivity: 1000 291 | snap: 0 292 | invert: 0 293 | type: 0 294 | axis: 0 295 | joyNum: 0 296 | -------------------------------------------------------------------------------- /ProjectSettings/NavMeshAreas.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!126 &1 4 | NavMeshAreas: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 2 7 | areas: 8 | - name: Walkable 9 | cost: 1 10 | - name: Not Walkable 11 | cost: 1 12 | - name: Jump 13 | cost: 2 14 | - name: 15 | cost: 1 16 | - name: 17 | cost: 1 18 | - name: 19 | cost: 1 20 | - name: 21 | cost: 1 22 | - name: 23 | cost: 1 24 | - name: 25 | cost: 1 26 | - name: 27 | cost: 1 28 | - name: 29 | cost: 1 30 | - name: 31 | cost: 1 32 | - name: 33 | cost: 1 34 | - name: 35 | cost: 1 36 | - name: 37 | cost: 1 38 | - name: 39 | cost: 1 40 | - name: 41 | cost: 1 42 | - name: 43 | cost: 1 44 | - name: 45 | cost: 1 46 | - name: 47 | cost: 1 48 | - name: 49 | cost: 1 50 | - name: 51 | cost: 1 52 | - name: 53 | cost: 1 54 | - name: 55 | cost: 1 56 | - name: 57 | cost: 1 58 | - name: 59 | cost: 1 60 | - name: 61 | cost: 1 62 | - name: 63 | cost: 1 64 | - name: 65 | cost: 1 66 | - name: 67 | cost: 1 68 | - name: 69 | cost: 1 70 | - name: 71 | cost: 1 72 | -------------------------------------------------------------------------------- /ProjectSettings/NetworkManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!149 &1 4 | NetworkManager: 5 | m_ObjectHideFlags: 0 6 | m_DebugLevel: 0 7 | m_Sendrate: 15 8 | m_AssetToPrefab: {} 9 | -------------------------------------------------------------------------------- /ProjectSettings/Physics2DSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!19 &1 4 | Physics2DSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 2 7 | m_Gravity: {x: 0, y: -9.81000042} 8 | m_DefaultMaterial: {fileID: 0} 9 | m_VelocityIterations: 8 10 | m_PositionIterations: 3 11 | m_VelocityThreshold: 1 12 | m_MaxLinearCorrection: .200000003 13 | m_MaxAngularCorrection: 8 14 | m_MaxTranslationSpeed: 100 15 | m_MaxRotationSpeed: 360 16 | m_MinPenetrationForPenalty: .00999999978 17 | m_BaumgarteScale: .200000003 18 | m_BaumgarteTimeOfImpactScale: .75 19 | m_TimeToSleep: .5 20 | m_LinearSleepTolerance: .00999999978 21 | m_AngularSleepTolerance: 2 22 | m_QueriesHitTriggers: 1 23 | m_QueriesStartInColliders: 1 24 | m_ChangeStopsCallbacks: 0 25 | m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 26 | -------------------------------------------------------------------------------- /ProjectSettings/ProjectSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!129 &1 4 | PlayerSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 7 7 | AndroidProfiler: 0 8 | defaultScreenOrientation: 4 9 | targetDevice: 2 10 | targetResolution: 0 11 | useOnDemandResources: 0 12 | accelerometerFrequency: 60 13 | companyName: RyanNielson 14 | productName: SimpleSpriteAnimator 15 | defaultCursor: {fileID: 0} 16 | cursorHotspot: {x: 0, y: 0} 17 | m_ShowUnitySplashScreen: 1 18 | defaultScreenWidth: 1024 19 | defaultScreenHeight: 768 20 | defaultScreenWidthWeb: 960 21 | defaultScreenHeightWeb: 600 22 | m_RenderingPath: 1 23 | m_MobileRenderingPath: 1 24 | m_ActiveColorSpace: 0 25 | m_MTRendering: 1 26 | m_MobileMTRendering: 0 27 | m_Stereoscopic3D: 0 28 | iosShowActivityIndicatorOnLoading: -1 29 | androidShowActivityIndicatorOnLoading: -1 30 | iosAppInBackgroundBehavior: 0 31 | displayResolutionDialog: 1 32 | iosAllowHTTPDownload: 1 33 | allowedAutorotateToPortrait: 1 34 | allowedAutorotateToPortraitUpsideDown: 1 35 | allowedAutorotateToLandscapeRight: 1 36 | allowedAutorotateToLandscapeLeft: 1 37 | useOSAutorotation: 1 38 | use32BitDisplayBuffer: 1 39 | disableDepthAndStencilBuffers: 0 40 | defaultIsFullScreen: 1 41 | defaultIsNativeResolution: 1 42 | runInBackground: 0 43 | captureSingleScreen: 0 44 | Override IPod Music: 0 45 | Prepare IOS For Recording: 0 46 | submitAnalytics: 1 47 | usePlayerLog: 1 48 | bakeCollisionMeshes: 0 49 | forceSingleInstance: 0 50 | resizableWindow: 0 51 | useMacAppStoreValidation: 0 52 | gpuSkinning: 0 53 | xboxPIXTextureCapture: 0 54 | xboxEnableAvatar: 0 55 | xboxEnableKinect: 0 56 | xboxEnableKinectAutoTracking: 0 57 | xboxEnableFitness: 0 58 | visibleInBackground: 0 59 | macFullscreenMode: 2 60 | d3d9FullscreenMode: 1 61 | d3d11FullscreenMode: 1 62 | xboxSpeechDB: 0 63 | xboxEnableHeadOrientation: 0 64 | xboxEnableGuest: 0 65 | n3dsDisableStereoscopicView: 0 66 | n3dsEnableSharedListOpt: 1 67 | n3dsEnableVSync: 0 68 | xboxOneResolution: 0 69 | ps3SplashScreen: {fileID: 0} 70 | videoMemoryForVertexBuffers: 0 71 | psp2PowerMode: 0 72 | psp2AcquireBGM: 1 73 | wiiUTVResolution: 0 74 | wiiUGamePadMSAA: 1 75 | wiiUSupportsNunchuk: 0 76 | wiiUSupportsClassicController: 0 77 | wiiUSupportsBalanceBoard: 0 78 | wiiUSupportsMotionPlus: 0 79 | wiiUSupportsProController: 0 80 | wiiUAllowScreenCapture: 1 81 | wiiUControllerCount: 0 82 | m_SupportedAspectRatios: 83 | 4:3: 1 84 | 5:4: 1 85 | 16:10: 1 86 | 16:9: 1 87 | Others: 1 88 | bundleIdentifier: com.Company.ProductName 89 | bundleVersion: 1.0 90 | preloadedAssets: [] 91 | metroEnableIndependentInputSource: 0 92 | metroEnableLowLatencyPresentationAPI: 0 93 | xboxOneDisableKinectGpuReservation: 0 94 | virtualRealitySupported: 0 95 | productGUID: 6c8f1db0a6e8a274c99240d217f373b6 96 | AndroidBundleVersionCode: 1 97 | AndroidMinSdkVersion: 9 98 | AndroidPreferredInstallLocation: 1 99 | aotOptions: 100 | apiCompatibilityLevel: 2 101 | stripEngineCode: 1 102 | iPhoneStrippingLevel: 0 103 | iPhoneScriptCallOptimization: 0 104 | iPhoneBuildNumber: 0 105 | ForceInternetPermission: 0 106 | ForceSDCardPermission: 0 107 | CreateWallpaper: 0 108 | APKExpansionFiles: 0 109 | preloadShaders: 0 110 | StripUnusedMeshComponents: 0 111 | VertexChannelCompressionMask: 112 | serializedVersion: 2 113 | m_Bits: 238 114 | iPhoneSdkVersion: 988 115 | iPhoneTargetOSVersion: 22 116 | uIPrerenderedIcon: 0 117 | uIRequiresPersistentWiFi: 0 118 | uIStatusBarHidden: 1 119 | uIExitOnSuspend: 0 120 | uIStatusBarStyle: 0 121 | iPhoneSplashScreen: {fileID: 0} 122 | iPhoneHighResSplashScreen: {fileID: 0} 123 | iPhoneTallHighResSplashScreen: {fileID: 0} 124 | iPhone47inSplashScreen: {fileID: 0} 125 | iPhone55inPortraitSplashScreen: {fileID: 0} 126 | iPhone55inLandscapeSplashScreen: {fileID: 0} 127 | iPadPortraitSplashScreen: {fileID: 0} 128 | iPadHighResPortraitSplashScreen: {fileID: 0} 129 | iPadLandscapeSplashScreen: {fileID: 0} 130 | iPadHighResLandscapeSplashScreen: {fileID: 0} 131 | iOSLaunchScreenType: 0 132 | iOSLaunchScreenPortrait: {fileID: 0} 133 | iOSLaunchScreenLandscape: {fileID: 0} 134 | iOSLaunchScreenBackgroundColor: 135 | serializedVersion: 2 136 | rgba: 0 137 | iOSLaunchScreenFillPct: 100 138 | iOSLaunchScreenSize: 100 139 | iOSLaunchScreenCustomXibPath: 140 | iOSLaunchScreeniPadType: 0 141 | iOSLaunchScreeniPadImage: {fileID: 0} 142 | iOSLaunchScreeniPadBackgroundColor: 143 | serializedVersion: 2 144 | rgba: 0 145 | iOSLaunchScreeniPadFillPct: 100 146 | iOSLaunchScreeniPadSize: 100 147 | iOSLaunchScreeniPadCustomXibPath: 148 | iOSDeviceRequirements: [] 149 | AndroidTargetDevice: 0 150 | AndroidSplashScreenScale: 0 151 | androidSplashScreen: {fileID: 0} 152 | AndroidKeystoreName: 153 | AndroidKeyaliasName: 154 | AndroidTVCompatibility: 1 155 | AndroidIsGame: 1 156 | androidEnableBanner: 1 157 | m_AndroidBanners: 158 | - width: 320 159 | height: 180 160 | banner: {fileID: 0} 161 | androidGamepadSupportLevel: 0 162 | resolutionDialogBanner: {fileID: 0} 163 | m_BuildTargetIcons: 164 | - m_BuildTarget: 165 | m_Icons: 166 | - serializedVersion: 2 167 | m_Icon: {fileID: 0} 168 | m_Width: 128 169 | m_Height: 128 170 | m_BuildTargetBatching: [] 171 | m_BuildTargetGraphicsAPIs: [] 172 | webPlayerTemplate: APPLICATION:Default 173 | m_TemplateCustomTags: {} 174 | wiiUTitleID: 0005000011000000 175 | wiiUGroupID: 00010000 176 | wiiUCommonSaveSize: 4096 177 | wiiUAccountSaveSize: 2048 178 | wiiUOlvAccessKey: 0 179 | wiiUTinCode: 0 180 | wiiUJoinGameId: 0 181 | wiiUJoinGameModeMask: 0000000000000000 182 | wiiUCommonBossSize: 0 183 | wiiUAccountBossSize: 0 184 | wiiUAddOnUniqueIDs: [] 185 | wiiUMainThreadStackSize: 3072 186 | wiiULoaderThreadStackSize: 1024 187 | wiiUSystemHeapSize: 128 188 | wiiUTVStartupScreen: {fileID: 0} 189 | wiiUGamePadStartupScreen: {fileID: 0} 190 | wiiUProfilerLibPath: 191 | actionOnDotNetUnhandledException: 1 192 | enableInternalProfiler: 0 193 | logObjCUncaughtExceptions: 1 194 | enableCrashReportAPI: 0 195 | locationUsageDescription: 196 | XboxTitleId: 197 | XboxImageXexPath: 198 | XboxSpaPath: 199 | XboxGenerateSpa: 0 200 | XboxDeployKinectResources: 0 201 | XboxSplashScreen: {fileID: 0} 202 | xboxEnableSpeech: 0 203 | xboxAdditionalTitleMemorySize: 0 204 | xboxDeployKinectHeadOrientation: 0 205 | xboxDeployKinectHeadPosition: 0 206 | ps3TitleConfigPath: 207 | ps3DLCConfigPath: 208 | ps3ThumbnailPath: 209 | ps3BackgroundPath: 210 | ps3SoundPath: 211 | ps3NPAgeRating: 12 212 | ps3TrophyCommId: 213 | ps3NpCommunicationPassphrase: 214 | ps3TrophyPackagePath: 215 | ps3BootCheckMaxSaveGameSizeKB: 128 216 | ps3TrophyCommSig: 217 | ps3SaveGameSlots: 1 218 | ps3TrialMode: 0 219 | ps3VideoMemoryForAudio: 0 220 | ps3EnableVerboseMemoryStats: 0 221 | ps3UseSPUForUmbra: 0 222 | ps3EnableMoveSupport: 1 223 | ps3DisableDolbyEncoding: 0 224 | ps4NPAgeRating: 12 225 | ps4NPTitleSecret: 226 | ps4NPTrophyPackPath: 227 | ps4ParentalLevel: 1 228 | ps4ContentID: ED1633-NPXX51362_00-0000000000000000 229 | ps4Category: 0 230 | ps4MasterVersion: 01.00 231 | ps4AppVersion: 01.00 232 | ps4AppType: 0 233 | ps4ParamSfxPath: 234 | ps4VideoOutPixelFormat: 0 235 | ps4VideoOutResolution: 4 236 | ps4PronunciationXMLPath: 237 | ps4PronunciationSIGPath: 238 | ps4BackgroundImagePath: 239 | ps4StartupImagePath: 240 | ps4SaveDataImagePath: 241 | ps4SdkOverride: 242 | ps4BGMPath: 243 | ps4ShareFilePath: 244 | ps4ShareOverlayImagePath: 245 | ps4PrivacyGuardImagePath: 246 | ps4NPtitleDatPath: 247 | ps4RemotePlayKeyAssignment: -1 248 | ps4RemotePlayKeyMappingDir: 249 | ps4EnterButtonAssignment: 1 250 | ps4ApplicationParam1: 0 251 | ps4ApplicationParam2: 0 252 | ps4ApplicationParam3: 0 253 | ps4ApplicationParam4: 0 254 | ps4DownloadDataSize: 0 255 | ps4GarlicHeapSize: 2048 256 | ps4Passcode: frAQBc8Wsa1xVPfvJcrgRYwTiizs2trQ 257 | ps4pnSessions: 1 258 | ps4pnPresence: 1 259 | ps4pnFriends: 1 260 | ps4pnGameCustomData: 1 261 | playerPrefsSupport: 0 262 | ps4ReprojectionSupport: 0 263 | ps4UseAudio3dBackend: 0 264 | ps4Audio3dVirtualSpeakerCount: 14 265 | ps4attribUserManagement: 0 266 | ps4attribMoveSupport: 0 267 | ps4attrib3DSupport: 0 268 | ps4attribShareSupport: 0 269 | ps4IncludedModules: [] 270 | monoEnv: 271 | psp2Splashimage: {fileID: 0} 272 | psp2NPTrophyPackPath: 273 | psp2NPSupportGBMorGJP: 0 274 | psp2NPAgeRating: 12 275 | psp2NPTitleDatPath: 276 | psp2NPCommsID: 277 | psp2NPCommunicationsID: 278 | psp2NPCommsPassphrase: 279 | psp2NPCommsSig: 280 | psp2ParamSfxPath: 281 | psp2ManualPath: 282 | psp2LiveAreaGatePath: 283 | psp2LiveAreaBackroundPath: 284 | psp2LiveAreaPath: 285 | psp2LiveAreaTrialPath: 286 | psp2PatchChangeInfoPath: 287 | psp2PatchOriginalPackage: 288 | psp2PackagePassword: F69AzBlax3CF3EDNhm3soLBPh71Yexui 289 | psp2KeystoneFile: 290 | psp2MemoryExpansionMode: 0 291 | psp2DRMType: 0 292 | psp2StorageType: 0 293 | psp2MediaCapacity: 0 294 | psp2DLCConfigPath: 295 | psp2ThumbnailPath: 296 | psp2BackgroundPath: 297 | psp2SoundPath: 298 | psp2TrophyCommId: 299 | psp2TrophyPackagePath: 300 | psp2PackagedResourcesPath: 301 | psp2SaveDataQuota: 10240 302 | psp2ParentalLevel: 1 303 | psp2ShortTitle: Not Set 304 | psp2ContentID: IV0000-ABCD12345_00-0123456789ABCDEF 305 | psp2Category: 0 306 | psp2MasterVersion: 01.00 307 | psp2AppVersion: 01.00 308 | psp2TVBootMode: 0 309 | psp2EnterButtonAssignment: 2 310 | psp2TVDisableEmu: 0 311 | psp2AllowTwitterDialog: 1 312 | psp2Upgradable: 0 313 | psp2HealthWarning: 0 314 | psp2UseLibLocation: 0 315 | psp2InfoBarOnStartup: 0 316 | psp2InfoBarColor: 0 317 | psmSplashimage: {fileID: 0} 318 | spritePackerPolicy: 319 | scriptingDefineSymbols: {} 320 | metroPackageName: SpriteAnimator 321 | metroPackageLogo: 322 | metroPackageLogo140: 323 | metroPackageLogo180: 324 | metroPackageLogo240: 325 | metroPackageVersion: 326 | metroCertificatePath: 327 | metroCertificatePassword: 328 | metroCertificateSubject: 329 | metroCertificateIssuer: 330 | metroCertificateNotAfter: 0000000000000000 331 | metroApplicationDescription: SpriteAnimator 332 | metroStoreTileLogo80: 333 | metroStoreTileLogo: 334 | metroStoreTileLogo140: 335 | metroStoreTileLogo180: 336 | metroStoreTileWideLogo80: 337 | metroStoreTileWideLogo: 338 | metroStoreTileWideLogo140: 339 | metroStoreTileWideLogo180: 340 | metroStoreTileSmallLogo80: 341 | metroStoreTileSmallLogo: 342 | metroStoreTileSmallLogo140: 343 | metroStoreTileSmallLogo180: 344 | metroStoreSmallTile80: 345 | metroStoreSmallTile: 346 | metroStoreSmallTile140: 347 | metroStoreSmallTile180: 348 | metroStoreLargeTile80: 349 | metroStoreLargeTile: 350 | metroStoreLargeTile140: 351 | metroStoreLargeTile180: 352 | metroStoreSplashScreenImage: 353 | metroStoreSplashScreenImage140: 354 | metroStoreSplashScreenImage180: 355 | metroPhoneAppIcon: 356 | metroPhoneAppIcon140: 357 | metroPhoneAppIcon240: 358 | metroPhoneSmallTile: 359 | metroPhoneSmallTile140: 360 | metroPhoneSmallTile240: 361 | metroPhoneMediumTile: 362 | metroPhoneMediumTile140: 363 | metroPhoneMediumTile240: 364 | metroPhoneWideTile: 365 | metroPhoneWideTile140: 366 | metroPhoneWideTile240: 367 | metroPhoneSplashScreenImage: 368 | metroPhoneSplashScreenImage140: 369 | metroPhoneSplashScreenImage240: 370 | metroTileShortName: 371 | metroCommandLineArgsFile: 372 | metroTileShowName: 0 373 | metroMediumTileShowName: 0 374 | metroLargeTileShowName: 0 375 | metroWideTileShowName: 0 376 | metroDefaultTileSize: 1 377 | metroTileForegroundText: 1 378 | metroTileBackgroundColor: {r: 0, g: 0, b: 0, a: 1} 379 | metroSplashScreenBackgroundColor: {r: 0, g: 0, b: 0, a: 1} 380 | metroSplashScreenUseBackgroundColor: 0 381 | platformCapabilities: {} 382 | metroFTAName: 383 | metroFTAFileTypes: [] 384 | metroProtocolName: 385 | metroCompilationOverrides: 1 386 | blackberryDeviceAddress: 387 | blackberryDevicePassword: 388 | blackberryTokenPath: 389 | blackberryTokenExires: 390 | blackberryTokenAuthor: 391 | blackberryTokenAuthorId: 392 | blackberryCskPassword: 393 | blackberrySaveLogPath: 394 | blackberrySharedPermissions: 0 395 | blackberryCameraPermissions: 0 396 | blackberryGPSPermissions: 0 397 | blackberryDeviceIDPermissions: 0 398 | blackberryMicrophonePermissions: 0 399 | blackberryGamepadSupport: 0 400 | blackberryBuildId: 0 401 | blackberryLandscapeSplashScreen: {fileID: 0} 402 | blackberryPortraitSplashScreen: {fileID: 0} 403 | blackberrySquareSplashScreen: {fileID: 0} 404 | tizenProductDescription: 405 | tizenProductURL: 406 | tizenSigningProfileName: 407 | tizenGPSPermissions: 0 408 | tizenMicrophonePermissions: 0 409 | n3dsUseExtSaveData: 0 410 | n3dsCompressStaticMem: 1 411 | n3dsExtSaveDataNumber: 0x12345 412 | n3dsStackSize: 131072 413 | n3dsTargetPlatform: 2 414 | n3dsRegion: 7 415 | n3dsMediaSize: 0 416 | n3dsLogoStyle: 3 417 | n3dsTitle: GameName 418 | n3dsProductCode: 419 | n3dsApplicationId: 0xFF3FF 420 | stvDeviceAddress: 421 | stvProductDescription: 422 | stvProductAuthor: 423 | stvProductAuthorEmail: 424 | stvProductLink: 425 | stvProductCategory: 0 426 | XboxOneProductId: 427 | XboxOneUpdateKey: 428 | XboxOneSandboxId: 429 | XboxOneContentId: 430 | XboxOneTitleId: 431 | XboxOneSCId: 432 | XboxOneGameOsOverridePath: 433 | XboxOnePackagingOverridePath: 434 | XboxOneAppManifestOverridePath: 435 | XboxOnePackageEncryption: 0 436 | XboxOnePackageUpdateGranularity: 2 437 | XboxOneDescription: 438 | XboxOneIsContentPackage: 0 439 | XboxOneEnableGPUVariability: 0 440 | XboxOneSockets: {} 441 | XboxOneSplashScreen: {fileID: 0} 442 | XboxOneAllowedProductIds: [] 443 | XboxOnePersistentLocalStorageSize: 0 444 | intPropertyNames: 445 | - Android::ScriptingBackend 446 | - Metro::ScriptingBackend 447 | - Standalone::ScriptingBackend 448 | - WP8::ScriptingBackend 449 | - WebGL::ScriptingBackend 450 | - WebGL::audioCompressionFormat 451 | - WebGL::exceptionSupport 452 | - WebGL::memorySize 453 | - WebPlayer::ScriptingBackend 454 | - iOS::Architecture 455 | - iOS::EnableIncrementalBuildSupportForIl2cpp 456 | - iOS::ScriptingBackend 457 | Android::ScriptingBackend: 0 458 | Metro::ScriptingBackend: 2 459 | Standalone::ScriptingBackend: 0 460 | WP8::ScriptingBackend: 2 461 | WebGL::ScriptingBackend: 1 462 | WebGL::audioCompressionFormat: 4 463 | WebGL::exceptionSupport: 1 464 | WebGL::memorySize: 256 465 | WebPlayer::ScriptingBackend: 0 466 | iOS::Architecture: 2 467 | iOS::EnableIncrementalBuildSupportForIl2cpp: 0 468 | iOS::ScriptingBackend: 1 469 | boolPropertyNames: 470 | - WebGL::analyzeBuildSize 471 | - WebGL::dataCaching 472 | - WebGL::useEmbeddedResources 473 | - XboxOne::enus 474 | WebGL::analyzeBuildSize: 0 475 | WebGL::dataCaching: 0 476 | WebGL::useEmbeddedResources: 0 477 | XboxOne::enus: 1 478 | stringPropertyNames: 479 | - WebGL::emscriptenArgs 480 | - WebGL::template 481 | - additionalIl2CppArgs::additionalIl2CppArgs 482 | WebGL::emscriptenArgs: 483 | WebGL::template: APPLICATION:Default 484 | additionalIl2CppArgs::additionalIl2CppArgs: 485 | firstStreamedSceneWithResources: 0 486 | cloudProjectId: 487 | projectName: 488 | organizationId: 489 | cloudEnabled: 0 490 | -------------------------------------------------------------------------------- /ProjectSettings/ProjectVersion.txt: -------------------------------------------------------------------------------- 1 | m_EditorVersion: 5.2.2f1 2 | m_StandardAssetsVersion: 0 3 | -------------------------------------------------------------------------------- /ProjectSettings/QualitySettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!47 &1 4 | QualitySettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 5 7 | m_CurrentQuality: 5 8 | m_QualitySettings: 9 | - serializedVersion: 2 10 | name: Fastest 11 | pixelLightCount: 0 12 | shadows: 0 13 | shadowResolution: 0 14 | shadowProjection: 1 15 | shadowCascades: 1 16 | shadowDistance: 15 17 | shadowNearPlaneOffset: 2 18 | shadowCascade2Split: .333333343 19 | shadowCascade4Split: {x: .0666666701, y: .200000003, z: .466666669} 20 | blendWeights: 1 21 | textureQuality: 1 22 | anisotropicTextures: 0 23 | antiAliasing: 0 24 | softParticles: 0 25 | softVegetation: 0 26 | realtimeReflectionProbes: 0 27 | billboardsFaceCameraPosition: 0 28 | vSyncCount: 0 29 | lodBias: .300000012 30 | maximumLODLevel: 0 31 | particleRaycastBudget: 4 32 | excludedTargetPlatforms: [] 33 | - serializedVersion: 2 34 | name: Fast 35 | pixelLightCount: 0 36 | shadows: 0 37 | shadowResolution: 0 38 | shadowProjection: 1 39 | shadowCascades: 1 40 | shadowDistance: 20 41 | shadowNearPlaneOffset: 2 42 | shadowCascade2Split: .333333343 43 | shadowCascade4Split: {x: .0666666701, y: .200000003, z: .466666669} 44 | blendWeights: 2 45 | textureQuality: 0 46 | anisotropicTextures: 0 47 | antiAliasing: 0 48 | softParticles: 0 49 | softVegetation: 0 50 | realtimeReflectionProbes: 0 51 | billboardsFaceCameraPosition: 0 52 | vSyncCount: 0 53 | lodBias: .400000006 54 | maximumLODLevel: 0 55 | particleRaycastBudget: 16 56 | excludedTargetPlatforms: [] 57 | - serializedVersion: 2 58 | name: Simple 59 | pixelLightCount: 1 60 | shadows: 1 61 | shadowResolution: 0 62 | shadowProjection: 1 63 | shadowCascades: 1 64 | shadowDistance: 20 65 | shadowNearPlaneOffset: 2 66 | shadowCascade2Split: .333333343 67 | shadowCascade4Split: {x: .0666666701, y: .200000003, z: .466666669} 68 | blendWeights: 2 69 | textureQuality: 0 70 | anisotropicTextures: 1 71 | antiAliasing: 0 72 | softParticles: 0 73 | softVegetation: 0 74 | realtimeReflectionProbes: 0 75 | billboardsFaceCameraPosition: 0 76 | vSyncCount: 0 77 | lodBias: .699999988 78 | maximumLODLevel: 0 79 | particleRaycastBudget: 64 80 | excludedTargetPlatforms: [] 81 | - serializedVersion: 2 82 | name: Good 83 | pixelLightCount: 2 84 | shadows: 2 85 | shadowResolution: 1 86 | shadowProjection: 1 87 | shadowCascades: 2 88 | shadowDistance: 40 89 | shadowNearPlaneOffset: 2 90 | shadowCascade2Split: .333333343 91 | shadowCascade4Split: {x: .0666666701, y: .200000003, z: .466666669} 92 | blendWeights: 2 93 | textureQuality: 0 94 | anisotropicTextures: 1 95 | antiAliasing: 0 96 | softParticles: 0 97 | softVegetation: 1 98 | realtimeReflectionProbes: 1 99 | billboardsFaceCameraPosition: 1 100 | vSyncCount: 1 101 | lodBias: 1 102 | maximumLODLevel: 0 103 | particleRaycastBudget: 256 104 | excludedTargetPlatforms: [] 105 | - serializedVersion: 2 106 | name: Beautiful 107 | pixelLightCount: 3 108 | shadows: 2 109 | shadowResolution: 2 110 | shadowProjection: 1 111 | shadowCascades: 2 112 | shadowDistance: 70 113 | shadowNearPlaneOffset: 2 114 | shadowCascade2Split: .333333343 115 | shadowCascade4Split: {x: .0666666701, y: .200000003, z: .466666669} 116 | blendWeights: 4 117 | textureQuality: 0 118 | anisotropicTextures: 2 119 | antiAliasing: 2 120 | softParticles: 1 121 | softVegetation: 1 122 | realtimeReflectionProbes: 1 123 | billboardsFaceCameraPosition: 1 124 | vSyncCount: 1 125 | lodBias: 1.5 126 | maximumLODLevel: 0 127 | particleRaycastBudget: 1024 128 | excludedTargetPlatforms: [] 129 | - serializedVersion: 2 130 | name: Fantastic 131 | pixelLightCount: 4 132 | shadows: 2 133 | shadowResolution: 2 134 | shadowProjection: 1 135 | shadowCascades: 4 136 | shadowDistance: 150 137 | shadowNearPlaneOffset: 2 138 | shadowCascade2Split: .333333343 139 | shadowCascade4Split: {x: .0666666701, y: .200000003, z: .466666669} 140 | blendWeights: 4 141 | textureQuality: 0 142 | anisotropicTextures: 2 143 | antiAliasing: 2 144 | softParticles: 1 145 | softVegetation: 1 146 | realtimeReflectionProbes: 1 147 | billboardsFaceCameraPosition: 1 148 | vSyncCount: 1 149 | lodBias: 2 150 | maximumLODLevel: 0 151 | particleRaycastBudget: 4096 152 | excludedTargetPlatforms: [] 153 | m_PerPlatformDefaultQuality: 154 | Android: 2 155 | BlackBerry: 2 156 | GLES Emulation: 5 157 | Nintendo 3DS: 5 158 | PS3: 5 159 | PS4: 5 160 | PSM: 5 161 | PSP2: 2 162 | Samsung TV: 2 163 | Standalone: 5 164 | Tizen: 2 165 | WP8: 5 166 | Web: 5 167 | WebGL: 3 168 | Wii U: 5 169 | Windows Store Apps: 5 170 | XBOX360: 5 171 | XboxOne: 5 172 | iPhone: 2 173 | -------------------------------------------------------------------------------- /ProjectSettings/TagManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!78 &1 4 | TagManager: 5 | serializedVersion: 2 6 | tags: [] 7 | layers: 8 | - Default 9 | - TransparentFX 10 | - Ignore Raycast 11 | - 12 | - Water 13 | - UI 14 | - 15 | - 16 | - 17 | - 18 | - 19 | - 20 | - 21 | - 22 | - 23 | - 24 | - 25 | - 26 | - 27 | - 28 | - 29 | - 30 | - 31 | - 32 | - 33 | - 34 | - 35 | - 36 | - 37 | - 38 | - 39 | - 40 | m_SortingLayers: 41 | - name: Default 42 | uniqueID: 0 43 | locked: 0 44 | -------------------------------------------------------------------------------- /ProjectSettings/TimeManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!5 &1 4 | TimeManager: 5 | m_ObjectHideFlags: 0 6 | Fixed Timestep: .0199999996 7 | Maximum Allowed Timestep: .333333343 8 | m_TimeScale: 1 9 | -------------------------------------------------------------------------------- /ProjectSettings/UnityAdsSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!292 &1 4 | UnityAdsSettings: 5 | m_ObjectHideFlags: 0 6 | m_Enabled: 0 7 | m_InitializeOnStartup: 1 8 | m_TestMode: 0 9 | m_EnabledPlatforms: 4294967295 10 | m_IosGameId: 11 | m_AndroidGameId: 12 | -------------------------------------------------------------------------------- /ProjectSettings/UnityAnalyticsManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!303 &1 4 | UnityAnalyticsManager: 5 | m_ObjectHideFlags: 0 6 | m_Enabled: 0 7 | m_InitializeOnStartup: 1 8 | m_TestMode: 0 9 | m_TestEventUrl: 10 | m_TestConfigUrl: 11 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Simple Sprite Animator 2 | Simpler 2D sprite animation in Unity. 3 | 4 | ##### This is an early work in progress. Please report any issues you find. Also, feel free to contribute fixes or additions. 5 | 6 | ## Why Should I Use Simple Sprite Animator? 7 | 8 | Sprite animation in Unity is very powerful, but often too complicated when trying to make simple 2D sprite animations. You have to create animations, set up animator states, add transitions, and much more. This project aims to make sprite animation much simpler. 9 | 10 | ## Installation 11 | 12 | Copy the `SimpleSpriteAnimator` folder into your `Assets` folder. 13 | 14 | ## Usage 15 | 16 | 1. Right click in the project window, and create a new `Sprite Animation` asset. This will store the animation settings including name, sprite frames, frames per second, and animation type. 17 | 2. Add a game object to the scene, and add a `Sprite Animator` component. This will automatically add a `Sprite Renderer` component that the animator requires. 18 | 3. Add the desired animations to the `Sprite Animator` component. The `Sprite Animator` will be able to play any animations in this list using direct references to them, or by their animation names. 19 | 20 | ## Inspector Options 21 | 22 | #### Sprite Animation 23 | 24 | - `Name`: The name of the animation. This will be used to play the animation via the `Sprite Animator`. 25 | - `Frames`: A list of sprites that make up the animation. 26 | - `FPS (Frames per second)`: The framerate of the animation. The higher this number, the faster the animation will play. 27 | - `Type`: The type of the animation, this can be Looping or Play Once. 28 | - `Looping`: Plays the animation from start to end, then repeats. 29 | - `Place Once`: Plays the animation from start to end, then stops on the last frame. 30 | 31 | #### Sprite Animator 32 | - `Sprite Animations`: A list of sprite animations the sprite animator can play. 33 | - `Play Automatically`: If checked, the first animation will play as soon as the scene starts. 34 | 35 | ## API 36 | 37 | #### Example 38 | 39 | The methods below should be called on the `SpriteAnimator` component. 40 | 41 | - `Play()`: Play the last played animation from the beginning. If not used previously, the first animation will be used. 42 | - `Play(string name)`: Play the animation with the given name. 43 | 44 | ```csharp 45 | using SimpleSpriteAnimator; 46 | 47 | public class AnimatorTester : MonoBehaviour 48 | { 49 | private SpriteAnimator spriteAnimator; 50 | 51 | void Start () 52 | { 53 | spriteAnimator = GetComponent(); 54 | } 55 | 56 | void Update() 57 | { 58 | spriteAnimator.Play("Walk"); // Play the animation named "Walk" 59 | } 60 | } 61 | ``` 62 | 63 | ## Demo 64 | 65 | This project contains a demo in the `SimpleSpriteAnimatorDemo` folder. This includes an example of two animations, and a game object with an attached `Sprite Animator` component. It demonstrates changing animations using two GUI buttons. 66 | 67 | 68 | 69 | --------------------------------------------------------------------------------