Drachenseelen-Refine-Protokoll aus dem Client-Engine-Code entfernen
Dritter, zuvor uebersehener Teil der Drachenseelen-Entfernung: das Visual-Studio-Projekt, das Metin2Client.exe baut und die an Python exponierten Module (player/chr/item/app/net) bereitstellt. Entfernt: NEW_AFFECT_DRAGON_SOUL_QUALIFIED/_DECK1/_DECK2 (InstanceBase.h + Python-Bindings), das komplette Refine-Netzwerkprotokoll (HEADER_CG/GC_DRAGON_SOUL_REFINE, TPacketCG/GCDragonSoulRefine, Send/RecvDragonSoulRefine(Packet) inkl. aller Aufrufstellen, playerSendDragonSoulRefine, DS_SUB_HEADER_*-Bindings in gleich zwei Modulen), playerIsDSEquipmentSlot, sowie die ungenutzten EDragonSoulStepTypes-Enum. Sicherheitsprinzip wie serverseitig beachtet: ESlotType, EWindows und CItemData::EItemType sind sequentielle Enums, in denen SLOT_TYPE_DRAGON_SOUL_INVENTORY / DRAGON_SOUL_INVENTORY / ITEM_TYPE_DS / ITEM_TYPE_SPECIAL_DS mitten drin liegen und mit dem Server sowie gespeicherten Item-Daten synchron bleiben muessen (u.a. wegen BELT_INVENTORY danach) - diese bleiben bewusst als reservierte, ungenutzte Werte stehen, ebenso EDragonSoulGradeTypes (wird noch von c_DragonSoul_Inventory_Count zur Groessenberechnung des aDSItem[]-Arrays gebraucht). WICHTIG: Dieses Projekt kann ich nicht selbst kompilieren (Windows/Visual Studio). Bitte einmal durchbauen und mir Fehler zurückmelden.
This commit is contained in:
@@ -626,10 +626,6 @@ void CPythonNetworkStream::GamePhase()
|
||||
ret = RecvSpecificEffect();
|
||||
break;
|
||||
|
||||
case HEADER_GC_DRAGON_SOUL_REFINE:
|
||||
ret = RecvDragonSoulRefine();
|
||||
break;
|
||||
|
||||
default:
|
||||
ret = RecvDefaultPacket(header);
|
||||
break;
|
||||
@@ -4437,22 +4433,6 @@ bool CPythonNetworkStream::RecvDigMotionPacket()
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
// 용혼석 강화
|
||||
bool CPythonNetworkStream::SendDragonSoulRefinePacket(BYTE bRefineType, TItemPos* pos)
|
||||
{
|
||||
TPacketCGDragonSoulRefine pk;
|
||||
pk.header = HEADER_CG_DRAGON_SOUL_REFINE;
|
||||
pk.bSubType = bRefineType;
|
||||
memcpy (pk.ItemGrid, pos, sizeof (TItemPos) * DS_REFINE_WINDOW_MAX_NUM);
|
||||
if (!Send(sizeof (pk), &pk))
|
||||
{
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
#if defined(ENABLE_DISCORD_RPC)
|
||||
#include "discord_rpc.h"
|
||||
#include "Discord.h"
|
||||
|
||||
Reference in New Issue
Block a user