public void PreInitialize() { _logger.MakeLog("HealthSystem is loading!"); var stats = _ecsWorld.AddComponent <HealthStatsComponent>(GunshotWound2Script.StatsContainerEntity); stats.DamageMultiplier = 1f; stats.DamageDeviation = 0.2f; var pedStats = _ecsWorld.AddComponent <PedHealthStatsComponent>(GunshotWound2Script.StatsContainerEntity); pedStats.PlayerHealth = 100f; pedStats.PedHealth = new MinMax { Min = 50, Max = 100 }; foreach (int i in _loadedConfigs) { LoadedConfigComponent config = _loadedConfigs.Components1[i]; XElement xmlRoot = config.ElementRoot; XElement multElement = xmlRoot.Element("OverallDamageMultiplier"); if (multElement != null) { stats.DamageMultiplier = multElement.GetFloat(); } XElement devElement = xmlRoot.Element("OverallDamageDeviation"); if (devElement != null) { stats.DamageDeviation = devElement.GetFloat(); } XElement pedElement = xmlRoot.Element("PedHealth"); if (pedElement != null) { var health = pedElement.GetMinMax(); if (!health.IsDisabled()) { pedStats.PedHealth = health; } } XElement playerElement = xmlRoot.Element("PlayerHealth"); if (playerElement != null) { pedStats.PlayerHealth = playerElement.GetFloat(); } } _logger.MakeLog(stats.ToString()); _logger.MakeLog(pedStats.ToString()); _logger.MakeLog("HealthSystem loaded!"); }
public void PreInitialize() { _logger.MakeLog("BleedingSystem is loading!"); var stats = _ecsWorld.AddComponent <BleedingStatsComponent>(GunshotWound2Script.StatsContainerEntity); stats.BleedingMultiplier = 1f; stats.BleedingMultiplier = 0.2f; var pedStats = _ecsWorld.AddComponent <PedBleedingStatsComponent>(GunshotWound2Script.StatsContainerEntity); pedStats.PedBleedingHealRate = new MinMax { Min = 0.5f, Max = 1 }; foreach (int i in _loadedConfigs) { LoadedConfigComponent config = _loadedConfigs.Components1[i]; XElement xmlRoot = config.ElementRoot; XElement multElement = xmlRoot.Element("OverallBleedingMultiplier"); if (multElement != null) { stats.BleedingMultiplier = multElement.GetFloat(); } XElement devElement = xmlRoot.Element("OverallBleedingDeviation"); if (devElement != null) { stats.BleedingDeviation = devElement.GetFloat(); } XElement pedElement = xmlRoot.Element("PedBleedingHealRate"); if (pedElement != null) { var bleeding = pedElement.GetMinMax(); if (!bleeding.IsDisabled()) { pedStats.PedBleedingHealRate = bleeding; } } XElement playerElement = xmlRoot.Element("PlayerBleedingHealRate"); if (playerElement != null) { pedStats.PlayerBleedingHealRate = playerElement.GetFloat(); } } _logger.MakeLog(stats.ToString()); _logger.MakeLog(pedStats.ToString()); _logger.MakeLog("BleedingSystem loaded!"); }
public void PreInitialize() { var stats = EcsWorld.AddComponent <WeaponDropStatsComponent>(GunshotWound3.StatsContainerEntity); stats.PlayerCanDropWeapon = true; foreach (int i in _loadedConfigs) { LoadedConfigComponent config = _loadedConfigs.Components1[i]; XElement xmlRoot = config.ElementRoot; XElement playerCanDrop = xmlRoot.Element("PlayerCanDropWeapon"); if (playerCanDrop != null) { stats.PlayerCanDropWeapon = playerCanDrop.GetBool(); } } }
public void PreInitialize() { foreach (int i in _loadedConfigs) { LoadedConfigComponent config = _loadedConfigs.Components1[i]; XElement xmlRoot = config.ElementRoot; XElement listElement = xmlRoot.Element("WeaponList"); if (listElement != null) { foreach (XElement weaponRoot in listElement.Elements("Weapon")) { CreateWeapon(weaponRoot); } } } _logger.MakeLog("WeaponList loaded!"); }
public void PreInitialize() { _logger.MakeLog("GswWorld is loading!"); var world = _ecsWorld.AddComponent <GswWorldComponent>(GunshotWound2Script.StatsContainerEntity); FillWithDefaultValues(world); foreach (int i in _loadedConfigs) { LoadedConfigComponent config = _loadedConfigs.Components1[i]; XElement xmlRoot = config.ElementRoot; XElement targetsElement = xmlRoot.Element(DETECTING_TARGETS); if (targetsElement != null) { world.HumanDetectingEnabled = targetsElement.GetBool("Humans"); world.AnimalDetectingEnabled = targetsElement.GetBool("Animals"); } XElement accuracyElement = xmlRoot.Element(ACCURACY); if (accuracyElement != null) { world.HumanAccuracy = accuracyElement.GetMinMax(); } XElement shootRateElement = xmlRoot.Element(SHOOT_RATE); if (shootRateElement != null) { world.HumanShootRate = shootRateElement.GetMinMax(); } XElement onlyDamagedElement = xmlRoot.Element(SCAN_ONLY_DAMAGED); if (onlyDamagedElement != null) { world.ScanOnlyDamaged = onlyDamagedElement.GetBool(); } } _logger.MakeLog(world.ToString()); _logger.MakeLog("GswWorld loaded!"); }
public void PreInitialize() { foreach (int i in _loadedConfigs) { LoadedConfigComponent config = _loadedConfigs.Components1[i]; XElement xmlRoot = config.ElementRoot; XElement listElement = xmlRoot.Element("WoundList"); if (listElement == null) { continue; } foreach (XElement woundRoot in listElement.Elements("Wound")) { CreateWound(woundRoot); } } _logger.MakeLog("WoundList loaded!"); }
public void PreInitialize() { _logger.MakeLog("Pain State list is loading!"); foreach (int i in _loadedConfigs) { LoadedConfigComponent config = _loadedConfigs.Components1[i]; XElement xmlRoot = config.ElementRoot; XElement listElement = xmlRoot.Element(PAIN_STATE_LIST); if (listElement == null) { continue; } foreach (XElement stateRoot in listElement.Elements("PainState")) { CreatePainState(stateRoot); } } _logger.MakeLog("Pain State list loaded!"); }
public void PreInitialize() { _logger.MakeLog("BodyPart list is loading!"); foreach (int i in _loadedConfigs) { LoadedConfigComponent config = _loadedConfigs.Components1[i]; XElement xmlRoot = config.ElementRoot; var listElement = xmlRoot.Element(BODY_PART_LIST); if (listElement == null) { continue; } foreach (XElement bodyPartRoot in listElement.Elements("BodyPart")) { CreateBodyPart(bodyPartRoot); } } _logger.MakeLog("BodyPart list loaded!"); }
public void PreInitialize() { var world = _ecsWorld.AddComponent <GswWorldComponent>(GunshotWound3.StatsContainerEntity); world.HumanDetectingEnabled = true; world.AnimalDetectingEnabled = true; world.HumanAccuracy = new MinMax { Min = 10, Max = 30 }; world.HumanShootRate = new MinMax { Min = 10, Max = 30 }; world.ScanOnlyDamaged = false; world.MaxPedCountPerFrame = 5; foreach (int i in _loadedConfigs) { LoadedConfigComponent config = _loadedConfigs.Components1[i]; XElement xmlRoot = config.ElementRoot; XElement targetsElement = xmlRoot.Element("DetectingTargets"); if (targetsElement != null) { world.HumanDetectingEnabled = targetsElement.GetBool("Humans"); world.AnimalDetectingEnabled = targetsElement.GetBool("Animals"); } XElement accuracyElement = xmlRoot.Element("PedAccuracy"); if (accuracyElement != null) { world.HumanAccuracy = accuracyElement.GetMinMax(); } XElement shootRateElement = xmlRoot.Element("PedShootRate"); if (shootRateElement != null) { world.HumanShootRate = shootRateElement.GetMinMax(); } XElement onlyDamagedElement = xmlRoot.Element("ScanOnlyDamaged"); if (onlyDamagedElement != null) { world.ScanOnlyDamaged = onlyDamagedElement.GetBool(); } XElement pedsPerFrame = xmlRoot.Element("MaxPedsPerFrame"); if (pedsPerFrame != null) { world.MaxPedCountPerFrame = pedsPerFrame.GetInt(); } } #if DEBUG _logger.MakeLog(world.ToString()); #endif _logger.MakeLog("GswWorld loaded!"); }
public void PreInitialize() { _logger.MakeLog("PainSystem is loading!"); var stats = _ecsWorld.AddComponent <PainStatsComponent>(GunshotWound2Script.StatsContainerEntity); stats.PainMultiplier = 1f; stats.PainDeviation = 0.2f; var pedStats = _ecsWorld.AddComponent <PedPainStatsComponent>(GunshotWound2Script.StatsContainerEntity); pedStats.PlayerUnbearablePain = 100f; pedStats.PlayerPainRecoverySpeed = 1f; pedStats.PedUnbearablePain = new MinMax { Min = 50, Max = 100 }; pedStats.PedPainRecoverySpeed = new MinMax { Min = 0.5f, Max = 1f }; foreach (int i in _loadedConfigs) { LoadedConfigComponent config = _loadedConfigs.Components1[i]; XElement xmlRoot = config.ElementRoot; XElement multElement = xmlRoot.Element("OverallPainMultiplier"); if (multElement != null) { stats.PainMultiplier = multElement.GetFloat(); } XElement devElement = xmlRoot.Element("OverallPainDeviation"); if (devElement != null) { stats.PainDeviation = devElement.GetFloat(); } XElement pedPainElement = xmlRoot.Element("PedUnbearablePain"); if (pedPainElement != null) { var pain = pedPainElement.GetMinMax(); if (!pain.IsDisabled()) { pedStats.PedUnbearablePain = pain; } } XElement pedSpeedElement = xmlRoot.Element("PedPainRecoverySpeed"); if (pedSpeedElement != null) { var speed = pedSpeedElement.GetMinMax(); if (!speed.IsDisabled()) { pedStats.PedPainRecoverySpeed = speed; } } XElement playerPainElement = xmlRoot.Element("PlayerUnbearablePain"); if (playerPainElement != null) { pedStats.PlayerUnbearablePain = playerPainElement.GetFloat(); } XElement playerSpeedElement = xmlRoot.Element("PlayerPainRecoverySpeed"); if (playerSpeedElement != null) { pedStats.PlayerPainRecoverySpeed = playerSpeedElement.GetFloat(); } } _logger.MakeLog(stats.ToString()); _logger.MakeLog(pedStats.ToString()); _logger.MakeLog("PainSystem loaded!"); }
public void PreInitialize() { EcsEntity mainEntity = GunshotWound3.StatsContainerEntity; var stats = _ecsWorld.AddComponent <HealthStatsComponent>(mainEntity); stats.DamageMultiplier = 1f; stats.DamageDeviation = 0.2f; stats.SelfHealingRate = 0.01f; var pedStats = _ecsWorld.AddComponent <PedHealthStatsComponent>(mainEntity); pedStats.PlayerHealth = 100f; pedStats.AnimalMult = 1f; pedStats.PedHealth = new MinMax { Min = 50, Max = 100 }; foreach (int i in _loadedConfigs) { LoadedConfigComponent config = _loadedConfigs.Components1[i]; XElement xmlRoot = config.ElementRoot; XElement multElement = xmlRoot.Element("OverallDamageMultiplier"); if (multElement != null) { stats.DamageMultiplier = multElement.GetFloat(); } XElement devElement = xmlRoot.Element("OverallDamageDeviation"); if (devElement != null) { stats.DamageDeviation = devElement.GetFloat(); } XElement healingRate = xmlRoot.Element("SelfHealingRate"); if (healingRate != null) { stats.SelfHealingRate = healingRate.GetFloat(); } XElement pedElement = xmlRoot.Element("PedHealth"); if (pedElement != null) { var health = pedElement.GetMinMax(); if (!health.IsDisabled()) { pedStats.PedHealth = health; } pedStats.AnimalMult = pedElement.GetFloat("AnimalMult"); } XElement playerElement = xmlRoot.Element("PlayerHealth"); if (playerElement != null) { pedStats.PlayerHealth = playerElement.GetFloat(); } } #if DEBUG _logger.MakeLog(stats.ToString()); _logger.MakeLog(pedStats.ToString()); #endif _logger.MakeLog("HealthSystem loaded!"); }