Drachenseelensystem entfernen (2/3): DS-Code aus gemeinsam genutzten Dateien entfernen
Zweiter Schritt der vollstaendigen Entfernung des Drachenseelensystems (Kernsystem + Alchemie/Refine, per Nutzerentscheidung komplett raus, Drachenseelen sollen ueberhaupt nicht mehr aktivierbar sein). Entfernt alle DragonSoul_*/DSManager-Aufrufe, ITEM_DS/ITEM_SPECIAL_DS/ ITEM_EXTRACT-Handling, das Drachenseelen-Inventar (pDSItems/wDSItemGrid), Deck-Aktivierung, den Refine-Netzwerkpfad (HEADER_CG_DRAGON_SOUL_REFINE), den GM-Befehl /dragon_soul sowie alle Aufrufstellen in char_item.cpp, item.cpp, exchange.cpp, shop(Ex).cpp, input_db.cpp, input_main.cpp, cmd(_gm).cpp. Sicherheitsprinzip beachtet: numerische Enum-Werte, von denen andere, bleibende Slot-Bereiche relativ abhaengen (v.a. BELT_INVENTORY_SLOT_START via DRAGON_SOUL_EQUIP_SLOT_*, sowie EItemTypes' ITEM_DS/ITEM_SPECIAL_DS/ ITEM_EXTRACT vor ITEM_SECONDARY_COIN/RING/BELT), wurden bewusst NICHT entfernt oder neu nummeriert, um Item-Positionen/-Typen bestehender Spieler-Datenbankeintraege nicht stillschweigend zu verschieben - nur der Code, der sie fuer Drachenseelen benutzt hat, wurde entfernt.
This commit is contained in:
@@ -60,7 +60,6 @@
|
||||
#ifdef __PET_SYSTEM__
|
||||
#include "PetSystem.h"
|
||||
#endif
|
||||
#include "DragonSoul.h"
|
||||
|
||||
extern const BYTE g_aBuffOnAttrPoints;
|
||||
extern bool RaceToJob(unsigned race, unsigned *ret_job);
|
||||
@@ -382,8 +381,6 @@ void CHARACTER::Initialize()
|
||||
m_fAttMul = 1.0f;
|
||||
m_fDamMul = 1.0f;
|
||||
|
||||
m_pointsInstant.iDragonSoulActiveDeck = -1;
|
||||
|
||||
memset(&m_tvLastSyncTime, 0, sizeof(m_tvLastSyncTime));
|
||||
m_iSyncHackCount = 0;
|
||||
}
|
||||
@@ -469,7 +466,6 @@ void CHARACTER::Destroy()
|
||||
|
||||
if (NULL == m_pkMobData)
|
||||
{
|
||||
DragonSoul_CleanUp();
|
||||
ClearItem();
|
||||
}
|
||||
|
||||
@@ -2384,24 +2380,6 @@ void CHARACTER::ComputePoints()
|
||||
}
|
||||
}
|
||||
|
||||
// 용혼석 시스템
|
||||
// ComputePoints에서는 케릭터의 모든 속성값을 초기화하고,
|
||||
// 아이템, 버프 등에 관련된 모든 속성값을 재계산하기 때문에,
|
||||
// 용혼석 시스템도 ActiveDeck에 있는 모든 용혼석의 속성값을 다시 적용시켜야 한다.
|
||||
if (DragonSoul_IsDeckActivated())
|
||||
{
|
||||
for (int i = WEAR_MAX_NUM + DS_SLOT_MAX * DragonSoul_GetActiveDeck();
|
||||
i < WEAR_MAX_NUM + DS_SLOT_MAX * (DragonSoul_GetActiveDeck() + 1); i++)
|
||||
{
|
||||
LPITEM pItem = GetWear(i);
|
||||
if (pItem)
|
||||
{
|
||||
if (DSManager::instance().IsTimeLeftDragonSoul(pItem))
|
||||
pItem->ModifyPoints(true);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (GetHP() > GetMaxHP())
|
||||
PointChange(POINT_HP, GetMaxHP() - GetHP());
|
||||
|
||||
|
||||
Reference in New Issue
Block a user