Воскресенье, 22 Декабря 2024, 09:55

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

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Проблема с массивом
Timujin61Дата: Среда, 26 Февраля 2014, 19:23 | Сообщение # 1
участник
Сейчас нет на сайте
Дано:
Код

public GameObject[] items = new GameObject[41];
public GameObject prize;
public bool isDone;

Задача: добавлять в массив items по одному объекту prize каждый раз, когда isDone = true.
P.s. не надо сразу меня гнать в гугл и курить маны,задачу я уже пытался решить, но у меня получилось, что объект prize добавляется в массив только один раз, поэтому я решил обратиться к вашему форуму.
Помогите пожалуйста, буду благодарен за любую помощь:)


Разрабатываю зов крови:з
FenДата: Среда, 26 Февраля 2014, 19:38 | Сообщение # 2
был не раз
Сейчас нет на сайте
Код
private int i = 0;
void Update () {           
       if(isDone)
       {       
              items[i] = prize;
              isDone = false;
              i++;
       };
}

Цитата
"Гильдия программистов На GCUP"

smile


Сообщение отредактировал Fen - Среда, 26 Февраля 2014, 19:54
Timujin61Дата: Среда, 26 Февраля 2014, 19:45 | Сообщение # 3
участник
Сейчас нет на сайте
Fen, кажется, что с этим кодом что-то не так, но сейчас заценим biggrin

Добавлено (26.02.2014, 19:45)
---------------------------------------------

Цитата Fen ()
continue

точно, совсем забыл про этот оператор, большое спасибо:)


Разрабатываю зов крови:з
robertonoДата: Среда, 26 Февраля 2014, 19:46 | Сообщение # 4
Чокнутый Кот
Сейчас нет на сайте
Timujin61, смотря как ты добавляешь массив. Когда то я тоже с этим мучался пока не открыл для себя другой способ - списки :
List<GameObject> list = new List<GameObject> ();

Только в начале скрипта нужно импортировать библиотеку
using System.Collections.Generic;

Добавлять - проще простого!
list.Add(твойобъект);
Просто Add и всё.
Так же можно Remove - последний
RemoveAt - с конкретным индексом
и т.д.
Очень просто и понятно) Думаю это и будет решением твоего вопроса
Timujin61Дата: Среда, 26 Февраля 2014, 19:57 | Сообщение # 5
участник
Сейчас нет на сайте
robertono, знаю эту штуку, достаточно удобная как я помню, просто меня бомбануло сделать всё по-старинке, а так спасибо за дельный совет:)

Разрабатываю зов крови:з
NEBRДата: Среда, 26 Февраля 2014, 20:34 | Сообщение # 6
почти ветеран
Сейчас нет на сайте
По старинке еще и более оптимизированный вариант )
Лист самый прожорливый массив, если игра на мобилки, рекомендую обычный статичный array[]


King Size #Gamiron12
Storm54Дата: Среда, 26 Февраля 2014, 23:13 | Сообщение # 7
постоянный участник
Сейчас нет на сайте
Ну, если добавлять/удалять элементы из листа не каждый кадр, то даже на мобильных платформах все вполне нормально. К тому же скорость доступа к элементам листа практически такая же, как и у обычного массива.

Сообщение отредактировал Storm54 - Среда, 26 Февраля 2014, 23:13
Timujin61Дата: Четверг, 27 Февраля 2014, 13:02 | Сообщение # 8
участник
Сейчас нет на сайте
Fen, нет, не работает ваш код, по краяней мере немного переделанный и скомпилированный на убунтке
P.s. Сейчас сижу за другим компом на работе, комп с юнькой дома sad

Добавлено (27.02.2014, 13:02)
---------------------------------------------
Но думаю, что всё-таки за другим компом будет лучше.


Разрабатываю зов крови:з

Сообщение отредактировал Timujin61 - Четверг, 27 Февраля 2014, 12:44
  • Страница 1 из 1
  • 1
Поиск:

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