水流行险 发表于 2022-12-27 19:46:21

[已解决]回城卷轴中的对话框该如何退出?

本帖最后由 水流行险 于 2022-12-27 22:47 编辑

在下面图2这个对话框选择中,无论我选择是还是否 ,下一个对话框都要跳出图3。虽然不影响图3的选择,但我很不爽这个不听话的脚本。我在以下脚本标注了红色的地方。FU:E该如何配合IF:Q使用?请版主不吝指点。



!?CM0&1000;
!!UN:P52/?y1;
!!FU&y1=0:E;
!!CM:S?y1 T?y2 I?y3;
!!FU|y1<>14/y2<>512/y3<>2004:E;             按冒险界面右键英雄头像防御2004按扭使用
!!CM:R0;
!!IF&v4137<=0:Q1/8/1/1^{回城卷轴}

你现在有0个回城卷轴,请到卷轴商人处购买。^;
!!FU&v4137<=0:E;
!!IF:Q2^{回城卷轴}

你现在有%V4137个回城卷轴,

是否使用?^;
!!FU&-2:E;选择不使用

!!OW:C?v1;检查当前玩家编号储存在V1

!!UN:U98/-1/?v2;
!!VRv3:S0;
!!DO20520/1/v2/1&v2>0:Pv1; 计算城镇数量储存在V2名字在V3


!!IF&1000/v3=0:M^{回城卷轴}

你想去哪里呢?你连一座城堡也没有。^;
!!FU&1000/v3=0:E;


!!IF&1000/v3>0:Q1/9/9/2^{回城卷轴}

你确定要使用回城卷轴吗,那将花费你1000黄金?

{『注意:请勿在海上航行时使用,硬码会把船传送到城门,之后英雄无法恢复陆地状态。如果不点击选择英雄或城堡,可能会随机传到海上。====by独孤求败2013年7月16日指出bug,经沧海一粟、兽哥哥、贤知有您、Archer30、yunings、canary、XEricSin、玄子等版主证实,历经十年仍无法解决检查英雄陆地/海上状态』}^;


!!VRy-1&-1000/v3>0:S1 R3;
!!IF&-1000/v3>0:V2/0;
!!IF&-1000/v3>0/y-1=1:V2/1;


!!FU&-2:E;选择否就不使用


!!HE-1:O?y-1;
!!OW:Ry-1/6/?y-2;
!!IF&1000/y-2<1000:M^{回城卷轴}

对不起,你的黄金不够!^;
!!FU&y-2<1000:E;
=================================================================================

函数20521出现,跳出选择城镇界面
!!VRv730:S0;
!!FU20521:Pv1/v2/v3;



Archer30 发表于 2023-1-2 02:03:47

独孤求败2013年7月16日指出bug,经沧海一粟、兽哥哥、贤知有您、Archer30、yunings、canary、XEricSin、玄子等版主证实,历经十年仍无法解决检查英雄陆地/海上状态。
我啥时候说过这个?楼主确定没法检查?基础erm问题把。


两种简单的方法可以检查。

1. 检查英雄脚下的地形是否为水面
用HE:P和TR:T命令

2. 检查英雄是否在船上
这个可能有一些人也不知道,我这里写个例子

按1检查当前英雄是否在船上。
ZVSE2

!?FU(OnKeyPressed)&i^key^=(KEY_1);
!!CM:R0;

!!OW:A(CURRENT_PLAYER)/?(hero:y);
!!FU&(hero)<=(NO_HERO):E;

!!HE(hero):R7/?(flagBits:y);
!!VR(isOnABoat:y):S(flagBits) &262144 B;

!!if&(isOnABoat);
!!IF:M^Hero #%(hero) is on a boat.^;
!!el;
!!IF:M^Hero #%(hero) is NOT on a boat.^;
!!en;

具体用哪一种看你的具体需求。

Archer30 发表于 2023-1-4 03:43:37

你还是得恶补erm知识

单独做一个erm是为了测试我的脚本有没有问题啊!如果没有问题,你才考虑嵌入你自己的erm。

if el en是条件结构。if当条件1满足时,el当条件1不满足时,en结束整个条件1的判断。

这里用我的方法写了你的脚本的后半部分。没测试过,你看看有没有问题。


!!FU&-2:E;选择否就不使用
________

!!OW:Ai^timerOwner^/?y30;               

!!if&y30=(NO_HERO);
!!IF:M^{回城卷轴}

