cocos2dx-lua 一些公共方法的

操作方法

  • 01

    function getStringTimeForInt(timeInt) if(tonumber(timeInt) <= 0)then return "00:00:00" elseif(timeInt/60 >= 60)then return string.format("%.2d:%.2d:%.2d",timeInt/3600,(timeInt/60)%60,timeInt%60) elseif(timeInt >= 60)then return string.format("00:%.2d:%.2d",(timeInt/60)%60,timeInt%60) else return string.format("00:00:%.2d",timeInt%60) end end -- 将一个时间数转换成"00:00:00"格式 function getTimeString(timeInt) if(tonumber(timeInt) <= 0)then return "00:00:00" else return string.format("%02d:%02d:%02d", math.floor(timeInt/(60*60)), math.floor((timeInt/60)%60), timeInt%60) end end -- 将一个时间数转换成"00时00分00秒"格式 function getTimeStringFont(timeInt) if(tonumber(timeInt) <= 0)then return "00时00分00秒" else return string.format("%02d时%02d分%02d秒", math.floor(timeInt/(60*60)), math.floor((timeInt/60)%60), timeInt%60) end end -- nGenTime: 产生时间戳(也可以是一个未来的时间,比如CD时间戳) -- nDuration: 固定的有效期间,单位秒,计算某个未来时间的剩余时间时不需要指定 -- 返回3个结果,第一个是剩余到期时间的字符串,"HH:MM:SS", 不足2位自动补零;第二个是bool,标识nGenTime是否到期;第三个是剩余秒数 function expireTimeString( nGenTime, nDuration ) local nNow = BTUtil:getSvrTimeInterval() --CCLuaLog("nGenTime = " .. nGenTime .. " nNow = " .. nNow) local nViewSec = (nDuration or 0) - (nNow - nGenTime) return getTimeString(nViewSec), nViewSec <= 0, nViewSec end --得到一个时间戳timeInt与当前时间的相隔天数 --offset是偏移量,例如凌晨4点:4*60*60 --return type is integer, 0--当天, n--不在同一天,相差n天 function getDifferDay(timeInt, offset) timeInt = tonumber(timeInt or 0) offset = tonumber(offset or 0) local curTime = tonumber(BTUtil:getSvrTimeInterval()) - offset if(os.date("%j",curTime) == 1 and os.date("%j",timeInt - offset) ~= 1)then return os.date("%j",curTime) - (os.date("%j",timeInt - offset) - os.date("%j",curTime-24*60*60)) else--if(os.date("%j",curTime) ~= os.date("%j",timeInt - offset))then return os.date("%j",curTime) - os.date("%j",timeInt - offset) end end -- 指定一个日期时间字符串,返回与之对应的东八区(服务器时区)时间戳 -- sTime: 格式 "2013-07-02 20:00:00" function getIntervalByTimeString( sTime ) local t = string.split(sTime, " ") local tDate = string.split(t[1], "-") local tTime = string.split(t[2], ":") local tt = os.time({year = tDate[1], month = tDate[2], day = tDate[3], hour = tTime[1], min = tTime[2], sec = tTime[3]}) local ut = os.date("!*t", tt) local east8 = os.time(ut) + 8*60*60 -- UTC时间+8小时转为东八区北京时间 return east8 end --给一个时间如:153000,得到今天15:30:00的时间戳 function getIntervalByTime( time ) local curTime = BTUtil:getSvrTimeInterval() local temp = os.date("*t",curTime) local h,m,s = string.match(time, "(%d%d)(%d%d)(%d%d)" ) local timeString = temp.year .."-".. temp.month .."-".. temp.day .." ".. h ..":".. m ..":".. s local timeInt = TimeUtil.getIntervalByTimeString(timeString) return timeInt end

(0)

相关推荐

  • 刺激战场lua文件如何使用

    lua文件指的是一个文件后缀名的意思,它的使用非常的广泛,下面分享的是脚本类的lua文件使用方法. 操作方法 01 首先我们要先确认自己下载或者准备使用文件的格式,点击电脑上的查看. 02 查看之后把 ...

  • JAVA生成文件的方法

    大家都知道编程人员,php,javascript是最难搞的,不过懂得人却乐在其中,但是不懂的就惨了,下面是笔者在编程当中发现的一些问题,权当是经验之谈. 步骤/方法 01 不要把简单事情复杂化(Do ...

  • Unity中uGUI怎么使用按钮对象?

    Unity怎么添加按钮对象,该怎么添加被?下面我们就来看看详细的教程. 1.首先新建Canvas对象,新建子对象Image/Text, 当然还有Button 2.点击Button,在右边面板修改按钮颜 ...

  • JS中this关键字的解释

    this关键字 每一个行为发生的时候,肯定会有一个发生这个行为的主体.比如说吃饭这个方法,它是由上帝来定义的,世界上所有的人来执行.吃饭这个行为发生的时候,主体就是在吃饭的这个人,也就是要有人执行吃饭 ...

  • 如何通过iframe来实现导入导出的效果

    iframe标签会创建包含另外一个文档的内联框架,跟当前window框架是父子关系,利用iframe,我们可以处理异步无刷新上传.下载文件:通常下载文件利用window.open(downloadUr ...

  • 百度公共DNS地址是多少?百度DNS设置方法(windows.lunix.mac)

    百度公共DNS提供域名解析服务,有时候DNS无法通过自动获取,只能依赖手动设置,下面我就来介绍一下怎么获取DNS并设置成固定的dns。分为两个步骤,第一步获得DNS地址,第二步设置DNS。 一、Win ...

  • 在win7/win8/xp系统中设置百度公共dns的方法全程图解

    win7/win8/xp怎么设置百度公共dns呢?近日百度正式宣布推出公共DNS:180.76.76.76,那么百度公共dns怎么设置呢?下文小编就教大家在win7/win8/xp系统中设置百度公共d ...

  • cocos2d-x在win7下的环境配置方法

    准备做cocos2d的开发,在vs2012下开发。 配置如下: 1:安装vs2012 2:下载cocos2d-x的开发包,然后解压到某一处。 3:安装python2.7版本。 4:设置python和c ...

  • 小米路由设置百度公共dns怎么操作?小米路由设置dns方法步骤

    小米路由设置百度公共dns怎么操作的呢?下文小编就为大家带来小米路由设置dns的方法,小米路由想要使用百度公共dns要怎么设置呢?接下来还不 知道的朋友们随小编一起来学习下吧。 小米路由设置百度公共d ...