Jump to content


Photo

Помогите упростить removeAction


  • Please log in to reply
5 replies to this topic

#1 OFFLINE   pomio

pomio

    Рядовой

  • Пользователи
  • 7 posts

Posted 24 January 2023 - 20:43

Нету ли какого ни будь способа что бы не прописывать команду для каждого пункта, а просто сделать удаление по диапазону?
 
resursu1 = player addAction["УДАЛИТЬ МЕНЮ РЕСУРСОВ",{
player removeAction resursu13;
player removeAction resursu14;
player removeAction resursu15;
player removeAction resursu16;}];
 
resursu13 = player addAction["Брнз1",{life_inv_bz1 = life_inv_bz1 + 15;}];
resursu14 = player addAction["Брнз2",{life_inv_bz2  = life_inv_bz2  + 15;}];
resursu15 = player addAction["Брнз3",{life_inv_bz3 = life_inv_bz3 + 15;}];
resursu16 = player addAction["Бкст",{life_inv_bxt1 = life_inv_bxt1 + 15;}];

Edited by pomio, 24 January 2023 - 21:02.

  • 0

#2 OFFLINE   Schatten

Schatten

    Капитан

  • Пользователи
  • 1844 posts

Posted 24 January 2023 - 22:10

pomio,

_actionIds = [];

{
    _actionIds pushBack (player addAction _x);
} forEach [
    ["Брнз1", { life_inv_bz1 = life_inv_bz1 + 15; }],
    ["Брнз2", { life_inv_bz2 = life_inv_bz2 + 15; }],
    ["Брнз3", { life_inv_bz3 = life_inv_bz3 + 15; }],
    ["Бкст", { life_inv_bxt1 = life_inv_bxt1 + 15; }]
];

player addAction [
    "УДАЛИТЬ МЕНЮ РЕСУРСОВ",
    {
        params ["", "", "", "_arguments"];

        _arguments params ["_actionIds"];

        {
            player removeAction _x;
        } forEach _actionIds;
    },
    [_actionIds]
];

Edited by Schatten, 24 January 2023 - 22:21.

  • 1

#3 OFFLINE   pomio

pomio

    Рядовой

  • Пользователи
  • 7 posts

Posted 25 January 2023 - 02:39

Спасибо, но можно ещё одно. Можно так что бы и само меню  УДАЛИТЬ МЕНЮ РЕСУРСОВ тоже исчезало? Ну тоесть:

 

resursu1 = player addAction["УДАЛИТЬ МЕНЮ РЕСУРСОВ",{
player removeAction resursu1;
player removeAction resursu13;
player removeAction resursu14;
player removeAction resursu15;
player removeAction resursu16;}];
 
resursu13 = player addAction["Брнз1",{life_inv_bz1 = life_inv_bz1 + 15;}];
resursu14 = player addAction["Брнз2",{life_inv_bz2  = life_inv_bz2  + 15;}];
resursu15 = player addAction["Брнз3",{life_inv_bz3 = life_inv_bz3 + 15;}];
resursu16 = player addAction["Бкст",{life_inv_bxt1 = life_inv_bxt1 + 15;}];

Edited by pomio, 25 January 2023 - 02:42.

  • 0

#4 OFFLINE   Schatten

Schatten

    Капитан

  • Пользователи
  • 1844 posts

Posted 25 January 2023 - 02:46

Можно так что бы и само меню  УДАЛИТЬ МЕНЮ РЕСУРСОВ тоже исчезало?

Можно:

player addAction [
    "УДАЛИТЬ МЕНЮ РЕСУРСОВ",
    {
        params ["", "", "_actionId", "_arguments"];

        _arguments params ["_actionIds"];

        {
            player removeAction _x;
        } forEach _actionIds;

        player removeAction _actionId;
    },
    [_actionIds]
];

  • 1

#5 OFFLINE   pomio

pomio

    Рядовой

  • Пользователи
  • 7 posts

Posted 25 January 2023 - 17:54

 

Можно так что бы и само меню  УДАЛИТЬ МЕНЮ РЕСУРСОВ тоже исчезало?

Можно:

player addAction [
    "УДАЛИТЬ МЕНЮ РЕСУРСОВ",
    {
        params ["", "", "_actionId", "_arguments"];

        _arguments params ["_actionIds"];

        {
            player removeAction _x;
        } forEach _actionIds;

        player removeAction _actionId;
    },
    [_actionIds]
];

Спасибо, разобрался. Есть ещё один вопрос)) А как сделать так что бы в перечне всплывающих меню, пункт "УДАЛИТЬ МЕНЮ РЕСУРСОВ" находился в самом верху, а то если я добавляю пунктов шт. 100, то листать этот список что бы нажать в самом низу "УДАЛИТЬ МЕНЮ РЕСУРСОВ" как то надоедает.


  • 0

#6 OFFLINE   Schatten

Schatten

    Капитан

  • Пользователи
  • 1844 posts

Posted 25 January 2023 - 18:30

А как сделать так что бы в перечне всплывающих меню, пункт "УДАЛИТЬ МЕНЮ РЕСУРСОВ" находился в самом верху

Нужно приоритет указать: 

Пожалуйста Войдите или Зарегистрируйтесь чтобы увидеть скрытое содержание


  • 1




Яндекс.Метрика