lol_api 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (59) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +22 -0
  3. data/.guardfile +11 -0
  4. data/.travis.yml +6 -0
  5. data/Gemfile +10 -0
  6. data/LICENSE.txt +22 -0
  7. data/README.md +29 -0
  8. data/Rakefile +10 -0
  9. data/lib/lol_api/client.rb +105 -0
  10. data/lib/lol_api/configuration.rb +15 -0
  11. data/lib/lol_api/connection.rb +32 -0
  12. data/lib/lol_api/types/champion.rb +95 -0
  13. data/lib/lol_api/types/dtos/image.rb +33 -0
  14. data/lib/lol_api/types/dtos/info.rb +25 -0
  15. data/lib/lol_api/types/dtos/participant.rb +419 -0
  16. data/lib/lol_api/types/dtos/participant_identity.rb +19 -0
  17. data/lib/lol_api/types/dtos/passive.rb +27 -0
  18. data/lib/lol_api/types/dtos/player.rb +22 -0
  19. data/lib/lol_api/types/dtos/recommended.rb +38 -0
  20. data/lib/lol_api/types/dtos/skin.rb +20 -0
  21. data/lib/lol_api/types/dtos/spell.rb +98 -0
  22. data/lib/lol_api/types/dtos/stat.rb +19 -0
  23. data/lib/lol_api/types/dtos/team.rb +57 -0
  24. data/lib/lol_api/types/dtos/timeline.rb +180 -0
  25. data/lib/lol_api/types/history_match.rb +61 -0
  26. data/lib/lol_api/types/item.rb +126 -0
  27. data/lib/lol_api/types/mastery.rb +39 -0
  28. data/lib/lol_api/types/match.rb +43 -0
  29. data/lib/lol_api/types/summoner.rb +26 -0
  30. data/lib/lol_api/types/summoner_masteries.rb +66 -0
  31. data/lib/lol_api/types/summoner_runes.rb +69 -0
  32. data/lib/lol_api/utils/inspectable.rb +10 -0
  33. data/lib/lol_api/version.rb +3 -0
  34. data/lib/lol_api.rb +12 -0
  35. data/lol_api.gemspec +29 -0
  36. data/spec/champion_spec.rb +48 -0
  37. data/spec/client_spec.rb +67 -0
  38. data/spec/delegation_spec.rb +5 -0
  39. data/spec/factories.rb +43 -0
  40. data/spec/fixtures/champion.json +843 -0
  41. data/spec/fixtures/history.json +127 -0
  42. data/spec/fixtures/item.json +62 -0
  43. data/spec/fixtures/mastery.json +25 -0
  44. data/spec/fixtures/match.json +12167 -0
  45. data/spec/fixtures/match_details.json +13548 -0
  46. data/spec/fixtures/summoner.json +7 -0
  47. data/spec/fixtures/summoner_masteries.json +143 -0
  48. data/spec/fixtures/summoner_runes.json +132 -0
  49. data/spec/history_spec.rb +280 -0
  50. data/spec/item_spec.rb +96 -0
  51. data/spec/mastery_spec.rb +27 -0
  52. data/spec/match_details_spec.rb +72 -0
  53. data/spec/participant_spec.rb +153 -0
  54. data/spec/participant_timeline_spec.rb +80 -0
  55. data/spec/spec_helper.rb +22 -0
  56. data/spec/summoner_spec.rb +120 -0
  57. data/spec/team_spec.rb +38 -0
  58. data/spec/timeline_spec.rb +101 -0
  59. metadata +236 -0
