showCommandingMenu: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
m (Text replacement - "\|x([0-9])= *<code>([^<]*)<\/code>" to "|x$1= <sqf>$2</sqf>")
m (Some wiki formatting)
 
(5 intermediate revisions by the same user not shown)
Line 17: Line 17:
|descr= Create the commanding menu described by the given config class or menu name. When the name is empty, the current menu is hidden.<br><br>
|descr= Create the commanding menu described by the given config class or menu name. When the name is empty, the current menu is hidden.<br><br>
If commanding menu has "expression" set up, the expression will receive the following arguments when user activated the menu item:
If commanding menu has "expression" set up, the expression will receive the following arguments when user activated the menu item:
* Local variable {{hl|_target}}: [[Object]] - Target under the cursor. This works in both 3D and 2D (when cursor is over the unit icon on the map).
* Local variable {{hl|_target}}: [[Object]] - Target under the cursor. This works in both 3D and 2D (when cursor is over the unit icon on the map).
* Local variable {{hl|_pos}}: [[Array]] - Cursor position.
* Local variable {{hl|_pos}}: [[Array]] - Cursor position.
* Local variable {{hl|_is3D}}: [[Boolean]] - [[false]] if cursor is over the map, otherwise [[true]].
* Local variable {{hl|_is3D}}: [[Boolean]] - [[false]] if cursor is over the map, otherwise [[true]].
Line 23: Line 23:
|s1= [[showCommandingMenu]] name
|s1= [[showCommandingMenu]] name


|p1= name: [[String]] - Class name or user menu name (with "#USER:" prefix and "_#" page number suffix, where # is the page number starting with 0).
|p1= name: [[String]] - class name or user menu name (with "#USER:" prefix and "_#" page number suffix, where # is the page number starting with 0).


|r1= [[Nothing]]
|r1= [[Nothing]]
Line 35: Line 35:
}}
}}


<dl class="command_description">


