| 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107 |
1
1
1
1
1
26623
1
1
13029
13029
857579
4243581
13029
13029
13029
13029
13029
13029
36917
36917
25120
25120
25120
25120
25120
25120
122137
122137
98249
98249
98249
98249
98249
98249
470205
470205
371956
371956
371956
422891
422891
422891
422891
422891
422891
422891
422891
422891
422891
422891
422891
422891
421659
421659
421659
421659
421659
11797
1
26623
| "use strict";
Object.defineProperties(exports, {
Rider: {get: function() {
return Rider;
}},
__esModule: {value: true}
});
var Point = require('./point').Point;
var $__1 = require('./mobility'),
Mobility = $__1.Mobility,
quadrants = $__1.quadrants;
var RiderMobility = function RiderMobility() {
$traceurRuntime.defaultSuperCall(this, $RiderMobility.prototype, arguments);
};
var $RiderMobility = RiderMobility;
($traceurRuntime.createClass)(RiderMobility, {adjacentPoints: $traceurRuntime.initGeneratorFunction(function $__8(position, p0) {
var $__7,
m,
n,
$__5,
$__6,
o,
$__3,
$__4,
p1,
r,
pN;
return $traceurRuntime.createGeneratorInstance(function($ctx) {
while (true)
switch ($ctx.state) {
case 0:
$__7 = this, m = $__7.m, n = $__7.n;
$ctx.state = 34;
break;
case 34:
$__5 = [new Point(m, n), new Point(n, m)][$traceurRuntime.toProperty(Symbol.iterator)]();
$ctx.state = 3;
break;
case 3:
$ctx.state = (!($__6 = $__5.next()).done) ? 29 : -2;
break;
case 29:
o = $__6.value;
$ctx.state = 30;
break;
case 30:
$__3 = quadrants[$traceurRuntime.toProperty(Symbol.iterator)]();
$ctx.state = 2;
break;
case 2:
$ctx.state = (!($__4 = $__3.next()).done) ? 25 : 3;
break;
case 25:
p1 = $__4.value;
$ctx.state = 26;
break;
case 26:
r = 1;
$ctx.state = 24;
break;
case 24:
$ctx.state = (r < 8) ? 15 : 2;
break;
case 20:
r++;
$ctx.state = 24;
break;
case 15:
$ctx.pushTry(13, null);
$ctx.state = 16;
break;
case 16:
throw undefined;
$ctx.state = 18;
break;
case 18:
$ctx.popTry();
$ctx.state = 20;
break;
case 13:
$ctx.popTry();
pN = $ctx.storedException;
$ctx.state = 11;
break;
case 11:
pN = p0.sum(p1.product(o.product(new Point(r, r))));
$ctx.state = 12;
break;
case 12:
$ctx.state = 5;
return pN;
case 5:
$ctx.maybeThrow();
$ctx.state = 7;
break;
case 7:
$ctx.state = (position.pieceByCoords(pN) != null) ? 2 : 20;
break;
default:
return $ctx.end();
}
}, $__8, this);
})}, {}, Mobility);
function Rider(m, n) {
this.mobility.push(new RiderMobility(m, n));
}
|