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

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

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

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

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

[DayZ Group Management (DZGM)] - Управление группами игроков

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




 

Добавил архив в статью.

спасибо что выложил,установка очень сложная уже по вылазило куча ошибок,пол дня уже мучаюсь с установкой :smiling:

Изменено пользователем Vitalik (история изменений)

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


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

спасибо что выложил,установка очень сложная уже по вылазило куча ошибок,пол дня уже мучаюсь с установкой :smiling:

Пожалуйста. Это новая версия. На старой всё проще было.

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


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

Всё сто раз пересмотрел перепроверил всё равно рация в инвентаре не активна не нажать на неё нельзя не чего 

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


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

Если не появляется меню то косяк явно в RscTitles. Нажимаешь, надеюсь, правой кнопкой мыши?

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


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

Всё сто раз пересмотрел перепроверил всё равно рация в инвентаре не активна не нажать на неё нельзя не чего 

Ты чот лажанул. @@JohnWayne, тебе всё верно говорит. А лично я вчера сразу как гайд выложил - проверил его и поставил по нему это дело на серв. Всё как часы работало  :wink1:

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


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

Ты чот лажанул. @@JohnWayne, тебе всё верно говорит. А лично я вчера сразу как гайд выложил - проверил его и поставил по нему это дело на серв. Всё как часы работало  :wink1:

да я полностью осознаю то сделал то не так или не доделал именно с классом этим проблема Rsc Titles просто у меня установлен скрипт эконки как в деиз ориджинс http://s-platoon.ru/index.php?/topic/383-novyi-hud-kak-v-origins-dlia-dayz-epoch/  и там этот класс уже используется я пробовал туда вписать то то надо но не как не получается не пускает на сервер ошибку выдаёт 

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


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

Как бы порядок скриптов существует. Зачем создавать еще один такой же класс когда можно

 

 

RscTitles
{
    {
        Первый скрипт
    };
    {
        Второй скрипт
    };
};
 

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


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

 

Как бы порядок скриптов существует. Зачем создавать еще один такой же класс когда можно

 

 

RscTitles
{
    {
        Первый скрипт
    };
    {
        Второй скрипт
    };
};
 

я новичок совсем в установке скриптов очень много не понимаю прост скрипт ставлю на раз а сложные как этот не получается  

 

вот как у меня получился description

 

 

respawn = "BASE";
respawndelay = 5;
onLoadMission= "DayZ Epoch Chernarus";
OnLoadIntro = "Welcome to DayZ Epoch Chernarus";
OnLoadIntroTime = False;
OnLoadMissionTime = False;
disabledAI = true;
disableChannels[]={0,2,6};
enableItemsDropping = 0;
 
briefing = 0;
debriefing = 0;
 
onPauseScript = "";
loadScreen = "logo.jpg";
 
class Header
{
 gameType = COOP;            //DM, Team, Coop, ...
 minPlayers = 1;             //min # of players the mission supports
 maxPlayers = 100;            //Max # of players the mission supports
};
 
aiKills = 1;
diagRadio = 1;
diagHit = 1;
 
class RscText
{
    type = 0;
    idc = -1;
    x = 0;
    y = 0;
    h = 0.037;
    w = 0.3;
    style = 0x100; 
    font = Zeppelin32;
    SizeEx = 0.03921;
    colorText[] = {1,1,1,1};
    colorBackground[] = {0, 0, 0, 0};
    linespacing = 1;
};
class RscPicture
{
    access=0;
    type=0;
    idc=-1;
    style=48;
    colorBackground[]={0,0,0,0};
    colorText[]={1,1,1,1};
    font="TahomaB";
    sizeEx=0;
    lineSpacing=0;
    text="";
};
class RscLoadingText : RscText
{
    style = 2;
    x = 0.323532;
    y = 0.666672;
    w = 0.352944;
    h = 0.039216;
    sizeEx = 0.03921;
    colorText[] = {0.543,0.5742,0.4102,1.0};
};
class RscProgress
{
    x = 0.344;
    y = 0.619;
    w = 0.313726;
    h = 0.0261438;
    texture = "\ca\ui\data\loadscreen_progressbar_ca.paa";
    colorFrame[] = {0,0,0,0};
    colorBar[] = {1,1,1,1};
};
class RscProgressNotFreeze
{
    idc = -1;
    type = 45;
    style = 0;
    x = 0.022059;
    y = 0.911772;
    w = 0.029412;
    h = 0.039216;
    texture = "#(argb,8,8,3)color(0,0,0,0)";
};
//
// the loading screen itself
//
class DayZ_loadingScreen
{ 
    idd = -1;
    duration = 10e10;
    fadein = 0;
    fadeout = 0;
    name = "loading screen";
    class controlsBackground
    {
        class blackBG : RscText
        {
            x = safezoneX;
            y = safezoneY;
            w = safezoneW;
            h = safezoneH;
            text = "";
            colorText[] = {0,0,0,0};
            colorBackground[] = {0,0,0,1};
        };
        /*
        class nicePic : RscPicture
        {
            style = 48 + 0x800; // ST_PICTURE + ST_KEEP_ASPECT_RATIO
            x = safezoneX + safezoneW/2 - 0.25;
            y = safezoneY + safezoneH/2 - 0.2;
            w = 0.5;
            h = 0.4;
            text = "img\nicePic.paa";
        };
        */
    };
    class controls
    {
        class Title1 : RscLoadingText
        {
            text = "$STR_LOADING"; // "Loading" text in the middle of the screen
        };
        class CA_Progress : RscProgress // progress bar, has to have idc 104
        {
            idc = 104;
            type = 8; // CT_PROGRESS
            style = 0; // ST_SINGLE
            texture = "\ca\ui\data\loadscreen_progressbar_ca.paa";
        };
        class CA_Progress2 : RscProgressNotFreeze // progress bar that will go reverse
        {
            idc = 103;
        };
        class Name2: RscText // the text on the top-left
        {
            idc = 101;
            x = 0.05;
            y = 0.029412;
            w = 0.9;
            h = 0.04902;
            text = "";
            sizeEx = 0.05;
            colorText[] = {0.543,0.5742,0.4102,1.0};
        };
    };
};
 
