#Paging CatchEvent OnLapperStart() GlobalVar $ii; EndCatchEvent 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 "!page": Setplayervar($userName,"Page",1); Paging($userName); BREAK; ENDSWITCH EndCatchEvent Sub Paging($UserName) $Filename = "ehliyet"; $Folder = "C:\Users\Administrator\Desktop\siteli insim\bin\default"; $Extension = ".txt"; $LinesofFile = ReadFile($Filename,$Folder,$Extension); #Get Information from the file. $NrOfLines = $LinesofFile["NumberOfLines"]; $FileCreationDate = $LinesofFile["TimeOfCreation"]; $FileModificationDate = $LinesofFile["TimeOfModification"]; $FileSize = $LinesofFile["FileSize"]; $MaxNrOfResults = 40; $BtnHgt = 61; $BtnWdt = 70; $Counter = 0; $MaxResultsOnPage = 15; #Close all buttons that contains "Page_" #Just to prevent overlapping buttons with different button ID's (actually this shouldn't happen within this code) CloseButtonRegex ($username, "Page_*"); $StartNrOfResult = (Getplayervar($username,"Page") * $MaxResultsOnPage) - $MaxResultsOnPage; openPrivButton( "Page_Prev",$BtnWdt,$BtnHgt+60,15,4,5,-1,32, "^7Prev Page",PrevPage); openPrivTextButton( "Page_Sel",$BtnWdt+15,$BtnHgt+60,10,4,5,32,"Select page 1 - 8","^7Page ".Getplayervar($UserName,"Page"),1,SelectPage); openPrivButton( "Page_Next",$BtnWdt+25,$BtnHgt+60,15,4,5,-1,32, "^7Next Page",NextPage); FOR( $i = 0; $i <= ToNum($MaxNrOfResults); $i = $i + 1) #Show 15 results on screen #Start result number $StartNrOfResult and #It stops showing results when $counter hits the limit or reached MaxNumberofResult IF(($i >= ToNum($StartNrOfResult))&&(ToNum($Counter) < $MaxResultsOnPage)) THEN $ii = $ii + 1; $line = $LinesofFile[$ii,"Line"]; openPrivButton( "Page_Button_".$Counter,$BtnWdt,$BtnHgt,5,4,5,-1,16, "".$i); openPrivButton( "Message_Button_".$Counter,$BtnWdt+5,$BtnHgt,20,4,5,-1,16, "".$line); #Increase the buttonheight by 4 for each button. $BtnHgt = $BtnHgt + 4; $Counter = $Counter + 1; ENDIF ENDFOR EndSub Sub Paging2($UserName) $Filename = "ehliyet"; $Folder = "C:\Users\Administrator\Desktop\siteli insim\bin\default"; $Extension = ".txt"; $LinesofFile = ReadFile($Filename,$Folder,$Extension); #Get Information from the file. $NrOfLines = $LinesofFile["NumberOfLines"]; $FileCreationDate = $LinesofFile["TimeOfCreation"]; $FileModificationDate = $LinesofFile["TimeOfModification"]; $FileSize = $LinesofFile["FileSize"]; $MaxNrOfResults = 40; $BtnHgt = 61; $BtnWdt = 70; $Counter = 0; $MaxResultsOnPage = 15; #Close all buttons that contains "Page_" #Just to prevent overlapping buttons with different button ID's (actually this shouldn't happen within this code) CloseButtonRegex ($username, "Page_*"); $StartNrOfResult = (Getplayervar($username,"Page") * $MaxResultsOnPage) - $MaxResultsOnPage; openPrivButton( "Page_Prev",$BtnWdt,$BtnHgt+60,15,4,5,-1,32, "^7Prev Page",PrevPage); openPrivTextButton( "Page_Sel",$BtnWdt+15,$BtnHgt+60,10,4,5,32,"Select page 1 - 8","^7Page ".Getplayervar($UserName,"Page"),1,SelectPage); openPrivButton( "Page_Next",$BtnWdt+25,$BtnHgt+60,15,4,5,-1,32, "^7Next Page",NextPage); FOR( $i = 0; $i <= ToNum($MaxNrOfResults); $i = $i + 1) #Show 15 results on screen #Start result number $StartNrOfResult and #It stops showing results when $counter hits the limit or reached MaxNumberofResult IF(($i >= ToNum($StartNrOfResult))&&(ToNum($Counter) < $MaxResultsOnPage)) THEN $ii = $ii - 1; $line = $LinesofFile[$ii,"Line"]; openPrivButton( "Page_Button_".$Counter,$BtnWdt,$BtnHgt,5,4,5,-1,16, "".$i); openPrivButton( "Message_Button_".$Counter,$BtnWdt+5,$BtnHgt,20,4,5,-1,16, "".$line); #Increase the buttonheight by 4 for each button. $BtnHgt = $BtnHgt + 4; $Counter = $Counter + 1; ENDIF ENDFOR EndSub #User Clicked on Next Page Button Sub NextPage($keyflags,$id) $UserName = GetCurrentPlayerVar("UserName"); $CurrPage = Getplayervar($UserName,"Page"); #Increase pagenumber by 1. And call 'paging' sub Setplayervar($UserName,"Page",$CurrPage + 1); Paging($UserName); EndSub #User Clicked on Prev Page Button Sub PrevPage($keyflags,$id) $UserName = GetCurrentPlayerVar("UserName"); $CurrPage = Getplayervar($UserName,"Page"); # Reset Playervar when pagenumber is below 1 # Otherwise decrease pagenumber by 1. # And call 'paging' sub IF($CurrPage <= 1) THEN Setplayervar($UserName,"Page",1); ELSE Setplayervar($UserName,"Page",$CurrPage - 1); ENDIF Paging2($UserName); EndSub #User Clicked on select Page Button Sub SelectPage($id,$argv) $UserName = GetCurrentPlayerVar("UserName"); $CurrPage = Getplayervar($UserName,"Page"); #Check if selected page is a numeric value. IF(IsNum($argv) == 1) THEN Setplayervar($UserName,"Page",$argv); Paging($UserName); ENDIF EndSub Sub closeButtonRegex ( $userName, $exp ) $lob = getListOfPlayerButtons( $userName ); FOREACH ( $de in $lob ) $nameOfButton = $de["value"]; IF ( isRegexMatch( $exp, $nameOfButton ) == 1 ) THEN closeButton ( $userName, $nameOfButton ); ENDIF ENDFOREACH EndSub