Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
  • 0
FiQ

Проблема с неопределенным значением выражения

Доброго времени.

В поисках помощи, не соизволите? 

Суть проблемы разъяснена в RPT:

Error in expression <is select 0;
switch (true) do {


case (_unit isKindOf "test") : { 

_unit setV>
  Error position: <_unit isKindOf "test") : { 

_unit setV>
  Error Undefined variable in expression: _unit
File mpmissions\__cur_mp.map2\Scripts\fn_CharacterSet.sqf, line 31

Сам скрипт, полный, скрывать нечего:

params ["_unit"];
	
	switch (true) do {
		
		case (_unit isKindOf "test") : { 
		
			 _unit setVariable ["Stats_Cowardice", 0.2]; 
			 _unit setVariable ["Stats_Secrecy", 0.1]; 
			 _unit setVariable ["Stats_Aggressive", 0.9]; 
			 _unit setVariable ["Stats_Curious", 0.3]; 
			 _unit setVariable ["Stats_Societal", 0.8]; 
			 _unit setVariable ["Stats_Courage", 1];  
			 _unit setVariable ["Stats_Tactful", false]; 
			 _unit setVariable ["Stats_Damage", 1];  
			 _unit setVariable ["Stats_Armor", 10]; 
		
		
			};
			default {};
	};

Пробовал вставлять после " params ["_unit"]; " вот это: " _unit = _this select 0; " должного эффекта не вызвало.

Share this post


Link to post
Share on other sites

5 answers to this question

Recommended Posts

  • 0
2 часа назад, FiQ сказал:

Пробовал вставлять после " params ["_unit"]; " вот это: " _unit = _this select 0; " должного эффекта не вызвало.

Курить букварь, - что есть аргументы, и как они передаются в вызываемые функции.

Share this post


Link to post
Share on other sites



  • 0

NoNameUltima  Что если попробовать объяснить суть противоречий и проблемы как таковой, с  целью преподнести знания, нежели критиковать с позиции превосходства в знаниях?! Не критикую, лишь прошу в оказании помощи в данном направлении.

Share this post


Link to post
Share on other sites
  • 0

Ну раз в моем сообщении найдена критика, и суть не указана, тогда дальше сам.

Share this post


Link to post
Share on other sites
  • 0
10 часов назад, FiQ сказал:

NoNameUltima  Что если попробовать объяснить суть противоречий и проблемы как таковой, с  целью преподнести знания, нежели критиковать с позиции превосходства в знаниях?! Не критикую, лишь прошу в оказании помощи в данном направлении.

после

params ["_unit"];

добавь

diag_log format["_TEST: %1",_this];

пока проблему это не решит, а вот в RPT файле у тебя появится строчка: _TEST: {какие-то данные}. Вот эту строчку и выложи сюда.

Также, советую проверить функцию:

switch (true) do {

ошибка видна невооруженным взглядом. В помощь определения ошибки официальный FAQ по этой функции с примерами https://community.bistudio.com/wiki/switch_do

Edited by 123new (see edit history)

Share this post


Link to post
Share on other sites
  • 0

Разобрался, тему можно закрывать.

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 fedotovyasha
      не подключается к серверу и пишет что на сервере нету такого мода, хотя он там есть. Названия менял, другие моды все отключил, ничего не помогает. В батниках все прописано
    • By JustBullet
      Всем привет! :) Как я рад всех видеть снова, дошли руки до ковыряния станделона (если уже его можно так назвать).
       
      Что пытаюсь сделать:
      1. Создать Рюкзак.
      2. Создать Радио.
          - Положить Батарейку в Радио.
      3. Положить Радио(с Батареей) в Персональный слот Рюкзака.
      4. Дополнительно поместить Радио в слот быстрого доступа (на панель).
       
      EntityAI itemEnt_Bag = player.GetInventory().CreateInInventory("FurCourierBag"); // Создаем РЮКЗАК. EntityAI itemEnt_Radio = player.GetInventory().CreateInInventory("PersonalRadio"); // Создаем РАДИО. itemEnt_Radio.GetInventory().CreateAttachment("Battery9V"); // Помещаем в Радио Батарейку. itemEnt_Bag.GetInventory().CreateAttachment(itemEnt_Radio); // Помещаем в РЮКЗАК РАДИО. player.SetQuickBarEntityShortcut(itemEnt_Radio, 0, true); // Помещаем РАДИО на первый слот. тут возникает проблема, в четвертой строке, поскольку я помещаю Элемент Радио+Батарея в Рюкзак, а команда ожидает Строковый параметр (String). Проблема больше в незнании мной синтаксиса. Возможно и в логике построения. Вообщем прошу помощи разобраться с этой строчкой :)))
       
      п.с. так разумеется срабатывает но без батарейки:
      itemEnt_Bag.GetInventory().CreateAttachment("PersonalRadio"); // Помещаем в РЮКЗАК РАДИО. Каким параметром/командой я могу загнать Радио с батареей в персональный слот Рюкзака?
    • By Gromillla
      Доброго времени суток дамы и господа, и сразу к вопросу, в миссиях 2.2.5 версии, если боты "бандиты", то они скин игрока видят и реагируют на него, а если миссии с ботами "героями", то они скин игрока не видят. Скин  "RUS_Soldier_Marksman". Как соответственно решить эту проблему? Ошибок в РПТ нет.
    • By petpoleoo
      Ребят ваша помощь нужна,суть проблема такая,мент кидает гражданского в тюрьму а вместо той тюрьмы где он должен быть игрок в поле скачет в редакторе была в этом месте только одна метка sky drive но ее перенести пробывали 0 эмоций,кто сталкивался может какую мысль подкините идею как решить;)
       

      Пожалуйста, Войдите или Зарегистрируйтесь, чтобы увидеть это: Вложение.
    • By SPIRT
      В общем после недавнего обновления BattleEye стало выкидывать из игры с ошибкой BattleEye типа вам нужно перезагрузить игру. Хочу поделиться тем что помогло мне . Сразу говорю винда у меня пиратская .Итак начнем .
      1.Отключаемся от интернета.
      2.Вырубаем антивирус полностью.
      3.Заходим в Панель управления -- Администрирование -- Службы -- ищем Защита программного обеспечения --- останавливаем ее.
      4.Дальше идем по адресу диск С Windows -- System32  там надо найти два файла C7483456-A289-439d-8115-601632D005A0  перед этими цифрами могут стоять еще цифры но это не важно , удаляем их.
      5. Обратно запускаем Защита программного обеспечения. В правом нижнем углу появится надпись  что ваша Windows не является лицензионной.
      6. Перезагружаем комп - и активируем нашу винду, я активировал программой Windows 7 Loader . 
       
      У меня процесс сошел с мертвой точки со второй активации  , но согласитесь это лучше чем переустанавливать Windows 7 или переходить с любимой системы на 10 винду . Кому поможет ставим +  врепу. 
       
      PS в параметрах папок и поиска не забываем выставить  показывать скрытые файлы и папки !
       
×
×
  • 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.