Skip to content

Commit

Permalink
Presets v3.3 (#203)
Browse files Browse the repository at this point in the history
- Update Presets v3.3
- Fix Issues #163, #169, #178
- New Ornament Menu, as in game under Sorting by Type, Culture menu
- Make ready for Bright Harvest
- Add BH DLC Objects to rigt menu's
- Add translations for new Ornament menu
- Add translation for upcomming DLC Amusement Park
- Remove the not paced yet objects
- Fix XPath Ussage Anno 1800
- Update Habor and Cummuter pier Icon
- Update Color Sheme (v1.0.0.4)
- fix tests
- use ValueTuple instead of string[]
- add excluded Ornamentals only once to the list
- added more tests
- minor cosmetic changes
- optimize images with zopfliPNG (1,36 MB -> 1,14 MB)
- fixed typo

Co-authored-by: Sting Mcray <[email protected]>
Co-authored-by: FroggieFrog <[email protected]>
  • Loading branch information
3 people authored Jun 11, 2020
1 parent 307177f commit 71aa40a
Show file tree
Hide file tree
Showing 85 changed files with 1,102 additions and 125 deletions.
10 changes: 10 additions & 0 deletions AnnoDesigner.Core/Extensions/StringExtensions.cs
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,18 @@ namespace AnnoDesigner.Core.Extensions
{
public static class StringExtensions
{
//private static readonly Logger logger = LogManager.GetCurrentClassLogger();

public static bool Contains(this string s, string token, StringComparison stringComparison)
{

if (string.IsNullOrWhiteSpace(s) || string.IsNullOrWhiteSpace(token))
{
//logger.Trace($"{nameof(s)}: {s} | {nameof(token)}: {token}");

return false;//or throw error?
}

if (s.IndexOf(token, stringComparison) != -1)
{
return true;
Expand Down
35 changes: 30 additions & 5 deletions AnnoDesigner/Localization/TreeLocalization.cs
Original file line number Diff line number Diff line change
Expand Up @@ -120,7 +120,12 @@ static TreeLocalization()
{ "11SpecialOrnaments", "11 Special Ornaments" },
{ "12ChristmasDecorations", "12 Christmas Decorations" },
{ "13World'sFairRewards", "13 World's Fair Rewards" },
{ "14Gardens", "14 Gardens" }
{ "14Gardens", "14 Gardens" },
{ "15AgriculturalOrnaments", "15 Agricultural Ornaments" },
{ "16AgriculturalFences", "16 Agricultural Fences" },
{ "17IndustrialOrnaments", "17 Industrial Ornaments" },
{ "18IndustrialFences", "18 Industrial Fences" },
{ "19AmusementPark", "19 Amusement Park" }
}
},
{
Expand Down Expand Up @@ -216,7 +221,12 @@ static TreeLocalization()
{ "11SpecialOrnaments", "11 Besondere Verzierungen" },
{ "12ChristmasDecorations", "12 Weihnachts Dekorationen" },
{ "13World'sFairRewards", "13 Belohnungen der Weltausstellung" },
{ "14Gardens", "14 Gärten" }
{ "14Gardens", "14 Gärten" },
{ "15AgriculturalOrnaments", "15 Landwirtschaftliche Verzierungen" },
{ "16AgriculturalFences", "16 Landwirtschaftszäune" },
{ "17IndustrialOrnaments", "17 Industrielle Verzierungen" },
{ "18IndustrialFences", "18 Industriezäune" },
{ "19AmusementPark", "19 Vergnügungspark" }
}
},
{
Expand Down Expand Up @@ -312,7 +322,12 @@ static TreeLocalization()
{ "11SpecialOrnaments", "11 Ornements spéciaux" },
{ "12ChristmasDecorations", "12 Décorations de Noël" },
{ "13World'sFairRewards", "13 Récompenses de l'exposition" },
{ "14Gardens", "14 Jardins" }
{ "14Gardens", "14 Jardins" },
{ "15AgriculturalOrnaments", "15 Ornements Agricoles" },
{ "16AgriculturalFences", "16 Clôtures Agricoles" },
{ "17IndustrialOrnaments", "17 Ornements Industriels" },
{ "18IndustrialFences", "18 Clôtures Industrielles" },
{ "19AmusementPark", "19 Parc d'attractions" }
}
},
{
Expand Down Expand Up @@ -408,7 +423,12 @@ static TreeLocalization()
{ "11SpecialOrnaments", "11 Ornamenty specjalne" },
{ "12ChristmasDecorations", "12 Dekoracje świąteczne" },
{ "13World'sFairRewards", "13 Nagrody Wystawy Światowej" },
{ "14Gardens", "14 Ogrody" }
{ "14Gardens", "14 Ogrody" },
{ "15AgriculturalOrnaments", "15 Ornamenty Rolnicze" },
{ "16AgriculturalFences", "16 Ogrodzenia Rolnicze" },
{ "17IndustrialOrnaments", "17 Ornamenty Przemysłowe" },
{ "18IndustrialFences", "18 Ogrodzenia Przemysłowe" },
{ "19AmusementPark", "19 Park Rozrywki" }
}
},
{
Expand Down Expand Up @@ -504,7 +524,12 @@ static TreeLocalization()
{ "11SpecialOrnaments", "11 Специальные украшения" },
{ "12ChristmasDecorations", "12 рождественские украшения" },
{ "13World'sFairRewards", "13 Награды Всемирной выставки" },
{ "14Gardens", "14 Сады" }
{ "14Gardens", "14 Сады" },
{ "15AgriculturalOrnaments", "15 Сельскохозяйственные украшения" },
{ "16AgriculturalFences", "16 Сельскохозяйственных Заборов" },
{ "17IndustrialOrnaments", "17 промышленных украшений" },
{ "18IndustrialFences", "18 промышленных заборов" },
{ "19AmusementPark", "19 Парк развлечений" }
}
},
};
Expand Down
Binary file added AnnoDesigner/icons/A7_barrels.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added AnnoDesigner/icons/A7_celebration_ornament_01.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added AnnoDesigner/icons/A7_clothesline.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified AnnoDesigner/icons/A7_commuter_pier.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added AnnoDesigner/icons/A7_fence_archway.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added AnnoDesigner/icons/A7_flatbed_wagon.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added AnnoDesigner/icons/A7_gangway.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added AnnoDesigner/icons/A7_gasoline.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added AnnoDesigner/icons/A7_hay_bales.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added AnnoDesigner/icons/A7_heap.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added AnnoDesigner/icons/A7_industry_ground.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added AnnoDesigner/icons/A7_industry_wall_arch.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added AnnoDesigner/icons/A7_industry_wall_corner.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added AnnoDesigner/icons/A7_industry_wall_cross.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added AnnoDesigner/icons/A7_industry_wall_end.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added AnnoDesigner/icons/A7_industry_wall_entrance.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added AnnoDesigner/icons/A7_industry_wall_tall_arch.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added AnnoDesigner/icons/A7_industry_wall_tall_end.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added AnnoDesigner/icons/A7_industry_wall_tall_gate.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added AnnoDesigner/icons/A7_ironbar.png
Binary file added AnnoDesigner/icons/A7_kontor_main.png
Binary file added AnnoDesigner/icons/A7_largebox.png
Binary file added AnnoDesigner/icons/A7_logpile.png
Binary file added AnnoDesigner/icons/A7_om_tractor.png
Binary file added AnnoDesigner/icons/A7_ornament_elephountain.png
Binary file added AnnoDesigner/icons/A7_ornament_ploughmanglory.png
Binary file added AnnoDesigner/icons/A7_ornament_promenade_end.png
Binary file added AnnoDesigner/icons/A7_ornament_pruned_spruced.png
Binary file added AnnoDesigner/icons/A7_ornament_regal_standard.png
Binary file added AnnoDesigner/icons/A7_ornament_tall_boxwood.png
Binary file added AnnoDesigner/icons/A7_outhouse.png
Binary file added AnnoDesigner/icons/A7_pile_box_barrels.png
Binary file added AnnoDesigner/icons/A7_piles_of_crates.png
Binary file added AnnoDesigner/icons/A7_pipes.png
Binary file added AnnoDesigner/icons/A7_scarecrow.png
Binary file added AnnoDesigner/icons/A7_shed.png
Binary file added AnnoDesigner/icons/A7_signpost.png
Binary file added AnnoDesigner/icons/A7_silo.png
Binary file added AnnoDesigner/icons/A7_silo_02.png
Binary file added AnnoDesigner/icons/A7_swing.png
Binary file added AnnoDesigner/icons/A7_tanks.png
Binary file added AnnoDesigner/icons/A7_tractor.png
Binary file added AnnoDesigner/icons/A7_twitch_flag_landoflions.png
Binary file added AnnoDesigner/icons/A7_water_tower.png
Binary file added AnnoDesigner/icons/A7_woodfence.png
Binary file added AnnoDesigner/icons/A7_woodfence_angle.png
Binary file added AnnoDesigner/icons/A7_woodfence_cross.png
Binary file added AnnoDesigner/icons/A7_woodfence_end.png
Binary file added AnnoDesigner/icons/A7_woodfence_entrance.png
Binary file added AnnoDesigner/icons/A7_woodfence_junction.png
16 changes: 10 additions & 6 deletions PresetParser/Anno1800/NewFactionAndGroup1800.cs
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,10 @@ namespace PresetParser.Anno1800
/// OW1 (Old World - (7) Jornaleros) - OW2 (Old World - (8) Obreros)
/// AT1 (Arctic - (10) Explorers) - AT2 (Arctic - (11) Technicians)
/// <2> wil be the Group under <1>, like Production, Public, etc
///
/// NOTE : New world and Old World are reversed in this code, in game it seams that the start world is Old World
/// So, Games Old World is NWx and Games New World is OWx in this code !!!!!
///
/// </summary>
public static class NewFactionAndGroup1800
{
Expand All @@ -35,10 +39,10 @@ public static class NewFactionAndGroup1800
private static readonly List<string> ChangeBuildingsToNW1_Productions_1800 = new List<string> { "Coastal_01 (Fish Coast Building)", "Processing_04 (Weavery)", "Food_06 (Schnapps Maker)", "Factory_03 (Timber Factory)", "Agriculture_05 (Timber Yard)" };
private static readonly List<string> ChangeBuildingsToNW2_Productions_1800 = new List<string> { "Factory_09 (Sailcloth Factory)", "Heavy_01 (Beams Heavy Industry)", "Heavy_04 (Weapons Heavy Industry)", "Heavy_02 (Steel Heavy Industry)", "Heavy_03 (Coal Heavy Industry)", "Processing_01 (Tallow Processing)", "Food_07 (Sausage Maker)", "Processing_02 (Flour Processing)", "Factory_02 (Soap Factory)", "Processing_03 (Malt Processing)", "Food_02 (Beer Maker)", "Factory_04 (Brick Factory)", "Food_01 (Bread Maker)" };
private static readonly List<string> ChangeBuildingsToNW3_Productions_1800 = new List<string> { "Food_03 (Goulash Factory)", "Food_05 (Canned Food Factory)", "Processing_06 (Glass Processing)", "Factory_07 (Window Factory)", "Agriculture_09 (Hunter's Cabin)", "Factory_05 (Fur Coat Workshop)", "Workshop_03 (Sewing Machines Factory)" };
private static readonly List<string> ChangeBuildingsToNW4_Productions_1800 = new List<string> { "Factory_06 (Light Bulb Factory)", "Processing_08 (Carbon Filament Processing)", "Workshop_02 (Pocket Watch Workshop)", "Workshop_05 (Gold Workshop)", "Heavy_07 (Steam Motors Heavy Industry)", "Workshop_01 (High-Wheeler Workshop)", "Heavy_06 (Advanced Weapons Heavy Industry)", "Processing_05 (Dynamite Processing)", "Coastal_02 (Niter Coast Building)", "Workshop_07 (Glasses Workshop)", "Heavy_09 (Brass Heavy Industry)", "Heavy_10 (Oil Heavy Industry)", "Factory_01 (Concrete Factory)", "Heavy_10_field (Oil Pump)" };
private static readonly List<string> ChangeBuildingsToNW4_Productions_1800 = new List<string> { "Factory_06 (Light Bulb Factory)", "Processing_08 (Carbon Filament Processing)", "Workshop_02 (Pocket Watch Workshop)", "Workshop_05 (Gold Workshop)", "Heavy_07 (Steam Motors Heavy Industry)", "Workshop_01 (High-Wheeler Workshop)", "Heavy_06 (Advanced Weapons Heavy Industry)", "Processing_05 (Dynamite Processing)", "Coastal_02 (Niter Coast Building)", "Workshop_07 (Glasses Workshop)", "Heavy_09 (Brass Heavy Industry)", "Heavy_10 (Oil Heavy Industry)", "Factory_01 (Concrete Factory)", "Heavy_10_field (Oil Pump)", "Moderate_fuel_station_01 (FuelStation)" };
private static readonly List<string> ChangeBuildingsToNW5_Productions_1800 = new List<string> { "Heavy_08 (Steam Carriages Heavy Industry)", "Factory_10 (Chassis Factory)", "Workshop_04 (Phonographs Workshop)", "Processing_07 (Inlay Processing)", "Workshop_06 (Jewelry Workshop)", "Food_08 (Champagne Maker)" };
private static readonly List<string> ChangeBuildingsToOW1_Productions_1800 = new List<string> { "Processing_colony01_02 (Poncho Maker)", "Coastal_colony01_01 (Pearls Coast Building)", "Food_colony01_04 (Fried Banana Maker)", "Coastal_colony01_02 (Fish Coast Building)", "Factory_colony01_02 (Sailcloth Factory)", "Factory_colony01_01 (Timber Factory)", "Agriculture_colony01_06 (Timber Yard)", "Factory_colony01_03 (Cotton Cloth Processing)", "Food_colony01_01 (Rum Maker)" };
private static readonly List<string> ChangeBuildingsToOW2_Productions_1800 = new List<string> { "Food_colony01_02 (Chocolate Maker)", "Workshop_colony01_01 (Cigars Workshop)", "Factory_colony01_07 (Bombin Maker)", "Factory_colony01_06 (Felt Maker)", "Food_colony01_03 (Coffee Maker)", "Food_colony01_05 (Burrito Maker)", "Processing_colony01_01 (Sugar Processing)", "Processing_colony01_03 (Inlay Processing)", "Heavy_colony01_01 (Oil Heavy Industry)", "Heavy_colony01_01_field (Oil Pump)" };
private static readonly List<string> ChangeBuildingsToOW2_Productions_1800 = new List<string> { "Food_colony01_02 (Chocolate Maker)", "Workshop_colony01_01 (Cigars Workshop)", "Factory_colony01_07 (Bombin Maker)", "Factory_colony01_06 (Felt Maker)", "Food_colony01_03 (Coffee Maker)", "Food_colony01_05 (Burrito Maker)", "Processing_colony01_01 (Sugar Processing)", "Processing_colony01_03 (Inlay Processing)", "Heavy_colony01_01 (Oil Heavy Industry)", "Heavy_colony01_01_field (Oil Pump)", "Colony01_fuel_station_01 (FuelStation)" };
private static readonly List<string> ChangeBuildingsToAT1_Productions_1800 = new List<string> { "Agriculture_arctic_01 (Timber Yard)", "Factory_arctic_01 (Timber Factory)", "Agriculture_arctic_02 (Caribou Hunter)", "Factory_arctic_02 (Sleeping Bags Factory)", "Heavy_arctic_01 (Coal Heavy Industry)", "Coastal_arctic_01 (Whale Coast Building)", "Coastal_arctic_02 (Seal Hunter)", "Factory_arctic_03 (Oil Lamp Factory)", "Food_arctic_01 (Pemmican)" };
private static readonly List<string> ChangeBuildingsToAT2_Productions_1800 = new List<string> { "Agriculture_arctic_04 (Bear Hunter)", "Factory_arctic_04 (Parka Factory)", "Agriculture_arctic_06 (Normal Fur Hunter)", "Factory_arctic_05 (Sled Frame Factory)", "Factory_arctic_06 (Husky Sled Factory)", "Mining_arctic_01 (Gas Mine)", "Mining_arctic_02 (Gold Mine)", "Mining_arctic_01_pump (Gas Pump)", "Monument_arctic_01_00" };

Expand All @@ -58,7 +62,7 @@ public static class NewFactionAndGroup1800
private static readonly List<string> ChangeBuildingsToAW_SpecialBuilding_1800 = new List<string> { "Guild_house", "Town hall" };

//Ornamentals
private static readonly List<string> ChangeBuildingsToAW_Ornamentals_1800 = new List<string> { "Culture_preorder_statue", "Uplay_ornament_2x1_lion_statue", "Uplay_ornament_2x2_pillar_chess_park", "Uplay_ornament_3x2_large_fountain" };
//private static readonly List<string> ChangeBuildingsToAW_Ornamentals_1800 = new List<string> { "Culture_preorder_statue", "Uplay_ornament_2x1_lion_statue", "Uplay_ornament_2x2_pillar_chess_park", "Uplay_ornament_3x2_large_fountain" };

/// <summary>
/// Retuns the faction and group for an identifier.
Expand All @@ -68,7 +72,7 @@ public static class NewFactionAndGroup1800
/// <param name="groupName">If Buildingmane is in one of the lists, groupName will be changed</param>
/// <param name="templateName">if buildingname is in ToAT1 or ToAT2 and is a Production Building, the Templatename will be changed</param>
/// <returns></returns>
public static string[] GetNewFactionAndGroup1800(string identifierName, string factionName, string groupName, string templateName = "")
public static (string Faction, string Group, string Template) GetNewFactionAndGroup1800(string identifierName, string factionName, string groupName, string templateName = "")
{
if (string.IsNullOrWhiteSpace(identifierName))
{
Expand Down Expand Up @@ -114,9 +118,9 @@ public static string[] GetNewFactionAndGroup1800(string identifierName, string f
//Special Buildings
if (identifierName.IsPartOf(ChangeBuildingsToAW_SpecialBuilding_1800)) { factionName = "All Worlds"; groupName = "Special Buildings"; }
//Ornamentals
if (identifierName.IsPartOf(ChangeBuildingsToAW_Ornamentals_1800)) { factionName = "All Worlds"; }
//if (identifierName.IsPartOf(ChangeBuildingsToAW_Ornamentals_1800)) { factionName = "All Worlds"; }

return new string[] { factionName, groupName, templateName };
return (factionName, groupName, templateName);
}
}
}
Loading

0 comments on commit 71aa40a

Please sign in to comment.