summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--db/constants.conf118
-rw-r--r--db/pre-re/item_db.conf4
-rw-r--r--db/re/item_db.conf7
-rw-r--r--doc/constants.md68
-rw-r--r--sql-files/item_db.sql2
-rw-r--r--sql-files/item_db_re.sql2
-rw-r--r--sql-files/logs.sql2
-rw-r--r--sql-files/main.sql1
-rw-r--r--sql-files/upgrades/2016-03-10--22-18.sql22
-rw-r--r--sql-files/upgrades/index.txt1
-rw-r--r--sql-files/upgrades/rAthena-logs-upgrade.sql2
-rw-r--r--src/map/atcommand.c4
-rw-r--r--src/map/chrif.c4
-rw-r--r--src/map/clif.c6
-rw-r--r--src/map/itemdb.c2
-rw-r--r--src/map/log.c10
-rw-r--r--src/map/log.h51
-rw-r--r--src/map/map.h2
-rw-r--r--src/map/pc.c16
-rw-r--r--src/map/pet.c8
-rw-r--r--src/map/quest.c2
-rw-r--r--src/map/script.c47
-rw-r--r--src/map/script.h1
-rw-r--r--src/map/skill.c12
-rw-r--r--src/map/status.h5
-rw-r--r--src/plugins/HPMHooking/HPMHooking_map.HPMHooksCore.inc4
-rw-r--r--src/plugins/HPMHooking/HPMHooking_map.HookingPoints.inc1
-rw-r--r--src/plugins/HPMHooking/HPMHooking_map.Hooks.inc26
-rw-r--r--src/plugins/constdb2doc.c4
29 files changed, 228 insertions, 206 deletions
diff --git a/db/constants.conf b/db/constants.conf
index ee78cf32e..59cbc431c 100644
--- a/db/constants.conf
+++ b/db/constants.conf
@@ -451,124 +451,6 @@ constants_db: {
cell_chknovending: 12
cell_chknochat: 13
- comment__: "Parameters"
- BaseExp: {
- Value: 1
- Parameter: true
- }
- JobExp: {
- Value: 2
- Parameter: true
- }
- Karma: {
- Value: 3
- Parameter: true
- }
- Manner: {
- Value: 4
- Parameter: true
- }
- Hp: {
- Value: 5
- Parameter: true
- }
- MaxHp: {
- Value: 6
- Parameter: true
- }
- Sp: {
- Value: 7
- Parameter: true
- }
- MaxSp: {
- Value: 8
- Parameter: true
- }
- StatusPoint: {
- Value: 9
- Parameter: true
- }
- BaseLevel: {
- Value: 11
- Parameter: true
- }
- SkillPoint: {
- Value: 12
- Parameter: true
- }
- Class: {
- Value: 19
- Parameter: true
- }
- Zeny: {
- Value: 20
- Parameter: true
- }
- Sex: {
- Value: 21
- Parameter: true
- }
- NextBaseExp: {
- Value: 22
- Parameter: true
- }
- NextJobExp: {
- Value: 23
- Parameter: true
- }
- Weight: {
- Value: 24
- Parameter: true
- }
- MaxWeight: {
- Value: 25
- Parameter: true
- }
- JobLevel: {
- Value: 55
- Parameter: true
- }
- Upper: {
- Value: 56
- Parameter: true
- }
- BaseJob: {
- Value: 119
- Parameter: true
- }
- BaseClass: {
- Value: 120
- Parameter: true
- }
- killerrid: {
- Value: 121
- Parameter: true
- }
- killedrid: {
- Value: 122
- Parameter: true
- }
- SlotChange: {
- Value: 123
- Parameter: true
- }
- CharRename: {
- Value: 124
- Parameter: true
- }
- ModExp: {
- Value: 125
- Parameter: true
- }
- ModDrop: {
- Value: 126
- Parameter: true
- }
- ModDeath: {
- Value: 127
- Parameter: true
- }
-
comment__: "Bonuses / Parameter IDs"
bMaxHP: 6
bMaxSP: 8
diff --git a/db/pre-re/item_db.conf b/db/pre-re/item_db.conf
index 48c6b2957..5546d35cf 100644
--- a/db/pre-re/item_db.conf
+++ b/db/pre-re/item_db.conf
@@ -43544,8 +43544,8 @@ item_db: (
Refine: false
View: 373
Script: <"
- bonus2 bResEff,Eff_Stun,500;
- skill HT_FLASHER,1;
+ bonus bBaseAtk, 5;
+ bonus5 bAutoSpellWhenHit, BS_GREED, 1, 10, BF_SHORT, 0;
">
},
{
diff --git a/db/re/item_db.conf b/db/re/item_db.conf
index efd73e534..9b7ad19c4 100644
--- a/db/re/item_db.conf
+++ b/db/re/item_db.conf
@@ -58593,9 +58593,12 @@ item_db: (
Loc: 256
Refine: false
View: 373
+ Trade: {
+ nodrop: true
+ }
Script: <"
- bonus2 bResEff,Eff_Stun,500;
- skill HT_FLASHER,1;
+ bonus bBaseAtk, 5;
+ bonus5 bAutoSpellWhenHit, BS_GREED, 1, 10, BF_SHORT, 0;
">
},
{
diff --git a/doc/constants.md b/doc/constants.md
index bec13413b..138808dfe 100644
--- a/doc/constants.md
+++ b/doc/constants.md
@@ -384,38 +384,6 @@
- `cell_chknovending`: 12
- `cell_chknochat`: 13
-### Parameters
-
-- `BaseExp`: [param]
-- `JobExp`: [param]
-- `Karma`: [param]
-- `Manner`: [param]
-- `Hp`: [param]
-- `MaxHp`: [param]
-- `Sp`: [param]
-- `MaxSp`: [param]
-- `StatusPoint`: [param]
-- `BaseLevel`: [param]
-- `SkillPoint`: [param]
-- `Class`: [param]
-- `Zeny`: [param]
-- `Sex`: [param]
-- `NextBaseExp`: [param]
-- `NextJobExp`: [param]
-- `Weight`: [param]
-- `MaxWeight`: [param]
-- `JobLevel`: [param]
-- `Upper`: [param]
-- `BaseJob`: [param]
-- `BaseClass`: [param]
-- `killerrid`: [param]
-- `killedrid`: [param]
-- `SlotChange`: [param]
-- `CharRename`: [param]
-- `ModExp`: [param]
-- `ModDrop`: [param]
-- `ModDeath`: [param]
-
### Bonuses / Parameter IDs
- `bMaxHP`: 6
@@ -3807,6 +3775,42 @@
- `RENEWAL_ASPD`: 1
+## Parameters (source)
+
+
+### Parameters
+
+- `BaseExp`: [param]
+- `JobExp`: [param]
+- `Karma`: [param]
+- `Manner`: [param]
+- `Hp`: [param]
+- `MaxHp`: [param]
+- `Sp`: [param]
+- `MaxSp`: [param]
+- `StatusPoint`: [param]
+- `BaseLevel`: [param]
+- `SkillPoint`: [param]
+- `Class`: [param]
+- `Zeny`: [param]
+- `Sex`: [param]
+- `NextBaseExp`: [param]
+- `NextJobExp`: [param]
+- `Weight`: [param]
+- `MaxWeight`: [param]
+- `JobLevel`: [param]
+- `Upper`: [param]
+- `BaseJob`: [param]
+- `BaseClass`: [param]
+- `killerrid`: [param]
+- `killedrid`: [param]
+- `SlotChange`: [param]
+- `CharRename`: [param]
+- `ModExp`: [param]
+- `ModDrop`: [param]
+- `ModDeath`: [param]
+
+
## Skills (db/re/skill_db.txt)
- `NV_BASIC`: 1
diff --git a/sql-files/item_db.sql b/sql-files/item_db.sql
index 4d5649b67..f7abfd9db 100644
--- a/sql-files/item_db.sql
+++ b/sql-files/item_db.sql
@@ -2532,7 +2532,7 @@ REPLACE INTO `item_db` VALUES ('5361','Gang_Scarf','Gangster Scarf','5','20','10
REPLACE INTO `item_db` VALUES ('5362','Ninja_Scroll','Ninja Scroll','5','20','10','200','0','0','0','0','0','0xFFFFFFFFFFFFFFFF','63','2','1','0','60',NULL,'0','370','0','0','0','0','73',NULL,'0',NULL,'0',NULL,'0','bonus bMatkRate,1;','','');
REPLACE INTO `item_db` VALUES ('5363','Helm_Of_Abyss','Helm Of Abyss','5','20','10','1000','0','0','2','0','1','0x654E2','63','2','256','0','70',NULL,'1','371','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','bonus2 bSubRace,RC_DemiPlayer,-10; bonus2 bSubRace,RC_Boss,10;','','');
REPLACE INTO `item_db` VALUES ('5364','Dark_Snake_Lord_Hat','Evil Snake Lord Hat','5','20','10','500','0','0','2','0','1','0xFFFFFFFFFFFFFFFF','63','2','256','0','60',NULL,'1','372','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','bonus bStr,1; bonus bInt,1; bonus bAgi,2;','','');
-REPLACE INTO `item_db` VALUES ('5365','Fried_Egg','Magnolia Hat','5','20','10','100','0','0','3','0','1','0xFFFFFFFFFFFFFFFF','63','2','256','0','1',NULL,'0','373','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','bonus2 bResEff,Eff_Stun,500; skill HT_FLASHER,1;','','');
+REPLACE INTO `item_db` VALUES ('5365','Fried_Egg','Magnolia Hat','5','20','10','100','0','0','3','0','1','0xFFFFFFFFFFFFFFFF','63','2','256','0','1',NULL,'0','373','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','bonus bBaseAtk, 5; bonus5 bAutoSpellWhenHit, BS_GREED, 1, 10, BF_SHORT, 0;','','');
REPLACE INTO `item_db` VALUES ('5366','Hat_0f_King','Love Dad Bandana','5','20','10','200','0','0','3','0','0','0xFFFFFFFFFFFFFFFF','63','2','256','0','0',NULL,'1','374','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','bonus bAllStats,5;','','');
REPLACE INTO `item_db` VALUES ('5367','Hyegun_Hat','Hyegun Hat','5','20','10','100','0','0','5','0','1','0xFFFFFFFFFFFFFFFF','63','2','769','0','10',NULL,'0','375','0','0','0','0','73',NULL,'0',NULL,'0',NULL,'0','bonus bMdef,3; bonus2 bSubRace,RC_Demon,10;','','');
REPLACE INTO `item_db` VALUES ('5368','White_Wing','White Wing','5','20','10','100','0','0','2','0','0','0xFFFFFFFFFFFFFFFF','63','2','256','0','0',NULL,'1','38','0','0','0','0','475',NULL,'0',NULL,'0',NULL,'0','bonus2 bAddMonsterDropItem,12280,300;','','');
diff --git a/sql-files/item_db_re.sql b/sql-files/item_db_re.sql
index bcd6e4d71..7d0f42257 100644
--- a/sql-files/item_db_re.sql
+++ b/sql-files/item_db_re.sql
@@ -3435,7 +3435,7 @@ REPLACE INTO `item_db` VALUES ('5361','Gang_Scarf','Gangster Scarf','5','20','10
REPLACE INTO `item_db` VALUES ('5362','Ninja_Scroll','Ninja Scroll','5','20','10','200','0','0','0','0','0','0xFFFFFFFFFFFFFFFF','63','2','1','0','0',NULL,'0','370','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','bonus bUnbreakableHelm,0; bonus bMatkRate,1;','','');
REPLACE INTO `item_db` VALUES ('5363','Helm_Of_Abyss','Abysmal Knight Helm','5','20','10','1000','0','0','9','0','1','0x654E2','63','2','256','0','70',NULL,'1','371','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','bonus2 bSubRace,RC_DemiPlayer,-10; bonus2 bSubRace,RC_Boss,10;','','');
REPLACE INTO `item_db` VALUES ('5364','Dark_Snake_Lord_Hat','Evil Snake Lord Hat','5','20','10','500','0','0','4','0','1','0xFFFFFFFFFFFFFFFF','63','2','256','0','150',NULL,'1','372','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','bonus bStr,1; bonus bInt,1; bonus bAgi,2; bonus2 bAddMonsterDropItem,12582,30;','','');
-REPLACE INTO `item_db` VALUES ('5365','Fried_Egg','Mangolia Hat','5','20','10','100','0','0','2','0','1','0xFFFFFFFFFFFFFFFF','63','2','256','0','0',NULL,'0','373','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','bonus2 bResEff,Eff_Stun,500; skill HT_FLASHER,1;','','');
+REPLACE INTO `item_db` VALUES ('5365','Fried_Egg','Mangolia Hat','5','20','10','100','0','0','2','0','1','0xFFFFFFFFFFFFFFFF','63','2','256','0','0',NULL,'0','373','0','0','0','0','1',NULL,'0',NULL,'0',NULL,'0','bonus bBaseAtk, 5; bonus5 bAutoSpellWhenHit, BS_GREED, 1, 10, BF_SHORT, 0;','','');
REPLACE INTO `item_db` VALUES ('5366','Hat_0f_King','Love Dad Bandana','5','20','10','200','0','0','5','0','0','0xFFFFFFFFFFFFFFFF','63','2','256','0','0',NULL,'1','374','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','bonus bAllStats,5;','','');
REPLACE INTO `item_db` VALUES ('5367','Hyegun_Hat','Yao Jun Hat','5','20','10','100','0','0','5','0','1','0xFFFFFFFFFFFFFFFF','63','2','769','0','10',NULL,'0','375','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','bonus bMdef,3; bonus2 bAddRaceTolerance,RC_Demon,10;','','');
REPLACE INTO `item_db` VALUES ('5368','White_Wing','White Wing','5','20','10','100','0','0','4','0','0','0xFFFFFFFFFFFFFFFF','63','2','256','0','0',NULL,'1','38','0','0','0','0','475',NULL,'0',NULL,'0',NULL,'0','bonus2 bAddMonsterDropItem,12280,300;','','');
diff --git a/sql-files/logs.sql b/sql-files/logs.sql
index 0c97fdecf..ab722a2fe 100644
--- a/sql-files/logs.sql
+++ b/sql-files/logs.sql
@@ -144,7 +144,7 @@ CREATE TABLE IF NOT EXISTS `picklog` (
`id` INT(11) NOT NULL AUTO_INCREMENT,
`time` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
`char_id` INT(11) NOT NULL DEFAULT '0',
- `type` ENUM('M','P','L','T','V','S','N','C','A','R','G','E','B','O','I','X','D','U') NOT NULL DEFAULT 'P',
+ `type` ENUM('M','P','L','T','V','S','N','C','A','R','G','E','B','O','I','X','D','U','K','Y','Z','W','Q','J','H','@','0','1','2') NOT NULL DEFAULT 'P',
`nameid` INT(11) NOT NULL DEFAULT '0',
`amount` INT(11) NOT NULL DEFAULT '1',
`refine` TINYINT(3) UNSIGNED NOT NULL DEFAULT '0',
diff --git a/sql-files/main.sql b/sql-files/main.sql
index 1ed751d15..e2717cdc5 100644
--- a/sql-files/main.sql
+++ b/sql-files/main.sql
@@ -824,6 +824,7 @@ INSERT IGNORE INTO `sql_updates` (`timestamp`) VALUES (1436360978); -- 2015-07-0
INSERT IGNORE INTO `sql_updates` (`timestamp`) VALUES (1440688342); -- 2015-08-27--20-42.sql
INSERT IGNORE INTO `sql_updates` (`timestamp`) VALUES (1450241859); -- 2015-12-16--12-57.sql
INSERT IGNORE INTO `sql_updates` (`timestamp`) VALUES (1450367880); -- 2015-12-17--15-58.sql
+INSERT IGNORE INTO `sql_updates` (`timestamp`) VALUES (1457638175); -- 2016-03-10--22-18.sql
--
-- Table structure for table `storage`
diff --git a/sql-files/upgrades/2016-03-10--22-18.sql b/sql-files/upgrades/2016-03-10--22-18.sql
new file mode 100644
index 000000000..80266bcca
--- /dev/null
+++ b/sql-files/upgrades/2016-03-10--22-18.sql
@@ -0,0 +1,22 @@
+#1457638175
+
+-- This file is part of Hercules.
+-- http://herc.ws - http://github.com/HerculesWS/Hercules
+--
+-- Copyright (C) 2015-2016 Hercules Dev Team
+--
+-- Hercules is free software: you can redistribute it and/or modify
+-- it under the terms of the GNU General Public License as published by
+-- the Free Software Foundation, either version 3 of the License, or
+-- (at your option) any later version.
+--
+-- This program is distributed in the hope that it will be useful,
+-- but WITHOUT ANY WARRANTY; without even the implied warranty of
+-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+-- GNU General Public License for more details.
+--
+-- You should have received a copy of the GNU General Public License
+-- along with this program. If not, see <http://www.gnu.org/licenses/>.
+
+ALTER TABLE `picklog` MODIFY `type` enum('M','P','L','T','V','S','N','C','A','R','G','E','B','O','I','X','D','U','K','Y','Z','W','Q','J','H','@','0','1','2') NOT NULL default 'P';
+INSERT INTO `sql_updates` (`timestamp`) VALUES (1457638175)
diff --git a/sql-files/upgrades/index.txt b/sql-files/upgrades/index.txt
index e73a8659d..6e81bd199 100644
--- a/sql-files/upgrades/index.txt
+++ b/sql-files/upgrades/index.txt
@@ -29,3 +29,4 @@
2015-07-08--13-08.sql
2015-08-27--20-42.sql
2015-12-17--15-58.sql
+2016-03-10--22-18.sql
diff --git a/sql-files/upgrades/rAthena-logs-upgrade.sql b/sql-files/upgrades/rAthena-logs-upgrade.sql
index b0faed244..5e9dbf60c 100644
--- a/sql-files/upgrades/rAthena-logs-upgrade.sql
+++ b/sql-files/upgrades/rAthena-logs-upgrade.sql
@@ -34,7 +34,7 @@ DROP TABLE IF EXISTS `cashlog`;
ALTER TABLE `mvplog` MODIFY `prize` INT(11) NOT NULL DEFAULT '0';
-- Upgrades to table `picklog`
-ALTER TABLE `picklog` MODIFY `type` enum('M','P','L','T','V','S','N','C','A','R','G','E','B','O','I','X','D','U') NOT NULL default 'P';
+ALTER TABLE `picklog` MODIFY `type` enum('M','P','L','T','V','S','N','C','A','R','G','E','B','O','I','X','D','U','K','Y','Z','W','Q','J','H','@','0','1','2') NOT NULL default 'P';
ALTER TABLE `picklog` MODIFY `nameid` INT(11) NOT NULL DEFAULT '0';
ALTER TABLE `picklog` MODIFY `card0` INT(11) NOT NULL DEFAULT '0';
ALTER TABLE `picklog` MODIFY `card1` INT(11) NOT NULL DEFAULT '0';
diff --git a/src/map/atcommand.c b/src/map/atcommand.c
index f28c24dcb..e422a5de4 100644
--- a/src/map/atcommand.c
+++ b/src/map/atcommand.c
@@ -3643,6 +3643,8 @@ ACMD(reloadbattleconf)
memcpy(&prev_config, &battle_config, sizeof(prev_config));
battle->config_read(map->BATTLE_CONF_FILENAME);
+ if (prev_config.feature_roulette == 0 && battle_config.feature_roulette == 1 && !clif->parse_roulette_db())
+ battle_config.feature_roulette = 0;
if( prev_config.item_rate_mvp != battle_config.item_rate_mvp
|| prev_config.item_rate_common != battle_config.item_rate_common
@@ -5262,7 +5264,7 @@ ACMD(clearcart)
for( i = 0; i < MAX_CART; i++ )
if(sd->status.cart[i].nameid > 0)
- pc->cart_delitem(sd, i, sd->status.cart[i].amount, 1, LOG_TYPE_OTHER);
+ pc->cart_delitem(sd, i, sd->status.cart[i].amount, 1, LOG_TYPE_COMMAND);
clif->clearcart(fd);
clif->updatestatus(sd,SP_CARTINFO);
diff --git a/src/map/chrif.c b/src/map/chrif.c
index 578942897..70339c378 100644
--- a/src/map/chrif.c
+++ b/src/map/chrif.c
@@ -933,14 +933,14 @@ bool chrif_divorceack(int char_id, int partner_id) {
sd->status.partner_id = 0;
for(i = 0; i < MAX_INVENTORY; i++)
if (sd->status.inventory[i].nameid == WEDDING_RING_M || sd->status.inventory[i].nameid == WEDDING_RING_F)
- pc->delitem(sd, i, 1, 0, DELITEM_NORMAL, LOG_TYPE_OTHER);
+ pc->delitem(sd, i, 1, 0, DELITEM_NORMAL, LOG_TYPE_DIVORCE);
}
if( ( sd = map->charid2sd(partner_id) ) != NULL && sd->status.partner_id == char_id ) {
sd->status.partner_id = 0;
for(i = 0; i < MAX_INVENTORY; i++)
if (sd->status.inventory[i].nameid == WEDDING_RING_M || sd->status.inventory[i].nameid == WEDDING_RING_F)
- pc->delitem(sd, i, 1, 0, DELITEM_NORMAL, LOG_TYPE_OTHER);
+ pc->delitem(sd, i, 1, 0, DELITEM_NORMAL, LOG_TYPE_DIVORCE);
}
return true;
diff --git a/src/map/clif.c b/src/map/clif.c
index 07b0b323b..71409fab4 100644
--- a/src/map/clif.c
+++ b/src/map/clif.c
@@ -11521,7 +11521,7 @@ void clif_parse_OneClick_ItemIdentify(int fd, struct map_session_data *sd)
return;
if ((n = pc->have_magnifier(sd) ) != INDEX_NOT_FOUND &&
- pc->delitem(sd, n, 1, 0, DELITEM_NORMAL, LOG_TYPE_OTHER) == 0)
+ pc->delitem(sd, n, 1, 0, DELITEM_NORMAL, LOG_TYPE_CONSUME) == 0)
skill->identify(sd, idx);
}
@@ -18404,7 +18404,7 @@ void clif_parse_RouletteGenerate(int fd, struct map_session_data* sd) {
it.nameid = clif->rd.nameid[stage][0];
it.identify = 1;
- pc->additem(sd, &it, clif->rd.qty[stage][0], LOG_TYPE_OTHER);/** TODO maybe a new log type for roulette items? **/
+ pc->additem(sd, &it, clif->rd.qty[stage][0], LOG_TYPE_ROULETTE);/** TODO maybe a new log type for roulette items? **/
sd->roulette.stage = 0;
result = GENERATE_ROULETTE_LOSING;
@@ -18439,7 +18439,7 @@ void clif_parse_RouletteRecvItem(int fd, struct map_session_data* sd) {
it.nameid = clif->rd.nameid[sd->roulette.prizeStage][sd->roulette.prizeIdx];
it.identify = 1;
- switch (pc->additem(sd, &it, clif->rd.qty[sd->roulette.prizeStage][sd->roulette.prizeIdx], LOG_TYPE_OTHER)) {
+ switch (pc->additem(sd, &it, clif->rd.qty[sd->roulette.prizeStage][sd->roulette.prizeIdx], LOG_TYPE_ROULETTE)) {
case 0:
p.Result = RECV_ITEM_SUCCESS;
sd->roulette.claimPrize = false;
diff --git a/src/map/itemdb.c b/src/map/itemdb.c
index 630bc4488..ce6232965 100644
--- a/src/map/itemdb.c
+++ b/src/map/itemdb.c
@@ -2343,7 +2343,7 @@ void do_init_itemdb(bool minimal) {
clif->cashshop_load();
/** it failed? we disable it **/
- if( !clif->parse_roulette_db() )
+ if (battle_config.feature_roulette == 1 && !clif->parse_roulette_db())
battle_config.feature_roulette = 0;
}
void itemdb_defaults(void) {
diff --git a/src/map/log.c b/src/map/log.c
index f757faf43..072f7b6fd 100644
--- a/src/map/log.c
+++ b/src/map/log.c
@@ -62,6 +62,16 @@ char log_picktype2char(e_log_pick_type type) {
case LOG_TYPE_BUYING_STORE: return 'B'; // (B)uying Store
case LOG_TYPE_LOOT: return 'L'; // (L)oot (consumed monster pick/drop)
case LOG_TYPE_BANK: return 'K'; // Ban(K) Transactions
+ case LOG_TYPE_DIVORCE: return 'Y'; // Divorce
+ case LOG_TYPE_ROULETTE: return 'Z'; // Roulette
+ case LOG_TYPE_RENTAL: return 'W'; // Rental
+ case LOG_TYPE_CARD: return 'Q'; // Card
+ case LOG_TYPE_INV_INVALID: return 'J'; // Invalid in inventory
+ case LOG_TYPE_CART_INVALID: return 'H'; // Invalid in cart
+ case LOG_TYPE_EGG: return '@'; // Egg
+ case LOG_TYPE_QUEST: return '0'; // Quest
+ case LOG_TYPE_SKILL: return '1'; // Skill
+ case LOG_TYPE_REFINE: return '2'; // Refine
case LOG_TYPE_OTHER: return 'X'; // Other
}
diff --git a/src/map/log.h b/src/map/log.h
index fbd0acc0e..69622adc6 100644
--- a/src/map/log.h
+++ b/src/map/log.h
@@ -57,29 +57,40 @@ typedef enum e_log_chat_type {
} e_log_chat_type;
typedef enum e_log_pick_type {
- LOG_TYPE_NONE = 0,
- LOG_TYPE_TRADE = 0x00001,
- LOG_TYPE_VENDING = 0x00002,
- LOG_TYPE_PICKDROP_PLAYER = 0x00004,
- LOG_TYPE_PICKDROP_MONSTER = 0x00008,
- LOG_TYPE_NPC = 0x00010,
- LOG_TYPE_SCRIPT = 0x00020,
- LOG_TYPE_STEAL = 0x00040,
- LOG_TYPE_CONSUME = 0x00080,
- LOG_TYPE_PRODUCE = 0x00100,
- LOG_TYPE_MVP = 0x00200,
- LOG_TYPE_COMMAND = 0x00400,
- LOG_TYPE_STORAGE = 0x00800,
- LOG_TYPE_GSTORAGE = 0x01000,
- LOG_TYPE_MAIL = 0x02000,
- LOG_TYPE_AUCTION = 0x04000,
- LOG_TYPE_BUYING_STORE = 0x08000,
- LOG_TYPE_OTHER = 0x10000,
- LOG_TYPE_BANK = 0x20000,
+ LOG_TYPE_NONE = 0x00000000,
+ LOG_TYPE_TRADE = 0x00000001,
+ LOG_TYPE_VENDING = 0x00000002,
+ LOG_TYPE_PICKDROP_PLAYER = 0x00000004,
+ LOG_TYPE_PICKDROP_MONSTER = 0x00000008,
+ LOG_TYPE_NPC = 0x00000010,
+ LOG_TYPE_SCRIPT = 0x00000020,
+ LOG_TYPE_STEAL = 0x00000040,
+ LOG_TYPE_CONSUME = 0x00000080,
+ LOG_TYPE_PRODUCE = 0x00000100,
+ LOG_TYPE_MVP = 0x00000200,
+ LOG_TYPE_COMMAND = 0x00000400,
+ LOG_TYPE_STORAGE = 0x00000800,
+ LOG_TYPE_GSTORAGE = 0x00001000,
+ LOG_TYPE_MAIL = 0x00002000,
+ LOG_TYPE_AUCTION = 0x00004000,
+ LOG_TYPE_BUYING_STORE = 0x00008000,
+ LOG_TYPE_OTHER = 0x00010000,
+ LOG_TYPE_BANK = 0x00020000,
+ LOG_TYPE_DIVORCE = 0x00040000,
+ LOG_TYPE_ROULETTE = 0x00080000,
+ LOG_TYPE_RENTAL = 0x00100000,
+ LOG_TYPE_CARD = 0x00200000,
+ LOG_TYPE_INV_INVALID = 0x00400000,
+ LOG_TYPE_CART_INVALID = 0x00800000,
+ LOG_TYPE_EGG = 0x01000000,
+ LOG_TYPE_QUEST = 0x02000000,
+ LOG_TYPE_SKILL = 0x04000000,
+ LOG_TYPE_REFINE = 0x08000000,
+
// combinations
LOG_TYPE_LOOT = LOG_TYPE_PICKDROP_MONSTER|LOG_TYPE_CONSUME,
// all
- LOG_TYPE_ALL = 0xFFFFF,
+ LOG_TYPE_ALL = 0xFFFFFFFF,
} e_log_pick_type;
/// filters for item logging
diff --git a/src/map/map.h b/src/map/map.h
index ff7ca2d38..54b0c3575 100644
--- a/src/map/map.h
+++ b/src/map/map.h
@@ -398,7 +398,7 @@ struct flooritem_data {
struct item item_data;
};
-enum status_point_types {
+enum status_point_types { //we better clean up this enum and change it name [Hemagx]
SP_SPEED,SP_BASEEXP,SP_JOBEXP,SP_KARMA,SP_MANNER,SP_HP,SP_MAXHP,SP_SP, // 0-7
SP_MAXSP,SP_STATUSPOINT,SP_0a,SP_BASELEVEL,SP_SKILLPOINT,SP_STR,SP_AGI,SP_VIT, // 8-15
SP_INT,SP_DEX,SP_LUK,SP_CLASS,SP_ZENY,SP_SEX,SP_NEXTBASEEXP,SP_NEXTJOBEXP, // 16-23
diff --git a/src/map/pc.c b/src/map/pc.c
index 7b4d47db2..e958f32b6 100644
--- a/src/map/pc.c
+++ b/src/map/pc.c
@@ -539,7 +539,7 @@ void pc_rental_expire(struct map_session_data *sd, int i) {
}
clif->rental_expired(sd->fd, i, sd->status.inventory[i].nameid);
- pc->delitem(sd, i, sd->status.inventory[i].amount, 0, DELITEM_NORMAL, LOG_TYPE_OTHER);
+ pc->delitem(sd, i, sd->status.inventory[i].amount, 0, DELITEM_NORMAL, LOG_TYPE_RENTAL);
}
void pc_inventory_rentals(struct map_session_data *sd)
{
@@ -4136,7 +4136,7 @@ int pc_insert_card(struct map_session_data* sd, int idx_card, int idx_equip)
// remember the card id to insert
nameid = sd->status.inventory[idx_card].nameid;
- if( pc->delitem(sd, idx_card, 1, 1, DELITEM_NORMAL, LOG_TYPE_OTHER) == 1 )
+ if( pc->delitem(sd, idx_card, 1, 1, DELITEM_NORMAL, LOG_TYPE_CARD) == 1 )
{// failed
clif->insert_card(sd,idx_equip,idx_card,1);
}
@@ -4146,9 +4146,9 @@ int pc_insert_card(struct map_session_data* sd, int idx_card, int idx_equip)
ARR_FIND( 0, sd->inventory_data[idx_equip]->slot, i, sd->status.inventory[idx_equip].card[i] == 0);
if (i == sd->inventory_data[idx_equip]->slot)
return 0; // no free slots
- logs->pick_pc(sd, LOG_TYPE_OTHER, -1, &sd->status.inventory[idx_equip],sd->inventory_data[idx_equip]);
+ logs->pick_pc(sd, LOG_TYPE_CARD, -1, &sd->status.inventory[idx_equip],sd->inventory_data[idx_equip]);
sd->status.inventory[idx_equip].card[i] = nameid;
- logs->pick_pc(sd, LOG_TYPE_OTHER, 1, &sd->status.inventory[idx_equip],sd->inventory_data[idx_equip]);
+ logs->pick_pc(sd, LOG_TYPE_CARD, 1, &sd->status.inventory[idx_equip],sd->inventory_data[idx_equip]);
clif->insert_card(sd,idx_equip,idx_card,0);
return 1;
}
@@ -9905,7 +9905,7 @@ int pc_checkitem(struct map_session_data *sd)
if (!itemdb_available(id)) {
ShowWarning("Removed invalid/disabled item id %d from inventory (amount=%d, char_id=%d).\n", id, sd->status.inventory[i].amount, sd->status.char_id);
- pc->delitem(sd, i, sd->status.inventory[i].amount, 0, DELITEM_NORMAL, LOG_TYPE_OTHER);
+ pc->delitem(sd, i, sd->status.inventory[i].amount, 0, DELITEM_NORMAL, LOG_TYPE_INV_INVALID);
continue;
}
@@ -9921,7 +9921,7 @@ int pc_checkitem(struct map_session_data *sd)
if( !itemdb_available(id) ) {
ShowWarning("Removed invalid/disabled item id %d from cart (amount=%d, char_id=%d).\n", id, sd->status.cart[i].amount, sd->status.char_id);
- pc->cart_delitem(sd, i, sd->status.cart[i].amount, 0, LOG_TYPE_OTHER);
+ pc->cart_delitem(sd, i, sd->status.cart[i].amount, 0, LOG_TYPE_CART_INVALID);
continue;
}
@@ -10139,9 +10139,9 @@ int pc_divorce(struct map_session_data *sd)
for( i = 0; i < MAX_INVENTORY; i++ )
{
if( sd->status.inventory[i].nameid == WEDDING_RING_M || sd->status.inventory[i].nameid == WEDDING_RING_F )
- pc->delitem(sd, i, 1, 0, DELITEM_NORMAL, LOG_TYPE_OTHER);
+ pc->delitem(sd, i, 1, 0, DELITEM_NORMAL, LOG_TYPE_DIVORCE);
if( p_sd->status.inventory[i].nameid == WEDDING_RING_M || p_sd->status.inventory[i].nameid == WEDDING_RING_F )
- pc->delitem(p_sd, i, 1, 0, DELITEM_NORMAL, LOG_TYPE_OTHER);
+ pc->delitem(p_sd, i, 1, 0, DELITEM_NORMAL, LOG_TYPE_DIVORCE);
}
clif->divorced(sd, p_sd->status.name);
diff --git a/src/map/pet.c b/src/map/pet.c
index 256324d29..e2b257e10 100644
--- a/src/map/pet.c
+++ b/src/map/pet.c
@@ -317,7 +317,7 @@ int pet_return_egg(struct map_session_data *sd, struct pet_data *pd)
tmp_item.card[1] = GetWord(pd->pet.pet_id,0);
tmp_item.card[2] = GetWord(pd->pet.pet_id,1);
tmp_item.card[3] = pd->pet.rename_flag;
- if((flag = pc->additem(sd,&tmp_item,1,LOG_TYPE_OTHER))) {
+ if((flag = pc->additem(sd,&tmp_item,1,LOG_TYPE_EGG))) {
clif->additem(sd,0,0,flag);
map->addflooritem(&sd->bl, &tmp_item, 1, sd->bl.m, sd->bl.x, sd->bl.y, 0, 0, 0, 0);
}
@@ -464,7 +464,7 @@ int pet_recv_petdata(int account_id,struct s_pet *p,int flag) {
return 1;
}
if (!pet->birth_process(sd,p)) //Pet hatched. Delete egg.
- pc->delitem(sd, i, 1, 0, DELITEM_NORMAL, LOG_TYPE_OTHER);
+ pc->delitem(sd, i, 1, 0, DELITEM_NORMAL, LOG_TYPE_EGG);
} else {
pet->data_init(sd,p);
if(sd->pd && sd->bl.prev != NULL) {
@@ -703,7 +703,7 @@ int pet_equipitem(struct map_session_data *sd,int index) {
return 1;
}
- pc->delitem(sd, index, 1, 0, DELITEM_NORMAL, LOG_TYPE_OTHER);
+ pc->delitem(sd, index, 1, 0, DELITEM_NORMAL, LOG_TYPE_CONSUME);
pd->pet.equip = nameid;
status->set_viewdata(&pd->bl, pd->pet.class_); //Updates view_data.
clif->send_petdata(NULL, sd->pd, 3, sd->pd->vd.head_bottom);
@@ -734,7 +734,7 @@ int pet_unequipitem(struct map_session_data *sd, struct pet_data *pd) {
memset(&tmp_item,0,sizeof(tmp_item));
tmp_item.nameid = nameid;
tmp_item.identify = 1;
- if((flag = pc->additem(sd,&tmp_item,1,LOG_TYPE_OTHER))) {
+ if((flag = pc->additem(sd,&tmp_item,1,LOG_TYPE_CONSUME))) {
clif->additem(sd,0,0,flag);
map->addflooritem(&sd->bl, &tmp_item, 1, sd->bl.m, sd->bl.x, sd->bl.y, 0, 0, 0, 0);
}
diff --git a/src/map/quest.c b/src/map/quest.c
index bf0a76b16..79328ae9d 100644
--- a/src/map/quest.c
+++ b/src/map/quest.c
@@ -316,7 +316,7 @@ void quest_update_objective(struct map_session_data *sd, int mob_id)
item.nameid = dropitem->nameid;
item.identify = itemdb->isidentified2(data);
item.amount = 1;
- if((temp = pc->additem(sd, &item, 1, LOG_TYPE_OTHER)) != 0) { // TODO: We might want a new log type here?
+ if((temp = pc->additem(sd, &item, 1, LOG_TYPE_QUEST)) != 0) { // TODO: We might want a new log type here?
// Failed to obtain the item
clif->additem(sd, 0, 0, temp);
}
diff --git a/src/map/script.c b/src/map/script.c
index 7d5ce7d43..67413669b 100644
--- a/src/map/script.c
+++ b/src/map/script.c
@@ -2349,6 +2349,8 @@ void read_constdb(void)
} else {
value = libconfig->setting_get_int(t);
}
+ if (is_parameter)
+ ShowWarning("read_constdb: Defining parameters in the constants configuration is deprecated and will no longer be possible in a future version. Parameters should be defined in source. (parameter = '%s')\n", name);
script->set_constant(name, value, is_parameter, is_deprecated);
}
script->constdb_comment(NULL);
@@ -2367,6 +2369,49 @@ void script_constdb_comment(const char *comment)
(void)comment;
}
+void script_load_parameters(void)
+{
+ int i = 0;
+ struct {
+ char *name;
+ enum status_point_types type;
+ } parameters[] = {
+ {"BaseExp", SP_BASEEXP},
+ {"JobExp", SP_JOBEXP},
+ {"Karma", SP_KARMA},
+ {"Manner", SP_MANNER},
+ {"Hp", SP_HP},
+ {"MaxHp", SP_MAXHP},
+ {"Sp", SP_SP},
+ {"MaxSp", SP_MAXSP},
+ {"StatusPoint", SP_STATUSPOINT},
+ {"BaseLevel", SP_BASELEVEL},
+ {"SkillPoint", SP_SKILLPOINT},
+ {"Class", SP_CLASS},
+ {"Zeny", SP_ZENY},
+ {"Sex", SP_SEX},
+ {"NextBaseExp", SP_NEXTBASEEXP},
+ {"NextJobExp", SP_NEXTJOBEXP},
+ {"Weight", SP_WEIGHT},
+ {"MaxWeight", SP_MAXWEIGHT},
+ {"JobLevel", SP_JOBLEVEL},
+ {"Upper", SP_UPPER},
+ {"BaseJob", SP_BASEJOB},
+ {"BaseClass", SP_BASECLASS},
+ {"killerrid", SP_KILLERRID},
+ {"killedrid", SP_KILLEDRID},
+ {"SlotChange", SP_SLOTCHANGE},
+ {"CharRename", SP_CHARRENAME},
+ {"ModExp", SP_MOD_EXP},
+ {"ModDrop", SP_MOD_DROP},
+ {"ModDeath", SP_MOD_DEATH},
+ };
+
+ script->constdb_comment("Parameters");
+ for (i=0; i < ARRAYLENGTH(parameters); ++i)
+ script->set_constant(parameters[i].name, parameters[i].type, true, false);
+ script->constdb_comment(NULL);
+}
// Standard UNIX tab size is 8
#define TAB_SIZE 8
#define update_tabstop(tabstop,chars) \
@@ -5141,6 +5186,7 @@ void do_init_script(bool minimal) {
script->parse_builtin();
script->read_constdb();
+ script->load_parameters();
script->hardcoded_constants();
if (minimal)
@@ -21161,6 +21207,7 @@ void script_defaults(void) {
script->parse_line = parse_line;
script->read_constdb = read_constdb;
script->constdb_comment = script_constdb_comment;
+ script->load_parameters = script_load_parameters;
script->print_line = script_print_line;
script->errorwarning_sub = script_errorwarning_sub;
script->set_reg = set_reg;
diff --git a/src/map/script.h b/src/map/script.h
index 351ccd02a..fffe1fb1c 100644
--- a/src/map/script.h
+++ b/src/map/script.h
@@ -725,6 +725,7 @@ struct script_interface {
const char* (*parse_line) (const char *p);
void (*read_constdb) (void);
void (*constdb_comment) (const char *comment);
+ void (*load_parameters) (void);
const char* (*print_line) (StringBuf *buf, const char *p, const char *mark, int line);
void (*errorwarning_sub) (StringBuf *buf, const char *src, const char *file, int start_line, const char *error_msg, const char *error_pos);
int (*set_reg) (struct script_state *st, struct map_session_data *sd, int64 num, const char *name, const void *value, struct reg_db *ref);
diff --git a/src/map/skill.c b/src/map/skill.c
index de5368cdf..8271991fe 100644
--- a/src/map/skill.c
+++ b/src/map/skill.c
@@ -7505,7 +7505,7 @@ int skill_castend_nodamage_id(struct block_list *src, struct block_list *bl, uin
memset(&item_tmp,0,sizeof(item_tmp));
item_tmp.nameid = skill->dbs->db[su->group->skill_id].itemid[i];
item_tmp.identify = 1;
- if (item_tmp.nameid && (success=pc->additem(sd,&item_tmp,skill->dbs->db[su->group->skill_id].amount[i],LOG_TYPE_OTHER)) != 0) {
+ if (item_tmp.nameid && (success=pc->additem(sd,&item_tmp,skill->dbs->db[su->group->skill_id].amount[i],LOG_TYPE_SKILL)) != 0) {
clif->additem(sd,0,0,success);
map->addflooritem(&sd->bl, &item_tmp, skill->dbs->db[su->group->skill_id].amount[i], sd->bl.m, sd->bl.x, sd->bl.y, 0, 0, 0, 0);
}
@@ -7517,7 +7517,7 @@ int skill_castend_nodamage_id(struct block_list *src, struct block_list *bl, uin
memset(&item_tmp,0,sizeof(item_tmp));
item_tmp.nameid = su->group->item_id?su->group->item_id:ITEMID_TRAP;
item_tmp.identify = 1;
- if (item_tmp.nameid && (flag=pc->additem(sd,&item_tmp,1,LOG_TYPE_OTHER)) != 0) {
+ if (item_tmp.nameid && (flag=pc->additem(sd,&item_tmp,1,LOG_TYPE_SKILL)) != 0) {
clif->additem(sd,0,0,flag);
map->addflooritem(&sd->bl, &item_tmp, 1, sd->bl.m, sd->bl.x, sd->bl.y, 0, 0, 0, 0);
}
@@ -15313,12 +15313,12 @@ void skill_weaponrefine (struct map_session_data *sd, int idx)
else
per += 5 * ((signed int)sd->status.job_level - 50);
- pc->delitem(sd, i, 1, 0, DELITEM_NORMAL, LOG_TYPE_OTHER); // FIXME: is this the correct reason flag?
+ pc->delitem(sd, i, 1, 0, DELITEM_NORMAL, LOG_TYPE_REFINE); // FIXME: is this the correct reason flag?
if (per > rnd() % 1000) {
int ep = 0;
- logs->pick_pc(sd, LOG_TYPE_OTHER, -1, item, ditem);
+ logs->pick_pc(sd, LOG_TYPE_REFINE, -1, item, ditem);
item->refine++;
- logs->pick_pc(sd, LOG_TYPE_OTHER, 1, item, ditem);
+ logs->pick_pc(sd, LOG_TYPE_REFINE, 1, item, ditem);
if(item->equip) {
ep = item->equip;
pc->unequipitem(sd, idx, PCUNEQUIPITEM_RECALC|PCUNEQUIPITEM_FORCE);
@@ -15351,7 +15351,7 @@ void skill_weaponrefine (struct map_session_data *sd, int idx)
if(item->equip)
pc->unequipitem(sd, idx, PCUNEQUIPITEM_RECALC|PCUNEQUIPITEM_FORCE);
clif->refine(sd->fd,1,idx,item->refine);
- pc->delitem(sd, idx, 1, 0, DELITEM_NORMAL, LOG_TYPE_OTHER);
+ pc->delitem(sd, idx, 1, 0, DELITEM_NORMAL, LOG_TYPE_REFINE);
clif->misceffect(&sd->bl,2);
clif->emotion(&sd->bl, E_OMG);
}
diff --git a/src/map/status.h b/src/map/status.h
index 4e2f1bdc0..046227b78 100644
--- a/src/map/status.h
+++ b/src/map/status.h
@@ -1789,9 +1789,13 @@ enum si_type {
//SI_DORAM_BUF_01 = 935,
//SI_DORAM_BUF_02 = 936,
//SI_SPRITEMABLE = 937,
+ //SI_EP16_2_BUFF_SS = 963,
+ //SI_EP16_2_BUFF_SC = 964,
+ //SI_EP16_2_BUFF_AC = 965,
SI_MAX,
};
+
// JOINTBEAT stackable ailments
enum e_joint_break
{
@@ -1804,7 +1808,6 @@ enum e_joint_break
BREAK_FLAGS = BREAK_ANKLE | BREAK_WRIST | BREAK_KNEE | BREAK_SHOULDER | BREAK_WAIST | BREAK_NECK,
};
-
/**
* Mob mode definitions. [Skotlex]
*
diff --git a/src/plugins/HPMHooking/HPMHooking_map.HPMHooksCore.inc b/src/plugins/HPMHooking/HPMHooking_map.HPMHooksCore.inc
index e5457e47c..caea8381e 100644
--- a/src/plugins/HPMHooking/HPMHooking_map.HPMHooksCore.inc
+++ b/src/plugins/HPMHooking/HPMHooking_map.HPMHooksCore.inc
@@ -4658,6 +4658,8 @@ struct {
struct HPMHookPoint *HP_script_read_constdb_post;
struct HPMHookPoint *HP_script_constdb_comment_pre;
struct HPMHookPoint *HP_script_constdb_comment_post;
+ struct HPMHookPoint *HP_script_load_parameters_pre;
+ struct HPMHookPoint *HP_script_load_parameters_post;
struct HPMHookPoint *HP_script_print_line_pre;
struct HPMHookPoint *HP_script_print_line_post;
struct HPMHookPoint *HP_script_errorwarning_sub_pre;
@@ -10535,6 +10537,8 @@ struct {
int HP_script_read_constdb_post;
int HP_script_constdb_comment_pre;
int HP_script_constdb_comment_post;
+ int HP_script_load_parameters_pre;
+ int HP_script_load_parameters_post;
int HP_script_print_line_pre;
int HP_script_print_line_post;
int HP_script_errorwarning_sub_pre;
diff --git a/src/plugins/HPMHooking/HPMHooking_map.HookingPoints.inc b/src/plugins/HPMHooking/HPMHooking_map.HookingPoints.inc
index 365bda5da..f6bb75104 100644
--- a/src/plugins/HPMHooking/HPMHooking_map.HookingPoints.inc
+++ b/src/plugins/HPMHooking/HPMHooking_map.HookingPoints.inc
@@ -2383,6 +2383,7 @@ struct HookingPointData HookingPoints[] = {
{ HP_POP(script->parse_line, HP_script_parse_line) },
{ HP_POP(script->read_constdb, HP_script_read_constdb) },
{ HP_POP(script->constdb_comment, HP_script_constdb_comment) },
+ { HP_POP(script->load_parameters, HP_script_load_parameters) },
{ HP_POP(script->print_line, HP_script_print_line) },
{ HP_POP(script->errorwarning_sub, HP_script_errorwarning_sub) },
{ HP_POP(script->set_reg, HP_script_set_reg) },
diff --git a/src/plugins/HPMHooking/HPMHooking_map.Hooks.inc b/src/plugins/HPMHooking/HPMHooking_map.Hooks.inc
index f8d5193e1..a94651c16 100644
--- a/src/plugins/HPMHooking/HPMHooking_map.Hooks.inc
+++ b/src/plugins/HPMHooking/HPMHooking_map.Hooks.inc
@@ -62133,6 +62133,32 @@ void HP_script_constdb_comment(const char *comment) {
}
return;
}
+void HP_script_load_parameters(void) {
+ int hIndex = 0;
+ if( HPMHooks.count.HP_script_load_parameters_pre ) {
+ void (*preHookFunc) (void);
+ *HPMforce_return = false;
+ for(hIndex = 0; hIndex < HPMHooks.count.HP_script_load_parameters_pre; hIndex++ ) {
+ preHookFunc = HPMHooks.list.HP_script_load_parameters_pre[hIndex].func;
+ preHookFunc();
+ }
+ if( *HPMforce_return ) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.script.load_parameters();
+ }
+ if( HPMHooks.count.HP_script_load_parameters_post ) {
+ void (*postHookFunc) (void);
+ for(hIndex = 0; hIndex < HPMHooks.count.HP_script_load_parameters_post; hIndex++ ) {
+ postHookFunc = HPMHooks.list.HP_script_load_parameters_post[hIndex].func;
+ postHookFunc();
+ }
+ }
+ return;
+}
const char* HP_script_print_line(StringBuf *buf, const char *p, const char *mark, int line) {
int hIndex = 0;
const char* retVal___ = NULL;
diff --git a/src/plugins/constdb2doc.c b/src/plugins/constdb2doc.c
index 1d5f37ad5..cb0b82278 100644
--- a/src/plugins/constdb2doc.c
+++ b/src/plugins/constdb2doc.c
@@ -93,6 +93,10 @@ void constdb2doc_constdb(void)
script->hardcoded_constants();
fprintf(out_fp, "\n");
+ fprintf(out_fp, "## Parameters (source)\n\n");
+ script->load_parameters();
+ fprintf(out_fp, "\n");
+
/* Unlink */
script->set_constant = script_set_constant;
script->constdb_comment = script_constdb_comment;