Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
  • Need help?

    Create a topic in the appropriate section
    Don't write everything in the chat!
  • Take a look at the marketplace

    There you can buy
    everything related to game servers
  • Don't want a ban?

    Please read our rules
    Don't disturb the order!
  • Sell or buy?

    Use services of the guarantor
    We will make your deal safe
  • 0
Vitalik123

РПТ выдает ошибку, нужен совет.

Всем привет! 

Вопрос по Arma3 Epoh
Почти весь РПТ заполнен этой одной ошибкой
Вот эта ошибка в РПТ:

if (({_x == _loot} count exclcontainer_list) > 0) th>
10:48:32   Error position: <_loot} count exclcontainer_list) > 0) th>
10:48:32   Error Undefined variable in expression: _loot
10:48:32 File loot_addon\LSpawner\fn_LSgetBuildingstospawnLoot.sqf, line 146
10:48:32 Error in expression <d", "repairkit", true];
};


РПТ указывает сюда C:\server\@epochhive\addons\loot_addon\LSpawner

Вот этот блок: 

//special for world objects: account for Wasteland and other items
                                    if(_lootType == 5) exitWith {
                                        _selecteditem = (floor(random(count((lootworldObject_list select _lootClass) select 1))));
                                        _loot = (((lootworldObject_list select _lootClass) select 1) select _selecteditem);
                                        _lootholder = createVehicle [_loot, _tmpPos, [], 0, "CAN_COLLIDE"];
                                        if(_loot == "Land_CanisterFuel_F") then {
                                            _chfullf = (random 100);
                                            if (_chfullfuel > _chfullf) then {
                                                _lootholder setVariable["mf_item_id", "jerrycanfull", true];
                                            } else {
                                                _lootholder setVariable["mf_item_id", "jerrycanempty", true];
                                            };
                                        };
                                        if(_loot == "Land_CanisterOil_F") then {
                                            _lootholder setVariable["mf_item_id", "syphonhose", true];
                                        };
                                        if(_loot == "Land_Can_V3_F") then {
                                            _lootholder setVariable["mf_item_id", "energydrink", true];
                                        };
                                        if(_loot == "Land_Basket_F") then {
                                            _lootholder setVariable["mf_item_id", "cannedfood", true];
                                        };
                                        if(_loot == "Land_CanisterPlastic_F") then {
                                            _lootholder setVariable["mf_item_id", "water", true];
                                        };
                                        if(_loot == "Land_Suitcase_F") then {
                                            _lootholder setVariable["mf_item_id", "repairkit", true];
                                        };

                                        //if container clear its cargo
                                        if (({_x == _loot} count exclcontainer_list) > 0) then {
                                            clearWeaponCargoGlobal _lootholder;
                                            clearMagazineCargoGlobal _lootholder;
                                            clearBackpackCargoGlobal _lootholder;
                                            clearItemCargoGlobal _lootholder;
                                        };
                                        
                                        
                                        
Что делать? 
Поставить falce или заменить на другое? _lootholder setVariable["mf_item_id", "repairkit", true]; 
Правда не знаю на что заменить. 

По идее это ремонтный комплект, а вот что с ним делать я не знаю. 

Это я так понял блок спавна лута?

Share this post


Link to post
Share on other sites

2 answers to this question

Recommended Posts

  • 0
52 минуты назад, Vitalik123 сказал:

10:48:32   Error Undefined variable in expression: _loot

Что тут может быть не понятного?

Не определена переменная _loot

Из того куска что ты скинул, видно только то, что переменная _loot получает значение(и => инициализируется - создается), только при условии -

     if(_lootType == 5) exitWith {

 

а если луттайп не равен 5?

переменной вообще не будет?

Так хренли тогда ниже делать проверки -

        if(_loot == "Land_Suitcase_F") then {

и т.п. в которых фигурирует _loot, если ее - переменной НЕТУ.

Share this post


Link to post
Share on other sites



  • 0

А вообще, по простому, -

Ошибка -

Undefined variable

Говорит, о том, что использована, неопределенная переменная.

 

На примере простого скрипта

Private["_A", "_SUMMA"]

_SUMMA = _A + 1;

Данный скрипт выдаст ошибку -

Undefined variable _A

Не определена переменная _A

Ибо, к несуществующему пытались прибавить - 1.

 

Правильный скрипт:

Private["_A", "_SUMMA"]

_A = 1; //Вместо 1 - любое число. - Важно то, что переменная станет определенной, и инициализированной.

_SUMMA = _A + 1;

В твоем случае - для начала, правильно отформатируй код, чтобы видеть, где есть условия, и что в них приходит.

По этому куску хер поймешь без форматирования, где там заканчиваются(закрываются) скобки.

И пользуйтесь уже diag_log функцией.

Сложно чтоль прочитать как она работает?

Если переменной _loot нету, в 146 строке - смотри ВЫШЕ, где она получает значение.

 

А значение судя по коду, она получает только тут:

   _loot = (((lootworldObject_list select _lootClass) select 1) select _selecteditem);

Вот после данной строки и добавь -

diag_log(format["Переменная _loot содержит: %1", _loot]);

 

Далее смотри РПТ, и -

1. Если данной строки нет, => в данный участок скрипт не попадает. - Смотри почему.

2. Если данный участок есть, но в РПТ строка -

Переменная _loot содержит: any

=> (((lootworldObject_list select _lootClass) select 1) select _selecteditem); вот эта строка, нихера не выбрала. И разбирайся уже с переменными которые внутри нее - lootworldObject_list select _lootClass и _selecteditem - что там, и откуда они идут.

 

 

Edited by NoNameUltima (see edit history)

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By Jdinovich
      Добрый день. Игрок стал жаловаться,что у него на сервере со временем стал падать фпс. Тоесть при заходе после рестарта у не 120фпс,но к рестарту у него всего лишь 50. Присутствуют иногда фризы(зависает игра на секунду или две потом отвисает) серверный фпс скажем так постоянно 50.
      Хостинг:
      Процессор:
      4 ядра Core i7 7700
      Оперативная память:
      8 Гб
      Жесткий диск:
      100 Гб
      Есть ошибки в рпт,ссылка на рпт ниже. Кто может не указать,а подсказать как именно устранить эти ошибки. Рассматриваются платные варианты.Писать сюда в лс или в вк
      https://vk.com/feed
       
      https://pastebin.com/CjinyPeW
    • By Jdinovich
      кто может помочь исправить ошибки в рпт? Иногда сервер просто вырубается типо краш. грешу на ошибки.Если что,то какова цена помощи
       
      https://pastebin.com/index.php?e=1
    • By ro1and
      Помогите разобраться с Advanced Towing.
      В настройках скрипта редактируются классы, которые могут буксировать/буксироваться.
      SA_TOW_SUPPORTED_VEHICLES = [ "Tank", "Car", "Ship" ];
      Содержимое этих классов нигде не описано. Чтоб оно заработало на сервере Exile нужно вместо этих классов вписать классы из config.cpp файла миссии (class Trucks, Choppers и т.д.) или оставить все как есть?
      Просто хочу, чтобы грузовики тоже могли буксировать.
      Заранее благодарю за помощь.
       
    • By Golf777
      File mpmissions\__CUR_MP.Chernarus\custom\=BTC=_Logistic\=BTC=_Lift\=BTC=_LiftInit.sqf, line 138
      Error in expression <
      };
      sleep 0.1;
      };
      _chopper removeAction BTC_liftHudId;
      if (BTC_lift == 0) then {>
        Error position: <BTC_liftHudId;
      if (BTC_lift == 0) then {>
        Error Undefined variable in expression: btc_lifthudid
    • By virus160381
      Помогите с миссиями, у меня ошибки постоянно валятся в РПТ.
       
  • Our picks

×
×
  • Create New...

Important Information

By using this site, you automaticly agree to our Guidelines and Privacy Policy.
We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.