Module-HealthView
指针攻击生物显示高逼格血量条
附属功能功能对 龙核插件及其MOD版本 要求很 高
旧 龙核插件及其MOD可能无法使用其中部分功能
请尽量保持在最新版
[Mod]DragonCore > 2.5.3.3
[插件]DragonCore > 2.5.3
否则开发者可能不会受理你的反馈 !
配置文件路径 plugins\DsLib\DsPluginGuiFile\SimpleHealthViewHud
尽量保持 DragonCore 为最新版本(尤其是 DragonCore MOD)
如果 首次 使用发现无法显示指针攻击生物血量条
需要修改 界面变量.前缀 = '§'
大概方法就是看你怪物 displayname 前缀是啥
比如你的怪物是 团子怪 含有颜色 则前缀为 "§"
如果怪物是 团子怪 不含有颜色 则前缀为 ""
# Powered by DsLib #
# 血量显示 #
#重要的变量[可以按需求调整]:
# 界面变量.前缀: 判断生物名称前面的字符,用于区分BOSS或者玩家,或者你指定的怪物,填空代表全部用这个展现
# 界面变量.适应: 如果 = 1 ,则是开启自适应,否则反之
# 界面变量.多少血一管 多少血量为一排血量,字面意思 很好理解
# PS: 你可以把这玩意多复制几份,改不同的前缀,可以实现不同类型怪物用不同类型的血条,但是不建议这样做,因为不停的判断会影响服务端和客户端.
# PS: 如果对颜色代码不喜欢的话,自己调整颜色代码
match: "SimpleHealthViewHud"
Functions:
open: |-
界面变量.前缀 = '§';
界面变量.多少血一管 = 1000;
界面变量.适应 = 1;
界面变量.战斗信息提示 = '(战斗)';
(界面变量.适应==1)?{方法.异步执行方法('屏幕自适应');}:{方法.异步执行方法('不执行屏幕自适应');};
界面变量.颜色代码1 = '0,255,0';
界面变量.颜色代码2 = '173,255,47';
界面变量.颜色代码3 = '255,255,0';
界面变量.颜色代码4 = '255,165,0';
界面变量.颜色代码5 = '105,200,70';
界面变量.颜色代码6 = '50,100,200';
界面变量.颜色代码7 = '123,80,35';
界面变量.颜色代码8 = '40,90,108';
界面变量.颜色代码9 = '120,60,100';
不执行屏幕自适应: |-
界面变量.x=(方法.取屏幕宽度-方法.取组件值('背景_texture','width'))/2;
界面变量.x比=1;
界面变量.y比=1;
方法.延时(300);
方法.异步执行方法('不执行屏幕自适应');
屏幕自适应: |-
界面变量.x=(方法.取屏幕宽度-方法.取组件值('背景_texture','width'))/2;
界面变量.x比=方法.取屏幕宽度()/427;
界面变量.y比=方法.取屏幕高度()/240;
界面变量.xy比 = 界面变量.x比/界面变量.y比;
方法.延时(300);
方法.异步执行方法('屏幕自适应');
血量颜色转换: |-
(方法.到整数(方法.取指针生物血量/界面变量.多少血一管))==0?{血量背景_texture.visible = 'false'}:{
血量背景_texture.visible = '方法.是否存在前缀(方法.取指针生物名,界面变量.前缀)'
};
(方法.取指针生物血量==方法.取指针生物最大血量)?0:{
(方法.到整数(方法.到整数(方法.取指针生物血量/界面变量.多少血一管)%9)==8)?{血量_texture.texture = 界面变量.颜色代码1;血量背景_texture.texture = 界面变量.颜色代码2}:{
(方法.到整数(方法.到整数(方法.取指针生物血量/界面变量.多少血一管)%9)==7)?{血量_texture.texture = 界面变量.颜色代码2;血量背景_texture.texture = 界面变量.颜色代码3}:{
(方法.到整数(方法.到整数(方法.取指针生物血量/界面变量.多少血一管)%9)==6)?{血量_texture.texture = 界面变量.颜色代码3;血量背景_texture.texture = 界面变量.颜色代码4}:{
(方法.到整数(方法.到整数(方法.取指针生物血量/界面变量.多少血一管)%9)==5)?{血量_texture.texture = 界面变量.颜色代码4;血量背景_texture.texture = 界面变量.颜色代码5}:{
(方法.到整数(方法.到整数(方法.取指针生物血量/界面变量.多少血一管)%9)==4)?{血量_texture.texture = 界面变量.颜色代码5;血量背景_texture.texture = 界面变量.颜色代码6}:{
(方法.到整数(方法.到整数(方法.取指针生物血量/界面变量.多少血一管)%9)==3)?{血量_texture.texture = 界面变量.颜色代码6;血量背景_texture.texture = 界面变量.颜色代码7}:{
(方法.到整数(方法.到整数(方法.取指针生物血量/界面变量.多少血一管)%9)==2)?{血量_texture.texture = 界面变量.颜色代码7;血量背景_texture.texture = 界面变量.颜色代码8}:{
(方法.到整数(方法.到整数(方法.取指针生物血量/界面变量.多少血一管)%9)==1)?{血量_texture.texture = 界面变量.颜色代码8;血量背景_texture.texture = 界面变量.颜色代码9}:{
(方法.到整数(方法.到整数(方法.取指针生物血量/界面变量.多少血一管)%9)==0)?{血量_texture.texture = 界面变量.颜色代码9;血量背景_texture.texture = 界面变量.颜色代码2}
}
}
}
}
}
}
}
}
};
message: |-
(方法.是否存在前缀(方法.取当前消息,界面变量.战斗信息提示) == '1')?{
(方法.是否存在前缀(方法.取指针生物名,界面变量.前缀) == 1)?{方法.异步执行方法('掉血判断');}:0;
}:0;
掉血判断: |-
(方法.是否存在前缀(方法.取指针生物名,界面变量.前缀) == 1)?{
界面变量.怪物血量 = 方法.取指针生物血量;
方法.延时(1);
(方法.是否存在前缀(方法.取指针生物名,界面变量.前缀) == 1)?{
界面变量.掉了多少血 = 界面变量.怪物血量-方法.取指针生物血量;
界面变量.掉血百分比 = 界面变量.掉了多少血/界面变量.多少血一管;
界面变量.掉血百分比 = 界面变量.掉血百分比 - 到整数(界面变量.掉血百分比);
掉血_texture.width = 140*界面变量.x比*界面变量.掉血百分比;
方法.异步执行方法('掉血动画');
}:0
}:0
掉血动画: |-
(掉血_texture.width <= 0)?{
掉血_texture.width = 0;
}:{
掉血_texture.width = 掉血_texture.width - 140*界面变量.x比/100*0.3;
方法.延时(5);
方法.异步执行方法('掉血动画');
}
名称_label:
x: "背景_texture.x+88*界面变量.x比"
y: "背景_texture.y-8*界面变量.y比"
center: true
texts: "方法.取指针生物名"
scale: 1.2*界面变量.x比
visible: "方法.是否存在前缀(方法.取指针生物名,界面变量.前缀)"
血量背景_texture:
x: "背景_texture.x+20*界面变量.x比"
y: "背景_texture.y+5*界面变量.y比"
width: 140*界面变量.x比
height: "10*界面变量.y比"
texture: 界面变量.血条底颜色
visible: "方法.是否存在前缀(方法.取指针生物名,界面变量.前缀)"
actions:
preRender: |-
方法.执行方法('血量颜色转换');
血量_texture:
x: "背景_texture.x+20*界面变量.x比"
y: "背景_texture.y+5*界面变量.y比"
width: (方法.取指针生物血量==方法.取指针生物最大血量)?{return 140*1*界面变量.x比}:{return 140*界面变量.x比*(方法.取指针生物血量()%界面变量.多少血一管)/界面变量.多少血一管}
height: "10*界面变量.y比"
texture: "100,0,0"
visible: "方法.是否存在前缀(方法.取指针生物名,界面变量.前缀)"
掉血_texture:
x: "血量_texture.x+血量_texture.width"
y: "血量_texture.y"
width: 0
height: "10*界面变量.y比"
texture: "220,20,60"
visible: "方法.是否存在前缀(方法.取指针生物名,界面变量.前缀)"
limitX: 血量_texture.x
limitY: 0
limitWidth: 140*1*界面变量.x比
limitHeight: 9999
背景_texture:
x: "界面变量.x"
y: "20*界面变量.y比"
width: "178*界面变量.x比"
height: "18.88*界面变量.y比"
texture: "https://s4.ax1x.com/2021/12/28/TsyPUO.png"
visible: "方法.是否存在前缀(方法.取指针生物名,界面变量.前缀)"
剩余血量_label:
x: "背景_texture.x+55*界面变量.x比"
y: "背景_texture.y+17*界面变量.y比"
texts: "(方法.取指针生物血量==方法.取指针生物最大血量)?{return 方法.合并文本('&7当前满血: &2',方法.到整数(方法.取指针生物血量));}:{return 方法.合并文本('&7剩余血量: &2',方法.到整数(方法.取指针生物血量));}"
scale: 1*界面变量.x比
visible: "方法.是否存在前缀(方法.取指针生物名,界面变量.前缀)"
剩余血条数_label:
x: "背景_texture.x+130*界面变量.x比"
y: "背景_texture.y+5*界面变量.y比"
texts: "(方法.到整数(方法.取指针生物血量/界面变量.多少血一管)==0)?{return 方法.合并文本(' &e&l× &l','0')}:{return 方法.合并文本(' &e&l× &l',方法.到整数(方法.取指针生物血量/界面变量.多少血一管))}"
scale: 1*界面变量.x比
visible: "方法.是否存在前缀(方法.取指针生物名,界面变量.前缀)"
# Powered by DsLib #
# 模块介绍: - SimpleHealthView 血量显示
# 模块功能: - 指针攻击生物显示高逼格血量条
# 具体样式可在DsPluginGuiFile文件夹内的SimpleHealthView.yml修改
#是否启用本板块 修改本项需重启服务器生效
Is-Open: true
最后更新于
这有帮助吗?