From b7d98aad7e8728c5a41c6fab5a21b6c633042527 Mon Sep 17 00:00:00 2001
From: mrDarker <mr.darker@163.com>
Date: 星期六, 13 九月 2025 11:43:13 +0800
Subject: [PATCH] Merge branch 'master' into liuyang

---
 SourceCode/Bond/Servo/CEquipment.cpp |   19 +++++++++++++++++--
 1 files changed, 17 insertions(+), 2 deletions(-)

diff --git a/SourceCode/Bond/Servo/CEquipment.cpp b/SourceCode/Bond/Servo/CEquipment.cpp
index aa339b2..6a3b56d 100644
--- a/SourceCode/Bond/Servo/CEquipment.cpp
+++ b/SourceCode/Bond/Servo/CEquipment.cpp
@@ -1497,6 +1497,19 @@
 		return &m_slot[index];
 	}
 
+	CSlot* CEquipment::getSlotWithNo(int slotNo)
+	{
+		CSlot* pSlot = nullptr;
+		for (int i = 0; i < SLOT_MAX; i++) {
+			if (!m_slot[i].isEnable()) continue;
+			if (m_slot[i].getNo() != slotNo) continue;
+			pSlot = &m_slot[i];
+			break;
+		}
+
+		return pSlot;
+	}
+
 	CGlass* CEquipment::getAnyGlass()
 	{
 		CSlot* pSlot = nullptr;
@@ -1581,8 +1594,10 @@
 		}
 
 		auto rawData = processData.getParamsRawData();
-		std::vector<CParam> params;
-		this->parsingParams((const char*)rawData.data(), rawData.size(), params);
+		std::vector<CParam> tempParams;
+		this->parsingParams((const char*)rawData.data(), rawData.size(), tempParams);
+		int n = processData.getTotalParameter();
+		std::vector<CParam> params(tempParams.begin(), tempParams.begin() + min(n, (int)tempParams.size()));
 		pGlass->addParams(params);
 		
 		// 关联的Glass也要更新

--
Gitblit v1.9.3