Hope I am not too late.
for(set .@i,6; .@i < getargcount() && !.@C; set .@i, .@i + 2 ){
if ((getarg(.@i + 1,0) + MineMaster * (.@i - 5) / 7) > rand(10000)) {
getitem getarg(.@i,7049),1;
set .@C,1;
}
}
Remove the - 6 from the for loop and it work. The reason is that is that it will stop at max value - 6, which will remove the last 6 arguments which then you will only receive stone all the time.