kittyverse 0.4.3 → 0.4.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 625692bc57c7cf12b02b4a08f18029b2fdbf2df8
4
- data.tar.gz: b7e4e3d49b1fa36c78d93bd535a34533d6caf0bb
3
+ metadata.gz: 7a711c97165ef02f83cdbfacde634a013fced668
4
+ data.tar.gz: 512645367b54692385916a9136d092893fc91cf9
5
5
  SHA512:
6
- metadata.gz: 4bc09276dc61fb29354e1af34ff88e6221b4c6a268d1e92fdaab8c35ce9c621e60afad1baaad5c52f8ce6683b8dbf6fd8a0b5fa6696b6f279639fd3090e78e85
7
- data.tar.gz: 0ec559282248dcc5c17ff83d984d30e7ea306c393b74c6b3cea39e433be76c9a4c5fd7a4eb9c862e58cdb4206c369ed964dd0708e1b04f58731c296d179a3554
6
+ metadata.gz: f1d71bd728a0968cbd0ec5bc58196bd5d12658b3bdd26a1b047fe6c9419d14ccdc2119825835ff7b437f3724a586c7d247edb74db3fc098a7ce094e5b7b47920
7
+ data.tar.gz: 3b5a4c57a2087d1853f164b0662247506f9726a97372315aeb8b5f266055324d812814b91485fce6fe2294b6a30c2121e952cd1ebb10eba97bcf8c6976522462
data/lib/kittyverse.rb CHANGED
@@ -3,11 +3,11 @@
3
3
  ## std libs
4
4
  require 'date'
5
5
  require 'json'
6
- require "pp"
7
- require "uri"
8
- require "net/http"
9
- require "net/https"
10
-
6
+ require 'pp'
7
+ require 'uri'
8
+ require 'net/http'
9
+ require 'net/https'
10
+ require 'fileutils'
11
11
 
12
12
 
13
13
  ## 3rd party libs
@@ -78,11 +78,13 @@ def initialize( base_uri:, token: nil )
78
78
  @base_request_uri = uri.request_uri ## e.g. save /v1 etc.
79
79
  ## puts "base_request_uri: >#{@base_request_uri}<"
80
80
 
81
- @token = token
81
+ @request_headers = if token
82
+ { "x-api-token" => token }
83
+ else
84
+ {}
85
+ end
82
86
  end # method initialize
83
87
 
84
-
85
-
86
88
  def get( service, **params )
87
89
 
88
90
  ## add url-encoded query string from params hash e.g. ?limit=100&type=sale
@@ -99,13 +101,9 @@ def get( service, **params )
99
101
  "#{@base_request_uri}#{service}" ## e.g. add /v1 etc.
100
102
  end
101
103
 
102
- request_headers = if @token
103
- { "x-api-token" => @token }
104
- else
105
- {}
106
- end
104
+ pp @request_headers
107
105
 
108
- req = Net::HTTP::Get.new( request_uri, request_headers )
106
+ req = Net::HTTP::Get.new( request_uri, @request_headers )
109
107
 
110
108
  res = @http.request(req)
111
109
 
@@ -81,10 +81,11 @@ end # class Client
81
81
  end # module V1
82
82
 
83
83
 
84
- CLIENT_V0 = V0::Client.new
85
- CLIENT_V1 = V1::Client.new
86
84
 
87
- def self.v0() CLIENT_V0; end
88
- def self.v1() CLIENT_V1; end
85
+ ## CLIENT_V0 = V0::Client.new
86
+ ## CLIENT_V1 = V1::Client.new
87
+ ##
88
+ ## def self.v0() CLIENT_V0; end
89
+ ## def self.v1() CLIENT_V1; end
89
90
 
90
91
  end # module Kitties
@@ -1,7 +1,7 @@
1
1
  # encoding: utf-8
2
2
 
