请选择 进入手机版 | 继续访问电脑版

6n论坛

 找回密码
立即注册

QQ登录

只需一步,快速开始

查看: 1059|回复: 0

91M2引擎的传奇版本如何实现骰子,77M2骰子脚本相关说明

[复制链接]

 成长值: 1012219

644

主题

644

帖子

12万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
121821

推广达人宣传达人灌水之王突出贡献优秀版主论坛元老

QQ
发表于 2020-12-23 12:00:18 | 显示全部楼层 |阅读模式

                               
登录/注册后可看大图


如何实现骰子
1.在QFunctionNpc增加骰子事件函数定义:

procedure OnDiceEvent(Npc: TNormNpc; Player: TPlayObject; ATag, APoint1, APoint2, APoint3: Integer);
2.发送骰子消息:

procedure Main(Npc: TNormNpc; Player: TPlayObject; Args: TArgs);
begin
Player.PlayDice(100{骰子标志}, 4{骰子点数1}, 1{骰子点数2}, 6{骰子点数3});  
//骰子标志: 任意设置,用来区分骰子类型而已
//骰子点数1: 当前点数1,取值范围1-6。这个点数实际上是服务器设置好的,客户端只是播放下而已
//骰子点数2: 当前点数2,取值范围0-6
//骰子点数3: 当前点数3,取值范围0-6
//当点数3和点数2也在1-6时表示投掷3个点数,当点数2为1-6时而点数3不在1-6时表示投掷两个点数
//如果点数2和3都不在1-6时表示只投一个点数
end;

3.当客户端骰子播放完成后触发骰子事件,在QFunctionNpc的OnDiceEvent中进行处理:

procedure OnDiceEvent(Npc: TNormNpc; Player: TPlayObject; ATag, APoint1, APoint2, APoint3: Integer);
begin
   Player.Messagebox(Format('骰子标志%d, 点数1:%d, 点数2:%d, 点数3:%d', [ATag, APoint1, APoint2, APoint3]));
end;

注:骰子的点数为服务端设置后发送给客户端的,客户端只执行播放动作,所以可以通过一些控制来设置骰子的实际点数


来源:网络
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
TG:@sixnqs

Email:sixnqs@88.com
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|sixn

GMT+8, 2024-4-18 09:40 , Processed in 0.047089 second(s), 28 queries .

Powered by 6N论坛 X3.4

© 免责声明:本站所有资源均来至网络,仅供学习交流,严禁用于商业用途,请于24小时内删除!

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