InsideDarkWeb.com

Отталкивание объекта от персонажа (Unity)

У меня есть сцена, в которой есть несколько одинаковых предметов и персонаж.

Цель сделать так, чтобы персонаж подходил к объекту, игрок нажимал кнопку F, и объект сдвигался на определенное расстояние, а персонаж оставался бы на месте.

Предметы создаю через Prefab. На каждом экземпляре висит вот такой скрипт

private static float Speed = -0.8f; 
private static float posStart, posFinish, currentPos;
private static bool pressF;

void Update () {

        posFinish = posStart + 0.8f;
        currentPos = transform.position.y;

        if(pressF==true)
        {
            transform.Translate(0, Speed*Time.deltaTime, 0);

        }

        if (currentPos >= posFinish)
        {
            transform.Translate(0, 0, 0);
            pressF=false;
        }

        if (GetComponent<ObjectScript>().checkObject == true&&Input.GetKeyDown(KeyCode.F))
        {
            pressF=true;
            posStart = transform.position.y;
        }

    }

(checkObject – переменная, с помощью которой можно узнать, что персонаж подошел к объекту, работает через OnCollisionEnter2D)

Но с таким кодом двигаются сразу все экземпляры префаба. Как я понимаю, из-за переменной pressF. Но как это можно реализовать по-другому или как доработать этот код?

Первой мыслью было перенести все вот сюда

if (GetComponent<ObjectScript>().checkObject == true&&Input.GetKeyDown(KeyCode.F))
        {
           вот сюда
        }

Но объект отдаляется от персонажа, и в какой-то момент код перестает работать

Stack Overflow на русском Asked by Ch_sh on November 15, 2021

1 Answers

One Answer

Вопрос решен, переменная pressF не должна быть статичной

Answered by Ch_sh on November 15, 2021

Add your own answers!

Related Questions

Проблема с дискорд ботом

0  Asked on August 27, 2020 by jaboid

     

Не загружается parrot os

0  Asked on August 16, 2020 by darkhackergs

     

Классы. Калькулятор

3  Asked on August 13, 2020 by krumlyakov

   

скрыть/показать текст с помощью jquery

1  Asked on August 13, 2020 by andrey-sindeev

 

Не могу понять почему не работает echo

1  Asked on August 12, 2020 by java-js-html-css

 

Не работает Raycast

1  Asked on August 10, 2020 by yukio-ito

   

Ask a Question

Get help from others!

© 2021 InsideDarkWeb.com. All rights reserved.