summaryrefslogtreecommitdiff
path: root/SurvivalTest/Assets/Scripts/Equips/Equip_Gun.cs
diff options
context:
space:
mode:
Diffstat (limited to 'SurvivalTest/Assets/Scripts/Equips/Equip_Gun.cs')
-rw-r--r--SurvivalTest/Assets/Scripts/Equips/Equip_Gun.cs37
1 files changed, 36 insertions, 1 deletions
diff --git a/SurvivalTest/Assets/Scripts/Equips/Equip_Gun.cs b/SurvivalTest/Assets/Scripts/Equips/Equip_Gun.cs
index b370e66..fbc3aac 100644
--- a/SurvivalTest/Assets/Scripts/Equips/Equip_Gun.cs
+++ b/SurvivalTest/Assets/Scripts/Equips/Equip_Gun.cs
@@ -3,7 +3,7 @@ using System.Collections.Generic;
using UnityEngine;
/// <summary>
-/// ǹ
+/// 枪
/// </summary>
public class Equip_Gun : EquipBase
{
@@ -16,8 +16,43 @@ public class Equip_Gun : EquipBase
public override float interval => 0.1f;
+ private string prefabPath = "prefabs/bullet/bullet";
+
+ private int index = 0;
+
+ TestPeaceMakerBullet CreateBullet(CrewScript crew, Vector2 dir, float speed, float lifeTime)
+ {
+
+ TestPeaceMakerBullet bullet = UnityEngine.Object.Instantiate<TestPeaceMakerBullet>(ResourceManager.Instance.Load< TestPeaceMakerBullet>(prefabPath));
+
+ bullet.transform.position = crew.arrow.position + new Vector3(crew.aimDirection.x, crew.aimDirection.y, 0) * -0.3f;
+
+ bullet.Set(dir, speed, lifeTime);
+ bullet.gameObject.SetActive(true);
+
+ return bullet;
+ }
+
public override void OnTrigger(GameObject owner)
{
+ CrewScript crew = owner.GetComponent<CrewScript>();
+
+ index++;
+ index = index % 3;
+
+ if(index == 0)
+ {
+ CreateBullet(crew, TestMathHelper.Rotate(crew.aimDirection, -10 * Mathf.Deg2Rad), 12f, 2f);
+ }
+ else if(index == 1)
+ {
+ CreateBullet(crew, crew.aimDirection, 12f, 2f);
+ }
+ else if(index == 2)
+ {
+ CreateBullet(crew, TestMathHelper.Rotate(crew.aimDirection, 10 * Mathf.Deg2Rad), 12f, 2f);
+ }
+
}
} \ No newline at end of file