新增自定义动画类,修复道具数量显示功能,更新项目脚本配置,禁用多个项目功能,调整UI元素位置,删除无用文件。
This commit is contained in:
138
Project/FixItemCout/FixItemCout.nut
Normal file
138
Project/FixItemCout/FixItemCout.nut
Normal file
@@ -0,0 +1,138 @@
|
||||
/*
|
||||
文件名:FixItemCout.nut
|
||||
路径:Project/FixItemCout/FixItemCout.nut
|
||||
创建日期:2026-01-14 16:58
|
||||
文件用途:
|
||||
*/
|
||||
|
||||
class FixItemCoutC {
|
||||
|
||||
Img = Rindro_Image("common/smallnumber.img");
|
||||
Img2 = Rindro_Image("interface/digit/small_stroke_white.img");
|
||||
|
||||
LengthList = [6, 4, 6, 6, 6, 6, 6, 6, 6, 6, 3, 8, 7];
|
||||
SmallLengthList = [5, 4, 5, 5, 5, 5, 5, 5, 5, 5];
|
||||
|
||||
constructor() {
|
||||
_FixItemCount_();
|
||||
}
|
||||
|
||||
function Logic(X, Y, Count) {
|
||||
if (Count > 1) {
|
||||
local Suf = -1;
|
||||
if (Count > 9999) {
|
||||
Count = Count / 10000.0;
|
||||
Suf = 12;
|
||||
|
||||
local Str = Count.tostring();
|
||||
if (typeof Count == "float") Str = format("%.1f", Count);
|
||||
local Length = 0;
|
||||
local DrawList = [];
|
||||
for (local i = 0; i< Str.len(); i++) {
|
||||
local char = Str.slice(i, i + 1);
|
||||
local Width = 0;
|
||||
if (char == ".") {
|
||||
Width = 3;
|
||||
DrawList.append({
|
||||
index = 10,
|
||||
width = Width
|
||||
|
||||
})
|
||||
} else {
|
||||
local Index = char.tointeger();
|
||||
Width = LengthList[Index];
|
||||
DrawList.append({
|
||||
index = Index,
|
||||
width = Width
|
||||
})
|
||||
}
|
||||
Length += Width;
|
||||
}
|
||||
if (Suf != -1) {
|
||||
DrawList.append({
|
||||
index = Suf,
|
||||
width = LengthList[Suf]
|
||||
})
|
||||
Length += LengthList[Suf];
|
||||
}
|
||||
|
||||
local DrawOffset = 0;
|
||||
foreach(index, info in DrawList) {
|
||||
local offset = 0;
|
||||
if (index != 0) {
|
||||
offset = DrawList[index - 1].width + DrawOffset
|
||||
}
|
||||
Img.DrawPng(info.index, X - Length + offset, Y + (info.index == 10 ? 7 : 0) + (info.index == 12 ? -1 : 0));
|
||||
DrawOffset = offset;
|
||||
}
|
||||
} else if (Count > 999 && Count <= 9999) {
|
||||
local Str = Count.tostring();
|
||||
local Length = 0;
|
||||
local DrawList = [];
|
||||
for (local i = 0; i< Str.len(); i++) {
|
||||
local char = Str.slice(i, i + 1);
|
||||
local Index = char.tointeger();
|
||||
DrawList.append({
|
||||
index = Index,
|
||||
width = SmallLengthList[Index]
|
||||
});
|
||||
Length += SmallLengthList[Index];
|
||||
}
|
||||
|
||||
local DrawOffset = 0;
|
||||
foreach(index, info in DrawList) {
|
||||
local offset = 0;
|
||||
if (index != 0) {
|
||||
offset = DrawList[index - 1].width + DrawOffset
|
||||
}
|
||||
Img2.DrawPng(info.index, X - 1 - Length + offset, Y);
|
||||
DrawOffset = offset;
|
||||
}
|
||||
} else if (Count <= 999) {
|
||||
local Str = Count.tostring();
|
||||
local Length = 0;
|
||||
local DrawList = [];
|
||||
for (local i = 0; i< Str.len(); i++) {
|
||||
local char = Str.slice(i, i + 1);
|
||||
local Index = char.tointeger();
|
||||
DrawList.append({
|
||||
index = Index,
|
||||
width = LengthList[Index]
|
||||
});
|
||||
Length += LengthList[Index];
|
||||
}
|
||||
|
||||
|
||||
local DrawOffset = 0;
|
||||
foreach(index, info in DrawList) {
|
||||
local offset = 0;
|
||||
if (index != 0) {
|
||||
offset = DrawList[index - 1].width + DrawOffset
|
||||
}
|
||||
Img.DrawPng(info.index, X - 1 - Length + offset, Y);
|
||||
DrawOffset = offset;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
getroottable().rawdelete("FixItemCout_Obj");
|
||||
|
||||
function Lenheart_FixItemCout_Fun(obj) {
|
||||
local RootTab = getroottable();
|
||||
if (!RootTab.rawin("FixItemCout_Obj")) {
|
||||
RootTab.rawset("FixItemCout_Obj", FixItemCoutC());
|
||||
}
|
||||
}
|
||||
|
||||
function Sq_FixItemCount(X, Y, Count) {
|
||||
local RootTab = getroottable();
|
||||
if (RootTab.rawin("FixItemCout_Obj")) {
|
||||
RootTab["FixItemCout_Obj"].Logic(X, Y, Count);
|
||||
}
|
||||
}
|
||||
|
||||
getroottable()["LenheartFuncTab"].rawset("FixItemCoutFuncN", Lenheart_FixItemCout_Fun);
|
||||
Reference in New Issue
Block a user