void ShoutOut() { if (hit_sphere.activeSelf) { hit_sphere.SetActive(false); InAttackRange(); } if (kinds != ArrowsKind.normal) { box.enabled = false; } controll.islunch = true; temp = Vector3.Distance(leftrain.transform.position, rightrain.transform.position); //Debug.Log(bstatus.ToString() + "<<<<<<<<<<<<"); if (rb != null) { rb.mass = 0.2f; rb.angularDrag = 0; rb.freezeRotation = true; switch (kinds) { case ArrowsKind.normal: if (temp < 0.15f) { rb.AddForce(-bullet.transform.up * 10f); } else { rb.AddForce(-bullet.transform.up * 1000f * (temp - 0.15f)); } controll.endpos = arrowstop; break; case ArrowsKind.torch: case ArrowsKind.ice: rb.AddForce(-bullet.transform.up * 1000f); break; default: break; } } else { Debug.Log("withoutrigidbody"); } status = shootstatus.stay; bstatus = bulletstatus.none; kinds = ArrowsKind.normal; fire_status = firestatus.reday; if (fire != null && bullet != null) { fire.transform.SetParent(bullet.transform); } // Destroy(fire, 1f); isfireon = false; /*重置箭头火焰是否点着*/ }
void Awake() { kinds = ArrowsKind.normal; status = shootstatus.none; bstatus = bulletstatus.none; fire_status = firestatus.reday; mask = LayerMask.GetMask("Floor"); }