class RscPictureGUI 
{
    access = 0;
    type = 0;
    idc = -1;
    colorBackground[] = {0,0,0,0};
    colorText[] = {0.38,0.63,0.26,0.75};
    font = "TahomaB";
    sizeEx = 0;
    lineSpacing = 0;
    text = "";
    style = "0x30 + 0x100";
    x = 0;
    y = 0;
    w = 0.2;
    h = 0.15;
};
class RscTextGUIK {
    type = 0;
    idc = -1;
    style = 0x02;
    colorBackground[] = {0,0,0,0};
    colorText[] = {1, 1, 1, 0.5};
    //color[] = {1, 1, 1, 0.5};
    font = "TahomaB";
    size = 0.03;
    sizeEx = 0.03;
    x = 0;
    y = 0;
    w = 0.1;
    h = 0.2;
};
 
#include "dzgm\defines.hpp"
#include "dzgm\groupManagement.hpp"
#include "custom\extra_rc.hpp"
#include "guiconfig\Icon.h"
 
а вот там где эти класс уже используются 
 

#define CT_STATIC 0
#define ST_LEFT           0x00
#define ST_PICTURE        48
 
class RscTitles 
{
class playerStatusGUI {
        idd = 6900;
        movingEnable = 0;
        duration = 100000;
        name = "statusBorder";
        onLoad = "uiNamespace setVariable ['DAYZ_GUI_display', _this select 0];";
        class ControlsBackground {
            class RscPicture_1901: RscPictureGUI
            {
                idc = 1901;
                text = "gui\status_bg.paa";
                x = 0.905313 * safezoneW + safezoneX;
                y = 0.93 * safezoneH + safezoneY;//2
                w = 0.075;
                h = 0.10;
            };
            class RscPicture_1201: RscPictureGUI
            {
                idc = 1201;
                text = "gui\status_food_border_ca.paa";
                x = 0.905313 * safezoneW + safezoneX;
                y = 0.93 * safezoneH + safezoneY;//2
                w = 0.075;
                h = 0.10;
            };
            class RscPicture_1900: RscPictureGUI
            {
                idc = 1900;
                text = "gui\status_bg.paa";
                x = 0.875313 * safezoneW + safezoneX;
                y = 0.93 * safezoneH + safezoneY; //3
                w = 0.075;
                h = 0.10;
            };
            class RscPicture_1200: RscPictureGUI
            {
                idc = 1200;
                //text = "gui\status_blood_border_ca.paa";
                x = 0.875313 * safezoneW + safezoneX;
                y = 0.93* safezoneH + safezoneY; //3
                w = 0.075;
                h = 0.10;
            };
            class RscPicture_1902: RscPictureGUI
            {
                idc = 1902;
                text = "gui\status_bg.paa";
                x = 0.935313 * safezoneW + safezoneX;
                y = 0.93 * safezoneH + safezoneY; //1
                w = 0.075;
                h = 0.10;
            };
            class RscPicture_1202: RscPictureGUI
            {
                idc = 1202;
                text = "gui\status_thirst_border_ca.paa";
                x = 0.935313 * safezoneW + safezoneX;
                y = 0.93 * safezoneH + safezoneY; //1
                w = 0.075;
                h = 0.10;
            };
            class RscPicture_1908: RscPictureGUI
            {
                idc = 1908;
                text = "gui\status_bg.paa";
                x = 0.845313 * safezoneW + safezoneX;
                y = 0.93 * safezoneH + safezoneY; //3
                w = 0.075;
                h = 0.10;
            };
            class RscPicture_1208: RscPictureGUI
            {
                idc = 1208;
                text = "gui\status_temp_outside_ca.paa";
                x = 0.845313 * safezoneW + safezoneX;
                y = 0.93 * safezoneH + safezoneY; //3
                w = 0.075;
                h = 0.10;
            };
            class RscPicture_1203: RscPictureGUI
            {
                idc = 1203;
                text = "gui\status_effect_brokenleg.paa";
                x = 0.955313 * safezoneW + safezoneX;
                y = 0.66 * safezoneH + safezoneY;
                w = 0.075;
                h = 0.10;
                colorText[] = {1,1,1,1};
            };
            class RscPicture_1204: RscPictureGUI
            {
                idc = 1204;
                text = "gui\status_connection_ca.paa";
                x = 0.955313 * safezoneW + safezoneX;
                y = 0.51 * safezoneH + safezoneY;
                w = 0.075;
                h = 0.10;
                colorText[] = {1,1,1,1};
            };
            class RscPicture_1205: RscPictureGUI
            {
                idc = 1205;
                text = "gui\status_bg.paa";
                x = 0.955313 * safezoneW + safezoneX;
                y = 0.30 * safezoneH + safezoneY;
                w = 0.075;
                h = 0.10;
            };
            class RscPicture_1206: RscPictureGUI
            {
                idc = 1206;
                text = "gui\status_bg.paa";
                x = 0.955313 * safezoneW + safezoneX;
                y = 0.37 * safezoneH + safezoneY;
                w = 0.075;
                h = 0.10;
            };
            /*--------------------------------------------*/
            class RscPicture_1307: RscPictureGUI
            {
                idc = 1307;
                text = "gui\st_humanity_survivor.paa";
                x = 0.955313 * safezoneW + safezoneX;
                y = 0.45 * safezoneH + safezoneY;
                w = 0.027 * safezoneW;
                h = 0.037 * safezoneH;
                colorText[] = {1,1,1,1};
            };
            class RscPicture_1308: RscPictureGUI
            {
                idc = 1308;
                text = "gui\st_humanity_hero.paa";
                x = 0.955313 * safezoneW + safezoneX;
                y = 0.50 * safezoneH + safezoneY;
                w = 0.027 * safezoneW;
                h = 0.037 * safezoneH;
                colorText[] = {1,1,1,1};
            };
            class RscPicture_1309: RscPictureGUI
            {
                idc = 1309;
                text = "gui\st_humanity_bandit.paa";
                x = 0.955313 * safezoneW + safezoneX;
                y = 0.55 * safezoneH + safezoneY;
                w = 0.027 * safezoneW;
                h = 0.037 * safezoneH;
                colorText[] = {1,1,1,1};
            };
            class RscPicture_1310: RscPictureGUI
            {
                idc = 1310;
                text = "gui\zombie.paa";
                x = 0.955313 * safezoneW + safezoneX;
                y = 0.60 * safezoneH + safezoneY;
                w = 0.027 * safezoneW;
                h = 0.037 * safezoneH;
                colorText[] = {1,1,1,1};
            };
        };
        class Controls {
            class RscPicture_1301: RscPictureGUI
            {
                idc = 1301;
                //text = "gui\status_food_inside_ca.paa";
                x = 0.905313 * safezoneW + safezoneX;
                y = 0.93 * safezoneH + safezoneY;
                w = 0.075;
                h = 0.10;
            };
            class RscPicture_1300: RscPictureGUI
            {
                idc = 1300;
                //text = "gui\status_blood_inside_ca.paa";
                x = 0.875313 * safezoneW + safezoneX;
                y = 0.93 * safezoneH + safezoneY;
                w = 0.075;
                h = 0.10;
            };
            class RscPicture_1302: RscPictureGUI
            {
                idc = 1302;
                //text = "gui\status_thirst_inside_ca.paa";
                x = 0.935313 * safezoneW + safezoneX;
                y = 0.93 * safezoneH + safezoneY;
                w = 0.075;
                h = 0.10;
            };
            class RscPicture_1306: RscPictureGUI
            {
                idc = 1306;
                //text = "gui\status_temp_ca.paa";
                x = 0.845313 * safezoneW + safezoneX;
                y = 0.93 * safezoneH + safezoneY;
                w = 0.075;
                h = 0.10;
            };
            class RscPicture_1303: RscPictureGUI
            {
                idc = 1303;
                text = "gui\status_bleeding_ca.paa";
                x = 0.875313 * safezoneW + safezoneX;
                y = 0.93 * safezoneH + safezoneY;
                w = 0.075;
                h = 0.10;
                colorText[] = {1,1,1,0.5};
            };
            class RscPicture_1304: RscPictureGUI
            {
                idc = 1304;
                text = "gui\status_noise.paa";
                x = 0.955313 * safezoneW + safezoneX;
                y = 0.30 * safezoneH + safezoneY;
                w = 0.075;
                h = 0.10;
            };
            class RscPicture_1305: RscPictureGUI
            {
                idc = 1305;
                text = "gui\status_visible.paa";
                x = 0.955313 * safezoneW + safezoneX;
                y = 0.37 * safezoneH + safezoneY;
                w = 0.075;
                h = 0.10;
            };
            /**/
            class RscPicture_1311 : RscPictureGUI 
            {
                idc = 1311;
                text = "gui\st_humanity_survivor.paa";
                x = 0.959313 * safezoneW + safezoneX;
                y = 0.23 * safezoneH + safezoneY;
                w = 0.068;
                h = 0.088;
                colorText[] = {0.96,0.8, 0.2,1};
            };
            class RscPicture_1313: RscPictureGUI
            {
                idc = 1313;
                //text = "gui\status_bg.paa";
                x = 0.959313 * safezoneW + safezoneX;
                y = 0.23 * safezoneH + safezoneY;
                w = 0.068;
                h = 0.083;
                colorText[] = {0.96,0.8, 0.2,0.3};
            };
            class RscText_1321: RscTextGUIK
            {
                idc = 1321;
                text = "fps";
                x = 0.965313 * safezoneW + safezoneX;
                y = 0.93 * safezoneH + safezoneY;
                w = 0.037 * safezoneW;
                h = 0.047 * safezoneH;
                size = 0.07;
                sizeEx = 0.07;
                colorText[] = {1,1,1,0.0};
            };
            class RscText_1322: RscPictureGUI
            {
                idc = 1322;
                //text = "gui\status_bg.paa";
                x = 0.965313 * safezoneW + safezoneX;
                y = 0.93 * safezoneH + safezoneY;
                w = 0.037 * safezoneW;
                h = 0.047 * safezoneH;
                colorText[] = {1,1,1,0.0};
            };
            /*-----------------------------------------------*/
            class RscText_1400: RscTextGUIK
            {
                idc = 1400;
                text = "1000";
                x = 0.925 * safezoneW + safezoneX;
                y = 0.45 * safezoneH + safezoneY;
                w = 0.037 * safezoneW;
                h = 0.047 * safezoneH;
                colorText[] = {1,1,1,1.0};
                size = 0.03;
                sizeEx = 0.03;
            };
            class RscText_1401: RscTextGUIK
            {
                idc = 1401;
                text = "1000"; //kills heroes
                x = 0.925 * safezoneW + safezoneX;
                y = 0.50 * safezoneH + safezoneY;
                w = 0.037 * safezoneW;
                h = 0.047 * safezoneH;
                colorText[] = {1,1,1,1.0};
                size = 0.03;
                sizeEx = 0.03;
            };
            class RscText_1402: RscTextGUIK
            {
                idc = 1402;
                text = "1000";
                x = 0.925 * safezoneW + safezoneX;
                y = 0.55 * safezoneH + safezoneY;
                w = 0.037 * safezoneW;
                h = 0.047 * safezoneH;
                colorText[] = {1,1,1,1.0};
                size = 0.03;
                sizeEx = 0.03;
            };
 
