fix Tetris example build on dmd 2.0.67

This commit is contained in:
Vadim Lopatin 2015-03-25 09:20:03 +03:00
parent fc479a1cfa
commit d7ecdc4417
1 changed files with 64 additions and 59 deletions

View File

@ -69,65 +69,70 @@ struct Figure {
} }
/// All shapes /// All shapes
const Figure[7] FIGURES = [ __gshared const Figure[7] FIGURES;
// FIGURE1 ===========================================
// ## #### // workaround for dmd 2.0.67 - move initialization to static this
// 00## 00## __gshared static this() {
// ## FIGURES = [
Figure([FigureShape([1, 0], [ 1, 1], [0,-1]), // FIGURE1 ===========================================
FigureShape([0, 1], [-1, 1], [1, 0]), // ## ####
FigureShape([1, 0], [ 1, 1], [0,-1]), // 00## 00##
FigureShape([0, 1], [-1, 1], [1, 0])]), // ##
// FIGURE2 =========================================== Figure([FigureShape([1, 0], [ 1, 1], [0,-1]),
// ## #### FigureShape([0, 1], [-1, 1], [1, 0]),
// 00## ##00 FigureShape([1, 0], [ 1, 1], [0,-1]),
// ## FigureShape([0, 1], [-1, 1], [1, 0])]),
Figure([FigureShape([1, 0], [0, 1], [ 1,-1]), // FIGURE2 ===========================================
FigureShape([0, 1], [1, 1], [-1, 0]), // ## ####
FigureShape([1, 0], [0, 1], [ 1,-1]), // 00## ##00
FigureShape([0, 1], [1, 1], [-1, 0])]), // ##
// FIGURE3 =========================================== Figure([FigureShape([1, 0], [0, 1], [ 1,-1]),
// ## ## #### FigureShape([0, 1], [1, 1], [-1, 0]),
// ##00## 00 ##00## 00 FigureShape([1, 0], [0, 1], [ 1,-1]),
// ## #### ## FigureShape([0, 1], [1, 1], [-1, 0])]),
Figure([FigureShape([1, 0], [-1, 0], [-1,-1]), // FIGURE3 ===========================================
FigureShape([0, 1], [ 0,-1], [ 1,-1]), // ## ## ####
FigureShape([1, 0], [-1, 0], [ 1, 1]), // ##00## 00 ##00## 00
FigureShape([0, 1], [-1, 1], [ 0,-1])]), // ## #### ##
// FIGURE4 =========================================== Figure([FigureShape([1, 0], [-1, 0], [-1,-1]),
// #### ## ## FigureShape([0, 1], [ 0,-1], [ 1,-1]),
// ##00## 00 ##00## 00 FigureShape([1, 0], [-1, 0], [ 1, 1]),
// ## ## #### FigureShape([0, 1], [-1, 1], [ 0,-1])]),
Figure([FigureShape([1, 0], [-1, 0], [ 1,-1]), // FIGURE4 ===========================================
FigureShape([0, 1], [ 0,-1], [ 1, 1]), // #### ## ##
FigureShape([1, 0], [-1, 0], [-1, 1]), // ##00## 00 ##00## 00
FigureShape([0, 1], [-1,-1], [ 0,-1])]), // ## ## ####
// FIGURE5 =========================================== Figure([FigureShape([1, 0], [-1, 0], [ 1,-1]),
// #### FigureShape([0, 1], [ 0,-1], [ 1, 1]),
// 00## FigureShape([1, 0], [-1, 0], [-1, 1]),
// FigureShape([0, 1], [-1,-1], [ 0,-1])]),
Figure([FigureShape([1, 0], [0, 1], [ 1, 1]), // FIGURE5 ===========================================
FigureShape([1, 0], [0, 1], [ 1, 1]), // ####
FigureShape([1, 0], [0, 1], [ 1, 1]), // 00##
FigureShape([1, 0], [0, 1], [ 1, 1])]), //
// FIGURE6 =========================================== Figure([FigureShape([1, 0], [0, 1], [ 1, 1]),
// ## FigureShape([1, 0], [0, 1], [ 1, 1]),
// ## FigureShape([1, 0], [0, 1], [ 1, 1]),
// 00 ##00#### FigureShape([1, 0], [0, 1], [ 1, 1])]),
// ## // FIGURE6 ===========================================
Figure([FigureShape([0, 1], [0, 2], [ 0,-1]), // ##
FigureShape([1, 0], [2, 0], [-1, 0]), // ##
FigureShape([0, 1], [0, 2], [ 0,-1]), // 00 ##00####
FigureShape([1, 0], [2, 0], [-1, 0])]), // ##
// FIGURE7 =========================================== Figure([FigureShape([0, 1], [0, 2], [ 0,-1]),
// ## ## ## FigureShape([1, 0], [2, 0], [-1, 0]),
// ##00## 00## ##00## ##00 FigureShape([0, 1], [0, 2], [ 0,-1]),
// ## ## ## FigureShape([1, 0], [2, 0], [-1, 0])]),
Figure([FigureShape([1, 0], [-1,0], [ 0,-1]), // FIGURE7 ===========================================
FigureShape([0, 1], [0,-1], [ 1, 0]), // ## ## ##
FigureShape([1, 0], [-1,0], [ 0, 1]), // ##00## 00## ##00## ##00
FigureShape([0, 1], [0,-1], [-1, 0])]), // ## ## ##
]; Figure([FigureShape([1, 0], [-1,0], [ 0,-1]),
FigureShape([0, 1], [0,-1], [ 1, 0]),
FigureShape([1, 0], [-1,0], [ 0, 1]),
FigureShape([0, 1], [0,-1], [-1, 0])]),
];
}
/// colors for different figure types /// colors for different figure types
const uint[7] _figureColors = [0xC00000, 0x80A000, 0xA00080, 0x0000C0, 0x800020, 0x408000, 0x204000]; const uint[7] _figureColors = [0xC00000, 0x80A000, 0xA00080, 0x0000C0, 0x800020, 0x408000, 0x204000];