3
- COLORS = {
4
- ## 31 colors body
3
+ ## 31 colors body
4
+ COLORS_BODY = {
5
5
  meowgarine: "#fcfc95",
6
6
  cornflower: "#7592fc",
7
7
  icicle: "#c5e2ff",
@@ -32,8 +32,11 @@ COLORS = {
32
32
  redvelvet: "#f77272",
33
33
  verdigris: "#73ffc3",
34
34
  onyx: "#42414c",
35
- martian: "#a4ff6f",
36
- ## 31 colors eyes
35
+ martian: "#a4ff6f"
36
+ }
37
+
38
+ ## 31 colors eyes
39
+ COLORS_EYES = {
37
40
  olive: "#729100",
38
41
  pinefresh: "#177a25",
39
42
  oasis: "#ccffef",
@@ -64,8 +67,11 @@ COLORS = {
64
67
  palejade: "#c3d8cf",
65
68
  eclipse: "#484c5b",
66
69
  babypuke: "#bcba5e",
67
- autumnmoon: "#ffe8bb",
68
- ## 31 colors secondary
70
+ autumnmoon: "#ffe8bb"
71
+ }
72
+
73
+ ## 31 colors secondary
74
+ COLORS_SECONDARY = {
69
75
  cyborg: "#959cae",
70
76
  ooze: "#daea31",
71
77
  peppermint: "#00a86b",
@@ -96,8 +102,11 @@ COLORS = {
96
102
  universe: "#494981",
97
103
  royalblue: "#5b6ee8",
98
104
  mertail: "#36f2bc",
99
- pearl: "#fff8fa",
100
- ## 31 colors tertiary
105
+ pearl: "#fff8fa"
106
+ }
107
+
108
+ ## 31 colors tertiary
109
+ COLORS_TERTIARY = {
101
110
  hanauma: "#7accb5",
102
111
  belleblue: "#afd0f7",
103
112
  peach: "#f9cfad",
@@ -130,3 +139,8 @@ COLORS = {
130
139
  kalahari: "#ffcf8a",
131
140
  atlantis: "#2a7f96"
132
141
  }
142
+
143
+ COLORS = {}.merge( COLORS_BODY )
144
+ .merge( COLORS_EYES )
145
+ .merge( COLORS_SECONDARY )
146
+ .merge( COLORS_TERTIARY )
@@ -9,10 +9,6 @@
9
9
  # https://blog.kotobaza.co/timeline/
10
10
 
11
11
 
12
- ##
13
- ## todo/fix:
14
- ## use count: for time-limited fancies do NOT use limit!!! change limit to count!!!
15
-
16
12
  ##
17
13
  ## note:
18
14
  ## for time limits for fancies use:
@@ -21,34 +17,174 @@
21
17
  ## for overflows for limited edition use:
22
18
  ## e.g. overflow: 1 # 888+1 (=889)
23
19
 
24
-
25
- ### todo/fix:
26
- ## split into EXCLUSIVES
27
- ## and into SPECIAL_EDITIONS (SPECIALS?) - why? why not?
28
-
29
-
30
-
31
- FANCIES =
32
- {
33
- 'curdlin': { name: 'Curdlin',
34
- recipe: {
35
- time: { start: '2019-05-11', end: '2019-11-30' }, count: 4,
36
- traits: ['nachocheez', 'saycheese', 'missmuffett', 'dippedcone']},
37
- desc: 'Cheeze Wizard Cat - Celebrating the Launch of the Cheeze Wizards on the Blockchain'
38
- ## see https://www.cryptokitties.co/blog/post/things-are-getting-cheezy-in-cryptokitties
39
- },
40
-
20
+ SPECIAL_EDITIONS = {
41
21
  'kitt-e': { name: 'KITT-E', date: '2019-05-10',
42
22
  specialedition: {
43
23
  limit: 500 },
44
24
  desc: 'Dapper (Crypto Contract) Wallet Promotion Cat'
45
25
  },
26
+ # Apr 10, 2019
27
+ # Sparkles Special Edition Cat is released.Special Edition Cat
28
+ sparkles: { name: 'Sparkles', date: '2019-04-10',
29
+ specialedition: {
30
+ limit: 100 },
31
+ desc: 'Freebie for CryptoKitties Community Events'
32
+ },
33
+ ##
34
+ ## date: '2019-01-10 ??? -- use for date "announced" or something - why? why not?
35
+ aeoncat: { name: 'Aeoncat',
36
+ specialedition: {
37
+ time: { start: '2019-01-17', end: '2019-01-28' },
38
+ limit: 380 }, ## Don't sleep - there's only 380 up for grabs!
39
+ desc: 'Goddess Aeona - Goddess of Nature - Gods Unchained Promotion'
40
+ },
41
+ ## 2018
42
+ ## December
43
+ catzy: { name: 'Catzy', date: '2018-12-31',
44
+ specialedition: {
45
+ limit: 10, ids: (1137653..1137662).to_a },
46
+ desc: 'Changpeng "CZ" Zhao - CEO of Binance - Top 10 Blockchain Influencer of the Year 2018 by CoinDesk'
47
+ },
48
+ purremyallaire: { name: 'Purremy Allaire', date: '2018-12-31',
49
+ specialedition: {
50
+ limit: 10, ids: (1137663..1137672).to_a },
51
+ desc: 'Jeremy Allaire - Top 10 Blockchain Influencer of the Year 2018 by CoinDesk'
52
+ },
53
+ lilbub: { name: 'Lil Bub Ub Bub (BUB)', date: '2018-11-13',
54
+ specialedition: {
55
+ limit: 468 }
56
+ },
57
+ }
58
+
59
+
60
+ EXCLUSIVES = {
46
61
  'dapp-e': { name: 'DAPP-E', date: '2019-05-10',
47
62
  exclusive: {
48
63
  limit: 50, ids: (1829..1878).to_a },
49
64
  desc: 'Dapper (Crypto Contract) Wallet Promotion Cat'
50
65
  },
66
+ papacatuanuku: { name: 'Papacatuanuku', date: '2019-03-31',
67
+ exclusive: {
68
+ limit: 1, ids: [1500000] },
69
+ desc: 'Kitty #1500000'
70
+ },
71
+ # Mar 26, 2019
72
+ # Sir Meowsalot Exclusive Cat is released. Exclusive Cat
73
+ sirmeowsalot: { name: 'Sir Meowsalot', date: '2019-03-26',
74
+ exclusive: {
75
+ limit: 21, ids: (201..221).to_a }
76
+ },
77
+
78
+ cyberberry: { name: 'Cyber Berry', date: '2019-03-02',
79
+ exclusive: {
80
+ limit: 1, ids: [282] },
81
+ desc: "Winner of the NFTme Sweetstakes"
82
+ },
83
+
84
+ # Mar 1, 2019
85
+ # Hinecatone Exclusive Cat is discovered. Exclusive Cat
86
+ hinecatone: { name: 'Hinecatone', date: '2019-03-01',
87
+ exclusive: {
88
+ limit: 15, ids: [1423547, 1433380, 1433486, 1440835, 1453366, 1456935, 1456973, 1459319, 1463197, 1466118, 1474082, 1484593, 1484982, 1492154, 1498885]}
89
+ },
90
+
91
+ # Feb 15, 2019
92
+ # Felono Exclusive Cat is discovered. Exclusive Cat
93
+ felono: { name: 'Felono', date: '2019-02-15',
94
+ exclusive: {
95
+ limit: 30, ids: [1394641, 1404595, 1406021, 1413065, 1414375, 1420553, 1421315, 1421864, 1424104 ,1425433, 1431823, 1435517, 1436333, 1449860, 1451482, 1455458, 1459320, 1462952, 1463069, 1476999, 1483225, 1487210, 1487551, 1489681, 1490345, 1491632, 1492206, 1492739, 1492817, 1498778]}
96
+ },
97
+ hypurrion: { name: 'Hypurrion', date: '2019-01-10',
98
+ exclusive: {
99
+ limit: 1, ids: [269]},
100
+ desc: 'Hyperion - Mythic Titan of Light - Gods Unchained Promotion'
101
+ },
102
+ dracothemagnificent: { name: 'Draco The Magnificent', date: '2018-11-27',
103
+ exclusive: {
104
+ limit: 12, ids: (270..281).to_a }
105
+ },
106
+ bugcatv2: { name: 'Bug Cat V2', date: '2018-11-27',
107
+ exclusive: {
108
+ limit: 20, ids: (167..186).to_a },
109
+ desc: 'Bug Bounty II (Offers Contract) Kitty'
110
+ },
111
+ lilbubthemagicalspacecat: { name: 'Lil Bub Ub Bub (BUB) The Magical Space Cat', date: '2018-11-13',
112
+ exclusive: {
113
+ limit: 3, ids: [266,267,268]}
114
+ },
115
+ vulcat: { name: 'Vulcat', date: '2018-09-12',
116
+ exclusive: {
117
+ limit: 1, ids: [1000000] },
118
+ desc: '1 000 000th Kitty'
119
+ },
120
+ vulcant: { name: 'Vulcant', date: '2018-08-31',
121
+ exclusive: {
122
+ limit: 20, ids: [932914,937360,938299,946526,948925,949058,950617,952280,952981,956374,956908,958570,964205,967234,983046,984451,990713,992861,995745,997469] }
123
+ },
124
+ rabbidkitty: { name: 'Rabbid Kitty', date: '2018-08-23',
125
+ exclusive: {
126
+ limit: 6, ids: (260..265).to_a },
127
+ desc: 'Ubisoft Blockchain Heroes Hackathon'
128
+ },
129
+ honu: { name: 'Honu', date: '2018-07-20',
130
+ exclusive: {
131
+ limit: 1, ids: [251] },
132
+ desc: 'Kitties for Good - Save Turtle Habitats'
133
+ },
134
+ victoire: { name: 'Victoire', date: '2018-07-18',
135
+ exclusive: {
136
+ limit: 1, ids: [402] },
137
+ desc: 'France Football World Cup Champion'
138
+ },
139
+ furlin: { name: 'Furlin', date: '2018-06-26',
140
+ exclusive: {
141
+ limit: 52, ids: (115..126).to_a + (128..166).to_a }
142
+ },
143
+ celestialcyberdimension: { name: 'Celestial Cyber Dimension', date: '2018-05-12',
144
+ exclusive: {
145
+ limit: 1, ids: [127] }
146
+ },
147
+ goldendragoncat: { name: 'Golden Dragon Cat', name_cn: '帝龙喵', date: '2018-03-08',
148
+ exclusive: {
149
+ limit: 1, ids: [888] },
150
+ desc: 'China Launch'
151
+ }, ## todo: check date for china launch specials!!!
152
+ goldendogcat: { name: 'Golden Dog Cat', name_cn: '旺财汪', date: '2018-03-08',
153
+ exclusive: {
154
+ limit: 11, ids: [1802,1803,1805,1806,1808,1809,1812,1816]+(1825..1828).to_a },
155
+ desc: 'China Launch'
156
+ }, ## todo: check date for china launch specials!!!
157
+
158
+ knightkitty: { name: 'Knight Kitty', date: '2018-03-01',
159
+ exclusive: {
160
+ limit: 11, ids: (104..114).to_a }
161
+ },
162
+ cathena: { name: 'Cathena', date: '2018-02-06',
163
+ exclusive: {
164
+ limit: 1, ids: [500000] },
165
+ desc: '500 000th Kitty'
166
+ },
167
+ genesis: { name: 'Genesis', date: '2017-11-24',
168
+ exclusive: {
169
+ limit: 1, ids: [1] },
170
+ desc: '1st Kitty'
171
+ },
172
+ bugcat: { name: 'Bug Cat', date: '2017-11-23',
173
+ exclusive: {
174
+ limit: 3, ids: [101,102,103] },
175
+ desc: 'Bug Bounty Kitty' }
176
+ }
51
177
 
178
+
179
+ RECIPES = {
180
+ 'curdlin': { name: 'Curdlin',
181
+ recipe: {
182
+ time: { start: '2019-05-11', end: '2019-11-30' }, count: 4,
183
+ traits: ['nachocheez', 'saycheese', 'missmuffett', 'dippedcone']},
184
+ desc: 'Cheeze Wizard Cat - Celebrating the Launch of the Cheeze Wizards on the Blockchain'
185
+ ## see https://www.cryptokitties.co/blog/post/things-are-getting-cheezy-in-cryptokitties
186
+ },
187
+ ##
52
188
  # Apr 27, 2019
53
189
  # Krakitten Fancy Cat is discovered. Fancy Cat
54
190
  krakitten: { name: 'Krakitten',
@@ -67,20 +203,6 @@ FANCIES =
67
203
  ## see https://www.cryptokitties.co/blog/post/pirate-cats-are-plundering-cryptokitties/
68
204
  },
69
205
 
70
- # Apr 10, 2019
71
- # Sparkles Special Edition Cat is released.Special Edition Cat
72
- sparkles: { name: 'Sparkles', date: '2019-04-10',
73
- specialedition: {
74
- limit: 100 },
75
- desc: 'Freebie for CryptoKitties Community Events'
76
- },
77
-
78
- papacatuanuku: { name: 'Papacatuanuku', date: '2019-03-31',
79
- exclusive: {
80
- limit: 1, ids: [1500000] },
81
- desc: 'Kitty #1500000'
82
- },
83
-
84
206
  # Mar 30, 2019
85
207
  # Glitter Fancy Cat is discovered. Fancy Cat
86
208
  glitter: { name: 'Glitter',
@@ -89,14 +211,6 @@ FANCIES =
89
211
  traits: ['rorschach', 'juju', 'unicorn', 'hyacinth'] }
90
212
  },
91
213
 
92
-
93
- # Mar 26, 2019
94
- # Sir Meowsalot Exclusive Cat is released. Exclusive Cat
95
- sirmeowsalot: { name: 'Sir Meowsalot', date: '2019-03-26',
96
- exclusive: {
97
- limit: 21, ids: (201..221).to_a }
98
- },
99
-
100
214
  # Mar 16, 2019
101
215
  # Clover Fancy Cat is discovered. Fancy Cat
102
216
  clover: { name: 'Clover', date: '2019-03-16',
@@ -115,20 +229,6 @@ FANCIES =
115
229
  desc: "Ninja Fancy Cat"
116
230
  },
117
231
 
118
- cyberberry: { name: 'Cyber Berry', date: '2019-03-02',
119
- exclusive: {
120
- limit: 1, ids: [282] },
121
- desc: "Winner of the NFTme Sweetstakes"
122
- },
123
-
124
- # Mar 1, 2019
125
- # Hinecatone Exclusive Cat is discovered. Exclusive Cat
126
- hinecatone: { name: 'Hinecatone', date: '2019-03-01',
127
- exclusive: {
128
- limit: 15, ids: [1423547, 1433380, 1433486, 1440835, 1453366, 1456935, 1456973, 1459319, 1463197, 1466118, 1474082, 1484593, 1484982, 1492154, 1498885]}
129
- },
130
-
131
-
132
232
  # Feb 21, 2019
133
233
  # Ande Fancy Cat is discovered. Fancy Cat
134
234
  ande: { name: 'Ande', date: '2019-02-21',
@@ -151,13 +251,6 @@ FANCIES =
151
251
  traits: ['mekong', 'scarlet', 'spangled', 'wonky'] }
152
252
  },
153
253
 
154
- # Feb 15, 2019
155
- # Felono Exclusive Cat is discovered. Exclusive Cat
156
- felono: { name: 'Felono', date: '2019-02-15',
157
- exclusive: {
158
- limit: 30, ids: [1394641, 1404595, 1406021, 1413065, 1414375, 1420553, 1421315, 1421864, 1424104 ,1425433, 1431823, 1435517, 1436333, 1449860, 1451482, 1455458, 1459320, 1462952, 1463069, 1476999, 1483225, 1487210, 1487551, 1489681, 1490345, 1491632, 1492206, 1492739, 1492817, 1498778]}
159
- },
160
-
161
254
  # Feb 9, 2019
162
255
  # Miss Purrfect Fancy Cat is discovered.Fancy Cat
163
256
  misspurrfect: { name: 'Miss Purrfect',
@@ -187,31 +280,7 @@ FANCIES =
187
280
  traits: ['selkirk', 'koala', 'arcreactor', 'sully'] },
188
281
  desc: 'Gods Unchained Promotion - Mystical Cat Talisman'
189
282
  },
190
- ## date: '2019-01-10 ??? -- use for date "announced" or something - why? why not?
191
- aeoncat: { name: 'Aeoncat',
192
- specialedition: {
193
- time: { start: '2019-01-17', end: '2019-01-28' },
194
- limit: 380 }, ## Don't sleep - there's only 380 up for grabs!
195
- desc: 'Goddess Aeona - Goddess of Nature - Gods Unchained Promotion'
196
- },
197
- hypurrion: { name: 'Hypurrion', date: '2019-01-10',
198
- exclusive: {
199
- limit: 1, ids: [269]},
200
- desc: 'Hyperion - Mythic Titan of Light - Gods Unchained Promotion'
201
- },
202
283
 
203
- ## 2018
204
- ## December
205
- catzy: { name: 'Catzy', date: '2018-12-31',
206
- specialedition: {
207
- limit: 10, ids: (1137653..1137662).to_a },
208
- desc: 'Changpeng "CZ" Zhao - CEO of Binance - Top 10 Blockchain Influencer of the Year 2018 by CoinDesk'
209
- },
210
- purremyallaire: { name: 'Purremy Allaire', date: '2018-12-31',
211
- specialedition: {
212
- limit: 10, ids: (1137663..1137672).to_a },
213
- desc: 'Jeremy Allaire - Top 10 Blockchain Influencer of the Year 2018 by CoinDesk'
214
- },
215
284
  genedough: { name: 'Gene Dough',
216
285
  recipe: {
217
286
  time: { start: '2018-12-23', end: '2019-01-07' }, count: 1376,
@@ -230,15 +299,6 @@ FANCIES =
230
299
  time: { start: '2018-11-30', end: '2018-12-07' }, count: 1115,
231
300
  traits: ['toyger', 'martian', 'peppermint', 'dragonwings', 'SE03'] }
232
301
  },
233
- dracothemagnificent: { name: 'Draco The Magnificent', date: '2018-11-27',
234
- exclusive: {
235
- limit: 12, ids: (270..281).to_a }
236
- },
237
- bugcatv2: { name: 'Bug Cat V2', date: '2018-11-27',
238
- exclusive: {
239
- limit: 20, ids: (167..186).to_a },
240
- desc: 'Bug Bounty II (Offers Contract) Kitty'
241
- },
242
302
  dracojunior: { name: 'Draco Junior',
243
303
  recipe: {
244
304
  time: { start: '2018-11-26', end: '2018-12-07' }, count: 1398,
@@ -254,16 +314,6 @@ FANCIES =
254
314
  limit: 303,
255
315
  traits: ['lynx', 'martian', 'highsociety', 'emeraldgreen']}
256
316
  },
257
- lilbub: { name: 'Lil Bub Ub Bub (BUB)', date: '2018-11-13',
258
- specialedition: {
259
- limit: 468 }
260
- },
261
-
262
- lilbubthemagicalspacecat: { name: 'Lil Bub Ub Bub (BUB) The Magical Space Cat', date: '2018-11-13',
263
- exclusive: {
264
- limit: 3, ids: [266,267,268]}
265
- },
266
-
267
317
  ## October
268
318
  dukecat: { name: 'Dukecat', date: '2018-10-18',
269
319
  recipe: {
@@ -283,11 +333,6 @@ FANCIES =
283
333
  limit: 1185,
284
334
  traits: ['jaguar', 'universe', 'atlantis', 'littlefoot']}
285
335
  },
286
- vulcat: { name: 'Vulcat', date: '2018-09-12',
287
- exclusive: {
288
- limit: 1, ids: [1000000] },
289
- desc: '1 000 000th Kitty'
290
- },
291
336
  meowstro: { name: 'Meowstro', date: '2018-09-09',
292
337
  recipe: {
293
338
  limit: 1698,
@@ -300,20 +345,11 @@ FANCIES =
300
345
  },
301
346
 
302
347
  ## August
303
- vulcant: { name: 'Vulcant', date: '2018-08-31',
304
- exclusive: {
305
- limit: 20, ids: [932914,937360,938299,946526,948925,949058,950617,952280,952981,956374,956908,958570,964205,967234,983046,984451,990713,992861,995745,997469] }
306
- },
307
348
  purrity: { name: 'Purrity', date: '2018-08-23',
308
349
  recipe: {
309
350
  limit: 5984,
310
351
  traits: ['selkirk', 'chronic', 'cloudwhite', 'cheeky'] }
311
352
  },
312
- rabbidkitty: { name: 'Rabbid Kitty', date: '2018-08-23',
313
- exclusive: {
314
- limit: 6, ids: (260..265).to_a },
315
- desc: 'Ubisoft Blockchain Heroes Hackathon'
316
- },
317
353
  squiddlesworth: { name: 'Squiddlesworth', date: '2018-08-16',
318
354
  recipe: {
319
355
  limit: 1510,
@@ -332,16 +368,6 @@ FANCIES =
332
368
  limit: 76,
333
369
  traits: ['ragdoll', 'crazy', 'chocolate', 'mintmacaron', 'yokel', 'WE02']}
334
370
  },
335
- honu: { name: 'Honu', date: '2018-07-20',
336
- exclusive: {
337
- limit: 1, ids: [251] },
338
- desc: 'Kitties for Good - Save Turtle Habitats'
339
- },
340
- victoire: { name: 'Victoire', date: '2018-07-18',
341
- exclusive: {
342
- limit: 1, ids: [402] },
343
- desc: 'France Football World Cup Champion'
344
- },
345
371
  lulu: { name: 'Lulu', date: '2018-07-13',
346
372
  recipe: {
347
373
  limit: 999,
@@ -373,10 +399,6 @@ FANCIES =
373
399
  limit: 1867,
374
400
  traits: ['buzzed', 'nachocheez', 'sandalwood', 'belch']}
375
401
  },
376
- furlin: { name: 'Furlin', date: '2018-06-26',
377
- exclusive: {
378
- limit: 52, ids: (115..126).to_a + (128..166).to_a }
379
- },
380
402
  kittypride: { name: 'Kitty Pride', date: '2018-06-21',
381
403
  recipe: {
382
404
  limit: 1316,
@@ -409,10 +431,6 @@ FANCIES =
409
431
  limit: 250,
410
432
  traits: ['persian','spock','raisedbrow','violet','tongue'] }
411
433
  },
412
- celestialcyberdimension: { name: 'Celestial Cyber Dimension', date: '2018-05-12',
413
- exclusive: {
414
- limit: 1, ids: [127] }
415
- },
416
434
  swish: { name: 'Swish', date: '2018-05-08',
417
435
  recipe: {
418
436
  limit: 2880,
@@ -449,16 +467,6 @@ FANCIES =
449
467
  limit: 888,
450
468
  traits: ['harbourfog','calicool','swampgreen','sapphire','beard']}
451
469
  }, ## todo: check date for china launch specials!!!
452
- goldendragoncat: { name: 'Golden Dragon Cat', name_cn: '帝龙喵', date: '2018-03-08',
453
- exclusive: {
454
- limit: 1, ids: [888] },
455
- desc: 'China Launch'
456
- }, ## todo: check date for china launch specials!!!
457
- goldendogcat: { name: 'Golden Dog Cat', name_cn: '旺财汪', date: '2018-03-08',
458
- exclusive: {
459
- limit: 11, ids: [1802,1803,1805,1806,1808,1809,1812,1816]+(1825..1828).to_a },
460
- desc: 'China Launch'
461
- }, ## todo: check date for china launch specials!!!
462
470
  liondance: { name: 'Lion Dance', name_cn: '咚咚锵', date: '2018-03-07',
463
471
  recipe: {
464
472
  limit: 888, overflow: 1, ## use count 889 ?? - why? why not?
@@ -470,10 +478,6 @@ FANCIES =
470
478
  traits: ['tigerpunk','periwinkle','barkbrown','sweetmeloncakes','yokel']},
471
479
  desc: 'Year of the Dog (Greater China)'
472
480
  },
473
- knightkitty: { name: 'Knight Kitty', date: '2018-03-01',
474
- exclusive: {
475
- limit: 11, ids: (104..114).to_a }
476
- },
477
481
 
478
482
  ## February
479
483
  tabby: { name: 'Tabby', date: '2018-02-26',
@@ -499,11 +503,6 @@ FANCIES =
499
503
  traits: ['birman','orangesoda','hotrod','grim'] },
500
504
  desc: 'Earn.com - Golden Kitty Award (Product Hunt)'
501
505
  },
502
- cathena: { name: 'Cathena', date: '2018-02-06',
503
- exclusive: {
504
- limit: 1, ids: [500000] },
505
- desc: '500 000th Kitty'
506
- },
507
506
 
508
507
  ## January
509
508
  'momo-chan': { name: 'Momo-chan', date: '2018-01-31',
@@ -557,18 +556,14 @@ FANCIES =
557
556
  limit: 10_000,
558
557
  traits: ['cymric','tongue']}
559
558
  },
560
- genesis: { name: 'Genesis', date: '2017-11-24',
561
- exclusive: {
562
- limit: 1, ids: [1] },
563
- desc: '1st Kitty'
564
- },
565
559
  shipcat: { name: 'Ship Cat', date: '2017-11-23',
566
560
  recipe: {
567
561
  limit: 2000,
568
562
  traits: ['sphynx','orangesoda','luckystripe','crazy']}
569
- },
570
- bugcat: { name: 'Bug Cat', date: '2017-11-23',
571
- exclusive: {
572
- limit: 3, ids: [101,102,103] },
573
- desc: 'Bug Bounty Kitty' }
563
+ }
574
564
  }
565
+
566
+
567
+ FANCIES = {}.merge( RECIPES )
568
+ .merge( EXCLUSIVES )
569
+ .merge( SPECIAL_EDITIONS )
@@ -3,15 +3,7 @@
3
3
  ###########################################
4
4
  ## Purrstige Traits / Cattributes
5
5
 
6
-
7
- ## note: totesbasic has three traits / genes
8
- TOTESBASIC = ['Totesbasic 1', 'Totesbasic 2', 'Totesbasic 3'] ## was: ['PA14', 'PA15', 'PA23']
9
- ANY_TOTESBASIC = ALL_TOTESBASIC = TOTESBASIC
10
-
11
-
12
-
13
- PRESTIGES = PURRSTIGES =
14
- {
6
+ PURRSTIGES_ROBOKITTY = {
15
7
  ###
16
8
  # May 1, 2019
17
9
  # 7 Robokitty Purrstiges
@@ -49,8 +41,11 @@ squelch: { name: 'Squelch',
49
41
  recipe: {
50
42
  time: { start: '2019-05-01', end: '2019-08-31' },
51
43
  traits: ['ragdoll', 'WE05', TOTESBASIC, 'PU24'] }
52
- },
44
+ }
45
+ }
46
+
53
47
 
48
+ PURRSTIGES_PIRATE = {
54
49
  ##
55
50
  # Apr 13, 2019
56
51
  # 7 Pirate Purrstiges
@@ -95,20 +90,14 @@ maraud: { name: 'Maraud',
95
90
  recipe: {
96
91
  time: { start: '2019-04-13', end: '2019-05-10' }, count: 620,
97
92
  traits: ['WE10', 'EN01', 'PU26'] }
98
- },
93
+ }
94
+ }
99
95
 
