[开发者心得] 聊天弹幕工具

[复制链接]
2084 |9
千石抚子 发表于 2023-2-23 12:16:44 | 显示全部楼层 |阅读模式
本帖最后由 天晴 于 2023-11-17 10:34 编辑

脚本: BulletChatUI.ts (37.78 KB, 下载次数: 110)
回复

使用道具 举报

叽里咕噜小胡桃 发表于 2023-2-23 12:21:57 | 显示全部楼层
单脚本党赛高!!!~
回复

使用道具 举报

空伊伊 发表于 2023-2-23 18:15:12 | 显示全部楼层
这是把整个tween都放到脚本里了呀
回复

使用道具 举报

千石抚子楼主 发表于 2023-2-23 20:41:35 来自手机 | 显示全部楼层
空伊伊 发表于 2023-2-23 18:15
这是把整个tween都放到脚本里了呀

对的,就是为了尽量逻辑高度聚合而不依赖外部。然后tween挺好用的,直接挪进来没做什么其他改动。如果能看懂,简化代码文件,也可以自行拆分出去驱动
回复

使用道具 举报

近我者甜 发表于 2023-10-6 19:22:34 | 显示全部楼层
多端同步的吗。还是客户端的
回复

使用道具 举报

近我者甜 发表于 2023-10-7 19:01:44 | 显示全部楼层
BulletChatUI.createBulletChat("hhhhhhh");这个调用,为啥是单端调用的,不会发给其他玩家看见
回复

使用道具 举报

天晴楼主 发表于 2023-10-7 19:03:02 | 显示全部楼层
近我者甜 发表于 2023-10-7 19:01
BulletChatUI.createBulletChat("hhhhhhh");这个调用,为啥是单端调用的,不会发给其他玩家看见 ...

确实是单端的
回复

使用道具 举报

近我者甜 发表于 2023-10-7 19:10:45 | 显示全部楼层

怎么可以多端,我看哪里有实践派发,但是没貌似不执行
回复

使用道具 举报

天晴楼主 发表于 2023-10-25 17:27:39 | 显示全部楼层
在顶部声明一个bool变量 let bindNet = false
在init方法的末尾,加上:
        if (Util.SystemUtil.isClient() && !bindNet) {//bindNet标记这个事件注册只执行一次
            bindNet = true;
            Events.addServerListener(Event_serverCallClientBullet, (msg: string, time: number, color: Type.LinearColor) => {
                createBulletChat(msg, time, color);
            })
        }
然后,在createBulletChat函数的开头,加上:
        if (Util.SystemUtil.isServer()) {
            Events.dispatchToAllClient(Event_serverCallClientBullet, msg, time, color);
            return;
        }
回复

使用道具 举报

近我者甜 发表于 2023-10-25 22:25:10 | 显示全部楼层
天晴 发表于 2023-10-25 17:27
在顶部声明一个bool变量 let bindNet = false
在init方法的末尾,加上:
        if (Util.SystemUtil.isCl ...

好多,我明天看看,蟹蟹
回复

使用道具 举报

热门版块
快速回复 返回顶部 返回列表