Результаты поиска
| |
Yraiv | Дата: Понедельник, 18 Мая 2020, 08:52 | Сообщение # 1 | Тема: Как сделать удаление префаба, когда создаётся другой? |
был не раз
Сейчас нет на сайте
| есть код, но он как-то не так работает. Создаётся два префаба. Мне нужно, чтоб был список кнопок на сцене, у каждой кнопки свой номер и она спавнит своего моба из массива префабов. Всё работает, но мобы не удаляются, когда нажимаю на выбор другого, необходимо чтоб лишь 1 мог быть на сцене
Код using System.Collections; using System.Collections.Generic; using UnityEngine;
public class BuyMobs : MonoBehaviour { public GameObject[] Mobs; public GameObject Canvas; public int MobsNomer; private GameObject cyrGameObject;
public void OnMouseDown() { if (cyrGameObject != null) Destroy(cyrGameObject); cyrGameObject = Instantiate(Mobs[MobsNomer], new Vector3(125, 310, 0), Quaternion.identity); cyrGameObject.transform.SetParent(Canvas.transform); }
}
|
|
| |
Yraiv | Дата: Воскресенье, 17 Мая 2020, 10:19 | Сообщение # 2 | Тема: Как заменить один префаб на другой? |
был не раз
Сейчас нет на сайте
| кинул
|
|
| |
Yraiv | Дата: Воскресенье, 17 Мая 2020, 04:45 | Сообщение # 3 | Тема: Как заменить один префаб на другой? |
был не раз
Сейчас нет на сайте
| Я это к кнопке хотел привязать, но что-то ругается, когда нажми на кнопку, чтоб создать объект
MissingReferenceException: The variable Mobs of BuyMobs doesn't exist anymore. You probably need to reassign the Mobs variable of the 'BuyMobs' script in the inspector.
|
|
| |
Yraiv | Дата: Суббота, 16 Мая 2020, 10:10 | Сообщение # 4 | Тема: Как заменить один префаб на другой? |
был не раз
Сейчас нет на сайте
| В моей игре есть список разных объектов. У каждого есть описание с кнопкой, по нажатию на которую, должен загружаться префаб, а предыдущий удаляться. Например. На сцене есть объект. Я открыл меню и выбрал в нём другой объект, первый объект должен удалиться, а второй встать на его место и точно также меняться должны другие, я думал сделать так :
Код using System.Collections; using System.Collections.Generic; using UnityEngine;
public class BuyMobs : MonoBehaviour { public GameObject[] Mobs; public int MobsNomer;
public void OnMouseDown() { Instantiate(Mobs[MobsNomer], Mobs[MobsNomer].transform.position, Quaternion.identity); }
}
Но как-то не работает. Хотел этим способом закинуть префабы в массив, чтоб потом выбирать, какие нужно загружать, но это какой-то не правильный путь видимо
|
|
| |
Yraiv | Дата: Вторник, 14 Апреля 2020, 10:25 | Сообщение # 5 | Тема: Как сделать шаблон для улучшений ? |
был не раз
Сейчас нет на сайте
| какие уроки/курсы посоветовать можешь?
|
|
| |
Yraiv | Дата: Вторник, 14 Апреля 2020, 10:17 | Сообщение # 6 | Тема: Как сделать шаблон для улучшений ? |
был не раз
Сейчас нет на сайте
| Поделись примером, а то из того, что проходил не особо помогло
|
|
| |
Yraiv | Дата: Вторник, 14 Апреля 2020, 08:59 | Сообщение # 7 | Тема: Как сделать шаблон для улучшений ? |
был не раз
Сейчас нет на сайте
| Мне необходимо сделать шаблон, который я смогу в будущем менять. Пример шаблона: Есть кнопка UP1 в ней есть 1 кнопка и 2 текста. Вложенная кнопка отвечает за покупку улучшения. первый и второй текст - уровень и стоимость улучшения. Я создал скрипт для сохранения изменений, тип, каждый новый уровень и стоимость сохраняется, а также даёт какой-то бонус игроку и все эти данные я сохраняю под ключом. Но если мне нужно сделать допустим up2 и тд, то как быть? Сохранение идёт по ключу, это каждый раз разный ключ прописывать чтоль?
Вот скрипт покупки со всеми сохранениями: [code] using System.Collections; using System.Collections.Generic; using UnityEngine;
public class LoadMoney : MonoBehaviour {
public int money; // деньги public int cost; // стоимость public int bonus; // основной бонус public int dopbonus; // доп бонус public int lvl; // уровень
void Start() { Load(); LoadLvl(); LoadCost(); LoadBonus(); }
public void Load() // получил доступ к деньгам {
string key = "MyChet"; this.money = PlayerPrefs.GetInt(key);
}
public void LoadBonus () // получил доступ к бонусу
{
string key = "bonus"; this.bonus = PlayerPrefs.GetInt(key);
}
public void LoadLvl() // загрузка уровня {
string key = "lvl"; this.lvl = PlayerPrefs.GetInt(key);
}
public void LoadCost() // загрузка стоимости { string key = "cost"; this.cost = PlayerPrefs.GetInt(key);
}
public void Save() // сохранение стоимости { string key = "MyChet"; PlayerPrefs.SetInt(key, money); PlayerPrefs.Save(); }
public void SaveLvl() // сохранение уровня { string key = "lvl"; PlayerPrefs.SetInt(key, lvl); PlayerPrefs.Save(); }
public void SaveCost() // сохранение стоимости { string key = "cost"; PlayerPrefs.SetInt(key, cost); PlayerPrefs.Save(); }
public void SaveBonus() // сохранение бонуса { string key = "bonus"; PlayerPrefs.SetInt(key, bonus); PlayerPrefs.Save(); }
public void BuyUp() // покупка улучшений {
if (money >= cost) { money = money - cost; bonus = bonus + dopbonus; lvl = lvl + 1; cost = cost + 5; Save(); SaveLvl(); SaveCost(); SaveBonus(); } }
}
|
|
| |
|