BassPiraT92 | Дата: Пятница, 22 Марта 2019, 14:43 | Сообщение # 1 |
участник
Сейчас нет на сайте
| Подскожите как лучше реализовать такой сценарий:
Имеется 2 здания, на них одинаковые скрипты. Имеется игрок - который подходя к зданию запускает коррутину, исчезает, появляется после её выполнения.
При использовании 2 одинаковых скрипта, функция OnMouseDown() работает исключительно только с 1 зданием.
Вот код: Доступно только для пользователей
|
|
| |
ArtemS | Дата: Понедельник, 25 Марта 2019, 09:05 | Сообщение # 2 |
почетный гость
Сейчас нет на сайте
| Код tt.color = new Color(255, 255, 255, 0.1f); yield return new WaitForSeconds(speed); tt.color = new Color(255, 255, 255, 0.2f); yield return new WaitForSeconds(speed); tt.color = new Color(255, 255, 255, 0.3f); yield return new WaitForSeconds(speed); tt.color = new Color(255, 255, 255, 0.4f); yield return new WaitForSeconds(speed); tt.color = new Color(255, 255, 255, 0.5f); yield return new WaitForSeconds(speed); tt.color = new Color(255, 255, 255, 0.6f); yield return new WaitForSeconds(speed); tt.color = new Color(255, 255, 255, 0.7f); yield return new WaitForSeconds(speed); tt.color = new Color(255, 255, 255, 0.8f); yield return new WaitForSeconds(speed); tt.color = new Color(255, 255, 255, 0.9f); yield return new WaitForSeconds(speed); tt.color = new Color(255, 255, 255, 1f); yield return new WaitForSeconds(1f); tt.color = new Color(255, 255, 255, 0.9f); yield return new WaitForSeconds(speed); tt.color = new Color(255, 255, 255, 0.8f); yield return new WaitForSeconds(speed); tt.color = new Color(255, 255, 255, 0.7f); yield return new WaitForSeconds(speed); tt.color = new Color(255, 255, 255, 0.6f); yield return new WaitForSeconds(speed); tt.color = new Color(255, 255, 255, 0.5f); yield return new WaitForSeconds(speed); tt.color = new Color(255, 255, 255, 0.4f); yield return new WaitForSeconds(speed); tt.color = new Color(255, 255, 255, 0.3f); yield return new WaitForSeconds(speed); tt.color = new Color(255, 255, 255, 0.2f); yield return new WaitForSeconds(speed); tt.color = new Color(255, 255, 255, 0.1f); yield return new WaitForSeconds(speed); tt.color = new Color(255, 255, 255, 0f); PC.ToolTip.SetActive(false);
почему бы это не сделать в цикле где некоему float alphaValue каждое возвращение добавляется 0,1, а потом когда оно равно 1, то отнимается 0,1 ? либо Mathf.Lerp
Код StartCoroutine(ToolTipShow("+" + Money)); StartCoroutine(OutFack(SecondToRestart));
тут не могу понять что у тебя...ты как бы начинаешь грабить, а в соседнем потоке говоришь что не можешь грабить ?
Код if (PC.Otm >= NeedOtm)
это условие точно соблюдается ?
хуяк, хуяк и в продакшн
Сообщение отредактировал ArtemS - Понедельник, 25 Марта 2019, 09:12 |
|
| |
drcrack | Дата: Понедельник, 25 Марта 2019, 09:26 | Сообщение # 3 |
старожил
Сейчас нет на сайте
| респект ArtemS которому удалось хоть что-то понять в этом скрипте я же буду более лаконичен код — полное говно, в нем плохо абсолютно все, я даже не знаю с чего начать его исправлять его лучше просто удалить и не открывать юнити до прочтения как минимум 3 книжек по основам программирования
|
|
| |
BassPiraT92 | Дата: Вторник, 26 Марта 2019, 16:14 | Сообщение # 4 |
участник
Сейчас нет на сайте
| drcrack, так и сделал) Добавлено (26 Марта 2019, 16:15) --------------------------------------------- ArtemS,
Код if (PC.Otm >= NeedOtm)
Если в player controller отмычек больше либо равно нужному для ограбления.
|
|
| |
ArtemS | Дата: Вторник, 26 Марта 2019, 20:10 | Сообщение # 5 |
почетный гость
Сейчас нет на сайте
| BassPiraT92, это я понял. возможно ли так, что это условие не срабатывает на 2ом здании, поэтому оно и не работает
хуяк, хуяк и в продакшн
|
|
| |