Skip to content

Commit 60cb879

Browse files
Update card_draw.lua (#1236)
Bug fix: canvas text was drawn even when card was undiscovered. New functionality: easy text alignment: rather then creating a new table for text_transform whenever the text changes, this way you can simply set text_h_align and text_v_align once. text_h_align can be 'left', 'center' (default behaviour) or 'right' text_v_align can be 'top', 'middle' (default behaviour) or 'bottom'
1 parent ea29bc0 commit 60cb879

File tree

1 file changed

+5
-2
lines changed

1 file changed

+5
-2
lines changed

src/card_draw.lua

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,8 @@ function SMODS.CanvasSprite:init(args)
88
self.canvasScale = 10
99
self.text = ""
1010
self.text_offset = {x = 0, y = 0}
11+
self.text_h_align = 'center'
12+
self.text_v_align = 'middle'
1113
for k, v in pairs(args) do self[k] = v end
1214
self.canvas = love.graphics.newCanvas(self.canvasW * self.canvasScale, self.canvasH * self.canvasScale)
1315
self.font = (SMODS.Fonts[self.text_font] or G.FONTS[self.text_font] or G.FONTS[1]).FONT
@@ -373,7 +375,7 @@ SMODS.DrawStep {
373375
key = 'canvas_text',
374376
order = 45,
375377
func = function(self, layer)
376-
if self.canvas_text then
378+
if self.canvas_text and (self.config.center.discovered or self.bypass_discovery_center) then
377379
for _, sprite in ipairs(self.canvas_text[1] and self.canvas_text or {self.canvas_text}) do
378380
love.graphics.push()
379381
love.graphics.origin()
@@ -386,7 +388,8 @@ SMODS.DrawStep {
386388
(0 + sprite.text_offset.y) * sprite.canvasScale,
387389
0,
388390
scale_fac, scale_fac,
389-
text:getWidth()/2, text:getHeight()/2
391+
sprite.text_h_align == 'left' and 0 or (sprite.text_h_align == 'right' and text:getWidth() or text:getWidth()/2),
392+
sprite.text_v_align == 'top' and 0 or (sprite.text_v_align == 'bottom' and text:getHeight() or text:getHeight()/2)
390393
})
391394
sprite.canvas:renderTo(love.graphics.draw,
392395
text,

0 commit comments

Comments
 (0)