100
- ##
101
- # Mar 15, 2019
102
- # Oohshiny trait is discovered. Purrstige
103
- oohshiny: { name: 'Oohshiny',
104
- recipe: {
105
- time: { start: '2019-03-15', end: '2019-03-28'}, count: 2484,
106
- traits: ['roadtogold', 'PU27'] }
107
- },
108
96
 
97
+ PURRSTIGES_ALPACAT = {
109
98
  ##
110
99
  # Feb 21, 2019
111
- # 7 Alpacat purrstiges
100
+ # 7 Alpacat "hairstyle" purrstiges
112
101
  # Dreamcloud trait is discovered. Purrstige
113
102
  dreamcloud: { name: 'Dreamcloud',
114
103
  recipe: {
@@ -150,7 +139,31 @@ inaband: { name: 'Inaband',
150
139
  recipe: {
151
140
  time: { start: '2019-02-22', end: '2019-03-25' }, count: 1048,
152
141
  traits: ['munchkin', 'WE10', 'PU26'] }
153
- },
142
+ }
143
+ }
144
+
145
+
146
+ ###############
147
+ ## todo:
148
+ ## - use PURRSTIGES_XMAS?! and other themes too - why? why not?
149
+
150
+ ## thatsawrap: { date: '2018-10-21' }, ## prestige
151
+ ## duckduckcat: { date: '2018-10-19' }, ## prestige
152
+
153
+ ## prune: { date: '2018-09-19' }, ## prestige
154
+ ## furball: { date: '2018-09-19' }, ## prestige
155
+
156
+
157
+ PRESTIGES = PURRSTIGES =
158
+ {
159
+ ##
160
+ # Mar 15, 2019
161
+ # Oohshiny trait is discovered. Purrstige
162
+ oohshiny: { name: 'Oohshiny',
163
+ recipe: {
164
+ time: { start: '2019-03-15', end: '2019-03-28'}, count: 2484,
165
+ traits: ['roadtogold', 'PU27'] }
166
+ },
154
167
 
155
168
  ## 2018
156
169
  ## December
@@ -197,4 +210,6 @@ inaband: { name: 'Inaband',
197
210
  time: { start: '2018-09-19', end: '2018-09-30' }, count: 998,
198
211
  traits: ['norwegianforest', TOTESBASIC, 'PU26'] }
199
212
  }
200
- }
213
+ }.merge( PURRSTIGES_ROBOKITTY )
214
+ .merge( PURRSTIGES_PIRATE )
215
+ .merge( PURRSTIGES_ALPACAT )
@@ -415,13 +415,25 @@ ALT_TRAIT_NAMES =
415
415
  'totesbasic_14' => 'totesbasic 1',
