横扫天下会 最高指挥官

 找回密码
 注册
楼主: 塔斯普可

气垫运输的研究

[复制链接]
发表于 2009-8-6 12:36 | 显示全部楼层
如果無視敵我,那麽大群氣墊運輸船似乎可以發動集體沖鋒了,擋路者統統吸入肚子,哈哈~~~
星月有约 发表于 2009-8-6 12:26


这BUG可就大发了{:6_284:}
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-8-6 12:39 | 显示全部楼层
本帖最后由 塔斯普可 于 2009-8-6 12:41 编辑

吸还没别人杀得快吧,而且气垫的加速度不行,不适合战场前线移动
回复 支持 反对

使用道具 举报

发表于 2009-8-6 14:01 | 显示全部楼层
本帖最后由 honeyfox 于 2009-8-6 14:02 编辑
如果無視敵我,那麽大群氣墊運輸船似乎可以發動集體沖鋒了,擋路者統統吸入肚子,哈哈~~~
星月有约 发表于 2009-8-6 12:26


就是要这个效果。哈哈。
11年了,运输船从来没被多少人正眼看过。。。现在要补偿回来!!{:7_333:}
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-8-6 14:03 | 显示全部楼层
{:6_329:}蜜狐试试改改原子版气垫的脚本吧,应该不是很难,就是将圆心从运输气垫改到选择装载的单位上而已。
回复 支持 反对

使用道具 举报

发表于 2009-8-6 14:15 | 显示全部楼层
哈哈。。。我似乎找到原子版运输船文本格式的脚本了,有空看看。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-8-6 14:21 | 显示全部楼层
原子版气垫装单位的脚本
  1. TransportPickup(unitid)
  2. {
  3.         var Func_Var_2, Func_Var_3,distance,xz,x,z;
  4.         set BUSY to 1;
  5.         if( Static_Var_7 < 10 )
  6.         {
  7.                 Func_Var_2 = 1;
  8.                 while( Func_Var_2 <= 10 * 1500 )
  9.                 {
  10.                         if( get UNIT_Y(Func_Var_2) - get GROUND_HEIGHT(get UNIT_XZ(Func_Var_2)) < [2] AND get PIECE_Y(base) - get GROUND_HEIGHT(get UNIT_XZ(Func_Var_2)) <= [5] )
  11.                         {
  12.                                 if( get UNIT_HEIGHT(Func_Var_2) < [28] )
  13.                                 {
  14.                                         if( get UNIT_XZ(Func_Var_2) != get PIECE_XZ(base) )
  15.                                         {
  16.                                                 xz =  get UNIT_XZ(Func_Var_2) - get PIECE_XZ(base);
  17.                                                         SECURE_XZ;
  18.                                                         distance=get XZ_HYPOT(xz);
  19.                                                 if( distance <= [150.000000] )
  20.                                                 {
  21.                                                         attach-unit Func_Var_2 to 0 - 1;
  22.                                                         sleep 500;
  23.                                                         if( get UNIT_XZ(Func_Var_2) == get PIECE_XZ(base) )
  24.                                                         {
  25.                                                                 ++Static_Var_7;
  26.                                                                 if( Static_Var_7 == 1 )
  27.                                                                 {
  28.                                                                         Static_Var_8 = Func_Var_2;
  29.                                                                 }
  30.                                                                 if( Static_Var_7 == 2 )
  31.                                                                 {
  32.                                                                         Static_Var_9 = Func_Var_2;
  33.                                                                 }
  34.                                                                 if( Static_Var_7 == 3 )
  35.                                                                 {
  36.                                                                         Static_Var_10 = Func_Var_2;
  37.                                                                 }
  38.                                                                 if( Static_Var_7 == 4 )
  39.                                                                 {
  40.                                                                         Static_Var_11 = Func_Var_2;
  41.                                                                 }
  42.                                                                 if( Static_Var_7 == 5 )
  43.                                                                 {
  44.                                                                         Static_Var_12 = Func_Var_2;
  45.                                                                 }
  46.                                                                 if( Static_Var_7 == 6 )
  47.                                                                 {
  48.                                                                         Static_Var_13 = Func_Var_2;
  49.                                                                 }
  50.                                                                 if( Static_Var_7 == 7 )
  51.                                                                 {
  52.                                                                         Static_Var_14 = Func_Var_2;
  53.                                                                 }
  54.                                                                 if( Static_Var_7 == 8 )
  55.                                                                 {
  56.                                                                         Static_Var_15 = Func_Var_2;
  57.                                                                 }
  58.                                                                 if( Static_Var_7 == 9 )
  59.                                                                 {
  60.                                                                         Static_Var_16 = Func_Var_2;
  61.                                                                 }
  62.                                                                 if( Static_Var_7 == 10 )
  63.                                                                 {
  64.                                                                         Static_Var_17 = Func_Var_2;
  65.                                                                 }
  66.                                                                 sleep 500;
  67.                                                         }
  68.                                                 }
  69.                                         }
  70.                                 }
  71.                         }
  72.                         ++Func_Var_2;
  73.                 }
  74.         }
  75.         set BUSY to 0;
  76.         return (0);
  77. }
