翎风引擎

 找回密码
 立即注册
查看: 1354|回复: 6

装备非自定义属性的集中优化

[复制链接]

42

主题

79

回帖

433

积分

中级会员

Rank: 3Rank: 3

积分
433
发表于 2023-2-28 20:51:00 | 显示全部楼层 |阅读模式
现在的sf,很多装备都会带一些诸如爆率、倍攻、暴击伤害之类的属性,一般常见的写法是绑定穿脱触发,然后如下:
[@TAKEONEX]


#IF
#ACT
MOV N$人物爆率 100


#IF
CHECKITEMW 爆率之剑
#ACT
INC N$人物爆率 100



#IF
CHECKITEMW 爆率之链
#ACT
INC N$人物爆率 100



#IF
#ACT
KILLMONBURSTRATE <$STR(N$人物爆率)> 0 0 1

这样写也是没什么太大问题的,功能上也完全可以实现,但装备多起来的时候,无形中也浪费了不少服务器资源。因此这里我们可以优化一下。
[@LOGIN]
#IF
#ACT
MOV N$爆率之剑加爆率 100
MOV N$爆率之链加爆率 100
MOV N$爆率之腰加爆率 100
.....




[@TAKEONEX]
#IF
#ACT
MOV N$人物爆率 100
INC N$人物爆率 <$STR(N$<$WEAPON>加爆率)>   ;<$WEAPON>是身上佩戴的武器名称
INC N$人物爆率 <$STR(N$<$NECKLACE>加爆率)>;<$NECKLACE>是身上佩戴的项链名称
INC N$人物爆率 <$STR(N$<$BELT>加爆率)>         ;<$BELT>是身上佩戴的靴子名称

......

#IF
#ACT
KILLMONBURSTRATE <$STR(N$人物爆率)> 0 0 1


是不是看起来优雅多了,身上如果没有佩戴指定装备,那么变量就是初始值0,所以不需要做判断,而且也不需要额外写脚本,只需要在登录触发时定义足够多的变量。

这样写法非常适合倍攻服和类似魔兽四季那种有特异属性的服,这样写不管是在观感上,还是在脚本优化的角度,还是在后期维护和追加的情况下,都有非常明显的优势。
请大家不要恶意灌水,回复纯数字、纯字母、纯表情等内容的直接禁言1周处理!
回复

使用道具 举报

7

主题

6

回帖

67

积分

注册会员

Rank: 2

积分
67
发表于 2023-3-1 10:07:46 | 显示全部楼层
#IF
#ACT
Mov N$杀怪爆率 100
MOV N$武器爆率 0

#IF
CHECKUSEITEM 1
#ACT
ReadConfigFileItem ..\QuestDiary\登陆设置\载入爆率.INI 装备加成 <$WEAPON> N$武器爆率

#IF
#ACT
Formulation <$STR(N$杀怪爆率)>+<$STR(N$武器爆率)> N$最终爆率
KILLMONBURSTRATE <$Str(N$最终爆率)> 0 0 1

INI 里面写
[装备加成]
木剑=100

这样修改的爆率无需M2加载 更加方便
请大家不要恶意灌水,回复纯数字、纯字母、纯表情等内容的直接禁言1周处理!
回复

使用道具 举报

42

主题

79

回帖

433

积分

中级会员

Rank: 3Rank: 3

积分
433
 楼主| 发表于 2023-3-1 15:49:56 | 显示全部楼层
a5557343 发表于 2023-3-1 10:07
#IF
#ACT
Mov N$杀怪爆率 100

这样写的话一是读配置项时,如果没有则会报错,而且读配置项本身属于IO操作,吃IO资源的,可以的话尽量规避下比较好一点
请大家不要恶意灌水,回复纯数字、纯字母、纯表情等内容的直接禁言1周处理!
回复

使用道具 举报

7

主题

6

回帖

67

积分

注册会员

Rank: 2

积分
67
发表于 2023-3-1 23:16:44 | 显示全部楼层
西伯利亚的忠犬 发表于 2023-3-1 15:49
这样写的话一是读配置项时,如果没有则会报错,而且读配置项本身属于IO操作,吃IO资源的,可以的话尽量规 ...

基本不吃什么资源的,只是这要写更方便修改 直观
请大家不要恶意灌水,回复纯数字、纯字母、纯表情等内容的直接禁言1周处理!
回复

使用道具 举报

6

主题

15

回帖

85

积分

注册会员

Rank: 2

积分
85
发表于 2023-3-2 09:31:09 | 显示全部楼层
本帖最后由 m2177779 于 2023-3-2 09:32 编辑

[@登录倍击]
{
#IF
#ACT
MOV N$我的攻击倍数 100


#if
#act
mov N$我的攻击倍数 100
INC N$我的攻击倍数 <$MAXMC>00

powerrate <$str(N$我的攻击倍数)>

懒人写法
请大家不要恶意灌水,回复纯数字、纯字母、纯表情等内容的直接禁言1周处理!
回复

使用道具 举报

5

主题

64

回帖

199

积分

注册会员

Rank: 2

积分
199
发表于 2023-3-4 10:06:14 | 显示全部楼层
看各位大神的写法 打开了新思路  
Formulation  这个我就觉得比一直INC要好一些 ,简单清晰
请大家不要恶意灌水,回复纯数字、纯字母、纯表情等内容的直接禁言1周处理!
回复

使用道具 举报

4

主题

215

回帖

349

积分

中级会员

Rank: 3Rank: 3

积分
349
发表于 2023-4-7 16:47:27 | 显示全部楼层
学习,学习。
回复

使用道具 举报

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

本版积分规则

Archiver|手机版|小黑屋|翎风引擎论坛 |网站地图

GMT+8, 2024-5-3 07:24 , Processed in 0.014660 second(s), 19 queries , Gzip On, Redis On.

Powered by haom2 X3.4

© 2001-2023 Discuz! Team.

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