Diff
Not logged in

Differences From Artifact [19a06a471eb23a83]:

To Artifact [3be06eef4f2a58fa]:


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();