===== ScriptedOSD Reference ===== Scripts run on the server can create an OSD layout that is transmitted to then executed by the client. See the [[scripting:scriptedosd|ScriptedOSD Overview]] for a general description of how this system is used. ===== ScriptedOSD Commands ===== ==== OSDCreate ==== ^ Parameters | ''OSD_TYPE'', ''Name'', ''Title'', ''[Expiry Time]'' | ^ Example | ''osdcreate(OSDBUILDING,"Main", "" )'' | ^ Description | This function is used to start a new osd block. | OSD_TYPE determine the location and appearance of the OSD background (See list below). The ''Name'' of the OSD is used to identify its components : See [Responding to OSD Button Presses]. ''Expiry Time'' is optional - if used, it specifies the number of seconds the OSD will appear for before automatically closing. OSD_TYPE can be one of :\\ - OSDWINDOW \\ - OSDBUILDING\\ - OSDPOPUP\\ - OSDBLANK \\ - OSDLOWER\\ - OSDTUTORIAL\\ - OSDNOTIFICATION\\ - OSDSPEC\\ - OSDSPECLOWER \\ - OSDBLANKCENTER \\ - OSDSCRIPTEDBUILDING \\ ''OSDWINDOW'' is used a background window is created 400x300, in the center of the screen. With ''OSDBUILDING'', the OSD is displayed within the region of the building access window. ==== OSDAddItem ==== ^ Parameters | ''OSD_ITEMTYPE'', ''Name'', ''Text'' | ^ Example | ''OsdAddItem( IMAGE, "", "http://myweb.com/image.jpg" )'' | ^ Description | This is a basic function to add an OSD item to the screen. Each item appears below any previously added items. If you want more control of the layout of your OSD then you would use the OSDAddAt command.. | ==== OSDAddAt ==== Parameters : ''OSD_ITEMTYPE'', X, Y, W, H, ''Name'', ''Title'' \\ Example : ''OsdAddAt(OSDBUTTON, 100, 100, 200, 20, "Option1", "Press me" )'' \\ Description : ==== OSDSet ==== ^ Parameters | ''Flag to set'' | ^ Example | ''osdset( "BlockEscape" )'' | ^ Description | This function is used to set a specific OSD behaviour flag. | Currently, "BlockEscape" is the only valid flag and is used to remove the user control to press escape to close an osd screen. //Example// osdcreate( OSDLOWER, "Help", "Help Guide" ) osdset( "BlockEscape" ) osdaddat( TEXT, 100,0, 400, 100, "", "Welcome to my world, press the button to start" ) osdaddat( BUTTON, 200, 70, 200, 35, "", "Start Game" ) osdactivate() ==== OSDActivate ==== Parameters : None Example : ''OsdActivate()'' \\ Description : Triggers the actual transmission of the OSD layout to the client. ===== ScriptedOSD Item Types ===== ==== Text Types ==== Text can be added to your OSD using various text types, that specify the size, alignment and colour of the text to be displayed. Valid text types are as follows :\\ * TEXT * BIGTEXT * FADEDTEXT * SMALLTEXT * TEXTRIGHT * SMALLTEXTRIGHT * BIGTEXTRIGHT * BOLDTEXT * SMALLFADEDTEXT (or FADEDSMALLTEXT) * BIGFADEDTEXT * WARNINGTEXT * BIGWARNINGTEXT * TEXT2 * FADEDTEXT2 * TEXT2RIGHT * GIANTTEXT * GIANTTEXTRIGHT * GIANTFADEDTEXT * BLINKINGWARNINGTEXT * BULLET ==== Button Types ==== * BUTTON * EXITBUTTON * FADEDBUTTON * APPLYBUTTON * APPLYEXITBUTTON ==== Image Types ==== * IMAGE * FADEDIMAGE * EXITIMAGE ==== Graphic Types ==== * RECT * LINE * BOX ==== User Input Types ==== * TEXTENTRY * VALUE * CASHVALUE ==== Display Control Types ==== * HTTPSET * BUTTONMINWIDTH * MINHEIGHT ==== Other OSD Types ==== * LISTBUTTON * DATE