diff --git a/Assets/Scenes/CameraOrbit.cs b/Assets/Scenes/CameraOrbit.cs index 65c5f6f..0a6bf98 100644 --- a/Assets/Scenes/CameraOrbit.cs +++ b/Assets/Scenes/CameraOrbit.cs @@ -53,7 +53,7 @@ public class CameraOrbit : MonoBehaviour } } - else if (Input.GetMouseButton(0)) + else if (Input.GetMouseButton(0) && canScroll) { var d = Input.GetAxis("Mouse Y") * ySpeed * 0.0005f; z -= d; diff --git a/Assets/Scenes/Main.cs b/Assets/Scenes/Main.cs index f26a0ac..459920e 100644 --- a/Assets/Scenes/Main.cs +++ b/Assets/Scenes/Main.cs @@ -24,7 +24,6 @@ public class Main : MonoBehaviour public Dictionary> attachmentAssetsNames = new Dictionary>(); public Dictionary charaWeapon = new Dictionary(); public Dictionary attachmentPosition = new Dictionary(); - public float speed; #endregion void Start() @@ -35,7 +34,6 @@ public class Main : MonoBehaviour loadCharaCSV(); loadWeaponCSV(); loadAttachmentCSV(); - speed = 1.0f; GameObject.Find("charaDropdown").GetComponent().value = 14; } @@ -248,6 +246,7 @@ public class Main : MonoBehaviour #region Animator public void loadAnimator(int i) { + if (weapon != null) Destroy(weapon); if (i == 0) { chara.GetComponent().runtimeAnimatorController = originAnimator; @@ -345,11 +344,10 @@ public class Main : MonoBehaviour #region Action public void setState(int i) { - if (i != 1) removeWeapon(); - if (i == 2 || i == 3) chara.transform.rotation = Quaternion.Euler(0, 180, 0); - else chara.transform.rotation = Quaternion.Euler(0, 0, 0); - if (chara.GetComponent() != null) - chara.GetComponent().SetInteger(Animator.StringToHash("State"), i); + if (i == 6) removeWeapon(); + if (i == 2 || i == 3) rotate180(); + else rotate0(); + SetInteger("State", i); } public void setRoom(int i) @@ -404,9 +402,24 @@ public class Main : MonoBehaviour setTrigger(names[i]); } + public void setBattleStartBoss() + { + rotate180(); + setTrigger("BattleStartBoss"); + setTrigger("EventStep"); + } + + public void setBattleStartPlayer() + { + rotate180(); + setTrigger("BattleStartPlayer"); + setTrigger("EventStep"); + Invoke("EventStep", 0.2f); + Invoke("EventStep", 5f); + } + public void setSpeed(float value) { - speed = value; if (chara.GetComponent() != null) chara.GetComponent().speed = value; if (weapon && weapon.GetComponent() != null) @@ -434,6 +447,18 @@ public class Main : MonoBehaviour weaponR.GetComponent().SetTrigger(Animator.StringToHash(triggerName)); } + void SetInteger(string triggerName, int value) + { + if (chara.GetComponent() != null) + chara.GetComponent().SetInteger(Animator.StringToHash(triggerName), value); + if (weapon && weapon.GetComponent() != null) + weapon.GetComponent().SetInteger(Animator.StringToHash(triggerName), value); + if (weaponL && weaponL.GetComponent() != null) + weaponL.GetComponent().SetInteger(Animator.StringToHash(triggerName), value); + if (weaponR && weaponR.GetComponent() != null) + weaponR.GetComponent().SetInteger(Animator.StringToHash(triggerName), value); + } + void setFloat(string triggerName, float value) { if (chara.GetComponent() != null) @@ -457,6 +482,25 @@ public class Main : MonoBehaviour if (weaponR && weaponR.GetComponent() != null) weaponR.GetComponent().SetBool(Animator.StringToHash(triggerName), value); } + + void EventStep() + { + setTrigger("EventStep"); + } + + void rotate180() + { + chara.transform.rotation = Quaternion.Euler(0, 180, 0); + if (weapon != null) weapon.transform.rotation = Quaternion.Euler(0, 180, 0); + if (attachment != null) attachment.transform.rotation = Quaternion.Euler(0, 180, 0); + } + + void rotate0() + { + chara.transform.rotation = Quaternion.Euler(0, 0, 0); + if (weapon != null) weapon.transform.rotation = Quaternion.Euler(0, 0, 0); + if (attachment != null) attachment.transform.rotation = Quaternion.Euler(0, 0, 0); + } #endregion @@ -480,6 +524,8 @@ public class Main : MonoBehaviour else if (Input.GetKeyDown(KeyCode.F)) setAttack(3); else if (Input.GetKeyDown(KeyCode.G)) setAttack(4); else if (Input.GetKeyDown(KeyCode.X)) setDamage(); + else if (Input.GetKeyDown(KeyCode.J)) setBattleStartPlayer(); + else if (Input.GetKeyDown(KeyCode.K)) setBattleStartBoss(); else if (Input.GetKeyDown(KeyCode.Space)) GameObject.Find("stopbutton").GetComponent