<dt><dt>
{{Note
<dd class="notedate">Posted on July 22nd, 2012 - 15:37 (GMT+1)</dd>
|user= LaKing
<dt class="note">[[User:LaKing|LaKing]]</dt>
|timestamp= 20100125172000
<dd class="note">
|text= <sqf>
<code>// This script will create a custom menu, and display it once.
// This script will create a custom menu, and display it once.


MY_SUBMENU_inCommunication =
MY_SUBMENU_inCommunication =
[
[
["User submenu", [[true]]],
["User submenu", true],
["Option-1", [2], "", -5, [<nowiki/>["expression", "player sidechat ""-1"" "]], "0", "0", "\ca\ui\data\cursor_support_ca"],
["Option-1", [2], "", -5, [["expression", "player sidechat ""-1"" "]], "0", "0", "\ca\ui\data\cursor_support_ca"],
["Option 0", [3], "", -5, [<nowiki/>["expression", "player sidechat "" 0"" "]], "1", "0", "\ca\ui\data\cursor_support_ca"],
["Option 0", [3], "", -5, [["expression", "player sidechat "" 0"" "]], "1", "0", "\ca\ui\data\cursor_support_ca"],
["Option 1", [4], "", -5, [<nowiki/>["expression", "player sidechat "" 1"" "]], "1", "CursorOnGround", "\ca\ui\data\cursor_support_ca"]
["Option 1", [4], "", -5, [["expression", "player sidechat "" 1"" "]], "1", "CursorOnGround", "\ca\ui\data\cursor_support_ca"]
];
];


MY_MENU_inCommunication =  
MY_MENU_inCommunication =
[
[
// First array: "User menu" This will be displayed under the menu, bool value: has Input Focus or not.
// First array: "User menu" This will be displayed under the menu, bool value: has Input Focus or not.
// Note that as to version {{arma2 1.05, if the bool value set to false, Custom Icons will not be displayed.}}
// Note that as to version Template:arma2 1.05, if the bool value set to false, Custom Icons will not be displayed.
["User menu", [[false]]],
["User menu", false],


// Syntax and semantics for following array elements:
// Syntax and semantics for following array elements:
// ["Title_in_menu", [assigned_key], "Submenu_name", CMD, [<nowiki/>["expression",script-string]], "isVisible", "isActive" <, optional icon path> ]
// ["Title_in_menu", [assigned_key], "Submenu_name", CMD, [<nowiki/>["expression",script-string]], "isVisible", "isActive" <, optional icon path>]
// Title_in_menu: string that will be displayed for the player
// Title_in_menu: string that will be displayed for the player
// Assigned_key: 0 - no key, 1 - escape key, 2 - key-1, 3 - key-2, ... , 10 - key-9, 11 - key-0, 12 and up... the whole keyboard
// Assigned_key: 0 - no key, 1 - escape key, 2 - key-1, 3 - key-2, ... , 10 - key-9, 11 - key-0, 12 and up... the whole keyboard
Line 67: Line 66:
// isActive - Boolean 1 or 0 for yes or no - if item is not active, it appears gray.
// isActive - Boolean 1 or 0 for yes or no - if item is not active, it appears gray.
// optional icon path: The path to the texture of the cursor, that should be used on this menuitem.
// optional icon path: The path to the texture of the cursor, that should be used on this menuitem.
["First", [0], "", -5, [<nowiki/>["expression", "player sidechat ""First"" "]], "1", "1"],
["First", [0], "", -5, [["expression", "player sidechat ""First"" "]], "1", "1"],
["Second", [2], "", -5, [<nowiki/>["expression", "player sidechat ""Second"" "]], "1", "1"],
["Second", [2], "", -5, [["expression", "player sidechat ""Second"" "]], "1", "1"],
["Submenu", [3], "#USER:MY_SUBMENU_inCommunication", -5, [<nowiki/>["expression", "player sidechat ""Submenu"" "]], "1", "1"]
["Submenu", [3], "#USER:MY_SUBMENU_inCommunication", -5, [["expression", "player sidechat ""Submenu"" "]], "1", "1"]
];
];


[[showCommandingMenu]] "#USER:MY_MENU_inCommunication";
showCommandingMenu "#USER:MY_MENU_inCommunication";
</code>
</sqf>


Appendix, list of optional argument strings:
Appendix, list of optional argument strings:
{{Columns|4|
{{Columns|4|
* AmmoLow
* {{hl|AmmoLow}}
* AreActions
* {{hl|AreActions}}
* CanAnswer
* {{hl|CanAnswer}}
* CanDeselectTeamFromBar
* {{hl|CanDeselectTeamFromBar}}
* CanDeselectUnitFromBar
* {{hl|CanDeselectUnitFromBar}}
* CanDeselectVehicleFromBar
* {{hl|CanDeselectVehicleFromBar}}
* CanSelectTeamFromBar
* {{hl|CanSelectTeamFromBar}}
* CanSelectUnitFromBar
* {{hl|CanSelectUnitFromBar}}
* CanSelectVehicleFromBar
* {{hl|CanSelectVehicleFromBar}}
* CommandsToGunner
* {{hl|CommandsToGunner}}
* CommandsToPilot
* {{hl|CommandsToPilot}}
* CursorOnEmptyVehicle
* {{hl|CursorOnEmptyVehicle}}
* CursorOnEnemy
* {{hl|CursorOnEnemy}}
* CursorOnFriendly
* {{hl|CursorOnFriendly}}
* CursorOnGround
* {{hl|CursorOnGround}}
* CursorOnGroupMember
* {{hl|CursorOnGroupMember}}
* CursorOnGroupMemberSelected
* {{hl|CursorOnGroupMemberSelected}}
* CursorOnHoldingFire
* {{hl|CursorOnHoldingFire}}
* CursorOnNeedFirstAID
* {{hl|CursorOnNeedFirstAID}}
* CursorOnNeedHeal
* {{hl|CursorOnNeedHeal}}
* CursorOnNotEmptySubgroups
* {{hl|CursorOnNotEmptySubgroups}}
* CursorOnVehicleCanGetIn
* {{hl|CursorOnVehicleCanGetIn}}
* FormationDiamond
* {{hl|FormationDiamond}}
* FormationLine
* {{hl|FormationLine}}
* FuelLow
* {{hl|FuelLow}}
* HasRadio
* {{hl|HasRadio}}
* HCCanDeselectTeamFromBar
* {{hl|HCCanDeselectTeamFromBar}}
* HCCanDeselectUnitFromBar
* {{hl|HCCanDeselectUnitFromBar}}
* HCCanSelectTeamFromBar
* {{hl|HCCanSelectTeamFromBar}}
* HCCanSelectUnitFromBar
* {{hl|HCCanSelectUnitFromBar}}
* HCCursorOnIcon
* {{hl|HCCursorOnIcon}}
* HCCursorOnIconenemy
* {{hl|HCCursorOnIconenemy}}
* HCCursorOnIconSelectable
* {{hl|HCCursorOnIconSelectable}}
* HCCursorOnIconSelectableSelected
* {{hl|HCCursorOnIconSelectableSelected}}
* HCIsLeader
* {{hl|HCIsLeader}}
* HCNotEmpty
* {{hl|HCNotEmpty}}
* Injured
* {{hl|Injured}}
* IsAlone
* {{hl|IsAlone}}
* IsAloneInVehicle
* {{hl|IsAloneInVehicle}}
* IsCommander
* {{hl|IsCommander}}
* IsLeader
* {{hl|IsLeader}}
* IsSelectedToAdd
* {{hl|IsSelectedToAdd}}
* IsTeamSwitch
* {{hl|IsTeamSwitch}}
* IsWatchCommanded
* {{hl|IsWatchCommanded}}
* IsXbox
* {{hl|IsXbox}}
* Multiplayer
* {{hl|Multiplayer}}
* NotEmpty
* {{hl|NotEmpty}}
* NotEmptyBlueTeam
* {{hl|NotEmptyBlueTeam}}
* NotEmptyCommanders
* {{hl|NotEmptyCommanders}}
* NotEmptyGreenTeam
* {{hl|NotEmptyGreenTeam}}
* NotEmptyInVehicle
* {{hl|NotEmptyInVehicle}}
* NotEmptyMainTeam
* {{hl|NotEmptyMainTeam}}
* NotEmptyRedTeam
* {{hl|NotEmptyRedTeam}}
* NotEmptySoldiers
* {{hl|NotEmptySoldiers}}
* NotEmptySubgroups
* {{hl|NotEmptySubgroups}}
* NotEmptyYellowTeam
* {{hl|NotEmptyYellowTeam}}
* PlayableLeader
* {{hl|PlayableLeader}}
* PlayableSelected
* {{hl|PlayableSelected}}
* PlayerOwnRadio
* {{hl|PlayerOwnRadio}}
* PlayerVehicleCanGetIn
* {{hl|PlayerVehicleCanGetIn}}
* SelectedTeam
* {{hl|SelectedTeam}}
* SelectedUnit
* {{hl|SelectedUnit}}
* SomeSelectedHaveTarget
* {{hl|SomeSelectedHaveTarget}}
* SomeSelectedHoldingFire
* {{hl|SomeSelectedHoldingFire}}
* VehicleCommander
* {{hl|VehicleCommander}}
}}
}}
}}
</dd>


