普通に関数?というのが分からんのだが。
ジェネリックな関数に処理の大概を逃がしたほうが、というのはそのとおりだろうけど
別にすべての処理を一つの関数でやる必要もまた無いのでは?

public void action(){
movestreight(pos);
curveright(pos);
}

こんな感じでいいと思うのだが。