const DateMask = "yyyy-mm-dd" const TimeMask = "hh:mm" const User_Log = "Wonder.LOG" const User_Data = "Wonder.DAT" sub Make_New_User ( Alias as string, byval User_Data as string ) //////////////////////////////////////////////////////////////////////// ? "Hello " User.Name"." do ? "What would you like your alias to be? "; input Alias Color 12 ? Alias; Color 14 loop until InputYesNo ( " Are you sure? [Y/n] ", true ) open User_Data for append as #1 ? #1, FormatNumber (User.UserID, "@########"); " "; ? #1, Alias close #1 end sub sub Get_Alias ( Alias as string, byval User_Data as string ) //////////////////////////////////////////////////////// dim Line as string //////////////////////////////////////////////////////// Alias = "" if Exists (User_Data) then open User_Data for input as #1 do while not EOF ( 1 ) input #1, Line if User.UserID = Val ( Left ( Line, 9 ) ) then Alias = Mid ( Line, 11 ) ? "Hello "; Alias; "." exit do end if loop close (1) if Alias = "" then Make_New_User ( Alias, User_Data ) end if else Make_New_User ( Alias, User_Data ) end if end sub sub Log_User ( Alias as string ) ////////////////////////////////////////////////////// dim TodayNow as DateTime ////////////////////////////////////////////////////// CurrentDateTime(TodayNow) ? "Date: "; FormatDate(TodayNow.D, DateMask); ? " Time: "; FormatTime(TodayNow.T, TimeMask) open User_Log for append as #1 ? #1, FormatDate(TodayNow.D, DateMask); " "; ? #1, FormatTime(TodayNow.T, TimeMask); " "; ? #1, FormatNumber (User.UserID, "@########"); " "; ? #1, Alias close #1 end sub sub Show_Visitors_List /////////////////////////////////////////////////////// ? "Visitors List" if ReadBackOpen (User_Log) then while not ReadBackTOF ? ReadBackNext wend ReadBackClose else ? "Didn't work" WaitEnter end if end sub sub Begin_Game ( Alias as string ) /////////////////////////////////////////////////////// ? "You are entering"; color 12 ? " Wonderland." color 14 end sub sub Menu_Main ( Alias as string ) /////////////////////////////////////////////////////// dim choice as string*1 dim Default as string*1 /////////////////////////////////////////////////////// do cls ? "Main Menu" color 12 ? "(S)how Visitors" ? "(G)o Down Rabbit Hole" ? "(Q)uit" ? color 14 Default = "G" ? "Your choice " Alias"? ["; Default; "]: "; input choice if choice = "" then choice = Default end if select case ucase (choice) case "S" Show_Visitors_List case "Q" exit sub case "G" Begin_Game ( Alias ) WaitEnter case else beep end select loop end sub sub Start /////////////////////////////////////////////////////// dim Alias as string /////////////////////////////////////////////////////// cls ? "Wonderland" ? Get_Alias ( Alias, User_Data ) Log_User ( Alias ) Menu_Main ( Alias ) ? "Goodbye!" WaitEnter end sub /////////////////////////////////////////////////////// /////////////////////////////////////////////////////// Start