<dt></dt>
{{Note
<dd class="notedate">Posted on July 23, 2016 - 14:40 (UTC)</dd>
|user= SilentSpike
<dt class="note">[[User:SilentSpike|SilentSpike]]</dt>
|timestamp= 20160723154000
<dd class="note">
|text= You can combine the argument strings (see the above note) together to create OR conditions.
You can combine the argument strings (see the above note) together to create OR conditions.


Hence {{hl|"HasRadioIsLeader"}} is true when the unit is a leader or has a radio.
Hence {{hl|"HasRadioIsLeader"}} is true when the unit is a leader or has a radio.
</dd>
}}
 
</dl>

Latest revision as of 19:31, 7 April 2024

Hover & click on the images for description

Description

Description:
Create the commanding menu described by the given config class or menu name. When the name is empty, the current menu is hidden.

If commanding menu has "expression" set up, the expression will receive the following arguments when user activated the menu item:
  • Local variable _target: Object - Target under the cursor. This works in both 3D and 2D (when cursor is over the unit icon on the map).
  • Local variable _pos: Array - Cursor position.
  • Local variable _is3D: Boolean - false if cursor is over the map, otherwise true.
Groups:
Interaction

Syntax

Syntax:
showCommandingMenu name
Parameters:
name: String - class name or user menu name (with "#USER:" prefix and "_#" page number suffix, where # is the page number starting with 0).
Return Value:
Nothing

Examples

Example 1:
showCommandingMenu "";
Example 2:
showCommandingMenu "MyClassName";
Example 3:
showCommandingMenu "#USER:Tag_Menu_myMenu_0";
Example 4:
showCommandingMenu "RscMainMenu";

Additional Information

See also:
commandingMenu Arma 3: Communication Menu BIS_fnc_createMenu

Notes

Report bugs on the Feedback Tracker and/or discuss them on the Arma Discord or on the Forums.
Only post proven facts here! Add Note


LaKing - c
Posted on Jan 25, 2010 - 17:20 (UTC)
// This script will create a custom menu, and display it once. MY_SUBMENU_inCommunication = [ ["User submenu", true], ["Option-1", [2], "", -5, [["expression", "player sidechat ""-1"" "]], "0", "0", "\ca\ui\data\cursor_support_ca"], ["Option 0", [3], "", -5, [["expression", "player sidechat "" 0"" "]], "1", "0", "\ca\ui\data\cursor_support_ca"], ["Option 1", [4], "", -5, [["expression", "player sidechat "" 1"" "]], "1", "CursorOnGround", "\ca\ui\data\cursor_support_ca"] ]; MY_MENU_inCommunication = [ // First array: "User menu" This will be displayed under the menu, bool value: has Input Focus or not. // Note that as to version Template:arma2 1.05, if the bool value set to false, Custom Icons will not be displayed. ["User menu", false], // Syntax and semantics for following array elements: // ["Title_in_menu", [assigned_key], "Submenu_name", CMD, [["expression",script-string]], "isVisible", "isActive" <, optional icon path>] // Title_in_menu: string that will be displayed for the player // Assigned_key: 0 - no key, 1 - escape key, 2 - key-1, 3 - key-2, ... , 10 - key-9, 11 - key-0, 12 and up... the whole keyboard // Submenu_name: User menu name string (eg "#USER:MY_SUBMENU_NAME" ), "" for script to execute. // CMD: (for main menu:) CMD_SEPARATOR -1; CMD_NOTHING -2; CMD_HIDE_MENU -3; CMD_BACK -4; (for custom menu:) CMD_EXECUTE -5 // script-string: command to be executed on activation. (no arguments passed) // isVisible - Boolean 1 or 0 for yes or no, - or optional argument string, eg: "CursorOnGround" // isActive - Boolean 1 or 0 for yes or no - if item is not active, it appears gray. // optional icon path: The path to the texture of the cursor, that should be used on this menuitem. ["First", [0], "", -5, [["expression", "player sidechat ""First"" "]], "1", "1"], ["Second", [2], "", -5, [["expression", "player sidechat ""Second"" "]], "1", "1"], ["Submenu", [3], "#USER:MY_SUBMENU_inCommunication", -5, [["expression", "player sidechat ""Submenu"" "]], "1", "1"] ]; showCommandingMenu "#USER:MY_MENU_inCommunication";
Appendix, list of optional argument strings:
  • AmmoLow
  • AreActions
  • CanAnswer
  • CanDeselectTeamFromBar
  • CanDeselectUnitFromBar
  • CanDeselectVehicleFromBar
  • CanSelectTeamFromBar
  • CanSelectUnitFromBar
  • CanSelectVehicleFromBar
  • CommandsToGunner
  • CommandsToPilot
  • CursorOnEmptyVehicle
  • CursorOnEnemy
  • CursorOnFriendly
  • CursorOnGround
  • CursorOnGroupMember
  • CursorOnGroupMemberSelected
  • CursorOnHoldingFire
  • CursorOnNeedFirstAID
  • CursorOnNeedHeal
  • CursorOnNotEmptySubgroups
  • CursorOnVehicleCanGetIn
  • FormationDiamond
  • FormationLine
  • FuelLow
  • HasRadio
  • HCCanDeselectTeamFromBar
  • HCCanDeselectUnitFromBar
  • HCCanSelectTeamFromBar
  • HCCanSelectUnitFromBar
  • HCCursorOnIcon
  • HCCursorOnIconenemy
  • HCCursorOnIconSelectable
  • HCCursorOnIconSelectableSelected
  • HCIsLeader
  • HCNotEmpty
  • Injured
  • IsAlone
  • IsAloneInVehicle
  • IsCommander
  • IsLeader
  • IsSelectedToAdd
  • IsTeamSwitch
  • IsWatchCommanded
  • IsXbox
  • Multiplayer
  • NotEmpty
  • NotEmptyBlueTeam
  • NotEmptyCommanders
  • NotEmptyGreenTeam
  • NotEmptyInVehicle
  • NotEmptyMainTeam
  • NotEmptyRedTeam
  • NotEmptySoldiers
  • NotEmptySubgroups
  • NotEmptyYellowTeam
  • PlayableLeader
  • PlayableSelected
  • PlayerOwnRadio
  • PlayerVehicleCanGetIn
  • SelectedTeam
  • SelectedUnit
  • SomeSelectedHaveTarget
  • SomeSelectedHoldingFire
  • VehicleCommander
SilentSpike - c
Posted on Jul 23, 2016 - 15:40 (UTC)
You can combine the argument strings (see the above note) together to create OR conditions. Hence "HasRadioIsLeader" is true when the unit is a leader or has a radio.