Commit 6e9da5ca588a2deae1cc5e9cd840eac32ca152b8
1 parent
8b3e8abf
Added very slight shadow to most UI texts, making them more readable
Modules can enable text shadows on the UI by doing: require("engine.ui.Base"):setTextShadow(0.6) git-svn-id: http://svn.net-core.org/repos/t-engine4@3324 51575b47-30f0-44d4-a5cc-537603b46e54
Showing
15 changed files
with
21 additions
and
15 deletions
... | ... | @@ -153,3 +153,7 @@ function _M:drawFrame(f, x, y, r, g, b, a) |
153 | 153 | f.b9.t:toScreenFull(x + f.w - f.b9.w, y, f.b9.w, f.b9.h, f.b9.tw, f.b9.th, r, g, b, a) |
154 | 154 | f.b3.t:toScreenFull(x + f.w - f.b3.w, y + f.h - f.b3.h, f.b3.w, f.b3.h, f.b3.tw, f.b3.th, r, g, b, a) |
155 | 155 | end |
156 | + | |
157 | +function _M:setTextShadow(v) | |
158 | + self.text_shadow = v | |
159 | +end | ... | ... |
... | ... | @@ -74,10 +74,8 @@ function _M:display(x, y, nb_keyframes, ox, oy) |
74 | 74 | if self.focused then |
75 | 75 | if button == 1 and mx > ox and mx < ox+self.w and my > oy and my < oy+self.h then |
76 | 76 | self:drawFrame(self.frame, x, y, 0, 1, 0, 1) |
77 | - self.tex[1]:toScreenFull(x-frame_ox1, y-frame_oy1, self.rw, self.rh, self.tex[2], self.tex[3]) | |
78 | 77 | else |
79 | 78 | self:drawFrame(self.frame_sel, x, y) |
80 | - self.tex[1]:toScreenFull(x-frame_ox1, y-frame_oy1, self.rw, self.rh, self.tex[2], self.tex[3]) | |
81 | 79 | end |
82 | 80 | else |
83 | 81 | self:drawFrame(self.frame, x, y) |
... | ... | @@ -86,6 +84,7 @@ function _M:display(x, y, nb_keyframes, ox, oy) |
86 | 84 | self.focus_decay = self.focus_decay - nb_keyframes |
87 | 85 | if self.focus_decay <= 0 then self.focus_decay = nil end |
88 | 86 | end |
89 | - self.tex[1]:toScreenFull(x-frame_ox1, y-frame_oy1, self.rw, self.rh, self.tex[2], self.tex[3]) | |
90 | 87 | end |
88 | + if self.text_shadow then self.tex[1]:toScreenFull(x-frame_ox1+1, y-frame_oy1+1, self.rw, self.rh, self.tex[2], self.tex[3], 0, 0, 0, self.text_shadow) end | |
89 | + self.tex[1]:toScreenFull(x-frame_ox1, y-frame_oy1, self.rw, self.rh, self.tex[2], self.tex[3]) | |
91 | 90 | end | ... | ... |
... | ... | @@ -69,6 +69,7 @@ function _M:select() |
69 | 69 | end |
70 | 70 | |
71 | 71 | function _M:display(x, y, nb_keyframes) |
72 | + if self.text_shadow then self.tex[1]:toScreenFull(x+1, y+1 + (self.h - self.title_h) / 2, self.title_w, self.title_h, self.tex[2], self.tex[3], 0, 0, 0, self.text_shadow) end | |
72 | 73 | self.tex[1]:toScreenFull(x, y + (self.h - self.title_h) / 2, self.title_w, self.title_h, self.tex[2], self.tex[3]) |
73 | 74 | if self.focused then |
74 | 75 | self.check.t:toScreenFull(x + self.title_w, y, self.check.w, self.check.h, self.check.tw, self.check.th) | ... | ... |
... | ... | @@ -168,6 +168,7 @@ function _M:display(x, y, nb_keyframes) |
168 | 168 | if item.focus_decay <= 0 then item.focus_decay = nil end |
169 | 169 | end |
170 | 170 | end |
171 | + if self.text_shadow then item._tex[1]:toScreenFull(x+1 + self.frame_sel.b4.w, y+1, self.fw, self.fh, item._tex[2], item._tex[3], 0, 0, 0, self.text_shadow) end | |
171 | 172 | item._tex[1]:toScreenFull(x + self.frame_sel.b4.w, y, self.fw, self.fh, item._tex[2], item._tex[3]) |
172 | 173 | y = y + self.fh |
173 | 174 | end | ... | ... |
... | ... | @@ -270,6 +270,7 @@ function _M:display(x, y, nb_keyframes, screen_x, screen_y) |
270 | 270 | if col.direct_draw then |
271 | 271 | col.direct_draw(item, x, y, col.fw, self.fh) |
272 | 272 | else |
273 | + if self.text_shadow then item._tex[j][1]:toScreenFull(x+1, y+1, col.fw, self.fh, item._tex[j][2], item._tex[j][3], 0, 0, 0, self.text_shadow) end | |
273 | 274 | item._tex[j][1]:toScreenFull(x, y, col.fw, self.fh, item._tex[j][2], item._tex[j][3]) |
274 | 275 | end |
275 | 276 | item.last_display_x = screen_x + (x - bx) | ... | ... |
... | ... | @@ -151,6 +151,7 @@ function _M:updateText(v) |
151 | 151 | end |
152 | 152 | |
153 | 153 | function _M:display(x, y, nb_keyframes) |
154 | + if self.text_shadow then self.tex:toScreenFull(x+1, y+1, self.title_w, self.h, self.tex_w, self.tex_h, 0, 0, 0, self.text_shadow) end | |
154 | 155 | self.tex:toScreenFull(x, y, self.title_w, self.h, self.tex_w, self.tex_h) |
155 | 156 | if self.focused then |
156 | 157 | self:drawFrame(self.frame_sel, x + self.title_w, y) |
... | ... | @@ -163,5 +164,6 @@ function _M:display(x, y, nb_keyframes) |
163 | 164 | if self.focus_decay <= 0 then self.focus_decay = nil end |
164 | 165 | end |
165 | 166 | end |
167 | + if self.text_shadow then self.text_tex:toScreenFull(x+1 + self.text_x, y+1 + self.text_y, self.fw, self.fh, self.text_tex_w, self.text_tex_h, 0, 0, 0, self.text_shadow) end | |
166 | 168 | self.text_tex:toScreenFull(x + self.text_x, y + self.text_y, self.fw, self.fh, self.text_tex_w, self.text_tex_h) |
167 | 169 | end | ... | ... |
... | ... | @@ -98,7 +98,6 @@ function _M:display(x, y, nb_keyframes) |
98 | 98 | y = y + 4 |
99 | 99 | if self.selected then |
100 | 100 | self:drawFrame(self.frame_sel, x, y) |
101 | - self.tex[1]:toScreenFull(x-frame_ox1, y-frame_oy1, self.rw, self.rh, self.tex[2], self.tex[3]) | |
102 | 101 | elseif not self.focused then |
103 | 102 | self:drawFrame(self.frame, x, y, 1, 1, 1, 1) |
104 | 103 | if self.focus_decay then |
... | ... | @@ -106,9 +105,9 @@ function _M:display(x, y, nb_keyframes) |
106 | 105 | self.focus_decay = self.focus_decay - nb_keyframes |
107 | 106 | if self.focus_decay <= 0 then self.focus_decay = nil end |
108 | 107 | end |
109 | - self.tex[1]:toScreenFull(x-frame_ox1, y-frame_oy1, self.rw, self.rh, self.tex[2], self.tex[3]) | |
110 | 108 | else |
111 | 109 | self:drawFrame(self.frame_sel, x, y, 1, 0.5, 0.5, 1) |
112 | - self.tex[1]:toScreenFull(x-frame_ox1, y-frame_oy1, self.rw, self.rh, self.tex[2], self.tex[3]) | |
113 | 110 | end |
111 | + if self.text_shadow then self.tex[1]:toScreenFull(x+1-frame_ox1, y+1-frame_oy1, self.rw, self.rh, self.tex[2], self.tex[3], 0, 0, 0, self.text_shadow) end | |
112 | + self.tex[1]:toScreenFull(x-frame_ox1, y-frame_oy1, self.rw, self.rh, self.tex[2], self.tex[3]) | |
114 | 113 | end | ... | ... |
... | ... | @@ -136,6 +136,7 @@ function _M:updateText() |
136 | 136 | end |
137 | 137 | |
138 | 138 | function _M:display(x, y, nb_keyframes) |
139 | + if self.text_shadow then self.tex:toScreenFull(x+1, y+1, self.title_w, self.h, self.tex_w, self.tex_h, 0, 0, 0, self.text_shadow) end | |
139 | 140 | self.tex:toScreenFull(x, y, self.title_w, self.h, self.tex_w, self.tex_h) |
140 | 141 | if self.focused then |
141 | 142 | self:drawFrame(self.frame_sel, x + self.title_w, y) |
... | ... | @@ -148,5 +149,6 @@ function _M:display(x, y, nb_keyframes) |
148 | 149 | if self.focus_decay <= 0 then self.focus_decay = nil end |
149 | 150 | end |
150 | 151 | end |
152 | + if self.text_shadow then self.text_tex:toScreenFull(x+1 + self.text_x, y+1 + self.text_y, self.fw, self.fh, self.text_tex_w, self.text_tex_h, 0, 0, 0, self.text_shadow) end | |
151 | 153 | self.text_tex:toScreenFull(x + self.text_x, y + self.text_y, self.fw, self.fh, self.text_tex_w, self.text_tex_h) |
152 | 154 | end | ... | ... |
... | ... | @@ -97,6 +97,7 @@ function _M:display(x, y) |
97 | 97 | for i = self.scroll, max do |
98 | 98 | local item = self.list[i] |
99 | 99 | if not item then break end |
100 | + if self.text_shadow then item._tex:toScreenFull(x+1, y+1, self.fw, self.fh, item._tex_w, item._tex_h, 0, 0, 0, self.text_shadow) end | |
100 | 101 | item._tex:toScreenFull(x, y, self.fw, self.fh, item._tex_w, item._tex_h) |
101 | 102 | y = y + self.fh |
102 | 103 | end | ... | ... |
... | ... | @@ -136,6 +136,7 @@ function _M:display(x, y) |
136 | 136 | for i = self.scroll, max do |
137 | 137 | local item = self.list[i] |
138 | 138 | if not item then break end |
139 | + if self.text_shadow then item._tex:toScreenFull(x+1, y+1, self.fw, self.fh, item._tex_w, item._tex_h, 0, 0, 0, self.text_shadow) end | |
139 | 140 | item._tex:toScreenFull(x, y, self.fw, self.fh, item._tex_w, item._tex_h) |
140 | 141 | y = y + self.fh |
141 | 142 | end | ... | ... |
... | ... | @@ -294,6 +294,7 @@ function _M:display(x, y, nb_keyframes) |
294 | 294 | s.t:toScreenFull(x, y + (self.fh - s.h) / 2, s.w, s.h, s.th, s.th) |
295 | 295 | end |
296 | 296 | |
297 | + if self.text_shadow then item.cols[j]._tex:toScreenFull(x+1, y+1, col.width, self.fh, item.cols[j]._tex_w, item.cols[j]._tex_h, 0, 0, 0, self.text_shadow) end | |
297 | 298 | item.cols[j]._tex:toScreenFull(x, y, col.width, self.fh, item.cols[j]._tex_w, item.cols[j]._tex_h) |
298 | 299 | x = x + col.width |
299 | 300 | end | ... | ... |
... | ... | @@ -124,6 +124,7 @@ function _M:display(x, y, nb_keyframes) |
124 | 124 | if item.focus_decay <= 0 then item.focus_decay = nil end |
125 | 125 | end |
126 | 126 | end |
127 | + if self.text_shadow then item._tex[1]:toScreenFull(x+1 + self.frame_sel.b4.w, y+1, self.fw, item.fh, item._tex[2], item._tex[3], 0, 0, 0, self.text_shadow) end | |
127 | 128 | item._tex[1]:toScreenFull(x + self.frame_sel.b4.w, y, self.fw, item.fh, item._tex[2], item._tex[3]) |
128 | 129 | y = y + item.fh |
129 | 130 | end | ... | ... |
... | ... | @@ -882,13 +882,6 @@ function _M:display(nb_keyframes) |
882 | 882 | else |
883 | 883 | self:targetDisplayTooltip(self.w, self.h) |
884 | 884 | end |
885 | - | |
886 | - if self.test then | |
887 | - for i = 1, #self.test do | |
888 | - local item = self.test[i] | |
889 | - item._tex:toScreenFull(300, 300 + item.h * i, item.w, item.h, item._tex_w, item._tex_h) | |
890 | - end | |
891 | - end | |
892 | 885 | end |
893 | 886 | |
894 | 887 | --- Called when a dialog is registered to appear on screen |
... | ... | @@ -944,8 +937,7 @@ function _M:setupCommands() |
944 | 937 | -- self.state:debugRandomZone() |
945 | 938 | -- local m = game.zone:makeEntity(game.level, "actor", {random_boss=true}, nil, true) |
946 | 939 | -- if m then game.zone:addEntity(game.level, m, "actor", game.player.x, game.player.y + 1) end |
947 | - local font = core.display.newFont("/data/font/Vera.ttf", 18) | |
948 | - self.test = font:draw("test #8810FF#plop #{italic}#zogzog#{normal}##LAST# tolopalak looooooooooooooooooooooooooonnnnng toto\nto\noooo", 200, 255, 255, 255) | |
940 | + self:registerDialog(require("mod.dialogs.Donation").new()) | |
949 | 941 | end end, |
950 | 942 | } |
951 | 943 | ... | ... |
No preview for this file type
-
Please register or login to post a comment