Replace string comparisons with string.Equals (ordinal)
This commit is contained in:
@@ -119,7 +119,7 @@ public class MatchController(
|
||||
private string ConvertDifficultyDropdownIntoBotDifficulty(string botDifficulty)
|
||||
{
|
||||
// Edge case medium - must be altered
|
||||
if (botDifficulty.ToLower() == "medium")
|
||||
if (string.Equals(botDifficulty, "medium", StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
return "normal";
|
||||
}
|
||||
|
||||
@@ -703,7 +703,7 @@ public class RepeatableQuestController(
|
||||
}
|
||||
|
||||
// Add elite bonus to daily quests
|
||||
if (repeatableConfig.Name.ToLower() == "daily" && _profileHelper.HasEliteSkillLevel(SkillTypes.Charisma, pmcData))
|
||||
if (string.Equals(repeatableConfig.Name, "daily", StringComparison.OrdinalIgnoreCase) && _profileHelper.HasEliteSkillLevel(SkillTypes.Charisma, pmcData))
|
||||
// Elite charisma skill gives extra daily quest(s)
|
||||
{
|
||||
questCount += _databaseService
|
||||
|
||||
@@ -406,7 +406,7 @@ public class BotEquipmentModGenerator(
|
||||
*/
|
||||
protected string? GetDefaultPlateTpl(TemplateItem armorItem, string modSlot)
|
||||
{
|
||||
var relatedItemDbModSlot = armorItem.Properties.Slots?.FirstOrDefault(slot => slot.Name.ToLower() == modSlot);
|
||||
var relatedItemDbModSlot = armorItem.Properties.Slots?.FirstOrDefault(slot => string.Equals(slot.Name, modSlot, StringComparison.OrdinalIgnoreCase));
|
||||
|
||||
return relatedItemDbModSlot?.Props.Filters[0].Plate;
|
||||
}
|
||||
@@ -421,7 +421,8 @@ public class BotEquipmentModGenerator(
|
||||
{
|
||||
var defaultPreset = _presetHelper.GetDefaultPreset(armorItemTpl);
|
||||
|
||||
return defaultPreset?.Items?.FirstOrDefault(item => item.SlotId?.ToLower() == modSlot);
|
||||
return defaultPreset?.Items?.FirstOrDefault(item =>
|
||||
string.Equals(item.SlotId, modSlot, StringComparison.OrdinalIgnoreCase));
|
||||
}
|
||||
|
||||
|
||||
@@ -920,11 +921,11 @@ public class BotEquipmentModGenerator(
|
||||
case "patron_in_weapon":
|
||||
case "patron_in_weapon_000":
|
||||
case "patron_in_weapon_001":
|
||||
return parentTemplate?.Properties?.Chambers?.FirstOrDefault(chamber => chamber.Name.Contains(modSlotLower));
|
||||
return parentTemplate?.Properties?.Chambers?.FirstOrDefault(chamber => chamber.Name.Contains(modSlotLower, StringComparison.OrdinalIgnoreCase));
|
||||
case "cartridges":
|
||||
return parentTemplate?.Properties?.Cartridges?.FirstOrDefault(c => c.Name?.ToLower() == modSlotLower);
|
||||
return parentTemplate?.Properties?.Cartridges?.FirstOrDefault(c => string.Equals(c.Name, modSlotLower, StringComparison.OrdinalIgnoreCase));
|
||||
default:
|
||||
return parentTemplate?.Properties?.Slots?.FirstOrDefault(s => s.Name?.ToLower() == modSlotLower);
|
||||
return parentTemplate?.Properties?.Slots?.FirstOrDefault(s => string.Equals(s.Name, modSlotLower, StringComparison.OrdinalIgnoreCase));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1372,7 +1373,8 @@ public class BotEquipmentModGenerator(
|
||||
public Item? GetMatchingModFromPreset(ModToSpawnRequest request, TemplateItem weaponTemplate)
|
||||
{
|
||||
var matchingPreset = GetMatchingPreset(weaponTemplate, request.ParentTemplate.Id);
|
||||
return matchingPreset?.Items?.FirstOrDefault(item => item?.SlotId?.ToLower() == request.ModSlot.ToLower());
|
||||
return matchingPreset?.Items?.FirstOrDefault(item =>
|
||||
string.Equals(item?.SlotId, request.ModSlot, StringComparison.OrdinalIgnoreCase));
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
||||
@@ -761,7 +761,7 @@ public class BotGenerator(
|
||||
public string SetRandomisedGameVersionAndCategory(Info botInfo)
|
||||
{
|
||||
// Special case
|
||||
if (botInfo.Nickname?.ToLower() == "nikita")
|
||||
if (string.Equals(botInfo.Nickname, "nikita", StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
botInfo.GameVersion = GameEditions.UNHEARD;
|
||||
botInfo.MemberCategory = MemberCategory.Developer;
|
||||
@@ -823,7 +823,7 @@ public class BotGenerator(
|
||||
/// <returns>item tpl</returns>
|
||||
public string GetDogtagTplByGameVersionAndSide(string side, string gameVersion)
|
||||
{
|
||||
if (side.ToLower() == "usec")
|
||||
if (string.Equals(side, "usec", StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
switch (gameVersion)
|
||||
{
|
||||
|
||||
@@ -255,7 +255,7 @@ public class LootGenerator(
|
||||
var items = itemsDb.Where(
|
||||
item =>
|
||||
!itemBlacklist.Contains(item.Id) &&
|
||||
item.Type.ToLower() == "item" &&
|
||||
string.Equals(item.Type, "item", StringComparison.OrdinalIgnoreCase) &&
|
||||
!item.Properties.QuestItem.GetValueOrDefault(false) &&
|
||||
itemTypeWhitelist.Contains(item.Parent)
|
||||
)
|
||||
@@ -279,7 +279,7 @@ public class LootGenerator(
|
||||
string[] relevantSlots = ["front_plate", "helmet_top", "soft_armor_front"];
|
||||
foreach (var slotId in relevantSlots)
|
||||
{
|
||||
var armorItem = armor.Items.FirstOrDefault(item => item?.SlotId?.ToLower() == slotId);
|
||||
var armorItem = armor.Items.FirstOrDefault(item => string.Equals(item?.SlotId, slotId));
|
||||
if (armorItem is null)
|
||||
{
|
||||
continue;
|
||||
@@ -602,7 +602,7 @@ public class LootGenerator(
|
||||
.Values.Where(
|
||||
item =>
|
||||
item.Parent == rewardKey &&
|
||||
item.Type.ToLower() == "item" &&
|
||||
string.Equals(item.Type, "item", StringComparison.OrdinalIgnoreCase) &&
|
||||
_itemFilterService.IsItemBlacklisted(item.Id) &&
|
||||
!(containerSettings.AllowBossItems || _itemFilterService.IsBossItem(item.Id)) &&
|
||||
item.Properties.QuestItem is null
|
||||
|
||||
@@ -62,7 +62,7 @@ public class PMCLootGenerator
|
||||
_pocketLootPool = new Dictionary<string, double>();
|
||||
var items = _databaseService.GetItems();
|
||||
var pmcPriceOverrides =
|
||||
_databaseService.GetBots().Types[botRole.ToLower() == "pmcbear" ? "bear" : "usec"].BotInventory.Items.Pockets;
|
||||
_databaseService.GetBots().Types[string.Equals(botRole, "pmcbear", StringComparison.OrdinalIgnoreCase) ? "bear" : "usec"].BotInventory.Items.Pockets;
|
||||
|
||||
var allowedItemTypeWhitelist = _pmcConfig.PocketLoot.Whitelist;
|
||||
|
||||
@@ -145,7 +145,7 @@ public class PMCLootGenerator
|
||||
_vestLootPool = new Dictionary<string, double>();
|
||||
var items = _databaseService.GetItems();
|
||||
var pmcPriceOverrides =
|
||||
_databaseService.GetBots().Types[botRole.ToLower() == "pmcbear" ? "bear" : "usec"].BotInventory.Items.TacticalVest;
|
||||
_databaseService.GetBots().Types[string.Equals(botRole, "pmcbear", StringComparison.OrdinalIgnoreCase) ? "bear" : "usec"].BotInventory.Items.TacticalVest;
|
||||
|
||||
var allowedItemTypeWhitelist = _pmcConfig.VestLoot.Whitelist;
|
||||
|
||||
@@ -228,7 +228,7 @@ public class PMCLootGenerator
|
||||
_backpackLootPool = new Dictionary<string, double>();
|
||||
var items = _databaseService.GetItems();
|
||||
var pmcPriceOverrides =
|
||||
_databaseService.GetBots().Types[botRole.ToLower() == "pmcbear" ? "bear" : "usec"].BotInventory.Items.Backpack;
|
||||
_databaseService.GetBots().Types[string.Equals(botRole, "pmcbear", StringComparison.OrdinalIgnoreCase) ? "bear" : "usec"].BotInventory.Items.Backpack;
|
||||
|
||||
var allowedItemTypeWhitelist = _pmcConfig.BackpackLoot.Whitelist;
|
||||
|
||||
|
||||
@@ -279,7 +279,7 @@ public class PlayerScavGenerator(
|
||||
var props = baseBotNode.BotGeneration.Items.GetType().GetProperties();
|
||||
foreach (var itemLimitKvP in karmaSettings.ItemLimits)
|
||||
{
|
||||
var prop = props.FirstOrDefault(x => x.Name.ToLower() == itemLimitKvP.Key.ToLower());
|
||||
var prop = props.FirstOrDefault(x => string.Equals(x.Name, itemLimitKvP.Key, StringComparison.OrdinalIgnoreCase);
|
||||
prop.SetValue(baseBotNode.BotGeneration.Items, itemLimitKvP.Value);
|
||||
}
|
||||
|
||||
|
||||
@@ -1003,7 +1003,10 @@ public class RepeatableQuestGenerator(
|
||||
*/
|
||||
|
||||
// Get template id from config based on side and type of quest
|
||||
var typeIds = side.ToLower() == "pmc" ? _questConfig.QuestTemplateIds.Pmc : _questConfig.QuestTemplateIds.Scav;
|
||||
var typeIds = string.Equals(side, "pmc", StringComparison.OrdinalIgnoreCase)
|
||||
? _questConfig.QuestTemplateIds.Pmc
|
||||
: _questConfig.QuestTemplateIds.Scav;
|
||||
|
||||
var templateId = string.Empty;
|
||||
switch (type)
|
||||
{
|
||||
|
||||
@@ -73,7 +73,7 @@ public class BotDifficultyHelper(
|
||||
protected DifficultyCategories GetDifficultySettings(string type, string difficulty)
|
||||
{
|
||||
var difficultySetting =
|
||||
_pmcConfig.Difficulty.ToLower() == "asonline"
|
||||
string.Equals(_pmcConfig.Difficulty, "asonline", StringComparison.OrdinalIgnoreCase)
|
||||
? difficulty
|
||||
: _pmcConfig.Difficulty.ToLower();
|
||||
|
||||
|
||||
@@ -392,7 +392,7 @@ public class BotGeneratorHelper(
|
||||
// Does an equipped item have a property that blocks the desired item - check for prop "BlocksX" .e.g BlocksEarpiece / BlocksFaceCover
|
||||
var templateItems = equippedItemsDb.ToList();
|
||||
var blockingItem = templateItems.FirstOrDefault(
|
||||
item => item?.Properties?.GetType().GetProperties().FirstOrDefault(x => x.Name.ToLower() == $"blocks{equipmentSlot}")?.GetValue(item) is not null
|
||||
item => item?.Properties?.GetType().GetProperties().FirstOrDefault(x => string.Equals(x.Name.ToLower(), $"blocks{equipmentSlot}", StringComparison.OrdinalIgnoreCase))?.GetValue(item) is not null
|
||||
);
|
||||
if (blockingItem is not null)
|
||||
// this.logger.warning(`1 incompatibility found between - {itemToEquip[1]._name} and {blockingItem._name} - {equipmentSlot}`);
|
||||
|
||||
@@ -160,12 +160,12 @@ public class BotHelper(
|
||||
/// <returns>side (usec/bear)</returns>
|
||||
public string GetPmcSideByRole(string botRole)
|
||||
{
|
||||
if (_pmcConfig.BearType.ToLower() == botRole.ToLower())
|
||||
if (string.Equals(_pmcConfig.BearType, botRole, StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
return "Bear";
|
||||
}
|
||||
|
||||
if (_pmcConfig.UsecType.ToLower() == botRole.ToLower())
|
||||
if (string.Equals(_pmcConfig.UsecType, botRole.ToLower(), StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
return "Usec";
|
||||
}
|
||||
|
||||
@@ -960,7 +960,7 @@ public class InventoryHelper(
|
||||
fromInventoryItems = scavProfile.Inventory.Items;
|
||||
fromType = "scav";
|
||||
}
|
||||
else if (request.FromOwner.Type.ToLower() == "mail")
|
||||
else if (string.Equals(request.FromOwner.Type, "mail", StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
// Split requests don't use 'use' but 'splitItem' property
|
||||
fromInventoryItems = _dialogueHelper.GetMessageItemContents(request.FromOwner.Id, sessionId, item);
|
||||
|
||||
@@ -457,7 +457,7 @@ public class QuestHelper(
|
||||
*/
|
||||
public bool QuestIsForOtherSide(string playerSide, string questId)
|
||||
{
|
||||
var isUsec = playerSide.ToLower() == "usec";
|
||||
var isUsec = string.Equals(playerSide, "usec", StringComparison.OrdinalIgnoreCase);
|
||||
if (isUsec && _questConfig.BearOnlyQuests.Contains(questId))
|
||||
// Player is usec and quest is bear only, skip
|
||||
{
|
||||
@@ -797,7 +797,7 @@ public class QuestHelper(
|
||||
if (
|
||||
startedMessageText is null ||
|
||||
startedMessageText.Trim() == "" ||
|
||||
startedMessageText.ToLower() == "test" ||
|
||||
string.Equals(startedMessageText, "test", StringComparison.OrdinalIgnoreCase) ||
|
||||
startedMessageText.Length == 24
|
||||
)
|
||||
{
|
||||
|
||||
@@ -53,7 +53,7 @@ public class TradeHelper(
|
||||
List<Item> offerItems = [];
|
||||
Action<int>? buyCallback;
|
||||
|
||||
if (buyRequestData.TransactionId.ToLower() == "ragfair")
|
||||
if (string.Equals(buyRequestData.TransactionId, "ragfair", StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
// Called when player purchases PMC offer from ragfair
|
||||
buyCallback = buyCount =>
|
||||
|
||||
@@ -1228,7 +1228,7 @@ public class FenceService(
|
||||
|
||||
// Find items mod to apply dura changes to
|
||||
var modItemToAdjust =
|
||||
armorItemAndMods.FirstOrDefault(mod => mod.SlotId.ToLower() == requiredSlot.Name.ToLower());
|
||||
armorItemAndMods.FirstOrDefault(mod => string.Equals(mod.SlotId, requiredSlot.Name.ToLower(), StringComparison.OrdinalIgnoreCase));
|
||||
|
||||
itemHelper.AddUpdObjectToItem(modItemToAdjust);
|
||||
|
||||
|
||||
@@ -238,7 +238,7 @@ public class LocationLifecycleService
|
||||
{
|
||||
var configHostilityChanges = _pmcConfig.HostilitySettings[botId.Key];
|
||||
var locationBotHostilityDetails = location.BotLocationModifier.AdditionalHostilitySettings.FirstOrDefault(
|
||||
botSettings => botSettings.BotRole.ToLower() == botId.Key
|
||||
botSettings => string.Equals(botSettings.BotRole, botId.Key, StringComparison.OrdinalIgnoreCase)
|
||||
);
|
||||
|
||||
// No matching bot in config, skip
|
||||
|
||||
@@ -370,7 +370,7 @@ public class SeasonalEventService(
|
||||
);
|
||||
}
|
||||
|
||||
Dictionary<string, double> equipment = botInventory.Equipment[equipmentSlotKey];
|
||||
var equipment = botInventory.Equipment[equipmentSlotKey];
|
||||
botInventory.Equipment[equipmentSlotKey] = equipment.Where(i => !_christmasEventItems.Contains(i.Key)).ToDictionary();
|
||||
}
|
||||
|
||||
@@ -378,7 +378,9 @@ public class SeasonalEventService(
|
||||
var props = botInventory.Items.GetType().GetProperties();
|
||||
foreach (var lootContainerKey in lootContainersToFilter)
|
||||
{
|
||||
var prop = (Dictionary<string, double>?) props.FirstOrDefault(p => p.Name.ToLower() == lootContainerKey.ToLower()).GetValue(botInventory.Items);
|
||||
var prop = (Dictionary<string, double>?) props
|
||||
.FirstOrDefault(p => string.Equals(p.Name.ToLower(), lootContainerKey.ToLower(), StringComparison.OrdinalIgnoreCase))
|
||||
.GetValue(botInventory.Items);
|
||||
|
||||
if (prop is null)
|
||||
{
|
||||
@@ -667,7 +669,7 @@ public class SeasonalEventService(
|
||||
|
||||
foreach (var chance in zryachiyKvP.Value.BotChances.EquipmentChances)
|
||||
{
|
||||
if (chance.Key.ToLower() == "Scabbard")
|
||||
if (string.Equals(chance.Key, "Scabbard", StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
value.Add(chance.Key, 100);
|
||||
continue;
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
<wpf:ResourceDictionary xml:space="preserve" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:s="clr-namespace:System;assembly=mscorlib" xmlns:ss="urn:shemas-jetbrains-com:settings-storage-xaml" xmlns:wpf="http://schemas.microsoft.com/winfx/2006/xaml/presentation">
|
||||
<s:Boolean x:Key="/Default/UserDictionary/Words/=ragfair/@EntryIndexedValue">True</s:Boolean>
|
||||
<s:Boolean x:Key="/Default/UserDictionary/Words/=scav/@EntryIndexedValue">True</s:Boolean></wpf:ResourceDictionary>
|
||||
<s:Boolean x:Key="/Default/UserDictionary/Words/=scav/@EntryIndexedValue">True</s:Boolean>
|
||||
<s:Boolean x:Key="/Default/UserDictionary/Words/=Usec/@EntryIndexedValue">True</s:Boolean></wpf:ResourceDictionary>
|
||||
Reference in New Issue
Block a user