====== FBDoorDK ====== FBDoorDK is a simple door development library written in FreeBasic. It supports Linux and Windows, and [[doors:dropfiles:doorinfoxdef|DORINFO1.DEF]], [[doors:dropfiles:doorsys|DOOR.SYS]] and [[doors:dropfiles:door32sys|DOOR32.SYS]] drop file formats. ===== Functions ===== ==== DoorKitInit(ByVal dropFile As String) As Integer ==== Call this function first, and pass it the full path and filename of the drop file, currently this must be a DOOR.SYS or DORINFO1.DEF for Linux or DOOR32.SYS for windows. ==== DoorKitGetUserAlias() As String ==== Returns the User's Handle or Alias ==== DoorKitGetFirstName() As String ==== Returns the User's First Name ==== DoorKitGetLastName() As String ==== Returns the User's Last Name ==== DoorKitSendFile(ByVal fileName As String) As Integer ==== Send an ANSI Graphics file. This function is SAUCE aware and will strip any SAUCE tags off. ==== DoorKitPrint(ByVal s as String) As Integer ==== Print a string, the following embedded macros are defined: * `black` - change the foreground to black * `red` - change the foreground to red * `green` - change the foreground to green * `yellow` - change the foreground to yellow * `blue` - change the foreground to blue * `magenta` - change the foreground to magenta * `cyan` - change the foreground to cyan * `white` - change the foreground to white * `bright black` - change the foreground to bright black * `bright red` - change the foreground to bright red * `bright green` - change the foreground to bright green * `bright yellow` - change the foreground to bright yellow * `bright blue` - change the foreground to bright blue * `bright magenta`- change the foreground to bright magenta * `bright cyan` - change the foreground to bright cyan * `bright white` - change the foreground to bright white ==== DoorKitPrintLn(ByVal s as String) as Integer ==== Same as DoorKitPrint but appends a newline sequence. ==== DoorKitClearScreen() as Integer ==== Clears the screen (and Homes the cursor) ==== DoorKitGetLine(ByVal length as Integer) as String ==== Retrieves a string up to a certain length from the user ==== DoorKitGetKey() as String ==== Retrieves a string with a single character in it, without echoing. ==== DoorKitGetLocation() As String ==== Returns the user's location ==== DoorKitGetSysopName() As String ==== Returns the Sysop's name ==== DoorKitGetNode() As Integer ==== Returns the node number ==== DoorKitGetSecLevel() As Integer ==== Returns the user's security level ==== DoorKitGetSecondsLeft() As Integer ==== Returns the number of seconds left the user had when entering the door. ==== DoorKitGotoXY(ByVal x as integer, ByVal y as Integer) as Integer ==== Positions the cursor at x & y coordinates ==== DoorKitExit() as Integer ==== Exits the door, does not return ===== Availability ===== [[https://gitlab.com/apamment/fb-doordk|Git Repository]] To compile: fbc -lib doordk.bas