            class RscText_1403: RscTextGUIK
            {
                idc = 1403;
                text = "1000";
                x = 0.925 * safezoneW + safezoneX;
                y = 0.60 * safezoneH + safezoneY;
                w = 0.037 * safezoneW;
                h = 0.047 * safezoneH;
                colorText[] = {1,1,1,1.0};
                size = 0.03;
                sizeEx = 0.03;
            };
        };
    };
    class BTC_Hud
       {
          idd = 1000;
         movingEnable=0;
          duration=1e+011;
          name = "BTC_Hud_Name";
          onLoad = "uiNamespace setVariable [""HUD"", _this select 0];";
          controlsBackground[] = {};
          objects[] = {};
          class controls 
        {
            class Radar
            {
                type = CT_STATIC;
                idc = 1001;
                style = ST_PICTURE;
                x = (SafeZoneW+2*SafeZoneX) - 0.1;//safezonex + 0.1;//0.9
                y = (SafeZoneH+2*SafeZoneY) - 0.15;//safezoney + 0.1;//0.85
                w = 0.3;
                h = 0.4;
                font = "Zeppelin32";
                sizeEx = 0.03;
                colorBackground[] = {0, 0, 0, 0};
                colorText[] = {1, 1, 1, 1};
                text = "\ca\ui\data\igui_radar_air_ca.paa";
            };
            class Img_Obj
            {
                type = CT_STATIC;
                idc = 1002;
                style = ST_PICTURE;
                x = (SafeZoneW+2*SafeZoneX) + 0.045;
                y = (SafeZoneH+2*SafeZoneY) + 0.045;
                w = 0.01;
                h = 0.01;
                font = "Zeppelin32";
                sizeEx = 0.04;
                colorBackground[] = {0, 0, 0, 0};
                colorText[] = {1, 1, 1, 1};
                text = "=BTC=_Logistic\data\=BTC=_Obj.paa";
            };
            class Pic_Obj
            {
                type = CT_STATIC;
                idc = 1003;
                style = ST_PICTURE;
                x = (SafeZoneW+2*SafeZoneX) - 0.125;
                y = (SafeZoneH+2*SafeZoneY) - 0.23;
                w = 0.1;
                h = 0.1;
                font = "Zeppelin32";
                sizeEx = 0.03;
                colorBackground[] = {0, 0, 0, 0};
                colorText[] = {1, 1, 1, 1};
                text = "";
            };
            class Arrow
            {
                type = CT_STATIC;
                idc = 1004;
                style = ST_PICTURE;
                x = (SafeZoneW+2*SafeZoneX) + 0.15;
                y = (SafeZoneH+2*SafeZoneY) - 0.15;
                w = 0.05;
                h = 0.05;
                font = "Zeppelin32";
                sizeEx = 0.03;
                colorBackground[] = {0, 0, 0, 0};
                colorText[] = {1, 1, 1, 1};
                text = "";
            };
            class Type_Obj
            {
                type = CT_STATIC;
                idc = 1005;
                style = ST_LEFT;
                x = (SafeZoneW+2*SafeZoneX) - 0.03;
                y = (SafeZoneH+2*SafeZoneY) - 0.335;
                w = 0.3;
                h = 0.3;
                font = "Zeppelin32";
                sizeEx = 0.03;
                colorBackground[] = {0, 0, 0, 0};
                colorText[] = {1, 1, 1, 1};
                text = "";
            };
        };   
     };
titles[] ={BTC_intro};
    class BTC_intro
    {
        idd=-1;
        movingEnable = true;
        duration=6; // Fade Duration
        fadein=2; // Fade Time
        name = "BTC_intro"; // Name in Editor
        controls[]={Picture};
 
    };
    