@@ -0,0 +1,843 @@
1
+ {
2
+ "tags": ["Assassin"],
3
+ "stats": {
4
+ "attackrange": 125,
5
+ "mpperlevel": 40,
6
+ "mp": 230,
7
+ "attackdamage": 51.7,
8
+ "hp": 441,
9
+ "hpperlevel": 84,
10
+ "attackdamageperlevel": 3.5,
11
+ "armor": 19,
12
+ "mpregenperlevel": 0.45,
13
+ "hpregen": 7.45,
14
+ "critperlevel": 0,
15
+ "spellblockperlevel": 1.25,
16
+ "mpregen": 6.4,
17
+ "attackspeedperlevel": 3,
18
+ "spellblock": 30,
19
+ "movespeed": 350,
20
+ "attackspeedoffset": -0.1,
21
+ "crit": 0,
22
+ "hpregenperlevel": 0.55,
23
+ "armorperlevel": 3.5
24
+ },
25
+ "enemytips": [
26
+ "If Shaco is doing well early-game, it is worth the investment to buy Vision Wards.",
27
+ "If Shaco uses Deceive to enter a fight he won't be able to quickly use it again to get away. Work with your team to quickly focus him down."
28
+ ],
29
+ "recommended": [
30
+ {
31
+ "champion": "Shaco",
32
+ "title": "ShacoHA",
33
+ "priority": false,
34
+ "map": "12",
35
+ "blocks": [
36
+ {
37
+ "items": [
38
+ {
39
+ "id": 1001,
40
+ "count": 1
41
+ },
42
+ {
43
+ "id": 2003,
44
+ "count": 2
45
+ },
46
+ {
47
+ "id": 1056,
48
+ "count": 2
49
+ }
50
+ ],
51
+ "type": "starting"
52
+ },
53
+ {
54
+ "items": [
55
+ {
56
+ "id": 3020,
57
+ "count": 1
58
+ },
59
+ {
60
+ "id": 3089,
61
+ "count": 1
62
+ },
63
+ {
64
+ "id": 3128,
65
+ "count": 1
66
+ }
67
+ ],
68
+ "type": "essential"
69
+ },
70
+ {
71
+ "items": [
72
+ {
73
+ "id": 3100,
74
+ "count": 1
75
+ },
76
+ {
77
+ "id": 3135,
78
+ "count": 1
79
+ },
80
+ {
81
+ "id": 3151,
82
+ "count": 1
83
+ }
84
+ ],
85
+ "type": "offensive"
86
+ },
87
+ {
88
+ "items": [
89
+ {
90
+ "id": 3001,
91
+ "count": 1
92
+ },
93
+ {
94
+ "id": 3157,
95
+ "count": 1
96
+ },
97
+ {
98
+ "id": 3023,
99
+ "count": 1
100
+ }
101
+ ],
102
+ "type": "defensive"
103
+ },
104
+ {
105
+ "items": [
106
+ {
107
+ "id": 2003,
108
+ "count": 1
109
+ },
110
+ {
111
+ "id": 2004,
112
+ "count": 1
113
+ }
114
+ ],
115
+ "type": "Consumables"
116
+ }
117
+ ],
118
+ "type": "riot",
119
+ "mode": "ARAM"
120
+ },
121
+ {
122
+ "champion": "Shaco",
123
+ "title": "ShacoDM",
124
+ "priority": false,
125
+ "map": "8",
126
+ "blocks": [
127
+ {
128
+ "items": [
129
+ {
130
+ "id": 1001,
131
+ "count": 1
132
+ },
133
+ {
134
+ "id": 1052,
135
+ "count": 2
136
+ },
137
+ {
138
+ "id": 2003,
139
+ "count": 3
140
+ }
141
+ ],
142
+ "type": "starting"
143
+ },
144
+ {
145
+ "items": [
146
+ {
147
+ "id": 3090,
148
+ "count": 1
149
+ },
150
+ {
151
+ "id": 3117,
152
+ "count": 1
153
+ },
154
+ {
155
+ "id": 3187,
156
+ "count": 1
157
+ }
158
+ ],
159
+ "type": "essential"
160
+ },
161
+ {
162
+ "items": [
163
+ {
164
+ "id": 3135,
165
+ "count": 1
166
+ },
167
+ {
168
+ "id": 3188,
169
+ "count": 1
170
+ },
171
+ {
172
+ "id": 3100,
173
+ "count": 1
174
+ }
175
+ ],
176
+ "type": "offensive"
177
+ },
178
+ {
179
+ "items": [
180
+ {
181
+ "id": 3001,
182
+ "count": 1
183
+ },
184
+ {
185
+ "id": 3290,
186
+ "count": 1
187
+ }
188
+ ],
189
+ "type": "defensive"
190
+ },
191
+ {
192
+ "items": [
193
+ {
194
+ "id": 2003,
195
+ "count": 1
196
+ },
197
+ {
198
+ "id": 2004,
199
+ "count": 1
200
+ }
201
+ ],
202
+ "type": "Consumables"
203
+ }
204
+ ],
205
+ "type": "riot",
206
+ "mode": "ODIN"
207
+ },
208
+ {
209
+ "champion": "Shaco",
210
+ "title": "ShacoFIRSTBLOOD",
211
+ "priority": false,
212
+ "map": "12",
213
+ "blocks": [
214
+ {
215
+ "items": [
216
+ {
217
+ "id": 1074,
218
+ "count": 1
219
+ },
220
+ {
221
+ "id": 2003,
222
+ "count": 1
223
+ },
224
+ {
225
+ "id": 3342,
226
+ "count": 1
227
+ }
228
+ ],
229
+ "type": "starting"
230
+ },
231
+ {
232
+ "items": [
233
+ {
234
+ "id": 3006,
235
+ "count": 1
236
+ },
237
+ {
238
+ "id": 3093,
239
+ "count": 1
240
+ },
241
+ {
242
+ "id": 3044,
243
+ "count": 1
244
+ }
245
+ ],
246
+ "type": "essential"
247
+ },
248
+ {
249
+ "items": [
250
+ {
251
+ "id": 3142,
252
+ "count": 1
253
+ },
254
+ {
255
+ "id": 3031,
256
+ "count": 1
257
+ },
258
+ {
259
+ "id": 3078,
260
+ "count": 1
261
+ }
262
+ ],
263
+ "type": "offensive"
264
+ },
265
+ {
266
+ "items": [
267
+ {
268
+ "id": 3091,
269
+ "count": 1
270
+ },
271
+ {
272
+ "id": 3022,
273
+ "count": 1
274
+ },
275
+ {
276
+ "id": 3026,
277
+ "count": 1
278
+ }
279
+ ],
280
+ "type": "defensive"
281
+ },
282
+ {
283
+ "items": [
284
+ {
285
+ "id": 2003,
286
+ "count": 1
287
+ },
288
+ {
289
+ "id": 2044,
290
+ "count": 1
291
+ }
292
+ ],
293
+ "type": "Consumables"
294
+ }
295
+ ],
296
+ "type": "riot",
297
+ "mode": "FIRSTBLOOD"
298
+ },
299
+ {
300
+ "champion": "Shaco",
301
+ "title": "ShacoTT",
302
+ "priority": false,
303
+ "map": "10",
304
+ "blocks": [
305
+ {
306
+ "items": [
307
+ {
308
+ "id": 1001,
309
+ "count": 1
310
+ },
311
+ {
312
+ "id": 1052,
313
+ "count": 1
314
+ },
315
+ {
316
+ "id": 2003,
317
+ "count": 1
318
+ }
319
+ ],
320
+ "type": "starting"
321
+ },
322
+ {
323
+ "items": [
324
+ {
325
+ "id": 3020,
326
+ "count": 1
327
+ },
328
+ {
329
+ "id": 3090,
330
+ "count": 1
331
+ },
332
+ {
333
+ "id": 3187,
334
+ "count": 1
335
+ }
336
+ ],
337
+ "type": "essential"
338
+ },
339
+ {
340
+ "items": [
341
+ {
342
+ "id": 3135,
343
+ "count": 1
344
+ },
345
+ {
346
+ "id": 3188,
347
+ "count": 1
348
+ },
349
+ {
350
+ "id": 3100,
351
+ "count": 1
352
+ }
353
+ ],
354
+ "type": "offensive"
355
+ },
356
+ {
357
+ "items": [
358
+ {
359
+ "id": 3001,
360
+ "count": 1
361
+ },
362
+ {
363
+ "id": 3069,
364
+ "count": 1
365
+ }
366
+ ],
367
+ "type": "defensive"
368
+ },
369
+ {
370
+ "items": [
371
+ {
372
+ "id": 2003,
373
+ "count": 1
374
+ },
375
+ {
376
+ "id": 2004,
377
+ "count": 1
378
+ }
379
+ ],
380
+ "type": "Consumables"
381
+ }
382
+ ],
383
+ "type": "riot",
384
+ "mode": "CLASSIC"
385
+ }
386
+ ],
387
+ "image": {
388
+ "w": 48,
389
+ "full": "Shaco.png",
390
+ "sprite": "champion2.png",
391
+ "group": "champion",
392
+ "h": 48,
393
+ "y": 48,
394
+ "x": 336
395
+ },
396
+ "spells": [
397
+ {
398
+ "range": [
399
+ 400,
400
+ 400,
401
+ 400,
402
+ 400,
403
+ 400
404
+ ],
405
+ "leveltip": {
406
+ "effect": [
407
+ "{{ e1 }}% -> {{ e1NL }}%",
408
+ "{{ cost }} -> {{ costnNL }}"
409
+ ],
410
+ "label": [
411
+ "Critical Strike Damage",
412
+ "Mana Cost"
413
+ ]
414
+ },
415
+ "resource": "{{ cost }} Mana",
416
+ "maxrank": 5,
417
+ "effectBurn": [
418
+ "",
419
+ "140/160/180/200/220",
420
+ "200",
421
+ "3.5",
422
+ "6"
423
+ ],
424
+ "image": {
425
+ "w": 48,
426
+ "full": "Deceive.png",
427
+ "sprite": "spell8.png",
428
+ "group": "spell",
429
+ "h": 48,
430
+ "y": 0,
431
+ "x": 240
432
+ },
433
+ "cooldown": [
434
+ 0,
435
+ 0,
436
+ 0,
437
+ 0,
438
+ 0
439
+ ],
440
+ "cost": [
441
+ 90,
442
+ 80,
443
+ 70,
444
+ 60,
445
+ 50
446
+ ],
447
+ "sanitizedDescription": "Shaco becomes invisible and teleports to target location. His next attack is guaranteed to critically strike.",
448
+ "rangeBurn": "400",
449
+ "costType": "Mana",
450
+ "effect": [
451
+ [
452
+ 140,
453
+ 160,
454
+ 180,
455
+ 200,
456
+ 220
457
+ ],
458
+ [
459
+ 200,
460
+ 200,
461
+ 200,
462
+ 200,
463
+ 200
464
+ ],
465
+ [
466
+ 3.5,
467
+ 3.5,
468
+ 3.5,
469
+ 3.5,
470
+ 3.5
471
+ ],
472
+ [
473
+ 6,
474
+ 6,
475
+ 6,
476
+ 6,
477
+ 6
478
+ ]
479
+ ],
480
+ "cooldownBurn": "0",
481
+ "description": "Shaco becomes invisible and teleports to target location. His next attack is guaranteed to critically strike.",
482
+ "name": "Deceive",
483
+ "sanitizedTooltip": "Shaco teleports nearby and becomes invisible for 3.5 seconds. His next basic attack within the next 6 seconds will critically strike, dealing {{ e1 }}% damage (normal critical strikes deal {{ e2 }}% damage).",
484
+ "key": "Deceive",
485
+ "costBurn": "90/80/70/60/50",
486
+ "tooltip": "Shaco teleports nearby and becomes invisible for 3.5 seconds.<br><br>His next basic attack within the next 6 seconds will critically strike, dealing {{ e1 }}% damage (normal critical strikes deal {{ e2 }}% damage)."
487
+ },
488
+ {
489
+ "range": [
490
+ 425,
491
+ 425,
492
+ 425,
493
+ 425,
494
+ 425
495
+ ],
496
+ "leveltip": {
497
+ "effect": [
498
+ "{{ e1 }} -> {{ e1NL }}",
499
+ "{{ e3 }} -> {{ e3NL }}",
500
+ "{{ cost }} -> {{ costnNL }}"
501
+ ],
502
+ "label": [
503
+ "Damage",
504
+ "Fear Length",
505
+ "Mana Cost"
506
+ ]
507
+ },
508
+ "resource": "{{ cost }} Mana",
509
+ "maxrank": 5,
510
+ "effectBurn": [
511
+ "",
512
+ "35/50/65/80/95",
513
+ "200/300/400/500/600",
514
+ "0.5/0.75/1/1.25/1.5",
515
+ "60"
516
+ ],
517
+ "image": {
518
+ "w": 48,
519
+ "full": "JackInTheBox.png",
520
+ "sprite": "spell8.png",
521
+ "group": "spell",
522
+ "h": 48,
523
+ "y": 0,
524
+ "x": 288
525
+ },
526
+ "cooldown": [
527
+ 0,
528
+ 0,
529
+ 0,
530
+ 0,
531
+ 0
532
+ ],
533
+ "cost": [
534
+ 50,
535
+ 55,
536
+ 60,
537
+ 65,
538
+ 70
539
+ ],
540
+ "vars": [{
541
+ "link": "spelldamage",
542
+ "coeff": [0.2],
543
+ "key": "a1"
544
+ }],
545
+ "sanitizedDescription": "Shaco creates an invisible, animated Jack-in-the-Box, which will fear, and then attack, nearby enemies.",
546
+ "rangeBurn": "425",
547
+ "costType": "Mana",
548
+ "effect": [
549
+ [
550
+ 35,
551
+ 50,
552
+ 65,
553
+ 80,
554
+ 95
555
+ ],
556
+ [
557
+ 200,
558
+ 300,
559
+ 400,
560
+ 500,
561
+ 600
562
+ ],
563
+ [
564
+ 0.5,
565
+ 0.75,
566
+ 1,
567
+ 1.25,
568
+ 1.5
569
+ ],
570
+ [
571
+ 60,
572
+ 60,
573
+ 60,
574
+ 60,
575
+ 60
576
+ ]
577
+ ],
578
+ "cooldownBurn": "0",
579
+ "description": "Shaco creates an invisible, animated Jack-in-the-Box, which will fear, and then attack, nearby enemies.",
580
+ "name": "Jack In The Box",
581
+ "sanitizedTooltip": "Shaco creates a Jack in the Box at the target location. It will become invisible after 2 seconds, and pop out when an enemy comes near, fearing nearby enemies for {{ e3 }} seconds and attacking them. Its attacks deal {{ e1 }} (+{{ a1 }}) magic damage and it lasts for {{ e4 }} seconds while invisible or 5 seconds while firing.",
582
+ "key": "JackInTheBox",
583
+ "costBurn": "50/55/60/65/70",
584
+ "tooltip": "Shaco creates a Jack in the Box at the target location. It will become invisible after 2 seconds, and pop out when an enemy comes near, fearing nearby enemies for {{ e3 }} seconds and attacking them.<br><br>Its attacks deal {{ e1 }} <span class=\"color99FF99\">(+{{ a1 }})<\/span> magic damage and it lasts for {{ e4 }} seconds while invisible or 5 seconds while firing. "
585
+ },
586
+ {
587
+ "range": [
588
+ 625,
589
+ 625,
590
+ 625,
591
+ 625,
592
+ 625
593
+ ],
594
+ "leveltip": {
595
+ "effect": [
596
+ "{{ e1 }} -> {{ e1NL }}",
597
+ " {{ e2 }}% -> {{ e2NL }}%",
598
+ "{{ e3 }} -> {{ e3NL }}%",
599
+ "{{ cost }} -> {{ costnNL }}"
600
+ ],
601
+ "label": [
602
+ "Shiv Damage",
603
+ "Slow Percent",
604
+ "Miss Chance",
605
+ "Mana Cost"
606
+ ]
607
+ },
608
+ "resource": "{{ cost }} Mana",
609
+ "maxrank": 5,
610
+ "effectBurn": [
611
+ "",
612
+ "50/90/130/170/210",
613
+ "10/15/20/25/30",
614
+ "20/22.5/25/27.5/30",
615
+ "2",
616
+ "3"
617
+ ],
618
+ "image": {
619
+ "w": 48,
620
+ "full": "TwoShivPoison.png",
621
+ "sprite": "spell8.png",
622
+ "group": "spell",
623
+ "h": 48,
624
+ "y": 0,
625
+ "x": 336
626
+ },
627
+ "cooldown": [
628
+ 8,
629
+ 8,
630
+ 8,
631
+ 8,
632
+ 8
633
+ ],
634
+ "cost": [
635
+ 50,
636
+ 55,
637
+ 60,
638
+ 65,
639
+ 70
640
+ ],
641
+ "vars": [
642
+ {
643
+ "link": "bonusattackdamage",
644
+ "coeff": [1],
645
+ "key": "f1"
646
+ },
647
+ {
648
+ "link": "spelldamage",
649
+ "coeff": [1],
650
+ "key": "a1"
651
+ }
652
+ ],
653
+ "sanitizedDescription": "Shaco's Shivs passively poison targets on hit, slowing them and applying a miss chance to minions. He can throw his Shivs to deal damage and poison the target.",
654
+ "rangeBurn": "625",
655
+ "costType": "Mana",
656
+ "effect": [
657
+ [
658
+ 50,
659
+ 90,
660
+ 130,
661
+ 170,
662
+ 210
663
+ ],
664
+ [
665
+ 10,
666
+ 15,
667
+ 20,
668
+ 25,
669
+ 30
670
+ ],
671
+ [
672
+ 20,
673
+ 22.5,
674
+ 25,
675
+ 27.5,
676
+ 30
677
+ ],
678
+ [
679
+ 2,
680
+ 2,
681
+ 2,
682
+ 2,
683
+ 2
684
+ ],
685
+ [
686
+ 3,
687
+ 3,
688
+ 3,
689
+ 3,
690
+ 3
691
+ ]
692
+ ],
693
+ "cooldownBurn": "8",
694
+ "description": "Shaco's Shivs passively poison targets on hit, slowing them and applying a miss chance to minions. He can throw his Shivs to deal damage and poison the target.",
695
+ "name": "Two-Shiv Poison",
696
+ "sanitizedTooltip": "Passive: While Two-Shiv Poison is ready to cast, Shaco's basic attacks reduce the target's Movement Speed by {{ e2 }}% for {{ e4 }} seconds. Also reduces minions' chance to hit by {{ e3 }}% for {{ e4 }} seconds. Active: Deals {{ e1 }} (+{{ f1 }}) (+{{ a1 }}) magic damage to target enemy and reduces their Movement Speed by {{ e2 }}% for {{ e5 }} seconds.",
697
+ "key": "TwoShivPoison",
698
+ "costBurn": "50/55/60/65/70",
699
+ "tooltip": "<span class=\"colorFF9900\">Passive: <\/span>While Two-Shiv Poison is ready to cast, Shaco's basic attacks reduce the target's Movement Speed by {{ e2 }}% for {{ e4 }} seconds. Also reduces minions' chance to hit by {{ e3 }}% for {{ e4 }} seconds.<br><br><span class=\"colorFF9900\">Active: <\/span>Deals {{ e1 }} <span class=\"colorFF8C00\">(+{{ f1 }})<\/span> <span class=\"color99FF99\">(+{{ a1 }}) <\/span>magic damage to target enemy and reduces their Movement Speed by {{ e2 }}% for {{ e5 }} seconds."
700
+ },
701
+ {
702
+ "range": "self",
703
+ "leveltip": {
704
+ "effect": [
705
+ "{{ e1 }} -> {{ e1NL }}",
706
+ "{{ cooldown }} -> {{ cooldownnNL }}"
707
+ ],
708
+ "label": [
709
+ "On Death Damage",
710
+ "Cooldown"
711
+ ]
712
+ },
713
+ "resource": "{{ cost }} Mana",
714
+ "maxrank": 3,
715
+ "effectBurn": [
716
+ "",
717
+ "300/450/600",
718
+ "50",
719
+ "15"
720
+ ],
721
+ "image": {
722
+ "w": 48,
723
+ "full": "HallucinateFull.png",
724
+ "sprite": "spell8.png",
725
+ "group": "spell",
726
+ "h": 48,
727
+ "y": 0,
728
+ "x": 384
729
+ },
730
+ "cooldown": [
731
+ 100,
732
+ 90,
733
+ 80
734
+ ],
735
+ "cost": [
736
+ 100,
737
+ 100,
738
+ 100
739
+ ],
740
+ "vars": [{
741
+ "link": "spelldamage",
742
+ "coeff": [1],
743
+ "key": "a1"
744
+ }],
745
+ "sanitizedDescription": "Shaco creates an illusion of himself near him, which can attack nearby enemies. (Deals half damage to turrets.) Upon death, it explodes, dealing damage to nearby enemies.",
746
+ "rangeBurn": "self",
747
+ "costType": "Mana",
748
+ "effect": [
749
+ [
750
+ 300,
751
+ 450,
752
+ 600
753
+ ],
754
+ [
755
+ 50,
756
+ 50,
757
+ 50
758
+ ],
759
+ [
760
+ 15,
761
+ 15,
762
+ 15
763
+ ]
764
+ ],
765
+ "cooldownBurn": "100/90/80",
766
+ "description": "Shaco creates an illusion of himself near him, which can attack nearby enemies. (Deals half damage to turrets.) Upon death, it explodes, dealing damage to nearby enemies. ",
767
+ "name": "Hallucinate",
768
+ "sanitizedTooltip": "Shaco vanishes briefly and reappears with a clone that lasts up to 18 seconds. The clone deals 75% of Shaco's damage and receives {{ e2 }}% increased damage. On death, the clone detonates, dealing {{ e1 }} (+{{ a1 }}) magic damage to nearby enemies. The clone can be controlled by holding the alt key and using the right mouse button or by reactivating this ability.",
769
+ "key": "HallucinateFull",
770
+ "costBurn": "100",
771
+ "tooltip": "Shaco vanishes briefly and reappears with a clone that lasts up to 18 seconds. The clone deals 75% of Shaco's damage and receives {{ e2 }}% increased damage.<br><br>On death, the clone detonates, dealing {{ e1 }} <span class=\"color99FF99\">(+{{ a1 }})<\/span> magic damage to nearby enemies.<br><br><span class=\"color99FF99\">The clone can be controlled by holding the alt key and using the right mouse button or by reactivating this ability.<\/span>"
772
+ }
773
+ ],
774
+ "blurb": "Most would say that death isn't funny. It isn't, unless you're Shaco - then it's hysterical. He is Valoran's first fully functioning homicidal comic; he jests until someone dies, and then he laughs. The figure that has come to be known as the Demon ...",
775
+ "allytips": [
776
+ "Using Deceive over terrain can help you make a clean escape.",
777
+ "Try getting items with on-hit effects. These will also benefit your Hallucination clone.",
778
+ "Deceive's damage can be increased with increased Critical Damage effects like Infinity Edge."
779
+ ],
780
+ "info": {
781
+ "defense": 4,
782
+ "magic": 6,
783
+ "difficulty": 9,
784
+ "attack": 8
785
+ },
786
+ "lore": "Most would say that death isn't funny. It isn't, unless you're Shaco - then it's hysterical. He is Valoran's first fully functioning homicidal comic; he jests until someone dies, and then he laughs. The figure that has come to be known as the Demon Jester is an enigma. No one fully agrees from whence he came, and Shaco never offers any details on his own. A popular belief is that Shaco is not of Runeterra - that he is a thing summoned from a dark and twisted world. Still others believe that he is the demonic manifestation of humanity's dark urges and therefore cannot be reasoned with. The most plausible belief is that Shaco is an assassin for hire, left to his own lunatic devices until his services are needed. Shaco certainly has proven himself to be a cunning individual, evading authorities at every turn who might seek him for questioning for some horrendous, law-breaking atrocity. While such scuttlebutt might reassure the native inhabitants of Valoran, it seems unimaginable that such a malfeasant figure is allowed to remain at large.<br><br>Whatever the truth of his history might be, Shaco has joined the League of Legends for reasons only he knows. He is a terrifying figure, typically shunned by both his fellow champions and the media at large. Only the summoners in the Institute of War know why such a creature was allowed into the League, but most Runeterrans suspect it to be a means that allows the power that be to keep an eye on the ever-elusive Shaco. Unsurprisingly, this champion is popular in places where madness can openly reign, such as among the power-hungry summoners of Zaun and Noxus.<br><br>Whatever you do, don't tell him you missed the punch line.",
787
+ "id": 35,
788
+ "title": "the Demon Jester",
789
+ "name": "Shaco",
790
+ "passive": {
791
+ "sanitizedDescription": "Shaco deals 20% bonus damage when striking a unit from behind.",
792
+ "description": "Shaco deals 20% bonus damage when striking a unit from behind.",
793
+ "name": "Backstab",
794
+ "image": {
795
+ "w": 48,
796
+ "full": "Jester_CarefulStrikes.png",
797
+ "sprite": "passive2.png",
798
+ "group": "passive",
799
+ "h": 48,
800
+ "y": 48,
801
+ "x": 336
802
+ }
803
+ },
804
+ "partype": "Mana",
805
+ "key": "Shaco",
806
+ "skins": [
807
+ {
808
+ "id": 35000,
809
+ "num": 0,
810
+ "name": "default"
811
+ },
812
+ {
813
+ "id": 35001,
814
+ "num": 1,
815
+ "name": "Mad Hatter Shaco"
816
+ },
817
+ {
818
+ "id": 35002,
819
+ "num": 2,
820
+ "name": "Royal Shaco"
821
+ },
822
+ {
823
+ "id": 35003,
824
+ "num": 3,
825
+ "name": "Nutcracko"
826
+ },
827
+ {
828
+ "id": 35004,
829
+ "num": 4,
830
+ "name": "Workshop Shaco"
831
+ },
832
+ {
833
+ "id": 35005,
834
+ "num": 5,
835
+ "name": "Asylum Shaco"
836
+ },
837
+ {
838
+ "id": 35006,
839
+ "num": 6,
840
+ "name": "Masked Shaco"
841
+ }
842
+ ]
843
+ }