416
416
  'totesbasic_15' => 'totesbasic 2',
417
417
  'totesbasic_23' => 'totesbasic 3',
418
+ 'totesbasic 14' => 'totesbasic 1',
419
+ 'totesbasic 15' => 'totesbasic 2',
420
+ 'totesbasic 23' => 'totesbasic 3',
421
+
418
422
  'totesbasic (f)' => 'totesbasic 1',
419
423
  'totesbasic (g)' => 'totesbasic 2',
420
424
  'totesbasic (p)' => 'totesbasic 3',
425
+ 'totesbasic f' => 'totesbasic 1',
426
+ 'totesbasic g' => 'totesbasic 2',
427
+ 'totesbasic p' => 'totesbasic 3',
421
428
  'totesbasic_f' => 'totesbasic 1',
422
429
  'totesbasic_g' => 'totesbasic 2',
423
430
  'totesbasic_p' => 'totesbasic 3',
431
+
424
432
  'totesbasic_1' => 'totesbasic 1',
425
433
  'totesbasic_2' => 'totesbasic 2',
426
434
  'totesbasic_3' => 'totesbasic 3',
427
435
  }
436
+
437
+ ## note: totesbasic has three traits / genes
438
+ TOTESBASIC = ['Totesbasic 1', 'Totesbasic 2', 'Totesbasic 3'] ## was: ['PA14', 'PA15', 'PA23']
439
+ ANY_TOTESBASIC = ALL_TOTESBASIC = TOTESBASIC
@@ -38,9 +38,6 @@ TRAITS_TIMELINE =
38
38
  gemini: { date: '2018-10-23' },
