本教程假定你已经对《将军》的INI编写,包括按钮组控制文件CommandSet.ini和单个按钮控制文件CommandButton.ini,以下对其不再作详细说明。有任何疑问,请在论坛发表。
在《将军》里,建筑和单位都有它们的按钮组。《将军》里的超级武器便是通过具有特殊功能的按钮来起作用。我们通过一个例子来看看它具体的编辑。
1.米格战机,进攻!
在E3大展中的《将军》演示里,曾经出现过一队米格战机对地攻击的镜头。这个超级武器并没有出现在正式的游戏里,但它的代码仍然存在,只是被屏蔽了。我们在这里将它重新启用,以说明如何在《将军》里编辑超级武器。
首先在CommandSet.ini里搜索中国指挥中心所使用的按钮组CommandSet ChinaCommandCenterCommandSet,在它的按钮组里,3 = Command_NapalmStrike便是米格攻击所使用的按钮。
在CommandButton.ini里搜索Command_NapalmStrike,我们看到:
CommandButton Command_NapalmStrike
Command = SPECIAL_POWER;说明这个按钮是作为超级武器使用。
SpecialPower = SuperweaponNapalmStrike;说明这个按钮所激活的超级武器。
Options = NEED_SPECIAL_POWER_SCIENCE NEED_TARGET_POS CONTEXTMODE_COMMAND;说明这个按钮的各种功能。
TextLabel = CONTROLBAR:NapalmStrike;说明这个按钮的名称。在Generals.csf里修改。
ButtonImage = SNFirestorm;说明这个按钮的图象。
ButtonBorderType = ACTION ; 说明这个按钮的使用类型。Identifier for the User as to what kind of button this is
DescriptLabel = CONTROLBAR:TempDescription;说明这个按钮的详细介绍。在Generals.csf里修改。
RadiusCursorType = NAPALMSTRIKE;说明这个按钮的鼠标指针。
InvalidCursorName = GenericInvalid;说明当不能使用时这个按钮的鼠标指针。
End
在Options=后面,我们将NEED_SPECIAL_POWER_SCIENCE(该超级武器是否需要科技)去掉。
在控制所有特殊能力(包括超级武器)的文件SpecialPower.ini里,搜索SuperweaponNapalmStrike,我们看到:
SpecialPower SuperweaponNapalmStrike
Enum = SPECIAL_NAPALM_STRIKE
ReloadTime = 600000 ; 该超级武器的准备时间,单位为毫秒。
RequiredScience = SCIENCE_NapalmStrike ;使用该超级武器所需要的科技。
PublicTimer = Yes ;是否在屏幕右上角显示倒计时。
SharedSyncedTimer = Yes ;是否一旦满足使用条件立刻准备完成。
ViewObjectDuration = 30000 ;使用该超级武器后显示地表的时间
ViewObjectRange = 250 ;使用该超级武器后显示多远的地表。
RadiusCursorRadius = 100 ;指针的范围,可用于调节显示这个超武攻击的范围。
End
我们将RequiredScience=SCIENCE_NapalmStrike这一行去掉。进入游戏,选择中国,我们便一开始就可以使用米格攻击这个超级武器了。
2.提升我们的操作效率!
如果我们想要像使用炮击或者空投地雷那样可以直接从屏幕右侧的快捷键选择米格攻击,那么我们首先要知道,屏幕右侧的快捷键组其实是一类特殊的按钮组。按钮组中所有的按钮,都对应着相应使用超级武器的按钮。例如在这个例子里,屏幕右侧快捷键组使用Command_NapalmStrikeFromCommandCenter这个按钮,而中国指挥中心则使用Command_NapalmStrike这个按钮,而它们都对应相同的超级武器SuperweaponNapalmStrike,如此一来,系统便能知道该将哪个按钮放到屏幕右侧快捷键组,而且无论你有多少个指挥中心(或者其他任何使用Command_NapalmStrike这个按钮的物件),屏幕右侧快捷键组都只会显示一个同类型的超级武器按钮。
在PlayerTemplate.ini里,每个阵营的设定中,SpecialPowerShortcutCommandSet = 设定了每个阵营所使用的屏幕右侧快捷键组。中国的是SpecialPowerShortcutChina,我们在CommandButton.ini里搜索SpecialPowerShortcutChina:
CommandSet SpecialPowerShortcutChina
1 = Command_ClusterMinesFromCommandCenter
2 = Command_ArtilleryBarrageFromCommandCenter
3 = Command_CashHackFromCommandCenter
4 = Command_EmergencyRepairFromCommandCenter
5 = Command_EMPPulseFromCommandCenter
END
屏幕右侧快捷键组被程序限定为最多只能有5个按钮。因此在这里我们只能去掉或者替换现有按钮中的一个。在这里,我们将空投地雷更换为米格攻击,同时为了说明方便起见,我们将它设定为一星将军便可以使用。
首先我们必须将上面一节中对米格攻击作出的改变还原,以用于屏幕右侧快捷键组,将NEED_SPECIAL_POWER_SCIENCE和RequiredScience=SCIENCE_NapalmStrike恢复到它们原来所在的地点。
然后在SpecialPower SuperweaponNapalmStrike里,我们去掉PublicTimer = Yes。
在控制所有将军晋级的科技里,我们搜索SCIENCE_ClusterMines,将它的PrerequisiteSciences = 改为None,SciencePurchasePointCost = 改为0以将其屏蔽。然后搜索SCIENCE_NapalmStrike,将PrerequisiteSciences = 改为SCIENCE_CHINA SCIENCE_Rank1(说明由一星中国将军来使用),SciencePurchasePointCost = 改为1。
在CommandButton.ini里搜索Command_PurchaseScienceClusterMines,将SCIENCE_ClusterMines改为SCIENCE_NapalmStrike,然后将ButtonImage的内容改为SNFirestorm。
最后在CommandSet.ini里搜索SpecialPowerShortcutChina,将Command_ClusterMinesFromCommandCenter改为Command_NapalmStrikeFromCommandCenter。如此一来我们便可以在屏幕右侧快捷键组中使用米格攻击这个超级武器了。
