Animals can now move and stop and be animated to move
cow now has idle and run animation
This commit is contained in:
parent
687a37eb89
commit
2a29e5413b
2 changed files with 29 additions and 4 deletions
|
|
@ -13,6 +13,7 @@ GameObject:
|
||||||
- component: {fileID: 123187747779251107}
|
- component: {fileID: 123187747779251107}
|
||||||
- component: {fileID: 2510115116361252818}
|
- component: {fileID: 2510115116361252818}
|
||||||
- component: {fileID: 4094795090309576525}
|
- component: {fileID: 4094795090309576525}
|
||||||
|
- component: {fileID: 3321960187907454328}
|
||||||
m_Layer: 0
|
m_Layer: 0
|
||||||
m_Name: Cow
|
m_Name: Cow
|
||||||
m_TagString: Untagged
|
m_TagString: Untagged
|
||||||
|
|
@ -157,3 +158,24 @@ MonoBehaviour:
|
||||||
producedItem: {fileID: 11400000, guid: 510712f2d23afc147979bcd564ef7943, type: 2}
|
producedItem: {fileID: 11400000, guid: 510712f2d23afc147979bcd564ef7943, type: 2}
|
||||||
animalSprite: {fileID: 21300000, guid: e2bde586482642d44a270276574c0129, type: 3}
|
animalSprite: {fileID: 21300000, guid: e2bde586482642d44a270276574c0129, type: 3}
|
||||||
movementSpeed: 1
|
movementSpeed: 1
|
||||||
|
animator: {fileID: 3321960187907454328}
|
||||||
|
--- !u!95 &3321960187907454328
|
||||||
|
Animator:
|
||||||
|
serializedVersion: 4
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 2510115116361252817}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_Avatar: {fileID: 0}
|
||||||
|
m_Controller: {fileID: 9100000, guid: 353868083b4723041bbf6c45effa9223, type: 2}
|
||||||
|
m_CullingMode: 0
|
||||||
|
m_UpdateMode: 0
|
||||||
|
m_ApplyRootMotion: 0
|
||||||
|
m_LinearVelocityBlending: 0
|
||||||
|
m_StabilizeFeet: 0
|
||||||
|
m_WarningMessage:
|
||||||
|
m_HasTransformHierarchy: 1
|
||||||
|
m_AllowConstantClipSamplingOptimization: 1
|
||||||
|
m_KeepAnimatorControllerStateOnDisable: 0
|
||||||
|
|
|
||||||
|
|
@ -6,14 +6,17 @@ using Random = UnityEngine.Random;
|
||||||
|
|
||||||
public class Animal : MonoBehaviour {
|
public class Animal : MonoBehaviour {
|
||||||
private Rigidbody2D _rigidbody;
|
private Rigidbody2D _rigidbody;
|
||||||
|
private int _animMoveID;
|
||||||
|
|
||||||
public Item producedItem;
|
public Item producedItem;
|
||||||
public Sprite animalSprite;
|
public Sprite animalSprite;
|
||||||
public int movementSpeed;
|
public int movementSpeed;
|
||||||
|
public Animator animator;
|
||||||
|
|
||||||
private void Start() {
|
private void Start() {
|
||||||
_rigidbody = gameObject.GetComponent<Rigidbody2D>();
|
_rigidbody = gameObject.GetComponent<Rigidbody2D>();
|
||||||
animalSprite = gameObject.GetComponent<SpriteRenderer>().GetComponent<Sprite>();
|
animalSprite = gameObject.GetComponent<SpriteRenderer>().GetComponent<Sprite>();
|
||||||
|
_animMoveID = Animator.StringToHash("moving");
|
||||||
|
|
||||||
// Move the Animal in any random direction every 1-5s
|
// Move the Animal in any random direction every 1-5s
|
||||||
InvokeRepeating(nameof(MoveInRandomDirection), 2f, Random.Range(1f, 5f));
|
InvokeRepeating(nameof(MoveInRandomDirection), 2f, Random.Range(1f, 5f));
|
||||||
|
|
@ -31,15 +34,15 @@ public class Animal : MonoBehaviour {
|
||||||
direction.Normalize();
|
direction.Normalize();
|
||||||
|
|
||||||
_rigidbody.velocity = movementSpeed * direction;
|
_rigidbody.velocity = movementSpeed * direction;
|
||||||
StopAllCoroutines();
|
animator.SetBool(_animMoveID, true);
|
||||||
yield return new WaitForSeconds(randTime);
|
yield return new WaitForSeconds(randTime);
|
||||||
_rigidbody.velocity = new Vector2(0f, 0f); }
|
_rigidbody.velocity = new Vector2(0f, 0f);
|
||||||
|
animator.SetBool(_animMoveID, false);
|
||||||
|
}
|
||||||
|
|
||||||
StartCoroutine(Move());
|
StartCoroutine(Move());
|
||||||
}
|
}
|
||||||
|
|
||||||
// TODO: Animations
|
|
||||||
|
|
||||||
private void OnMouseDown() {
|
private void OnMouseDown() {
|
||||||
ActionInvoker.InvokeAction(gameObject, PlayerController.instance.SelectedItem);
|
ActionInvoker.InvokeAction(gameObject, PlayerController.instance.SelectedItem);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue