誉名录
This commit is contained in:
@@ -89,12 +89,13 @@ function L_drawMainCustomUI_All() {
|
||||
|
||||
// Rindro_BaseToolClass.DrawNineBox(0, 0, 200, 200, "interface/lenheartwindowcommon.img", 213);
|
||||
|
||||
// print(sq_GetObjectId(obj))
|
||||
// print(Clock());
|
||||
// Rindro_Image_GlobalMap["interface/newstyle/windows/popup/popup.img"].DrawExPng(138, 205, 0, 0, sq_RGBA(255, 255, 255, 250), 13.0, 13.0);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
// for (local i = 0; i < 42; i++) {
|
||||
// local Value = MemoryTool.DecodeMemoryData(0x394e8c00+0x1050 + (i * 4));
|
||||
// if(Value == 151)print("Value :" + i * 4);
|
||||
@@ -139,6 +140,39 @@ function L_drawMainCustomUI_All() {
|
||||
|
||||
|
||||
|
||||
// function drawAppend_VirtualCharacter(a, b, c, d, e, f) {
|
||||
// local obj = sq_GetMyMasterCharacter();
|
||||
// // print(Clock());
|
||||
// // Sout("a: %L",a);
|
||||
// // Sout("b: %L",b);
|
||||
// // Sout("c: %L",c);
|
||||
// // Sout("d: %L",d);
|
||||
// // Sout("e: %L",e);
|
||||
// // Sout("f: %L",f);
|
||||
// // print(a);
|
||||
// // print(b);
|
||||
// // print(c);
|
||||
// // print(d);
|
||||
// // print(e);
|
||||
// // print(f);
|
||||
|
||||
// // print(c);
|
||||
// // print(d);
|
||||
// // L_sq_DrawImg("newtitle/nangua.img", 0, c - 132, d - 360);
|
||||
// // Rindro_BaseToolClass.DrawAniEx(c - 140, d, "etc/rindro/newtitle/ani/chn_2021_chivarly_system3/chivalry_s3_bottom_00.ani");
|
||||
// Rindro_BaseToolClass.DrawAniEx(c, d, "etc/rindro/newtitle/ani/jolin/180607_title_jolin_tsai_normal.ani");
|
||||
// // Rindro_BaseToolClass.DrawAniEx(c, d, "etc/rindro/newtitle/ani/jolin/180607_title_jolin_tsai_dodge.ani");
|
||||
// // if (!e) {
|
||||
// // BasicsDrawTool.T_DrawDynamicAni(obj, "Character/Common/Animation/Aura/chn_2021_chivarly_system3/Chivalry_S3_Bottom_00.ani", c, d, "Server_AuctionSystemTimeP22");
|
||||
// // BasicsDrawTool.T_DrawDynamicAni(obj, "Character/Common/Animation/Aura/chn_2021_chivarly_system3_2/Chivalry_S3_Text.ani", c, d, "Server_AuctionSystemTimeP");
|
||||
// // BasicsDrawTool.T_DrawDynamicAni(obj, "Character/Common/Animation/Aura/chn_2021_chivarly_system3/Chivalry_S3_Text.ani", c, d - 50, "Server_AuctionSystemTimeP2");
|
||||
// // BasicsDrawTool.T_DrawDynamicAni(obj, "Character/Common/Animation/Aura/chn_2021_chivarly_system3_3/Chivalry_S3_Text.ani", c, d - 100, "Server_AuctionSystemTimeP3");
|
||||
// // }
|
||||
// }
|
||||
|
||||
|
||||
|
||||
|
||||
// local asos = sq_CreateAICharacter(900);
|
||||
|
||||
|
||||
|
||||
@@ -1094,7 +1094,8 @@ class LenheartNewUI_BaseInput extends LenheartNewUI_CommonUi {
|
||||
}
|
||||
|
||||
function SetStr(Value) {
|
||||
L_sq_SetInputBoxStr(InputController, Value);
|
||||
str = Value;
|
||||
// L_sq_SetInputBoxStr(InputController, Value);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -188,7 +188,29 @@ class Rindro_BaseToolClass {
|
||||
return ani;
|
||||
}
|
||||
|
||||
|
||||
//高级绘制文字(带换行)
|
||||
function L_sq_DrawCode_ExRN(str, x, y, rgba, mb, jc) {
|
||||
local strarr = [];
|
||||
if (str.find("\\r\\n") == null) {
|
||||
L_sq_DrawCode(str, x, y, rgba, mb, jc);
|
||||
} else {
|
||||
local Bpos = 0;
|
||||
while (true) {
|
||||
local Npos = str.find("\\r\\n", Bpos);
|
||||
if (!Npos) {
|
||||
local strbuff = str.slice(Bpos, str.len());
|
||||
strarr.append(strbuff);
|
||||
break;
|
||||
}
|
||||
local strbuff = str.slice(Bpos, Npos);
|
||||
strarr.append(strbuff);
|
||||
Bpos = Npos + 4;
|
||||
}
|
||||
for (local z = 0; z< strarr.len(); z++) {
|
||||
L_sq_DrawCode(strarr[z], x, y + (z * 14), rgba, mb, jc);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//初始化根表成员
|
||||
function InitClass(Name) {
|
||||
@@ -294,21 +316,28 @@ class Rindro_BaseToolClass {
|
||||
function GetRarityColor(rarity) {
|
||||
switch (rarity) {
|
||||
case 0:
|
||||
return sq_RGBA(255, 255, 255, 255);
|
||||
return 0xFFFFFFFF;
|
||||
case 1:
|
||||
return sq_RGBA(104, 213, 237, 255);
|
||||
return 0xFFEDD568;
|
||||
case 2:
|
||||
return sq_RGBA(179, 107, 254, 255);
|
||||
return 0xFFFF6BB3;
|
||||
case 3:
|
||||
return sq_RGBA(255, 0, 240, 255);
|
||||
return 0xFFF000FF;
|
||||
case 4:
|
||||
return sq_RGBA(255, 177, 0, 255);
|
||||
return 0xFF00B1FF;
|
||||
case 5:
|
||||
return sq_RGBA(255, 102, 102, 255);
|
||||
return 0xFF6666FF;
|
||||
case 6:
|
||||
return sq_RGBA(255, 50, 50, 255);
|
||||
return 0xFF0055FF;
|
||||
case 7:
|
||||
return 0xFF9314FF;
|
||||
case 8:
|
||||
return 0xFF1CBC0C;
|
||||
case 9:
|
||||
return 0xFFACFF08;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
//获取文字绘制长度
|
||||
class LenheartTextClass {
|
||||
|
||||
@@ -101,6 +101,15 @@ class R_Utils {
|
||||
return null;
|
||||
}
|
||||
|
||||
//获取APC编号的文件路径
|
||||
function GetApcPath(ApcIndex) {
|
||||
local ApcPathAddress = L_Sq_CallFunc(0x1219E80, "int", FFI_THISCALL, ["int", "int"], 0x1D90B60, ApcIndex);
|
||||
if (ApcPathAddress) {
|
||||
return NativePointer(ApcPathAddress).readUnicodeString();
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
//获取Lst文件的返回Array
|
||||
function GetLstArr(Path, Header) {
|
||||
local Arr = [];
|
||||
@@ -382,6 +391,31 @@ Rindro_Haker.LoadHook(0x7B64BA, ["int", "int", "bool"],
|
||||
});
|
||||
|
||||
|
||||
getroottable().WorldDrawVirtualCharacterCallBackFunc <- {};
|
||||
Rindro_Haker.LoadHook(0x80CE30, ["int", "int", "int", "int", "int", "int", "int"],
|
||||
function(args) {
|
||||
local Layer = args[0];
|
||||
local XPos = args[1];
|
||||
local YPos = args[2];
|
||||
local InfoAddress = NativePointer(Rindro_Haker.CpuContext.ecx).add(0x208).readInt();
|
||||
local WorldId = NativePointer(InfoAddress).add(0x4).readUShort();
|
||||
local NameAddress = NativePointer(InfoAddress).add(0x10).readInt();
|
||||
local Name = NativePointer(NameAddress).readUnicodeString();
|
||||
|
||||
foreach(Func in WorldDrawVirtualCharacterCallBackFunc) {
|
||||
Func(Layer, XPos, YPos, WorldId, Name);
|
||||
}
|
||||
// if (Layer == 0 && WorldId == 6)
|
||||
//注意 这里的坐标如果出现负数 说明 在角色在屏幕外 不需要绘制 同理 超过 卷轴最大值也是 (不过性能影响不大直接绘制就行 避免称谓比角色大 突然显示)
|
||||
// printf("绘制层级: " + Layer + " XPos: " + XPos + " YPos: " + YPos + " 角色名: " + Name + " 世界ID: " + WorldId);
|
||||
return null;
|
||||
},
|
||||
function(args) {
|
||||
|
||||
return null;
|
||||
});
|
||||
|
||||
|
||||
// Rindro_Haker.LoadHook(0x7FFA80, ["int", "int", "int", "int", "int", "int", "int", "int", "int", "int", "int", "void"],
|
||||
// function(args) {
|
||||
// if(args[0] == 0xA){
|
||||
@@ -413,5 +447,4 @@ Rindro_Haker.LoadHook(0x7B64BA, ["int", "int", "bool"],
|
||||
|
||||
// NativePointer(0x8266F5).writeShort(0x9090)
|
||||
// NativePointer(0x78FD37).writeShort(0x9090)
|
||||
// NativePointer(0x78FD3B).writeShort(0x9090)
|
||||
|
||||
// NativePointer(0x78FD3B).writeShort(0x9090)
|
||||
Reference in New Issue
Block a user