Skip to content

Commit ccb5423

Browse files
committed
null entries for vendors that do not support titles (i.e. EA no longer offering Medieval or games not being on certain platforms).
1 parent 6a39af1 commit ccb5423

1 file changed

Lines changed: 47 additions & 13 deletions

File tree

Pages/BuyTS3.xaml.cs

Lines changed: 47 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -33,11 +33,19 @@ private static BuyTreeNode Leaf(string label, string icon, string url = "") =>
3333
new() { Label = label, Icon = LoadIcon(icon), Url = url };
3434

3535
// Standard "* Official" sub-node with EA App + Steam + GOG leaves
36-
private static BuyTreeNode Official(string ea = "", string steam = "", string gog = "", string icon = "") =>
37-
N("* Official", string.IsNullOrEmpty(icon) ? I.EA : icon,
38-
Leaf("Buy on EA App", I.EA, ea),
39-
Leaf("Buy on Steam", I.Steam, steam),
40-
Leaf("Buy on GOG", I.GOG, gog));
36+
// Pass null for a platform to omit it entirely; pass "" to include with no URL yet
37+
private static BuyTreeNode Official(string? ea = "", string? steam = "", string? gog = "", string icon = "")
38+
{
39+
var node = new BuyTreeNode
40+
{
41+
Label = "* Official",
42+
Icon = LoadIcon(string.IsNullOrEmpty(icon) ? I.EA : icon)
43+
};
44+
if (ea is not null) node.Children.Add(Leaf("Buy on EA App", I.EA, ea));
45+
if (steam is not null) node.Children.Add(Leaf("Buy on Steam", I.Steam, steam));
46+
if (gog is not null) node.Children.Add(Leaf("Buy on GOG", I.GOG, gog));
47+
return node;
48+
}
4149

4250
// Standard "Partners" sub-node (digital grey-market vendors)
4351
private static BuyTreeNode Partners(params BuyTreeNode[] items) =>
@@ -179,6 +187,7 @@ private static BuyTreeNode BuildSims1() =>
179187
Official(
180188
ea: "https://www.ea.com/en/games/the-sims/the-sims-25th-anniv-edition",
181189
steam: "https://store.steampowered.com/app/3314060/The_Sims_Legacy_Collection/",
190+
gog: null,
182191
icon: I.EA));
183192

184193
// ── The Sims 2: Legacy Collection ─────────────────────────────────────────
@@ -188,6 +197,7 @@ private static BuyTreeNode BuildSims2() =>
188197
Official(
189198
ea: "https://www.ea.com/games/the-sims/the-sims-2-25th-anniv-edition",
190199
steam: "https://store.steampowered.com/app/3314070/The_Sims_2_Legacy_Collection/",
200+
gog: null,
191201
icon: I.EA));
192202

