You've already forked Microtransactions64
mirror of
https://github.com/Print-and-Panic/Microtransactions64.git
synced 2026-01-21 10:17:19 -08:00
40 lines
708 B
C
40 lines
708 B
C
#include <ultra64.h>
|
|
#include <PR/gs2dex.h>
|
|
|
|
#include "s2d_draw.h"
|
|
#include "s2d_print.h"
|
|
|
|
int saved_degrees = 0;
|
|
|
|
void s2d_print(int x, int y, const char *str, uObjMtx *buf) {
|
|
char *p = str;
|
|
if (*p == '\0') return;
|
|
do {
|
|
char r = *p;
|
|
char s, rd, tx, ty;
|
|
switch (r) {
|
|
case CH_SCALE:
|
|
s = CH_GET_NEXT(p);
|
|
myScale = s;
|
|
break;
|
|
case CH_ROT:
|
|
rd = CH_GET_NEXT(p);
|
|
saved_degrees = rd;
|
|
myDegrees = rd;
|
|
break;
|
|
case CH_TRANSLATE:
|
|
tx = CH_GET_NEXT(p);
|
|
ty = CH_GET_NEXT(p);
|
|
break;
|
|
|
|
default:
|
|
draw_s2d_glyph(r, x += (29 * myScale), y, (buf++));
|
|
}
|
|
myDegrees += saved_degrees;
|
|
} while (*(p++) != '\0');
|
|
myScale = 1;
|
|
myDegrees = 0;
|
|
saved_degrees = 0;
|
|
}
|
|
|