    class DZGMHud_Rsc
{
    idd = -1;
    movingEnable = 1;
    enableSimulation = 1;
    enableDisplay = 1;
 
    onLoad = "uiNamespace setVariable ['dzgmHudDisp',_this select 0];";
 
    duration = 99999999999999999;
    fadein  = 0;
    fadeout = 0;
    class controls
    {
        class Icons : w_RscStructuredText
        {
            idc = -1;
            style = 0x00;
            x = 0.9;
            y = 0.9;
            w = 0.9;
            h = 0.9;
            size = 0.08;
            colorBackground[] = {0,0,0,0};
            colortext[] = {0,0,0,0.7};
            text ="";
            class Attributes {
                align = "left";
            };        
        };
        class PlayerIcon00:Icons {idc = 46300 +  0;};
        class PlayerIcon01:Icons {idc = 46300 +  1;};
        class PlayerIcon02:Icons {idc = 46300 +  2;};
        class PlayerIcon03:Icons {idc = 46300 +  3;};
        class PlayerIcon04:Icons {idc = 46300 +  4;};
        class PlayerIcon05:Icons {idc = 46300 +  5;};
        class PlayerIcon06:Icons {idc = 46300 +  6;};
        class PlayerIcon07:Icons {idc = 46300 +  7;};
        class PlayerIcon08:Icons {idc = 46300 +  8;};
        class PlayerIcon09:Icons {idc = 46300 +  9;};
        class PlayerIcon10:Icons {idc = 46300 + 10;};
        class PlayerIcon11:Icons {idc = 46300 + 11;};
        class PlayerIcon12:Icons {idc = 46300 + 12;};
        class PlayerIcon13:Icons {idc = 46300 + 13;};
        class PlayerIcon14:Icons {idc = 46300 + 14;};
        class PlayerIcon15:Icons {idc = 46300 + 15;};
        class PlayerIcon16:Icons {idc = 46300 + 16;};
        class PlayerIcon17:Icons {idc = 46300 + 17;};
        class PlayerIcon18:Icons {idc = 46300 + 18;};
        class PlayerIcon19:Icons {idc = 46300 + 19;};
        class PlayerIcon20:Icons {idc = 46300 + 20;};
        class PlayerIcon21:Icons {idc = 46300 + 21;};
        class PlayerIcon22:Icons {idc = 46300 + 22;};
        class PlayerIcon23:Icons {idc = 46300 + 23;};
        class PlayerIcon24:Icons {idc = 46300 + 24;};
        class PlayerIcon25:Icons {idc = 46300 + 25;};
        class PlayerIcon26:Icons {idc = 46300 + 26;};
        class PlayerIcon27:Icons {idc = 46300 + 27;};
        class PlayerIcon28:Icons {idc = 46300 + 28;};
        class PlayerIcon29:Icons {idc = 46300 + 29;};
        class PlayerIcon30:Icons {idc = 46300 + 30;};
        class PlayerIcon31:Icons {idc = 46300 + 31;};
        class PlayerIcon32:Icons {idc = 46300 + 32;};
        class PlayerIcon33:Icons {idc = 46300 + 33;};
        class PlayerIcon34:Icons {idc = 46300 + 34;};
        class PlayerIcon35:Icons {idc = 46300 + 35;};
        class PlayerIcon36:Icons {idc = 46300 + 36;};
        class PlayerIcon37:Icons {idc = 46300 + 37;};
        class PlayerIcon38:Icons {idc = 46300 + 38;};
        class PlayerIcon39:Icons {idc = 46300 + 39;};
        class PlayerIcon40:Icons {idc = 46300 + 40;};
    };
};
};

