玩传奇论坛

标题: 获取角色在屏幕中的位置 [打印本页]

作者: admin    时间: 2021-3-12 08:50
标题: 获取角色在屏幕中的位置
窗口长宽变化时,角色在窗口中的位置坐标也在相应变化,并且无规律可循

XY示意图:


格式: 窗口宽<$ClientWidth> = 角色中心位置的X坐标
[屏幕角色X轴坐标]
800=390
900=438
1024=534
1152=582
1280=630
1600=821
1366=678
1680=822
1920=966

格式: 窗口高<$ClientWidth> = 游戏屏幕顶到血条顶的距离(Y坐标)
[屏幕血条Y轴坐标]
600=135
720=199
768=231
800=231
864=295
900=295
960=327
1024=359
1050=359
1080=391

这些数据可以应用在"播放屏幕效果"脚本,或者屏幕飘字脚本,
我们以后者为例,做个角色头顶飘字效果:



要点1:脚本中可以很方便很随意地设定文字内容,文字前景色和背景色,文字Y轴位置的偏移
要点2:不论文字长度如何变动,字符都在角色正上方

以下是脚本实现过程(只提供方法不解释具体思路,因为本贴主题是分享上面的数据):
1.在某路径新建一个INI文件,编码为ANSI,然后将上面那两段数据粘贴进去,保存
2.以下是具体脚本(其中路径就是上条中新建的INI文件位置)

[@生成角色上移文字]
;参数1=信息内容        参数2=前景色        参数3=背景色        参数4=Y轴偏移
#act
ReadConfigFileItem 路径 屏幕角色X轴坐标 <$ClientWidth> P1
TextLength <$SCRIPTPARAM1> P0
mul P0 3
dec P1 <$STR(P0)>

ReadConfigFileItem 路径 屏幕血条Y轴坐标 <$ClientHeight> P2
inc P2 <$SCRIPTPARAM4>
SENDMOVEHINTMSG <$SCRIPTPARAM1> <$SCRIPTPARAM2> <$SCRIPTPARAM3> <$STR(P1)> <$STR(P2)>

3.在需要生成文字的位置输入以下脚本,并在括号里调整相应的值或变量:
goto @生成角色上移文字(文字内容,前景色,背景色,文字Y轴偏移量)其中括号中第一个参数,即文字内容部分不要含有半角逗号,否则会报错.请用全角逗号代替(因为半角逗号会被当作参数分隔符)
4.其实脚本略微修改,就可以用#CALL来调用此效果.


作者: a307556    时间: 2021-3-13 16:21
我说呢 这个昨天看到了。。




欢迎光临 玩传奇论坛 (http://www.wanmirbbs.com/) Powered by Discuz! X3.2