swwmgz_m/zscript/kbase/swwm_kbase_tab.zsc
Marisa Kirisame 8769496e36 Various tweaks to menu code.
Add "mission log" thinker for use in custom maps.
2022-03-11 18:24:17 +01:00

57 lines
1.3 KiB
Text

// Classes for menu tabs
Class DemolitionistMenuTab ui abstract
{
DemolitionistMenu master;
String title;
bool bHidden; // tab does not display and can't be selected
// tab initialization
virtual DemolitionistMenuTab Init( DemolitionistMenu master )
{
self.master = master;
return self;
}
// called for menu input (direction keys, enter, back)
virtual void MenuInput( int key )
{
}
// called for mouse input (left/right click, mouse wheel up/down, mouse drag/release)
virtual void MouseInput( Vector2 pos, int btn )
{
}
// called after this tab is selected
virtual void OnSelect()
{
}
// called before another tab is selected
virtual void OnDeselect()
{
}
// called every tic while selected
virtual void Ticker()
{
}
// called every frame while selected
virtual void Drawer()
{
// placeholder (so don't call super)
String str = StringTable.Localize("$SWWM_COMINGSOON");
double xx = int(master.ws.x-smallfont.StringWidth(str))/2;
double yy = int(master.ws.y-smallfont.GetHeight())/2;
Screen.DrawText(smallfont,Font.CR_FIRE,master.origin.x+xx,master.origin.y+yy,str,DTA_VirtualWidthF,master.ss.x,DTA_VirtualHeightF,master.ss.y,DTA_KeepRatio,true);
}
}
// for add-ons
Class DemolitionistMenuTabCustom : DemolitionistMenuTab abstract
{
// wow it's literally nothing
// just subclass from this in your add-ons
}