193203
// ── The Sims 3 ────────────────────────────────────────────────────────────
@@ -205,8 +215,9 @@ private static BuyTreeNode BuildSims3() =>
205215
private static BuyTreeNode BuildBaseGame() =>
206216
N("Base Game", I.Sims3,
207217
Official(
208-
ea: "https://www.ea.com/games/the-sims/the-sims-3",
218+
ea: "https://www.ea.com/games/the-sims/the-sims-3",
209219
steam: "https://store.steampowered.com/app/47890/The_Sims_3",
220+
gog: null,
210221
icon: I.EA),
211222
Partners(
212223
Leaf("Buy on Eneba (EA App)", I.Eneba, "https://www.eneba.com/origin-the-sims-3-origin-key-global?af_id=TS3Tools%C2%A4cy=USD%C2%AEion=global"),
@@ -226,6 +237,7 @@ private static BuyTreeNode BuildExpansions() =>
226237
Official(
227238
ea: "https://www.ea.com/games/the-sims/the-sims-3/the-sims-3-world-adventures-expansion-pack/buy-microcontent",
228239
steam: "https://store.steampowered.com/app/47892/The_Sims_3_World_Adventures",
240+
gog: null,
229241
icon: I.EA),
230242
Partners(
231243
Leaf("Buy on Eneba (EA App)", I.Eneba, "https://www.eneba.com/sims-3-website-the-sims-3-world-adventures-dlc-origin-key-global?af_id=TS3Tools%C2%A4cy=USD%C2%AEion=global&utm_medium=af&utm_source=TS3Tools"),
@@ -241,6 +253,7 @@ private static BuyTreeNode BuildExpansions() =>
241253
Official(
242254
ea: "https://www.ea.com/games/the-sims/the-sims-3/buy/addon/the-sims-3-ambitions",
243255
steam: "https://store.steampowered.com/app/47893/The_Sims_3_Ambitions",
256+
gog: null,
244257
icon: I.EA),
245258
Partners(
246259
Leaf("Buy on Eneba (EA App)", I.Eneba, "https://www.eneba.com/sims-3-website-the-sims-3-ambitions-dlc-origin-key-global?af_id=TS3Tools%C2%A4cy=USD%C2%AEion=global&utm_medium=af&utm_source=TS3Tools"),
@@ -258,6 +271,7 @@ private static BuyTreeNode BuildExpansions() =>
258271
Official(
259272
ea: "https://www.ea.com/en/games/the-sims/the-sims-3/buy/addon/the-sims-3-late-night-expansion-pack",
260273
steam: "https://store.steampowered.com/app/47894/The_Sims_3_Late_Night",
274+
gog: null,
261275
icon: I.EA),
262276
Partners(
263277
Leaf("Buy on Eneba (EA App)", I.Eneba, "https://www.eneba.com/sims-3-website-the-sims-3-late-night-dlc-origin-key-global?af_id=TS3Tools&currency=USD&region=global&utm_medium=af&utm_source=TS3Tools"),
@@ -276,6 +290,7 @@ private static BuyTreeNode BuildExpansions() =>
276290
Official(
277291
ea: "https://www.ea.com/games/the-sims/the-sims-3/the-sims-3-generations/buy-microcontent",
278292
steam: "https://store.steampowered.com/app/47898/The_Sims_3_Generations/?cc=us",
293+
gog: null,
279294
icon: I.EA),
280295
Partners(
281296
Leaf("Buy on Eneba (EA App)", I.Eneba, "https://www.eneba.com/origin-the-sims-3-generations-origin-key-global?af_id=TS3Tools&currency=USD&region=global"),
@@ -294,6 +309,7 @@ private static BuyTreeNode BuildExpansions() =>
294309
Official(
295310
ea: "https://www.ea.com/games/the-sims/the-sims-3/the-sims-3-pets/buy-microcontent",
296311
steam: "https://store.steampowered.com/app/47930/The_Sims_3_Pets/?cc=us",
312+
gog: null,
297313
icon: I.EA),
298314
Partners(
299315
Leaf("Buy on Eneba (EA App)", I.Eneba, "https://www.eneba.com/origin-the-sims-3-pets-origin-key-global?af_id=TS3Tools&currency=USD&region=global"),
@@ -311,6 +327,7 @@ private static BuyTreeNode BuildExpansions() =>
311327
Official(
312328
ea: "https://www.ea.com/games/the-sims/the-sims-3/the-sims-3-showtime/buy-microcontent",
313329
steam: "https://store.steampowered.com/app/47932/The_Sims_3_Showtime/?cc=us",
330+
gog: null,
314331
icon: I.EA),
315332
Partners(
316333
Leaf("Buy on Eneba (EA App)", I.Eneba, "https://www.eneba.com/origin-the-sims-3-showtime-origin-key-global?af_id=TS3Tools&currency=USD&region=global"),
@@ -334,6 +351,7 @@ private static BuyTreeNode BuildExpansions() =>
334351
Official(
335352
ea: "https://www.ea.com/games/the-sims/the-sims-3/the-sims-3-supernatural/buy-bundle",
336353
steam: "https://store.steampowered.com/app/223593/The_Sims_3_Supernatural/?cc=us",
354+
gog: null,
337355
icon: I.EA),
338356
Partners(
339357
Leaf("Buy on Eneba (EA App)", I.Eneba, "https://www.eneba.com/origin-the-sims-3-supernatural-origin-key-global?af_id=TS3Tools&currency=USD&region=global"),
@@ -352,6 +370,7 @@ private static BuyTreeNode BuildExpansions() =>
352370
Official(
353371
ea: "https://www.ea.com/games/the-sims/the-sims-3/the-sims-3-seasons/buy-microcontent",
354372
steam: "https://store.steampowered.com/app/223594/The_Sims_3_Seasons/?cc=us",
373+
gog: null,
355374
icon: I.EA),
356375
Partners(
357376
Leaf("Buy on Eneba (EA App)", I.Eneba, "https://www.eneba.com/origin-the-sims-3-seasons-origin-key-global?af_id=TS3Tools&currency=USD&region=global"),
@@ -369,6 +388,7 @@ private static BuyTreeNode BuildExpansions() =>
369388
Official(
370389
ea: "https://www.ea.com/games/the-sims/the-sims-3/the-sims-3-university-life/buy-microcontent",
371390
steam: "https://store.steampowered.com/app/223597/The_Sims_3_University_Life/?cc=us",
391+
gog: null,
372392
icon: I.EA),
373393
Partners(
374394
Leaf("Buy on Eneba (EA App)", I.Eneba, "https://www.eneba.com/origin-the-sims-3-university-life-dlc-origin-key-global?af_id=TS3Tools&currency=USD&region=global"),
@@ -387,6 +407,7 @@ private static BuyTreeNode BuildExpansions() =>
387407
Official(
388408
ea: "https://www.ea.com/games/the-sims/the-sims-3/the-sims-3-island-paradise/buy-microcontent",
389409
steam: "https://store.steampowered.com/app/223598/The_Sims_3_Island_Paradise/?cc=us",
410+
gog: null,
390411
icon: I.EA),
391412
Partners(
392413
Leaf("Buy on Eneba (EA App)", I.Eneba, "https://www.eneba.com/origin-the-sims-3-island-paradise-origin-key-global?af_id=TS3Tools&currency=USD&region=global"),
@@ -405,6 +426,7 @@ private static BuyTreeNode BuildExpansions() =>
405426
Official(
406427
ea: "https://www.ea.com/games/the-sims/the-sims-3/the-sims-3-into-the-future/buy-microcontent",
407428
steam: "https://store.steampowered.com/app/249180/The_Sims_3__Into_the_Future/?cc=us",
429+
gog: null,
408430
icon: I.EA),
409431
Partners(
410432
Leaf("Buy on Eneba (EA App)", I.Eneba, "https://www.eneba.com/origin-the-sims-3-into-the-future-origin-key-global?af_id=TS3Tools&currency=USD&region=global"),
@@ -427,6 +449,7 @@ private static BuyTreeNode BuildStuffPacks() =>
427449
Official(
428450
ea: "https://www.ea.com/games/the-sims/the-sims-3/the-sims-3-high-end-loft-stuff/buy-expansion-pack",
429451
steam: "https://store.steampowered.com/app/47895/The_Sims_3_HighEnd_Loft_Stuff/?cc=us",
452+
gog: null,
430453
icon: I.EA),
431454
Partners(
432455
Leaf("Buy on Eneba (EA App)", I.Eneba, "https://www.eneba.com/origin-the-sims-3-high-end-loft-stuff-origin-key-global?af_id=TS3Tools&currency=USD&region=global"),
@@ -443,6 +466,7 @@ private static BuyTreeNode BuildStuffPacks() =>
443466
Official(
444467
ea: "https://www.ea.com/games/the-sims/the-sims-3/the-sims-3-fast-lane-stuff/buy-microcontent",
445468
steam: "https://store.steampowered.com/app/47896/The_Sims_3_Fast_Lane_Stuff/?cc=us",
469+
gog: null,
446470
icon: I.EA),
447471
Partners(
448472
Leaf("Buy on Eneba (EA App)", I.Eneba, "https://www.eneba.com/origin-the-sims-3-fast-lane-stuff-origin-key-global?af_id=TS3Tools&currency=USD&region=global"),
@@ -461,6 +485,7 @@ private static BuyTreeNode BuildStuffPacks() =>
461485
Official(
462486
ea: "https://www.ea.com/games/the-sims/the-sims-3/the-sims-3-outdoor-living-stuff/buy-microcontent",
463487
steam: "https://store.steampowered.com/app/47897/The_Sims_3_Outdoor_Living_Stuff/?cc=us",
488+
gog: null,
464489
icon: I.EA),
465490
Partners(
466491
Leaf("Buy on Eneba (EA App)", I.Eneba, "https://www.eneba.com/origin-the-sims-3-outdoor-living-origin-key-global?af_id=TS3Tools&currency=USD&region=global"),
@@ -478,6 +503,7 @@ private static BuyTreeNode BuildStuffPacks() =>
478503
Official(
479504
ea: "https://www.ea.com/games/the-sims/the-sims-3/the-sims-3-town-life-stuff/buy-microcontent",
480505
steam: "https://store.steampowered.com/app/47899/The_Sims_3_Town_Life_Stuff/?cc=us",
506+
gog: null,
481507
icon: I.EA),
482508
Partners(
483509
Leaf("Buy on Eneba (EA App)", I.Eneba, "https://www.eneba.com/origin-the-sims-3-town-life-stuff-origin-key-global?af_id=TS3Tools&currency=USD&region=global"),
@@ -495,6 +521,7 @@ private static BuyTreeNode BuildStuffPacks() =>
495521
Official(
496522
ea: "https://www.ea.com/games/the-sims/the-sims-3/the-sims-3-master-suite-stuff/buy-microcontent",
497523
steam: "https://store.steampowered.com/app/47931/The_Sims_3_Master_Suite_Stuff/?cc=us",
524+
gog: null,
498525
icon: I.EA),
499526
Partners(
500527
Leaf("Buy on Eneba (EA App)", I.Eneba, "https://www.eneba.com/origin-the-sims-3-master-suite-stuff-origin-key-global?af_id=TS3Tools&currency=USD&region=global"),
@@ -533,6 +560,7 @@ private static BuyTreeNode BuildStuffPacks() =>
533560
Official(
534561
ea: "https://www.ea.com/games/the-sims/the-sims-3/the-sims-3-diesel-stuff/buy-microcontent",
535562
steam: "https://store.steampowered.com/app/223592/The_Sims_3_Diesel_Stuff/?cc=us",
563+
gog: null,
536564
icon: I.EA),
537565
Partners(
538566
Leaf("Buy on Eneba (EA App)", I.Eneba, "https://www.eneba.com/origin-the-sims-3-diesel-origin-key-global?af_id=TS3Tools&currency=USD&region=global"),
@@ -550,6 +578,7 @@ private static BuyTreeNode BuildStuffPacks() =>
550578
Official(
551579
ea: "https://www.ea.com/games/the-sims/the-sims-3/the-sims-3-70s-80s-and-90s-stuff/buy-microcontent",
552580
steam: "https://store.steampowered.com/app/223595/The_Sims_3_70s_80s_and_90s/",
581+
gog: null,
553582
icon: I.EA),
554583
Partners(
555584
Leaf("Buy on Eneba (EA App)", I.Eneba, "https://www.eneba.com/origin-the-sims-3-70s-80s-90s-stuff-origin-key-global?af_id=TS3Tools&currency=USD&region=global"),
@@ -567,6 +596,7 @@ private static BuyTreeNode BuildStuffPacks() =>
567596
Official(
568597
ea: "https://www.ea.com/games/the-sims/the-sims-3/the-sims-3-movie-stuff/buy-microcontent",
569598
steam: "https://store.steampowered.com/app/249181/The_Sims_3__Movie_Stuff/?cc=us",
599+
gog: null,
570600
icon: I.EA),
571601
Partners(
572602
Leaf("Buy on Eneba (EA App)", I.Eneba, "https://www.eneba.com/origin-the-sims-3-movie-stuff-origin-key-global?af_id=TS3Tools&currency=USD&region=global"),
@@ -652,9 +682,10 @@ private static BuyTreeNode BuildSimsMedieval() =>
652682
private static BuyTreeNode BuildSC2K() =>
653683
N("SimCity 2000", I.SC2K,
654684
Official(
655-
ea: "https://www.ea.com/en/games/simcity/simcity-2000",
656-
gog: "https://www.gog.com/en/game/simcity_2000_special_edition",
657-
icon: I.EA),
685+
ea: "https://www.ea.com/en/games/simcity/simcity-2000",
686+
steam: null,
687+
gog: "https://www.gog.com/en/game/simcity_2000_special_edition",
688+
icon: I.EA),
658689
Partners(
659690
Leaf("Buy on Eneba (GOG)", I.Eneba, "https://www.eneba.com/origin-simcity-2000-special-edition-gog-com-key-global?af_id=TS3Tools&currency=USD&region=global"),
660691
Leaf("Buy on G2A (EA App)", I.G2A, "https://www.g2a.com/simcity-2000-special-edition-ea-app-key-global-i10000000711001?gname=ts3tools"),
@@ -667,9 +698,10 @@ private static BuyTreeNode BuildSC2K() =>
667698
private static BuyTreeNode BuildSC3KU() =>
668699
N("SimCity 3000 Unlimited", I.SC3KU,
669700
Official(
701+
ea: null,
670702
steam: "https://store.steampowered.com/app/2741560/SimCity_3000_Unlimited/",
671-
gog: "https://www.gog.com/en/game/simcity_3000",
672-
icon: I.EA),
703+
gog: "https://www.gog.com/en/game/simcity_3000",
704+
icon: I.EA),
673705
Partners(
674706
Leaf("Buy on G2A (GOG)", I.G2A, "https://www.g2a.com/simcity-3000-unlimited-gogcom-key-global-i10000149205002?gname=ts3tools"),
675707
Leaf("Buy on Kinguin (EA App)", I.Kinguin, "https://www.kinguin.net/category/63343/simcity-3000-unlimited-gog-cd-key?r=66716563950ad")));
@@ -699,8 +731,10 @@ private static BuyTreeNode BuildSC4DE() =>
699731
private static BuyTreeNode BuildSC2013() =>
700732
N("SimCity 2013", I.SC2013,
701733
Official(
702-
ea: "https://www.ea.com/en/games/simcity/simcity",
703-
icon: I.EA),
734+
ea: "https://www.ea.com/en/games/simcity/simcity",
735+
steam: null,
736+
gog: null,
737+
icon: I.EA),
704738
Partners(
705739
Leaf("Buy on Eneba (Steam)", I.Eneba, "https://www.eneba.com/origin-simcity-eng-origin-key-global?af_id=TS3Tools&currency=USD&region=global"),
706740
Leaf("Buy on G2A (Steam)", I.G2A, "https://www.g2a.com/simcity-standard-edition-english-only-ea-app-key-global-i10000043863001?gname=ts3tools"),

0 commit comments

Comments
 (0)