Нарушение правил форума

Отсутствие оформления кодов. Выдано второе предупреждение и режим "только чтение" на 2 суток.

Сообщение исправлено.

Изменено пользователем DrTauren (история изменений)

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


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

 

я новичок совсем в установке скриптов очень много не понимаю прост скрипт ставлю на раз а сложные как этот не получается  

 

вот как у меня получился description

,,,,,,

вот посмотрите и помогите пожалуйста его не хватает и то нужно дописать а может то то и убрать если не сложно вам заранее большое спасибо

Спойлер не учили использовать ?

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


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

Спойлер не учили использовать ?

нет пока не было такого урока подскажи

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


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

мне это не чего не дало, не догнал напиши в двух словах о чем ты говоришь 

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


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

Виталик, копай в сторону класса ExtraRc, скорее всего ты его вообще не определял для ItemRadio

Изменено пользователем JohnWayne (история изменений)

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


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

мне это не чего не дало, не догнал напиши в двух словах о чем ты говоришь 

Если используешь коды на форуме, то оформляй их как надо. Если будешь просто текст кидать без bb-кода в третий раз - просто выдам бан твоему аккаунту перманентный.

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


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

Виталик, копай в сторону класса ExtraRc, скорее всего ты его вообще не определял для ItemRadio

спасибо да в том и дело то определено ладно буду смотреть разбираться спасибо 

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


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

Таурен, можешь прилепить к первому посту фикс, если не нужно, что бы группа оставалась после смерти и рестарта, и было по хардкору:

 

в файле dzgm\init.sqf найти и закоментировать (ну или удалить) следующий код.

_savedGroup = profileNamespace getVariable["savedGroup",[]];
player setVariable ["savedGroup",_savedGroup,true];
player setVariable ["purgeGroup",0,true];
if (count _savedGroup > 1) then {
	{
		if (((getPlayerUID _x) in _savedGroup) && {(getPlayerUID player) in (_x getVariable["savedGroup",[]])} && {_x != player}) exitWith {
			_loginGroup = group player;
			[player] join (group _x);
			deleteGroup _loginGroup;
		};
	} count playableUnits;
};

Теперь после смерти игрок будет исключаться из группы. Если погиб лидер, лидерство перейдет по очереди приглашений в группу.

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


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

Таурен, можешь прилепить к первому посту фикс, если не нужно, что бы группа оставалась после смерти и рестарта, и было по хардкору:

 

в файле dzgm\init.sqf найти и закоментировать (ну или удалить) следующий код.

_savedGroup = profileNamespace getVariable["savedGroup",[]];
player setVariable ["savedGroup",_savedGroup,true];
player setVariable ["purgeGroup",0,true];
if (count _savedGroup > 1) then {
	{
		if (((getPlayerUID _x) in _savedGroup) && {(getPlayerUID player) in (_x getVariable["savedGroup",[]])} && {_x != player}) exitWith {
			_loginGroup = group player;
			[player] join (group _x);
			deleteGroup _loginGroup;
		};
	} count playableUnits;
};

Теперь после смерти игрок будет исключаться из группы. Если погиб лидер, лидерство перейдет по очереди приглашений в группу.

Спасибо. Добавлю в топ, укажу что ты скинул.

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


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

И еще, пропущен пункт про ExtraRc, поэтому в Виталика не взлетело.

Текст оригинала:

 

Inside extra_rc.hpp you should have this class structure:

class ExtraRc {
  class ItemRadio {
    class GroupManagement {
      text = "Group Management";
      script = "execVM 'dzgm\loadGroupManagement.sqf'";
    };
  };
};
 

Можно еще ссылочку вставить на гайд по ExtraRC

Изменено пользователем JohnWayne (история изменений)

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


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

И еще, пропущен пункт про ExtraRc, поэтому в Виталика не взлетело.

 

В статье это есть, между прочим. Ничего не пропущено. Ниже процитирую

 

А вот и цитатка  :tounge1:

 

В папке custom что в папке вашей миссии, сделайте файл extra_rc.hpp с таким содержимым: 

class ExtraRc {
   class ItemRadio {
      class GroupManagement {
         text = "Group Management";
         script = "execVM 'dzgm\loadGroupManagement.sqf'";
      };
 };
 };

   Если у вас уже есть класс ExtraRc, то вместо последнего пункта просто добавьте в него всё кроме первой и последней строки предыдущего кода, то есть это: 

 

class ItemRadio {
      class GroupManagement {
         text = "Group Management";
         script = "execVM 'dzgm\loadGroupManagement.sqf'";
      };
};
 

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


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

Прошу прощения, под спойлером не заметил

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


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

attachicon.gifseiezb.jpg

 

Собственно всем известный и отлично работающий скрипт по создания групп игроков. Попросил перевести пользователь форума, так что получайте   :tounge1:

P.S. В приватном разделе выложена локализация для данного скрипта (перевод всех файлов)

 

Особенности и описание:

  • Это портированная версия с Wasteland мода
  • Стабильно работает на Epoch 1.0.5.1, DayZ 1.8.4.1 и Overwatch 0.2.5​
  • Члены группы видят ники и иконки друг-друга на расстоянии до 2.5 км
  • Ники можно скрыть при помощи кнопки left-win
  • Члены группы могут использовать чат группы (ранее был бесполезен). Причём работают как письменные, так и голосовые сообщения
  • Только лидер может приглашать в группу, кикать из неё и распускать саму группу
  • Игрок, которого приглашают, не должен быть в другой группе
  • Группа сохраняется в профиль игрока. Вы остаётесь в группе даже после рестарта\смены скина\смерти

Прежде всего качаем архив  :wink1: attachicon.gifDZGM-master.zip

 

Инструкция:

1) Открываем ваш init.sqf и находим эту строку:

_playerMonitor = [] execVM "\z\addons\dayz_code\system\player_monitor.sqf";