39
39
  kaleidoscope: { date: '2018-10-23' },
40
40
 
41
- ## thatsawrap: { date: '2018-10-21' }, ## todo: move prestige to fancies!!!
42
- ## duckduckcat: { date: '2018-10-19' }, ## todo: move prestige to fancies!!!
43
-
44
41
  siberian: { date: '2018-10-17' },
45
42
  lynx: { date: '2018-10-17' },
46
43
  toyger: { date: '2018-10-17' },
@@ -64,9 +61,6 @@ TRAITS_TIMELINE =
64
61
  hanauma: { date: '2018-09-21' },
65
62
  summerbonnet: { date: '2018-09-21' },
66
63
 
67
- ## prune: { date: '2018-09-19' }, ## todo: move prestige to fancies!!!
68
- ## furball: { date: '2018-09-19' }, ## todo: move prestige to fancies!!!
69
-
70
64
  firedup: { date: '2018-09-06' },
71
65
  hacker: { date: '2018-09-06' },
72
66
  drama: { date: '2018-09-06' },
@@ -5,7 +5,7 @@ class Kittyverse
5
5
 
6
6
  MAJOR = 0
7
7
  MINOR = 4
8
- PATCH = 3
8
+ PATCH = 4
9
9
  VERSION = [MAJOR,MINOR,PATCH].join('.')
10
10
 
11
11
  def self.version
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: kittyverse
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.3
4
+ version: 0.4.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Gerald Bauer
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-05-18 00:00:00.000000000 Z
11
+ date: 2019-05-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: base32-alphabets