Skip to content

Commit 4c01bbb

Browse files
authored
make Reward optional in some cases (#135)
1 parent deffcdb commit 4c01bbb

File tree

3 files changed

+8
-5
lines changed

3 files changed

+8
-5
lines changed

src/Helldivers-2-Core/Mapping/V1/AssignmentMapper.cs

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ private Assignment MapToV1(Dictionary<string, Models.ArrowHead.Assignment> trans
5454
Description: LocalizedMessage.FromStrings(descriptions),
5555
Tasks: invariant.Setting.Tasks.Select(MapToV1).ToList(),
5656
Reward: MapToV1(invariant.Setting.Reward),
57-
Rewards: invariant.Setting.Rewards.Select(MapToV1).ToList(),
57+
Rewards: invariant.Setting.Rewards.Select(MapToV1).Where(reward => reward is not null).ToList()!,
5858
Expiration: expiration,
5959
Flags: invariant.Setting.Flags
6060
);
@@ -69,8 +69,11 @@ private Task MapToV1(Models.ArrowHead.Assignments.Task task)
6969
);
7070
}
7171

72-
private Reward MapToV1(Models.ArrowHead.Assignments.Reward reward)
72+
private Reward? MapToV1(Models.ArrowHead.Assignments.Reward? reward)
7373
{
74+
if (reward is null)
75+
return null;
76+
7477
return new Reward(
7578
Type: reward.Type,
7679
Amount: reward.Amount

src/Helldivers-2-Models/ArrowHead/Assignments/Setting.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ public sealed record Setting(
1717
string OverrideBrief,
1818
string TaskDescription,
1919
List<Task> Tasks,
20-
Reward Reward,
21-
List<Reward> Rewards,
20+
Reward? Reward,
21+
List<Reward?> Rewards,
2222
int Flags
2323
);

src/Helldivers-2-Models/V1/Assignment.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ public sealed record Assignment(
2525
LocalizedMessage Briefing,
2626
LocalizedMessage Description,
2727
List<Task> Tasks,
28-
Reward Reward,
28+
Reward? Reward,
2929
List<Reward> Rewards,
3030
DateTime Expiration,
3131
int Flags

0 commit comments

Comments
 (0)