Нужна помощь?
Создайте тему в соответствующем разделе
Не нужно писать всё в чат!Загляните на торговую площадку
Там вы можете купить
всё что касается игровых серверовНе хотите бан?
Пожалуйста, ознакомьтесь с нашими правилами
Не нарушайте порядок!Продаёте или покупаете?
Пользуйтесь услугами гаранта
Мы сделаем вашу сделку безопасной
- 0
-
Похожие публикации
-
Автор: BorizzK
Вобщем тема такая
1я задачка была такая
Нужно получить координату на плоскости под углом на расстоянии от текущей координаты
Задачку решил тут
Код в итоге таков:
например выведем в лог координаты точки на плоскости на расстоянии 2м и под углом 90 град (справа) от игрока (вызвав функцию PrintCoords, передав ей в качестве параметра переменную содержащую ссылку на перса игрока)
void PrintCoords(PlayerBase player) { float distance = 2; float anglerotation = 90; Print("Coordinates on the plane at distance " + distance + " and at an angle relative to the player: " + anglerotation + ": " + GetCoords(player, distance, anglerotation).ToString()); } vector GetGoords(PlayerBase player, float distance, float anglerotation) { return GetPosFromDistAndAngle(player.GetPosition(), distance, player.GetOrientation()[0] + anglerotation); } vector GetPosFromDistAndAngle(vector pos, float dist, float angle) { angle = Math.NormalizeAngle(angle) * Math.DEG2RAD; pos[0] = pos[0] + (double)(Math.Sin(angle) * dist); //offset X pos[2] = pos[2] + (double)(Math.Cos(angle) * dist); //offset Y return pos; }
Это была задачка 1 и она была решена!
далее надо решить более сложную задачу - она будет номер 2
Надо вычислить координату не на плоскости, а вообще в пространстве, взяв в качестве поправок значения pitch и roll (наклон по поперечной и продольной осям) которые получаются из функции обьект.GetOrientation() - первое значение масива типа вектор которое возвращает функция - угол на плоскости, второе угол в поперечной оси, третье в продольной (вроде так)
те если игрок, да не важно, просто обьект, имеет наклон в поперечной оси 45 градусов (от так как этот слэш /), то точка под углом на плоскости относительно игрока 90град и расстоянии 2м "справа для него будет 'ниже', чем слева"
врбщем - нам надо получить координату под улом 90град на плоскости, 45град по вертикали и расстоянии 2м от него слева
воот
и тут у меня мозг взорвался (и почему-то захотелось вискаря)
я понимаю что в данном случае нужно отталкиваться от поперечной вертикальной плоскости... но чет не догоняю как........
-
Автор: Miduznya
Мужики есть у кого карта dayz SA под арма3) ? просто дял себя хочу поставить поугарать маленько)
В ЛС можно написать даже лучше)
-
Автор: DrTauren
Пожалуйста, Войдите или Зарегистрируйтесь, чтобы увидеть это: Вложение.
Думаю из скриншота и названия темы всё предельно ясно
Установка:
Заменяем содержимое файла spawnSelection.hpp на этот код:
class life_spawn_selection { idd = 38500; movingEnabled = 0; enableSimulation = 1; class controlsBackground { class life_RscTitleBackground: Life_RscText { idc = 1000; x = 0.0101577 * safezoneW + safezoneX; y = 0.0291999 * safezoneH + safezoneY; w = 0.170156 * safezoneW; h = 0.9438 * safezoneH; colorBackground[] = {0.294,0.286,0.286,0.8}; }; class Title: Life_RscText { idc = 1001; text = "Spawn Selection"; x = 0.0132501 * safezoneW + safezoneX; y = 0.0402 * safezoneH + safezoneY; w = 0.164999 * safezoneW; h = 0.0242 * safezoneH; }; class MapView: Life_RscMapControl { idc = 38502; x = 0.183407 * safezoneW + safezoneX; y = 0.0292 * safezoneH + safezoneY; w = 0.8085 * safezoneW; h = 0.9438 * safezoneH; maxSatelliteAlpha = 0.75; alphaFadeStartScale = 1.15; alphaFadeEndScale = 1.29; }; }; class controls { class spawnList: Life_RscListNbox { idc = 38510; x = 0.0153125 * safezoneW + safezoneX; y = 0.071 * safezoneH + safezoneY; w = 0.159844 * safezoneW; h = 0.847 * safezoneH; text = ""; sizeEx = 0.041; coloumns[] = {0,0,0.9}; drawSideArrows = 1; idcLeft = -1; idcRight = -1; rowHeight = 0.050; onLBSelChanged = "_this call life_fnc_spawnPointSelected;"; }; class spawnButton: Life_RscButtonMenu { idc = -1; text = "Enter"; x = 0.0153125 * safezoneW + safezoneX; y = 0.9246 * safezoneH + safezoneY; w = 0.159844 * safezoneW; h = 0.033 * safezoneH; style = "0x02"; colorBackground[] = {"(profilenamespace getvariable ['GUI_BCG_RGB_R',0.3843])", "(profilenamespace getvariable ['GUI_BCG_RGB_G',0.7019])", "(profilenamespace getvariable ['GUI_BCG_RGB_B',0.8862])", 0.5}; colorBackgroundActive[] = {"(profilenamespace getvariable ['GUI_BCG_RGB_R',0.69])","(profilenamespace getvariable ['GUI_BCG_RGB_G',0.75])","(profilenamespace getvariable ['GUI_BCG_RGB_B',0.5])",1}; colorBackgroundDisabled[] = {0.95,0.95,0.95,0}; offsetX = 0.003; offsetY = 0.003; offsetPressedX = 0.002; offsetPressedY = 0.002; colorShadow[] = {0,0,0,1}; colorBorder[] = {0,0,0,0}; borderSize = 0.008; onButtonClick = "[] call life_fnc_spawnConfirm"; }; }; };
Оригинал на английском:
https://www.altisliferpg.com/topic/217-tutorial-new-spawn-menu/
-
Автор: Timofey
Ребята подскажите пожалуйста как определить точные координаты места спавна игрока для вип
-
Автор: Igor172
Всем добрый ночи, не смог найти нужный раздел на форуме. ((
Ситуация следующая, есть свой сервак (физический) стоит в датацентре. На нем можно запустить различные online проекты. Предложения в пм. Также есть ООО, можем официально оформить отношения с потонцеальными партнерами. П.с. Сервак мощный!!
-
-
Наш выбор
-
Создаем свой серверный мод. [DayZ 1.4 to Discontined]
123new опубликовал тему в Версия 1.0 и выше,
-
Увеличение карты х2
vitacite опубликовал тему в Картостроение,
Единая валюта на сервере! Не могу найти как увеличить место под хранение валюты в сейфах(. Помогите пожалуйста решить эту проблемму.
Поделиться сообщением
Ссылка на сообщение
Поделиться на других сайтах