Parcourir la source

Restore access to October 2004 classic 283 release cd client

Emagi il y a 5 mois
Parent
commit
29d50aa842
2 fichiers modifiés avec 13 ajouts et 6 suppressions
  1. 8 6
      EQ2/source/WorldServer/client.cpp
  2. 5 0
      server/WorldStructs.xml

+ 8 - 6
EQ2/source/WorldServer/client.cpp

@@ -749,7 +749,7 @@ void Client::SendCharInfo() {
 	ClientPacketFunctions::SendAbilities(this);
 
 	ClientPacketFunctions::SendSkillBook(this);
-	if (!IsReloadingZone() && !player->IsResurrecting()) {
+	if (!IsReloadingZone() && !player->IsResurrecting() && GetVersion() >= 546) {
 		ClientPacketFunctions::SendUpdateSpellBook(this);
 	}
 	else {
@@ -1472,7 +1472,9 @@ bool Client::HandlePacket(EQApplicationPacket* app) {
 		break;
 	}
 	case OP_DoneLoadingUIResourcesMsg: {
-		//ClientPacketFunctions::SendUpdateSpellBook(this);
+		if(GetVersion() < 546) {
+			ClientPacketFunctions::SendUpdateSpellBook(this);
+		}
 		EQ2Packet* app = new EQ2Packet(OP_DoneLoadingUIResourcesMsg, 0, 0);
 		QueuePacket(app);
 		if(!player_loading_complete)
@@ -2966,7 +2968,7 @@ void Client::HandleExamineInfoRequest(EQApplicationPacket* app) {
 		Spell* spell = 0;
 		bool trait_display;
 		
-		request = configReader.getStruct("WS_ExamineInfoRequestMsg", GetVersion());
+		request = configReader.getStruct((GetVersion() <= 283) ? "WS_ExamineInfoRequest" : "WS_ExamineInfoRequestMsg", GetVersion());
 		if (!request) {
 			return;
 		}
@@ -3177,7 +3179,7 @@ void Client::HandleExamineInfoRequest(EQApplicationPacket* app) {
 		}
 	}
 	else if (type == 5) { // recipe info
-	request = configReader.getStruct("WS_ExamineInfoRequestMsg", GetVersion());
+	request = configReader.getStruct((GetVersion() <= 283) ? "WS_ExamineInfoRequest" : "WS_ExamineInfoRequestMsg", GetVersion());
 		if (!request)
 			return;
 		if(!request->LoadPacketData(app->pBuffer, app->size)) {
@@ -3189,7 +3191,7 @@ void Client::HandleExamineInfoRequest(EQApplicationPacket* app) {
 		if(GetVersion() < 546) {
 			id = request->getType_int32_ByName("id");
 		}
-		if(GetVersion() == 546) {
+		else if(GetVersion() == 546) {
 			id = request->getType_int32_ByName("unique_id");
 		}
 		else {
@@ -3207,7 +3209,7 @@ void Client::HandleExamineInfoRequest(EQApplicationPacket* app) {
 		Spell* spell = 0;
 		//Spell* spell2 = 0;
 		//AltAdvanceData* data = 0;
-		request = configReader.getStruct("WS_ExamineInfoRequestMsg", GetVersion());
+		request = configReader.getStruct((GetVersion() <= 283) ? "WS_ExamineInfoRequest" : "WS_ExamineInfoRequestMsg", GetVersion());
 		if (!request)
 			return;
 		if(!request->LoadPacketData(app->pBuffer, app->size)) {

+ 5 - 0
server/WorldStructs.xml

@@ -6538,6 +6538,11 @@ to zero and treated like placeholders." />
 <Data ElementName="unique_id" Type="int32" />
 <Data ElementName="unknown5" Type="int16" />
 </Struct>
+<Struct Name="WS_ExamineInfoRequest" ClientVersion="1" >
+<Data ElementName="type" Type="int8" Size="1" />
+<Data ElementName="id" Type="int32" />
+<Data ElementName="display" Type="int8" />
+</Struct>
 <Struct Name="WS_ExamineInfoRequestMsg" ClientVersion="1" OpcodeName="OP_ExamineInfoRequestMsg">
 <Data ElementName="type" Type="int8" Size="1" />
 <Data ElementName="id" Type="int32" />