@@ -30,15 +30,40 @@ public Hex(int q, int r, int s)
30
30
31
31
#region Operators
32
32
33
- public override string ToString ( ) => $ "Hex: ({ q } , { r } , { s } )";
33
+ public override string ToString ( )
34
+ {
35
+ return $ "Hex: ({ q } , { r } , { s } )";
36
+ }
37
+
38
+ public static Hex Add ( Hex a , Hex b )
39
+ {
40
+ return new Hex ( a . q + b . q , a . r + b . r ) ;
41
+ }
42
+
43
+ public static Hex Subtract ( Hex a , Hex b )
44
+ {
45
+ return new Hex ( a . q - b . q , a . r - b . r ) ;
46
+ }
34
47
35
- public static Hex Add ( Hex a , Hex b ) => new Hex ( a . q + b . q , a . r + b . r ) ;
36
- public static Hex Subtract ( Hex a , Hex b ) => new Hex ( a . q - b . q , a . r - b . r ) ;
37
- public static Hex Multiply ( Hex a , int k ) => new Hex ( a . q * k , a . r * k ) ;
38
- public static int Distance ( Hex a , Hex b ) => Subtract ( a , b ) . Length ;
48
+ public static Hex Multiply ( Hex a , int k )
49
+ {
50
+ return new Hex ( a . q * k , a . r * k ) ;
51
+ }
52
+
53
+ public static int Distance ( Hex a , Hex b )
54
+ {
55
+ return Subtract ( a , b ) . Length ;
56
+ }
57
+
58
+ public static bool operator == ( Hex a , Hex b )
59
+ {
60
+ return a . q == b . q && a . r == b . r && a . s == b . s ;
61
+ }
39
62
40
- public static bool operator == ( Hex a , Hex b ) => a . q == b . q && a . r == b . r && a . s == b . s ;
41
- public static bool operator != ( Hex a , Hex b ) => ! ( a == b ) ;
63
+ public static bool operator != ( Hex a , Hex b )
64
+ {
65
+ return ! ( a == b ) ;
66
+ }
42
67
43
68
public override bool Equals ( object obj )
44
69
{
@@ -84,11 +109,30 @@ public int CompareTo(object obj)
84
109
85
110
#region Conversion to other Coordinate Systems
86
111
87
- public AxialCoord ToAxialCoord ( ) => new AxialCoord ( q , r ) ;
88
- public OffsetCoord ToQoffsetEven ( ) => OffsetCoordHelper . QoffsetFromCube ( OffsetCoord . Parity . Even , this ) ;
89
- public OffsetCoord ToQoffsetOdd ( ) => OffsetCoordHelper . QoffsetFromCube ( OffsetCoord . Parity . Odd , this ) ;
90
- public OffsetCoord ToRoffsetEven ( ) => OffsetCoordHelper . RoffsetFromCube ( OffsetCoord . Parity . Even , this ) ;
91
- public OffsetCoord ToRoffsetOdd ( ) => OffsetCoordHelper . RoffsetFromCube ( OffsetCoord . Parity . Odd , this ) ;
112
+ public AxialCoord ToAxialCoord ( )
113
+ {
114
+ return new AxialCoord ( q , r ) ;
115
+ }
116
+
117
+ public OffsetCoord ToQoffsetEven ( )
118
+ {
119
+ return OffsetCoordHelper . QoffsetFromCube ( OffsetCoord . Parity . Even , this ) ;
120
+ }
121
+
122
+ public OffsetCoord ToQoffsetOdd ( )
123
+ {
124
+ return OffsetCoordHelper . QoffsetFromCube ( OffsetCoord . Parity . Odd , this ) ;
125
+ }
126
+
127
+ public OffsetCoord ToRoffsetEven ( )
128
+ {
129
+ return OffsetCoordHelper . RoffsetFromCube ( OffsetCoord . Parity . Even , this ) ;
130
+ }
131
+
132
+ public OffsetCoord ToRoffsetOdd ( )
133
+ {
134
+ return OffsetCoordHelper . RoffsetFromCube ( OffsetCoord . Parity . Odd , this ) ;
135
+ }
92
136
93
137
#endregion
94
138
}
0 commit comments