public void DisplayText(HitDisplayData data) { var parent = GameObject.FindGameObjectWithTag("WorldSpaceCanvas"); var display = new GameObject(); display.transform.position = (data.Target.transform.position); var text = display.AddComponent <Text>(); var position = data.Target.transform.position; position.y += data.YOffset; text.alignment = TextAnchor.MiddleCenter; text.color = data.Color; text.fontSize = 16; text.rectTransform.SetParent(parent.transform); text.rectTransform.position = position; text.rectTransform.sizeDelta = new Vector2(200f, 200f); text.rectTransform.localScale = new Vector3(0.0075f, 0.0075f); text.name = "Hit Text"; text.text = data.Text; Font fontToUse = Resources.Load("Fonts/8bitOperatorPlus8-Bold") as Font; text.font = fontToUse; var script = display.AddComponent <SDestroyByLifetime>(); script.AddCallback(data.CallbackHandler); script.Init(display, data.Dur); var floating = display.AddComponent <SFloatingText>(); floating.Init(display, 0.0015f, data.Delay); }
public void DisplayText(string text, CChar tgt, Color color) { var data = new HitDisplayData(); data.Color = color; data.Hit = null; data.Target = tgt.GameHandle; data.Text = text; data.YOffset = CombatGUIParams.FLOAT_OFFSET; data.Display(); }
public void DisplayActionEventName(MAction a) { var data = new HitDisplayData(); data.Color = CombatGUIParams.WHITE; data.Hit = null; data.Target = a.Data.Source.GameHandle; data.Text = a.ActiveAbility.Type.ToString().Replace("_", " "); data.YOffset = CombatGUIParams.FLOAT_OFFSET; data.Display(); }
public void DisplayBark(string bark, GameObject o) { var data = new HitDisplayData(); data.Color = CombatGUIParams.WHITE; data.Delay = ViewParams.BARK_DELAY; data.Dur = ViewParams.BARK_DUR; data.Priority = ViewParams.DMG_PRIORITY; data.Target = o; data.Text = bark; data.YOffset = CombatGUIParams.FLOAT_OFFSET; data.Display(); }
private void Process() { if (this._data.Hit.Data.Dmg < this._data.Target.Proxy.GetPoints(ESecondaryStat.HP)) { var proxy = this._data.Target.Proxy; proxy.AddInjury(this._data.Injury); var data = new HitDisplayData(); data.Color = CombatGUIParams.RED; data.Hit = this._data.Hit; data.Priority = ViewParams.INJURY_PRIORITY; data.Target = this._data.Target.GameHandle; data.Text = this._data.Injury.Type.ToString().Replace("_", " "); data.YOffset = CombatGUIParams.FLOAT_OFFSET; data.Hit.AddDataDisplay(data); } }
public void DisplayBarrierCreation(CChar target, MHit hit, MBarrier barrier) { var dmgData = new HitDisplayData(); dmgData.Color = CombatGUIParams.BLUE; dmgData.Hit = hit; dmgData.Priority = ViewParams.BARRIER_PRIORITY; dmgData.Text = barrier.MaxHP.ToString(); dmgData.Target = target.GameHandle; dmgData.YOffset = CombatGUIParams.FLOAT_OFFSET; dmgData.Hit.AddDataDisplay(dmgData); this.DisplayBarrier(target, hit); var controller = new ParticleController(); var util = new DecoUtil(); var particles = controller.CreateParticle(BARRIER_PARTICLE_PATH); util.AttachEffectParticlesToChar(target, particles, EEffect.Barrier); }
private void DisplayDodge(CChar target, MHit hit) { var dodge = target.GameHandle.AddComponent <SBoomerang>(); var dodgeTgt = ListUtil <CTile> .GetRandomElement(target.Tile.GetAdjacent()); var position = Vector3.Lerp(target.GameHandle.transform.position, dodgeTgt.Model.Center, CombatGUIParams.DODGE_LERP); position = RandomPositionOffset.RandomOffset(position, CombatGUIParams.DEFAULT_OFFSET); dodge.AddCallback(hit.CallbackHandler); dodge.Init(target.GameHandle, position, CombatGUIParams.DODGE_SPEED); var data = new HitDisplayData(); data.Color = CombatGUIParams.WHITE; data.Hit = hit; data.Priority = ViewParams.DODGE_PRIORITY; data.Text = "Dodge"; data.Target = target.GameHandle; data.YOffset = CombatGUIParams.FLOAT_OFFSET; data.Hit.AddDataDisplay(data); }
private void DisplayParry(CChar target, MHit hit) { var data = new HitDisplayData(); data.Color = CombatGUIParams.WHITE; data.Hit = hit; data.Priority = ViewParams.PARRY_PRIORITY; data.Target = target.GameHandle; data.Text = "Parry"; data.YOffset = CombatGUIParams.FLOAT_OFFSET; data.Hit.AddDataDisplay(data); if (target.Proxy.GetRWeapon() != null && !target.Proxy.GetRWeapon().IsTypeOfShield()) { var wpn = target.SubComponents[SortingLayers.CHAR_R_WEAPON]; this.DisplayParryAndBlockHelper(target, hit, wpn); } else if (target.Proxy.GetLWeapon() != null && !target.Proxy.GetLWeapon().IsTypeOfShield()) { var wpn = target.SubComponents[SortingLayers.CHAR_L_WEAPON]; this.DisplayParryAndBlockHelper(target, hit, wpn); } }
private void DisplayDamage(CChar target, MHit hit) { var dmgData = new HitDisplayData(); dmgData.Color = CombatGUIParams.RED; dmgData.Hit = hit; dmgData.Priority = ViewParams.DMG_PRIORITY; dmgData.Text = hit.Data.Dmg.ToString(); dmgData.Target = target.GameHandle; dmgData.YOffset = CombatGUIParams.FLOAT_OFFSET; dmgData.Hit.AddDataDisplay(dmgData); if (FHit.HasFlag(hit.Data.Flags.CurFlags, FHit.Flags.Critical)) { var critData = new HitDisplayData(); critData.Color = CombatGUIParams.RED; critData.Hit = hit; critData.Priority = ViewParams.CRIT_PRIORITY; critData.Text = "CRIT!"; critData.Target = target.GameHandle; critData.YOffset = CombatGUIParams.FLOAT_OFFSET; critData.Hit.AddDataDisplay(critData); } }