Про класс PlayerPrefs уже читали?
Советую - пишите ваш статус в какой нибудь класс ваш, потом его перегоняете в json, json потом сохраняете через PlayerPrefs. Ну и обратный процесс аналогично...
Нет такого продукта - Unity2d. И на стадии обучения практически нет разницы в том, что вы разрабатываете - 2d или 3d игру.
Поэтому берите любые уроки. Можете разве что фильтрануть по итоговому проекту.
Гуглить "соотношения сторон в прямоугольном треугольнике".
Обычно такую задачу решают не через координаты точек, а через длины отрезков, но одно в другое легко переводится.
Как сделать что то - НАПИСАТЬ КОД.
В юнити нет готовых инструментов для вашего кейса. Так что:
- или пишем код
- или ищем код в assetstore
- или заказываем код за оплату.
Не люблю такие вопросы, ну ладно..
1) Вам нужно определиться с платформой. В принципе для обоих движков набор +-одинаков, но есть тенденция, что под мобилки - юнити, под пк/консоли - анреал
2) Блюпринты - для прототипирования. Для нормального перфоманса их обычно потом переписывают в нейтив код
3) 2 человека для мултиплеерной РПГ? Уже всю ролевую систему просчитали? Ну это собственно я к чему - если и взлетит, то маловероятно что будет конкурентной. Начните с чего попроще, а то выглядит как троллинг.
Ну потому что во вкладке Scene рендерит другая камера с фиг пойми какими настройками. А в Game рендерит ваша камера с вашими же настройками.
Как минимум видно, что вы на разном расстоянии от объекта этих окнах - это уже может быть причиной.
Если прямо отвечать на вопрос - никак.
OnCollisionStay2D вызывается для того объекта, на котором висит скрипт его содержащий. Так же как и другие функции MonoBehaviour - Update, Awake и прочее.
Вы или чего то не дописали, или что, но.
Сразу есть очевидная проблема - newTimer никогда не будет равен нулю.
Вообще строгое сравнение float - это плохо. Надо сраванивать по модулю с учетом погрешности.
Но конкретно в вашем случае ошибка больше логическая.
Допусти newTimer = 1 секунда. Time.deltaTime - величина непостоянная - вероятность что за например 10 ферймов (а апдейт вызывается каждый фрейм) сумма deltaTime будет ИМЕННО СТРОГО одна секунда - ну практически ноль.
Так что вам нужно нестрогое условие типа newTimer <= 0;