public Heat(GameContext context, HeatData data, Entity entity, Gear item) { _data = data; Entity = entity; Item = item; Context = context; }
/// <summary> /// Plots the heat map. /// </summary> /// <param name="tag">Tag.</param> /// <param name="data">Data.</param> private void PlotHeatMap(HeatTag tag, HeatData data) { Vector3 pos = SnapCoord(data.vec, tag.Size); int key = pos.GetHashCode(); GameObject point; Color markerColor = Color.blue; if (markerTable.Contains(key)) { point = markerTable[key] as GameObject; markerColor = new Color( point.renderer.material.color.r + tag.MapPointColorDelta, point.renderer.material.color.g, point.renderer.material.color.b - tag.MapPointColorDelta ); } else { point = Instantiate(tag.Marker, pos, Quaternion.identity) as GameObject; point.renderer.enabled = true; markerTable.Add(key, point); } markerColor.a = tag.MapPointTransparencyValue; point.renderer.material.color = markerColor; }
public override Target CalculateDamage() { Target finalState = this.CurrentTarget; HeatData heat = _heatData; // No air friction attenuation as HEAT round detonates on surface of the armor if (finalState.EraData.Value > 0.0f) { // Calculate effects of ERA float finalEra = Math.Max( 0.0f, finalState.EraData.Value - heat.Power * finalState.EraData.HeatFractionMultiplier ); finalState.EraData.Value = finalEra; heat.Power = CalculatePostEraPower( heat.Power, finalState.EraData.HeatFractionMultiplier ); } // Armor degradation float finalArmor = Math.Max( 0.0f, finalState.Armor - (heat.Power / finalState.Armor) * heat.Degradation ); finalState.Armor = finalArmor; // Calculate final damage float finalDamage = Math.Max( 0.0f, (heat.Power - finalState.Armor) * heat.HealthDamageFactor ); float finalHealth = Math.Max( 0.0f, finalState.Health - finalDamage ); finalState.Health = finalHealth; return(finalState); }
/// <summary> /// /// </summary> /// <param name="deviceID"></param> /// <param name="data"></param> virtual public object InsertHeatData(int deviceID, HeatData data) { string s = "insert into tblHeatData(deviceid, dt, instantFlux, sum, IH, SH, GT, BT) " + "values(@deviceid, @dt, @instantFlux, @sum, @IH, @SH, @GT, @BT)"; KeyValueCollection kvs = new KeyValueCollection(); kvs.Add("deviceid", deviceID); kvs.Add("dt", data.DT); kvs.Add("instantFlux", data.InstantFlux); kvs.Add("sum", data.Sum); kvs.Add("IH", data.InstantHeat); kvs.Add("SH", data.SumHeat); kvs.Add("GT", data.GT); kvs.Add("BT", data.BT); return(this.ExecuteScalar(s, kvs)); }
private void TryCreateHeatWave(HeatData hd) { //if (Time.time - hd.LastShootTime > hd.Delay) { hd.LastShootTime = Time.time; GameObject go = GameObject.Instantiate(heatTemplate); go.transform.SetParent(this.transform); go.transform.position = this.transform.position; HeatWaveController wave = go.GetComponent <HeatWaveController>(); wave.Heat = hd; wave.Origin = this.transform; if (MicrowaveController.Instance.Status == MicrowaveController.MicroStatus.Running) { StartCoroutine(ExecuteAfterTime(hd.Delay)); MoveCursor(); } } }
/// <summary> /// /// </summary> /// <param name="deviceID"></param> /// <param name="data"></param> public virtual object InsertHeatData(int deviceID, HeatData data) { string s = "insert into tblHeatData(deviceid, dt, instantFlux, sum, IH, SH, GT, BT) " + "values(@deviceid, @dt, @instantFlux, @sum, @IH, @SH, @GT, @BT)" ; KeyValueCollection kvs = new KeyValueCollection(); kvs.Add("deviceid", deviceID); kvs.Add("dt", data.DT); kvs.Add("instantFlux", data.InstantFlux); kvs.Add("sum", data.Sum); kvs.Add("IH", data.InstantHeat); kvs.Add("SH", data.SumHeat); kvs.Add("GT", data.GT); kvs.Add("BT", data.BT); return this.ExecuteScalar(s, kvs); }
/// <summary> /// Plots the heat data. /// </summary> /// <returns>The heat.</returns> /// <param name="data">Data.</param> /// <param name="tag">Tag.</param> private IEnumerator PlotHeat(JSONNode data, HeatTag tag) { for (int i = 0; i < data.Count; i++) { HeatData heatData = new HeatData(data[i]); if (tag.Type == HeatTag.HeatType.MAP) { PlotHeatMap(tag, heatData); } else if (tag.Type == HeatTag.HeatType.POINT) { PlotHeatPoint(tag, heatData); } else { throw new Exception("HeatType not found"); } yield return(null); } }
/// <summary> /// Plots the heat point. /// </summary> /// <param name="tag">Tag.</param> /// <param name="data">Data.</param> private void PlotHeatPoint(HeatTag tag, HeatData data) { GameObject point = Instantiate(tag.Marker, data.vec, Quaternion.identity) as GameObject; point.renderer.enabled = true; }
public Heat(HeatData data, ConsumableItemEffect item) : base(data, item) { _data = data; }
public Heat(HeatData data, EquippedItem item) : base(data, item) { _data = data; }
public HeatDamage(HeatData data, Target target) : base(DamageTypes.HEAT, target) { _heatData = data; }