| 
									
										
										
										
											2025-07-05 22:29:38 +08:00
										 |  |  | /* | 
					
						
							|  |  |  | 文件名:TH_CombatRank.nut | 
					
						
							|  |  |  | 路径:Project/TH_CombatRank/TH_CombatRank.nut | 
					
						
							|  |  |  | 创建日期:2025-07-01	10:18 | 
					
						
							|  |  |  | 文件用途:战力排行榜 | 
					
						
							|  |  |  | */ | 
					
						
							|  |  |  | class TH_CombatRankC extends LenheartNewUI_Windows { | 
					
						
							|  |  |  |     //调试模式 | 
					
						
							|  |  |  |     // DeBugMode = true; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     //不是窗口 | 
					
						
							|  |  |  |     // NoWindow = true; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     //是否可见 | 
					
						
							|  |  |  |     Visible = false; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     Img = null; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     TitleButtonList = null; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     //个人 公会 | 
					
						
							|  |  |  |     Page = 0; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     Test = null; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     //个人战力集合 | 
					
						
							|  |  |  |     CombatInfoList = null; | 
					
						
							|  |  |  |     //个人奖励集合 | 
					
						
							|  |  |  |     PersonReward = null; | 
					
						
							|  |  |  |     //查看中的详细个人信息 | 
					
						
							|  |  |  |     LookingInfo = null; | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-07-16 15:21:53 +08:00
										 |  |  |     //我的战力 | 
					
						
							|  |  |  |     MyCombat = null; | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-07-05 22:29:38 +08:00
										 |  |  |     //公会奖励集合 | 
					
						
							|  |  |  |     GuildReward = null; | 
					
						
							|  |  |  |     GuildFlagData = null; | 
					
						
							| 
									
										
										
										
											2025-07-16 15:21:53 +08:00
										 |  |  |     GuildFlagImgMap = null; | 
					
						
							| 
									
										
										
										
											2025-07-05 22:29:38 +08:00
										 |  |  |     //公会战力集合 | 
					
						
							|  |  |  |     GuildInfoList = null; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     //滚动条 | 
					
						
							|  |  |  |     ScrollBar = null; | 
					
						
							|  |  |  |     ScrollBarRate = 0; | 
					
						
							|  |  |  |     ScrollBarValue = 604; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     function CheckPersonalCombatPower() { | 
					
						
							|  |  |  |         SendPackEx({ | 
					
						
							|  |  |  |             op = 20096003 | 
					
						
							|  |  |  |         }) | 
					
						
							|  |  |  |     } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     function CheckGuildCombatPower() { | 
					
						
							|  |  |  |         SendPackEx({ | 
					
						
							|  |  |  |             op = 20096005 | 
					
						
							|  |  |  |         }) | 
					
						
							|  |  |  |     } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     constructor(gObjectId, gX, gY, gWidth, gHeight, gTitleH) { | 
					
						
							|  |  |  |         Childrens = []; | 
					
						
							|  |  |  |         TitleButtonList = []; | 
					
						
							|  |  |  |         //注册控件 | 
					
						
							|  |  |  |         RegisterWidget(); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         LenheartNewUI_Windows.constructor(gObjectId, gX, gY, gWidth, gHeight, gTitleH); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         Img = {}; | 
					
						
							|  |  |  |         Img["main"] <- Rindro_Image("interface/rindro/thnew_rank.img"); | 
					
						
							|  |  |  |         Img["information_button_cn"] <- Rindro_Image("interface2/hud/information_button/information_button_cn.img"); | 
					
						
							|  |  |  |         Img["newuserinfo"] <- Rindro_Image("interface/userinfomation/newuserinfo.img"); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         //基础配置数据回包 | 
					
						
							|  |  |  |         RegisterPack(20096102, function(Chunk) { | 
					
						
							|  |  |  |             local Jso = Json.Decode(Chunk); | 
					
						
							|  |  |  |             PersonReward = Jso["config"]; | 
					
						
							|  |  |  |         }.bindenv(this)); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         //基础公会数据回包 | 
					
						
							|  |  |  |         RegisterPack(20096104, function(Chunk) { | 
					
						
							|  |  |  |             local Jso = Json.Decode(Chunk); | 
					
						
							|  |  |  |             GuildReward = Jso["config"]; | 
					
						
							|  |  |  |             GuildFlagData = {}; | 
					
						
							| 
									
										
										
										
											2025-07-16 15:21:53 +08:00
										 |  |  |             GuildFlagImgMap = {}; | 
					
						
							| 
									
										
										
										
											2025-07-05 22:29:38 +08:00
										 |  |  |             foreach(object in Jso["config2"]) { | 
					
						
							|  |  |  |                 GuildFlagData.rawset(object.guildId, [object.img, object.imgid]); | 
					
						
							|  |  |  |             } | 
					
						
							|  |  |  |         }.bindenv(this)); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         //查询个人战力排行榜包 | 
					
						
							|  |  |  |         RegisterPack(20096004, function(Chunk) { | 
					
						
							|  |  |  |             local Jso = Json.Decode(Chunk); | 
					
						
							|  |  |  |             local ranking = Jso.ranking; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |             CombatInfoList = []; | 
					
						
							|  |  |  |             foreach(Pos, Info in ranking) { | 
					
						
							| 
									
										
										
										
											2025-07-16 15:21:53 +08:00
										 |  |  |                 //补全默认公会 | 
					
						
							| 
									
										
										
										
											2025-07-05 22:29:38 +08:00
										 |  |  |                 if (!Info.rawin("guildname")) Info.guildname <- "无公会"; | 
					
						
							| 
									
										
										
										
											2025-07-16 15:21:53 +08:00
										 |  |  |                 //构造显示对象 | 
					
						
							| 
									
										
										
										
											2025-07-05 22:29:38 +08:00
										 |  |  |                 local Buf = TH_CombatRankC_Item(this, Pos, Info, 0); | 
					
						
							|  |  |  |                 CombatInfoList.append(Buf); | 
					
						
							|  |  |  |             } | 
					
						
							| 
									
										
										
										
											2025-07-16 15:21:53 +08:00
										 |  |  | 
 | 
					
						
							|  |  |  |             //构造我自己 | 
					
						
							|  |  |  |             if(!Jso.my.rawin("guildname")) Jso.my.guildname <- "无公会"; | 
					
						
							|  |  |  |             MyCombat = TH_CombatRankC_Item(this, 900, Jso.my, 0); | 
					
						
							|  |  |  |             MyCombat.Idx = Jso.on - 1; | 
					
						
							| 
									
										
										
										
											2025-07-05 22:29:38 +08:00
										 |  |  |         }.bindenv(this)); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         RegisterPack(20096006, function(Chunk) { | 
					
						
							|  |  |  |             local Jso = Json.Decode(Chunk); | 
					
						
							|  |  |  |             local ranking = Jso.ranking; | 
					
						
							|  |  |  |             GuildInfoList = []; | 
					
						
							|  |  |  |             foreach(Pos, Info in ranking) { | 
					
						
							|  |  |  |                 local Buf = TH_CombatRankC_Item(this, Pos, Info, 1); | 
					
						
							|  |  |  |                 GuildInfoList.append(Buf); | 
					
						
							|  |  |  |             } | 
					
						
							|  |  |  |         }.bindenv(this)); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         CheckPersonalCombatPower(); | 
					
						
							|  |  |  |         CheckGuildCombatPower(); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         UploadYourOwnCombatPower(); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-07-16 15:21:53 +08:00
										 |  |  |     } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-07-05 22:29:38 +08:00
										 |  |  |     function RegisterWidget() { | 
					
						
							| 
									
										
										
										
											2025-07-16 15:21:53 +08:00
										 |  |  |         //返回按钮 | 
					
						
							|  |  |  |         local ReturnButton = LenheartNewUI_BaseButton(506, 6, 11, 12, "interface/lenheartwindowcommon.img", 540); | 
					
						
							|  |  |  |         ReturnButton.OnClick = function() { | 
					
						
							|  |  |  |             LookingInfo = null; | 
					
						
							|  |  |  |         }.bindenv(this); | 
					
						
							|  |  |  |         Childrens.append(ReturnButton); | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-07-05 22:29:38 +08:00
										 |  |  |         //关闭按钮 | 
					
						
							|  |  |  |         local CloseButton = LenheartNewUI_BaseButton(521, 2, 11, 12, "interface/lenheartwindowcommon.img", 276); | 
					
						
							|  |  |  |         CloseButton.OnClick = function() { | 
					
						
							|  |  |  |             this.Visible = false; | 
					
						
							|  |  |  |         }.bindenv(this); | 
					
						
							|  |  |  |         Childrens.append(CloseButton); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         local FuncTabbar1 = LenheartNewUI_TabbarsText(4, 23, "巅峰战力"); | 
					
						
							|  |  |  |         FuncTabbar1.State = 1; | 
					
						
							|  |  |  |         FuncTabbar1.SetTextOffset(8, 4); | 
					
						
							|  |  |  |         AddChild(FuncTabbar1); | 
					
						
							|  |  |  |         FuncTabbar1.OnClick = function() { | 
					
						
							|  |  |  |             TitleButtonList[1].State = 0; | 
					
						
							|  |  |  |             TitleButtonList[0].State = 1; | 
					
						
							| 
									
										
										
										
											2025-07-16 15:21:53 +08:00
										 |  |  |             TitleButtonList[2].State = 0; | 
					
						
							| 
									
										
										
										
											2025-07-05 22:29:38 +08:00
										 |  |  |             Page = 0; | 
					
						
							| 
									
										
										
										
											2025-07-16 15:21:53 +08:00
										 |  |  |             LookingInfo = null; | 
					
						
							| 
									
										
										
										
											2025-07-05 22:29:38 +08:00
										 |  |  |             ScrollBar.Reset(); | 
					
						
							|  |  |  |         }.bindenv(this); | 
					
						
							|  |  |  |         TitleButtonList.append(FuncTabbar1); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         local FuncTabbar2 = LenheartNewUI_TabbarsText(65, 23, "公会战力"); | 
					
						
							|  |  |  |         FuncTabbar2.SetTextOffset(8, 4); | 
					
						
							|  |  |  |         AddChild(FuncTabbar2); | 
					
						
							|  |  |  |         FuncTabbar2.OnClick = function() { | 
					
						
							|  |  |  |             TitleButtonList[0].State = 0; | 
					
						
							|  |  |  |             TitleButtonList[1].State = 1; | 
					
						
							| 
									
										
										
										
											2025-07-16 15:21:53 +08:00
										 |  |  |             TitleButtonList[2].State = 0; | 
					
						
							| 
									
										
										
										
											2025-07-05 22:29:38 +08:00
										 |  |  |             Page = 1; | 
					
						
							| 
									
										
										
										
											2025-07-16 15:21:53 +08:00
										 |  |  |             LookingInfo = null; | 
					
						
							| 
									
										
										
										
											2025-07-05 22:29:38 +08:00
										 |  |  |             ScrollBar.Reset(); | 
					
						
							|  |  |  |         }.bindenv(this); | 
					
						
							|  |  |  |         TitleButtonList.append(FuncTabbar2); | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-07-16 15:21:53 +08:00
										 |  |  |         local FuncTabbar3 = LenheartNewUI_TabbarsText(476, 23, "我的战力"); | 
					
						
							|  |  |  |         FuncTabbar3.SetTextOffset(8, 4); | 
					
						
							|  |  |  |         AddChild(FuncTabbar3); | 
					
						
							|  |  |  |         FuncTabbar3.OnClick = function() { | 
					
						
							|  |  |  |             TitleButtonList[0].State = 0; | 
					
						
							|  |  |  |             TitleButtonList[1].State = 0; | 
					
						
							|  |  |  |             TitleButtonList[2].State = 1; | 
					
						
							|  |  |  |             Page = 0; | 
					
						
							|  |  |  |             LookingInfo = MyCombat; | 
					
						
							|  |  |  |             ScrollBar.Reset(); | 
					
						
							|  |  |  |         }.bindenv(this); | 
					
						
							|  |  |  |         TitleButtonList.append(FuncTabbar3); | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-07-05 22:29:38 +08:00
										 |  |  |         ScrollBar = Yosin_ScrollBar(530, 315, 198, 50); | 
					
						
							|  |  |  |         ScrollBar.SetParent(this); | 
					
						
							|  |  |  |         ScrollBar.SetStep(20 / 100.0); | 
					
						
							|  |  |  |         ScrollBar.SetOnChange(function(Rate) { | 
					
						
							|  |  |  |             ScrollBarRate = Rate; | 
					
						
							|  |  |  |         }.bindenv(this)); | 
					
						
							|  |  |  |     } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     //绘制主界面 | 
					
						
							|  |  |  |     function DrawMain(obj) { | 
					
						
							|  |  |  |         Img["main"].DrawPng(0, X, Y); | 
					
						
							|  |  |  |         Img["main"].DrawPng(0, X, Y); | 
					
						
							|  |  |  |         Img["main"].DrawPng(0, X, Y); | 
					
						
							|  |  |  |         Img["information_button_cn"].DrawPng(136, X + 5, Y + 295); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         if (Page == 0) { | 
					
						
							|  |  |  |             //职业 | 
					
						
							|  |  |  |             L_sq_DrawCode("职业", X + 58, Y + 299, sq_RGBA(179, 169, 135, 255), 0, 1); | 
					
						
							|  |  |  |             //角色名 | 
					
						
							|  |  |  |             L_sq_DrawCode("角色名", X + 152, Y + 299, sq_RGBA(179, 169, 135, 255), 0, 1); | 
					
						
							|  |  |  |             //公会名 | 
					
						
							|  |  |  |             L_sq_DrawCode("战斗力", X + 280, Y + 299, sq_RGBA(179, 169, 135, 255), 0, 1); | 
					
						
							|  |  |  |             //战斗力 | 
					
						
							|  |  |  |             L_sq_DrawCode(" 奖励", X + 438, Y + 299, sq_RGBA(179, 169, 135, 255), 0, 1); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |             setClip(X, Y + 316, X + 528, Y + 316 + 196); | 
					
						
							|  |  |  |             if (CombatInfoList) { | 
					
						
							|  |  |  |                 foreach(Pos, Object in CombatInfoList) { | 
					
						
							|  |  |  |                     Object.Show(X, Y + 316 + (Pos * 40) - (ScrollBarRate * ScrollBarValue).tointeger()); | 
					
						
							|  |  |  |                 } | 
					
						
							|  |  |  |             } | 
					
						
							|  |  |  |             releaseClip(); //裁切结束 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |             //绘制前三名 | 
					
						
							| 
									
										
										
										
											2025-07-16 15:21:53 +08:00
										 |  |  |             if (CombatInfoList) { | 
					
						
							| 
									
										
										
										
											2025-07-05 22:29:38 +08:00
										 |  |  |                 for (local i = 0; i< 3; i++) { | 
					
						
							| 
									
										
										
										
											2025-07-16 15:21:53 +08:00
										 |  |  |                     //如果不足3个 | 
					
						
							|  |  |  |                     if (i >= CombatInfoList.len()) break; | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-07-05 22:29:38 +08:00
										 |  |  |                     local OffsetX = 270; | 
					
						
							|  |  |  |                     local OffsetY = 268; | 
					
						
							|  |  |  |                     if (i == 1) { | 
					
						
							|  |  |  |                         OffsetX = 130; | 
					
						
							|  |  |  |                         OffsetY = 268; | 
					
						
							|  |  |  |                     } | 
					
						
							|  |  |  |                     if (i == 2) { | 
					
						
							|  |  |  |                         OffsetX = 410; | 
					
						
							|  |  |  |                         OffsetY = 268; | 
					
						
							|  |  |  |                     } | 
					
						
							| 
									
										
										
										
											2025-07-16 15:21:53 +08:00
										 |  |  |                     if(!LookingInfo || LookingInfo.Idx != i)CombatInfoList[i].ShowCharacter(X + OffsetX, Y + OffsetY); | 
					
						
							| 
									
										
										
										
											2025-07-05 22:29:38 +08:00
										 |  |  |                 } | 
					
						
							|  |  |  |             } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |             //如果有查看者 | 
					
						
							|  |  |  |             if (LookingInfo) { | 
					
						
							|  |  |  |                 Img["main"].DrawPng(7, X + 2, Y + 44); | 
					
						
							|  |  |  |                 Img["information_button_cn"].DrawPng(136, X + 5, Y + 295); | 
					
						
							|  |  |  |                 T_DrawDynamicAni(obj, "ui/selectcharacter/animation/selectcharactereffect.ani", X + 15, Y + 50, "桃花战斗力角色背景光环"); | 
					
						
							|  |  |  |                 Img["main"].DrawPng(8, X + 30, Y + 160); | 
					
						
							| 
									
										
										
										
											2025-07-16 15:21:53 +08:00
										 |  |  |                 // LookingInfo.CharacShow.Draw(X + 80, Y + 248); | 
					
						
							|  |  |  |                 LookingInfo.ShowCharacter(X + 80, Y + 248); | 
					
						
							| 
									
										
										
										
											2025-07-05 22:29:38 +08:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-07-16 15:21:53 +08:00
										 |  |  |                 local YPosBuffer = Y - 5; | 
					
						
							|  |  |  |                 //排名 | 
					
						
							|  |  |  |                 L_sq_DrawCode("排名: " + (LookingInfo.Idx + 1), X + 150, YPosBuffer + 60, sq_RGBA(230, 200, 155, 255), 0, 1); | 
					
						
							| 
									
										
										
										
											2025-07-05 22:29:38 +08:00
										 |  |  |                 //角色名 | 
					
						
							| 
									
										
										
										
											2025-07-16 15:21:53 +08:00
										 |  |  |                 L_sq_DrawCode("角色名: " + LookingInfo.Info.name, X + 150, YPosBuffer + 78, sq_RGBA(230, 200, 155, 255), 0, 1); | 
					
						
							| 
									
										
										
										
											2025-07-05 22:29:38 +08:00
										 |  |  |                 //职业 | 
					
						
							| 
									
										
										
										
											2025-07-16 15:21:53 +08:00
										 |  |  |                 L_sq_DrawCode("角色职业: " + LookingInfo.Info.jobname, X + 150, YPosBuffer+ 96, sq_RGBA(230, 200, 155, 255), 0, 1); | 
					
						
							| 
									
										
										
										
											2025-07-05 22:29:38 +08:00
										 |  |  |                 //等级 | 
					
						
							| 
									
										
										
										
											2025-07-16 15:21:53 +08:00
										 |  |  |                 L_sq_DrawCode("角色等级: " + LookingInfo.Info.level, X + 150, YPosBuffer + 114, sq_RGBA(230, 200, 155, 255), 0, 1); | 
					
						
							| 
									
										
										
										
											2025-07-05 22:29:38 +08:00
										 |  |  |                 //公会名 | 
					
						
							| 
									
										
										
										
											2025-07-16 15:21:53 +08:00
										 |  |  |                 L_sq_DrawCode("所属公会: " + LookingInfo.Info.guildname, X + 150, YPosBuffer + 132, sq_RGBA(230, 200, 155, 255), 0, 1); | 
					
						
							| 
									
										
										
										
											2025-07-05 22:29:38 +08:00
										 |  |  |                 //是否在线 | 
					
						
							| 
									
										
										
										
											2025-07-16 15:21:53 +08:00
										 |  |  |                 L_sq_DrawCode("当前状态: " + (LookingInfo.Info.isOnline ? "在线" : "离线"), X + 150, YPosBuffer + 150, sq_RGBA(230, 200, 155, 255), 0, 1); | 
					
						
							| 
									
										
										
										
											2025-07-05 22:29:38 +08:00
										 |  |  | 
 | 
					
						
							|  |  |  |                 //战斗力 | 
					
						
							| 
									
										
										
										
											2025-07-16 15:21:53 +08:00
										 |  |  |                 L_sq_DrawCode("战斗力: " + LookingInfo.Info.zdlS, X + 150, YPosBuffer+ 168, sq_RGBA(230, 200, 155, 255), 0, 1); | 
					
						
							|  |  |  |                 L_sq_DrawCode("-- 基础战斗力: " + LookingInfo.Info.jczdlS, X + 150, YPosBuffer + 186, sq_RGBA(179, 169, 135, 255), 0, 1); | 
					
						
							|  |  |  |                 L_sq_DrawCode("    四维: " + LookingInfo.Info.swzldS, X + 150, YPosBuffer + 204, sq_RGBA(179, 169, 135, 255), 0, 1); | 
					
						
							|  |  |  |                 L_sq_DrawCode("    三攻: " + LookingInfo.Info.sgzldS, X + 150, YPosBuffer + 222, sq_RGBA(179, 169, 135, 255), 0, 1); | 
					
						
							|  |  |  |                 L_sq_DrawCode("    属强: " + LookingInfo.Info.sqzldS, X + 150, YPosBuffer + 240, sq_RGBA(179, 169, 135, 255), 0, 1); | 
					
						
							|  |  |  |                 L_sq_DrawCode("    其他: " + LookingInfo.Info.qtzldS, X + 150, YPosBuffer + 258, sq_RGBA(179, 169, 135, 255), 0, 1); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |                 L_sq_DrawCode("-- 魂石战斗力: " + LookingInfo.Info.fstS, X + 150, YPosBuffer + 276, sq_RGBA(179, 169, 135, 255), 0, 1); | 
					
						
							| 
									
										
										
										
											2025-07-05 22:29:38 +08:00
										 |  |  |             } | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         if (Page == 1) { | 
					
						
							|  |  |  |             //职业 | 
					
						
							|  |  |  |             L_sq_DrawCode("会长", X + 58, Y + 299, sq_RGBA(179, 169, 135, 255), 0, 1); | 
					
						
							|  |  |  |             //角色名 | 
					
						
							|  |  |  |             L_sq_DrawCode("公会名称", X + 152, Y + 299, sq_RGBA(179, 169, 135, 255), 0, 1); | 
					
						
							|  |  |  |             //公会名 | 
					
						
							|  |  |  |             L_sq_DrawCode("战斗力", X + 280, Y + 299, sq_RGBA(179, 169, 135, 255), 0, 1); | 
					
						
							|  |  |  |             //战斗力 | 
					
						
							|  |  |  |             L_sq_DrawCode(" 奖励", X + 438, Y + 299, sq_RGBA(179, 169, 135, 255), 0, 1); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |             setClip(X, Y + 316, X + 528, Y + 316 + 196); | 
					
						
							|  |  |  |             if (GuildInfoList) { | 
					
						
							|  |  |  |                 foreach(Pos, Object in GuildInfoList) { | 
					
						
							|  |  |  |                     Object.Show(X, Y + 316 + (Pos * 40) - (ScrollBarRate * ScrollBarValue).tointeger()); | 
					
						
							|  |  |  |                 } | 
					
						
							|  |  |  |             } | 
					
						
							|  |  |  |             releaseClip(); //裁切结束 | 
					
						
							| 
									
										
										
										
											2025-07-16 15:21:53 +08:00
										 |  |  | 
 | 
					
						
							|  |  |  |             if (GuildInfoList) { | 
					
						
							|  |  |  |                 for (local i = 0; i< 3; i++) { | 
					
						
							|  |  |  |                     if (GuildInfoList.len() <= i) break; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |                     local OffsetX = 270; | 
					
						
							|  |  |  |                     local OffsetY = 268; | 
					
						
							|  |  |  |                     if (i == 1) { | 
					
						
							|  |  |  |                         OffsetX = 130; | 
					
						
							|  |  |  |                         OffsetY = 268; | 
					
						
							|  |  |  |                     } | 
					
						
							|  |  |  |                     if (i == 2) { | 
					
						
							|  |  |  |                         OffsetX = 410; | 
					
						
							|  |  |  |                         OffsetY = 268; | 
					
						
							|  |  |  |                     } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |                     local Object = GuildInfoList[i]; | 
					
						
							|  |  |  |                     local GuildId = Object.Info.guildId; | 
					
						
							|  |  |  |                     if (GuildFlagData.rawin(GuildId)) { | 
					
						
							|  |  |  |                         local Info = GuildFlagData[GuildId]; | 
					
						
							|  |  |  |                         if (!GuildFlagImgMap.rawin(Info[0])) { | 
					
						
							|  |  |  |                             GuildFlagImgMap[Info[0]] <- Rindro_Image(Info[0]); | 
					
						
							|  |  |  |                         } | 
					
						
							|  |  |  |                         GuildFlagImgMap[Info[0]].DrawPng(0, X + OffsetX, Y + OffsetY); | 
					
						
							|  |  |  |                     } else { | 
					
						
							|  |  |  |                         Img["main"].DrawPng(3, X + OffsetX, Y + OffsetY); | 
					
						
							|  |  |  |                     } | 
					
						
							|  |  |  |                 } | 
					
						
							|  |  |  |             } | 
					
						
							| 
									
										
										
										
											2025-07-05 22:29:38 +08:00
										 |  |  |         } | 
					
						
							|  |  |  |     } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     function Show(obj) { | 
					
						
							|  |  |  |         DrawMain(obj); | 
					
						
							|  |  |  |         LenheartNewUI_Windows.Show(obj); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     function TopShow(obj) { | 
					
						
							|  |  |  |         LenheartNewUI_Windows.TopShow(obj); | 
					
						
							|  |  |  |         local MousePos_X = IMouse.GetXPos(); | 
					
						
							|  |  |  |         local MousePos_Y = IMouse.GetYPos(); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         if (CombatInfoList && Page == 0) { | 
					
						
							|  |  |  |             setClip(X, Y + 316, X + 528, Y + 316 + 196); | 
					
						
							|  |  |  |             foreach(Pos, Object in CombatInfoList) { | 
					
						
							|  |  |  |                 if (sq_IsIntersectRect(MousePos_X, MousePos_Y, 1, 1, X, Y + 316 + (Pos * 40) - (ScrollBarRate * ScrollBarValue).tointeger(), 526, 39)) { | 
					
						
							|  |  |  |                     Object.HoverShow(X, Y + 316 + (Pos * 40) - (ScrollBarRate * ScrollBarValue).tointeger()); | 
					
						
							|  |  |  |                 } | 
					
						
							|  |  |  |             } | 
					
						
							|  |  |  |             releaseClip(); //裁切结束 | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     function DrawItemBase(X, Ypos, Id, Count) { | 
					
						
							|  |  |  |         if ((Ypos + 28) > this.Y + 316 && Ypos< this.Y + 316 + 196) { | 
					
						
							|  |  |  |             LenheartNewUI_Windows.DrawItemBase(X, Ypos, Id, Count); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     //鼠标滚轮事件回调 | 
					
						
							|  |  |  |     function OnMouseWheel(Flag, MousePos_X, MousePos_Y) { | 
					
						
							|  |  |  |         LenheartNewUI_BaseWindow.OnMouseWheel(Flag, MousePos_X, MousePos_Y); | 
					
						
							|  |  |  |         //左侧的滚动条判定 | 
					
						
							|  |  |  |         if (MousePos_X > X && MousePos_X<(X + 528) && MousePos_Y > (Y + 316) && MousePos_Y<(Y + 316 + 196)) { | 
					
						
							|  |  |  |             if (Flag) ScrollBar.DoStep(-1); | 
					
						
							|  |  |  |             if (!Flag) ScrollBar.DoStep(1); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     //鼠标左键按下回调 | 
					
						
							|  |  |  |     function OnMouseLbDown(MousePos_X, MousePos_Y) { | 
					
						
							|  |  |  |         LenheartNewUI_BaseWindow.OnMouseLbDown(MousePos_X, MousePos_Y); | 
					
						
							|  |  |  |         if (CombatInfoList) { | 
					
						
							|  |  |  |             foreach(Pos, Object in CombatInfoList) { | 
					
						
							|  |  |  |                 if (sq_IsIntersectRect(MousePos_X, MousePos_Y, 1, 1, X, Y + 316 + (Pos * 40) - (ScrollBarRate * ScrollBarValue).tointeger(), 526, 39)) { | 
					
						
							|  |  |  |                     Object.OnMouseLbDown(X, Y + 316 + (Pos * 40) - (ScrollBarRate * ScrollBarValue).tointeger()); | 
					
						
							|  |  |  |                 } | 
					
						
							|  |  |  |             } | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     //逻辑入口 | 
					
						
							|  |  |  |     function Proc(obj) { | 
					
						
							|  |  |  |         LenheartNewUI_Windows.SyncPos(X, Y); | 
					
						
							|  |  |  |     } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     //上传自身战斗力 | 
					
						
							|  |  |  |     //时装 帽子 头部 脸 上衣 下装 鞋子  胸部  腰部  皮肤 光环 | 
					
						
							| 
									
										
										
										
											2025-07-16 15:21:53 +08:00
										 |  |  |     // AvatarInfoIdx = [0x3038, 0x3010, 0x3014, 0x3018, 0x301c, 0x3020, 0x3024, 0x3028, 0x302c, 0x3034]; | 
					
						
							| 
									
										
										
										
											2025-07-05 22:29:38 +08:00
										 |  |  |     AvatarInfoIdx = [0x3038, 0x3010, 0x3014, 0x3018, 0x301c, 0x3020, 0x3024, 0x3028, 0x302c, 0x3030, 0x3034]; | 
					
						
							|  |  |  |     creInfoIdx = [0x3068, 0x306C, 0x3070, 0x3074]; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     function UploadYourOwnCombatPower() { | 
					
						
							| 
									
										
										
										
											2025-07-16 15:21:53 +08:00
										 |  |  |         if (sq_GetCurrentModuleType() != 1) return; | 
					
						
							| 
									
										
										
										
											2025-07-05 22:29:38 +08:00
										 |  |  |         local obj = sq_GetMyMasterCharacter(); | 
					
						
							|  |  |  |         if (!obj) return; | 
					
						
							|  |  |  |         local C_Object = L_sq_RA(0x1ab7cdc); | 
					
						
							|  |  |  |         //记录时装 | 
					
						
							|  |  |  |         local avataritemsbuf = []; | 
					
						
							|  |  |  |         foreach(offset in AvatarInfoIdx) { | 
					
						
							|  |  |  |             local AvatarEquiAddress = L_sq_RA(C_Object + offset); | 
					
						
							|  |  |  |             if (AvatarEquiAddress >= 0x400000) { | 
					
						
							|  |  |  |                 local Ab = []; | 
					
						
							|  |  |  |                 local NormalIndex = L_sq_RA(AvatarEquiAddress + 0x1c); | 
					
						
							|  |  |  |                 local ExIndex = L_sq_RA(AvatarEquiAddress + 0x13E0); | 
					
						
							|  |  |  |                 Ab.append(NormalIndex); | 
					
						
							|  |  |  |                 Ab.append(ExIndex); | 
					
						
							| 
									
										
										
										
											2025-07-16 15:21:53 +08:00
										 |  |  |                 //皮肤默认给默认皮肤 这里先注释 | 
					
						
							|  |  |  |                 // if (offset == 0x3030) { | 
					
						
							|  |  |  |                 //     if (sq_getJob(obj) == 0) Ab = [42200, 0]; | 
					
						
							|  |  |  |                 //     else if (sq_getJob(obj) == 1) Ab = [46200, 0]; | 
					
						
							|  |  |  |                 //     else if (sq_getJob(obj) == 2) Ab = [50200, 0]; | 
					
						
							|  |  |  |                 //     else if (sq_getJob(obj) == 3) Ab = [54200, 0]; | 
					
						
							|  |  |  |                 //     else if (sq_getJob(obj) == 4) Ab = [58200, 0]; | 
					
						
							|  |  |  |                 //     else if (sq_getJob(obj) == 5) Ab = [1680000, 0]; | 
					
						
							|  |  |  |                 //     else if (sq_getJob(obj) == 6) Ab = [1800000, 0]; | 
					
						
							|  |  |  |                 //     else if (sq_getJob(obj) == 7) Ab = [29205, 0]; | 
					
						
							|  |  |  |                 //     else if (sq_getJob(obj) == 8) Ab = [2150000, 0]; | 
					
						
							|  |  |  |                 //     else if (sq_getJob(obj) == 9) Ab = [42200, 0]; | 
					
						
							|  |  |  |                 //     else if (sq_getJob(obj) == 10) Ab = [2190081, 0]; | 
					
						
							|  |  |  |                 // } | 
					
						
							| 
									
										
										
										
											2025-07-05 22:29:38 +08:00
										 |  |  |                 avataritemsbuf.append(Ab); | 
					
						
							|  |  |  |             } else { | 
					
						
							|  |  |  |                 local Ab = []; | 
					
						
							|  |  |  |                 Ab.append(0); | 
					
						
							|  |  |  |                 Ab.append(0); | 
					
						
							|  |  |  |                 avataritemsbuf.append(Ab); | 
					
						
							|  |  |  |             } | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |         //记录装备 | 
					
						
							|  |  |  |         local equiitemsbuf = []; | 
					
						
							|  |  |  |         local equiupbuf = []; | 
					
						
							|  |  |  |         for (local i = 1; i< 13; ++i) { | 
					
						
							|  |  |  |             //编号 | 
					
						
							|  |  |  |             local Index = L_sq_GetCharacterAttribute(0x1c, i); | 
					
						
							|  |  |  |             //强化 | 
					
						
							|  |  |  |             local Upvalue = L_sq_GetCharacterAttribute(0x1054, i) | 
					
						
							|  |  |  |             //是否有增幅属性 | 
					
						
							|  |  |  |             local IsZf = L_sq_GetCharacterAttribute(0x10A8, i) | 
					
						
							|  |  |  |             //锻造 | 
					
						
							|  |  |  |             local DsUpvalue = L_sq_GetCharacterAttribute(0x10E8, i); | 
					
						
							|  |  |  |             //附魔卡片 | 
					
						
							|  |  |  |             local Enchanting = L_sq_GetCharacterAttribute(0x1084, i); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |             equiitemsbuf.append(Index); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |             local Info = []; | 
					
						
							|  |  |  |             if (IsZf) { | 
					
						
							|  |  |  |                 Info.append(0); | 
					
						
							|  |  |  |                 Info.append(Upvalue); | 
					
						
							|  |  |  |             } else { | 
					
						
							|  |  |  |                 Info.append(Upvalue); | 
					
						
							|  |  |  |                 Info.append(0); | 
					
						
							|  |  |  |             } | 
					
						
							|  |  |  |             Info.append(DsUpvalue); | 
					
						
							|  |  |  |             Info.append(Enchanting); | 
					
						
							|  |  |  |             equiupbuf.append(Info); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |         //记录宠物 | 
					
						
							|  |  |  |         local creitemsbuf = []; | 
					
						
							|  |  |  |         foreach(offset in creInfoIdx) { | 
					
						
							|  |  |  |             local creEquiAddress = L_sq_RA(C_Object + offset); | 
					
						
							|  |  |  |             if (creEquiAddress >= 0x400000) { | 
					
						
							|  |  |  |                 local NormalIndex = L_sq_RA(creEquiAddress + 0x1c); | 
					
						
							|  |  |  |                 creitemsbuf.append(NormalIndex); | 
					
						
							|  |  |  |             } else { | 
					
						
							|  |  |  |                 creitemsbuf.append(0); | 
					
						
							|  |  |  |             } | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         //记录四维三攻属强 | 
					
						
							|  |  |  |         local Attributes = 0; | 
					
						
							|  |  |  |         Attributes += L_sq_GetCharacterAttribute(0x2364); | 
					
						
							|  |  |  |         Attributes += L_sq_GetCharacterAttribute(0x2394); | 
					
						
							|  |  |  |         Attributes += L_sq_GetCharacterAttribute(0x237c); | 
					
						
							|  |  |  |         Attributes += L_sq_GetCharacterAttribute(0x23ac); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         local AttackValue = 0; | 
					
						
							|  |  |  |         AttackValue += L_sq_GetCharacterAttribute(0x1E54); | 
					
						
							|  |  |  |         AttackValue += L_sq_GetCharacterAttribute(0x1E84); | 
					
						
							|  |  |  |         AttackValue += L_sq_GetCharacterAttribute(0x22C8); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         local Enhancement = 0; //火冰光暗 | 
					
						
							|  |  |  |         Enhancement += L_sq_GetCharacterAttribute(0x1b54); | 
					
						
							|  |  |  |         Enhancement += L_sq_GetCharacterAttribute(0x1b60); | 
					
						
							|  |  |  |         Enhancement += L_sq_GetCharacterAttribute(0x1b78); | 
					
						
							|  |  |  |         Enhancement += L_sq_GetCharacterAttribute(0x1b6c); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         local T = { | 
					
						
							|  |  |  |             op = 20096001, | 
					
						
							|  |  |  |             ava = avataritemsbuf, | 
					
						
							|  |  |  |             equ = equiitemsbuf, | 
					
						
							|  |  |  |             sw = Attributes, | 
					
						
							|  |  |  |             atk = AttackValue, | 
					
						
							|  |  |  |             ele = Enhancement, | 
					
						
							|  |  |  |             cre = creitemsbuf, | 
					
						
							|  |  |  |             job = sq_getJob(obj), | 
					
						
							|  |  |  |             exjob = sq_getGrowType(obj), | 
					
						
							|  |  |  |             name = L_Sq_GetObjectName(obj), | 
					
						
							|  |  |  |             equUp = equiupbuf, | 
					
						
							|  |  |  |             fst = 0, | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |         SendPackEx(T); | 
					
						
							|  |  |  |     } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     function OpenCallBack() { | 
					
						
							|  |  |  |         UploadYourOwnCombatPower(); | 
					
						
							|  |  |  |         CheckPersonalCombatPower(); | 
					
						
							|  |  |  |         CheckGuildCombatPower(); | 
					
						
							|  |  |  |         LookingInfo = null; | 
					
						
							|  |  |  |         this.Visible = true; | 
					
						
							|  |  |  |     } | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | L_Windows_List <- []; | 
					
						
							|  |  |  | getroottable().rawdelete("LenheartPluginsInitFlag"); | 
					
						
							|  |  |  | getroottable().rawdelete("EventList_Obj") | 
					
						
							|  |  |  | getroottable().rawdelete("TH_CombatRank_Obj"); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | function Lenheart_TH_CombatRank_Fun(obj) { | 
					
						
							|  |  |  |     local RootTab = getroottable(); | 
					
						
							|  |  |  |     if (!RootTab.rawin("TH_CombatRank_Obj")) { | 
					
						
							|  |  |  |         RootTab.rawset("TH_CombatRank_Obj", true); | 
					
						
							|  |  |  |         local Win = LenheartNewUI_CreateWindow(TH_CombatRankC, "桃花定制战力榜窗口", ((getroottable().Rindro_Scr_Width - 542) / 2).tointeger(), 28, 542, 515, 28); | 
					
						
							|  |  |  |         EventList_Obj.AddEvent("全服战力榜", 694, Win, "interface2/hud/information_button/information_button_cn.img"); | 
					
						
							|  |  |  |     } | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | getroottable()["LenheartFuncTab"].rawset("TH_CombatRankFuncN", Lenheart_TH_CombatRank_Fun); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | class TH_CombatRankC_Item { | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     //Img | 
					
						
							|  |  |  |     Img = null; | 
					
						
							|  |  |  |     //编号 | 
					
						
							|  |  |  |     Idx = null; | 
					
						
							|  |  |  |     //父对象 | 
					
						
							|  |  |  |     Parent = null; | 
					
						
							|  |  |  |     //显示角色 | 
					
						
							|  |  |  |     CharacShow = null; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     //信息体 | 
					
						
							|  |  |  |     Info = null; | 
					
						
							|  |  |  |     //类型 | 
					
						
							|  |  |  |     Type = 0; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     constructor(Window, Idx, Info, Type) { | 
					
						
							|  |  |  |         Parent = Window; | 
					
						
							|  |  |  |         Img = Window.Img["main"]; | 
					
						
							|  |  |  |         this.Idx = Idx; | 
					
						
							|  |  |  |         this.Info = Info; | 
					
						
							|  |  |  |         this.Type = Type; | 
					
						
							|  |  |  |     } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-07-16 15:21:53 +08:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-07-05 22:29:38 +08:00
										 |  |  |     function Show(X, Y) { | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         if (Idx< 3) { | 
					
						
							|  |  |  |             Img.DrawPng(4 + Idx, X + 3, Y); | 
					
						
							|  |  |  |         } else { | 
					
						
							|  |  |  |             Img.DrawPng(1, X + 3, Y); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         local Ranking = (Idx + 1).tostring(); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         local JobName; | 
					
						
							|  |  |  |         local CharacName; | 
					
						
							|  |  |  |         local Combat; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         if (this.Type == 0) { | 
					
						
							|  |  |  |             JobName = Info.jobname; | 
					
						
							|  |  |  |             CharacName = Info.name; | 
					
						
							|  |  |  |             Combat = Info.zdlS; | 
					
						
							|  |  |  |         } else if (this.Type == 1) { | 
					
						
							|  |  |  |             JobName = Info.guildMaster; | 
					
						
							|  |  |  |             CharacName = Info.guildName; | 
					
						
							|  |  |  |             Combat = Info.zdlS; | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         //绘制排名 | 
					
						
							|  |  |  |         L_sq_DrawCode(Ranking, X + 17 - LenheartTextClass.GetStringLength(Ranking) / 2, Y + 14, sq_RGBA(230, 200, 155, 255), 0, 1); | 
					
						
							|  |  |  |         //绘制职业 | 
					
						
							|  |  |  |         L_sq_DrawCode(JobName, X + 70 - LenheartTextClass.GetStringLength(JobName) / 2, Y + 14, sq_RGBA(230, 200, 155, 255), 0, 1); | 
					
						
							|  |  |  |         //绘制角色名 | 
					
						
							|  |  |  |         L_sq_DrawCode(CharacName, X + 170 - LenheartTextClass.GetStringLength(CharacName) / 2, Y + 14, sq_RGBA(230, 200, 155, 255), 0, 1); | 
					
						
							|  |  |  |         //绘制战斗力 | 
					
						
							|  |  |  |         L_sq_DrawCode(Combat, X + 298 - LenheartTextClass.GetStringLength(Combat) / 2, Y + 14, sq_RGBA(230, 200, 155, 255), 0, 1); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         //绘制奖励 | 
					
						
							|  |  |  |         if (this.Type == 0) { | 
					
						
							|  |  |  |             if (Parent.PersonReward) { | 
					
						
							|  |  |  |                 local Reward = Parent.PersonReward[Idx]; | 
					
						
							|  |  |  |                 foreach(Pos, ItemInfo in Reward) { | 
					
						
							|  |  |  |                     Parent.DrawItemBase(X + 377 + (Pos * 30), Y + 6, ItemInfo[0], ItemInfo[1]); | 
					
						
							|  |  |  |                 } | 
					
						
							|  |  |  |             } | 
					
						
							|  |  |  |         } else if (this.Type == 1) { | 
					
						
							|  |  |  |             if (Parent.PersonReward) { | 
					
						
							|  |  |  |                 local Reward = Parent.PersonReward[Idx]; | 
					
						
							|  |  |  |                 foreach(Pos, ItemInfo in Reward) { | 
					
						
							|  |  |  |                     Parent.DrawItemBase(X + 377 + (Pos * 30), Y + 6, ItemInfo[0], ItemInfo[1]); | 
					
						
							|  |  |  |                 } | 
					
						
							|  |  |  |             } | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     function HoverShow(X, Y) { | 
					
						
							|  |  |  |         if (Y <= (Parent.Y + 316 + 196)) { | 
					
						
							|  |  |  |             Img.DrawPng(2, X + 3, Y); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-07-16 15:21:53 +08:00
										 |  |  |     function ShowCharacter(X, Y) { | 
					
						
							|  |  |  |         //没有正在查看的对象的时候才绘制人物 | 
					
						
							|  |  |  |         // if (!Parent.LookingInfo) { | 
					
						
							|  |  |  |             if(!CharacShow)StructureCharacAni(); | 
					
						
							|  |  |  |             CharacShow.Draw(X, Y); | 
					
						
							|  |  |  |         // } | 
					
						
							|  |  |  |     } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     function StructureCharacAni() { | 
					
						
							|  |  |  |         local AvaList = []; | 
					
						
							|  |  |  |         foreach(Ava in Info.avaS) { | 
					
						
							|  |  |  |             if (Ava != 0) AvaList.append(Ava); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |         CharacShow = Rindro_Draw_Character(Info.job.tointeger(), AvaList, "rest.ani", null); | 
					
						
							|  |  |  |     } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-07-05 22:29:38 +08:00
										 |  |  |     function OnMouseLbDown(X, Y) { | 
					
						
							|  |  |  |         if (this.Type == 0) { | 
					
						
							|  |  |  |             if (Y <= (Parent.Y + 316 + 196) && Y >= (Parent.Y + 316)) { | 
					
						
							|  |  |  |                 Parent.LookingInfo = this; | 
					
						
							|  |  |  |             } | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     } | 
					
						
							| 
									
										
										
										
											2025-07-16 15:21:53 +08:00
										 |  |  | } |