diff options
-rw-r--r-- | 3rdparty/libconfig/libconfig.c | 2 | ||||
-rw-r--r-- | 3rdparty/libconfig/scanner.c | 2 | ||||
-rw-r--r-- | db/pre-re/skill_tree.conf | 2 | ||||
-rw-r--r-- | db/re/skill_tree.conf | 2 | ||||
-rw-r--r-- | doc/script_commands.txt | 13 | ||||
-rw-r--r-- | src/map/battle.c | 2 | ||||
-rw-r--r-- | src/map/npc.h | 2 | ||||
-rw-r--r-- | src/map/status.c | 8 |
8 files changed, 27 insertions, 6 deletions
diff --git a/3rdparty/libconfig/libconfig.c b/3rdparty/libconfig/libconfig.c index 4cc272c9f..e2c583310 100644 --- a/3rdparty/libconfig/libconfig.c +++ b/3rdparty/libconfig/libconfig.c @@ -540,7 +540,7 @@ static int __config_validate_name(const char *name) for(++p; *p; ++p) { - if(! (isalpha((unsigned char)*p) || isdigit((unsigned char)*p) || strchr("*_-", (int)*p))) + if(! (isalpha((unsigned char)*p) || isdigit((unsigned char)*p) || strchr("*_-'", (int)*p))) return(CONFIG_FALSE); } diff --git a/3rdparty/libconfig/scanner.c b/3rdparty/libconfig/scanner.c index c2eb7d188..118fcf8ad 100644 --- a/3rdparty/libconfig/scanner.c +++ b/3rdparty/libconfig/scanner.c @@ -399,7 +399,7 @@ static yyconst flex_int32_t yy_ec[256] = 1, 1, 1, 1, 1, 1, 1, 1, 2, 3, 1, 4, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 2, 1, 6, 7, 1, 1, 1, 1, 8, + 1, 2, 1, 6, 7, 1, 1, 1, 26, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 17, 17, 17, 17, 17, 17, 17, 17, 18, 19, 1, 20, 1, 1, 21, 22, 23, 23, 23, 24, 25, diff --git a/db/pre-re/skill_tree.conf b/db/pre-re/skill_tree.conf index 45aea7a20..19712da50 100644 --- a/db/pre-re/skill_tree.conf +++ b/db/pre-re/skill_tree.conf @@ -1950,7 +1950,7 @@ Baby_Swordsman: { inherit: ( "Swordsman" ); } Baby_Magician: { - inherit: ( "Priest" ); + inherit: ( "Magician" ); } Baby_Archer: { inherit: ( "Archer" ); diff --git a/db/re/skill_tree.conf b/db/re/skill_tree.conf index 28908c0e7..4e4aa3c11 100644 --- a/db/re/skill_tree.conf +++ b/db/re/skill_tree.conf @@ -1947,7 +1947,7 @@ Baby_Swordsman: { inherit: ( "Swordsman" ); } Baby_Magician: { - inherit: ( "Priest" ); + inherit: ( "Magician" ); } Baby_Archer: { inherit: ( "Archer" ); diff --git a/doc/script_commands.txt b/doc/script_commands.txt index ccb45e5e1..2e8afe5dd 100644 --- a/doc/script_commands.txt +++ b/doc/script_commands.txt @@ -1063,6 +1063,19 @@ command, use the script command in the following format: This will display 3 different lines while only consuming a single line in the relevant script file. +If you're using a client from 2011-10-10aRagexe.exe onwards, you can also +use automatic navigation and open URLs in browser by using some HTML-like +labels. For example: + + mes "go to <NAVI>[Hat Maker]<INFO>izlude,131,148,</INFO></NAVI> to make hats"; + +Will make the [Hat Maker] text clickable in the client and start a navigation +to that point. + + mes "You can <URL>Google<INFO>http://www.google.com/</INFO></URL> anything"; + +Clicking Google will open the browser and point to Google website. + --------------------------------------- *next; diff --git a/src/map/battle.c b/src/map/battle.c index bded771e7..2fca9ef9c 100644 --- a/src/map/battle.c +++ b/src/map/battle.c @@ -1133,7 +1133,7 @@ int battle_calc_cardfix(int attack_type, struct block_list *src, struct block_li if( wflag&BF_SHORT ) cardfix = cardfix * (100 - tsd->bonus.near_attack_def_rate) / 100; else // BF_LONG (there's no other choice) - cardfix = cardfix * (100 - tsd->bonus.near_attack_def_rate) / 100; + cardfix = cardfix * (100 - tsd->bonus.long_attack_def_rate) / 100; if( tsd->sc.data[SC_PROTECT_DEF] ) cardfix = cardfix * (100 - tsd->sc.data[SC_PROTECT_DEF]->val1) / 100; diff --git a/src/map/npc.h b/src/map/npc.h index 16e6fe74c..48c27b297 100644 --- a/src/map/npc.h +++ b/src/map/npc.h @@ -99,7 +99,7 @@ enum actor_classes //Checks if a given id is a valid npc id. [Skotlex] //Since new npcs are added all the time, the max valid value is the one before the first mob (Scorpion = 1001) -#define npcdb_checkid(id) ( ( (id) >= 46 && (id) <= 125) || (id) == HIDDEN_WARP_CLASS || ( (id) > 400 && (id) < MAX_NPC_CLASS ) || (id) == INVISIBLE_CLASS || ( (id) > 10000 && (id) < 10049 ) ) +#define npcdb_checkid(id) ( ( (id) >= 46 && (id) <= 125) || (id) == HIDDEN_WARP_CLASS || ( (id) > 400 && (id) < MAX_NPC_CLASS ) || (id) == INVISIBLE_CLASS || ( (id) > MAX_NPC_CLASS2_START && (id) < MAX_NPC_CLASS2_END ) ) #ifdef PCRE_SUPPORT void npc_chat_finalize(struct npc_data* nd); diff --git a/src/map/status.c b/src/map/status.c index 0d8bedc5e..58e844529 100644 --- a/src/map/status.c +++ b/src/map/status.c @@ -6940,6 +6940,14 @@ int status_change_start(struct block_list* bl,enum sc_type type,int rate,int val case SC_ELECTRICSHOCKER: case SC_MAGNETICFIELD: + // Masquerades + case SC__ENERVATION: + case SC__GROOMY: + case SC__LAZINESS: + case SC__UNLUCKY: + case SC__WEAKNESS: + case SC__IGNORANCE: + return 0; } } |