找回密码
 立即注册
楼主: 诚实小鸟

懒得动手,也没有思路,悬赏个脚本!

[复制链接]

2797

主题

3万

回帖

2801

积分

金牌会员

积分
2801
 楼主| 发表于 2026-3-27 18:27:02 | 显示全部楼层
一个T变量解决存储
T1=0:0:0:0:0:0:0:0:0....多少个来着?你有多少个地图要弄就写多少个...0就是没开,1就是开了.
用TextSplit做一个分解,开了哪个,哪个=1..然后用INC 重新拼到T1去...
至于哪个开了,我想你已经有思路并写好了...写两行存储和分解调用就行了.
显示也是一样,打开前TextSplit一下,然后检测0,1做显示就行了
只是思路,优化了存储,其他显示优化看你写的应该是不错的.

2797

主题

3万

回帖

2801

积分

金牌会员

积分
2801
 楼主| 发表于 2026-3-27 18:27:02 | 显示全部楼层
引擎自带有一个记路标石吧.,.我觉得那个可以直接用...

2797

主题

3万

回帖

2801

积分

金牌会员

积分
2801
 楼主| 发表于 2026-3-27 18:27:02 | 显示全部楼层
    [@传送石头]
    传送祭坛可以传送你已经抵达的地方,瞬间即达\\
    <$STR(T21)>   <$STR(T22)>   <$STR(T23)>   <$STR(T24)>   <$STR(T25)> \\
    <$STR(T26)>   <$STR(T27)>   <$STR(T28)>   <$STR(T29)>   <$STR(T30)> \\
    <$STR(T31)>   <$STR(T32)>   <$STR(T33)>   <$STR(T34)>   <$STR(T35)> \\
    <$STR(T36)>   <$STR(T37)>   <$STR(T38)>   <$STR(T39)>   <$STR(T40)> \\
    <$STR(T41)>   <$STR(T42)>   <$STR(T43)>   \\

    [@地图传送]
    #IF
    #ACT
    MAPMOVE <$SCRIPTPARAM1> <$SCRIPTPARAM2> <$SCRIPTPARAM3> 3
    BREAK

    ;以上为传送NPC脚本

    ;以下为地图中激活传送的传送石脚本,每个地图1个,参数中的地图号和坐标按实际修改。变量根据自己版本避开占用

    [@main]
    #IF
    equal T21
    #ACT
    mov T21 <传送地图1/@地图传送(3,330,330)>
    break

    [@main]
    #IF
    equal T22
    #ACT
    mov T22 <传送地图2/@地图传送(0,625,327)>
    break

    [@main]

    [@main]

复制代码

2797

主题

3万

回帖

2801

积分

金牌会员

积分
2801
 楼主| 发表于 2026-3-27 18:27:02 | 显示全部楼层
月御望舒 发表于 2022-6-11 22:31
跟我写的居然差不多,看来没有更高效的脚本了

2797

主题

3万

回帖

2801

积分

金牌会员

积分
2801
 楼主| 发表于 2026-3-27 18:27:02 | 显示全部楼层
51614445 发表于 2022-6-11 13:55 建议你玩一下暗黑
不光暗黑 很多单职业服都有这种

2797

主题

3万

回帖

2801

积分

金牌会员

积分
2801
 楼主| 发表于 2026-3-27 18:27:02 | 显示全部楼层
123330364 发表于 2022-6-12 10:48 不光暗黑 很多单职业服都有这种
暗黑那是始祖,很多都可以借鉴

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×

2797

主题

3万

回帖

2801

积分

金牌会员

积分
2801
 楼主| 发表于 2026-3-27 18:27:02 | 显示全部楼层
楼上的对哈,用二进制位就行,判断下0和1就行

2797

主题

3万

回帖

2801

积分

金牌会员

积分
2801
 楼主| 发表于 2026-3-27 18:27:02 | 显示全部楼层
czy7812 发表于 2022-6-12 14:40 不知道下图这样满意不满意?有多少个显示多少个,没有显示还没标记,每5个分行:
GetTextLineCount 报错  是新版本引擎增加的命令么

2797

主题

3万

回帖

2801

积分

金牌会员

积分
2801
 楼主| 发表于 2026-3-27 18:27:02 | 显示全部楼层
wzs221122 发表于 2022-6-12 15:00 GetTextLineCount 报错  是新版本引擎增加的命令么
是3.20更新后的命令,也不算新了,如果没这个命令,那文本只能自己做标记

2797

主题

3万

回帖

2801

积分

金牌会员

积分
2801
 楼主| 发表于 2026-3-27 18:27:02 | 显示全部楼层
感谢@czy7812 的思路,虽然他的脚本不能直接用,但是还是参考了他的脚本思路。
下面把我优化后的脚本贴出来给大家参考一下,人物出生必须先添加一段脚本才可以:
AddTextListEx ..\\QuestDiary\\传送坐标\\<$USERNAME>传送.txt <$MapTitle>:<$MAP>:<$X>:<$Y>
所有传送石头的统一脚本:
    [@main]
    #IF
    #ACT
    goto @ass

    [@ass]
    #IF
    GetStringPosEX ..\\QuestDiary\\传送坐标\\<$USERNAME>传送.txt <$MapTitle> N1 S2 0
    #ACT
    goto @djksafh
    #ELSEACT
    AddTextListEx ..\\QuestDiary\\传送坐标\\<$USERNAME>传送.txt <$MapTitle>:<$MAP>:<$X>:<$Y>
    goto @ass

    [@djksafh]
    #IF
    #ACT
    GetStringPos ..\\QuestDiary\\传送坐标\\<$USERNAME>传送.txt 和平客栈:0116:10:14
    INC N0 1

    #IF
    #ACT
    MOV N1 0
    MOV P1 0
    MOV S$内容 \"\"
    LOOPGOTO @显示 <$STR(N0)>
    #SAY
    传送祭坛可以传送你已经抵达的地方,瞬间即达:\\
    <$STR(S$内容)>

    [@显示]
    #IF
    #ACT
    GetListString ..\\QuestDiary\\传送坐标\\<$USERNAME>传送.TXT <$STR(N1)> S0
    TextSplit : <$STR(S0)> S1
    INC S$内容 <
    INC S$内容 <$STR(S1)>/@移动(<$STR(S2)>,<$STR(S3)>,<$STR(S4)>)>
    INC N1 1
    INC P1 1

    #IF
    EQUAL P1 5
    #ACT
    MOV P1 0
    INC S$内容 \\
    #ELSEACT
    INC S$内容 \"  \"

    [@移动]
    #IF
    #ACT
    MAPMOVE <$SCRIPTPARAM1> <$SCRIPTPARAM2> <$SCRIPTPARAM3> 2

复制代码

© 2026 折翼天使社区 版权所有