CatchEvent OnMSO( $userName, $text ) # Player event $idxOfFirtsSpace = indexOf( $text, " "); IF( $idxOfFirtsSpace == -1 ) THEN $command = $text; $argv = ""; ELSE $command = subStr( $text,0,$idxOfFirtsSpace ); $argv = trim( subStr( $text,$idxOfFirtsSpace ) ); ENDIF SWITCH( $command ) CASE "!adminchat": CASE "!adchat": AdminChatWindow(0,0); BREAK; ENDSWITCH EndCatchEvent CatchEvent OnLapperStart() OnLapperStart_AdminChat(); EndCatchEvent Sub OnLapperStart_AdminChat() ### Declare global variables ### GlobalVar $message_id_adchat; ### End ### ### Load stored values and give them a default setting if no stored value has been found ### $message_id_adchat = ToNum( GetStoredValue( "MESSAGE_ID_ADCHAT" ) ); IF ($message_id_adchat == "") THEN $message_id_adchat=0; ENDIF ### End ### EndSub Sub AdminChatWindow($keyflags,$id) UserGroupFromFile( "AdminChat", "../Databases/AdminChat.txt" ); # Load File #Design openPrivButton( "bgd",60,50,80,64,1,-1,16,""); openPrivButton( "Title",61,51,78,5,1,-1,32,"^3AdminChat Interface"); openPrivButton( "Close",134,51,5,5,1,-1,128,"^1X",CloseAdminChat); openPrivButton( "Chatbgd",61,56,75,50,1,-1,32,""); openPrivButton( "Scroll",136,61,3,40,1,-1,16,""); openPrivTextButton( "WriteMessage",61,106,78,7,1,32,"^0Write Message","^2Write Message",50,WriteAdminMessage); LoadAdminChatFromFile(0,0);#Load messages from file. EndSub Sub WriteAdminMessage( $KeyFlags,$argv ) $ListAdminChat = GetListOfUsersGroup(AdminChat); MoveUserToGroup( "AdminChat", $message_id_adchat."|".getLapperVar( "ShortDate" )."-".getLapperVar( "ShortTime" ) ."|". GetCurrentPlayerVar( "UserName" )."|".$argv); UserGroupToFile( "AdminChat", "../Databases/AdminChat.txt" ); ### Raise MessageID by 1 and store it into the database ### $message_id_adchat=$message_id_adchat+1; SetStoredValue( "MESSAGE_ID_ADCHAT", ToNum( $message_id_adchat ) ); ### End ### LoadAdminChatFromFile(0,0); #Load messages from file. EndSub Sub CloseAdminChat($keyflags,$id) closePrivButton("bgd&Title&Close&Chatbgd&WriteMessage&ScrollUp&Scroll&ScrollDown"); closePrivButton($CloseAdminChat); EndSub Sub LoadAdminChatFromFile($keyflags,$id) $ListAdminChat = GetListOfUsersGroup(AdminChat); $MaxOfMessages = arrayCount($ListAdminChat)-1; # Lower count by one, to exclude empty line $CloseAdminChat = "&Close"; $HT = 57; #Height of first message #$Record[0] = MessageID; #$Record[1] = Date/Time; #$Record[2] = Username; #$Record[3] = Message; FOR ( $ShowMessage=0; $ShowMessage<$MaxOfMessages; $ShowMessage=$ShowMessage+1 ) #Last Message on bottomline. $Record = SplitToArray($ListAdminChat[$ShowMessage], "|"); openPrivButton( "aploglist_".$ShowMessage,62,$HT,74,4,4,-1,64,"^6".$Record[1].": ^7".$Record[2]." >>> ^6".$Record[3]); #Show Message $HT = $HT+4; #ButtonHeight+4 $CloseAdminChat = $CloseAdminChat ."&aploglist_".$ShowMessage; ENDFOR EndSub