void OnCollisionEnter2D(Collision2D col) { //if (col.gameObject.tag != "Player") //{ // Destroy(gameObject); //} switch (col.gameObject.tag) { case ("Player"): if (canHitPlayer) { Destroy(gameObject); } break; case ("Enemy"): EnemyBrain enemyBrain = col.gameObject.GetComponent <EnemyBrain>(); enemyBrain.TakeDamage(damage, lethal); Destroy(gameObject); break; } //Debug.Log(col.gameObject.name); if (col.gameObject.layer == 8) { Destroy(gameObject); } }
void Awake() { animManager = GetComponent <SoldierAnimationManager>(); timeUtils = GetComponent <TimeUtils>(); blink = GetComponent <Blink>(); brain = GetComponent <EnemyBrain>(); }
void Start() { flashRed = GetComponent <FlashUsingMaterial>(); animator = GetComponent <Animator>(); audioManager = GetComponent <SlugAudioManager>(); brain = GetComponent <MummyBrain>(); }
private IEnumerator UpdateNPCTalkingAfterBreakedBariier() { GameSceneTables.SectionData sectionData = MonoBehaviourSingleton <GameSceneManager> .I.GetCurrentSection().sectionData; Player hound_A = MonoBehaviourSingleton <StageObjectManager> .I.nonplayerList[0] as Player; Player hound_B = MonoBehaviourSingleton <StageObjectManager> .I.nonplayerList[1] as Player; Player beginner = MonoBehaviourSingleton <StageObjectManager> .I.nonplayerList[2] as Player; hound_B.uiPlayerStatusGizmo.SayChat(sectionData.GetText("STR_VORGON_HINT_9")); yield return((object)new WaitForSeconds(4f)); hound_A.uiPlayerStatusGizmo.SayChat(sectionData.GetText("STR_VORGON_HINT_10")); yield return((object)new WaitForSeconds(4f)); beginner.uiPlayerStatusGizmo.SayChat(sectionData.GetText("STR_VORGON_HINT_11")); yield return((object)new WaitForSeconds(20f)); hound_B.uiPlayerStatusGizmo.SayChat(sectionData.GetText("STR_VORGON_HINT_12")); EnemyBrain brain = enemy.GetComponentInChildren <EnemyBrain>(); for (int i = 0; i < brain.actionCtrl.actions.Count; i++) { brain.actionCtrl.actions[i].isForceDisable = (i != 14); finish = true; } yield return((object)new WaitForSeconds(5f)); hound_A.uiPlayerStatusGizmo.SayChat(sectionData.GetText("STR_VORGON_HINT_13")); yield return((object)null); }
private void UpdateVorgonBattle() { //IL_0018: Unknown result type (might be due to invalid IL or missing references) //IL_0055: Unknown result type (might be due to invalid IL or missing references) if (!npcStartedTalking) { npcStartedTalking = true; this.StartCoroutine("UpdateNPCTalking"); } if (vorgonBarrierBrokenProc && !npcAnnouncedHint && !enemy.IsValidBarrier) { this.StopCoroutine("UpdateNPCTalking"); this.StartCoroutine("UpdateNPCTalkingAfterBreakedBariier"); npcAnnouncedHint = true; } if ((float)enemy.hp / (float)enemy.hpMax <= 0.5f || MonoBehaviourSingleton <InGameProgress> .I.remaindTime < 84f) { this.StopCoroutine("UpdateNPCTalking"); this.StopCoroutine("UpdateNPCTalkingAfterBreakedBariier"); EnemyBrain componentInChildren = enemy.GetComponentInChildren <EnemyBrain>(); for (int i = 0; i < componentInChildren.actionCtrl.actions.Count; i++) { componentInChildren.actionCtrl.actions[i].isForceDisable = (i == 14); finish = true; } } }
private void DeActivateSwarm() { foreach (var swarm_member in SwarmMembers) { EnemyBrain eb = swarm_member.GetComponent <EnemyBrain>(); eb.Reset(); } }
public void AlertOthers(EnemyBrain e, GameObject target) { for (int i = 0; i < enemys.Length; i++) { enemys[i].movement.moveTarget = target; enemys[i].alerted = true; enemys[i].health.DamageEvent -= enemys[i].OnHitAlert; } }
public virtual void Awake() { AI = GetComponent <EnemyBrain>(); EnemyUI = GetComponent <EnemyUI>(); EnemyUI.Initialize(); Health = GetComponent <Health>(); EnemyUI.UpdateHealthBar(Health); Attack = GetComponent <Attack>(); }
private void OnTriggerEnter(Collider other) { if (other.gameObject.CompareTag("Enemy")) { EnemyBrain b = other.GetComponent <EnemyBrain>(); b.movement.GiveSlow(slowAmount, Mathf.Infinity); b.animHook.SetAnimSpeed(0.4f); } }
private void OnTriggerExit(Collider other) { if (other.gameObject.CompareTag("Enemy")) { EnemyBrain b = other.GetComponent <EnemyBrain>(); b.movement.slowDuration = 0; b.animHook.SetAnimSpeed(1f); } }
private void Awake() { if (_playersCombat) { _playerBrain = this.GetComponent <PlayerBrain>(); } else { _enemyBrain = this.GetComponent <EnemyBrain>(); } }
public PiratePart(EnemyBehaviourFactory behaviourFactory, EnemyBrain brain, IPositionComponent Physical) { this.behaviourFactory = behaviourFactory; this.Brain = brain; this.Physical = Physical; behaviourTree = CreateBehaviourTree(); agent = new BehaviourTreeAgent(behaviourTree); Brain.LookDistance = 20; Brain.ShootDistance = 5; Brain.ShootInterval = 2; Brain.GunDamage = 20; }
public ProximityChaseEnemyPart(EnemyBehaviourFactory behaviourFactory, EnemyBrain brain, IPositionComponent Physical) { BehaviourFactory = behaviourFactory; behaviourTree = CreateBehaviourTree(); agent = new BehaviourTreeAgent(behaviourTree); GunChargedTime = -1; brain.LookDistance = 20; brain.ShootDistance = 5; brain.ShootInterval = 2; brain.GunDamage = 20; Brain = brain; this.Physical = Physical; }
// Use this for initialization void Start() { animator = GetComponent <Animator>(); enemyRigidBody = GetComponent <Rigidbody2D>(); enemyBrain = GetComponent <EnemyBrain>(); enemyCollider = GetComponent <BoxCollider2D>(); animator = GetComponent <Animator>(); swordHBRight = transform.Find("swordHBRight").gameObject; swordHBLeft = transform.Find("swordHBLeft").gameObject; enemyStun = false; gameManager = GameObject.Find("GameManager").GetComponent <GameManager>(); stepPlaying = false; }
public static void MakeDecision(EnemyBrain brain) { Vector2Int playerPosition; if (EnemyPerception.IsPlayerVisible(brain.position, out playerPosition)) { Chase(brain, playerPosition); } else { Patrol(brain); } }
void OnTriggerExit2D(Collider2D other) { if (other.tag == "Enemy_Blindspot") { //Display a fun little icon EnemyBrain enemy = other.GetComponentInParent <EnemyBrain>(); enemy.ToggleKnockoutIcon(false); } if (other.gameObject == m_currentObj) { m_currentObj = null; } }
void OnTriggerStay2D(Collider2D other) { if (other.tag == "Enemy_Blindspot") { if (Input.GetKeyDown(KeyCode.Mouse1)) { //PlayerPunch(); EnemyBrain enemy = other.GetComponentInParent <EnemyBrain>(); enemy.TakeDamage(10, false); } } //if(other.GetComponent<>) }
void Attack(EnemyBrain enemy) { int roll = DiceRoller.RollDice(1, 20); if ((roll + PlayerManager.stats.attackBonus) > MapManager.enemies[enemy.id].ac) { int damage = DiceRoller.RollDice(PlayerManager.stats.dicesDamage, PlayerManager.stats.sidesDamage); damage += PlayerManager.stats.bonusDamage; Debug.Log("Enemy got hit on " + damage + " hp!"); enemy.gameObject.GetComponent <EnemyHealth>().DealDamage(damage); } }
static void Attack(EnemyBrain brain) { PlayerHealth player = GameObject.Find("Player(Clone)").GetComponent <PlayerHealth>(); int roll = DiceRoller.RollDice(1, 20); if ((roll + MapManager.enemies[brain.id].baseAttack) > PlayerManager.stats.ac) { int damage = DiceRoller.RollDice(MapManager.enemies[brain.id].diceDamage, MapManager.enemies[brain.id].sidesDamage); damage += MapManager.enemies[brain.id].bonusDamage; Debug.Log("Player got hit on " + damage + " hp!"); player.DealDamage(damage); } }
public override void Enter(StateMachine fsm, Brain brain) { EnemyBrain enemyBrain = brain as EnemyBrain; EnemyActionController.ActionInfo nowAction = enemyBrain.actionCtrl.nowAction; if (nowAction.data.isRotate) { fsm.subFsm.ChangeState(STATE_TYPE.ROTATE); } else if (nowAction.data.isMove) { fsm.subFsm.ChangeState(STATE_TYPE.MOVE); } else { fsm.subFsm.ChangeState(STATE_TYPE.ATTACK); } }
void OnCollisionEnter2D(Collision2D col) { if (col.gameObject.tag != "Player") { Destroy(gameObject); } switch (col.gameObject.tag) { case ("Player"): Destroy(gameObject); break; case ("Enemy"): EnemyBrain enemyBrain = col.gameObject.GetComponent <EnemyBrain>(); enemyBrain.TakeDamage(m_Damage); Destroy(gameObject); break; } }
//void OnCollisionStay(Collision collisionInfo) //{ // Debug.Log(collisionInfo.gameObject.tag); //} void OnTriggerEnter2D(Collider2D other) { if (other.tag == "Enemy_Blindspot") { //Display a fun little icon EnemyBrain enemy = other.GetComponentInParent <EnemyBrain>(); enemy.ToggleKnockoutIcon(true); } if (other.GetComponent <IUseable>() != null) { m_currentObj = other.gameObject; } if (other.tag == "Key") { hasKey = true; Destroy(other.gameObject); } }
static void Patrol(EnemyBrain brain) { List <Vector2Int> potentialPositions = new List <Vector2Int>(); foreach (Vector2Int pos in GetNeighboringPositions(brain.position)) { if (MapManager.map[pos.x, pos.y].isWalkable && !MapManager.map[pos.x, pos.y].hasEnemy) { potentialPositions.Add(pos); } } if (potentialPositions.Count > 0) { int roll = Random.Range(0, potentialPositions.Count - 1); Vector2Int target = potentialPositions[roll]; EnemyMovement.Move(target, brain); } }
public override void Process(StateMachine fsm, Brain brain) { EnemyBrain enemyBrain = brain as EnemyBrain; if (!(enemyBrain == null) && enemyBrain.opponentMem != null) { enemyBrain.opponentMem.Update(); enemyBrain.actionCtrl.SelectAction(); if (enemyBrain.actionCtrl.canUseCount <= 0) { fsm.processSpan.SetTempSpan(1f); } else if (enemyBrain.actionCtrl.totalWeight <= 0) { fsm.ChangeState(STATE_TYPE.SEARCH); } else { fsm.ChangeState(STATE_TYPE.ACTION); } } }
void Start() { sr = gameObject.AddComponent <SpriteRenderer>(); sr.sprite = enemyData.sprite; sr.material = enemyData.material; sr.sortingLayerName = "Game"; rb = gameObject.AddComponent <Rigidbody2D>(); rb.bodyType = RigidbodyType2D.Kinematic; bc = gameObject.AddComponent <BoxCollider2D>(); hc = gameObject.AddComponent <HealthComponent>(); hc.Setup(enemyData.MaxHealth); an = gameObject.AddComponent <Animator>(); an.runtimeAnimatorController = enemyData.animatorController; InitPoint = (Vector2)transform.position; enemyBrain = enemyData.enemyBrain; ChangeBehaviour(EnemyBehaviours.Idle); }
public void HateCtrl() { if (!object.ReferenceEquals(bulletData, null) && !object.ReferenceEquals(bulletData.dataDecoy, null) && !object.ReferenceEquals(MonoBehaviourSingleton <StageObjectManager> .I.boss, null)) { EnemyBrain component = MonoBehaviourSingleton <StageObjectManager> .I.boss.GetComponent <EnemyBrain>(); if (!object.ReferenceEquals(component, null)) { float num = (float)skillParam.supportValue[0] * 0.01f; if (bulletData.dataDecoy.addDecoyHate.Length > 0) { int i = 0; for (int num2 = bulletData.dataDecoy.addDecoyHate.Length; i < num2; i++) { BulletData.BulletDecoy.HateInfo hateInfo = bulletData.dataDecoy.addDecoyHate[i]; HateInfo hateInfo2 = new HateInfo(); hateInfo2.target = this; hateInfo2.value = (int)((float)hateInfo.value * num); hateInfo2.type = hateInfo.type; component.HandleEvent(BRAIN_EVENT.DECOY, hateInfo2); } } if (!object.ReferenceEquals(ownerPlayer, null) && bulletData.dataDecoy.addOwnerHate.Length > 0) { int j = 0; for (int num3 = bulletData.dataDecoy.addOwnerHate.Length; j < num3; j++) { BulletData.BulletDecoy.HateInfo hateInfo3 = bulletData.dataDecoy.addOwnerHate[j]; HateInfo hateInfo4 = new HateInfo(); hateInfo4.target = ownerPlayer; hateInfo4.value = (int)((float)hateInfo3.value * num); hateInfo4.type = hateInfo3.type; component.HandleEvent(BRAIN_EVENT.DECOY, hateInfo4); } } } } }
public static void Move(Vector2Int target, EnemyBrain brain) { if (MapManager.map[target.x, target.y].isWalkable && !MapManager.map[target.x, target.y].hasPlayer && !MapManager.map[target.x, target.y].hasEnemy) { MapManager.map[brain.position.x, brain.position.y].hasEnemy = false; MapManager.map[brain.position.x, brain.position.y].enemyID = -1; MapManager.map[brain.position.x, brain.position.y].enemyObject = null; brain.position = target; MapManager.map[brain.position.x, brain.position.y].hasEnemy = true; MapManager.map[brain.position.x, brain.position.y].enemyID = brain.id; MapManager.map[brain.position.x, brain.position.y].enemyObject = brain.gameObject; DungeonGenerator dungeon = GameObject.Find("GameManager").GetComponent <DungeonGenerator>(); brain.gameObject.transform.position = new Vector3(brain.position.x * dungeon.tileScaling, brain.position.y * dungeon.tileScaling, brain.gameObject.transform.position.z); } if (MapManager.map[target.x, target.y].hasPlayer) { Attack(brain); } }
private IEnumerator Start() { while (enemy == null) { if (MonoBehaviourSingleton <StageObjectManager> .IsValid()) { enemy = MonoBehaviourSingleton <StageObjectManager> .I.boss; } yield return((object)null); } if (MonoBehaviourSingleton <QuestManager> .IsValid()) { questType = MonoBehaviourSingleton <QuestManager> .I.GetVorgonQuestType(); } while (!MonoBehaviourSingleton <InGameProgress> .I.isBattleStart) { yield return((object)null); } if (questType == QuestManager.VorgonQuetType.BATTLE_WITH_VORGON) { EnemyBrain brain = enemy.GetComponentInChildren <EnemyBrain>(); brain.actionCtrl.actions[14].isForceDisable = true; } }
public void IDied(EnemyBrain eb) { DeadSwarmMembersCount++; }
public virtual void Init(EnemyBrain brain) { this.brain = brain; maxAttackRate = attackRate; }