// Copyright © 2018 Graham Sanderson, all rights reserved. // Not 1.0 / 35.0 or even 0.028 because ZDoom is stupid. #define TS (0.029) #define HudMessageLog(...) \ ( \ HudMessage(__VA_ARGS__), \ ACS_OptHudMessage(HUDMSG_NOTWITHFULLMAP|HUDMSG_NOTWITH3DVIEW|HUDMSG_NOTWITHOVERLAYMAP|HUDMSG_LOG, hid_log_throwaway, CR_UNTRANSLATED, 0, 0, TS), \ ACS_EndHudMessage() \ ) #define HudMessageF(font, ...) \ ( \ ACS_SetFont(font), \ HudMessage(__VA_ARGS__) \ ) #define HudMessageParams(flags, id, tr, x, y, hold, ...) \ ( \ ACS_OptHudMessage((flags) | HUDMSG_NOTWITHFULLMAP, id, tr, x, y, hold), \ ACS_EndHudMessage(__VA_ARGS__) \ ) #define HudMessagePlain(id, x, y, hold) \ ( \ ACS_OptHudMessage(HUDMSG_PLAIN | HUDMSG_NOTWITHFULLMAP, id, CR_UNTRANSLATED, x, y, hold), \ ACS_EndHudMessage() \ ) #define HudMessageFade(id, x, y, hold, fadetime) \ ( \ ACS_OptHudMessage(HUDMSG_FADEOUT | HUDMSG_NOTWITHFULLMAP, id, CR_UNTRANSLATED, x, y, hold), \ ACS_EndHudMessage(fadetime) \ ) #define HudMessageAlpha(id, x, y, hold, alpha) \ ( \ HudMessageParams(HUDMSG_ALPHA, id, CR_UNTRANSLATED, x, y, hold, alpha) \ ) stkcall void DrawSprite(__str name, int flags, int id, fixed x, fixed y, fixed hold); stkcall void DrawSpriteX(__str name, int flags, int id, fixed x, fixed y, fixed hold, fixed a1); stkcall void DrawSpriteXX(__str name, int flags, int id, fixed x, fixed y, fixed hold, fixed a1, fixed a2); stkcall void DrawSpriteXXX(__str name, int flags, int id, fixed x, fixed y, fixed hold, fixed a1, fixed a2, fixed a3); stkcall void DrawSpritePlain(__str name, int id, fixed x, fixed y, fixed hold); stkcall void DrawSpriteAlpha(__str name, int id, fixed x, fixed y, fixed hold, fixed alpha); stkcall void DrawSpriteFade(__str name, int id, fixed x, fixed y, fixed hold, fixed fadetime); void HudMessage(__str fmt, ...); // EOF