1 背包 将钱包 Item 从装备页中移动到上一层

2 修改九格拉伸相关
This commit is contained in:
WONIU 2025-01-11 01:27:48 +08:00
parent ecd1ec694e
commit f8c7218671
11 changed files with 142 additions and 117 deletions

View File

@ -200,12 +200,10 @@ class Yosin_EmeStretch extends Yosin_CommonUi {
// 九宫格拉伸 // 九宫格拉伸
function Yosin_NineBoxStretch(X, Y, width, height, path, imgId) { function Yosin_NineBoxStretch(width, height, path, imgId) {
// 创建画布 // 创建画布
local Canvas = CL_CanvasObject(); local Canvas = CL_CanvasObject();
Canvas.SetPosition(X, Y);
// 重设大小并清空 // 重设大小并清空
Canvas.ResizeAndClear(width, height); Canvas.ResizeAndClear(width, height);
// 开始绘制 // 开始绘制

View File

@ -50,7 +50,7 @@ class GameItem.EquipmentInfo extends Yosin_Window {
Init(); Init();
local background = Yosin_NineBoxStretch(0, 0, 211, RealCanvasHeight + 10, "sprite/interface/lenheartwindowcommon.img", 213); local background = Yosin_NineBoxStretch(211, RealCanvasHeight + 10, "sprite/interface/lenheartwindowcommon.img", 213);
background.SetZOrder(-1); background.SetZOrder(-1);
Addchild(background); Addchild(background);
} }

View File

@ -37,7 +37,7 @@ function TestStage() {
// ClientCharacter = Charc; // ClientCharacter = Charc;
// local Window = Sq_CreateWindow(_Inventory, "背包窗口", 150, 12, 257, 555, 20); local Window = Sq_CreateWindow(_Inventory, "背包窗口", 150, 12, 257, 548, 20);
// Window.equipmentPage.Item.ItemCollection.SetItemList([{ // Window.equipmentPage.Item.ItemCollection.SetItemList([{
// ItemId = 27675 // ItemId = 27675

View File

@ -13,19 +13,27 @@ class Yosin_TopTitle extends Yosin_CommonUi {
//内容背景 //内容背景
if (drawBackground) { if (drawBackground) {
local background = Yosin_NineBoxStretch(0, 15, W + 4, H - 15, "sprite/interface/lenheartwindowcommon.img", 97); local background = Yosin_NineBoxStretch( W, H, "sprite/interface/lenheartwindowcommon.img", 97);
background.SetPosition(0, 0);
Addchild(background); Addchild(background);
} }
// 标题背景 // 绘制标题背景
local Background = Yosin_EmeStretch(0, 0, W + 3, 22, "sprite/interface/lenheartwindowcommon.img", 609); local titleX = drawBackground ? 2 : 0;
Addchild(Background); local titleW = drawBackground ? W - 4 : W;
local titleBackground = Yosin_EmeStretch(titleX, 0, titleW, 20, "sprite/interface/lenheartwindowcommon.img", 609);
titleBackground.SetScale(1, 1.3);
Addchild(titleBackground);
// 标题亮色背景 // 标题背景
local BackgroundBright = CL_SpriteObject("sprite/interface/lenheartwindowcommon.img", 483); local BackgroundBright = CL_SpriteObject("sprite/interface/lenheartwindowcommon.img", 483);
local scaleW = (Background.GetSize().w / BackgroundBright.GetSize().w).tofloat(); local BackgroundBrightSize = BackgroundBright.GetSize();
// 计算光的缩放比例
local scaleW = (W / BackgroundBrightSize.w).tofloat();
print(scaleW);
BackgroundBright.SetScale(scaleW, 1); BackgroundBright.SetScale(scaleW, 1);
BackgroundBright.SetPosition(0, 1); BackgroundBright.SetPosition(0, 1);
print(BackgroundBright.X );
Addchild(BackgroundBright); Addchild(BackgroundBright);

View File

@ -549,7 +549,8 @@ class _Select_Character_Window extends Yosin_Window {
ChangeBackground(Info.loginImg); ChangeBackground(Info.loginImg);
//角色遮罩栏 //角色遮罩栏
CharacterMaskBox = Yosin_NineBoxStretch(-4, 320, 1074, 680, "sprite/interface/lenheartwindowcommon.img", 0); CharacterMaskBox = Yosin_NineBoxStretch(1074, 680, "sprite/interface/lenheartwindowcommon.img", 0);
CharacterMaskBox.SetPosition(-4, 320);
Addchild(CharacterMaskBox); Addchild(CharacterMaskBox);

View File

@ -72,19 +72,28 @@ class _Yosin_MessageBox extends Yosin_Window {
} }
function RegisterWidget() { function RegisterWidget() {
//背景 //背景
local background = Yosin_NineBoxStretch(-1, 15, cacheW + 1, cacheH, "sprite/interface/lenheartwindowcommon.img", 97); local background = Yosin_NineBoxStretch( cacheW + 1, cacheH, "sprite/interface/lenheartwindowcommon.img", 97);
background.SetPosition(-1, 15);
Addchild(background); Addchild(background);
local twoBackground = Yosin_NineBoxStretch(4, 20, cacheW - 8, cacheH - 36, "sprite/interface/lenheartwindowcommon.img", 97);
//文字背景
local twoBackground = Yosin_NineBoxStretch( cacheW - 8, cacheH - 36, "sprite/interface/lenheartwindowcommon.img", 97);
twoBackground.SetPosition(4, 20);
Addchild(twoBackground); Addchild(twoBackground);
// 绘制标题背景 // 绘制标题背景
local titleBackground = Yosin_EmeStretch(0, 0, cacheW, 20, "sprite/interface/lenheartwindowcommon.img", 609); local titleBackground = Yosin_EmeStretch(0, 0, cacheW, 20, "sprite/interface/lenheartwindowcommon.img", 609);
titleBackground.SetScale(1, 1.2);
AddUIChild(titleBackground); AddUIChild(titleBackground);
// 标题背景光
local BackgroundBright = CL_SpriteObject("sprite/interface/lenheartwindowcommon.img", 483); local BackgroundBright = CL_SpriteObject("sprite/interface/lenheartwindowcommon.img", 483);
local scaleW = (cacheW / BackgroundBright.GetSize().w).tofloat(); local BackgroundBrightSize = BackgroundBright.GetSize();
local scaleW = (cacheW / BackgroundBrightSize.w).tofloat();
BackgroundBright.SetScale(scaleW, 1); BackgroundBright.SetScale(scaleW, 1);
BackgroundBright.SetPosition( 0, 1);
Addchild(BackgroundBright); Addchild(BackgroundBright);
//确认按钮 //确认按钮

View File

@ -791,11 +791,8 @@ class _create_Character_enterName extends Yosin_Window {
base.constructor("输入角色名称", 0, 0, 1066, 600, 0); base.constructor("输入角色名称", 0, 0, 1066, 600, 0);
//背景 //背景
local background = Yosin_NineBoxStretch(-2, 0, 1070, 604, "sprite/interface/lenheartwindowcommon.img", 97); local background = Yosin_NineBoxStretch( 240, 140, "sprite/interface/lenheartwindowcommon.img", 97);
Addchild(background); background.SetPosition(413, 228);
//背景
local background = Yosin_NineBoxStretch(413, 228, 240, 140, "sprite/interface/lenheartwindowcommon.img", 97);
Addchild(background); Addchild(background);
// 标题文字 // 标题文字

View File

@ -6,8 +6,6 @@
*/ */
// local infoWindow = Sq_CreateWindow(_PersonalInfo, "个人信息窗口", 250, 60, 286, 530, 20); // local infoWindow = Sq_CreateWindow(_PersonalInfo, "个人信息窗口", 250, 60, 286, 530, 20);
// todo 图和尺寸比例都需要修改
// todo Yosin_Window 和 Yosin_CommonUi 会有性能开销需要检查
class _PersonalInfo extends Yosin_Window { class _PersonalInfo extends Yosin_Window {

View File

@ -5,7 +5,7 @@
文件用途: 背包窗口 文件用途: 背包窗口
*/ */
//local Window = Sq_CreateWindow(_Inventory, "背包窗口", 150, 12, 262, 555, 20); // local Window = Sq_CreateWindow(_Inventory, "背包窗口", 150, 12, 256, 548, 20);
class _Inventory extends Yosin_Window { class _Inventory extends Yosin_Window {
equipmentPage = null; equipmentPage = null;
@ -41,17 +41,24 @@ class _Inventory extends Yosin_Window {
AddUIChild(topBtn); AddUIChild(topBtn);
//标题按钮 //标题按钮
local titlesBtn = Yosin_RowMoreTitleBtn(5, 22, 252, ["物品栏", "装扮", "宠物", "护石"], "sprite/interface/lenheartwindowcommon.img", 160); local titlesBtn = Yosin_RowMoreTitleBtn(5, 22, 250, ["物品栏", "装扮", "宠物", "护石"], "sprite/interface/lenheartwindowcommon.img", 160);
AddUIChild(titlesBtn); AddUIChild(titlesBtn);
titlesBtn.LBDownOnClick = function(btns, index) { titlesBtn.LBDownOnClick = function(btns, index) {
print(index); print(index);
}; };
//物品栏 装备页 //物品栏 装备页
equipmentPage = Inventory_EquipmentPage(2, titlesBtn.bottom() + 4, 300, Height - titlesBtn.bottom() - 4); equipmentPage = Inventory_EquipmentPage(2, titlesBtn.bottom(), 300, 441);
AddUIChild(equipmentPage); AddUIChild(equipmentPage);
// 钱包
local moneyItem = MoneyItem(7, Height - 55);
AddUIChild(moneyItem);
} }
@ -61,4 +68,87 @@ class _Inventory extends Yosin_Window {
base.Proc(Dt); base.Proc(Dt);
} }
} }
// 金币相关数值
class MoneyItem extends Yosin_CommonUi {
constructor(x, y) {
local w = 248;
local h = 49;
base.constructor(x, y, w, h);
local txtColor = sq_RGBA(130, 105, 61, 255);
local bg = CL_SpriteObject("sprite/interface/newstyle/windows/inventory/inventory.img", 27);
Addchild(bg);
// 复活币个数
local ReviveNum = FontAssetManager.GenerateNormal("23434个", true, {
color = txtColor
});
ReviveNum.SetPosition(120 - ReviveNum.GetSize().w, 2);
Addchild(ReviveNum);
// 胜利的证明
local winNum = FontAssetManager.GenerateNormal("23434个", true, {
color = txtColor
});
winNum.SetPosition(245 - winNum.GetSize().w, 2);
Addchild(winNum);
// 商城
local storeBtn = Yosin_BaseButton(1, 25, 23, 23 "sprite/interface/newstyle/windows/inventory/inventory.img", 3);
// local storeBtn = Yosin_BaseButton(0, 0, 23, 23 "sprite/interface/newstyle/windows/inventory/inventory.img", 3);
//点击事件回调
// storeBtn.OnClick = function(Button) {
// }.bindenv(this);
AddUIChild(storeBtn);
// 点券
local storeNum = FontAssetManager.GenerateNormal("23434点券", true, {
color = txtColor
});
storeNum.SetPosition(120 - storeNum.GetSize().w, 27);
Addchild(storeNum);
// 金币按钮
local moneyBtn = Yosin_BaseButton(126, storeBtn.Y, 23, 23 "sprite/interface/newstyle/windows/inventory/inventory.img", 7);
//点击事件回调
// moneyBtn.OnClick = function(Button) {
// }.bindenv(this);
AddUIChild(moneyBtn);
// 金币数量
local storeNum = FontAssetManager.GenerateNormal("23434金币", true, {
color = txtColor
});
storeNum.SetPosition(245 - storeNum.GetSize().w, 27);
Addchild(storeNum);
}
}
// if (!getroottable().rawin("chongzaiflag")) {
// getroottable()["chongzaiflag"] <- true;
// } else {
// //遍历窗口队列 如果可见则调用Show
// for (local i = 0; i< _SYS_WINDOW_LIST_.len(); i++) {
// local Window = _SYS_WINDOW_LIST_[i];
// Window.Visible = false;
// Window.RemoveSelf();
// }
// TestStage();
// }

View File

@ -156,7 +156,7 @@ class InventoryItem extends Yosin_CommonUi {
base.constructor(gX, gY, gWidth, gHeight); base.constructor(gX, gY, gWidth, gHeight);
//物品分类按钮 //物品分类按钮
local itemBtns = Yosin_RowMoreTitleBtn(3, 4, 252, ["装备", "消耗品", "材料", "副职业", "任务"], "sprite/interface/lenheartwindowcommon.img", 160); local itemBtns = Yosin_RowMoreTitleBtn(5, 4, 248, ["装备", "消耗品", "材料", "副职业", "任务"], "sprite/interface/lenheartwindowcommon.img", 160);
AddUIChild(itemBtns); AddUIChild(itemBtns);
itemBtns.LBDownOnClick = function(btns, index) { itemBtns.LBDownOnClick = function(btns, index) {
@ -164,11 +164,12 @@ class InventoryItem extends Yosin_CommonUi {
}; };
// 物品栏边框 // 物品栏边框
local itemBg = Yosin_NineBoxStretch(2, itemBtns.bottom(), 253, 245, "sprite/interface/lenheartwindowcommon.img", 97); local itemBg = Yosin_NineBoxStretch(253, 245, "sprite/interface/lenheartwindowcommon.img", 97);
itemBg.SetPosition(2, itemBtns.bottom());
Addchild(itemBg); Addchild(itemBg);
// 物品栏 // 物品栏
ItemCollection = _ItemCollection(itemBg.X + 7, itemBg.Y + 7, 7); ItemCollection = _ItemCollection(itemBg.X + 7, 31, 7);
AddUIChild(ItemCollection); AddUIChild(ItemCollection);
@ -197,15 +198,6 @@ class InventoryItem extends Yosin_CommonUi {
local saerchBtn = Yosin_BaseButton(setBtn.X - 24, permutationBtn.Y, 23, 23 "sprite/interface/newstyle/windows/inventory/inventory.img", 94); local saerchBtn = Yosin_BaseButton(setBtn.X - 24, permutationBtn.Y, 23, 23 "sprite/interface/newstyle/windows/inventory/inventory.img", 94);
AddUIChild(saerchBtn); AddUIChild(saerchBtn);
// 复活币
local moneyItem = MoneyItem(5, itemBgBottom + 3, 3);
AddUIChild(moneyItem);
} }
function SetItemList(gItemList) { function SetItemList(gItemList) {
@ -214,74 +206,6 @@ class InventoryItem extends Yosin_CommonUi {
} }
// 金币相关数值
class MoneyItem extends Yosin_CommonUi {
constructor(x, y, idx) {
local w = 248;
local h = 49;
base.constructor(x, y, w, h);
local txtColor = sq_RGBA(130, 105, 61, 255);
local bg = CL_SpriteObject("sprite/interface/newstyle/windows/inventory/inventory.img", 27);
Addchild(bg);
// 复活币个数
local ReviveNum = FontAssetManager.GenerateNormal("23434个", true, {
color = txtColor
});
ReviveNum.SetPosition(120 - ReviveNum.GetSize().w, 2);
Addchild(ReviveNum);
// 胜利的证明
local winNum = FontAssetManager.GenerateNormal("23434个", true, {
color = txtColor
});
winNum.SetPosition(245 - winNum.GetSize().w, 2);
Addchild(winNum);
// 商城
local storeBtn = Yosin_BaseButton(1, 25, 23, 23 "sprite/interface/newstyle/windows/inventory/inventory.img", 3);
// local storeBtn = Yosin_BaseButton(0, 0, 23, 23 "sprite/interface/newstyle/windows/inventory/inventory.img", 3);
//点击事件回调
// storeBtn.OnClick = function(Button) {
// }.bindenv(this);
AddUIChild(storeBtn);
// 点券
local storeNum = FontAssetManager.GenerateNormal("23434点券", true, {
color = txtColor
});
storeNum.SetPosition(120 - storeNum.GetSize().w, 27);
Addchild(storeNum);
// 金币按钮
local moneyBtn = Yosin_BaseButton(126, storeBtn.Y, 23, 23 "sprite/interface/newstyle/windows/inventory/inventory.img", 7);
//点击事件回调
// moneyBtn.OnClick = function(Button) {
// }.bindenv(this);
AddUIChild(moneyBtn);
// 金币数量
local storeNum = FontAssetManager.GenerateNormal("23434金币", true, {
color = txtColor
});
storeNum.SetPosition(245 - storeNum.GetSize().w, 27);
Addchild(storeNum);
}
}

View File

@ -262,14 +262,14 @@ class _ItemCollection extends Yosin_CommonUi {
} }
if (!getroottable().rawin("chongzaiflag")) { // if (!getroottable().rawin("chongzaiflag")) {
getroottable()["chongzaiflag"] <- true; // getroottable()["chongzaiflag"] <- true;
} else { // } else {
//遍历窗口队列 如果可见则调用Show // //遍历窗口队列 如果可见则调用Show
for (local i = 0; i< _SYS_WINDOW_LIST_.len(); i++) { // for (local i = 0; i< _SYS_WINDOW_LIST_.len(); i++) {
local Window = _SYS_WINDOW_LIST_[i]; // local Window = _SYS_WINDOW_LIST_[i];
Window.Visible = false; // Window.Visible = false;
Window.RemoveSelf(); // Window.RemoveSelf();
} // }
TestStage(); // TestStage();
} // }