Не могу переместить объект по оси Y

Создал скрипт, в котором в зависимости от очков игрока меняется MeshFilter модельки (был куб, стала сфера, в таком стиле). Но для корректного расположения нужно поменять скейл и положение по оси Y объекта, когда сменится меш. Тут и проблема: скейл меняется, а положение нет, причем по осям X и Z положение можно сменить, а именно по Y -- нет.

Вот метод смены мешей

void ChangeMesh(int i)
{
    switch (i)
    {
        case 0:
            MeshFil.mesh = meshs[i];
            Trans.localPosition = new Vector3(0, 2f, -4.5f);
            Trans.localScale = new Vector3(1,1,1);

            break;
        case 1:
            MeshFil.mesh = meshs[i];
            Trans.localPosition = new Vector3(0, 4f, -3.5f);
            Trans.localScale = new Vector3(0.6f, 0.6f, 0.6f);

Старт и апдейт

private void Start()
{
    MeshFil = player.GetComponent<MeshFilter>();
    Trans = player.GetComponent<Transform>();
    meshs[0] = MeshFil.mesh;
}

private void FixedUpdate()
{
    MoveHoriz(val);
    if (MEtaStatic.StaticScore == 1 && CurrentModel == 0)
    {
        ChangeMesh(1);
    }
    if (MEtaStatic.StaticScore == 4 && CurrentModel == 1)
    {
        ChangeMesh(0);
    }
}

Ответы (0 шт):