是的,框架本身是免费的,提升效率用的插件收费
插件只是用来节省一些代码量和生成配置文件,插件不是必须品
是的,框架本身是免费的,提升效率用的插件收费
插件只是用来节省一些代码量和生成配置文件,插件不是必须品
添加一系列时间相关的函数
Time.setNetTime 后,会自动计算本地时间和服务器时间的差值,之后通过Time.now()获取到的时间都是计算过差值后的时间戳
/** 获取游戏系统启动时间戳 */
static get osBootTime(): number;
/** 获取主动设置的网络时间 单位ms */
static get netTime(): number;
/** 获取本地时间与网路时间的偏移量 单位ms */
static get netTimeDiff(): number;
/** 获取系统运行时间 */
static get runTime(): number;
/**
* 设置网络时间, 单位ms
* @param netTime 网络时间
*/
static setNetTime(netTime: number): void;
/**
* 获取当前时间 单位ms
*/
static now(): number;
/**
* 将毫秒转换为秒
* @param ms 毫秒
*/
static msTos(ms: number): number;
/**
* 将秒转换为毫秒
*/
static sToMs(s: number): number;
/**
* 获取时间
* @param timestamp 时间戳 (ms)
* @returns 时间
*/
static getTime(timestamp?: number): {
year: number;
month: number;
day: number;
hour: number;
minute: number;
second: number;
};
/**
* 获取年份
* @param timestamp 时间戳 (ms)
* @returns 年份
*/
static getYear(timestamp?: number): number;
/**
* 获取月份
* @param timestamp 时间戳 (ms)
* @returns 月份
*/
static getMonth(timestamp?: number): number;
/**
* 获取日期
* @param timestamp 时间戳 (ms)
* @returns 日期
*/
static getDay(timestamp?: number): number;
/**
* 获取小时
* @param timestamp 时间戳 (ms)
* @returns 小时
*/
static getHour(timestamp?: number): number;
/**
* 获取分钟
* @param timestamp 时间戳 (ms)
* @returns 分钟
*/
static getMinute(timestamp?: number): number;
/**
* 获取秒
* @param timestamp 时间戳 (ms)
* @returns 秒
*/
static getSecond(timestamp?: number): number;
/**
* 获取当天开始时间
* @param timestamp 时间戳 (ms)
* @returns 时间戳 (ms)
*/
static getDayStartTime(timestamp?: number): number;
/**
* 获取当天的结束时间
* @param timestamp 时间戳 (ms)
* @returns 时间戳 (ms)
*/
static getDayEndTime(timestamp?: number): number;
/**
* 获取传入时间是周几
* @param {number} [time] (ms)
* @returns {number}
*/
static getWeekDay(time?: number): number;
/**
* 获取当前周的开始时间
* @param timestamp 时间戳 (ms)
* @returns 时间戳 (ms)
*/
static getWeekStartTime(timestamp?: number): number;
static getWeekEndTime(timestamp?: number): number;
/**
* 获取当前月开始时间
* @param timestamp 时间戳 (ms)
* @returns 时间戳 (ms)
*/
static getMonthStartTime(timestamp?: number): number;
/**
* 获取当前月结束时间
* @param timestamp 时间戳 (ms)
* @returns 时间戳 (ms)
*/
static getMonthEndTime(timestamp?: number): number;
/**
* 获取当前年份开始时间
* @param timestamp 时间戳 (ms)
* @returns 时间戳 (ms)
*/
static getYearStartTime(timestamp?: number): number;
/**
* 获取当前年份结束时间
* @param timestamp 时间戳 (ms)
* @returns 时间戳 (ms)
*/
static getYearEndTime(timestamp?: number): number;
/**
* 获取当前月的天数
* @param timestamp 时间戳 (ms)
* @returns 天数
*/
static getMonthDays(timestamp?: number): number;
/**
* 是否是同一天
* @param timestamp1 时间戳1 (ms)
* @param now 时间戳2 (ms) 如果不传,则和当前时间比较
* @returns 是否是同一天
*/
static isSameDay(timestamp1: number, now?: number): boolean;
/**
* 是否是同一周
* @param timestamp1 时间戳1 (ms)
* @param now 时间戳2 (ms) 如果不传,则和当前时间比较
* @returns 是否是同一周
*/
static isSameWeek(timestamp1: number, now?: number): boolean;
/**
* 是否是同一月
* @param timestamp1 时间戳1 (ms)
* @param now 时间戳2 (ms) 如果不传,则和当前时间比较
* @returns 是否是同一月
*/
static isSameMonth(timestamp1: number, now?: number): boolean;
/**
* 是否是同一年
* @param timestamp1 时间戳1 (ms)
* @param now 时间戳2 (ms) 如果不传,则和当前时间比较
* @returns 是否是同一年
*/
static isSameYear(timestamp1: number, now?: number): boolean;
/**
* 格式化时间 格式: xxxx-xx-xx HH:MM:SS
* @param timestamp 时间戳 (ms)
*/
static formatTime(timestamp: number): string;
/**
* 格式化时间 格式: xxxx年xx月xx日 HH:MM:SS
* @param timestamp 时间戳 (ms)
*/
static formatTimeChinese(timestamp: number): string;
/**
* 格式化时间 格式: xxxx-xx-xx hh:mm
* @param timestamp 时间戳 (ms)
*/
static formatYMDHM(timestamp: number): string;
/**
* 格式化时间 格式: xxxx年xx月xx日 h时m分
* @param timestamp 时间戳 (ms)
*/
static formatYMDHMChinese(timestamp: number): string;
/**
* 格式化时间 格式: xxxx-xx-xx
* @param timestamp 时间戳 (ms)
*/
static formatYMD(timestamp: number): string;
/**
* 格式化时间 格式: xxxx年xx月xx日
* @param timestamp 时间戳 (ms)
*/
static formatYMDChinese(timestamp: number): string;
/**
* 格式化时间 格式: xx-xx h:m:s
* @param timestamp 时间戳 (ms)
*/
static formatMDHMS(timestamp: number): string;
/**
* 格式化时间 格式: xx月xx日 h时m分s秒
* @param timestamp 时间戳 (ms)
*/
static formatMDHMSChinese(timestamp: number): string;
/**
* 格式化时间 格式: xx-xx
* @param timestamp 时间戳 (ms)
*/
static formatMD(timestamp: number): string;
/**
* 格式化时间 格式: xx月xx日
* @param timestamp 时间戳 (ms)
*/
static formatMDChinese(timestamp: number): string;
/**
* 格式化时间 格式: hh:mm
* @param timestamp 时间戳 (ms)
*/
static formatHM(timestamp: number): string;
/**
* 格式化时间 格式: h时m分
* @param timestamp 时间戳 (ms)
*/
static formatHMChinese(timestamp: number): string;
/**
* 格式化时间 格式: hh:mm:ss
* @param timestamp 时间戳 (ms)
*/
static formatHMS(timestamp: number): string;
/**
* 格式化时间 格式: h时m分s秒
* @param timestamp 时间戳 (ms)
*/
static formatHMSChinese(timestamp: number): string;
/**
* 智能格式化时间 格式 >1天(x天x小时x分x秒) >1小时(xx小时x分x秒) 1分钟(xx分x秒) 1秒(xx秒)
* @param time 时间 (s)
*/
static formatSmart(time: number): string;
/**
* 智能格式化时间 格式 >1天(x天x小时) >1小时(xx小时xx分) 1分钟(xx分xx秒) 1秒(xx秒)
* @param time 时间 (s)
*/
static formatSmartSimple(time: number): string;
/**
* 格式化倒计时 格式: xx:xx:xx
* @param time 时间 (s)
*/
static formatToHour(time: number): string;
/**
* 格式化倒计时 格式: xx小时xx分xx秒
* @param time 时间 (s)
*/
static formatToHourChinese(time: number): string;
/**
* 格式化倒计时 格式: xx:xx
* @param time 时间 (s)
*/
static formatToMinute(time: number): string;
/**
* 格式化倒计时 格式: xx分xx秒
* @param time 时间 (s)
*/
static formatToMinuteChinese(time: number): string;
mark,mark一下
mark一下
mark Mark
大佬请多出点框架教程哇,小白一枚,支持fgui的框架,真不容易
mark,mark
目前项目比较忙,等有时间了我重新搞一搞教程
现在的话,可以看看声明文件.d.ts中提供的接口
并且demo中有项目基础结构的搭建和界面的使用,比较简单
mark,好东西,支持开源
添加了一点使用教程,给不知道怎么使用这个框架的朋友
github地址
gitee地址
https://gitee.com/gongxinhai/kunpolibrary/blob/main/docs/Noviciate.md
mark~~~~~~~~
项目仓库地址 github
https://github.com/Gongxh0901/kunpolibrary
项目仓库地址 gitee
https://gitee.com/gongxinhai/kunpolibrary
各个小游戏平台都是自己封装的socket 和 浏览器标准的websocket在用法上有一定的差异
import { Socket } from "kunpocc";
// 创建一个连接
let url = "wss:xxxxxxxx"
let socket = new Socket(url, { binaryType: "arraybuffer" });
// 监听连接open事件
socket.onopen = () => {
log("连接成功");
}
// 监听收到服务端的消息
socket.onmessage = (data: string | ArrayBuffer) => {
log("收到消息", data);
}
// 监听连接关闭的事件
socket.onclose = (code: number, reason: string) => {
log("连接关闭", code, reason);
socket = null;
}
// 发送字符串消息
socket.send("发送给服务端的消息");
// 发送二进制数据 一般都是使用ProtoBuf,具体使用可参考Demo
socket.sendBuffer(buffer);
// 主动断开连接
socket.close(3001, "主动断开连接");
可根据 new kunpo.AssetLoader("batchName") 传入的 batchName批量卸载资源
比如进入战斗时,创建了多个new kunpo.AssetLoader(“batchName”) 来加载资源,传入的batchName相同
等退出战斗后,可以通过 AssetPool.releaseBatchAssets(“batchName”) 一键释放所有等于batchName的资源
局外和局内分离,有过场动画的场景
进入局内批量加载资源,退出局内卸载资源
交流群:
详情见仓库文档
github:
gitee:
https://gitee.com/gongxinhai/kunpolibrary/blob/main/docs/HotUpdate.md
框架版本更新1.0.34
支持creator3.7+
mark!!!
宫爆是2.X
你的开源是3.X
?