public WeaponDamage(WeaponBaseType baseType, float rockDmg, float lasDmg, float acidDmg) { SetRocketDamage(rockDmg); SetLaserDamage(lasDmg); SetAcidDamage(acidDmg); SetBaseType(baseType); }
public void StartDamage(float interval, float dmgPerSec, WeaponBaseType wbt) { damagePerSecond = dmgPerSec; mTimer = interval; m_TimedDamageType = wbt; active = true; }
public void SetDamage(WeaponBaseType bt, float dmg) { switch (bt) { case WeaponBaseType.Rocket: { SetRocketDamage(dmg); } break; case WeaponBaseType.Laser: { SetLaserDamage(dmg); } break; case WeaponBaseType.Acid: { SetAcidDamage(dmg); } break; case WeaponBaseType.None: { SetRocketDamage(dmg); } break; } }
public void Add(float val, WeaponBaseType bt) { switch (bt) { case WeaponBaseType.Rocket: { m_RocketDamage += val; } break; case WeaponBaseType.Laser: { m_LaserDamage += val; } break; case WeaponBaseType.Acid: { m_AcidDamage += val; } break; case WeaponBaseType.None: { m_RocketDamage += val; } break; } }
public void ParseInfo(Hashtable info) { mRaw = info; this.id = info.GetValue <string>((int)SPC.Id, string.Empty); this.template = info.GetValue <string>((int)SPC.Template, string.Empty); this.level = info.GetValue <int>((int)SPC.Level, 0); //this.damage = info.Value<float>((int)SPC.Damage); this.optimalDistance = info.GetValue <float>((int)SPC.OptimalDistance, 0f); this.color = (ObjectColor)(byte)info.GetValue <int>((int)SPC.Color, (int)(byte)ObjectColor.white); this.damageType = (WeaponDamageType)(byte)info.GetValue <int>((int)SPC.DamageType, 0); this.baseCritChance = info.GetValue <float>((int)SPC.CritChance, 0f); this.mWorkshop = info.GetValue <int>((int)SPC.Workshop, (int)(byte)Workshop.DarthTribe); binded = info.GetValue <bool>((int)SPC.Binded, false); isNew = info.GetValue <bool>((int)SPC.IsNew, false); m_Damage.SetRocketDamage(info.GetValue <float>((int)SPC.RocketDamage, 0f)); m_Damage.SetLaserDamage(info.GetValue <float>((int)SPC.LaserDamage, 0f)); m_Damage.SetAcidDamage(info.GetValue <float>((int)SPC.AcidDamage, 0f)); int iBaseType = info.GetValue <int>((int)SPC.WeaponBaseType, (int)WeaponBaseType.None); WeaponBaseType wbt = (WeaponBaseType)iBaseType; if (wbt == WeaponBaseType.None) { wbt = WeaponBaseType.Laser; } m_Damage.SetBaseType(wbt); }
//public float ReceiveDamage(byte damagerType, string damagerID, float damage) { // return ReceiveDamage(damagerType, damagerID, damage, (byte)Workshop.Arlen, 1); //} public void SetTimedDamage(float interval, float damagePerSecond, WeaponBaseType wbt, int skillID) { if (timedDamage != null) { timedDamage.StartDamage(interval, damagePerSecond, wbt); if (mBonuses != null) { Buff buff = new Buff(skillID.ToString(), null, BonusType.timed_damage, interval, damagePerSecond); mBonuses.SetBuff(buff, null); } } }
public void Mult(WeaponBaseType bt, float val) { switch (bt) { case WeaponBaseType.Acid: { m_AcidDamage *= val; } break; case WeaponBaseType.Laser: { m_LaserDamage *= val; } break; case WeaponBaseType.Rocket: { m_RocketDamage *= val; } break; } }
public Weapon(string name, WeaponBaseType weaponBaseType, WeaponSubType weaponSubType, WeaponProficiencyType weaponProficiencyType, WeaponEffortType weaponEffortType, int[] mediumDamageRoll, WeaponAttackType weaponAttackType, int criticalMinRoll, int criticalMultiplier, WeaponDamageType[] weaponDamageTypes, int range, SizeType sizeType, double cost, double weight, string description) : base(name, cost, weight, description, slotType: SlotType.Weapon) { WeaponBaseType = weaponBaseType; WeaponSubType = weaponSubType; WeaponProficiencyType = weaponProficiencyType; WeaponEffortType = weaponEffortType; MediumDamageRoll = mediumDamageRoll; WeaponAttackType = weaponAttackType; CriticalMinRoll = criticalMinRoll; CriticalMultiplier = criticalMultiplier; WeaponDamageTypes = weaponDamageTypes; Range = range; SetSize(sizeType); // standard attack CombatActions.Add(CombatAction.CreateWeaponAttack(null, this, false)); // full attack CombatActions.Add(CombatAction.CreateWeaponAttack(null, this, true)); }
public void Mult(WeaponBaseType bt, float val) { m_Damage.Mult(bt, val); }
public void SetBaseType(WeaponBaseType bt) { m_BaseType = bt; }
public WeaponDamage(WeaponBaseType bt) : this(bt, 0, 0, 0) { }