11111
This commit is contained in:
112
Project/Fiendwar/FiendwarNoti.nut
Normal file
112
Project/Fiendwar/FiendwarNoti.nut
Normal file
@@ -0,0 +1,112 @@
|
||||
/*
|
||||
文件名:FiendwarNoti.nut
|
||||
路径:Project/Fiendwar/FiendwarNoti.nut
|
||||
创建日期:2024-11-26 14:45
|
||||
文件用途:
|
||||
*/
|
||||
class FiendwarNotiC extends LenheartNewUI_Windows {
|
||||
//调试模式
|
||||
// DeBugMode = true;
|
||||
|
||||
//消息内容
|
||||
Msg = null;
|
||||
//队长名称
|
||||
Name = null;
|
||||
//消息时间
|
||||
Timer = null;
|
||||
|
||||
//队伍聊天消息分发
|
||||
function FiendwarPartyNotiCallBack(Chunk) {
|
||||
local Jso = Json.Decode(Chunk);
|
||||
Name = Jso.Name;
|
||||
Msg = Jso.msg;
|
||||
Timer = Clock();
|
||||
}
|
||||
|
||||
|
||||
constructor(gObjectId, gX, gY, gWidth, gHeight, gTitleH) {
|
||||
Childrens = [];
|
||||
//注册控件
|
||||
RegisterWidget();
|
||||
|
||||
LenheartNewUI_Windows.constructor(gObjectId, gX, gY, gWidth, gHeight, gTitleH);
|
||||
|
||||
//队伍聊天消息分发
|
||||
Pack_Control.rawset(20063018, FiendwarPartyNotiCallBack.bindenv(this));
|
||||
|
||||
}
|
||||
|
||||
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);
|
||||
|
||||
}
|
||||
|
||||
//队长头像
|
||||
PartyMasterIcon = null;
|
||||
//绘制主界面
|
||||
function DrawMain(obj) {
|
||||
|
||||
if (!Name || !Msg) return;
|
||||
//绘制背景框
|
||||
L_sq_DrawImg("hud/fiendwarl.img", 24, X + 134, Y + 180);
|
||||
//绘制队长图标
|
||||
// L_sq_DrawImg
|
||||
|
||||
if (FiendwarTotal.GetInstance().MyTeam) {
|
||||
local Mt = FiendwarTotal.GetInstance().MyTeam;
|
||||
local PartyMaster;
|
||||
foreach(index, value in Mt.MembersList) {
|
||||
if (value.InfoObj.Captain) {
|
||||
PartyMasterIcon = clone(value);
|
||||
}
|
||||
}
|
||||
|
||||
sq_DrawBox(X + 42 + 118, Y + 1 + 185, 22, 18, PartyMasterIcon.HandBoxColor[PartyMasterIcon.InfoObj.TeamId]);
|
||||
//绘制队长头像
|
||||
foreach(AvatarObj in PartyMasterIcon.InfoObj.EquVos) {
|
||||
local AXpos = AvatarObj.D[0] + X + PartyMasterIcon.OffsetArr[PartyMasterIcon.InfoObj.Job][0] + 118;
|
||||
local AYpos = AvatarObj.D[1] + Y + PartyMasterIcon.OffsetArr[PartyMasterIcon.InfoObj.Job][1] + 185;
|
||||
setClip(AXpos + PartyMasterIcon.OffsetArr[PartyMasterIcon.InfoObj.Job][2], AYpos + PartyMasterIcon.OffsetArr[PartyMasterIcon.InfoObj.Job][3], AXpos + PartyMasterIcon.OffsetArr[PartyMasterIcon.InfoObj.Job][2] + 22, AYpos + PartyMasterIcon.OffsetArr[PartyMasterIcon.InfoObj.Job][3] + 18); //开始裁切
|
||||
L_sq_DrawImg("character/" + AvatarObj.B + ".img", AvatarObj.C, AXpos, AYpos);
|
||||
releaseClip(); //裁切结束
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//绘制队长名字
|
||||
L_sq_DrawCode(Name, X + 184, Y + 189, sq_RGBA(247, 214, 90, 255), 0, 1);
|
||||
//绘制点
|
||||
L_sq_DrawCode(" : ", X + 210, Y + 189, sq_RGBA(230, 200, 155, 255), 0, 1);
|
||||
//绘制消息
|
||||
L_sq_DrawCode(Msg, X + 190 + LenheartTextClass.GetStringLength(Name), Y + 189, sq_RGBA(230, 200, 155, 255), 0, 1);
|
||||
}
|
||||
|
||||
function Show(obj) {
|
||||
DrawMain(obj);
|
||||
LenheartNewUI_Windows.Show(obj);
|
||||
|
||||
}
|
||||
|
||||
//逻辑入口
|
||||
function Proc(obj) {
|
||||
LenheartNewUI_Windows.SyncPos(X, Y);
|
||||
if (Name && Msg)
|
||||
Visible = true;
|
||||
else
|
||||
Visible = false;
|
||||
|
||||
if (Timer) {
|
||||
if (Clock() - Timer >= 3500) {
|
||||
Timer = null;
|
||||
Name = null;
|
||||
Msg = null;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user