Fandom

武装突袭 Wiki

CtrlMapCursor

简体 | 繁體

4,827个页面创建
于此维基上
添加新页面
评论0 分享

您使用了广告屏蔽软件!


Wikia通过广告运营为用户提供免费的服务。我们对用户通过嵌入广告屏蔽软件访问网站进行了使用调整。

如果您使用了广告屏蔽软件,将无法使用我们的服务。请您移除广告屏蔽软件,以确保页面正常加载。

  

点击图片可看到更多讯息

开始使用于

游戏:
Arma 2
版本:
1.00

描述

描述:
Changes the default cursor that appears when interacting with a map control to a custom one. Use an empty string to restore the default cursor. If the specified cursor does not exist, the default is used and no error is produced. The cursor is the name of a config entry from CfgWrapperUI / Cursors. This command has the following specifics:

  • When used on Main Map (findDisplay 12 displayCtrl 51) it is possible to override multiple default cursors. For example, while leaving default "Arrow" intact, it is possible to just override "Scroll" with lets say "Wait" (Example 3)
  • When used on a custom map, for example user made Mini Map, there is only one single cursor "" for everything, therefore only this cursor can be overridden (see Example 4 on how to override it)

Some possible class names (for the whole list see ctrlMapCursor/cursors):

  • Arrow
  • Track
  • Move
  • Scroll
  • Rotate
  • Track3D
  • Move3D
  • Rotate3D
  • Raise3D
  • Wait
  • HC_move
  • HC_overFriendly
  • HC_overEnemy
  • HC_overMission
  • HC_unsel

NOTE1: Cursor names are case sensitive.

基本句法

句法:
control ctrlMapCursor [defaultCursor, newCursor]
参数:
control: Control - Map control

defaultCursor: String - Cursor class name

newCursor: String - Cursor class name
返回值:
Nothing

范例

范例1:
_map ctrlMapCursor ["Track", "Arrow"];

范例2:
uiNamespace setVariable ["_map",findDisplay 12 displayCtrl 51]; (uiNamespace getVariable "_map") ctrlMapCursor ["Track","HC_overFriendly"];

范例3:
findDisplay 12 displayCtrl 51 ctrlMapCursor ["Scroll", "Wait"];

范例4:
Cycle through all available cursors over custom map:0 = [] spawn { disableSerialization; _map = findDisplay 46 createDisplay "RscCredits" ctrlCreate ["RscMapControl", -1]; _map ctrlSetPosition [0,0,1,1]; _map ctrlCommit 0; { _map ctrlMapCursor ["", configName _x]; //<-- the actual usage hint format ["Current cursor: %1", configName _x]; sleep 1; } forEach ("true" configClasses (configFile >> "CfgWrapperUI" >> "Cursors")); };

额外资讯

多人游戏:
-
也可以看看:

setMousePositiongetMousePosition

注意事项

此处撰写句法皆为可行用法. 可到官网[1]专页回报错误. 你可以使用讨论页面或是论坛来进行讨论.
新增注意事项 | 如何新增?

Notes

Bottom Section

Posted on February 8, 2016 - 22:43 (UTC)
Bull A
When using this command, the cursor will change for the whole display, resulting in visual glitches. Adding the onMouseMoving event handler can help solve this problem: _control ctrlAddEventHandler ["MouseMoving",{

  _this params [
     ["_mapCtrl",controlNull,[[[controlNull]]]],
     ["_xPos",-1,[0]],
     ["_yPos",-1,[0]],
     ["_mouseIn",false,[[[true]]]]
  ];
  if (_mouseIn) then {
     // Mouse is in control area
     _mapCtrl ctrlMapCursor ["","Track"];
  } else {
     // Mouse is out of control area, goes back to arrow
     _mapCtrl ctrlMapCursor ["","Arrow"];
  };

}];

更多维基

随机维基