对不起,当前你没有活动的英雄。^;
!!FU:E;
!!el;
!!HEy30:R7/?y31;
!!VRy32:Sy31 &262144 B;

!!if&y32;
    !!IF:M^{回城卷轴}

对不起,你的英雄当前在船上,无法回城。^;
    !!FU:E;
!!en;
!!en;

!!OW:Ri^timerOwner^/6/?y-2;
!!IF&1000/y-2<1000:M^{回城卷轴}

对不起,你的黄金不够!^;
!!FU&y-2<1000:E;

函数20521出现,跳出选择城镇界面
!!VRv730:S0;
!!FU20521:Pv1/v2/v3;



Archer30 发表于 2022-12-27 21:51:19

楼主能不能简单明了地说明整个脚本要做啥?

FU:E是用来退出整个函数的。如果你的脚本有多层条件,FU:E会直接终止所有内容,一下子跳开所有判断。这可能不是你要的结果。一般你只需要多层 if en结构就能做到多重条件判断了。


水流行险 发表于 2022-12-27 22:38:34

本帖最后由 水流行险 于 2022-12-27 22:43 编辑

Archer30 发表于 2022-12-27 21:51
楼主能不能简单明了地说明整个脚本要做啥?

FU:E是用来退出整个函数的。如果你的脚本有多层条件,FU:E会 ...
我只想在图二这里加上一个图标;hi;,就不行了!哈哈哈:nianjing:上边绿色地方是原版对的,下面红色的地方是我改的,我想加一个图标上去,就不行了。快帮帮我!

    1/9/9/
!!IF&1000/v3>0:Q2^{回城卷轴}

你确定要使用回城卷轴吗,那将花费你1000黄金?

{『注意:请勿在海上航行时使用,硬码会把船传送到城门,之后英雄无法恢复陆地状态。如果不点击选择英雄或城堡,可能会随机传到海上。====by独孤求败2013年7月16日指出bug,经沧海一粟、兽哥哥、贤知有您、Archer30、yunings、canary、XEricSin、玄子等版主证实,历经十年仍无法解决检查英雄陆地/海上状态』}^;



!!VRy-1&-1000/v3>0:S1 R3;
!!IF&-1000/v3>0:V2/0;
!!IF&-1000/v3>0/y-1=1:V2/1;


!!FU&-2:E;选择否就不使用

;sl;;sl;;sl;;sl;
==============================================================================

   
!!IF&1000/v3>0:Q1/9/9/2^{回城卷轴}

你确定要使用回城卷轴吗,那将花费你1000黄金?

{『注意:请勿在海上航行时使用,硬码会把船传送到城门,之后英雄无法恢复陆地状态。如果不点击选择英雄或城堡,可能会随机传到海上。====by独孤求败2013年7月16日指出bug,经沧海一粟、兽哥哥、贤知有您、Archer30、yunings、canary、XEricSin、玄子等版主证实,历经十年仍无法解决检查英雄陆地/海上状态』}^;



!!VRy-1&-1000/v3>0:S1 R3;
!!IF&-1000/v3>0:V2/0;
!!IF&-1000/v3>0/y-1=1:V2/1;


!!FU&-2:E;选择否就不使用





水流行险 发表于 2022-12-27 22:47:24

!!IF&1000/v3>0:Q2/9/9/2^{回城卷轴}

解决
Q1/9/9/2
Q2/9/9/2

18640879586 发表于 2022-12-28 02:41:41

这个脚本挺有意思的啊,1000块用一次时空门不亏啊

水流行险 发表于 2023-1-3 03:27:45

Archer30 发表于 2023-1-2 02:03
我啥时候说过这个?楼主确定没法检查?基础erm问题把。




你这个代码能放在我的一代代码里面吗?

我这个是手动使用回程卷轴.




水流行险 发表于 2023-1-3 18:16:40

Archer30 发表于 2023-1-2 02:03
我啥时候说过这个?楼主确定没法检查?基础erm问题把。




你的ERA2我无法放在一起使用,请帮助我用TR检查英雄的水面状态。

Archer30 发表于 2023-1-3 18:56:53

你需要确保你的erm的开头是ZVSE2,而不是ZVSE就行

哎说实话我写的这个例子已经非常明白了,你先试试看单独用是不是有用。如果有用,你再思考如何放回你的erm中。

水流行险 发表于 2023-1-3 23:33:03

本帖最后由 水流行险 于 2023-1-3 23:37 编辑

Archer30 发表于 2023-1-3 18:56
你需要确保你的erm的开头是ZVSE2,而不是ZVSE就行

