上でmovetimeの質問した者ですが、>>707様のやり方でもなぜかmovetimeが
一瞬で0になって思った事ができませんでした。
>>707って意図した動作だと、1秒毎にmovetimeが1減っていくはずですよね?

逆にmovetimeを増やしていく方法をやってみると(そこそこ)上手くいきました

function Update () {
 facing = Random.Range(1,5); //移動方向をランダムで決定(1〜4を上下左右に割り当て)

 if (facing == 1 && timer > 1 && movetime < 20)
 {
  rigidbody.velocity.x = movespeed;
  rigidbody.velocity.y = 0;
  movetime += 1;
  timer = 0;
 }
}
正直、理解できてないですけどとりあえず、このifをfacing毎に4つ置けば
RPGの街人のランダムに上下左右に動かす、という目的は(そこそこ)達成できました
理解はできてないですけど