private void CreateAdditionalDamage(Vector3 pos, int damage, UIDamageNum.DAMAGE_COLOR color, int groupOffet, UIDamageNum originalDamage, int effective) { //IL_005a: Unknown result type (might be due to invalid IL or missing references) //IL_005f: Expected O, but got Unknown //IL_005f: Unknown result type (might be due to invalid IL or missing references) //IL_0064: Expected O, but got Unknown //IL_0079: Unknown result type (might be due to invalid IL or missing references) //IL_007e: Expected O, but got Unknown //IL_00b5: Unknown result type (might be due to invalid IL or missing references) UIAdditionalDamageNum uIAdditionalDamageNum = null; int i = 0; for (int count = additionalDamageNumList.Count; i < count; i++) { if (!additionalDamageNumList[i].enable) { uIAdditionalDamageNum = additionalDamageNumList[i]; break; } } if (uIAdditionalDamageNum == null) { GameObject val = Object.Instantiate(m_additionalDamageNumObj); if (val == null) { return; } Utility.Attach(base._transform, val.get_transform()); uIAdditionalDamageNum = val.GetComponent<UIAdditionalDamageNum>(); if (uIAdditionalDamageNum == null) { Object.Destroy(val); return; } additionalDamageNumList.Add(uIAdditionalDamageNum); } groupOffet += additionalGroupOffset; if (!uIAdditionalDamageNum.Initialize(pos, damage, color, groupOffet, originalDamage, effective)) { return; } }
public void Create(Vector3 pos, int damage, UIDamageNum.DAMAGE_COLOR color, int groupOffset = 0, int effective = 0) { //IL_0001: Unknown result type (might be due to invalid IL or missing references) //IL_004d: Unknown result type (might be due to invalid IL or missing references) //IL_004e: Unknown result type (might be due to invalid IL or missing references) //IL_0053: Unknown result type (might be due to invalid IL or missing references) //IL_006e: Unknown result type (might be due to invalid IL or missing references) //IL_006f: Unknown result type (might be due to invalid IL or missing references) //IL_0074: Unknown result type (might be due to invalid IL or missing references) //IL_00b4: Unknown result type (might be due to invalid IL or missing references) //IL_0133: Unknown result type (might be due to invalid IL or missing references) //IL_0138: Expected O, but got Unknown //IL_0138: Unknown result type (might be due to invalid IL or missing references) //IL_013d: Expected O, but got Unknown //IL_0155: Unknown result type (might be due to invalid IL or missing references) //IL_015a: Expected O, but got Unknown //IL_01ec: Unknown result type (might be due to invalid IL or missing references) //IL_01f3: Unknown result type (might be due to invalid IL or missing references) //IL_01f6: Unknown result type (might be due to invalid IL or missing references) //IL_0202: Unknown result type (might be due to invalid IL or missing references) //IL_0207: Unknown result type (might be due to invalid IL or missing references) //IL_020c: Unknown result type (might be due to invalid IL or missing references) //IL_021b: Unknown result type (might be due to invalid IL or missing references) //IL_0220: Unknown result type (might be due to invalid IL or missing references) //IL_0225: Unknown result type (might be due to invalid IL or missing references) //IL_02dc: Unknown result type (might be due to invalid IL or missing references) if (this.get_gameObject().get_activeInHierarchy()) { float pixelHeight = MonoBehaviourSingleton<InGameCameraManager>.I.GetPixelHeight(); Vector3 pos2 = default(Vector3); pos2._002Ector(pos.x, pos.y + MonoBehaviourSingleton<InGameSettingsManager>.I.selfController.screenSaftyOffset, pos.z); Vector3 pos3 = MonoBehaviourSingleton<InGameCameraManager>.I.WorldToScreenPoint(pos2); if (pos3.y > pixelHeight) { pos3.y = pixelHeight; pos = MonoBehaviourSingleton<InGameCameraManager>.I.ScreenToWorldPoint(pos3); pos.y -= MonoBehaviourSingleton<InGameSettingsManager>.I.selfController.screenSaftyOffset; } bool flag = color != UIDamageNum.DAMAGE_COLOR.BUFF && UIDamageNum.DAMAGE_COLOR.NONE != color; if (groupOffset > 0 || flag) { CreateAdditionalDamage(pos, damage, color, groupOffset, originalDamage, effective); } else { UIDamageNum uIDamageNum = null; int num = 0; int i = 0; for (int count = damageNumList.Count; i < count; i++) { if (!damageNumList[i].enable) { uIDamageNum = damageNumList[i]; num = i; break; } } if (uIDamageNum == null) { GameObject val = Object.Instantiate(m_damageNumObj); if (val == null) { return; } Utility.Attach(base._transform, val.get_transform()); uIDamageNum = val.GetComponent<UIDamageNum>(); if (uIDamageNum == null) { Object.Destroy(val); return; } damageNumList.Add(uIDamageNum); num = damageNumList.Count - 1; } additionalGroupOffset = 0; originalDamage = null; int num2 = 0; int num3 = 0; while (num2 < damageNumList.Count) { if (num2 != num && damageNumList[num2].enable) { if (num3 > 10) { groupOffset = 0; additionalGroupOffset = 0; break; } uIDamageNum.get_transform().set_position(uIDamageNum.GetUIPosFromWorld(pos, groupOffset)); Vector3 localPosition = uIDamageNum.get_transform().get_localPosition(); Vector3 localPosition2 = damageNumList[num2].get_transform().get_localPosition(); if (Mathf.Abs(localPosition2.x - localPosition.x) < uIDamageNum.grid.cellWidth * (float)damageNumList[num2].DamageLength && Mathf.Abs(localPosition2.y - localPosition.y) < uIDamageNum.grid.cellHeight - uIDamageNum.grid.cellHeight / 4f) { groupOffset++; additionalGroupOffset++; num2 = 0; num3++; continue; } } num2++; } originalDamage = uIDamageNum; if (!uIDamageNum.Initialize(pos, damage, color, groupOffset)) { return; } } } }