void setAngle(float angle) {
angle = angle > LIMITMAX ? LIMITMAX : angle < LIMITMIN ? LIMITMIN : angle; // ограничение угла в пределах [LIMITMIN; LIMITMAX]
transform.rotation.z = angle; //(или что-то вроде setRotation, но точно не rotate, не помню, как точно методы называются)
}
если нужно, чтобы стрелка поворачивалась плавнее, то можно писать:
float beta = 0.9; //чем ближе к 1, тем медленнее вращается
transform.rotation.z = (transform.rotation.z) * (1-beta) + angle * beta; //опять же, возможно, по стандарту нельзя напрямую устанавливать значение поворота, так что потребуется set-метод.