哎说实话我写的这个例子已经非常明白了,你先试试看单 ...
=================================================================================

!?CM0&1000;
!!UN:P52/?y1;
!!FU&y1=0:E;
!!CM:S?y1 T?y2 I?y3;
!!FU|y1<>14/y2<>512/y3<>2004:E;             按冒险界面右键英雄头像防御2004按扭使用
!!CM:R0;
!!IF&v4137<=0:Q1/9/9/1^你英雄的团队现在持有{0}个{回城卷轴},请到卷轴商人处购买。^;
!!FU&v4137<=0:E;
!!IF:Q2/9/9/2^你英雄的团队现在持有{%V4137}个{回城卷轴},是否使用?^;
!!FU&-2:E;选择不使用

!!OW:C?v1;检查当前玩家编号储存在V1

!!UN:U98/-1/?v2;
!!VRv3:S0;
!!DO20520/1/v2/1&v2>0:Pv1; 计算城镇数量储存在V2名字在V3


!!IF&1000/v3=0:M^{回城卷轴}

你想去哪里呢?你连一座城堡也没有。^;
!!FU&1000/v3=0:E;


!!IF&1000/v3>0:Q2/9/9/2^{回城卷轴}

你确定要使用回城卷轴吗,那将花费你{1000黄金}?

{『注意:请勿在海上航行时使用,硬码会把船传送到城门,之后英雄无法恢复陆地状态。如果不点击选择英雄或城镇,可能会随机传到海上。====by独孤求败2013年7月16日指出bug,经沧海一粟、兽哥哥、贤知有您、Archer30、yunings、canary、XEricSin、玄子等版主证实,历经十年仍无法解决检查英雄陆地/海上状态』}^;



!!VRy-1&-1000/v3>0:S1 R3;
!!IF&-1000/v3>0:V2/0;
!!IF&-1000/v3>0/y-1=1:V2/1;


!!FU&-2:E;选择否就不使用


!!HE-1:O?y-1;
!!OW:Ry-1/6/?y-2;
!!IF&1000/y-2<1000:M^{回城卷轴}

对不起,你的黄金不够!^;
!!FU&y-2<1000:E;

=================================================================================

!?FU(OnKeyPressed)&i^key^=(KEY_1);                检查光标是否锁定英雄
!!CM:R0;

!!OW:A(CURRENT_PLAYER)/?(hero:y);
!!FU&(hero)<=(NO_HERO):E;

!!HE(hero):R7/?(flagBits:y);                      检查英雄是否在船上
!!VR(isOnABoat:y):S(flagBits) &262144 B;

!!if&(isOnABoat);
!!IF:M^Hero #%(hero) is on a boat.^;
!!el;                                                         el是结束?
!!IF:M^Hero #%(hero) is NOT on a boat.^;
!!en;                                                      en是继续?

=================================================================================

函数20521出现,跳出选择城镇界面
!!VRv730:S0;
!!FU20521:Pv1/v2/v3;

---------------------------------------------------------------------------------
没有反应啊?&262144 B;检查了在船上吗???;hi;;hi;;hi;


Archer30 发表于 2023-1-4 01:00:08

这样说吧,你把我发的那段单独保存成一个erm文件,进游戏后按数字键1,出现什么?

你的mod列表中必须有era erm框架mod才能用我的语句

另外论坛要关闭了,请加入到Mod创作交流群(QQ群:963811587)防止失联

水流行险 发表于 2023-1-4 02:52:56

本帖最后由 水流行险 于 2023-1-4 02:56 编辑

Archer30 发表于 2023-1-4 01:00
这样说吧,你把我发的那段单独保存成一个erm文件,进游戏后按数字键1,出现什么?

你的mod列表中必须有e ...
有框架呢。单独做一个erm?有什么用处?能帮我嵌入这里吗?

水流行险 发表于 2023-1-4 18:54:07

本帖最后由 水流行险 于 2023-1-4 19:07 编辑

成功!;kl;
25-29行检查扣除黄金跳出错误,我用了原来的脚本即可.

Archer30 发表于 2023-1-6 02:45:45

水流行险 发表于 2023-1-4 18:54
成功!
25-29行检查扣除黄金跳出错误,我用了原来的脚本即可.
如果那几行有问题,可能说明你用的era erm框架mod太老了(缺失i^timerOwner^的定义)

不过细想好像也不对。。
页: [1]
查看完整版本: [已解决]回城卷轴中的对话框该如何退出?

捐赠