登录
×
  • 首页
  • 传奇论坛
  • 传奇版本库
  • 传奇服务端
  • 传奇三端手游
  • 传奇素材网
  • 传奇客户端
  • 引擎登录器
  • 下载排行
  • 获取邀请码
  • 搜索
    传奇素材网
    171413

    [其它手游引擎] 91M2引擎的传奇版本如何实现骰子,77M2骰子脚本相关说明

     火... [复制链接]

    [其它手游引擎] 91M2引擎的传奇版本如何实现骰子,77M2骰子脚本相关说明

     火... [复制链接]
    趣游论坛

    1万

    主题

    204

    回帖

    11万

    积分

    管理员

    积分
    113598

    灌水之王活跃会员突出贡献优秀版主荣誉管理论坛元老

    趣游论坛 2019-6-15 15:47:51 / 显示全部楼层 /阅读模式
    171413
    20190614121811.png

    如何实现骰子
    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;

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

    回复

    使用道具 举报

    太执着

    0

    主题

    4750

    回帖

    1万

    积分

    注册用户

    积分
    11600
    太执着 2024-8-27 11:41:51 / 显示全部楼层
    回复 支持 反对

    使用道具 举报

    a1379

    0

    主题

    70

    回帖

    117

    积分

    注册用户

    积分
    117
    a1379 2024-12-13 04:09:38 / 显示全部楼层
    回复 支持 反对

    使用道具 举报

    wangkui001

    0

    主题

    96

    回帖

    273

    积分

    注册用户

    积分
    273
    wangkui001 2025-1-11 03:18:22 / 显示全部楼层
    回复 支持 反对

    使用道具 举报

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

    本版积分规则

    扫一扫加群沟通交流

    首页 论坛 !mobpost! 最新 我的