|
|
@@ -35,7 +35,7 @@ public class ESpirits_Cook : MonoBehaviour
|
|
|
|
|
|
public float larger; //顾客变大的程度
|
|
|
|
|
|
- private Character target;
|
|
|
+ public Character target;
|
|
|
public SearchTrigger searchtrigger;
|
|
|
|
|
|
public GameObject lockEffect;
|
|
|
@@ -92,56 +92,59 @@ public class ESpirits_Cook : MonoBehaviour
|
|
|
private void TargetInteract()
|
|
|
{
|
|
|
target = searchtrigger.GetMinDisTarget(ene.targetTypes, ene.canHitFly);
|
|
|
- if (state == cookState.sell && (target.gameObject.layer == 7 || target.gameObject.layer == 8 || target.gameObject.layer == 6))
|
|
|
+ if (target != null)
|
|
|
{
|
|
|
- if (!isInterval && chuan > 0)
|
|
|
+ if (state == cookState.sell && (target.gameObject.layer == 7 || target.gameObject.layer == 8 || target.gameObject.layer == 6))
|
|
|
{
|
|
|
- if (!target.cooks.Exists(T => T == gameObject))
|
|
|
+ if (!isInterval && chuan > 0)
|
|
|
{
|
|
|
- isInterval = true;
|
|
|
- chuan -= 1;
|
|
|
- text.text = chuan.ToString();
|
|
|
- ani.Play("attack_march", 0, 0);
|
|
|
- target.HpUp(value, larger);
|
|
|
- target.cooks.Add(gameObject);
|
|
|
- //count += 1;
|
|
|
- //Instantiate(effect, ga.transform.position, new Quaternion(0, 0, 0, 0), ga.transform);
|
|
|
- if (chuan == 0)
|
|
|
+ if (!target.cooks.Exists(T => T == gameObject))
|
|
|
{
|
|
|
- ani.Play("charge", 0, 0);
|
|
|
- Invoke("ToRush", chargeTime);
|
|
|
+ isInterval = true;
|
|
|
+ chuan -= 1;
|
|
|
+ text.text = chuan.ToString();
|
|
|
+ ani.Play("attack_march", 0, 0);
|
|
|
+ target.HpUp(value, larger);
|
|
|
+ target.cooks.Add(gameObject);
|
|
|
+ //count += 1;
|
|
|
+ //Instantiate(effect, ga.transform.position, new Quaternion(0, 0, 0, 0), ga.transform);
|
|
|
+ if (chuan == 0)
|
|
|
+ {
|
|
|
+ ani.Play("charge", 0, 0);
|
|
|
+ Invoke("ToRush", chargeTime);
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
- }
|
|
|
- //抓人
|
|
|
- else if (state == cookState.run)
|
|
|
- {
|
|
|
- if (target.gameObject.layer == 6 || target.gameObject.layer == 7)
|
|
|
+ //抓人
|
|
|
+ else if (state == cookState.run)
|
|
|
{
|
|
|
- food = target.gameObject;
|
|
|
- if (food.layer == 7 && !target.isDie)
|
|
|
- {
|
|
|
- //food.GetComponent<Demonic>().ChangeState(CharacterState.Coma);
|
|
|
- food.GetComponent<Demonic>().ChangeState(CharacterState.Die);
|
|
|
- //cookKillEffect.SetActive(true);
|
|
|
- ChangeState(cookState.seize);
|
|
|
- }
|
|
|
- else if (food.layer == 6 && !target.isDie)
|
|
|
+ if (target.gameObject.layer == 6 || target.gameObject.layer == 7)
|
|
|
{
|
|
|
- //food.GetComponent<PlayerController>().ChangeState(CharacterState.Coma);
|
|
|
- food.GetComponent<PlayerController>().ChangeState(CharacterState.Die);
|
|
|
- //cookKillEffect.SetActive(true);
|
|
|
- ChangeState(cookState.seize);
|
|
|
+ food = target.gameObject;
|
|
|
+ if (food.layer == 7 && !target.isDie)
|
|
|
+ {
|
|
|
+ //food.GetComponent<Demonic>().ChangeState(CharacterState.Coma);
|
|
|
+ food.GetComponent<Demonic>().ChangeState(CharacterState.Die);
|
|
|
+ //cookKillEffect.SetActive(true);
|
|
|
+ ChangeState(cookState.seize);
|
|
|
+ }
|
|
|
+ else if (food.layer == 6 && !target.isDie)
|
|
|
+ {
|
|
|
+ //food.GetComponent<PlayerController>().ChangeState(CharacterState.Coma);
|
|
|
+ food.GetComponent<PlayerController>().ChangeState(CharacterState.Die);
|
|
|
+ //cookKillEffect.SetActive(true);
|
|
|
+ ChangeState(cookState.seize);
|
|
|
+ }
|
|
|
+ chuan = food.GetComponent<Character>().cookNum;
|
|
|
+ text.text = chuan.ToString();
|
|
|
}
|
|
|
- chuan = food.GetComponent<Character>().cookNum;
|
|
|
- text.text = chuan.ToString();
|
|
|
}
|
|
|
- }
|
|
|
- //回家卖串
|
|
|
- else if (state == cookState.back && target.gameObject.layer == 8)
|
|
|
- {
|
|
|
- ChangeState(cookState.cook);
|
|
|
+ //回家卖串
|
|
|
+ else if (state == cookState.back && target.gameObject.layer == 8)
|
|
|
+ {
|
|
|
+ ChangeState(cookState.cook);
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
|
|
|
@@ -273,4 +276,12 @@ public class ESpirits_Cook : MonoBehaviour
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
+ private void FixedUpdate()
|
|
|
+ {
|
|
|
+ if (isAct)
|
|
|
+ {
|
|
|
+ TargetInteract();
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|