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

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

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

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

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

Телепорт в одну точку

Доброго времени суток. Хотелось бы реализовать идею телепорта из аномалии в одну единственную точку вместо рандомной.

Так выглядит код изначально(мод Namalsk Survival):

 

static vector GetRandomTeleportPosition(float x = 1636, float z = 15108, float radius = 5000)
    {                
        vector position;
        position[0] = Math.RandomInt(x - radius, x + radius);
        position[2] = Math.RandomInt(z - radius, z + radius);
        position[1] = GetGame().SurfaceY(position[0], position[2]) + 1;
        
        if (GetGame().SurfaceIsSea(position[0], position[2]) || GetGame().SurfaceIsPond(position[0], position[2])) {
            // try again
            Print("Landed in water, trying again");
            return GetRandomTeleportPosition(); 
        }
        
        array<Object> position_objects = {};
        array<CargoBase> position_cargos = {};
        GetGame().GetObjectsAtPosition(position, 3, position_objects, position_cargos);
        if (position_objects.Count() > 0) {
            // try again
            Print("Landed in object, trying again");
            return GetRandomTeleportPosition();
        }
        
        return position;
    }

 

Хотелось бы сделать так чтобы аномалия постоянно телепортировала в одну и ту же точку на карте(в нашем случае сюда: x = 1636  z = 15108), а не в рандомную с указанным радиусом.

Попробовал "методом тыка" - ничего толкового не вышло(знаний нет от слова "совсем") Изменял float radius = 5000, на float radius = 1, телепортирует в одну точку, но далеко не в ту что нужно.

Если кто-нибудь сможет помочь, буду очень благодарен.

Изменено пользователем 123new
вставка кода в обязательный тег для его вставки (история изменений)

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


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

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

  • 0

тупо и банально

static vector GetRandomTeleportPosition(float x = 1636, float z = 15108, float radius = 5000)
{                
	vector position;
	position[1] = GetGame().SurfaceY(position[0], position[2]);
	
	return position;
}

 

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


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

Спасибо большое!

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


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

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

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

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

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

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

Войти

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

Войти сейчас

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

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

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

Поддержка