Форум программистов, компьютерный форум, киберфорум
Unity, Unity3D
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/3: Рейтинг темы: голосов - 3, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 14.12.2019
Сообщений: 16

При return null выдает: ArgumentOutOfRangeException: Index was out of range

17.09.2021, 21:21. Показов 636. Ответов 3

Студворк — интернет-сервис помощи студентам
Непонимаю откуда оно не может получить индекс, может кто знает что может быть
Код:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
using System.Collections.Generic;
using UnityEngine;
 
public class Pool : MonoBehaviour
{
    public static Pool SharedInstance;
    public List<GameObject> pooledBombs;
    public List<GameObject> pooledCoins;
    public GameObject objectToPoolCoin;
    public GameObject objectToPoolBomb;
    public int countToPool;
 
    private void Awake()
    {
        SharedInstance = this;
    }
 
    void Start()
    {
        pooledBombs = new List<GameObject>();
        pooledCoins = new List<GameObject>();
 
        GameObject tmpC;
        GameObject tmpB;
 
        for (int i = 0; i < countToPool; i++)
        {
            tmpC = Instantiate(objectToPoolCoin);
            tmpB = Instantiate(objectToPoolBomb);
 
            tmpC.SetActive(false);
            tmpB.SetActive(false);
 
            pooledBombs.Add(tmpB);
            pooledCoins.Add(tmpC);
        }
    }
 
    public GameObject GetPooledCoin()
    {
        for (int i = 0; i < countToPool; i++)
        {
            if (!pooledCoins[i].activeInHierarchy)
            {
                return pooledCoins[i];
            }
        }
        return null;
    }
 
    public GameObject GetPooledBomb()
    {
        for (int i = 0; i < countToPool; i++)
        {
            if (!pooledBombs[i].activeInHierarchy)
            {
                return pooledBombs[i];
            }
        }
        return null;
    }
 
}
А визиваю метод из другого скрипта так:
C#
1
GameObject currCoin = Pool.SharedInstance.GetPooledBomb();
Зарание спасибо!

Забыл еще кое что, ошибка на 60 строке!
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
17.09.2021, 21:21
Ответы с готовыми решениями:

ArgumentOutOfRangeException: Index was out of range. Must be non-negative and less than the size of the collection
using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; public class RandomGenerate...

ArgumentOutOfRangeException: Index was out of range. Must be non-negative and less than the size of the collection
Всем добрый вечер. не пойму, что не так. Я пытаюсь найти ближайшего врага, но юнити ругается: ArgumentOutOfRangeException: Index was...

Выдает ошибку System.ArgumentOutOfRangeException: "Index and count must refer to a location within the string. "
Вообщем программа для генерации строки содержащей палиндромы. Я генерирую рандомную строку,делю на подстроки(разделив длину строки на...

3
 Аватар для zhunshun
767 / 495 / 216
Регистрация: 05.04.2015
Сообщений: 2,073
18.09.2021, 09:02
vasa4,
Догадки. Надо вызывать
C#
1
2
3
if(Pool.SharedInstance.pooledBombs != null){
GameObject currCoin = Pool.SharedInstance.GetPooledBomb();
}
1
0 / 0 / 0
Регистрация: 14.12.2019
Сообщений: 16
18.09.2021, 19:33  [ТС]
Мне помогло
C#
1
if (pool.pooledBombs.Count > 0)
, но всеравно спасибо!
0
 Аватар для samana
2639 / 1567 / 853
Регистрация: 23.02.2019
Сообщений: 3,876
18.09.2021, 21:54
Цитата Сообщение от vasa4 Посмотреть сообщение
Забыл еще кое что, ошибка на 60 строке!
На этой строке идёт возврат значения null, там не может быть ошибки выхода за пределы массива.
Либо вы меняете величину массива в процессе игры...
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
18.09.2021, 21:54
Помогаю со студенческими работами здесь

Компилятор выдает ошибку IndexError: list index out of range
a = b = 0 for i in a: print(a) b += a print(b)

Выдает ошибку IndexError: list index out of range в 106 строке в чем ошибка?
import logging import collections import urllib.parse import csv import bs4 import requests ...

Выдает ошибку "Index Out of range Cell"
Есть задание: База данных о продажах содержит следующие сведения: наименование товара (столы, стулья и т.д), месяц продажи, кол-во...

Grid index out of range при добавлении информации в dbgrid
grid index out of range при добавлении информации в dbgrid, как исправить?

Ошибка list index out of range при работе со списком
код: def datinput(self): while True: prmdate=input('введите данные') slt=prmdate.find(';') ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru