Четверг, 18 Апреля 2024, 20:53

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Форум игроделов » Движки для разработки игр и сложные системы разработки » Unity » Как чтобы при создании объекта не изменялось имя?
Как чтобы при создании объекта не изменялось имя?
alexsilentДата: Четверг, 12 Февраля 2015, 05:15 | Сообщение # 1
почти ветеран
Сейчас нет на сайте
Приветствую друзья! Хотел узнать, есть ли способ, чтобы при создании объекта не изменялось имя?
Каждый раз, что ли после создания делать ренейм объекта? Хотелось бы чтобы не добавлялась эта надпись
+ (clone) она очень мешает, у меня инвентарь завязан на имени объекта.
Может где-то можно убрать это автоматическое переименование объекта после Instantiate?


Сообщение отредактировал alexsilent - Четверг, 12 Февраля 2015, 05:15
allodsДата: Четверг, 12 Февраля 2015, 15:07 | Сообщение # 2
почти ветеран
Сейчас нет на сайте
gameObject.name = "нужное имя"
robertonoДата: Четверг, 12 Февраля 2015, 15:35 | Сообщение # 3
Чокнутый Кот
Сейчас нет на сайте
alexsilent, вроде отключить нельзя, но можно делать так: (предположим gameobject это ссылка на Instantiate)
gameobject.name = gameobject.name.Replace("(Clone)",""); //Так делаю я
Точнее так приходится делать, потому что по другому никак.
lakorisДата: Вторник, 17 Февраля 2015, 19:58 | Сообщение # 4
постоянный участник
Сейчас нет на сайте
Ну, допустим, если мы заранее знаем, какое имя нам нужно - можно перед Instantiate сохранить его в переменную, а потом присвоить созданному объекту
robertonoДата: Воскресенье, 01 Марта 2015, 23:36 | Сообщение # 5
Чокнутый Кот
Сейчас нет на сайте
А C# не позволяет при получении переменной сделать с ней какое то действие и при этом вернуть её?

Например
Код

var spawn = Instantiate(spawnPrefab) as GameObject .name.Replace ("Clone","");

но что бы в spawn вернулась именно переменная от Instantiate а не от Replace (там string вернется).
Хотя даже такой вид кода не скомпилируется.

Можно конечно тупо на одну строку засунуть:
Код

GameObject onPart = (GameObject)Instantiate((GameObject)Resources.Load("GreenAreaPrefabs/On_area_default")); onPart.name = onPart.name.Replace("(Clone)", "");


Но получается довольно длинно..
Форум игроделов » Движки для разработки игр и сложные системы разработки » Unity » Как чтобы при создании объекта не изменялось имя?
  • Страница 1 из 1
  • 1
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг