horsegen: generate alternate races/saddles with ids
This commit is contained in:
@@ -29,10 +29,10 @@ const (
|
||||
RaceAsahiHaiFuturityStakes RaceID = 1022 // Asahi Hai Futurity Stakes
|
||||
RaceArimaKinen RaceID = 1023 // Arima Kinen
|
||||
RaceHopefulStakes RaceID = 1024 // Hopeful Stakes
|
||||
RaceTakarazukaKinenAlternate RaceID = 1025 // Takarazuka Kinen
|
||||
RaceKikukaShoAlternate RaceID = 1026 // Kikuka Sho
|
||||
RaceTennoShoSpringAlternate RaceID = 1027 // Tenno Sho (Spring)
|
||||
RaceSatsukiShoAlternate RaceID = 1028 // Satsuki Sho
|
||||
RaceTakarazukaKinenAlt1025 RaceID = 1025 // Takarazuka Kinen
|
||||
RaceKikukaShoAlt1026 RaceID = 1026 // Kikuka Sho
|
||||
RaceTennoShoSpringAlt1027 RaceID = 1027 // Tenno Sho (Spring)
|
||||
RaceSatsukiShoAlt1028 RaceID = 1028 // Satsuki Sho
|
||||
RaceTeioSho RaceID = 1101 // Teio Sho
|
||||
RaceJapanDirtDerby RaceID = 1102 // Japan Dirt Derby
|
||||
RaceJBCLadiesClassic RaceID = 1103 // JBC Ladies’ Classic
|
||||
@@ -73,7 +73,7 @@ const (
|
||||
RaceDailyHaiJuniorStakes RaceID = 2032 // Daily Hai Junior Stakes
|
||||
RaceStayersStakes RaceID = 2033 // Stayers Stakes
|
||||
RaceHanshinCup RaceID = 2034 // Hanshin Cup
|
||||
RaceSpringStakesAlternate RaceID = 2035 // Spring Stakes
|
||||
RaceSpringStakesAlt2035 RaceID = 2035 // Spring Stakes
|
||||
RaceKyotoKimpai RaceID = 3001 // Kyoto Kimpai
|
||||
RaceNakayamaKimpai RaceID = 3002 // Nakayama Kimpai
|
||||
RaceShinzanKinen RaceID = 3003 // Shinzan Kinen
|
||||
@@ -413,27 +413,27 @@ var AllRaces = map[RaceID]Race{
|
||||
Name: "Hopeful Stakes",
|
||||
Thumbnail: 1024,
|
||||
},
|
||||
RaceTakarazukaKinenAlternate: {
|
||||
RaceTakarazukaKinenAlt1025: {
|
||||
ID: 1025,
|
||||
Name: "Takarazuka Kinen" + " (Alternate)",
|
||||
Name: "Takarazuka Kinen" + " (Alternate 1025)",
|
||||
Thumbnail: 1012,
|
||||
Primary: 1012,
|
||||
},
|
||||
RaceKikukaShoAlternate: {
|
||||
RaceKikukaShoAlt1026: {
|
||||
ID: 1026,
|
||||
Name: "Kikuka Sho" + " (Alternate)",
|
||||
Name: "Kikuka Sho" + " (Alternate 1026)",
|
||||
Thumbnail: 1015,
|
||||
Primary: 1015,
|
||||
},
|
||||
RaceTennoShoSpringAlternate: {
|
||||
RaceTennoShoSpringAlt1027: {
|
||||
ID: 1027,
|
||||
Name: "Tenno Sho (Spring)" + " (Alternate)",
|
||||
Name: "Tenno Sho (Spring)" + " (Alternate 1027)",
|
||||
Thumbnail: 1027,
|
||||
Primary: 1006,
|
||||
},
|
||||
RaceSatsukiShoAlternate: {
|
||||
RaceSatsukiShoAlt1028: {
|
||||
ID: 1028,
|
||||
Name: "Satsuki Sho" + " (Alternate)",
|
||||
Name: "Satsuki Sho" + " (Alternate 1028)",
|
||||
Thumbnail: 1028,
|
||||
Primary: 1005,
|
||||
},
|
||||
@@ -637,9 +637,9 @@ var AllRaces = map[RaceID]Race{
|
||||
Name: "Hanshin Cup",
|
||||
Thumbnail: 2034,
|
||||
},
|
||||
RaceSpringStakesAlternate: {
|
||||
RaceSpringStakesAlt2035: {
|
||||
ID: 2035,
|
||||
Name: "Spring Stakes" + " (Alternate)",
|
||||
Name: "Spring Stakes" + " (Alternate 2035)",
|
||||
Thumbnail: 2010,
|
||||
Primary: 2010,
|
||||
},
|
||||
@@ -1726,289 +1726,289 @@ var AllRaces = map[RaceID]Race{
|
||||
}
|
||||
|
||||
var RaceNameToID = map[string]RaceID{
|
||||
"February Stakes": 1001,
|
||||
"Takamatsunomiya Kinen": 1002,
|
||||
"Osaka Hai": 1003,
|
||||
"Oka Sho": 1004,
|
||||
"Satsuki Sho": 1005,
|
||||
"Tenno Sho (Spring)": 1006,
|
||||
"NHK Mile Cup": 1007,
|
||||
"Victoria Mile": 1008,
|
||||
"Japanese Oaks": 1009,
|
||||
"Tokyo Yushun (Japanese Derby)": 1010,
|
||||
"Yasuda Kinen": 1011,
|
||||
"Takarazuka Kinen": 1012,
|
||||
"Sprinters Stakes": 1013,
|
||||
"Shuka Sho": 1014,
|
||||
"Kikuka Sho": 1015,
|
||||
"Tenno Sho (Autumn)": 1016,
|
||||
"Queen Elizabeth II Cup": 1017,
|
||||
"Mile Championship": 1018,
|
||||
"Japan Cup": 1019,
|
||||
"Champions Cup": 1020,
|
||||
"Hanshin Juvenile Fillies": 1021,
|
||||
"Asahi Hai Futurity Stakes": 1022,
|
||||
"Arima Kinen": 1023,
|
||||
"Hopeful Stakes": 1024,
|
||||
"Takarazuka Kinen" + " (Alternate)": 1025,
|
||||
"Kikuka Sho" + " (Alternate)": 1026,
|
||||
"Tenno Sho (Spring)" + " (Alternate)": 1027,
|
||||
"Satsuki Sho" + " (Alternate)": 1028,
|
||||
"Teio Sho": 1101,
|
||||
"Japan Dirt Derby": 1102,
|
||||
"JBC Ladies’ Classic": 1103,
|
||||
"JBC Sprint": 1104,
|
||||
"JBC Classic": 1105,
|
||||
"Tokyo Daishoten": 1106,
|
||||
"Nikkei Shinshun Hai": 2001,
|
||||
"Tokai Stakes": 2002,
|
||||
"American JCC": 2003,
|
||||
"Kyoto Kinen": 2004,
|
||||
"Nakayama Kinen": 2005,
|
||||
"Yayoi Sho": 2006,
|
||||
"Kinko Sho": 2007,
|
||||
"Fillies' Revue": 2008,
|
||||
"Hanshin Daishoten": 2009,
|
||||
"Spring Stakes": 2010,
|
||||
"Nikkei Sho": 2011,
|
||||
"Hanshin Umamusume Stakes": 2012,
|
||||
"New Zealand Trophy": 2013,
|
||||
"Milers Cup": 2014,
|
||||
"Flora Stakes": 2015,
|
||||
"Aoba Sho": 2016,
|
||||
"Kyoto Shimbun Hai": 2017,
|
||||
"Keio Hai Spring Cup": 2018,
|
||||
"Meguro Kinen": 2019,
|
||||
"Sapporo Kinen": 2020,
|
||||
"Centaur Stakes": 2021,
|
||||
"Rose Stakes": 2022,
|
||||
"St. Lite Kinen": 2023,
|
||||
"Kobe Shimbun Hai": 2024,
|
||||
"All Comers": 2025,
|
||||
"Mainichi Okan": 2026,
|
||||
"Kyoto Daishoten": 2027,
|
||||
"Fuchu Umamusume Stakes": 2028,
|
||||
"Swan Stakes": 2029,
|
||||
"Keio Hai Junior Stakes": 2030,
|
||||
"Copa Republica Argentina": 2031,
|
||||
"Daily Hai Junior Stakes": 2032,
|
||||
"Stayers Stakes": 2033,
|
||||
"Hanshin Cup": 2034,
|
||||
"Spring Stakes" + " (Alternate)": 2035,
|
||||
"Kyoto Kimpai": 3001,
|
||||
"Nakayama Kimpai": 3002,
|
||||
"Shinzan Kinen": 3003,
|
||||
"Fairy Stakes": 3004,
|
||||
"Aichi Hai": 3005,
|
||||
"Keisei Hai": 3006,
|
||||
"Silk Road Stakes": 3007,
|
||||
"Negishi Stakes": 3008,
|
||||
"Kisaragi Sho": 3009,
|
||||
"Tokyo Shimbun Hai": 3010,
|
||||
"Queen Cup": 3011,
|
||||
"Kyodo News Hai": 3012,
|
||||
"Kyoto Umamusume Stakes": 3013,
|
||||
"Diamond Stakes": 3014,
|
||||
"Kokura Daishoten": 3015,
|
||||
"Arlington Cup": 3016,
|
||||
"Hankyu Hai": 3017,
|
||||
"Tulip Sho": 3018,
|
||||
"Ocean Stakes": 3019,
|
||||
"Nakayama Umamusume Stakes": 3020,
|
||||
"Falcon Stakes": 3021,
|
||||
"Flower Cup": 3022,
|
||||
"Mainichi Hai": 3023,
|
||||
"March Stakes": 3024,
|
||||
"Lord Derby Challenge Trophy": 3025,
|
||||
"Antares Stakes": 3026,
|
||||
"Fukushima Umamusume Stakes": 3027,
|
||||
"Niigata Daishoten": 3028,
|
||||
"Heian Stakes": 3029,
|
||||
"Naruo Kinen": 3030,
|
||||
"Mermaid Stakes": 3031,
|
||||
"Epsom Cup": 3032,
|
||||
"Unicorn Stakes": 3033,
|
||||
"Hakodate Sprint Stakes": 3034,
|
||||
"CBC Sho": 3035,
|
||||
"Radio Nikkei Sho": 3036,
|
||||
"Procyon Stakes": 3037,
|
||||
"Tanabata Sho": 3038,
|
||||
"Hakodate Kinen": 3039,
|
||||
"Chukyo Kinen": 3040,
|
||||
"Hakodate Junior Stakes": 3041,
|
||||
"Ibis Summer Dash": 3042,
|
||||
"Queen Stakes": 3043,
|
||||
"Kokura Kinen": 3044,
|
||||
"Leopard Stakes": 3045,
|
||||
"Sekiya Kinen": 3046,
|
||||
"Elm Stakes": 3047,
|
||||
"Kitakyushu Kinen": 3048,
|
||||
"Niigata Junior Stakes": 3049,
|
||||
"Keeneland Cup": 3050,
|
||||
"Sapporo Junior Stakes": 3051,
|
||||
"Kokura Junior Stakes": 3052,
|
||||
"Niigata Kinen": 3053,
|
||||
"Shion Stakes": 3054,
|
||||
"Keisei Hai Autumn Handicap": 3055,
|
||||
"Sirius Stakes": 3056,
|
||||
"Saudi Arabia Royal Cup": 3057,
|
||||
"Fuji Stakes": 3058,
|
||||
"Artemis Stakes": 3059,
|
||||
"Fantasy Stakes": 3060,
|
||||
"Miyako Stakes": 3061,
|
||||
"Musashino Stakes": 3062,
|
||||
"Fukushima Kinen": 3063,
|
||||
"Tokyo Sports Hai Junior Stakes": 3064,
|
||||
"Kyoto Junior Stakes": 3065,
|
||||
"Keihan Hai": 3066,
|
||||
"Challenge Cup": 3067,
|
||||
"Chunichi Shimbun Hai": 3068,
|
||||
"Capella Stakes": 3069,
|
||||
"Turquoise Stakes": 3070,
|
||||
"Manyo Stakes": 4001,
|
||||
"Junior Cup": 4002,
|
||||
"Yodo Tankyori Stakes": 4003,
|
||||
"Pollux Stakes": 4004,
|
||||
"January Stakes": 4005,
|
||||
"New Year Stakes": 4006,
|
||||
"Kobai Stakes": 4007,
|
||||
"Subaru Stakes": 4008,
|
||||
"Wakagoma Stakes": 4009,
|
||||
"Carbuncle Stakes": 4010,
|
||||
"Shirafuji Stakes": 4011,
|
||||
"Crocus Stakes": 4012,
|
||||
"Yamato Stakes": 4013,
|
||||
"Elfin Stakes": 4014,
|
||||
"Rakuyo Stakes": 4015,
|
||||
"Aldebaran Stakes": 4016,
|
||||
"Valentine Stakes": 4017,
|
||||
"Hyacinth Stakes": 4018,
|
||||
"Sobu Stakes": 4019,
|
||||
"Sumire Stakes": 4020,
|
||||
"Osakajo Stakes": 4021,
|
||||
"Polaris Stakes": 4022,
|
||||
"Nigawa Stakes": 4023,
|
||||
"Anemone Stakes": 4024,
|
||||
"Shoryu Stakes": 4025,
|
||||
"Kochi Stakes": 4026,
|
||||
"Wakaba Stakes": 4027,
|
||||
"Chiba Stakes": 4028,
|
||||
"Rokko Stakes": 4030,
|
||||
"Coral Stakes": 4031,
|
||||
"Marguerite Stakes": 4032,
|
||||
"Fukuryu Stakes": 4033,
|
||||
"Wasurenagusa Sho": 4035,
|
||||
"Keiyo Stakes": 4036,
|
||||
"Shunrai Stakes": 4037,
|
||||
"Fukushima Mimpo Hai": 4038,
|
||||
"Tachibana Stakes": 4039,
|
||||
"Oasis Stakes": 4040,
|
||||
"Tennozan Stakes": 4041,
|
||||
"Tango Stakes": 4042,
|
||||
"Sweetpea Stakes": 4043,
|
||||
"Tanigawadake Stakes": 4044,
|
||||
"Principal Stakes": 4045,
|
||||
"Metropolitan Stakes": 4046,
|
||||
"Kurama Stakes": 4047,
|
||||
"Brilliant Stakes": 4048,
|
||||
"Miyakooji Stakes": 4049,
|
||||
"Aoi Stakes": 4050,
|
||||
"Ritto Stakes": 4051,
|
||||
"Seiryu Stakes": 4052,
|
||||
"May Stakes": 4053,
|
||||
"Hosu Stakes": 4054,
|
||||
"Idaten Stakes": 4055,
|
||||
"Shirayuri Stakes": 4056,
|
||||
"Keyaki Stakes": 4057,
|
||||
"Azuchijo Stakes": 4058,
|
||||
"Akhalteke Stakes": 4059,
|
||||
"Tempozan Stakes": 4060,
|
||||
"Yonago Stakes": 4061,
|
||||
"Onuma Stakes": 4062,
|
||||
"Paradise Stakes": 4063,
|
||||
"Tomoe Sho": 4064,
|
||||
"Marine Stakes": 4065,
|
||||
"Meitetsu Hai": 4066,
|
||||
"Chukyo Junior Stakes": 4068,
|
||||
"Fukushima TV Open": 4069,
|
||||
"Dahlia Sho": 4070,
|
||||
"Sapporo Nikkei Open": 4071,
|
||||
"UHB Sho": 4072,
|
||||
"Aso Stakes": 4073,
|
||||
"Phoenix Sho": 4074,
|
||||
"Cosmos Sho": 4075,
|
||||
"NST Sho": 4076,
|
||||
"Clover Sho": 4077,
|
||||
"Himawari Sho": 4078,
|
||||
"BSN Sho": 4079,
|
||||
"Kokura Nikkei Open": 4080,
|
||||
"Toki Stakes": 4081,
|
||||
"Tancho Stakes": 4082,
|
||||
"Suzuran Sho": 4083,
|
||||
"Enif Stakes": 4084,
|
||||
"Nojigiku Stakes": 4085,
|
||||
"Radio Nippon Sho": 4086,
|
||||
"Kikyo Stakes": 4087,
|
||||
"Fuyo Stakes": 4088,
|
||||
"Canna Stakes": 4089,
|
||||
"Port Island Stakes": 4090,
|
||||
"Opal Stakes": 4091,
|
||||
"Green Channel Cup": 4092,
|
||||
"Momiji Stakes": 4093,
|
||||
"October Stakes": 4094,
|
||||
"Shinetsu Stakes": 4095,
|
||||
"Ivy Stakes": 4096,
|
||||
"Muromachi Stakes": 4097,
|
||||
"Brazil Cup": 4098,
|
||||
"Hagi Stakes": 4099,
|
||||
"Cassiopeia Stakes": 4100,
|
||||
"Lumiere Autumn Dash": 4101,
|
||||
"Oro Cup": 4102,
|
||||
"Fukushima Junior Stakes": 4103,
|
||||
"Andromeda Stakes": 4104,
|
||||
"Shimotsuki Stakes": 4105,
|
||||
"Fukushima Minyu Cup": 4106,
|
||||
"Capital Stakes": 4107,
|
||||
"Autumn Leaf Stakes": 4108,
|
||||
"Lapis Lazuli Stakes": 4109,
|
||||
"Shiwasu Stakes": 4110,
|
||||
"Rigel Stakes": 4111,
|
||||
"Tanzanite Stakes": 4112,
|
||||
"December Stakes": 4113,
|
||||
"Christmas Rose Stakes": 4114,
|
||||
"Galaxy Stakes": 4115,
|
||||
"Betelgeuse Stakes": 4116,
|
||||
"Kitakyushu Tankyori Stakes": 4118,
|
||||
"Azumakofuji Stakes": 4119,
|
||||
"Sleipnir Stakes": 4120,
|
||||
"Sannomiya Stakes": 4121,
|
||||
"Kanetsu Stakes": 4122,
|
||||
"Nagatsuki Stakes": 4123,
|
||||
"Uzumasa Stakes": 4124,
|
||||
"Aster Sho": 4501,
|
||||
"Saffron Sho": 4502,
|
||||
"Rindo Sho": 4503,
|
||||
"Shigiku Sho": 4504,
|
||||
"Platanus Sho": 4505,
|
||||
"Nadeshiko Sho": 4506,
|
||||
"Hyakunichiso Tokubetsu": 4507,
|
||||
"Kimmokusei Tokubetsu": 4508,
|
||||
"Oxalis Sho": 4509,
|
||||
"Kigiku Sho": 4510,
|
||||
"Mochinoki Sho": 4511,
|
||||
"Akamatsu Sho": 4512,
|
||||
"Shumeigiku Sho": 4513,
|
||||
"Cattleya Sho": 4514,
|
||||
"Begonia Sho": 4515,
|
||||
"Shiragiku Sho": 4516,
|
||||
"Habotan Sho": 4517,
|
||||
"Koyamaki Sho": 4518,
|
||||
"Manryo Sho": 4519,
|
||||
"Kuromatsu Sho": 4520,
|
||||
"Erica Sho": 4521,
|
||||
"Tsuwabuki Sho": 4522,
|
||||
"Hiiragi Sho": 4523,
|
||||
"Sazanka Sho": 4524,
|
||||
"Kantsubaki Sho": 4525,
|
||||
"Senryo Sho": 4526,
|
||||
"February Stakes": 1001,
|
||||
"Takamatsunomiya Kinen": 1002,
|
||||
"Osaka Hai": 1003,
|
||||
"Oka Sho": 1004,
|
||||
"Satsuki Sho": 1005,
|
||||
"Tenno Sho (Spring)": 1006,
|
||||
"NHK Mile Cup": 1007,
|
||||
"Victoria Mile": 1008,
|
||||
"Japanese Oaks": 1009,
|
||||
"Tokyo Yushun (Japanese Derby)": 1010,
|
||||
"Yasuda Kinen": 1011,
|
||||
"Takarazuka Kinen": 1012,
|
||||
"Sprinters Stakes": 1013,
|
||||
"Shuka Sho": 1014,
|
||||
"Kikuka Sho": 1015,
|
||||
"Tenno Sho (Autumn)": 1016,
|
||||
"Queen Elizabeth II Cup": 1017,
|
||||
"Mile Championship": 1018,
|
||||
"Japan Cup": 1019,
|
||||
"Champions Cup": 1020,
|
||||
"Hanshin Juvenile Fillies": 1021,
|
||||
"Asahi Hai Futurity Stakes": 1022,
|
||||
"Arima Kinen": 1023,
|
||||
"Hopeful Stakes": 1024,
|
||||
"Takarazuka Kinen" + " (Alternate 1025)": 1025,
|
||||
"Kikuka Sho" + " (Alternate 1026)": 1026,
|
||||
"Tenno Sho (Spring)" + " (Alternate 1027)": 1027,
|
||||
"Satsuki Sho" + " (Alternate 1028)": 1028,
|
||||
"Teio Sho": 1101,
|
||||
"Japan Dirt Derby": 1102,
|
||||
"JBC Ladies’ Classic": 1103,
|
||||
"JBC Sprint": 1104,
|
||||
"JBC Classic": 1105,
|
||||
"Tokyo Daishoten": 1106,
|
||||
"Nikkei Shinshun Hai": 2001,
|
||||
"Tokai Stakes": 2002,
|
||||
"American JCC": 2003,
|
||||
"Kyoto Kinen": 2004,
|
||||
"Nakayama Kinen": 2005,
|
||||
"Yayoi Sho": 2006,
|
||||
"Kinko Sho": 2007,
|
||||
"Fillies' Revue": 2008,
|
||||
"Hanshin Daishoten": 2009,
|
||||
"Spring Stakes": 2010,
|
||||
"Nikkei Sho": 2011,
|
||||
"Hanshin Umamusume Stakes": 2012,
|
||||
"New Zealand Trophy": 2013,
|
||||
"Milers Cup": 2014,
|
||||
"Flora Stakes": 2015,
|
||||
"Aoba Sho": 2016,
|
||||
"Kyoto Shimbun Hai": 2017,
|
||||
"Keio Hai Spring Cup": 2018,
|
||||
"Meguro Kinen": 2019,
|
||||
"Sapporo Kinen": 2020,
|
||||
"Centaur Stakes": 2021,
|
||||
"Rose Stakes": 2022,
|
||||
"St. Lite Kinen": 2023,
|
||||
"Kobe Shimbun Hai": 2024,
|
||||
"All Comers": 2025,
|
||||
"Mainichi Okan": 2026,
|
||||
"Kyoto Daishoten": 2027,
|
||||
"Fuchu Umamusume Stakes": 2028,
|
||||
"Swan Stakes": 2029,
|
||||
"Keio Hai Junior Stakes": 2030,
|
||||
"Copa Republica Argentina": 2031,
|
||||
"Daily Hai Junior Stakes": 2032,
|
||||
"Stayers Stakes": 2033,
|
||||
"Hanshin Cup": 2034,
|
||||
"Spring Stakes" + " (Alternate 2035)": 2035,
|
||||
"Kyoto Kimpai": 3001,
|
||||
"Nakayama Kimpai": 3002,
|
||||
"Shinzan Kinen": 3003,
|
||||
"Fairy Stakes": 3004,
|
||||
"Aichi Hai": 3005,
|
||||
"Keisei Hai": 3006,
|
||||
"Silk Road Stakes": 3007,
|
||||
"Negishi Stakes": 3008,
|
||||
"Kisaragi Sho": 3009,
|
||||
"Tokyo Shimbun Hai": 3010,
|
||||
"Queen Cup": 3011,
|
||||
"Kyodo News Hai": 3012,
|
||||
"Kyoto Umamusume Stakes": 3013,
|
||||
"Diamond Stakes": 3014,
|
||||
"Kokura Daishoten": 3015,
|
||||
"Arlington Cup": 3016,
|
||||
"Hankyu Hai": 3017,
|
||||
"Tulip Sho": 3018,
|
||||
"Ocean Stakes": 3019,
|
||||
"Nakayama Umamusume Stakes": 3020,
|
||||
"Falcon Stakes": 3021,
|
||||
"Flower Cup": 3022,
|
||||
"Mainichi Hai": 3023,
|
||||
"March Stakes": 3024,
|
||||
"Lord Derby Challenge Trophy": 3025,
|
||||
"Antares Stakes": 3026,
|
||||
"Fukushima Umamusume Stakes": 3027,
|
||||
"Niigata Daishoten": 3028,
|
||||
"Heian Stakes": 3029,
|
||||
"Naruo Kinen": 3030,
|
||||
"Mermaid Stakes": 3031,
|
||||
"Epsom Cup": 3032,
|
||||
"Unicorn Stakes": 3033,
|
||||
"Hakodate Sprint Stakes": 3034,
|
||||
"CBC Sho": 3035,
|
||||
"Radio Nikkei Sho": 3036,
|
||||
"Procyon Stakes": 3037,
|
||||
"Tanabata Sho": 3038,
|
||||
"Hakodate Kinen": 3039,
|
||||
"Chukyo Kinen": 3040,
|
||||
"Hakodate Junior Stakes": 3041,
|
||||
"Ibis Summer Dash": 3042,
|
||||
"Queen Stakes": 3043,
|
||||
"Kokura Kinen": 3044,
|
||||
"Leopard Stakes": 3045,
|
||||
"Sekiya Kinen": 3046,
|
||||
"Elm Stakes": 3047,
|
||||
"Kitakyushu Kinen": 3048,
|
||||
"Niigata Junior Stakes": 3049,
|
||||
"Keeneland Cup": 3050,
|
||||
"Sapporo Junior Stakes": 3051,
|
||||
"Kokura Junior Stakes": 3052,
|
||||
"Niigata Kinen": 3053,
|
||||
"Shion Stakes": 3054,
|
||||
"Keisei Hai Autumn Handicap": 3055,
|
||||
"Sirius Stakes": 3056,
|
||||
"Saudi Arabia Royal Cup": 3057,
|
||||
"Fuji Stakes": 3058,
|
||||
"Artemis Stakes": 3059,
|
||||
"Fantasy Stakes": 3060,
|
||||
"Miyako Stakes": 3061,
|
||||
"Musashino Stakes": 3062,
|
||||
"Fukushima Kinen": 3063,
|
||||
"Tokyo Sports Hai Junior Stakes": 3064,
|
||||
"Kyoto Junior Stakes": 3065,
|
||||
"Keihan Hai": 3066,
|
||||
"Challenge Cup": 3067,
|
||||
"Chunichi Shimbun Hai": 3068,
|
||||
"Capella Stakes": 3069,
|
||||
"Turquoise Stakes": 3070,
|
||||
"Manyo Stakes": 4001,
|
||||
"Junior Cup": 4002,
|
||||
"Yodo Tankyori Stakes": 4003,
|
||||
"Pollux Stakes": 4004,
|
||||
"January Stakes": 4005,
|
||||
"New Year Stakes": 4006,
|
||||
"Kobai Stakes": 4007,
|
||||
"Subaru Stakes": 4008,
|
||||
"Wakagoma Stakes": 4009,
|
||||
"Carbuncle Stakes": 4010,
|
||||
"Shirafuji Stakes": 4011,
|
||||
"Crocus Stakes": 4012,
|
||||
"Yamato Stakes": 4013,
|
||||
"Elfin Stakes": 4014,
|
||||
"Rakuyo Stakes": 4015,
|
||||
"Aldebaran Stakes": 4016,
|
||||
"Valentine Stakes": 4017,
|
||||
"Hyacinth Stakes": 4018,
|
||||
"Sobu Stakes": 4019,
|
||||
"Sumire Stakes": 4020,
|
||||
"Osakajo Stakes": 4021,
|
||||
"Polaris Stakes": 4022,
|
||||
"Nigawa Stakes": 4023,
|
||||
"Anemone Stakes": 4024,
|
||||
"Shoryu Stakes": 4025,
|
||||
"Kochi Stakes": 4026,
|
||||
"Wakaba Stakes": 4027,
|
||||
"Chiba Stakes": 4028,
|
||||
"Rokko Stakes": 4030,
|
||||
"Coral Stakes": 4031,
|
||||
"Marguerite Stakes": 4032,
|
||||
"Fukuryu Stakes": 4033,
|
||||
"Wasurenagusa Sho": 4035,
|
||||
"Keiyo Stakes": 4036,
|
||||
"Shunrai Stakes": 4037,
|
||||
"Fukushima Mimpo Hai": 4038,
|
||||
"Tachibana Stakes": 4039,
|
||||
"Oasis Stakes": 4040,
|
||||
"Tennozan Stakes": 4041,
|
||||
"Tango Stakes": 4042,
|
||||
"Sweetpea Stakes": 4043,
|
||||
"Tanigawadake Stakes": 4044,
|
||||
"Principal Stakes": 4045,
|
||||
"Metropolitan Stakes": 4046,
|
||||
"Kurama Stakes": 4047,
|
||||
"Brilliant Stakes": 4048,
|
||||
"Miyakooji Stakes": 4049,
|
||||
"Aoi Stakes": 4050,
|
||||
"Ritto Stakes": 4051,
|
||||
"Seiryu Stakes": 4052,
|
||||
"May Stakes": 4053,
|
||||
"Hosu Stakes": 4054,
|
||||
"Idaten Stakes": 4055,
|
||||
"Shirayuri Stakes": 4056,
|
||||
"Keyaki Stakes": 4057,
|
||||
"Azuchijo Stakes": 4058,
|
||||
"Akhalteke Stakes": 4059,
|
||||
"Tempozan Stakes": 4060,
|
||||
"Yonago Stakes": 4061,
|
||||
"Onuma Stakes": 4062,
|
||||
"Paradise Stakes": 4063,
|
||||
"Tomoe Sho": 4064,
|
||||
"Marine Stakes": 4065,
|
||||
"Meitetsu Hai": 4066,
|
||||
"Chukyo Junior Stakes": 4068,
|
||||
"Fukushima TV Open": 4069,
|
||||
"Dahlia Sho": 4070,
|
||||
"Sapporo Nikkei Open": 4071,
|
||||
"UHB Sho": 4072,
|
||||
"Aso Stakes": 4073,
|
||||
"Phoenix Sho": 4074,
|
||||
"Cosmos Sho": 4075,
|
||||
"NST Sho": 4076,
|
||||
"Clover Sho": 4077,
|
||||
"Himawari Sho": 4078,
|
||||
"BSN Sho": 4079,
|
||||
"Kokura Nikkei Open": 4080,
|
||||
"Toki Stakes": 4081,
|
||||
"Tancho Stakes": 4082,
|
||||
"Suzuran Sho": 4083,
|
||||
"Enif Stakes": 4084,
|
||||
"Nojigiku Stakes": 4085,
|
||||
"Radio Nippon Sho": 4086,
|
||||
"Kikyo Stakes": 4087,
|
||||
"Fuyo Stakes": 4088,
|
||||
"Canna Stakes": 4089,
|
||||
"Port Island Stakes": 4090,
|
||||
"Opal Stakes": 4091,
|
||||
"Green Channel Cup": 4092,
|
||||
"Momiji Stakes": 4093,
|
||||
"October Stakes": 4094,
|
||||
"Shinetsu Stakes": 4095,
|
||||
"Ivy Stakes": 4096,
|
||||
"Muromachi Stakes": 4097,
|
||||
"Brazil Cup": 4098,
|
||||
"Hagi Stakes": 4099,
|
||||
"Cassiopeia Stakes": 4100,
|
||||
"Lumiere Autumn Dash": 4101,
|
||||
"Oro Cup": 4102,
|
||||
"Fukushima Junior Stakes": 4103,
|
||||
"Andromeda Stakes": 4104,
|
||||
"Shimotsuki Stakes": 4105,
|
||||
"Fukushima Minyu Cup": 4106,
|
||||
"Capital Stakes": 4107,
|
||||
"Autumn Leaf Stakes": 4108,
|
||||
"Lapis Lazuli Stakes": 4109,
|
||||
"Shiwasu Stakes": 4110,
|
||||
"Rigel Stakes": 4111,
|
||||
"Tanzanite Stakes": 4112,
|
||||
"December Stakes": 4113,
|
||||
"Christmas Rose Stakes": 4114,
|
||||
"Galaxy Stakes": 4115,
|
||||
"Betelgeuse Stakes": 4116,
|
||||
"Kitakyushu Tankyori Stakes": 4118,
|
||||
"Azumakofuji Stakes": 4119,
|
||||
"Sleipnir Stakes": 4120,
|
||||
"Sannomiya Stakes": 4121,
|
||||
"Kanetsu Stakes": 4122,
|
||||
"Nagatsuki Stakes": 4123,
|
||||
"Uzumasa Stakes": 4124,
|
||||
"Aster Sho": 4501,
|
||||
"Saffron Sho": 4502,
|
||||
"Rindo Sho": 4503,
|
||||
"Shigiku Sho": 4504,
|
||||
"Platanus Sho": 4505,
|
||||
"Nadeshiko Sho": 4506,
|
||||
"Hyakunichiso Tokubetsu": 4507,
|
||||
"Kimmokusei Tokubetsu": 4508,
|
||||
"Oxalis Sho": 4509,
|
||||
"Kigiku Sho": 4510,
|
||||
"Mochinoki Sho": 4511,
|
||||
"Akamatsu Sho": 4512,
|
||||
"Shumeigiku Sho": 4513,
|
||||
"Cattleya Sho": 4514,
|
||||
"Begonia Sho": 4515,
|
||||
"Shiragiku Sho": 4516,
|
||||
"Habotan Sho": 4517,
|
||||
"Koyamaki Sho": 4518,
|
||||
"Manryo Sho": 4519,
|
||||
"Kuromatsu Sho": 4520,
|
||||
"Erica Sho": 4521,
|
||||
"Tsuwabuki Sho": 4522,
|
||||
"Hiiragi Sho": 4523,
|
||||
"Sazanka Sho": 4524,
|
||||
"Kantsubaki Sho": 4525,
|
||||
"Senryo Sho": 4526,
|
||||
}
|
||||
|
||||
@@ -32,10 +32,10 @@ pub type race
|
||||
Asahi-Hai-Futurity-Stakes
|
||||
Arima-Kinen
|
||||
Hopeful-Stakes
|
||||
Takarazuka-Kinen-Alternate
|
||||
Kikuka-Sho-Alternate
|
||||
Tenno-Sho-Spring-Alternate
|
||||
Satsuki-Sho-Alternate
|
||||
Takarazuka-Kinen-Alt1025
|
||||
Kikuka-Sho-Alt1026
|
||||
Tenno-Sho-Spring-Alt1027
|
||||
Satsuki-Sho-Alt1028
|
||||
Teio-Sho
|
||||
Japan-Dirt-Derby
|
||||
JBC-Ladies-Classic
|
||||
@@ -76,7 +76,7 @@ pub type race
|
||||
Daily-Hai-Junior-Stakes
|
||||
Stayers-Stakes
|
||||
Hanshin-Cup
|
||||
Spring-Stakes-Alternate
|
||||
Spring-Stakes-Alt2035
|
||||
Kyoto-Kimpai
|
||||
Nakayama-Kimpai
|
||||
Shinzan-Kinen
|
||||
@@ -321,10 +321,10 @@ pub fun race-id(r: race): race-id
|
||||
Asahi-Hai-Futurity-Stakes -> Race-id(1022)
|
||||
Arima-Kinen -> Race-id(1023)
|
||||
Hopeful-Stakes -> Race-id(1024)
|
||||
Takarazuka-Kinen-Alternate -> Race-id(1025)
|
||||
Kikuka-Sho-Alternate -> Race-id(1026)
|
||||
Tenno-Sho-Spring-Alternate -> Race-id(1027)
|
||||
Satsuki-Sho-Alternate -> Race-id(1028)
|
||||
Takarazuka-Kinen-Alt1025 -> Race-id(1025)
|
||||
Kikuka-Sho-Alt1026 -> Race-id(1026)
|
||||
Tenno-Sho-Spring-Alt1027 -> Race-id(1027)
|
||||
Satsuki-Sho-Alt1028 -> Race-id(1028)
|
||||
Teio-Sho -> Race-id(1101)
|
||||
Japan-Dirt-Derby -> Race-id(1102)
|
||||
JBC-Ladies-Classic -> Race-id(1103)
|
||||
@@ -365,7 +365,7 @@ pub fun race-id(r: race): race-id
|
||||
Daily-Hai-Junior-Stakes -> Race-id(2032)
|
||||
Stayers-Stakes -> Race-id(2033)
|
||||
Hanshin-Cup -> Race-id(2034)
|
||||
Spring-Stakes-Alternate -> Race-id(2035)
|
||||
Spring-Stakes-Alt2035 -> Race-id(2035)
|
||||
Kyoto-Kimpai -> Race-id(3001)
|
||||
Nakayama-Kimpai -> Race-id(3002)
|
||||
Shinzan-Kinen -> Race-id(3003)
|
||||
@@ -609,10 +609,10 @@ pub val all = [
|
||||
Asahi-Hai-Futurity-Stakes,
|
||||
Arima-Kinen,
|
||||
Hopeful-Stakes,
|
||||
Takarazuka-Kinen-Alternate,
|
||||
Kikuka-Sho-Alternate,
|
||||
Tenno-Sho-Spring-Alternate,
|
||||
Satsuki-Sho-Alternate,
|
||||
Takarazuka-Kinen-Alt1025,
|
||||
Kikuka-Sho-Alt1026,
|
||||
Tenno-Sho-Spring-Alt1027,
|
||||
Satsuki-Sho-Alt1028,
|
||||
Teio-Sho,
|
||||
Japan-Dirt-Derby,
|
||||
JBC-Ladies-Classic,
|
||||
@@ -653,7 +653,7 @@ pub val all = [
|
||||
Daily-Hai-Junior-Stakes,
|
||||
Stayers-Stakes,
|
||||
Hanshin-Cup,
|
||||
Spring-Stakes-Alternate,
|
||||
Spring-Stakes-Alt2035,
|
||||
Kyoto-Kimpai,
|
||||
Nakayama-Kimpai,
|
||||
Shinzan-Kinen,
|
||||
@@ -897,10 +897,10 @@ val name2id: rbmap<string, race-id> = rb-map/empty()
|
||||
.set("Asahi Hai Futurity Stakes", Race-id(1022))
|
||||
.set("Arima Kinen", Race-id(1023))
|
||||
.set("Hopeful Stakes", Race-id(1024))
|
||||
.set("Takarazuka Kinen" ++ " (Alternate)", Race-id(1025))
|
||||
.set("Kikuka Sho" ++ " (Alternate)", Race-id(1026))
|
||||
.set("Tenno Sho (Spring)" ++ " (Alternate)", Race-id(1027))
|
||||
.set("Satsuki Sho" ++ " (Alternate)", Race-id(1028))
|
||||
.set("Takarazuka Kinen" ++ " (Alternate 1025)", Race-id(1025))
|
||||
.set("Kikuka Sho" ++ " (Alternate 1026)", Race-id(1026))
|
||||
.set("Tenno Sho (Spring)" ++ " (Alternate 1027)", Race-id(1027))
|
||||
.set("Satsuki Sho" ++ " (Alternate 1028)", Race-id(1028))
|
||||
.set("Teio Sho", Race-id(1101))
|
||||
.set("Japan Dirt Derby", Race-id(1102))
|
||||
.set("JBC Ladies’ Classic", Race-id(1103))
|
||||
@@ -941,7 +941,7 @@ val name2id: rbmap<string, race-id> = rb-map/empty()
|
||||
.set("Daily Hai Junior Stakes", Race-id(2032))
|
||||
.set("Stayers Stakes", Race-id(2033))
|
||||
.set("Hanshin Cup", Race-id(2034))
|
||||
.set("Spring Stakes" ++ " (Alternate)", Race-id(2035))
|
||||
.set("Spring Stakes" ++ " (Alternate 2035)", Race-id(2035))
|
||||
.set("Kyoto Kimpai", Race-id(3001))
|
||||
.set("Nakayama Kimpai", Race-id(3002))
|
||||
.set("Shinzan Kinen", Race-id(3003))
|
||||
@@ -1160,13 +1160,13 @@ val name2id: rbmap<string, race-id> = rb-map/empty()
|
||||
.set("Senryo Sho", Race-id(4526))
|
||||
|
||||
// Get the race ID that has the given exact name.
|
||||
// Alternate versions of races have " (Alternate)" in their names.
|
||||
// Alternate versions of races have an indication of their ID in their names.
|
||||
// If no race matches the name, the result is an invalid ID.
|
||||
pub fun from-name(name: string): race-id
|
||||
name2id.lookup(name).default(Race-id(0))
|
||||
|
||||
// Get the name for a race.
|
||||
// Alternate versions of races have " (Alternate)" in their names.
|
||||
// Alternate versions of races have an indication of their ID in their names.
|
||||
// If no race matches the ID, the result is the numeric ID.
|
||||
pub fun show(r: race-id): string
|
||||
match r.game-id
|
||||
@@ -1194,10 +1194,10 @@ pub fun show(r: race-id): string
|
||||
1022 -> "Asahi Hai Futurity Stakes"
|
||||
1023 -> "Arima Kinen"
|
||||
1024 -> "Hopeful Stakes"
|
||||
1025 -> "Takarazuka Kinen" ++ " (Alternate)"
|
||||
1026 -> "Kikuka Sho" ++ " (Alternate)"
|
||||
1027 -> "Tenno Sho (Spring)" ++ " (Alternate)"
|
||||
1028 -> "Satsuki Sho" ++ " (Alternate)"
|
||||
1025 -> "Takarazuka Kinen" ++ " (Alternate 1025)"
|
||||
1026 -> "Kikuka Sho" ++ " (Alternate 1026)"
|
||||
1027 -> "Tenno Sho (Spring)" ++ " (Alternate 1027)"
|
||||
1028 -> "Satsuki Sho" ++ " (Alternate 1028)"
|
||||
1101 -> "Teio Sho"
|
||||
1102 -> "Japan Dirt Derby"
|
||||
1103 -> "JBC Ladies’ Classic"
|
||||
@@ -1238,7 +1238,7 @@ pub fun show(r: race-id): string
|
||||
2032 -> "Daily Hai Junior Stakes"
|
||||
2033 -> "Stayers Stakes"
|
||||
2034 -> "Hanshin Cup"
|
||||
2035 -> "Spring Stakes" ++ " (Alternate)"
|
||||
2035 -> "Spring Stakes" ++ " (Alternate 2035)"
|
||||
3001 -> "Kyoto Kimpai"
|
||||
3002 -> "Nakayama Kimpai"
|
||||
3003 -> "Shinzan Kinen"
|
||||
|
||||
@@ -151,18 +151,18 @@ pub type saddle
|
||||
Chunichi-Shimbun-Hai
|
||||
Capella-S
|
||||
Turquoise-S
|
||||
Classic-Triple-Crown-Alt1
|
||||
Senior-Spring-Triple-Crown-Alt1
|
||||
Dual-Grand-Prix-Alt1
|
||||
Takarazuka-Kinen-Alt1
|
||||
Kikuka-Sho-Alt1
|
||||
Spring-S-Alt1
|
||||
Classic-Triple-Crown-Alt144
|
||||
Senior-Spring-Triple-Crown-Alt145
|
||||
Dual-Grand-Prix-Alt146
|
||||
Takarazuka-Kinen-Alt147
|
||||
Kikuka-Sho-Alt148
|
||||
Spring-S-Alt149
|
||||
Aoi-S
|
||||
Senior-Spring-Triple-Crown-Alt2
|
||||
Tenno-Sweep-Alt1
|
||||
Tenno-Sho-Spring-Alt1
|
||||
Classic-Triple-Crown-Alt2
|
||||
Satsuki-Sho-Alt1
|
||||
Senior-Spring-Triple-Crown-Alt151
|
||||
Tenno-Sweep-Alt152
|
||||
Tenno-Sho-Spring-Alt153
|
||||
Classic-Triple-Crown-Alt154
|
||||
Satsuki-Sho-Alt155
|
||||
|
||||
// Get the saddle ID for a saddle.
|
||||
pub fun saddle-id(s: saddle): saddle-id
|
||||
@@ -310,18 +310,18 @@ pub fun saddle-id(s: saddle): saddle-id
|
||||
Chunichi-Shimbun-Hai -> Saddle-id(141)
|
||||
Capella-S -> Saddle-id(142)
|
||||
Turquoise-S -> Saddle-id(143)
|
||||
Classic-Triple-Crown-Alt1 -> Saddle-id(144)
|
||||
Senior-Spring-Triple-Crown-Alt1 -> Saddle-id(145)
|
||||
Dual-Grand-Prix-Alt1 -> Saddle-id(146)
|
||||
Takarazuka-Kinen-Alt1 -> Saddle-id(147)
|
||||
Kikuka-Sho-Alt1 -> Saddle-id(148)
|
||||
Spring-S-Alt1 -> Saddle-id(149)
|
||||
Classic-Triple-Crown-Alt144 -> Saddle-id(144)
|
||||
Senior-Spring-Triple-Crown-Alt145 -> Saddle-id(145)
|
||||
Dual-Grand-Prix-Alt146 -> Saddle-id(146)
|
||||
Takarazuka-Kinen-Alt147 -> Saddle-id(147)
|
||||
Kikuka-Sho-Alt148 -> Saddle-id(148)
|
||||
Spring-S-Alt149 -> Saddle-id(149)
|
||||
Aoi-S -> Saddle-id(150)
|
||||
Senior-Spring-Triple-Crown-Alt2 -> Saddle-id(151)
|
||||
Tenno-Sweep-Alt1 -> Saddle-id(152)
|
||||
Tenno-Sho-Spring-Alt1 -> Saddle-id(153)
|
||||
Classic-Triple-Crown-Alt2 -> Saddle-id(154)
|
||||
Satsuki-Sho-Alt1 -> Saddle-id(155)
|
||||
Senior-Spring-Triple-Crown-Alt151 -> Saddle-id(151)
|
||||
Tenno-Sweep-Alt152 -> Saddle-id(152)
|
||||
Tenno-Sho-Spring-Alt153 -> Saddle-id(153)
|
||||
Classic-Triple-Crown-Alt154 -> Saddle-id(154)
|
||||
Satsuki-Sho-Alt155 -> Saddle-id(155)
|
||||
|
||||
// List of all saddles in ID order for easy iterating.
|
||||
pub val all = [
|
||||
@@ -468,22 +468,22 @@ pub val all = [
|
||||
Chunichi-Shimbun-Hai,
|
||||
Capella-S,
|
||||
Turquoise-S,
|
||||
Classic-Triple-Crown-Alt1,
|
||||
Senior-Spring-Triple-Crown-Alt1,
|
||||
Dual-Grand-Prix-Alt1,
|
||||
Takarazuka-Kinen-Alt1,
|
||||
Kikuka-Sho-Alt1,
|
||||
Spring-S-Alt1,
|
||||
Classic-Triple-Crown-Alt144,
|
||||
Senior-Spring-Triple-Crown-Alt145,
|
||||
Dual-Grand-Prix-Alt146,
|
||||
Takarazuka-Kinen-Alt147,
|
||||
Kikuka-Sho-Alt148,
|
||||
Spring-S-Alt149,
|
||||
Aoi-S,
|
||||
Senior-Spring-Triple-Crown-Alt2,
|
||||
Tenno-Sweep-Alt1,
|
||||
Tenno-Sho-Spring-Alt1,
|
||||
Classic-Triple-Crown-Alt2,
|
||||
Satsuki-Sho-Alt1,
|
||||
Senior-Spring-Triple-Crown-Alt151,
|
||||
Tenno-Sweep-Alt152,
|
||||
Tenno-Sho-Spring-Alt153,
|
||||
Classic-Triple-Crown-Alt154,
|
||||
Satsuki-Sho-Alt155,
|
||||
]
|
||||
|
||||
// Get the name for a saddle.
|
||||
// Alternate versions of saddles have an indication of such in their names.
|
||||
// Alternate versions of saddles have an indication of their ID in their names.
|
||||
// If no saddle matches the ID, the result contains the numeric ID.
|
||||
pub fun show(s: saddle-id): string
|
||||
match s.game-id
|
||||
@@ -630,18 +630,18 @@ pub fun show(s: saddle-id): string
|
||||
141 -> "Chunichi Shimbun Hai"
|
||||
142 -> "Capella S."
|
||||
143 -> "Turquoise S."
|
||||
144 -> "Classic Triple Crown" ++ " (Alternate 1)"
|
||||
145 -> "Senior Spring Triple Crown" ++ " (Alternate 1)"
|
||||
146 -> "Dual Grand Prix" ++ " (Alternate 1)"
|
||||
147 -> "Takarazuka Kinen" ++ " (Alternate 1)"
|
||||
148 -> "Kikuka Sho" ++ " (Alternate 1)"
|
||||
149 -> "Spring S." ++ " (Alternate 1)"
|
||||
144 -> "Classic Triple Crown" ++ " (Alternate 144)"
|
||||
145 -> "Senior Spring Triple Crown" ++ " (Alternate 145)"
|
||||
146 -> "Dual Grand Prix" ++ " (Alternate 146)"
|
||||
147 -> "Takarazuka Kinen" ++ " (Alternate 147)"
|
||||
148 -> "Kikuka Sho" ++ " (Alternate 148)"
|
||||
149 -> "Spring S." ++ " (Alternate 149)"
|
||||
150 -> "Aoi S."
|
||||
151 -> "Senior Spring Triple Crown" ++ " (Alternate 2)"
|
||||
152 -> "Tenno Sweep" ++ " (Alternate 1)"
|
||||
153 -> "Tenno Sho (Spring)" ++ " (Alternate 1)"
|
||||
154 -> "Classic Triple Crown" ++ " (Alternate 2)"
|
||||
155 -> "Satsuki Sho" ++ " (Alternate 1)"
|
||||
151 -> "Senior Spring Triple Crown" ++ " (Alternate 151)"
|
||||
152 -> "Tenno Sweep" ++ " (Alternate 152)"
|
||||
153 -> "Tenno Sho (Spring)" ++ " (Alternate 153)"
|
||||
154 -> "Classic Triple Crown" ++ " (Alternate 154)"
|
||||
155 -> "Satsuki Sho" ++ " (Alternate 155)"
|
||||
x -> "saddle " ++ x.show
|
||||
|
||||
// Get the list of races that entitle a horse to a saddle.
|
||||
|
||||
@@ -328,6 +328,7 @@ type Race struct {
|
||||
Grade int
|
||||
ThumbnailID int
|
||||
Primary int
|
||||
Alternate int
|
||||
}
|
||||
|
||||
func Races(ctx context.Context, db *sqlitex.Pool) ([]Race, error) {
|
||||
@@ -357,6 +358,7 @@ func Races(ctx context.Context, db *sqlitex.Pool) ([]Race, error) {
|
||||
Grade: stmt.ColumnInt(2),
|
||||
ThumbnailID: stmt.ColumnInt(3),
|
||||
Primary: stmt.ColumnInt(4),
|
||||
Alternate: stmt.ColumnInt(5),
|
||||
}
|
||||
r = append(r, race)
|
||||
}
|
||||
|
||||
@@ -7,15 +7,15 @@ import . "git.sunturtle.xyz/zephyr/horse/horse"
|
||||
|
||||
const (
|
||||
{{- range $r := $.Races }}
|
||||
Race{{ goenum $r.Name }}{{ if ne $r.Primary $r.ID }}Alternate{{ end }} RaceID = {{ $r.ID }} // {{ $r.Name }}
|
||||
Race{{ goenum $r.Name }}{{ if $r.Alternate }}Alt{{ $r.ID }}{{ end }} RaceID = {{ $r.ID }} // {{ $r.Name }}
|
||||
{{- end }}
|
||||
)
|
||||
|
||||
var AllRaces = map[RaceID]Race{
|
||||
{{- range $r := $.Races }}
|
||||
Race{{ goenum $r.Name }}{{ if ne $r.Primary $r.ID }}Alternate{{ end }}: {
|
||||
Race{{ goenum $r.Name }}{{ if $r.Alternate }}Alt{{ $r.ID }}{{ end }}: {
|
||||
ID: {{ $r.ID }},
|
||||
Name: {{ printf "%q" $r.Name }}{{ if ne $r.Primary $r.ID }} + " (Alternate)"{{ end }},
|
||||
Name: {{ printf "%q" $r.Name }}{{ if $r.Alternate }} + " (Alternate {{ $r.ID }})"{{ end }},
|
||||
Thumbnail: {{ $r.ThumbnailID }},
|
||||
{{- if ne $r.Primary $r.ID }}
|
||||
Primary: {{ $r.Primary }},
|
||||
@@ -26,7 +26,7 @@ var AllRaces = map[RaceID]Race{
|
||||
|
||||
var RaceNameToID = map[string]RaceID{
|
||||
{{- range $r := $.Races }}
|
||||
{{ printf "%q" $r.Name }}{{ if ne $r.Primary $r.ID }} + " (Alternate)"{{ end }}: {{ $r.ID }},
|
||||
{{ printf "%q" $r.Name }}{{ if $r.Alternate }} + " (Alternate {{ $r.ID }})"{{ end }}: {{ $r.ID }},
|
||||
{{- end }}
|
||||
}
|
||||
{{ end }}
|
||||
|
||||
@@ -10,41 +10,41 @@ pub import horse/race
|
||||
// Enumeration of all races for type-safe programming.
|
||||
pub type race
|
||||
{{- range $r := $.Races }}
|
||||
{{ kkenum $r.Name }}{{ if ne $r.Primary $r.ID }}-Alternate{{ end }}
|
||||
{{ kkenum $r.Name }}{{ if $r.Alternate }}-Alt{{ $r.ID }}{{ end }}
|
||||
{{- end }}
|
||||
|
||||
// Get the race ID for a race.
|
||||
pub fun race-id(r: race): race-id
|
||||
match r
|
||||
{{- range $r := $.Races }}
|
||||
{{ kkenum $r.Name }}{{ if ne $r.Primary $r.ID }}-Alternate{{ end }} -> Race-id({{ $r.ID }})
|
||||
{{ kkenum $r.Name }}{{ if $r.Alternate }}-Alt{{ $r.ID }}{{ end }} -> Race-id({{ $r.ID }})
|
||||
{{- end }}
|
||||
|
||||
// List of all races in ID order for easy iterating.
|
||||
pub val all = [
|
||||
{{- range $r := $.Races }}
|
||||
{{ kkenum $r.Name }}{{ if ne $r.Primary $r.ID }}-Alternate{{ end }},
|
||||
{{ kkenum $r.Name }}{{ if $r.Alternate }}-Alt{{ $r.ID }}{{ end }},
|
||||
{{- end }}
|
||||
]
|
||||
|
||||
val name2id: rbmap<string, race-id> = rb-map/empty()
|
||||
{{- range $r := $.Races }}
|
||||
.set({{ printf "%q" $r.Name }}{{ if ne $r.Primary $r.ID }} ++ " (Alternate)"{{ end }}, Race-id({{ $r.ID }}))
|
||||
.set({{ printf "%q" $r.Name }}{{ if $r.Alternate }} ++ " (Alternate {{ $r.ID }})"{{ end }}, Race-id({{ $r.ID }}))
|
||||
{{- end }}
|
||||
|
||||
// Get the race ID that has the given exact name.
|
||||
// Alternate versions of races have " (Alternate)" in their names.
|
||||
// Alternate versions of races have an indication of their ID in their names.
|
||||
// If no race matches the name, the result is an invalid ID.
|
||||
pub fun from-name(name: string): race-id
|
||||
name2id.lookup(name).default(Race-id(0))
|
||||
|
||||
// Get the name for a race.
|
||||
// Alternate versions of races have " (Alternate)" in their names.
|
||||
// Alternate versions of races have an indication of their ID in their names.
|
||||
// If no race matches the ID, the result is the numeric ID.
|
||||
pub fun show(r: race-id): string
|
||||
match r.game-id
|
||||
{{- range $r := $.Races }}
|
||||
{{ $r.ID }} -> {{ printf "%q" $r.Name }}{{ if ne $r.Primary $r.ID }} ++ " (Alternate)"{{ end }}
|
||||
{{ $r.ID }} -> {{ printf "%q" $r.Name }}{{ if $r.Alternate }} ++ " (Alternate {{ $r.ID }})"{{ end }}
|
||||
{{- end }}
|
||||
x -> "race " ++ x.show
|
||||
|
||||
@@ -72,7 +72,7 @@ pub fun thumbnail(r: race-id): race-thumbnail-id
|
||||
pub fun primary(r: race-id): race-id
|
||||
match r.game-id
|
||||
{{- range $r := $.Races }}
|
||||
{{- if ne $r.ID $r.Primary }}
|
||||
{{- if $r.Alternate }}
|
||||
{{ $r.ID }} -> Race-id({{ $r.Primary }})
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
|
||||
@@ -6,7 +6,8 @@ SELECT
|
||||
race_names.name,
|
||||
race.grade,
|
||||
race.thumbnail_id,
|
||||
MIN(race.id) OVER (PARTITION BY race_names.name) AS "primary"
|
||||
MIN(race.id) OVER (PARTITION BY race_names.name) AS "primary",
|
||||
ROW_NUMBER() OVER (PARTITION BY race_names.name ORDER BY race.id) - 1 AS "alternate"
|
||||
FROM race
|
||||
JOIN race_names ON race.id = race_names.id
|
||||
WHERE race."group" = 1
|
||||
|
||||
@@ -10,30 +10,30 @@ pub import horse/{{ $.Region }}/race
|
||||
// Enumeration of all saddles for type-safe programming.
|
||||
pub type saddle
|
||||
{{- range $s := $.Saddles }}
|
||||
{{ kkenum $s.Name }}{{ if $s.Alternate }}-Alt{{ $s.Alternate }}{{ end }}
|
||||
{{ kkenum $s.Name }}{{ if $s.Alternate }}-Alt{{ $s.ID }}{{ end }}
|
||||
{{- end }}
|
||||
|
||||
// Get the saddle ID for a saddle.
|
||||
pub fun saddle-id(s: saddle): saddle-id
|
||||
match s
|
||||
{{- range $s := $.Saddles }}
|
||||
{{ kkenum $s.Name }}{{ if $s.Alternate }}-Alt{{ $s.Alternate }}{{ end }} -> Saddle-id({{ $s.ID }})
|
||||
{{ kkenum $s.Name }}{{ if $s.Alternate }}-Alt{{ $s.ID }}{{ end }} -> Saddle-id({{ $s.ID }})
|
||||
{{- end }}
|
||||
|
||||
// List of all saddles in ID order for easy iterating.
|
||||
pub val all = [
|
||||
{{- range $s := $.Saddles }}
|
||||
{{ kkenum $s.Name }}{{ if $s.Alternate }}-Alt{{ $s.Alternate }}{{ end }},
|
||||
{{ kkenum $s.Name }}{{ if $s.Alternate }}-Alt{{ $s.ID }}{{ end }},
|
||||
{{- end }}
|
||||
]
|
||||
|
||||
// Get the name for a saddle.
|
||||
// Alternate versions of saddles have an indication of such in their names.
|
||||
// Alternate versions of saddles have an indication of their ID in their names.
|
||||
// If no saddle matches the ID, the result contains the numeric ID.
|
||||
pub fun show(s: saddle-id): string
|
||||
match s.game-id
|
||||
{{- range $s := $.Saddles }}
|
||||
{{ $s.ID }} -> {{ printf "%q" $s.Name }}{{ if $s.Alternate }} ++ " (Alternate {{ $s.Alternate }})"{{ end }}
|
||||
{{ $s.ID }} -> {{ printf "%q" $s.Name }}{{ if $s.Alternate }} ++ " (Alternate {{ $s.ID }})"{{ end }}
|
||||
{{- end }}
|
||||
x -> "saddle " ++ x.show
|
||||
|
||||
|
||||
Reference in New Issue
Block a user