* Typo fixed, thanks to @xEasycore
* Udpated item upgrade, added `NeedRefineMax`
This commit is contained in:
parent
0368896510
commit
c1c02048f9
@ -7,7 +7,7 @@
|
||||
###########################################################################
|
||||
# - Id: # (int) Item ID of synthesis box
|
||||
# NeedRefine: # (int) Minimum refine level for source item
|
||||
# SourceNeeded: # (int) Number of item sets (in SourceItem) must be selected
|
||||
# SourceNeeded: # (int) Number of item sets (in SourceItem) must be selected (default: 1)
|
||||
# SourceItem: # List of item required
|
||||
# - Item: # (int) Item ID for source
|
||||
# - Amount: # (int) Item amount will be consumed
|
||||
|
@ -6,8 +6,9 @@
|
||||
#
|
||||
###########################################################################
|
||||
# - Id: # (int) Item ID of upgrade box
|
||||
# NeedRefineMin: # (int) Minimum refine level for target item (default :0)
|
||||
# NeedOptionNumMin: # (int) Minimum random option that target item has (default :0)
|
||||
# NeedRefineMin: # (int) Minimum refine level needed for target item (default: 0)
|
||||
# NeedRefineMax: # (int) Maximum refine level needed for target item (default: MAX_REFINE)
|
||||
# NeedOptionNumMin: # (int) Minimum random option that target item has (default: 0)
|
||||
# NotSocketEnchantItem: # (bool) Target item must not has enchant stone (default: true)
|
||||
# TargetItem: # List of possible item to be upgraded
|
||||
# - Item: # (int) Target's Item ID
|
||||
|
@ -7,7 +7,7 @@
|
||||
###########################################################################
|
||||
# - Id: # (int) Item ID of synthesis box
|
||||
# NeedRefine: # (int) Minimum refine level for source item
|
||||
# SourceNeeded: # (int) Number of item sets (in SourceItem) must be selected
|
||||
# SourceNeeded: # (int) Number of item sets (in SourceItem) must be selected (default: 1)
|
||||
# SourceItem: # List of item required
|
||||
# - Item: # (int) Item ID for source
|
||||
# - Amount: # (int) Item amount will be consumed
|
||||
|
@ -6,8 +6,9 @@
|
||||
#
|
||||
###########################################################################
|
||||
# - Id: # (int) Item ID of upgrade box
|
||||
# NeedRefineMin: # (int) Minimum refine level for target item (default :0)
|
||||
# NeedOptionNumMin: # (int) Minimum random option that target item has (default :0)
|
||||
# NeedRefineMin: # (int) Minimum refine level needed for target item (default: 0)
|
||||
# NeedRefineMax: # (int) Maximum refine level needed for target item (default: MAX_REFINE)
|
||||
# NeedOptionNumMin: # (int) Minimum random option that target item has (default: 0)
|
||||
# NotSocketEnchantItem: # (bool) Target item must not has enchant stone (default: true)
|
||||
# TargetItem: # List of possible item to be upgraded
|
||||
# - Item: # (int) Target's Item ID
|
||||
|
@ -7,7 +7,7 @@
|
||||
###########################################################################
|
||||
# - Id: # (int) Item ID of synthesis box
|
||||
# NeedRefine: # (int) Minimum refine level for source item
|
||||
# SourceNeeded: # (int) Number of item sets (in SourceItem) must be selected
|
||||
# SourceNeeded: # (int) Number of item sets (in SourceItem) must be selected (default: 1)
|
||||
# SourceItem: # List of item required
|
||||
# - Item: # (int) Item ID for source
|
||||
# - Amount: # (int) Item amount will be consumed
|
||||
|
@ -6,8 +6,9 @@
|
||||
#
|
||||
###########################################################################
|
||||
# - Id: # (int) Item ID of upgrade box
|
||||
# NeedRefineMin: # (int) Minimum refine level for target item (default :0)
|
||||
# NeedOptionNumMin: # (int) Minimum random option that target item has (default :0)
|
||||
# NeedRefineMin: # (int) Minimum refine level needed for target item (default: 0)
|
||||
# NeedRefineMax: # (int) Maximum refine level needed for target item (default: MAX_REFINE)
|
||||
# NeedOptionNumMin: # (int) Minimum random option that target item has (default: 0)
|
||||
# NotSocketEnchantItem: # (bool) Target item must not has enchant stone (default: true)
|
||||
# TargetItem: # List of possible item to be upgraded
|
||||
# - Item: # (int) Target's Item ID
|
||||
|
@ -213,7 +213,7 @@ void do_final_item_synthesis(void) {
|
||||
* Constructor
|
||||
*/
|
||||
s_item_synthesis_db::s_item_synthesis_db()
|
||||
: source_needed(0)
|
||||
: source_needed(1)
|
||||
, sources()
|
||||
, reward(nullptr)
|
||||
, source_refine_min(0)
|
||||
|
@ -84,8 +84,12 @@ uint64 ItemUpgradeDatabase::parseBodyNode(const YAML::Node &node) {
|
||||
this->asUInt16(node, "NeedRefineMin", entry->source_refine_min);
|
||||
}
|
||||
|
||||
if (this->nodeExists(node, "NeedRefineMax")) {
|
||||
this->asUInt16(node, "NeedRefineMax", entry->source_refine_max);
|
||||
}
|
||||
|
||||
if (this->nodeExists(node, "NeedOptionNumMin")) {
|
||||
this->asUInt16(node, "NeedOptionNumMin", entry->source_refine_min);
|
||||
this->asUInt16(node, "NeedOptionNumMin", entry->need_option_num);
|
||||
}
|
||||
|
||||
if (this->nodeExists(node, "NotSocketEnchantItem")) {
|
||||
@ -212,6 +216,7 @@ s_item_upgrade_db::s_item_upgrade_db()
|
||||
: targets()
|
||||
, result(nullptr)
|
||||
, source_refine_min(0)
|
||||
, source_refine_max(MAX_REFINE)
|
||||
, need_option_num(0)
|
||||
, not_socket_enchant(false)
|
||||
, delete_target_onsuccess(true)
|
||||
@ -252,6 +257,9 @@ bool s_item_upgrade_db::checkRequirement(item *it, item_data *id)
|
||||
if (this->source_refine_min > it->refine)
|
||||
return false;
|
||||
|
||||
if (this->source_refine_max < it->refine)
|
||||
return false;
|
||||
|
||||
if (this->not_socket_enchant) {
|
||||
for (int i = id->slot; i < MAX_SLOTS; i++) {
|
||||
if (it->card[i])
|
||||
|
@ -21,6 +21,7 @@ struct s_item_upgrade_db {
|
||||
std::vector<uint32> targets;
|
||||
script_code *result;
|
||||
uint16 source_refine_min;
|
||||
uint16 source_refine_max;
|
||||
uint16 need_option_num;
|
||||
bool not_socket_enchant;
|
||||
bool delete_target_onsuccess;
|
||||
|
Loading…
x
Reference in New Issue
Block a user