Yes, I did it last night. But thanks anyway. There was a problem with sorting values by descending
how do it in Lapper.lpr?
Sub SortValues($userName)
$TempNumber = 0;
$Numbers = "3|2|10|45|21|4|5|7|9|11";
$GetNumber = SplitToArray($Numbers,"|");
$ValueCount = arrayCount( $GetNumber );
FOR ($i=0;$i<$ValueCount;$i=$i+1)
FOR ($a=1;$a<$ValueCount;$a=$a+1)
IF ($GetNumber[ToNum($i)] < $GetNumber[ToNum($a)]) THEN
$TempNumber = $GetNumber[ToNum($i)];
$GetNumber[ToNum($i)] = $GetNumber[ToNum($a)];
$GetNumber[ToNum($a)] = $TempNumber;
ENDIF
ENDFOR
ENDFOR
### Display list ###
FOR ($j=0;$j<$ValueCount;$j=$j+1)
privmsg("| ".$j." / ".$GetNumber[ToNum($j)]);
ENDFOR
EndSub
<?php
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 "!sort": #!sort asc or !sort desc
SortValues($argv);
BREAK;
ENDSWITCH
EndCatchEvent
Sub SortValues($TypeSort)
$SaveNumber = 0;
$Numbers = "3|2|10|45|21|4|5|11|1|0|300|276|112";
$GetNumber = SplitToArray($Numbers,"|");
$Count_GetNumber = arrayCount( $GetNumber );
#Add a '0' to the number to create a 2 or 3 digit number
#This will also converts string to Numeric characters
FOR ($i=0;$i<$Count_GetNumber;$i=$i+1)
### Array with values from 0 - 10 ###
IF (ToNum($GetNumber[$i]) < 10) THEN
$GetNumber[$i] = "00".$GetNumber[$i];
ENDIF
### Array with values from 0 - 100 ###
IF ((ToNum($GetNumber[$i]) > 9) && (ToNum($GetNumber[$i]) < 100)) THEN
$GetNumber[$i] = "0".$GetNumber[$i];
ENDIF
ENDFOR
###############
###Ascending###
###############
IF($TypeSort == "asc") THEN
#Sort values of array in Ascending order
FOR ($a=0;$a<$Count_GetNumber;$a=$a+1)
FOR ($i=$a;$i<$Count_GetNumber;$i=$i+1)
IF( $GetNumber[$a] > $GetNumber[$i]) THEN
$SaveNumber = $GetNumber[$i]."";
$GetNumber[$i] = $GetNumber[$a]."";
$GetNumber[$a] = $SaveNumber."";
ENDIF
ENDFOR
ENDFOR
privmsg("^7[Ascending sort]:");
#Display Values
FOR ($i=0;$i<$Count_GetNumber;$i=$i+1)
privmsg("Pos: [".$i."] = ".$GetNumber[$i]);
ENDFOR
ENDIF
################
###Descending###
################
IF($TypeSort == "desc") THEN
#Sort values of array in Descending order
FOR ($a=0;$a<$Count_GetNumber;$a=$a+1)
FOR ($i=$a;$i<$Count_GetNumber;$i=$i+1)
IF( $GetNumber[$a] < $GetNumber[$i]) THEN
$SaveNumber = $GetNumber[$a]."";
$GetNumber[$a] = $GetNumber[$i]."";
$GetNumber[$i] = $SaveNumber."";
ENDIF
ENDFOR
ENDFOR
privmsg("^7[Descending sort]:"); #New line
#Display Values
FOR ($i=0;$i<$Count_GetNumber;$i=$i+1)
privmsg("Pos: [".$i."] = ".$GetNumber[$i]);
ENDFOR
ENDIF
EndSub
?>