private void CheckMonster(Vector3 boomPos, float DamageRadius) { HitPart[] array = ExplosionUtil.CheckMon(boomPos, DamageRadius, includeFriendly: false); for (int i = 0; i < array.Length; i++) { MonProperty[] allComponents = Recursively.GetAllComponents <MonProperty>(array[i].transform, includeInactive: false); if (allComponents.Length == 1 && (MyInfoManager.Instance.Slot >= 4 || !allComponents[i].Desc.bRedTeam) && (MyInfoManager.Instance.Slot < 4 || allComponents[i].Desc.bRedTeam)) { MonManager.Instance.Hit(allComponents[0].Desc.Seq, poisonDamage, 1f, -4, Vector3.zero, Vector3.zero, -1); } } }
private void CheckMonster() { HitPart[] array = ExplosionUtil.CheckMon(base.transform.position, radius, includeFriendly: false); for (int i = 0; i < array.Length; i++) { MonProperty[] allComponents = Recursively.GetAllComponents <MonProperty>(array[i].transform, includeInactive: false); if (allComponents.Length == 1 && (MyInfoManager.Instance.Slot >= 4 || !allComponents[i].Desc.bRedTeam) && (MyInfoManager.Instance.Slot < 4 || allComponents[i].Desc.bRedTeam)) { int num = Mathf.FloorToInt(array[i].damageFactor * CalcPowFrom(array[i].transform.position)); if (num > 0) { MonManager.Instance.Hit(allComponents[0].Desc.Seq, num, 1f, (int)weaponBy, Vector3.zero, Vector3.zero, -1); } } } }