收起左侧

[资料] 帝国时代3第三人称视角触发程序

[复制链接]
こはね发表于 2019-10-8 16:19:00
花了一天时间研究制作的第三人称视角,终于制作成功了。有了这个触发程序,以后可以在帝国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第三人称视角触发程序

帝国时代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第三人称视角触发程序

帝国时代3第三人称视角触发程序

下载本触发程序(回复本帖后即可下载):advancecamera.xml
将下载的xml文件放到帝国3目录的trigger3文件夹里面。

  1. <Effect name="*Advanced Camera Face and Follow Unit">
  2. <Param name="Player" dispName="player" VarType="player"></Param>
  3. <Param name="DstObject" dispName="Target Unit" varType="unit">default</Param>
  4. <Param name="NormalZoom" dispName="NormalZoom" varType="long">16</Param>
  5. <Param name="MaxZoom" dispName="MaxZoom" varType="long">10</Param>
  6. <Param name="MinZoom" dispName="MinZoom" varType="long">10</Param>
  7. <Param name="ExtraZoom" dispName="ExtraZoom" varType="long">10</Param>
  8. <Param name="LimitPitch" dispName="LimitPitch" varType="long">20</Param>
  9. <Command>if(trCurrentPlayer()==%Player%)</Command>
  10. <Command>{</Command>
  11. <Command>trUnitSelectClear();</Command>
  12. <Command loop="" loopParm="DstObject">trUnitSelect("%DstObject%");</Command>
  13. <Command>trCameraLockOnUnit(true,0,-1);</Command>
  14. <Command>configSetInt("NormalZoom",%NormalZoom%);</Command>
  15. <Command>xsSetContextPlayer(%Player%);</Command>
  16. <Command>uiLookAtAndSelectUnit(kbGetBlockID("%DstObject%"));</Command>
  17. <Command>configSetInt("MaxZoom",%MaxZoom%);</Command>
  18. <Command>configSetInt("MinZoom",%MinZoom%);</Command>
  19. <Command>configSetInt("ExtraZoom",%ExtraZoom%);</Command>
  20. <Command>configSetInt("limitPitch",%LimitPitch%);</Command>
  21. <Command>map("mousez", "world", "");</Command>
  22. <Command>uiShowCameraStartLoc();</Command>
  23. <Command>}</Command>
  24. </Effect>
  25. <Effect name="*Advanced Camera Reset">
  26. <Param name="EventID" dispName="Disable Trigger" VarType="event"></Param>
  27. <Param name="Player" dispName="player" VarType="player"></Param>
  28. <Command>trDisableTrigger(%EventID%);</Command>
  29. <Command>if(trCurrentPlayer()==%Player%)</Command>
  30. <Command>{</Command>
  31. <Command>trCameraLockOnUnit(false,0,-1);</Command>
  32. <Command>map("mousez", "world", "uiWheelRotate");</Command>
  33. <Command>configSetInt("NormalZoom",50);</Command>
  34. <Command>configSetInt("MaxZoom",60);</Command>
  35. <Command>configSetInt("MinZoom",29);</Command>
  36. <Command>configSetInt("ExtraZoom",29);</Command>
  37. <Command>configSetInt("limitPitch",47);</Command>
  38. <Command>cameraRotate();</Command>
  39. <Command>}</Command>
  40. </Effect>
复制代码



视频链接:https://www.bilibili.com/video/av70551248

[bilibili=100%,calc(100vw*0.56)]70551248[/bilibili]
jinli发表于 2022-4-14 09:50:48
第三人称修改
吊儿郎当玩游戏发表于 2022-5-2 21:19:26
谢谢你,借用一下触发程序
  • こはね : 顺便提醒一下,地形高度是固定的
小趴菜、、、发表于 2023-6-3 21:04:08
6666666666
ykage3发表于 2023-11-11 20:26:04
厉害呢
跳转到