You've already forked Microtransactions64
mirror of
https://github.com/Print-and-Panic/Microtransactions64.git
synced 2026-01-21 10:17:19 -08:00
new defines for font changing; regenerated impact/comic sans; dropshadow WIP pixel offset
This commit is contained in:
5
config.h
5
config.h
@@ -6,7 +6,7 @@
|
||||
/**
|
||||
* SET YOUR FONT NAME HERE
|
||||
*/
|
||||
#define FONTNAME impact
|
||||
#define FONTNAME comicsans
|
||||
|
||||
|
||||
/***********
|
||||
@@ -29,12 +29,13 @@
|
||||
#define STR2(x) STR(x)
|
||||
|
||||
#define __headername(hd) fonts/hd.h
|
||||
#define __fontinclude(f) src/s2d_engine/fonts/f.c
|
||||
|
||||
#define _FONT_HEADER STR2(__headername(FONTNAME))
|
||||
#define FONT_C_FILE STR2(__fontinclude(FONTNAME))
|
||||
|
||||
#include _FONT_HEADER
|
||||
|
||||
|
||||
// get your font symbols defined here
|
||||
#define s2d_font GLUE2(FONTNAME, _obj)
|
||||
#define s2d_dropshadow GLUE2(FONTNAME, _obj_dropshadow)
|
||||
|
||||
@@ -1673,8 +1673,8 @@ uObjMtx comicsans_mtx = {
|
||||
1<<10, 1<<10 /* BaseScaleX, BaseScaleY */
|
||||
};
|
||||
uObjSprite comicsans_obj = {
|
||||
0<<2, 1<<10, 64<<5, 0, /* objX, scaleX, imageW, unused */
|
||||
0<<2, 1<<10, 64<<5, 0, /* objY, scaleY, imageH, unused */
|
||||
-32<<2, 1<<10, 64<<5, 0, /* objX, scaleX, imageW, unused */
|
||||
-32<<2, 1<<10, 64<<5, 0, /* objY, scaleY, imageH, unused */
|
||||
GS_PIX2TMEM(64, G_IM_SIZ_8b), /* imageStride */
|
||||
GS_PIX2TMEM(0, G_IM_SIZ_8b), /* imageAdrs */
|
||||
G_IM_FMT_IA, /* imageFmt */
|
||||
@@ -1683,8 +1683,8 @@ uObjSprite comicsans_obj = {
|
||||
0, /* imageFlags */
|
||||
};
|
||||
uObjSprite comicsans_obj_dropshadow = {
|
||||
-32<<2, 1<<10, 64<<5, 0, /* objX, scaleX, imageW, unused */
|
||||
-32<<2, 1<<10, 64<<5, 0, /* objY, scaleY, imageH, unused */
|
||||
-24<<2, 1<<10, 64<<5, 0, /* objX, scaleX, imageW, unused */
|
||||
-24<<2, 1<<10, 64<<5, 0, /* objY, scaleY, imageH, unused */
|
||||
GS_PIX2TMEM(64, G_IM_SIZ_8b), /* imageStride */
|
||||
GS_PIX2TMEM(0, G_IM_SIZ_8b), /* imageAdrs */
|
||||
G_IM_FMT_IA, /* imageFmt */
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
#include <PR/ultratypes.h>
|
||||
#include <PR/gs2dex.h>
|
||||
extern uObjTxtrBlock_t comicsans_tex[];
|
||||
extern uObjTxtr comicsans_tex[];
|
||||
extern uObjMtx comicsans_mtx;
|
||||
extern uObjSprite comicsans_obj;
|
||||
extern void call_comicsans_sprite_dl(int idx, int x, int y, uObjMtx *buffer, int buf_idx);
|
||||
@@ -133,4 +133,4 @@ extern u8 comicsans_tex_125[];
|
||||
extern u8 comicsans_tex_126[];
|
||||
extern u8 comicsans_tex_127[];
|
||||
|
||||
extern char comicsans_obj_dropshadow[];
|
||||
extern uObjSprite comicsans_obj_dropshadow;
|
||||
|
||||
@@ -1683,8 +1683,8 @@ uObjSprite impact_obj = {
|
||||
0, /* imageFlags */
|
||||
};
|
||||
uObjSprite impact_obj_dropshadow = {
|
||||
-31<<2, 1<<10, 64<<5, 0, /* objX, scaleX, imageW, unused */
|
||||
-31<<2, 1<<10, 64<<5, 0, /* objY, scaleY, imageH, unused */
|
||||
-24<<2, 1<<10, 64<<5, 0, /* objX, scaleX, imageW, unused */
|
||||
-24<<2, 1<<10, 64<<5, 0, /* objY, scaleY, imageH, unused */
|
||||
GS_PIX2TMEM(64, G_IM_SIZ_8b), /* imageStride */
|
||||
GS_PIX2TMEM(0, G_IM_SIZ_8b), /* imageAdrs */
|
||||
G_IM_FMT_IA, /* imageFmt */
|
||||
|
||||
@@ -7,6 +7,8 @@ int myDegrees = 0;
|
||||
uObjMtx final_mtx, rot_mtx;
|
||||
int s2d_red = 255, s2d_green = 255, s2d_blue = 255, s2d_alpha = 255;
|
||||
int drop_shadow = FALSE;
|
||||
int drop_x = 0;
|
||||
int drop_y = 0;
|
||||
|
||||
Gfx s2d_text_init_dl[] = {
|
||||
gsDPPipeSync(),
|
||||
@@ -94,6 +96,12 @@ void draw_s2d_glyph(char c, int x, int y, uObjMtx *mt) {
|
||||
mtx_pipeline2(mt, x, y);
|
||||
|
||||
if (drop_shadow) {
|
||||
// uObjSprite *tmp = (uObjSprite *)segmented_to_virtual(&s2d_dropshadow);
|
||||
// uObjSprite *orig = (uObjSprite *)segmented_to_virtual(&s2d_font);
|
||||
|
||||
// tmp->s.objX = orig->s.objX + drop_x;
|
||||
// tmp->s.objY = orig->s.objY + drop_y;
|
||||
|
||||
gDPPipeSync(gdl_head++);
|
||||
gDPSetEnvColor(gdl_head++,
|
||||
CLAMP_0(s2d_red - 100),
|
||||
|
||||
@@ -5,6 +5,8 @@
|
||||
extern float myScale;
|
||||
extern int myDegrees;
|
||||
extern int drop_shadow;
|
||||
extern int drop_x, drop_y;
|
||||
|
||||
extern uObjMtx final_mtx, rot_mtx;
|
||||
|
||||
extern int s2d_red, s2d_green, s2d_blue, s2d_alpha;
|
||||
|
||||
15
s2d_parse.c
15
s2d_parse.c
@@ -82,7 +82,17 @@ static void s2d_snprint(int x, int y, int align, const char *str, uObjMtx *buf,
|
||||
break;
|
||||
case CH_DROPSHADOW:
|
||||
drop_shadow ^= 1;
|
||||
|
||||
// WIP: drop shadow custom offset
|
||||
// TODO: unique offset per string; fix negative offsets
|
||||
// CH_SKIP(p);
|
||||
// drop_x = s2d_atoi(p, &p);
|
||||
// CH_SKIP(p); CH_SKIP(p);
|
||||
// drop_y = s2d_atoi(p, &p);
|
||||
|
||||
// drop_x <<= 2;
|
||||
// drop_y <<= 2;
|
||||
|
||||
break;
|
||||
case '\n':
|
||||
line++;
|
||||
@@ -112,6 +122,8 @@ static void s2d_snprint(int x, int y, int align, const char *str, uObjMtx *buf,
|
||||
s2d_red = s2d_green = s2d_blue = 255;
|
||||
s2d_alpha = 255;
|
||||
drop_shadow = FALSE;
|
||||
drop_x = 0;
|
||||
drop_y = 0;
|
||||
myScale = 1;
|
||||
myDegrees = 0;
|
||||
break;
|
||||
@@ -129,6 +141,9 @@ static void s2d_snprint(int x, int y, int align, const char *str, uObjMtx *buf,
|
||||
} while (tmp_len < len);
|
||||
myScale = 1.0f;
|
||||
myDegrees = 0;
|
||||
drop_shadow = FALSE;
|
||||
drop_x = 0;
|
||||
drop_y = 0;
|
||||
}
|
||||
|
||||
void s2d_print(int x, int y, int align, const char *str, uObjMtx *buf) {
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
#define ROTATE "\x81" // ROTATE (degrees) // TODO: maybe add axis?
|
||||
#define TRANSLATE "\x82" // TRANSLATE (x) (y)
|
||||
#define COLOR "\x83" // COLOR (r) (g) (b) (a)
|
||||
#define DROPSHADOW "\x84" // DROPSHADOW (no params)
|
||||
#define DROPSHADOW "\x84" // DROPSHADOW (no args)
|
||||
#define BACKGROUND "\x85" // BACKGROUND (w) (h) (alpha)
|
||||
#define SEPARATOR "\x86"
|
||||
#define RESET "\x87"
|
||||
|
||||
Reference in New Issue
Block a user