using System; using System.Collections; using System.Collections.Generic; using cfg.BlacksmithData; using UnityEngine; using Random = UnityEngine.Random; public class Bullet : MonoBehaviour { [SerializeField] private SpriteRenderer _sprite; public int Attack => attack; private int attack = 0; private int num = 1; public float Speed => speed; private float speed=0; public int Cri => criti; private int criti; public float NextTime; private float time=0; public bool Start => start; private bool start=false; public void SetAttack(SkillState itemData, int a,float sp= 1,int nu=1,int criticalStrike =0) { var skillData=JsonTab.Instance.tables.SkillStructure.Get(itemData.data.Skillbody); _sprite.sprite = AssetBundleManager.ins.Sprite(skillData.Skillbodyicon, AtlasType.ButtleIcon); switch (skillData.Skillbodyicon) { case "jian1": SoundSystem.ins.Attack1Audio(); break; case "jian2": SoundSystem.ins.Attack1Audio(); break; case "jian3": SoundSystem.ins.Attack1Audio(); break; case "jian4": SoundSystem.ins.Attack1Audio(); break; case "shitou": SoundSystem.ins.Attack1Audio(); break; case "changbing1": break; case "changbing2": break; case "changbing3": break; case "changbing4": break; case "huoqiu": break; case "gongshi": break; case "feibiao1": break; case "feibiao2": break; case "feibiao3": break; case "feibiao4": break; } attack = a; speed = sp; num = nu; time = BattleManager.ins.NowTime + 10; start = true; criti = criticalStrike; } private void OnTriggerEnter2D(Collider2D other) { var mouster=other.GetComponent(); if (!start|| mouster == null) return; var r = criti>Random.Range(0, 100); var a = r ? Attack : Attack * 1.5; mouster.SetInjured((int) a); num -= 1; if (num<=0) { start = false; BattleManager.ins.RemoveBullets(this); } } public void BulletUpdate() { if (!start) { return; } if (time