и добавляем этот код ниже:

execVM "dzgm\init.sqf";

 

 

2) Если у вас нет кастомного compiles.sqf:

 

 

  1. В init.sqf находим:
    call compile preprocessFileLineNumbers "\z\addons\dayz_code\init\compiles.sqf";
  2. Добавляем этот код ниже:
    call compile preprocessFileLineNumbers "custom\compiles.sqf";
  3. В папке миссии создаём папку custom, в которой делаем файл compiles.sqf с таким содержимым:
    if (!isDedicated) then {
       player_switchModel = compile preprocessFileLineNumbers "custom\player_switchModel.sqf";
    };

 

 

 

 

3) Если у вас нет кастомного player_switchModel.sqf:

 

 

  1. Распаковываем файл dayz_code.pbo, который находится в папке @DayZ_Epoch\addons
  2. Копируем файл player_switchModel.sqf из \dayz_code\compile\ в папку custom, что мы сделали в папке миссии
  3. В файле compiles.sqf в директории  !isDedicated вставляем этот код:
    player_switchModel = compile preprocessFileLineNumbers "custom\player_switchModel.sqf";
  4. Если у вас уже есть такая линия, то замените её на новую (которую мы сделали). Иначе может появиться ошибка, не позволяющая нормально запустить сервер.

 

 

 

 

4) В файле player_switchModel.sqf находим эту строку:

 _oldUnit = player;

И ниже добавляем эту:

_oldGroup = group player;

 

 

5) Там же находим эту строку:

selectPlayer _newUnit;

И добавляем после неё:

if ((count units _oldGroup > 1) && {!isNil "PVDZE_plr_LoginRecord"}) then {
    [_newUnit] join _oldGroup;
    if (count units _group < 1) then {deleteGroup _group;};
};

 

 

6) Если у вас @DayZ 1.8.4.1 или @Overwatch (НЕ @Overpoch), то в коде выше это:

PVDZE_plr_LoginRecord

вам нужно заменить на это:

PVDZ_plr_LoginRecord

 

 

7) В самый конец этого же файла вставьте код:

_savedGroup = profileNamespace getVariable["savedGroup",[]];
player setVariable ["savedGroup",_savedGroup,true];
player setVariable ["purgeGroup",0,true];

 

 

8) Выбираем свой мод и следуем инструкции ↓

Для Epoch:

 

 

  1. Если у вас нет кастомного dayz_spaceInterrupt.sqf:

    А) В файл compiles.sqf в секцию !isDedicated добавить:

    dayz_spaceInterrupt = compile preprocessFileLineNumbers "custom\dayz_spaceInterrupt.sqf";
    Если у вас уже есть такая линия в файле, то замените её на нашу

    Б) Файл dayz_spaceInterrupt скопируйте из папки dayz_code\actions в папку custom, что в нашей папке миссии

     

     

  2. В конце файла dayz_spaceInterrupt найдите это кусок строки:
    _handled
    И прямо над ним добавьте этот код:
    if (_dikCode == 0xDB) then {
        if (tagName) then {tagName = false;titleText ["Group name tags OFF","PLAIN DOWN"];titleFadeOut 4;} else {tagName = true;titleText ["Group name tags ON","PLAIN DOWN"];titleFadeOut 4;};
        _handled = true;
    };
    
    if (_dikCode in actionKeys "TacticalView") then {_handled = true;};

 

 

Для DayZ 1.8.4.1:

 

 

Раскомментируйте первые три строки в файле dzgm\init.sqf, который лежит в архиве

 

 

Для Overwatch:

 

 

dayz_spaceInterrupt тут это просто функция в файле compiles.sqf. Так что просто скопируйте эту функцию в ваш кастомный compiles.sqf и выполните последнее указание из текста для Epoch под спойлером выше.

 

 

 

 

9) Если у вас нет кастомного ui_selectSlot.sqf:

 

 

  1. Копируем файл ui_selectSlot.sqf из dayz_code\compile в папку custom в вашей папке с миссией
  2. В файл ui_selectSlot.sqf добавьте этот код: (ниже цикла, но выше строки: _pos set [3,_height];. Примерно на 57 строке)
    _erc_cfgActions = (missionConfigFile >> "ExtraRc" >> _item);
       _erc_numActions = (count _erc_cfgActions);
       if (isClass _erc_cfgActions) then {
         for "_j" from 0 to (_erc_numActions - 1) do
         {
           _menu =  _parent displayCtrl (1600 + _j + _numActions);
           _menu ctrlShow true;
           _config =  (_erc_cfgActions select _j);
           _text =  getText (_config >> "text");
           _script =  getText (_config >> "script");
           _height = _height + (0.025 * safezoneH);
           uiNamespace setVariable ['uiControl', _control];
           _menu ctrlSetText _text;
           _menu ctrlSetEventHandler ["ButtonClick",_script];
         };
       };
  3. В файле compiles.sqf в секции !isDedicated добавить это:
    player_selectSlot = compile preprocessFileLineNumbers "custom\ui_selectSlot.sqf";
  4. Если вы уже имеете строку player_selectSlot, то замените её нашей
  5. В самый низ description.ext добавьте:
    #include "custom\extra_rc.hpp"
  6. В папке custom что в папке вашей миссии, сделайте файл extra_rc.hpp с таким содержимым:
    class ExtraRc {
      class ItemRadio {
         class GroupManagement {
            text = "Group Management";
            script = "execVM 'dzgm\loadGroupManagement.sqf'";
         };
       };
    };
    

     

  7. Если у вас уже есть класс ExtraRc, то вместо последнего пункта просто добавьте в него всё кроме первой и последней строки предыдущего кода, то есть это:
    class ItemRadio {
         class GroupManagement {
            text = "Group Management";
            script = "execVM 'dzgm\loadGroupManagement.sqf'";
         };
    };
    Если и класс  ItemRadio есть, то добавьте в него это код:
    class GroupManagement {
            text = "Group Management";
            script = "execVM 'dzgm\loadGroupManagement.sqf'";
         };
    

     

  8. Для DayZ 1.8.4.1:

    Если в вашем description.ext уже есть такая строка:

    #include "\z\addons\dayz_code\gui\description.hpp"
    То замените её содержимым этого файла (дословный перевод. Точно не понял что автор имел ввиду  :smiling:)

 

 

 

 

