fix hideout takeProduction
This commit is contained in:
@@ -666,14 +666,11 @@ public class HideoutController(
|
||||
continue;
|
||||
}
|
||||
|
||||
if (production.Value.GetType() == typeof(HideoutProduction))
|
||||
// Production or ScavCase
|
||||
if (production.Value.RecipeId == request.RecipeId)
|
||||
{
|
||||
// Production or ScavCase
|
||||
if (production.Value.RecipeId == request.RecipeId)
|
||||
{
|
||||
prodId = production.Key; // Set to objects key
|
||||
break;
|
||||
}
|
||||
prodId = production.Key; // Set to objects key
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -899,8 +896,7 @@ public class HideoutController(
|
||||
|
||||
private TaskConditionCounter GetHoursCraftingTaskConditionCounter(PmcData pmcData, HideoutProduction recipe)
|
||||
{
|
||||
var counterHoursCrafting = pmcData.TaskConditionCounters[HideoutController.NameTaskConditionCountersCraftingId];
|
||||
if (counterHoursCrafting is null)
|
||||
if (!pmcData.TaskConditionCounters.TryGetValue(HideoutController.NameTaskConditionCountersCraftingId, out var _))
|
||||
{
|
||||
// Doesn't exist, create
|
||||
pmcData.TaskConditionCounters[HideoutController.NameTaskConditionCountersCraftingId] = new TaskConditionCounter
|
||||
@@ -910,10 +906,9 @@ public class HideoutController(
|
||||
SourceId = "CounterCrafting",
|
||||
Value = 0,
|
||||
};
|
||||
counterHoursCrafting = pmcData.TaskConditionCounters[HideoutController.NameTaskConditionCountersCraftingId];
|
||||
}
|
||||
|
||||
return counterHoursCrafting;
|
||||
return pmcData.TaskConditionCounters[HideoutController.NameTaskConditionCountersCraftingId];
|
||||
}
|
||||
|
||||
private void HandleScavCase(string sessionID, PmcData pmcData, HideoutTakeProductionRequestData request, ItemEventRouterResponse output)
|
||||
|
||||
@@ -184,7 +184,7 @@ public class EventOutputHolder
|
||||
}
|
||||
|
||||
// Ensure we don't inform client of production again
|
||||
if (storageForSessionId[production.Key])
|
||||
if (storageForSessionId.ContainsKey(production.Key))
|
||||
{
|
||||
productions.Remove(production.Key);
|
||||
|
||||
@@ -192,9 +192,9 @@ public class EventOutputHolder
|
||||
}
|
||||
|
||||
// Flag started craft as having been seen by client so it won't happen subsequent times
|
||||
if (production.Value.Progress > 0 && !storageForSessionId[production.Key])
|
||||
if (production.Value.Progress > 0 && !storageForSessionId.ContainsKey(production.Key))
|
||||
{
|
||||
storageForSessionId[production.Key] = true;
|
||||
storageForSessionId.TryAdd(production.Key, true);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -73,9 +73,6 @@ public class BaseInteractionRequestDataConverter : JsonConverter<BaseInteraction
|
||||
return JsonSerializer.Deserialize<HideoutCustomizationSetMannequinPoseRequest>(jsonText);
|
||||
case "Insure":
|
||||
return JsonSerializer.Deserialize<InsureRequestData>(jsonText);
|
||||
|
||||
/////////////////////////////////////////// InventoryBaseActionRequestData
|
||||
|
||||
case "AddToWishList":
|
||||
return JsonSerializer.Deserialize<AddToWishlistRequest>(jsonText);
|
||||
case "RemoveFromWishList":
|
||||
|
||||
Reference in New Issue
Block a user