125 lines
3.1 KiB
Plaintext
125 lines
3.1 KiB
Plaintext
/*
|
|
文件名:Rindro_Luke_Noti.nut
|
|
路径:Plugins/Rindro_Luke_/Rindro_Luke_Noti.nut
|
|
创建日期:2024-04-12 22:12
|
|
文件用途:超时空攻坚战队伍消息
|
|
*/
|
|
class Rindro_Luke_NotiC extends LenheartNewUI_Windows {
|
|
//调试模式
|
|
// DeBugMode = true;
|
|
//不要窗口模式
|
|
NoWindow = true;
|
|
//消息内容
|
|
Msg = null;
|
|
//队长名称
|
|
Name = null;
|
|
//消息时间
|
|
Timer = null;
|
|
|
|
|
|
//X Y 裁切开始X Y 裁切结束X Y
|
|
OffsetArr = [
|
|
//男鬼剑士
|
|
[56, 112, 220, 222],
|
|
//女格斗家
|
|
[54, 103, 240, 278],
|
|
//男神枪手
|
|
[55, 130, 236, 246],
|
|
//女魔法师
|
|
[57, 88, 234, 291],
|
|
//男圣职者
|
|
[57, 124, 208, 190],
|
|
//女神枪手
|
|
[56, 119, 226, 209],
|
|
//暗夜使者
|
|
[56, 117, 225, 212],
|
|
//男格斗家
|
|
[56, 118, 233, 212],
|
|
//男魔法师
|
|
[54, 103, 236, 276],
|
|
//黑暗武士
|
|
[56, 112, 220, 222],
|
|
//缔造者
|
|
[57, 88, 234, 291],
|
|
]
|
|
|
|
//队伍聊天消息分发
|
|
function Rindro_Luke_PartyNotiCallBack(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(20084018, Rindro_Luke_PartyNotiCallBack.bindenv(this));
|
|
}
|
|
|
|
function RegisterWidget() {
|
|
|
|
}
|
|
|
|
//队长头像
|
|
PartyMasterIcon = null;
|
|
//绘制主界面
|
|
function DrawMain(obj) {
|
|
|
|
if (!Name || !Msg) return;
|
|
local Ct = Clock() - Timer;
|
|
T_DrawDynamicAni(obj, "common/anton/title/06_leader_message_00.ani", 180, 180, "攻坚队团长消息分发" + Timer);
|
|
|
|
if (RinDro_Luke_Obj.MyRaidTeam) {
|
|
local Mt = RinDro_Luke_Obj.MyRaidTeam;
|
|
local PartyMaster = null;
|
|
foreach(index, value in Mt.MembersList) {
|
|
if (value.InfoObj.Captain) {
|
|
PartyMasterIcon = clone(value);
|
|
}
|
|
}
|
|
|
|
if (Ct >= 200) {
|
|
//绘制队长头像
|
|
local AXpos = X - 9 + 150 + 44;
|
|
local AYpos = Y + 184 + 2;
|
|
PartyMasterIcon.InfoObj.EquVos.DrawFace(AXpos, AYpos);
|
|
}
|
|
}
|
|
|
|
//绘制消息
|
|
if (Ct >= 200) L_sq_DrawCode(Msg, X + 270 + LenheartTextClass.GetStringLength(Name), Y + 190, sq_RGBA(230, 200, 155, 255), 0, 1);
|
|
|
|
if (Ct >= 2000) Msg = null;
|
|
}
|
|
|
|
function Show(obj) {
|
|
DrawMain(obj);
|
|
LenheartNewUI_Windows.Show(obj);
|
|
|
|
}
|
|
|
|
//逻辑入口
|
|
function Proc(obj) {
|
|
LenheartNewUI_Windows.SyncPos(X, Y);
|
|
if (Name && Msg)
|
|
ResetFocus();
|
|
else
|
|
// CloseWindow();
|
|
|
|
if (Timer) {
|
|
if (Clock() - Timer >= 3000) {
|
|
Timer = null;
|
|
Name = null;
|
|
Msg = null;
|
|
}
|
|
}
|
|
}
|
|
|
|
} |