骑马与砍杀中文站论坛

 找回密码
 注册(Register!)

QQ登录

只需一步,快速开始

搜索
购买CDKEY 小黑盒加速器
查看: 1863|回复: 37

[求助] 【已解决】萌新代码求助

[复制链接]

1

主题

23

回帖

7

积分

平民

Rank: 1

UID
3122012
第纳尔
53
精华
0
互助
0
荣誉
0
贡献
0
魅力
0
注册时间
2019-12-10
鲜花(2) 鸡蛋(0)
发表于 2023-8-1 14:29:46 | 显示全部楼层 |阅读模式
本帖最后由 agjib 于 2023-8-3 13:03 编辑

(ti_on_agent_hit, 0, 0, [],
        [
        (store_trigger_param_1, ":damage"),
        (store_trigger_param_2, ":all_agents"),
        (store_trigger_param_3, ":wanjia_yn"),
        (try_for_agents, ":all_agents"),
        (get_player_agent_no, ":wanjia_yn"),
        (agent_get_troop_id, ":agt_bh", ":all_agents"),
        (eq, ":agt_bh", ":wanjia_yn"),
        (try_begin),
        (store_skill_level, ":player_ski","skl_ironflesh", ":wanjia_yn"),
        (assign, ":bone", ":player_ski"),
        (try_begin),
            (val_sub, ":damage", ":bone"),
            (val_mul, ":bone", -10),
            (val_add, ":bone", 100),
            (val_mul, ":damage", ":bone"),
            (val_div, ":damage", 100),
            (assign, ":damage_iron", ":damage"),
        (set_trigger_result, ":damage_iron"),
        (try_end),
        ])
        )
根据三笠大佬自己编的铁骨减伤代码,要么是这种不生效,要么就是另外一种删掉eq之后所有活着的生物生效,求大佬指点怎么改仅对玩家生效

46

主题

627

回帖

492

积分

骑士

Rank: 4Rank: 4

UID
3398051
第纳尔
1841
精华
0
互助
48
荣誉
5
贡献
10
魅力
341
注册时间
2022-8-13
鲜花(57) 鸡蛋(0)
发表于 2023-8-1 19:31:19 | 显示全部楼层
本帖最后由 ggfgfgf 于 2023-8-1 21:34 编辑

(ti_on_agent_hit, 0, 0, [],
        [
        (store_trigger_param_1, ":agent"),
        (store_trigger_param_3, ":damage"),
        (get_player_agent_no, ":player"),
        (eq, ":agent", ":player"),
        (store_skill_level, ":player_ski","skl_ironflesh", ":player"),
        (try_begin),
            (val_sub, ":damage", ":player_ski"),
            (val_mul, ":player_ski", -10),
            (val_add, ":player_ski", 100),
            (val_mul, ":damage", ":player_ski"),
            (val_div, ":damage", 100),
        (set_trigger_result, ":damage"),
        (try_end),
        ])
中文注释
(ti_on_agent_hit, 0, 0, [],#人物被击打
        [
        (store_trigger_param_1, ":agent"),#获取被攻击者存为agent
        (store_trigger_param_3, ":damage"),#获取伤害存为damage
        (get_player_agent_no, ":player"),#获取玩家战场编号存为player
        (eq, ":agent", ":player"),#如果被攻击者为玩家(编号一样)
        (store_skill_level, ":player_ski","skl_ironflesh", "trp_player"),#获取玩家铁骨值,变量直接写兵种名就行
        (try_begin),
            (val_sub, ":damage", ":player_ski"),
            (val_mul, ":player_ski", -10),
            (val_add, ":player_ski", 100),
            (val_mul, ":damage", ":player_ski"),
            (val_div, ":damage", 100),              #你的计算方程,没动
        (set_trigger_result, ":damage"),#设置返回值
        (try_end),
        ])

你写了很多无用的代码,根本不用遍历所有战场者
ti_on_agent_killed_or_wounded=在人物被杀或者击晕时
(store_trigger_param_1, ":dead_agent_no"),
        (store_trigger_param_2, ":killer_agent_no"),
        #(store_trigger_param_3, ":is_wounded"),
