/* 文件名:Steal.nut 路径:Project/Steal/Steal.nut 创建日期:2026-04-07 05:19 文件用途: */ class StealC_Password_Box extends LenheartNewUI_CommonUi { //数字序列 NumberSeq = null; constructor(X, Y) { LenheartNewUI_CommonUi.constructor(X, Y, 30, 120); //生成数字序列 NumberSeq = []; for (local i = 0; i< 10; i++) { local Info = { num = sq_getRandom(0, 9), CorrectFlag = false, } NumberSeq.append(Info); } //随机一个正确的数字 local CorrectIndex = sq_getRandom(0, 9); NumberSeq[CorrectIndex].CorrectFlag = true; } function Show(obj) { local Dt = Parent.Duration; Parent.Img.DrawExPng(10, X, Y, 0, sq_RGBA(255, 255, 255, 90), 1.0, 1.0); //绘制数字 for (local i = 0; i< 10; i++) { local Info = NumberSeq[i]; local Color = Info.CorrectFlag ? sq_RGBA(157, 245, 10, 255) : sq_RGBA(150, 150, 150, 255); L_sq_DrawCode(Info.num.tostring(), X + 15 - LenheartTextClass.GetStringLength(Info.num.tostring()) / 2, Y + 10 + i * 24, Color, 0, 1); } } } class StealC extends LenheartNewUI_Windows { //调试模式 // DeBugMode = true; //不是窗口 // NoWindow = true; //是否可见 // Visible = false; Img = Rindro_Image("steal/widget.img"); //解锁完成度 UnlockComplete = 0.57; constructor(gObjectId, gX, gY, gWidth, gHeight, gTitleH) { Childrens = []; //注册控件 RegisterWidget(); LenheartNewUI_Windows.constructor(gObjectId, gX, gY, gWidth, gHeight, gTitleH); } function RegisterWidget() { // //关闭按钮 // local CloseButton = LenheartNewUI_BaseButton(278, 0, 11, 12, "interface/lenheartwindowcommon.img", 276); // CloseButton.OnClick = function() { // this.Visible = false; // }.bindenv(this); // Childrens.append(CloseButton); for (local i = 0; i< 8; i++) { local PasswordBox = StealC_Password_Box(280 + i * 30, 268); AddChild(PasswordBox); } } //绘制主界面 function DrawMain(obj) { //灰色背景 DrawNineBoxAlpha(X, Y, 800, 600, "interface2/common/mypopup/popup.img", 0, 150); //宝箱动画 local Ani = DrawAniEx(X + 425, Y + 230, "npc/animation/storagediamond.ani"); Ani.setImageRateFromOriginal(2.0, 2.0); //完成度文字 local StealCompleteStr = "解锁完成度: " + UnlockComplete * 100.0 + "%"; L_sq_DrawCode(StealCompleteStr, X + 410 - LenheartTextClass.GetStringLength(StealCompleteStr) / 2, Y + 406, sq_RGBA(255, 255, 255, 255), 0, 1); //完成度进度条 Img.DrawPng(2, X + 162, Y + 425); setClip(X + 168, Y + 429, X + 168 + (463 * UnlockComplete).tointeger(), Y + 429 + 6); Img.DrawPng(3, X + 168, Y + 429); releaseClip(); //裁切结束 //解锁界面 Img.DrawPng(9, X + 269, Y + 260); //解锁锁定条 Img.DrawPng(11, X + 269 + 8, Y + 260 + 60); } function Show(obj) { DrawMain(obj); //裁切遮罩密码框 setClip(X + 280, Y + 268, X + 280 + 8 * 30, Y + 268 + 120); LenheartNewUI_Windows.Show(obj); releaseClip(); //裁切结束 } //逻辑入口 function Proc(obj) { LenheartNewUI_Windows.SyncPos(X, Y); } } L_Windows_List <- []; getroottable().rawdelete("LenheartPluginsInitFlag"); getroottable().rawdelete("EventList_Obj") getroottable().rawdelete("Steal_Obj"); getroottable().rawdelete("L_Each_Obj"); function Lenheart_Steal_Fun(obj) { local RootTab = getroottable(); if (!RootTab.rawin("Steal_Obj")) { RootTab.rawset("Steal_Obj", true); LenheartNewUI_CreateWindow(StealC, "偷窃系统窗口", 0, 0, 800, 600, 0); } } getroottable()["LenheartFuncTab"].rawset("StealFuncN", Lenheart_Steal_Fun);