Перейти к публикации
Поиск в
  • Дополнительно...
Искать результаты, содержащие...
Искать результаты в...
  • Нужна помощь?

    Создайте тему в соответствующем разделе
    Не нужно писать всё в чат!
  • Загляните на торговую площадку

    Там вы можете купить
    всё что касается игровых серверов
  • Не хотите бан?

    Пожалуйста, ознакомьтесь с нашими правилами
    Не нарушайте порядок!
  • Продаёте или покупаете?

    Пользуйтесь услугами гаранта
    Мы сделаем вашу сделку безопасной
  • 0
Ron

Проверка включен ли генератор.

Добрый день, подскажите, как проверить работает ли генератор в радиусе от заданной позиции. Получить список предметов в данном радиусе получилось, но как организовать проверку на работу генератора не соображу(.

Для получения массива, того что вокруг, использовал следующий код:

array<Object> ScanInMapObjectsAtPositionInRadius(vector pos, int radius)
	{
		private array<Object> nearest_objects = new array<Object>;
		private array<CargoBase> proxy_cargos = new array<CargoBase>;
		private Object object;	
		private array<Object> Massive_searched_objects = new array<Object>;
		
		GetGame().GetObjectsAtPosition(pos, radius, nearest_objects, proxy_cargos); 
		proxy_cargos.Clear(); Massive_searched_objects.Clear();
		for ( int i = 0; i < nearest_objects.Count(); i++ )
		{
			object = nearest_objects.Get(i);
			if ( object.IsItem)
			{
				Massive_searched_objects.Insert(object);
			}
		}
		nearest_objects.Clear(); proxy_cargos.Clear(); object = NULL; 
		return Massive_searched_objects;

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Рекомендованные сообщения






  • 0

Вот так
Вопрос

Зачем в функции модификатор private

Зачем roxy_cargos.Clear(); Massive_searched_objects.Clear();
Это лишнее

 

	array<Object> ScanInMapObjectsAtPositionInRadius(vector pos, int radius)
	{
		array<Object> nearest_objects = new array<Object>;
		array<CargoBase> proxy_cargos = new array<CargoBase>;

		array<Object> Massive_searched_objects = new array<Object>;
		
		GetGame().GetObjectsAtPosition(pos, radius, nearest_objects, proxy_cargos); 
		for ( int i = 0; i < nearest_objects.Count(); i++ )
		{
			if ( nearest_objects[i])
			{
				if (nearest_objects[i].IsInherited(PowerGenetaror));
				{
					EntityAI generator = EntityAI.Cast(nearest_objects[i]);
					
					if (generator && genetartor.GetCompEM().IsWorking())
					{
						Massive_searched_objects.Insert(object);
					}
				}
				
			}
		}
		return Massive_searched_objects;
	}

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас

×
×
  • Создать...

Важная информация

Используя этот сайт, вы автоматически обязуетесь соблюдать наши Правила и Политика конфиденциальности.
Чтобы сделать этот веб-сайт лучше, мы разместили cookies на вашем устройстве. Вы можете изменить свои настройки cookies, в противном случае мы будем считать, что вы согласны с этим.