Trigger Param 1(存储器1)=被害者
Trigger Param 2(存储器2)=凶手
Trigger Param 3(存储器3)=是否被击昏

ti_on_agent_knocked_down=在人物被击倒时
Trigger Param 1(存储器1)=被击倒者
Trigger Param 2(存储器2)=击倒者

ti_on_agent_hit=在人物把击打时
# Trigger Param 1: damage inflicted agent_id
# Trigger Param 2: damage dealer agent_id
# Trigger Param 3: inflicted damage
Trigger Param 1(存储器1)=被攻击者
Trigger Param 2(存储器2)=攻击者
Trigger Param 3(存储器3)=攻击伤害
Register 0(reg0)=攻击者的武器
Position Register 0(pos0)=击打的坐标

鲜花鸡蛋

红刀  在2023-8-1 19:47  送朵鲜花  并说:

1

主题

23

回帖

7

积分

平民

Rank: 1

UID
3122012
第纳尔
53
精华
0
互助
0
荣誉
0
贡献
0
魅力
0
注册时间
2019-12-10
鲜花(2) 鸡蛋(0)
 楼主| 发表于 2023-8-1 19:45:18 | 显示全部楼层
ggfgfgf 发表于 2023-8-1 19:31
(ti_on_agent_hit, 0, 0, [],
        [
        (store_trigger_param_1, ":ag ...

谢谢大佬,主要是昨天看了一下午教程就来写,然后折腾了一天搞出来个玩家铁骨减伤作用到所有人的代码,然后休息一会儿再想写的时候直接脑子烧了

1

主题

23

回帖

7

积分

平民

Rank: 1

UID
3122012
第纳尔
53
精华
0
互助
0
荣誉
0
贡献
0
魅力
0
注册时间
2019-12-10
鲜花(2) 鸡蛋(0)
 楼主| 发表于 2023-8-1 20:15:26 | 显示全部楼层
ggfgfgf 发表于 2023-8-1 19:31
(ti_on_agent_hit, 0, 0, [],
        [
        (store_trigger_param_1, ":ag ...

厚着脸皮再请问一下,如果要获取指定的一匹马的id比如玩家的马该怎么做,我想把减伤效果也加在坐骑的身上去

46

主题

627

回帖

492

积分

骑士

Rank: 4Rank: 4

UID
3398051
第纳尔
1841
精华
0
互助
48
荣誉
5
贡献
10
魅力
341
注册时间
2022-8-13
鲜花(57) 鸡蛋(0)
发表于 2023-8-1 20:30:27 | 显示全部楼层
本帖最后由 ggfgfgf 于 2023-8-2 10:42 编辑
红刀 发表于 2023-8-1 20:15
厚着脸皮再请问一下,如果要获取指定的一匹马的id比如玩家的马该怎么做,我想把减伤效果也加在坐骑的身上 ...

没事,尽管问看16楼
(ti_on_agent_hit, 0, 0, [],
        [
        (store_trigger_param_1, ":agent"),
        (store_trigger_param_3, ":damage"),
       (get_player_agent_no, ":player"),
        (store_skill_level, ":player_ski","skl_ironflesh", ":player"),
            (val_sub, ":damage", ":player_ski"),
            (val_mul, ":player_ski", -10),
            (val_add, ":player_ski", 100),
            (val_mul, ":damage", ":player_ski"),
            (val_div, ":damage", 100),
        (try_begin),
        (neq|agent_is_human, ":agent"),
        (agent_get_horse,":horse",":player"),
        (gt,":horse",0),
        (eq, ":agent", ":horse"),
        (set_trigger_result, ":damage"),
        (else_try),
        (eq, ":agent", ":player"),
        (set_trigger_result, ":damage"),

        (try_end),
        ])

包括玩家减伤和坐骑减伤


中文注释
(ti_on_agent_hit, 0, 0, [],#人物被击打
        [
        (store_trigger_param_1, ":agent"),#获取被攻击者存为agent
        (store_trigger_param_3, ":damage"),#获取伤害存为damage
       (get_player_agent_no, ":player"),#获取玩家战场编号存为player
        (store_skill_level, ":player_ski","skl_ironflesh", ":player"),#获取玩家铁骨值,变量直接写兵种名就行
            (val_sub, ":damage", ":player_ski"),
            (val_mul, ":player_ski", -10),
            (val_add, ":player_ski", 100),
            (val_mul, ":damage", ":player_ski"),
            (val_div, ":damage", 100),#提前计算返回值
        (try_begin),
        (neq|agent_is_human, ":agent"),#被攻击者不是人类
        (agent_get_horse,":horse",":player"),#获取玩家坐骑
        (gt,":horse",0),                         #玩家有坐骑(编号大于0)
        (eq, ":agent", ":horse"),                   #如果被攻击者为玩家坐骑(编号一样)
        (set_trigger_result, ":damage"),#设置返回值
        (else_try),
        (eq, ":agent", ":player"),#如果被攻击者为玩家(编号一样)
        (set_trigger_result, ":damage"),#设置返回值
        (try_end),
        ])


鲜花鸡蛋

红刀  在2023-8-1 20:48  送朵鲜花  并说:

1

主题

23

回帖

7

积分

平民

Rank: 1

UID
3122012
第纳尔
53
精华
0
互助
0
荣誉
0
贡献
0
魅力
0
注册时间
2019-12-10
鲜花(2) 鸡蛋(0)
 楼主| 发表于 2023-8-1 20:48:18 | 显示全部楼层
本帖最后由 红刀 于 2023-8-1 20:58 编辑
ggfgfgf 发表于 2023-8-1 20:30
没事,尽管问
(ti_on_agent_hit, 0, 0, [],
        [

那么大佬,这个(gt,":horse",0)是判断吗?就是类似于eq那样有坐骑下面代码生效没有下面就不生效的意思吗,并且我还在想可不可以通过玩家是不是正在骑着马来达到只有玩家骑着的马会减免伤害,就比如我刚开始进战场的时候骑着马1然后我换了一匹马2,这个时候马1不会有伤害减免而马2会有,而且我在用了这个代码后测试发现坐下会爆红报错,这个报错通常是由什么引起的

46

主题

627

回帖

492

积分

骑士

Rank: 4Rank: 4

UID
3398051
第纳尔
1841
精华
0
互助
48
荣誉
5
贡献
10
魅力
341
注册时间
2022-8-13
鲜花(57) 鸡蛋(0)
发表于 2023-8-1 20:57:05 | 显示全部楼层
本帖最后由 ggfgfgf 于 2023-8-1 20:58 编辑
红刀 发表于 2023-8-1 20:48
那么大佬,这个(gt,":horse",0)是判断吗?就是类似于eq那样有坐骑下面代码生效没有下面就不生效的意思吗, ...

是的,你好像不太懂代码结构。。。只有玩家骑的会减伤

鲜花鸡蛋

红刀  在2023-8-1 21:21  送朵鲜花  并说:

1

主题

23

回帖

7

积分

平民

Rank: 1

UID
3122012
第纳尔
53
精华
0
互助
0
荣誉
0
贡献
0
魅力
0
注册时间
2019-12-10
鲜花(2) 鸡蛋(0)
 楼主| 发表于 2023-8-1 21:02:18 | 显示全部楼层
ggfgfgf 发表于 2023-8-1 20:57
是的,只有玩家骑的会减伤

因为在昨天下午看教程之前是没有一点代码基础的

46

主题

627

回帖

492

积分

骑士

Rank: 4Rank: 4

UID
3398051
第纳尔
1841
精华
0
互助
48
荣誉
5
贡献
10
魅力
341
注册时间
2022-8-13
鲜花(57) 鸡蛋(0)
发表于 2023-8-1 21:05:04 | 显示全部楼层
红刀 发表于 2023-8-1 21:02
因为在昨天下午看教程之前是没有一点代码基础的

看多了就好了,我也是刚入坑一年最好是有点代码基础,容易些

鲜花鸡蛋

红刀  在2023-8-1 21:20  送朵鲜花  并说:

1

主题

23

回帖

7

积分

平民

Rank: 1

UID
3122012
第纳尔
53
精华
0
互助
0
荣誉
0
贡献
0
魅力
0
注册时间
2019-12-10
鲜花(2) 鸡蛋(0)
 楼主| 发表于 2023-8-1 21:20:20 | 显示全部楼层
本帖最后由 红刀 于 2023-8-1 21:25 编辑
ggfgfgf 发表于 2023-8-1 21:05
看多了就好了,我也是刚入坑一年最好是有点代码基础,容易些

我刚才进游戏测试了一下啊,又变成我之前编的那种对所有人,所有人马,不论敌我都用着玩家的铁骨等级减免伤害的情况了, 并且也没有只有玩家骑着的马会减伤的效果,或者说是把两个效果拆开做成两个触发器就会生效?

46

主题

627

回帖

492

积分

骑士

Rank: 4Rank: 4

UID
3398051
第纳尔
1841
精华
0
互助
48
荣誉
5
贡献
10
魅力
341
注册时间
2022-8-13
鲜花(57) 鸡蛋(0)
发表于 2023-8-1 21:28:18 | 显示全部楼层
红刀 发表于 2023-8-1 21:20
我刚才进游戏测试了一下啊,又变成我之前编的那种对所有人,所有人马,不论敌我都用着玩家的铁骨等级减免 ...

让我测试下

鲜花鸡蛋

红刀  在2023-8-1 21:38  送朵鲜花  并说:

46

主题

627

回帖

492

积分

骑士

Rank: 4Rank: 4

UID
3398051
第纳尔
1841
精华
0
互助
48
荣誉
5
贡献
10
魅力
341
注册时间
2022-8-13
鲜花(57) 鸡蛋(0)
发表于 2023-8-1 22:28:47 | 显示全部楼层
本帖最后由 ggfgfgf 于 2023-8-2 10:41 编辑
红刀 发表于 2023-8-1 21:20
我刚才进游戏测试了一下啊,又变成我之前编的那种对所有人,所有人马,不论敌我都用着玩家的铁骨等级减免 ...

还在吗,你是怎么测试的,奇怪,我这没问题啊。我的测试代码看16楼
######testing
cut_body = (ti_on_agent_hit, 0, 0, [],
        [
        (store_trigger_param_1, ":agent"),
        (store_trigger_param_3, ":damage"),
        (get_player_agent_no, ":player"),
            (assign, ":damage", 999),
        (try_begin),
        (neq|agent_is_human, ":agent"),
        (agent_get_horse,":horse",":player"),
        (gt,":horse",0),
        (eq, ":agent", ":horse"),
                (set_trigger_result, ":damage"),
        (else_try),
        (eq, ":agent", ":player"),
        (set_trigger_result, ":damage"),

        (try_end),
        ])
######testing

1

主题

23

回帖

7

积分

平民

Rank: 1

UID
3122012
第纳尔
53
精华
0
互助
0
荣誉
0
贡献
0
魅力
0
注册时间
2019-12-10
鲜花(2) 鸡蛋(0)
 楼主| 发表于 2023-8-2 07:50:22 | 显示全部楼层
本帖最后由 红刀 于 2023-8-2 09:10 编辑
ggfgfgf 发表于 2023-8-1 22:28
还在吗,你是怎么测试的,奇怪,我这没问题啊。我的测试代码
######testing
cut_body = (ti_on_agent_h ...

抱歉,昨天晚上睡得比较早,我是直接改了计算公式,比如一级减少百分之十伤害,然后玩家铁骨等级为十时直接全场免伤了,我刚刚把触发器拆成两个然后发现还是全场减伤,并且左下角还爆红字了,又出现新情况了,触发器拆成两个坐下爆红字并且减伤效果无效了,自己尝试改了半天要不是这些情况要么就是对人生效对马不生效

46

主题

627

回帖

492

积分

骑士

Rank: 4Rank: 4

UID
3398051
第纳尔
1841
精华
0
互助
48
荣誉
5
贡献
10
魅力
341
注册时间
2022-8-13
鲜花(57) 鸡蛋(0)
发表于 2023-8-2 10:00:58 | 显示全部楼层
本帖最后由 ggfgfgf 于 2023-8-2 10:41 编辑
红刀 发表于 2023-8-2 07:50
抱歉,昨天晚上睡得比较早,我是直接改了计算公式,比如一级减少百分之十伤害,然后玩家铁骨等级为十时直 ...

触发器拆成两个是会有一个不生效的,不过不会爆红字,试试这样写呢
还有种可能,你的modulesystem中有伤害加成代码,干扰了,你的modulesystem是什么版本的看16楼
######testing
cut_body = (ti_on_agent_hit, 0, 0, [],
        [
        (store_trigger_param_1, ":agent"),
        (store_trigger_param_3, ":damage"),
        (get_player_agent_no, ":player"),
                (agent_get_horse,":horse",":player"),
        (try_begin),
                        (eq, ":agent", ":player"),
                        (store_skill_level, ":player_ski","skl_ironflesh", ":player"),
                        (val_sub, ":damage", ":player_ski"),
                        (val_mul, ":player_ski", -10),
                        (val_add, ":player_ski", 100),
                        (val_mul, ":damage", ":player_ski"),
                        (val_div, ":damage", 100),
                        (set_trigger_result, ":damage"),
        (try_end),
                (try_begin),
                        (gt,":horse",0),
                        (eq, ":agent", ":horse"),
                        (store_skill_level, ":player_ski","skl_ironflesh", ":player"),
                        (val_sub, ":damage", ":player_ski"),
                        (val_mul, ":player_ski", -10),
                        (val_add, ":player_ski", 100),
                        (val_mul, ":damage", ":player_ski"),
                        (val_div, ":damage", 100),
                        (set_trigger_result, ":damage"),
        (try_end),
        ])
######testing

1

主题

23

回帖

7

积分

平民

Rank: 1

UID
3122012
第纳尔
53
精华
0
互助
0
荣誉
0
贡献
0
魅力
0
注册时间
2019-12-10
鲜花(2) 鸡蛋(0)
 楼主| 发表于 2023-8-2 10:16:26 | 显示全部楼层
ggfgfgf 发表于 2023-8-2 10:00
触发器拆成两个是会有一个不生效的,不过不会爆红字,试试这样写呢
还有种可能,你的modulesystem中有伤 ...

不行,试过了还是人马都不生效,我用的这个版本的源码https://bbs.mountblade.com.cn/fo ... ead&tid=2072055
战团版本是1.174

46

主题

627

回帖

492

积分

骑士

Rank: 4Rank: 4

UID
3398051
第纳尔
1841
精华
0
互助
48
荣誉
5
贡献
10
魅力
341
注册时间
2022-8-13
鲜花(57) 鸡蛋(0)
发表于 2023-8-2 10:40:51 | 显示全部楼层
本帖最后由 ggfgfgf 于 2023-8-2 11:01 编辑
红刀 发表于 2023-8-2 10:16
不行,试过了还是人马都不生效,我用的这个版本的源码https://bbs.mountblade.com.cn/forum.php?mod=view ...

解决了,抱歉啊,我之前没遇到这种情况,献丑了,原因set_trigger_result只能有一个,会在其位置终止代码,触发器后面的就不执行了,有点类似c语言的return,但是c语言只是单个判断内终止,骑砍这就坑爹了我的代码环境[战团][整合]native拓展https://bbs.mountblade.com.cn/thread-2096039-1-1.html
源码 Fixed Native MS 1.2.zip (2.3 MB, 下载次数: 119)
加了个变量run判断是否减伤
(ti_on_agent_hit, 0, 0, [],
        [
        (store_trigger_param_1, ":agent"),
        (store_trigger_param_3, ":damage"),
        (get_player_agent_no, ":player"),
                (agent_get_horse,":horse",":player"),
                (assign,":run",0),
        (try_begin),
                        (eq, ":agent", ":player"),
                        
                        (assign,":run",1),
        (try_end),
                (try_begin),
                        (gt,":horse",0),
                        (eq, ":agent", ":horse"),
                        (assign,":run",1),
        (try_end),
                (try_begin),
                (eq,":run",1),
                        (store_skill_level, ":player_ski","skl_ironflesh", ":player"),
                        (val_sub, ":damage", ":player_ski"),
                        (val_mul, ":player_ski", -10),
                        (val_add, ":player_ski", 100),
                        (val_mul, ":damage", ":player_ski"),
                        (val_div, ":damage", 100),
                        (set_trigger_result, ":damage"),
                (try_end),
        ])

评分

参与人数 1第纳尔 +10 互助 +3 收起 理由
agjib + 10 + 3 乐于助人!

查看全部评分

1

主题

23

回帖

7

积分

平民

Rank: 1

UID
3122012
第纳尔
53
精华
0
互助
0
荣誉
0
贡献
0
魅力
0
注册时间
2019-12-10
鲜花(2) 鸡蛋(0)
 楼主| 发表于 2023-8-2 11:16:29 | 显示全部楼层
ggfgfgf 发表于 2023-8-2 10:40
解决了,抱歉啊,我之前没遇到这种情况,献丑了,原因set_trigger_result只能有一个,会在其位置终止代码 ...

谢谢大佬,生效了,能帮我看看问题我就已经很感激了,我个小白计算公式就知道个val_add是加val_div是除以
这个计算公式都是我直接把三笠大佬的抄过来用的,这个代码我直接套进源码里公式还变成增伤了,把检测玩家铁骨等级删了,计算公式只留了个val_div才变成减伤

1

主题

23

回帖

7

积分

平民

Rank: 1

UID
3122012
第纳尔
53
精华
0
互助
0
荣誉
0
贡献
0
魅力
0
注册时间
2019-12-10
鲜花(2) 鸡蛋(0)
 楼主| 发表于 2023-8-4 11:26:58 | 显示全部楼层
ggfgfgf 发表于 2023-8-1 19:31
(ti_on_agent_hit, 0, 0, [],
        [
        (store_trigger_param_1, ":ag ...

大佬我能再问你个问题吗

46

主题

627

回帖

492

积分

骑士

Rank: 4Rank: 4

UID
3398051
第纳尔
1841
精华
0
互助
48
荣誉
5
贡献
10
魅力
341
注册时间
2022-8-13
鲜花(57) 鸡蛋(0)
发表于 2023-8-4 11:33:00 | 显示全部楼层
红刀 发表于 2023-8-4 11:26
大佬我能再问你个问题吗

什么问题,              

1

主题

23

回帖

7

积分

平民

Rank: 1

UID
3122012
第纳尔
53
精华
0
互助
0
荣誉
0
贡献
0
魅力
0
注册时间
2019-12-10
鲜花(2) 鸡蛋(0)
 楼主| 发表于 2023-8-4 11:38:17 | 显示全部楼层

我想写个让玩家队伍的士兵只能被击昏代码,于是我根据您上面给出的i_on_agent_killed_or_wounded=在人物被杀或者击晕时,和您写的判断方式还有这个帖子https://bbs.mountblade.com.cn/fo ... amp;highlight=agent写了这么个玩意儿
(ti_on_agent_killed_or_wounded, 0, 0, [],
        [
        (store_trigger_param_1, ":undead"),
        (get_player_agent_no, ":player"),
        (agent_get_troop_id, ":troopid", ":undead"),
        (store_faction_of_troop, ":playerfaction", ":troopid"),
        (agent_get_party_id, ":playerparty", ":player"),
        (store_faction_of_party, ":partyfaction", ":playerparty"),
        (assign,":run",0),
        (try_begin),
        (eq, ":playerfaction", ":partyfaction"),
        (assign,":run",1),
        (try_end),
        (try_begin),
        (eq,":run",1),
        (agent_set_no_death_knock_down_only, ":undead",1),
        (try_end),
        ])
        )
但它并没有生效
大佬能帮我看看为什么吗

46

主题

627

回帖

492

积分

骑士

Rank: 4Rank: 4

UID
3398051
第纳尔
1841
精华
0
互助
48
荣誉
5
贡献
10
魅力
341
注册时间
2022-8-13
鲜花(57) 鸡蛋(0)
发表于 2023-8-4 11:42:17 | 显示全部楼层
本帖最后由 ggfgfgf 于 2023-8-4 11:47 编辑
红刀 发表于 2023-8-4 11:38
我想写个让玩家队伍的士兵只能被击昏代码,于是我根据您上面给出的i_on_agent_killed_or_wounded=在人物 ...

这么写不会生效我不清楚为什么,你这人都被打死了,再设置不会死就晚了。不过有更好的方法,而且你这只有一个判断,不需要RUN变量,而且你最后多了个括号,我给你改下

46

主题

627

回帖

492

积分

骑士

Rank: 4Rank: 4

UID
3398051
第纳尔
1841
精华
0
互助
48
荣誉
5
贡献
10
魅力
341
注册时间
2022-8-13
鲜花(57) 鸡蛋(0)
发表于 2023-8-4 11:50:21 | 显示全部楼层
本帖最后由 ggfgfgf 于 2023-8-4 11:56 编辑
红刀 发表于 2023-8-4 11:38
我想写个让玩家队伍的士兵只能被击昏代码,于是我根据您上面给出的i_on_agent_killed_or_wounded=在人物 ...

(ti_once, 0, 0, [],
        [
        (try_for_agents, ":agent"),
        (agent_is_ally,":agent")
        (agent_set_no_death_knock_down_only, ":agent",1),
        (try_end),
        ])

注释
(ti_once, 0, 0, [],#ti_once只执行一次
        [
        (try_for_agents, ":agent"),#遍历所有战场者
        (agent_is_ally,":agent")#如果是友军
        (agent_set_no_death_knock_down_only, ":agent",1),#设置不会死
        (try_end),
        ])

只需4行。。。


1

主题

23

回帖

7

积分

平民

Rank: 1

UID
3122012
第纳尔
53
精华
0
互助
0
荣誉
0
贡献
0
魅力
0
注册时间
2019-12-10
鲜花(2) 鸡蛋(0)
 楼主| 发表于 2023-8-4 11:53:06 | 显示全部楼层
ggfgfgf 发表于 2023-8-4 11:50
(ti_once, 0, 0, [],
        [
        (try_for_agents, ":agent"),

agent_is_ally不会作用于与玩家一同参加战斗的队伍吗?就比如玩家和另外一个领主一起参战然后代码对他的队伍和玩家的队伍一起生效的情况

46

主题

627

回帖

492

积分

骑士

Rank: 4Rank: 4

UID
3398051
第纳尔
1841
精华
0
互助
48
荣誉
5
贡献
10
魅力
341
注册时间
2022-8-13
鲜花(57) 鸡蛋(0)
发表于 2023-8-4 11:54:45 | 显示全部楼层
红刀 发表于 2023-8-4 11:53
agent_is_ally不会作用于与玩家一同参加战斗的队伍吗?就比如玩家和另外一个领主一起参战然后代码对他的 ...

你的意思是友方领主的兵可以死吧,好奇怪的功能,不过可以实现,我这个只要是友军就会,

46

主题

627

回帖

492

积分

骑士

Rank: 4Rank: 4

UID
3398051
第纳尔
1841
精华
0
互助
48
荣誉
5
贡献
10
魅力
341
注册时间
2022-8-13
鲜花(57) 鸡蛋(0)
发表于 2023-8-4 12:00:05 | 显示全部楼层
本帖最后由 ggfgfgf 于 2023-8-4 12:29 编辑
红刀 发表于 2023-8-4 11:53
agent_is_ally不会作用于与玩家一同参加战斗的队伍吗?就比如玩家和另外一个领主一起参战然后代码对他的 ...

(ti_once, 0, 0, [],
        [

        (get_player_agent_no, ":player"),
        (agent_get_party_id, ":playerparty", ":player"),
        (try_for_agents, ":agent"),
        (agent_is_ally,":agent"),
        (agent_get_party_id, ":party", ":agent"),
        (eq, ":party", ":playerparty"),
        (agent_set_no_death_knock_down_only, ":agent",1),
        (try_end),
        ])

注释



(ti_once, 0, 0, [],
        [


        (get_player_agent_no, ":player"),#获取玩家编号
        (agent_get_party_id, ":playerparty", ":player"),#获取玩家部队
        (try_for_agents, ":agent"),#遍历战场者
        (agent_is_ally,":agent"),#是友军

        (agent_get_party_id, ":party", ":agent"),#获取友军部队
        (eq, ":party", ":playerparty"),#友军部队是玩家部队
        (agent_set_no_death_knock_down_only, ":agent",1),#设置不死
        (try_end),
        ])





1

主题

23

回帖

7

积分

平民

Rank: 1

UID
3122012
第纳尔
53
精华
0
互助
0
荣誉
0
贡献
0
魅力
0
注册时间
2019-12-10
鲜花(2) 鸡蛋(0)
 楼主| 发表于 2023-8-4 12:00:21 | 显示全部楼层
ggfgfgf 发表于 2023-8-4 11:54
你的意思是友方领主的兵可以死吧,好奇怪的功能,不过可以实现,我这个只要是友军就会,

是的,想让只能昏倒的功能只作用于玩家的兵,最近在玩潘德死一个高级兵都心疼,所以去搜了怎么改手术然后改手术对友军都起效,但我又不想管友军的兵只想管自己的兵所以就又跑过来写代码看看代码能不能实现了()

1

主题

23

回帖

7

积分

平民

Rank: 1

UID
3122012
第纳尔
53
精华
0
互助
0
荣誉
0
贡献
0
魅力
0
注册时间
2019-12-10
鲜花(2) 鸡蛋(0)
 楼主| 发表于 2023-8-4 12:17:48 | 显示全部楼层
ggfgfgf 发表于 2023-8-4 12:00
(ti_once, 0, 0, [],
        [

我测试了一下并没有生效,会不会是没有确定是哪个士兵受伤或者只生效一次的原因?

46

主题

627

回帖

492

积分

骑士

Rank: 4Rank: 4

UID
3398051
第纳尔
1841
精华
0
互助
48
荣誉
5
贡献
10
魅力
341
注册时间
2022-8-13
鲜花(57) 鸡蛋(0)
发表于 2023-8-4 12:28:36 | 显示全部楼层
红刀 发表于 2023-8-4 12:17
我测试了一下并没有生效,会不会是没有确定是哪个士兵受伤或者只生效一次的原因?

我去我若至了,(agent_is_ally,":agent")没加逗号,网页写起来真没notepad++方便,好SB哈哈

1

主题

23

回帖

7

积分

平民

Rank: 1

UID
3122012
第纳尔
53
精华
0
互助
0
荣誉
0
贡献
0
魅力
0
注册时间
2019-12-10
鲜花(2) 鸡蛋(0)
 楼主| 发表于 2023-8-4 12:28:50 | 显示全部楼层
ggfgfgf 发表于 2023-8-4 12:00
(ti_once, 0, 0, [],
        [

好像我理解错了agent_set_no_death_knock_down_only, ":agent",1这一句的意思了,我把触发条件改为了ti_on_agent_hit然后删掉遍历战场所有人改成获取被攻击者就生效了,不过是让人变成了不倒翁,并不是让人只会被击昏不会被击杀,有能让人只会被击昏的代码吗?

46

主题

627

回帖

492

积分

骑士

Rank: 4Rank: 4

UID
3398051
第纳尔
1841
精华
0
互助
48
荣誉
5
贡献
10
魅力
341
注册时间
2022-8-13
鲜花(57) 鸡蛋(0)
发表于 2023-8-4 12:37:04 | 显示全部楼层
红刀 发表于 2023-8-4 12:00
是的,想让只能昏倒的功能只作用于玩家的兵,最近在玩潘德死一个高级兵都心疼,所以去搜了怎么改手术然后 ...

这个有点复杂,我没研究过,让我捣鼓下,我给你说下我的思路,ti_on_agent_killed_or_wounded,设置返回值
set_trigger_result,不知道能用不
您需要登录后才可以回帖 登录 | 注册(Register!)

本版积分规则

Archiver|手机版|小黑屋|骑马与砍杀中文站

GMT+8, 2024-11-19 10:20 , Processed in 0.204736 second(s), 27 queries , Gzip On, MemCached On.

Powered by Discuz! X3.4 Licensed

© 2001-2023 Discuz! Team.

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