to get a function called with 5 parameters, and only testing if the second is on rank 9?
First, a matter of vocabulary. Function definitions have parameters, but function calls have arguments. An argument is a value passed to one of the parameters of a function. This will test whether the fourth argument from the right is a coordinate on rank 9, which would be the tenth rank. As long as you include five arguments in your function call, it will be the second argument from the left. If you had only four arguments, it would test the first one from the left. If you had three or less, that parameter would not be assigned a value. I know it's a bit counter-intuitive, but it's what comes from evaluating functions in reverse order, as Game Courier does.
First, a matter of vocabulary. Function definitions have parameters, but function calls have arguments. An argument is a value passed to one of the parameters of a function. This will test whether the fourth argument from the right is a coordinate on rank 9, which would be the tenth rank. As long as you include five arguments in your function call, it will be the second argument from the left. If you had only four arguments, it would test the first one from the left. If you had three or less, that parameter would not be assigned a value. I know it's a bit counter-intuitive, but it's what comes from evaluating functions in reverse order, as Game Courier does.