放置单位
你已经看见过我之前的游戏截图了,有一个放置单位的命令框,就是通过类似下列语句制作出来的:
注:这个教程与我制作的命令框只是原理一样,界面是不一样的。
uimainnew按照格式添加(这个文件在data3.bar自己提取):
<!--游戏界面图标-->
<gadget name="Place" type="button" z="21" size1024="996 52 1022 78" mouseovertext="$$17092$$" foreground="" sound="UI_DefaultPregameClickSet" activateondown="" background="Art\ui\abilities\ability_Fire_Command">
<command>gadgetToggle("PlaceUnit1") editMode("PlaceUnit")</command>
</gadget>
<!--设定单位/建筑物,若缺少上述语句( editMode("PlaceUnit"))配合,会出现无法放置单位的情况。-->
<gadget name="PlaceUnit1" type="gadget" size1024="822 100 1022 150" hidden="" moveable="" closebutton="" bevel="" titlebar="Barrack" windowzstyle="" closeonesc="" background="ui\editor\editor_background">
<gadget name="ProtoName" type="textField" scrollvert="" alphasort="" history="" sizerel1024="0 0 200 25" textcolor="0 0 0" textfont="Arial nobold nodrop" textfontsize="12">
<dropdown command="uiSetProtoCursor("Crossbowman", true)">弩手</dropdown>
<dropdown command="uiSetProtoCursor("ypConsulateBestieros", true)">葡萄牙弩手</dropdown>
<dropdown command="uiSetProtoCursor("Longbowman", true)">长弓手</dropdown>
<dropdown command="uiSetProtoCursor("xpAenna", true)">艾那弓箭步兵</dropdown>
<dropdown command="uiSetProtoCursor("xpWarBow", true)">鹰神弓兵</dropdown>
<dropdown command="uiSetProtoCursor("xpMacehualtin", true)">掷石绳武士</dropdown>
<dropdown command="uiSetProtoCursor("ypChuKoNu", true)">诸葛弩</dropdown>
<dropdown command="uiSetProtoCursor("ypYumi", true)">玉米</dropdown>
<dropdown command="uiSetProtoCursor("xpArrowKnight", true)">弓箭武士</dropdown>
<dropdown command="uiSetProtoCursor("xpEagleKnight", true)">鹰游击武士</dropdown>
<dropdown command="uiSetProtoCursor("Skirmisher", true)">散兵</dropdown>
<dropdown command="uiSetProtoCursor("ypConsulateRogersRanger", true)">罗杰的射手</dropdown>
<dropdown command="uiSetProtoCursor("ypConsulatePrussianNeedleGun", true)">护卫德国长枪兵</dropdown>
<dropdown command="uiSetProtoCursor("Cacadore", true)">葡萄牙散兵</dropdown>
<dropdown command="uiSetProtoCursor("Strelet", true)">俄国散兵</dropdown>
<dropdown command="uiSetProtoCursor("xpMusketWarrior", true)">森林游荡者</dropdown>
<dropdown command="uiSetProtoCursor("xpWarRifle", true)">瓦其那步枪兵</dropdown>
<dropdown command="uiSetProtoCursor("ypArquebusier", true)">火绳枪兵</dropdown>
<dropdown command="uiSetProtoCursor("ypNatMercGurkha", true)">廓尔喀兵</dropdown>
<dropdown command="uiSetProtoCursor("ypNatMercGurkhaJemadar", true)">曼沙达尔廓尔喀兵</dropdown>
<dropdown command="uiSetProtoCursor("xpTomahawk", true)">战斧兵</dropdown>
<dropdown command="uiSetProtoCursor("Musketeer", true)">火鎗兵</dropdown>
<dropdown command="uiSetProtoCursor("ypConsulateRedcoat", true)">红衣军</dropdown>
<dropdown command="uiSetProtoCursor("ypConsulateStadhouders", true)">荷兰省长</dropdown>
<dropdown command="uiSetProtoCursor("ypConsulateGuerreiros", true)">葡萄牙火枪手</dropdown>
<dropdown command="uiSetProtoCursor("Janissary", true)">苏丹亲兵</dropdown>
<dropdown command="uiSetProtoCursor("ypConsulateTufanciCorps", true)">土方其军团</dropdown>
<dropdown command="uiSetProtoCursor("ypAshigaru", true)">日本火枪步兵</dropdown>
<dropdown command="uiSetProtoCursor("ypSepoy", true)">印度兵</dropdown>
<dropdown command="uiSetProtoCursor("ypspchuang", true)">黄坚</dropdown>
<dropdown command="uiSetProtoCursor("单位或建筑调用名", true)">选项显示文字,需要输入中文字请将xml另存为,将编码改成UTF-8</dropdown>
</gadget>
</gadget>
请将xml文件另存为UTF-8格式,请将xml文件另存为UTF-8格式,请将xml文件另存为UTF-8格式,重要的事情说三遍。
传送门
|
uimainnew.xml - 记事本 |
____ |
□ |
X |
|
|
文件(F) 编辑(E) 格式(O) 查看(V) 帮助(H) |
|
|
|
|
|
<?xml version="1.0" encoding="utf-8"?>
<layout> <gadget name="winLoseDisplay" type="textBox" size1024="20 230 1004 300" textcenterhoriz="" textfont="LargeIngame" textfontsize="24" textcolor="255 255 255" hidden=""/> <gadget name="winLoseDisplayIgnoresFade" type="textBox" size1024="20 230 1004 300" textcenterhoriz="" textfont="LargeIngame" textfontsize="24" textcolor="255 255 255" hidden=""/> <gadget name="victoryDisplay" type="textBox" textcolor="255 255 255" transparent="" textfont="LargeInGame" textfontsize="24" textcenterhoriz="" textcentervert="" size1024="82 206 962 498" z="9"/> <gadget name="victoryTimerDisplay0" type="formatText" textcolor="255 255 255" transparent="" textcentervert="" textcenterhoriz="" textfont="TimerDisplays" textfontsize="12" size1024="682 52 1022 84" z="7" background="ui\ingame\objective_counter" texturecoords="0.336594911937378 0 1 1"/> <gadget name="victoryTimerDisplay1" type="formatText" textcolor="255 255 255" transparent="" textcentervert="" textcenterhoriz="" textfont="TimerDisplays" textfontsize="12" size1024="682 52 1022 84" z="7" background="ui\ingame\objective_counter" texturecoords="0.336594911937378 0 1 1"/> <gadget name="victoryTimerDisplay2" type="formatText" textcolor="255 255 255" transparent="" textcentervert="" textcenterhoriz="" textfont="TimerDisplays" textfontsize="12" size1024="682 52 1022 84" z="7" background="ui\ingame\objective_counter" texturecoords="0.336594911937378 0 1 1"/> <gadget name="chatInput" type="gadget" size1024="4 472 382 496" background="ui\ingame\background_blue_c" hidden="" tilebackground="" windowzstyle="" closeonesc="" dontautoclose=""> <gadget name="chatInputArtLeft" type="gadget" size1024="4 472 68 496" background="ui\ingame\in_game_chat_left"/> <gadget name="chatInputArtMiddle" type="gadget" size1024="68 472 318 496" background="ui\ingame\in_game_chat_mid" tilebackgroundhoriz=""> <gadget name="chatInput-text" type="editBox" enterkey="" grabinput="" textfont="ChatInput" textfontsize="12" textcolor="255 255 255" size1024="4 474 382 497" enableime="" editboxmaxchars="100"/> </gadget> <gadget name="chatInputArtRight" type="gadget" size1024="318 472 382 496" background="ui\ingame\in_game_chat_right"/> <gadget name="chatInput-sendButton" size1024="-352 351 -256 383" type="stateButton" texturecoords="0 0 .75 1" textfont="InGameButtons" textfontsize="18" textcolor="255 208 0" statebuttonuseinternalstates=""> <command>uiSendIngameChat</command> <stateentry background=""/> <stateentry background=""/> <stateentry background=""/> <stateentry background=""/> </gadget> </gadget><!--为了保证圣典打开本页面的时候流畅以及降低圣典体积,此处省略200KB语句,你直接把传送门的所说红色语句复制到最底下的</layout>上面就行。--> <gadget name="NotifyTextDisplay" type="formattext" textfont="ChatOutline" textfontsize="12" textwrapoff="" background="ui\core_ui\shaded_dark" textcentervert="" textcenterhoriz="" textmarkup="" size1024="352 512 672 536" z="10" transparent=""> <gadget name="NotifyTextDisplay-spacer-left" backgroundalpha="1.0" type="gadget" background="ui\core_ui\shaded_dark" size1024="344 512 352 536" z="10" transparent=""/> <gadget name="NotifyTextDisplay-spacer-right" backgroundalpha="1.0" type="gadget" background="ui\core_ui\shaded_dark" size1024="672 512 680 536" z="10" transparent=""/> <gadget name="NotifyTextDisplay-border-top-left" backgroundalpha="1.0" type="gadget" background="ui\ingame\outline_top_left" size1024="341 509 344 512" z="11" texturecoords=".25 .25 1 1" transparent=""/> <gadget name="NotifyTextDisplay-border-top-middle" backgroundalpha="1.0" type="gadget" background="ui\ingame\outline_top_middle" size1024="344 509 680 512" tilebackgroundhoriz="" z="11" texturecoords="0 .25 1 1" transparent=""/> <gadget name="NotifyTextDisplay-border-top-right" backgroundalpha="1.0" type="gadget" background="ui\ingame\outline_top_right" size1024="680 509 683 512" z="11" texturecoords="0 .25 .75 1" transparent=""/> <gadget name="NotifyTextDisplay-border-side-left" backgroundalpha="1.0" type="gadget" background="ui\ingame\outline_side_left" size1024="341 512 344 536" tilebackgroundvert="" z="11" texturecoords=".25 0 1 1" transparent=""/> <gadget name="NotifyTextDisplay-border-side-right" backgroundalpha="1.0" type="gadget" background="ui\ingame\outline_side_right" size1024="680 512 683 536" tilebackgroundvert="" z="11" texturecoords="0 0 .75 1" transparent=""/> <gadget name="NotifyTextDisplay-border-bottom-left" backgroundalpha="1.0" type="gadget" background="ui\ingame\outline_bottom_left" size1024="341 536 344 539" z="11" texturecoords=".25 0 1 .75" transparent=""/> <gadget name="NotifyTextDisplay-border-bottom-middle" backgroundalpha="1.0" type="gadget" background="ui\ingame\outline_bottom_middle" size1024="344 536 680 539" tilebackgroundhoriz="" z="11" texturecoords="0 0 1 .75" transparent=""/> <gadget name="NotifyTextDisplay-border-bottom-right" backgroundalpha="1.0" type="gadget" background="ui\ingame\outline_bottom_right" size1024="680 536 683 539" z="11" texturecoords="0 0 .75 .75" transparent=""/> </gadget> <gadget name="clockTimer" type="clockTimer" size1024="290 -1 678 72" z="10" background="ui\ingame\warwick_timer_panel" texturecoords="0 0 0.759295499021526 0.574803149606299"> <gadget name="clockTimer_displayText" type="formatText" textcolor="255 255 255" textfontsize="11" textmarkup="" textfont="ChatOutline" textjustifyleft="" size1024="423 53 649 73" z="10"/> <gadget name="clockTimer_teamText" type="formatText" textcolor="255 255 255" textfontsize="11" textmarkup="" textfont="ChatOutline" textjustifyleft="" size1024="423 43 649 63" z="10"/> <gadget name="clockTimer_face" type="gadget" size1024="359 0 423 64" z="11"/> </gadget> <gadget name="serverMaintenanceButton" type="stateButton" z="16" size1024="834 2 870 34" clampforeground="" clampbackground="" activateondown="" texturecoords="0 0 1 1" textfont="SmallButtonFont" textfontsize="10" textcolor="255 255 255" hidden=""> <stateentry background="ui\eso\server_maintenence_a"/> <stateentry background="ui\eso\server_maintenence_b"/> </gadget> <gadget name="Place" type="button" z="21" size1024="996 52 1022 78" mouseovertext="$$17092$$" foreground="" sound="UI_DefaultPregameClickSet" activateondown="" background="Art\ui\abilities\ability_Fire_Command"> <command>gadgetToggle("PlaceUnit1") editMode("PlaceUnit")</command> </gadget> <gadget name="PlaceUnit1" type="gadget" size1024="822 100 1022 150" hidden="" moveable="" closebutton="" bevel="" titlebar="Barrack" windowzstyle="" closeonesc="" background="ui\editor\editor_background"> <gadget name="ProtoName" type="textField" scrollvert="" alphasort="" history="" sizerel1024="0 0 200 25" textcolor="0 0 0" textfont="Arial nobold nodrop" textfontsize="12"> <dropdown command="uiSetProtoCursor("Crossbowman", true)">弩手</dropdown> <dropdown command="uiSetProtoCursor("ypConsulateBestieros", true)">葡萄牙弩手</dropdown> <dropdown command="uiSetProtoCursor("Longbowman", true)">长弓手</dropdown> <dropdown command="uiSetProtoCursor("xpAenna", true)">艾那弓箭步兵</dropdown> <dropdown command="uiSetProtoCursor("xpWarBow", true)">鹰神弓兵</dropdown> <dropdown command="uiSetProtoCursor("xpMacehualtin", true)">掷石绳武士</dropdown> <dropdown command="uiSetProtoCursor("ypChuKoNu", true)">诸葛弩</dropdown> <dropdown command="uiSetProtoCursor("ypYumi", true)">玉米</dropdown> <dropdown command="uiSetProtoCursor("xpArrowKnight", true)">弓箭武士</dropdown> <dropdown command="uiSetProtoCursor("xpEagleKnight", true)">鹰游击武士</dropdown> <dropdown command="uiSetProtoCursor("Skirmisher", true)">散兵</dropdown> <dropdown command="uiSetProtoCursor("ypConsulateRogersRanger", true)">罗杰的射手</dropdown> <dropdown command="uiSetProtoCursor("ypConsulatePrussianNeedleGun", true)">护卫德国长枪兵</dropdown> <dropdown command="uiSetProtoCursor("Cacadore", true)">葡萄牙散兵</dropdown> <dropdown command="uiSetProtoCursor("Strelet", true)">俄国散兵</dropdown> <dropdown command="uiSetProtoCursor("xpMusketWarrior", true)">森林游荡者</dropdown> <dropdown command="uiSetProtoCursor("xpWarRifle", true)">瓦其那步枪兵</dropdown> <dropdown command="uiSetProtoCursor("ypArquebusier", true)">火绳枪兵</dropdown> <dropdown command="uiSetProtoCursor("ypNatMercGurkha", true)">廓尔喀兵</dropdown> <dropdown command="uiSetProtoCursor("ypNatMercGurkhaJemadar", true)">曼沙达尔廓尔喀兵</dropdown> <dropdown command="uiSetProtoCursor("xpTomahawk", true)">战斧兵</dropdown> <dropdown command="uiSetProtoCursor("Musketeer", true)">火鎗兵</dropdown> <dropdown command="uiSetProtoCursor("ypConsulateRedcoat", true)">红衣军</dropdown> <dropdown command="uiSetProtoCursor("ypConsulateStadhouders", true)">荷兰省长</dropdown> <dropdown command="uiSetProtoCursor("ypConsulateGuerreiros", true)">葡萄牙火枪手</dropdown> <dropdown command="uiSetProtoCursor("Janissary", true)">苏丹亲兵</dropdown> <dropdown command="uiSetProtoCursor("ypConsulateTufanciCorps", true)">土方其军团</dropdown> <dropdown command="uiSetProtoCursor("ypAshigaru", true)">日本火枪步兵</dropdown> <dropdown command="uiSetProtoCursor("ypSepoy", true)">印度兵</dropdown> <dropdown command="uiSetProtoCursor("ypspchuang", true)">黄坚</dropdown> <dropdown command="uiSetProtoCursor("单位或建筑调用名", true)">选项显示文字,需要输入中文字请将xml另存为,将编码改成UTF-8</dropdown> </gadget> </gadget>
</layout> |
|
|
效果图:
你也可以不添加图标,直接用快捷键调出来,在defaultkeymapy.xml增加快捷键,添加上<command>gadgetToggle("PlaceUnit1") editMode("PlaceUnit") </command>就可以了。
control-numpaddivide是Ctrl+数字键盘的*键
|
Defaultkeymapy.xml.xml - 记事本 |
____ |
□ |
X |
|
|
文件(F) 编辑(E) 格式(O) 查看(V) 帮助(H) |
|
|
|
|
|
<!-- converted from XMB to XML -->
<defaultkeymapy> <keymapgroup name="GeneralGameHotkeys" displayname="$$43347$ Game Hotkeys"> <keymapdata> <name>PlaceUnit</name> <displayname>PlaceUnit</displayname> <event>control-numpaddivide</event> <context>game</context> <command>gadgetToggle("PlaceUnit1") editMode("PlaceUnit")</command> </keymapdata> <keymapdata> <name>Move all Military</name> <displayname>$$68810$ all Military</displayname> <event>alt-y</event> <context>game</context> <command>editMode("moveAllMilitary") uiSetProtoCursor("WaypointFlag")</command> </keymapdata> <keymapdata> <name>Delete Selected Units</name> <displayname>$$43335$ Selected Units</displayname> <event>delete</event> <context>game</context> <command>uiDeleteSelectedUnit</command> </keymapdata> <keymapdata> <name>Delete Selected Units Alt</name> <displayname>$$43379$ Selected Units (alternate)</displayname> <event>numpadperiod</event> <context>game</context> <command>uiDeleteSelectedUnit2</command> </keymapdata> <keymapdata> <name>Show Chat Window</name> <displayname>$$43336$ Chat Window</displayname> <event>enter</event> <context>game</context> <command>uiShowChatWindow() uiIgnoreNextKey</command> </keymapdata> <keymapdata> <name>Show Objectives Dialog</name> <displayname>$$43337$ Objectives Dialog</displayname> <event>f3</event> <context>game</context> <command>uiShowObjectivesDialog</command> </keymapdata>
|
|
|
命令:
editMode("PlaceUnit") |
放置单位 |
uiSetProtoCursor("XXXXXX", true) |
设定单位或建筑,与editMode("PlaceUnit")一起使用。 |
uiCopyToClipboard |
复制选中的单位 |
editMode("UnitPaste") |
粘贴已复制的单位 |
editMode("PlaceWall") uiSetProtoCursor("WallConnector", true) |
放置墙柱 |
fog() |
除去战雾 |
blackmap() |
除去黑色地图 |
gadgetToggle("gameprotopalette") |
打开剧情编辑器的放置单位框 |
PS:勾选游戏记录后无法放置单位。
不要认为这个教程的内容能用于联机,你可以自己试试,看看是不是在联机的时候,把鼠标按到烂也不能放置一个单位。