summaryrefslogtreecommitdiff
path: root/crates/renderer/src/overlay/tcg.rs
diff options
context:
space:
mode:
Diffstat (limited to 'crates/renderer/src/overlay/tcg.rs')
-rw-r--r--crates/renderer/src/overlay/tcg.rs88
1 files changed, 60 insertions, 28 deletions
diff --git a/crates/renderer/src/overlay/tcg.rs b/crates/renderer/src/overlay/tcg.rs
index acc9915..484f265 100644
--- a/crates/renderer/src/overlay/tcg.rs
+++ b/crates/renderer/src/overlay/tcg.rs
@@ -1,7 +1,6 @@
use teleia::*;
use std::{cell::RefCell, rc::Rc};
-use std::fmt::Write as _;
use redis::Commands;
use image::EncodableLayout;
@@ -340,13 +339,14 @@ impl Marquee {
if let Some(c) = &s.card.card {
let scale = 4.0;
let owner_width = c.owner.len() as f32 * self.font.char_width as f32 * scale;
- self.font.render_text_parameterized(ctx, st,
- &(p_screen + glam::Vec2::new(-owner_width / 2.0,
- -200.0 + if s.height_offset { -50.0 } else { 0.0 })),
+ self.font.render_text_at(ctx, st,
+ p_screen + glam::Vec2::new(-owner_width / 2.0,
+ -200.0 + if s.height_offset { -50.0 } else { 0.0 }),
&c.owner,
font::BitmapParams {
color: &[glam::Vec3::new(1.0, 1.0, 1.0)],
scale: glam::Vec2::new(scale, scale),
+ offset: glam::Vec2::ZERO,
},
);
}
@@ -429,15 +429,23 @@ impl CardRenderer {
glam::Vec2::new(0.0, 0.0),
glam::Vec2::new(WIDTH, 16.0),
);
- self.font.render_text_helper(ctx, st,
- &glam::Vec2::new(8.0, 1.0),
+ self.font.render_text_at(ctx, st,
+ glam::Vec2::new(8.0, 1.0),
&card.name,
- &[glam::Vec3::new(0.0, 0.0, 0.0)]
+ font::BitmapParams {
+ color: &[glam::Vec3::new(0.0, 0.0, 0.0)],
+ scale: glam::Vec2::ONE,
+ offset: glam::Vec2::ZERO,
+ }
);
- self.font.render_text_helper(ctx, st,
- &glam::Vec2::new(WIDTH - 8.0 * card.rarity.len() as f32, 1.0),
+ self.font.render_text_at(ctx, st,
+ glam::Vec2::new(WIDTH - 8.0 * card.rarity.len() as f32, 1.0),
&card.rarity,
- &[glam::Vec3::new(0.0, 0.0, 0.0)]
+ font::BitmapParams {
+ color: &[glam::Vec3::new(0.0, 0.0, 0.0)],
+ scale: glam::Vec2::ONE,
+ offset: glam::Vec2::ZERO,
+ }
);
// art
@@ -475,24 +483,36 @@ impl CardRenderer {
// boost text
let boost_pos = glam::Vec2::new(12.0, 105.0);
- self.font.render_text_helper(ctx, st,
- &boost_pos,
+ self.font.render_text_at(ctx, st,
+ boost_pos,
&card.boost_level,
- &[glam::Vec3::new(0.1, 0.1, 0.1)]
+ font::BitmapParams {
+ color: &[glam::Vec3::new(0.1, 0.1, 0.1)],
+ scale: glam::Vec2::ONE,
+ offset: glam::Vec2::ZERO,
+ },
);
- self.font.render_text_helper(ctx, st,
- &(boost_pos - glam::Vec2::new(1.0, 1.0)),
+ self.font.render_text_at(ctx, st,
+ boost_pos - glam::Vec2::new(1.0, 1.0),
&card.boost_level,
- &[glam::Vec3::new(0.9, 0.9, 0.9)]
+ font::BitmapParams {
+ color: &[glam::Vec3::new(0.9, 0.9, 0.9)],
+ scale: glam::Vec2::ONE,
+ offset: glam::Vec2::ZERO,
+ },
);
// equity marks
let equity_pos = glam::Vec2::new(12.0, 18.0);
for i in 0..card.equity {
- self.font.render_text_helper(ctx, st,
- &(equity_pos + glam::Vec2::new(0.0, 10.0) * i as f32),
+ self.font.render_text_at(ctx, st,
+ equity_pos + glam::Vec2::new(0.0, 10.0) * i as f32,
"$",
- &[glam::Vec3::new(0.1, 0.1, 0.1)]
+ font::BitmapParams {
+ color: &[glam::Vec3::new(0.1, 0.1, 0.1)],
+ scale: glam::Vec2::ONE,
+ offset: glam::Vec2::ZERO,
+ },
);
}
@@ -504,10 +524,14 @@ impl CardRenderer {
);
for (i, cs) in card.body_text.chars().collect::<Vec<char>>().chunks(25).enumerate() {
let line: String = cs.iter().collect();
- self.font.render_text_helper(ctx, st,
- &glam::Vec2::new(5.0, 120.0 + 10.0 * i as f32),
+ self.font.render_text_at(ctx, st,
+ glam::Vec2::new(5.0, 120.0 + 10.0 * i as f32),
&format!("{}", line),
- &[glam::Vec3::new(0.2, 0.2, 0.2)]
+ font::BitmapParams {
+ color: &[glam::Vec3::new(0.2, 0.2, 0.2)],
+ scale: glam::Vec2::ONE,
+ offset: glam::Vec2::ZERO,
+ },
);
}
@@ -517,15 +541,23 @@ impl CardRenderer {
glam::Vec2::new(0.0, HEIGHT - 16.0),
glam::Vec2::new(WIDTH, 16.0),
);
- self.font.render_text_helper(ctx, st,
- &glam::Vec2::new(1.0, HEIGHT - 15.0),
+ self.font.render_text_at(ctx, st,
+ glam::Vec2::new(1.0, HEIGHT - 15.0),
&format!("{}", card.set),
- &[glam::Vec3::new(1.0, 1.0, 1.0)]
+ font::BitmapParams {
+ color: &[glam::Vec3::new(1.0, 1.0, 1.0)],
+ scale: glam::Vec2::ONE,
+ offset: glam::Vec2::ZERO,
+ }
);
- self.font.render_text_helper(ctx, st,
- &glam::Vec2::new(WIDTH - 7.0 * (card.minted_date.len() - 1) as f32, HEIGHT - 15.0),
+ self.font.render_text_at(ctx, st,
+ glam::Vec2::new(WIDTH - 7.0 * (card.minted_date.len() - 1) as f32, HEIGHT - 15.0),
&format!("{}", card.minted_date),
- &[glam::Vec3::new(1.0, 1.0, 1.0)]
+ font::BitmapParams {
+ color: &[glam::Vec3::new(1.0, 1.0, 1.0)],
+ scale: glam::Vec2::ONE,
+ offset: glam::Vec2::ZERO,
+ }
);
st.bind_render_framebuffer(ctx);
}