11
This commit is contained in:
223
Project/HorseGuessing/HorseGuessing.nut
Normal file
223
Project/HorseGuessing/HorseGuessing.nut
Normal file
@@ -0,0 +1,223 @@
|
||||
/*
|
||||
文件名:HorseGuessing.nut
|
||||
路径:Project/HorseGuessing/HorseGuessing.nut
|
||||
创建日期:2024-09-25 20:30
|
||||
文件用途:骑士马战
|
||||
*/
|
||||
dofile("sqr/Project/HorseGuessing/HorseGuessing_Guide.nut"); //骑士马战指引
|
||||
dofile("sqr/Project/HorseGuessing/HorseGuessing_KnightInfo.nut"); //骑士马战资料
|
||||
class HorseGuessingC extends LenheartNewUI_Windows {
|
||||
//调试模式
|
||||
//DeBugMode = true;
|
||||
|
||||
//不是窗口
|
||||
// NoWindow = true;
|
||||
|
||||
//是否可见
|
||||
// Visible = false;
|
||||
|
||||
//标题栏
|
||||
Title = null;
|
||||
//当前页面
|
||||
Page = 0;
|
||||
|
||||
//页面选择器
|
||||
PageSelectM = 0;
|
||||
//指引页面
|
||||
GuidePage = null;
|
||||
//骑士资料页面
|
||||
KnightInfoPage = null;
|
||||
//过往战绩页面
|
||||
PastRecordPage = null;
|
||||
|
||||
|
||||
//骑手名称
|
||||
RiderName = [
|
||||
"伊撒尔",
|
||||
"理查德",
|
||||
"席恩",
|
||||
"吉尔特",
|
||||
"爱德华",
|
||||
"罗兰",
|
||||
"莱奥",
|
||||
"贝奥武夫",
|
||||
];
|
||||
|
||||
//当前选择骑手
|
||||
NowSelectRider = 0;
|
||||
|
||||
//下注
|
||||
BetItem = 0;
|
||||
|
||||
//剩余可下注数量
|
||||
ResidueCoin = 10000;
|
||||
|
||||
|
||||
//骑手信息
|
||||
RiderInfo = null;
|
||||
|
||||
//获取选手具体信息
|
||||
function GetRiderInfo() {
|
||||
local T = {
|
||||
op = 20055003,
|
||||
code = NowSelectRider,
|
||||
}
|
||||
SendPack(T);
|
||||
}
|
||||
|
||||
//获取选手具体信息回调包
|
||||
function GetRiderInfoCallBack(Chunk) {
|
||||
local Jso = Json.Decode(Chunk);
|
||||
RiderInfo = [];
|
||||
for (local i = 0; i< Jso.outcome.len(); i++) {
|
||||
RiderInfo.append(Jso.outcome[i]);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
constructor(gObjectId, gX, gY, gWidth, gHeight, gTitleH) {
|
||||
Childrens = [];
|
||||
Title = [];
|
||||
RiderInfo = [];
|
||||
//读取配置文件
|
||||
local Config = R_Utils.ReadScriptConfig("etc/rindro/horseguessing/horseguessing.dat", 1024, "utf8");
|
||||
|
||||
RiderName = Config.RiderInfo;
|
||||
BetItem = Config.ItemId;
|
||||
//把big的名字 转成 utf8
|
||||
for (local i = 0; i< RiderName.len(); i++) {
|
||||
RiderName[i] = Sq_ConvertWideChar(RiderName[i], "big5");
|
||||
}
|
||||
|
||||
//注册控件
|
||||
RegisterWidget();
|
||||
|
||||
LenheartNewUI_Windows.constructor(gObjectId, gX, gY, gWidth, gHeight, gTitleH);
|
||||
|
||||
GuidePage = HorseGuessing_GuideC("骑士马战_指引窗口", X + 7, Y + 50, 214, 480, 0);
|
||||
KnightInfoPage = HorseGuessing_KnightInfoC("骑士马战_资料窗口", X + 7, Y + 50, 214, 480, 0);
|
||||
|
||||
//默认构造时切换到0页
|
||||
ChangePage(1);
|
||||
}
|
||||
|
||||
function ChangePage(ToPage) {
|
||||
|
||||
foreach(ButtonObj in Title) {
|
||||
ButtonObj.State = 0;
|
||||
}
|
||||
Page = ToPage;
|
||||
Title[ToPage].State = 1;
|
||||
|
||||
RemoveChild("骑士马战_指引窗口");
|
||||
RemoveChild("骑士马战_资料窗口");
|
||||
RemoveChild("骑士马战_战绩窗口");
|
||||
|
||||
PageSelectM = ToPage;
|
||||
switch (ToPage) {
|
||||
case 0: {
|
||||
AddChild(GuidePage);
|
||||
break;
|
||||
}
|
||||
case 1: {
|
||||
AddChild(KnightInfoPage);
|
||||
break;
|
||||
}
|
||||
case 2:
|
||||
AddChild(PastRecordPage);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
function RegisterWidget() {
|
||||
//关闭按钮
|
||||
local CloseButton = LenheartNewUI_BaseButton(750, 0, 11, 12, "interface/lenheartwindowcommon.img", 276);
|
||||
CloseButton.OnClick = function() {
|
||||
this.Visible = false;
|
||||
}.bindenv(this);
|
||||
Childrens.append(CloseButton);
|
||||
|
||||
local Tabbars1 = LenheartNewUI_TabbarsText(12, 27, "指引");
|
||||
Tabbars1.State = 1;
|
||||
AddChild(Tabbars1);
|
||||
Tabbars1.OnClick = function() {
|
||||
ChangePage(0);
|
||||
}.bindenv(this);
|
||||
Title.append(Tabbars1);
|
||||
|
||||
local Tabbars2 = LenheartNewUI_TabbarsText(74, 27, "骑士资料");
|
||||
AddChild(Tabbars2);
|
||||
Tabbars2.OnClick = function() {
|
||||
ChangePage(1);
|
||||
}.bindenv(this);
|
||||
Tabbars2.SetTextOffset(7, 3);
|
||||
Title.append(Tabbars2);
|
||||
|
||||
local Tabbars3 = LenheartNewUI_TabbarsText(136, 27, "过往战绩");
|
||||
AddChild(Tabbars3);
|
||||
Tabbars3.OnClick = function() {
|
||||
ChangePage(2);
|
||||
}.bindenv(this);
|
||||
Tabbars3.SetTextOffset(7, 3);
|
||||
Title.append(Tabbars3);
|
||||
|
||||
}
|
||||
|
||||
function DrawInfo(obj) {
|
||||
|
||||
|
||||
}
|
||||
|
||||
//绘制主界面
|
||||
function DrawMain(obj) {
|
||||
//绘制窗口
|
||||
L_sq_DrawImg("interface2/event/chn_event_2016/160927_joustmatches/joustmatches_ui.img", 33, X, Y);
|
||||
//绘制左边底槽窗口
|
||||
L_sq_DrawWindow(X + 2, Y + 46, 210, 435, "interface/lenheartwindowcommon.img", 97, 11, 12, 11, 13);
|
||||
|
||||
|
||||
//绘制详情页
|
||||
DrawInfo(obj);
|
||||
|
||||
//BackGround
|
||||
L_sq_DrawImg("interface2/event/chn_event_2016/160927_joustmatches/joustmatches_ui.img", 0, X + 227, Y + 26);
|
||||
|
||||
// L_sq_DrawCode(L_sq_StringBinById(271069), X + 400, Y + 386, sq_RGBA(255, 255, 255, 250), 0, 1);
|
||||
}
|
||||
|
||||
function Show(obj) {
|
||||
DrawMain(obj);
|
||||
LenheartNewUI_Windows.Show(obj);
|
||||
|
||||
}
|
||||
|
||||
//逻辑入口
|
||||
function Proc(obj) {
|
||||
LenheartNewUI_Windows.SyncPos(X, Y);
|
||||
|
||||
//主动调用子对象窗口的Proc
|
||||
foreach(Object in Childrens) {
|
||||
if (Object instanceof LenheartNewUI_Windows)
|
||||
Object.Proc(obj);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
function OpenCallBack() {
|
||||
this.Visible = true;
|
||||
ResetFocus();
|
||||
}
|
||||
}
|
||||
getroottable().rawdelete("HorseGuessing_Obj");
|
||||
|
||||
function Lenheart_HorseGuessing_Fun(obj) {
|
||||
local RootTab = getroottable();
|
||||
if (!RootTab.rawin("HorseGuessing_Obj")) {
|
||||
RootTab.rawset("HorseGuessing_Obj", true);
|
||||
local Winobj = LenheartNewUI_CreateWindow(HorseGuessingC, "骑士马战窗口", ((getroottable().Rindro_Scr_Width - 772) / 2).tointeger(), 30, 772, 539, 28);
|
||||
|
||||
EventList_Obj.AddEvent("骑士马战", 106, Winobj, "interface2/yosin/eventsystemlist2.img");
|
||||
}
|
||||
}
|
||||
|
||||
getroottable()["LenheartFuncTab"].rawset("HorseGuessingFuncN", Lenheart_HorseGuessing_Fun);
|
||||
Reference in New Issue
Block a user