复制代码
回复 支持 反对

使用道具 举报

发表于 2009-8-6 14:22 | 显示全部楼层
本帖最后由 honeyfox 于 2009-8-6 14:26 编辑

似乎只需要把
  1. TransportPickup(unitid)
  2. {
  3. &#160; &#160; var Func_Var_2, Func_Var_3,distance,xz,x,z;
  4. &#160; &#160; Func_Var_2 = 1;
  5. &#160; &#160; set BUSY to 1;
  6. &#160; &#160; while( Func_Var_2 <= 10 * 1500 )
  7. &#160; &#160; {
  8. &#160; &#160; &#160; &#160; if( get UNIT_Y(Func_Var_2) - get GROUND_HEIGHT(get UNIT_XZ(Func_Var_2)) < [2.000000] AND get PIECE_Y(base) - get GROUND_HEIGHT(get UNIT_XZ(Func_Var_2)) <= [5.000000] )
  9. &#160; &#160; &#160; &#160; {
  10. &#160; &#160; &#160; &#160; &#160; &#160; if( Static_Var_7 < 10 AND get UNIT_XZ(Func_Var_2) != get PIECE_XZ(base) )
  11. &#160; &#160; &#160; &#160; &#160; &#160; {
  12. &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; if( get UNIT_HEIGHT(Func_Var_2) < [28.000000] )
  13. &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; {
  14. &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160;&#160; &#160;xz = get UNIT_XZ(Func_Var_2) - get PIECE_XZ(base);
  15. &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; SECURE_XZ;
  16. &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; distance=get XZ_HYPOT(xz);
复制代码
中的 xz = get UNIT_XZ(Func_Var_2) - get PIECE_XZ(base); 改为xz = get UNIT_XZ(Func_Var_2) - get Unit_XZ(unitid); 即可。

当然最好是即计算运输单位到被运输单位的距离,也计算被运输单位和其身边单位的距离,然后各自小于某值则运输。
回复 支持 反对

使用道具 举报

发表于 2009-8-6 14:35 | 显示全部楼层
看此錄像大約90%的位置,大批陸軍被運輸船運送至對岸:
http://www.taclub.net/taclub/newta/thread-9733-1-1.html
回复 支持 反对

使用道具 举报

发表于 2009-8-6 14:35 | 显示全部楼层
在本段开头声明变量的地方加上一个distance2:
var Func_Var_2, Func_Var_3,distance,xz,x,z,distance2;
然后在后面的相关代码改为:
xz = get UNIT_XZ(Func_Var_2) - get PIECE_XZ(base);
SECURE_XZ;
distance=get XZ_HYPOT(xz);
xz = get UNIT_XZ(Func_Var_2) - get UNIT_XZ(unitid);
SECURE_XZ;
distance2=get XZ_HYPOT(xz);
if( distance <= [150.000000] AND distance2 <= [90.000000] )
{
     。。。后续代码
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-8-6 14:47 | 显示全部楼层
{:6_282:}蜜狐顺便把卸载方式改为猫版那种就好啦,期待猫版1.5也使用新的脚本
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|横扫天下会 最高指挥官 ( 沪ICP备11033600号-1 )

GMT+8, 2020-2-27 04:42 , Processed in 0.016671 second(s), 16 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表