罗盘时钟lua迷你世界

--罗盘时钟

--星空露珠工作室制作

--作者:韩永旗

--数字换中文

local zhChar = {'一','二','三','四','五','六','七','八','九'}

function formatNumber( num )

if type(num)~='number' then return num..'is not a num' end

if num>99 then return num..'不是两位数' end

if num==0 then return '零'

elseif num>0 and num<10 then return zhChar[num]

elseif num>=10 then

if num==10 then return '十' end

if num%10==0 then return zhChar[math.floor(num/10)]..'十'

elseif num>10 and num<20 then return '十'..zhChar[num%10]

else return zhChar[math.floor(num/10)]..'十'..zhChar[num%10]

end

end

end

-- 测试一下:(禁用002)

--print(formatNumber(20))

迷你世界监听函数方便使用

local ui={'7382219973642268578','7382219973642268578_'}

--设置元件图片

local function setgip(p,id,url) Customui:setTexture(p,ui[1],ui[2]..id,url) end

--设置元件大小

local function setsize(p,id,d,h) Coustomui:setSize(p,ui[1],ui[2]..id,d,h) end

--设置元件位置

local function setpos(p,id,x,y) Trigger.UI:setPosition(p,ui[1],ui[2]..id,x,y) end

--设置元件颜色

local function setcolor(p,id,color) Trigger.UI:setColor(p,ui[1],ui[2]..id,color) end

--显示元件

local function show(p,id) Trigger.UI:showElement(p,ui[1],ui[2]..id) end

--隐藏元件

local function hide(p,id) Trigger.UI:hideElement(p,ui[1],ui[2]..id) end

--设置文字框

local function setstr(p,id,str) Trigger.UI:setText(p,ui[1],ui[2]..id,str) end

--设置元件文字大小

local function setfontsize(p,id,size) Trigger.UI:setFontSize(p, ui[1],ui[2]..id,size) end

--旋转元件

local function rotate(p,pi) Customui:rotateElement(p,ui[1],ui[2]..button.rotate1,pi) Trigger.UI:setText(p,ui[1],ui[2]..button.rotate2,pi) end

--元件平滑旋转到指定角度

local function smoothrotateto(p,id,time,angle) Customui:SmoothRotateTo(p,ui[1],ui[2]..id,time,angle) end

--元件平滑旋转到相对角度

local function smoothrotateby(p,id,time,angle) Customui:SmoothRotateBy(p,ui[1],ui[2]..id,time,angle) end

--播放声音

local function music(p) Player:playMusic(p,10948,50,1,false) end

等待时间

local function wait(time)

local v1 = time

if logidx then

Trigger.Debug:ReportActionRunData(logidx, status_idx, 1, v1)

end

if v1 == nil then

print("-- [func_1] Warnning -- param is nil:", v1)

return

end

if Trigger and Trigger.wait then

return Trigger:wait(v1)

end

end

设置参数大小数量文字位置

--显示框 2 年份228 节日158

local ui0={3,64,125,150,183,215}
local data={{'秒',0,59,6,1,370, 15},{'分',0,59,6,1,300, 14},{'时',0,23,15,1,235, 13},{'星期',1,7,45,0,185, 13},{'号',1,31,11.25,0,135, 12},{'月',1,12,30,0,75, 13},}

设置界面大小位置

local p=247312290

local function upui(p)

show(p,1)

-- setpos(p,1,0,0)

setsize(p,1,0,0)

show(p,2)

setpos(p,2,-20,0)

setsize(p,2,400,25)

show(p,228)

setpos(p,228,-15,0)

setsize(p,228,70,20)

setstr(p,228,'2024年')

setfontsize(p,228,15)

设置秒分时等等 日期界面

for k,v in pairs(data) do

local id=ui0[k]

show(p,id)

setpos(p,id,0,0)

setsize(p,id,0,0)

local str=''

for i=v[2],v[3] do if v[1]=='星期' then if i==1 then str=v[1]..'日' else str=v[1]..formatNumber(i-1) end else str=formatNumber(i)..v[1] end

local id=ui0[k]+i+v[5]

local color=Trigger.Graphics:getRandomColor()

local angle=-(i+v[5]-1)*v[4]

show(p,id)

setpos(p,id,0,0)

setsize(p,id,v[6],20)

setstr(p,id,str)

setcolor(p,id,color)

setfontsize(p,id,v[7])

smoothrotateto(p,id,4,angle)

end

wait(3)

end

wait(1)

uptime(p)

end

每秒加一时间角度换算刷新界面

function uptime(p)

local t=os.date("*t",timeInterval)

--print('当前时间:'..t.year.."年"..t.month.."月"..t.day.."日"..B[t.wday]..t.hour..":"..t.min ..":"..t.sec)

local time={t.sec,t.min,t.hour,t.wday,t.day,t.month,t.year}

for k,v in pairs(data) do

local id=ui0[k]

local angle=(time[k]+v[5]-1)*v[4]

smoothrotateto(p,id,0.6,angle)

end

music(p)

wait(1)

uptime(p)

end

玩家进入游戏执行

local function EventMain_1(e)

local p=e.eventobjid

upui(p)

end

ScriptSupportEvent:registerEvent_NoError('Game.AnyPlayer.EnterGame', EventMain_1)

相关推荐
l1t5 小时前
利用DeepSeek辅助修改luadbi-duckdb读取DuckDB decimal数据类型
c语言·数据库·单元测试·lua·duckdb
立志成为大牛的小牛8 小时前
数据结构——三十七、关键路径(王道408)
数据结构·笔记·程序人生·考研·算法
Shinom1ya_10 小时前
算法 day 41
数据结构·算法·leetcode
无敌最俊朗@10 小时前
C++ 值类别与移动语义详解(精简版)
java·数据结构·算法
岑梓铭11 小时前
《考研408数据结构》第六章(5.5树的应用)复习笔记
数据结构·笔记·考研·408·ds
不觉晚秋11 小时前
极限挑战之一命速通哈夫曼树
c语言·数据结构··哈夫曼树
Mr. zhihao12 小时前
Java 反序列化中的 boolean vs Boolean 陷阱:一个真实的 Bug 修复案例
java·bug·lua
第七序章12 小时前
【C + +】C++11 (下) | 类新功能 + STL 变化 + 包装器全解析
c语言·数据结构·c++·人工智能·哈希算法·1024程序员节
AA陈超12 小时前
虚幻引擎5 GAS开发俯视角RPG游戏 P06-29 属性信息委托
c++·游戏·ue5·游戏引擎·虚幻
仰泳的熊猫13 小时前
LeetCode:72. 超级次方
数据结构·c++·算法·leetcode