Differences From Artifact [19a06a471eb23a83]:
- File
src/gui.d
- 2012-07-14 18:16:22 - part of checkin [d782a7db12] on branch trunk - More cute glyph. (user: kinaba) [annotate]
To Artifact [3be06eef4f2a58fa]:
- File
src/gui.d
- 2012-07-15 01:58:08 - part of checkin [9d983af88c] on branch trunk - Hige parsing and rendering. (user: kinaba) [annotate]
64 64 this.colors['.'] = Color(255,191,127);
65 65 this.colors['*'] = Color(255,127,127);
66 66 this.colors['R'] = Color(128,128,0);
67 67 this.colors['d'] = Color(255,0,0);
68 68 this.colors['\\'] =
69 69 this.colors['L'] =
70 70 this.colors['O'] = Color(127,255,127);
71 - this.colors['W'] = Color(204,229,255);
71 + this.colors['w'] = Color(204,229,255);
72 + this.colors['W'] =
73 + this.colors['!'] = Color(159,159,159);
72 74 foreach(char c; 'A'..'J') this.colors[c] = Color(142,142,255);
73 75 foreach(char c; '1'..':') this.colors[c] = Color(255,142,255);
74 76 this.render['#'] = "■";
75 77 this.render['*'] = "✹";
76 78 this.render['.'] = "♒";
77 79 this.render['\\'] = "λ";
78 80 this.render['R'] = "☃";
79 81 this.render['d'] = "☠";
80 82 this.render['L'] = "☒";
81 83 this.render['O'] = "☐";
84 + this.render['W'] = "ꔣ";
85 + this.render['!'] = "✄";
82 86 foreach(c,tp; g.map.tr_target) {
83 87 char d = g.map[tp];
84 - this.render[c] = [cast(dchar)('☢'+d-'1')].to!string();/*㋀㏠*/
88 + this.render[c] = [cast(dchar)('☢'+d-'1')].to!string();
85 89 }
86 90 foreach(char c; '1'..':') this.render[c] = [cast(dchar)('☢'+c-'1')].to!string();
87 91 this.paint ~= (Control c, PaintEventArgs ev) {
88 92 graphicContext.copyTo(ev.graphics, Rect(0,0,this.clientSize.width,this.clientSize.height));
89 93 };
90 94 }
91 95
................................................................................
95 99 int scrH = this.clientSize.height;
96 100
97 101 // Fill bg.
98 102 graphicContext.fillRectangle(this.backColor, Rect(0,0,scrW,scrH));
99 103
100 104 // Fill water.
101 105 int w = g.water_level();
102 - graphicContext.fillRectangle(this.colors['W'], Rect(0, scrH-cell*w-1, scrW, cell*w+1));
106 + graphicContext.fillRectangle(this.colors['w'], Rect(0, scrH-cell*w-1, scrW, cell*w+1));
103 107
104 108 // Paint map.
105 109 for(int y=1; y<=g.map.H; ++y)
106 110 for(int x=1; x<=g.map.W; ++x) {
107 111 Rect r = Rect(cell*(x-1), scrH-cell*y, cell, cell);
108 112 char c = g.map[y,x];
109 113 if( c != ' ' ) {
................................................................................
110 114 if( c == 'R' && g.dead )
111 115 c = 'd';
112 116 graphicContext.drawText(this.render[c], font, this.colors[c], r);
113 117 }
114 118 }
115 119
116 120 // Update textual info.
117 - this.text = .text("Score: ", g.score, " Air: ", g.hp, " Tide: ", g.water_until_rise);
121 + this.text = .text(
122 + "Score: ", g.score,
123 + " Air: ", g.hp,
124 + " Tide: ", g.water_until_rise,
125 + " Wadler: ", g.hige_until_rise,
126 + " Razor: ", g.map.razor);
118 127 invalidate();
119 128 }
120 129
121 130 private:
122 131 void setup_keyhandling()
123 132 {
124 133 noMessageFilter();