花了一天时间研究制作的第三人称视角,终于制作成功了。有了这个触发程序,以后可以在帝国3制作第三人称视角剧情了。
触发程序:
<Effect name="*Advanced Camera Face and Follow Unit">
<Param name="Player" dispName="player" VarType="player"></Param>
<Param name="DstObject" dispName="Target Unit" varType="unit">default</Param>
<Param name="NormalZoom" dispName="NormalZoom" varType="long">16</Param>
<Param name="MaxZoom" dispName="MaxZoom" varType="long">10</Param>
<Param name="MinZoom" dispName="MinZoom" varType="long">10</Param>
<Param name="ExtraZoom" dispName="ExtraZoom" varType="long">10</Param>
<Param name="LimitPitch" dispName="LimitPitch" varType="long">20</Param>
<Command>if(trCurrentPlayer()==%Player%)</Command>
<Command>{</Command>
<Command>trUnitSelectClear();</Command>
<Command loop="" loopParm="DstObject">trUnitSelect("%DstObject%");</Command>
<Command>trCameraLockOnUnit(true,0,-1);</Command>
<Command>configSetInt("NormalZoom",%NormalZoom%);</Command>
<Command>xsSetContextPlayer(%Player%);</Command>
<Command>uiLookAtAndSelectUnit(kbGetBlockID("%DstObject%"));</Command>
<Command>configSetInt("MaxZoom",%MaxZoom%);</Command>
<Command>configSetInt("MinZoom",%MinZoom%);</Command>
<Command>configSetInt("ExtraZoom",%ExtraZoom%);</Command>
<Command>configSetInt("limitPitch",%LimitPitch%);</Command>
<Command>map("mousez", "world", "");</Command>
<Command>uiShowCameraStartLoc();</Command>
<Command>}</Command>
</Effect>
帝国时代3第三人称视角触发程序
<Effect name="*Advanced Camera Reset">
<Param name="EventID" dispName="Disable Trigger" VarType="event"></Param>
<Param name="Player" dispName="player" VarType="player"></Param>
<Command>trDisableTrigger(%EventID%);</Command>
<Command>if(trCurrentPlayer()==%Player%)</Command>
<Command>{</Command>
<Command>trCameraLockOnUnit(false,0,-1);</Command>
<Command>map("mousez", "world", "uiWheelRotate");</Command>
<Command>configSetInt("NormalZoom",50);</Command>
<Command>configSetInt("MaxZoom",60);</Command>
<Command>configSetInt("MinZoom",29);</Command>
<Command>configSetInt("ExtraZoom",29);</Command>
<Command>configSetInt("limitPitch",47);</Command>
<Command>cameraRotate();</Command>
<Command>}</Command>
</Effect>
帝国时代3第三人称视角触发程序
下载本触发程序(回复本帖后即可下载):
将下载的xml文件放到帝国3目录的trigger3文件夹里面。
- <Effect name="*Advanced Camera Face and Follow Unit">
- <Param name="Player" dispName="player" VarType="player"></Param>
- <Param name="DstObject" dispName="Target Unit" varType="unit">default</Param>
- <Param name="NormalZoom" dispName="NormalZoom" varType="long">16</Param>
- <Param name="MaxZoom" dispName="MaxZoom" varType="long">10</Param>
- <Param name="MinZoom" dispName="MinZoom" varType="long">10</Param>
- <Param name="ExtraZoom" dispName="ExtraZoom" varType="long">10</Param>
- <Param name="LimitPitch" dispName="LimitPitch" varType="long">20</Param>
- <Command>if(trCurrentPlayer()==%Player%)</Command>
- <Command>{</Command>
- <Command>trUnitSelectClear();</Command>
- <Command loop="" loopParm="DstObject">trUnitSelect("%DstObject%");</Command>
- <Command>trCameraLockOnUnit(true,0,-1);</Command>
- <Command>configSetInt("NormalZoom",%NormalZoom%);</Command>
- <Command>xsSetContextPlayer(%Player%);</Command>
- <Command>uiLookAtAndSelectUnit(kbGetBlockID("%DstObject%"));</Command>
- <Command>configSetInt("MaxZoom",%MaxZoom%);</Command>
- <Command>configSetInt("MinZoom",%MinZoom%);</Command>
- <Command>configSetInt("ExtraZoom",%ExtraZoom%);</Command>
- <Command>configSetInt("limitPitch",%LimitPitch%);</Command>
- <Command>map("mousez", "world", "");</Command>
- <Command>uiShowCameraStartLoc();</Command>
- <Command>}</Command>
- </Effect>
- <Effect name="*Advanced Camera Reset">
- <Param name="EventID" dispName="Disable Trigger" VarType="event"></Param>
- <Param name="Player" dispName="player" VarType="player"></Param>
- <Command>trDisableTrigger(%EventID%);</Command>
- <Command>if(trCurrentPlayer()==%Player%)</Command>
- <Command>{</Command>
- <Command>trCameraLockOnUnit(false,0,-1);</Command>
- <Command>map("mousez", "world", "uiWheelRotate");</Command>
- <Command>configSetInt("NormalZoom",50);</Command>
- <Command>configSetInt("MaxZoom",60);</Command>
- <Command>configSetInt("MinZoom",29);</Command>
- <Command>configSetInt("ExtraZoom",29);</Command>
- <Command>configSetInt("limitPitch",47);</Command>
- <Command>cameraRotate();</Command>
- <Command>}</Command>
- </Effect>
复制代码
视频链接:https://www.bilibili.com/video/av70551248 |