public override void Damage(int damage, CaptainEnemy captain, EnemyController enemy) { if (enemyInfo.hp <= 0) { return; } enemyInfo.hp -= damage; if (enemyInfo.hp <= 0) { captain.RemoveAbeSan(enemy); enemyInfo.hp = 0; } if (enemyInfo.pushForce_y > 0) { enemyInfo.animator.Play("Down"); } else { AnimatorStateInfo nowState = enemyInfo.animator.GetCurrentAnimatorStateInfo(0); if (nowState.IsName("Damage")) { enemyInfo.animator.Play("Damage_2"); } else { enemyInfo.animator.Play("Damage"); } } }
public virtual void Damage(int damage, CaptainEnemy captain, EnemyController enemy) { //if (HP <= 0) return; enemyInfo.hp -= damage; if (enemyInfo.hp <= 0) { if (captain != null) { captain.RemoveAbeSan(enemy); } enemyInfo.hp = 0; } if (enemyInfo.pushForce_y > 0) { enemyInfo.animator.Play("Down"); } else { AnimatorStateInfo nowState = enemyInfo.animator.GetCurrentAnimatorStateInfo(0); if (nowState.IsName("Damage")) { enemyInfo.animator.Play("Damage_2"); } else { enemyInfo.animator.Play("Damage"); } } nextState = new AnomalyState(enemyInfo); //nextState.Push (pushForce_z, pushForce_y, pushDirection); }
public void RemoveEnemyCaptain(CaptainEnemy cab) { captainList.Remove(cab); if (captainList.Count <= 0) { CreateEnemy(MAX_CAPTAIN); } }
public void Prepare(PlayerController p, CaptainEnemy cap, EnemyData data) { animator = GetComponent <Animator> (); player = p; captain = cap; characterController_ = GetComponent <CharacterController> (); //collision = GetComponentInChildren<AbeCollision> (); enemyInfo = new EnemyInformation(animator, player, transform); enemyInfo.hp = data.Hp; enemyInfo.attack = data.attack; enemyInfo.moveSpeed = data.speed; enemyInfo.range = data.range; nowState = new NormalState(enemyInfo); nowState.targetPosition = transform.position; }
private void CreateEnemy(int number) { for (int i = 0; i < number; i++) { GameObject captain = new GameObject("Captain"); captain.name = "Captain00" + i.ToString(); captain.tag = "Captain"; Vector3 pos = transform.TransformPoint(new Vector3(Random.Range(1f, -1f), 0f, i * -2.0f + Random.Range(-1f, 0f))); captain.transform.position = pos; captain.transform.parent = transform; CaptainEnemy captainAbe = captain.AddComponent <CaptainEnemy> (); Rigidbody rigid = captain.AddComponent <Rigidbody> (); rigid.useGravity = false; int index = Random.Range(0, 2); captainAbe.Prepare(player, gameManager.dataManager.enemyData[index]); captainAbe.LookAtPlayer(); captainList.Add(captainAbe); } }
public override void Damage(int damage, CaptainEnemy captain, EnemyController enemy) { }