10) Если в вашем description.ext уже есть класс RscTitles, то:

 

 

  1. Выше этого самого класса добавьте этот код:
    #include "dzgm\defines.hpp"
  2. Внутри этого  самого класса добавьте это:
    #include "dzgm\icons.hpp"

 

 

Если у вас ещё нет RscTitles, то в самый низ description.ext добавьте:

#include "dzgm\defines.hpp"
class RscTitles
{
    #include "dzgm\icons.hpp"
};

 

 

11) Вниз вашего descripton.ext добавьте:

#include "dzgm\groupManagement.hpp"

 

 

12) Папку dzgm из архива, приложенного выше, копируем в папку вашей миссии

 

 

13) В самый низ файла dayz_server\init\server_functions.sqf добавляем этот код:

currentInvites = [];
publicVariable "currentInvites";
"currentInvites" addPublicVariableEventHandler {publicVariable "currentInvites";};

 

 

Для владельцев InfiSTAR:

  • В AHConfig.sqf в раздел ALLOWED_Dialogs добавьте: 55510. Выглядеть должно примерно так:
    _ALLOWED_Dialogs = [-1,106, ... ,55510];
  • В файле AH.sqf найдите и удалите эти операторы:

     

     

    playableUnits = [player]; (повторяется в файле два раза)

    lbsetpicture='no';

    lbSetData='no';

    createMarkerLocal='no';

    setMarkerTextLocal='no';

    setMarkerTypeLocal='no';

    setMarkerColorLocal='no';

     

  • Найдите и удалите эти строки в разделе FNCRestored check (_FRC)

     

     

    'lbsetpicture',

    'lbSetData',

    'createMarkerLocal',

    'setMarkerTextLocal',

    'setMarkerTypeLocal',

    'setMarkerColorLocal',

     

  • В этом же файле находим: admin_fnc_esp = {

    И выше добавляем это:

    #include "dzgmAdminESPicons.sqf"
  • Файл dzgmAdminESPicons.sqf из архива скопируйте в папку dayz_server\init

 

Фильтры:

В файле publicvariable.txt (находится в папке фильтров BattlEye) найдите первую линию, которая начинается с этого:

5 "" !...

или этого:

5 !...

и в конец этой строки добавьте:

!="currentInvites"

P.S. Фильтры последних версий античита InfiSTAR уже включают в себя это исправление

 

 

Вот, собственно, и всё  :smiling: 

Потратил на перевод и оформление этого гайда много времени, так что не откажусь от заслуженного плюса в репу  :embarrased:

наконец то я установил этот хороший скрипт,не работало потому что был установлен скрипт простая сборка велика её отключил и этот заработал ох как всё сложно то 

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


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

@@Vitalik,  "ох ты боже мой не знаю где запятые но меня ктото наверное помёт"  :dry:
Что сложного в том что бы иногда ставить запятые и уважать тем самым глаза тех, кто это читает? Мои вот в день пару раз точно ломаются.  :wink:

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


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

@@Vitalik,  "ох ты боже мой не знаю где запятые но меня ктото наверное помёт"  :dry:

Что сложного в том что бы иногда ставить запятые и уважать тем самым глаза тех, кто это читает? Мои вот в день пару раз точно ломаются.  :wink:

понял исправлюсь  :wink:

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


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

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

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

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

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

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

Войти

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

Войти сейчас

  • Похожие публикации

    • Автор: BR0wi
      Подскажите где найти людей, которые делаю моды на заказ. К кому вообще обращаться? Или что бы реализовать свои идеи нужно самому "год" сидеть и изучать все механики модинга?
    • Автор: CubeIn
      Приветствую господа, хочу создать новый проект, уникальный, но для этого нужен маппер.
      Я оставлю здесь свой дискрод, напишите в лс, кто готов взяться за крупный проект.
      4me#4542
    • Автор: 6agu
      Поставил
      Пожалуйста, Войдите или Зарегистрируйтесь, чтобы увидеть это: Вложение.
    • Автор: 123new
      Много вопросов на данную тему наблюдаю от новичков, попробую прояснить немного сей вопрос.
       
      Предположим. что вы уже знаете на каких координатах вам надо спавнить определенное здание или объект\животное\бота, с каким углом поворота. И так. эта тема для вас.
       
      Сразу делаю пометку, метод, который добавили нам разработчики игры в патче 1.15, очень хорошо описал наш товарищ в сообщении форума:
      Рекоммендую вам использовать именно его!
      Ниже опубликованы старые методы.
       
      Если вы с расставили их с модифицированной версии Offline (Offline by Arksenor это называется), то вы получили и нашли код вида:
      GetGame().CreateObject("Land_CementWorks_ExpeditionB", "13251.875000 0.0 3748.525879").SetOrientation("-96.000000 0.000000 0.000000"); GetGame().CreateObject("Land_CementWorks_ExpeditionB", "13254.599609 0.0 3722.703613").SetOrientation("-96.000000 0.000000 0.000000"); GetGame().CreateObject("Land_CementWorks_ExpeditionB", "13257.344727 0.0 3696.718750").SetOrientation("-96.000000 0.000000 0.000000"); GetGame().CreateObject("Land_CementWorks_ExpeditionB", "13260.040039 0.0 3670.984131").SetOrientation("-96.000000 0.000000 0.000000"); GetGame().CreateObject("Land_CementWorks_ExpeditionB", "13262.756836 0.0 3645.180176").SetOrientation("-96.000000 0.000000 0.000000"); GetGame().CreateObject("Land_CementWorks_ExpeditionB", "13265.441406 0.0 3619.531982").SetOrientation("-96.000000 0.000000 0.000000"); GetGame().CreateObject("Land_CementWorks_ExpeditionB", "13268.124023 0.0 3593.995361").SetOrientation("-96.000000 0.000000 0.000000"); GetGame().CreateObject("Land_CementWorks_ExpeditionB", "13270.844727 0.0 3568.186523").SetOrientation("-96.000000 0.000000 0.000000"); GetGame().CreateObject("Land_CementWorks_ExpeditionB", "13273.514648 0.0 3542.561279").SetOrientation("-96.000000 0.000000 0.000000"); GetGame().CreateObject("Land_CementWorks_ExpeditionB", "13276.195313 0.0 3517.048828").SetOrientation("-96.000000 0.000000 0.000000"); GetGame().CreateObject("Land_CementWorks_ExpeditionB", "13278.399414 0.0 3496.097900").SetOrientation("-96.000000 0.000000 0.000000"); Здесь (по примеру первой строки) 1 значение в скобках - id постройки/объекта, 2 значение - координаты в формате X Y Z, разделенные пробелом, 3 - значение поворота примерно в том же формате.
      Как это делать в Offline - статья от автора Offine:
      https://github.com/Arkensor/DayZCommunityOfflineMode/wiki/Add-custom-objects-to-your-server-or-mission
       
      И так, инструкция:
      1. Добавляем в начало init.c файла в вашей mpmissions следующий код:
      #include "$CurrentDir:mpmissions\dayzOffline.chernarusplus\spawn_buildings.c" 2. Создаем в папке вашей активной mpmissions файлик spawn_buildings.c и заполняем его следующей информацией.
      void SpawnObject( string type, vector position, vector orientation ) { private string NameBlockLog = "[CreateObject] "; private string InfoLog = ""; if(type != "") { auto obj = GetGame().CreateObject( type, "0 0 0" ); if(obj) { if ((position[0] != 0) && (position[1] != 0) && (position[2] != 0)) { obj.SetPosition( position ); obj.SetOrientation( orientation ); obj.Update(); if (obj.CanAffectPathgraph()) { obj.SetAffectPathgraph(true, false); GetGame().GetCallQueue(CALL_CATEGORY_SYSTEM).CallLater(GetGame().UpdatePathgraphRegionByObject, 100, false, obj); } InfoLog = "[Type: '" + obj.GetType() + "' Position: '" + obj.GetPosition().ToString() + "' Orientation: '" + obj.GetOrientation().ToString() + "']"; Write_Log(NameBlockLog + " Object has been created successfully! Info " + InfoLog); } else { InfoLog = "[Type: '" + type + "' Position: '" + position + "' Orientation: '" + orientation + "']"; Write_Log(NameBlockLog + " Object can't be created! Incorrect writed position. Info " + InfoLog); } } else { InfoLog = "[Type: '" + type + "' Position: '" + position + "' Orientation: '" + orientation + "']"; Write_Log(NameBlockLog + " Object can't be created! Info " + InfoLog); } } else { InfoLog = "[Type: '" + type + "' Position: '" + position + "' Orientation: '" + orientation + "']"; Write_Log(NameBlockLog + " Object can't be created! Incorrect writed type. Info " + InfoLog); } } void Write_Log(string message) { Print(String(message)); } 3. Открываем созданный нами файл,  и в конце файла дописываем следующее:
      void SpawnAirfeeldBuildings() { SpawnObject( "Land_CementWorks_ExpeditionB", "13251.875000 0.0 3748.525879", "-96.000000 0.000000 0.000000"); SpawnObject( "Land_CementWorks_ExpeditionB", "13254.599609 0.0 3722.703613", "-96.000000 0.000000 0.000000"); SpawnObject( "Land_CementWorks_ExpeditionB", "13257.344727 0.0 3696.718750", "-96.000000 0.000000 0.000000"); } void SpawnKrasnoBuildings() { SpawnObject( "Land_CementWorks_ExpeditionB", "13251.875000 0.0 3748.525879", "-96.000000 0.000000 0.000000"); SpawnObject( "Land_CementWorks_ExpeditionB", "13254.599609 0.0 3722.703613", "-96.000000 0.000000 0.000000"); SpawnObject( "Land_CementWorks_ExpeditionB", "13257.344727 0.0 3696.718750", "-96.000000 0.000000 0.000000"); } Где после void - название функции идет, а между открытыми скобками вызов спавна самих зданий на указанных координатах.
      На примере 1 строки:
      Land_CementWorks_ExpeditionB - id постройки (type)
      13251.875000 0.0 3748.525879 - координаты в формате X Y Z
      -96.000000 0.000000 0.000000 - значение поворота в формате X Y Z
      Внимание: id постройки и координаты в примере указаны не верные и требуют подключения дополнительной модификации для корректной работы!!! Координаты не соответствуют названию функции!!!
      4. открываем в MpMissions в папке с вашей активной миссией init.c и перед ЗАКРЫВАЮЩЕЙ скобкой '}' дописываем нужную нам функцию (это будет активация спавна на карте):
      SpawnAirfeeldBuildings(); 5. Готово, Запускайте сервер, и в scripts.log вы увидите процедуру спавна ваших зданий и увидите, спавнятся ли они на карте или нет.
      Можно написать конечно и более готовую, универсальную систему спавна на карте со считыванием конфигурации из файла, но я считаю это лишним.
       
      Как заполнить добавленные здания лутом на карте:
      вариант 1:
      https://github.com/Arkensor/DayZCommunityOfflineMode/wiki/Enable-loot-for-custom-placed-objects
      вариант 2: вручную заполнить xml-файл  mapgrouppos.xml в mpmssions данными о местоположении зданий, где rpy - значение поворота здания в формате Z Y X
       
      С помощью данной статьи вы можете разместить любой элемент игры(постройку, животное, зомби, бота), доступный к спавну через любую модификацию-админ. панель. Очень полезный мод в этом смысле BuilderItems, с его помощью можно творить поистину интересные локации!
    • Автор: Venom21
      Появилась такая проблема, нужно закрыть некоторые слоты под одежду, когда на определённый слот одет предмет…
      пример: возьмём экзоскелет от Фидова, там есть две версии которая одеваеться как на тело и ноги, и есть которая одеваться на разгрузку и пояс, так вот, нужно например чтобы при одетом экзаче на тело и ноги слоты под пояс и разгрузку блокировались, либо только под определенные предметы, если есть интерес то цену можем в личке обсудить…
      P.S. Разрешение от Фидова на переделку и переупаковку есть)
  • Наш выбор

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

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

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