diff options
author | Lupus <Lupus@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2006-04-27 05:55:23 +0000 |
---|---|---|
committer | Lupus <Lupus@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2006-04-27 05:55:23 +0000 |
commit | 3dc2a55dcdf7b3919b6024d7a9aeec26a7416b6f (patch) | |
tree | 0a80608974a2a2151121f9afe8d8ee7da07fdb41 | |
parent | 51b1d5af470c1f34d9ba99c3f2c8c9b8dbb3e5af (diff) | |
download | hercules-3dc2a55dcdf7b3919b6024d7a9aeec26a7416b6f.tar.gz hercules-3dc2a55dcdf7b3919b6024d7a9aeec26a7416b6f.tar.bz2 hercules-3dc2a55dcdf7b3919b6024d7a9aeec26a7416b6f.tar.xz hercules-3dc2a55dcdf7b3919b6024d7a9aeec26a7416b6f.zip |
updated 'setmapflag' script command
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@6304 54d463be-8e91-2dee-dedb-b68131a5f0ec
-rw-r--r-- | Changelog-Trunk.txt | 6 | ||||
-rw-r--r-- | db/const.txt | 31 | ||||
-rw-r--r-- | src/map/script.c | 20 |
3 files changed, 41 insertions, 16 deletions
diff --git a/Changelog-Trunk.txt b/Changelog-Trunk.txt index ae28cf207..13942be3c 100644 --- a/Changelog-Trunk.txt +++ b/Changelog-Trunk.txt @@ -2,6 +2,12 @@ Date Added AS OF SVN REV. 5091, WE ARE NOW USING TRUNK. ALL UNTESTED BUGFIXES/FEATURES GO INTO TRUNK.
IF YOU HAVE A WORKING AND TESTED BUGFIX PUT IT INTO STABLE AS WELL AS TRUNK.
+2006/04/27
+ * Added 3rd argument to script command 'setmapflag' thx to Jbain [Lupus]
+ setmapflag "prontera.gat",mf_pvp;
+ setmapflag "prontera.gat",mf_jexp,100;
+ Now you can dinamically increase/decrease EXP rate on set maps
+ e.g. you can lower EXP on the cmd_fild02 ^_-
2006/04/26
* Updated sql-files/item_db.sql to current. [Skotlex]
* Item use interval is set to a default of 100ms now since that should be
diff --git a/db/const.txt b/db/const.txt index 9cb0906ab..195b9ed81 100644 --- a/db/const.txt +++ b/db/const.txt @@ -111,20 +111,23 @@ mf_rain 20 mf_indoors 21
mf_nogo 22
mf_clouds 23
-mf_fireworks 24
-mf_gvg_castle 25
-mf_gvg_dungeon 26
-mf_nightenabled 27
-mf_nobaseexp 28
-mf_nojobexp 29
-mf_nomobloot 30
-mf_nomvploot 31
-mf_noreturn 32
-mf_nowarpto 33
-mf_nonightmaredrop 34
-mf_restricted 35
-mf_nocommand 36
-mf_nodrop 37
+mf_clouds2 24
+mf_fireworks 25
+mf_gvg_castle 26
+mf_gvg_dungeon 27
+mf_nightenabled 28
+mf_nobaseexp 29
+mf_nojobexp 30
+mf_nomobloot 31
+mf_nomvploot 32
+mf_noreturn 33
+mf_nowarpto 34
+mf_nonightmaredrop 35
+mf_restricted 36
+mf_nocommand 37
+mf_nodrop 38
+mf_jexp 39
+mf_bexp 40
cell_wall 1
cell_water 3
diff --git a/src/map/script.c b/src/map/script.c index 81b98fa55..40cb81e93 100644 --- a/src/map/script.c +++ b/src/map/script.c @@ -607,7 +607,7 @@ struct { {buildin_detachrid,"detachrid",""},
{buildin_isloggedin,"isloggedin","i"},
{buildin_setmapflagnosave,"setmapflagnosave","ssii"},
- {buildin_setmapflag,"setmapflag","si"},
+ {buildin_setmapflag,"setmapflag","si*"},
{buildin_removemapflag,"removemapflag","si"},
{buildin_pvpon,"pvpon","s"},
{buildin_pvpoff,"pvpoff","s"},
@@ -6629,7 +6629,7 @@ enum { MF_NOMEMO,MF_NOTELEPORT,MF_NOSAVE,MF_NOBRANCH,MF_NOPENALTY,MF_NOZENYPENA MF_NOWARP,MF_FREE,MF_NOICEWALL,MF_SNOW,MF_FOG,MF_SAKURA,MF_LEAVES,MF_RAIN,
MF_INDOORS,MF_NOGO,MF_CLOUDS,MF_CLOUDS2,MF_FIREWORKS,MF_GVG_CASTLE,MF_GVG_DUNGEON,MF_NIGHTENABLED,
MF_NOBASEEXP, MF_NOJOBEXP, MF_NOMOBLOOT, MF_NOMVPLOOT, MF_NORETURN, MF_NOWARPTO, MF_NIGHTMAREDROP,
- MF_RESTRICTED, MF_NOCOMMAND, MF_NODROP };
+ MF_RESTRICTED, MF_NOCOMMAND, MF_NODROP, MF_JEXP, MF_BEXP };
int buildin_setmapflagnosave(struct script_state *st)
{
@@ -6658,9 +6658,13 @@ int buildin_setmapflag(struct script_state *st) {
int m,i;
char *str;
+ char *val;
str=conv_str(st,& (st->stack->stack_data[st->start+2]));
i=conv_num(st,& (st->stack->stack_data[st->start+3]));
+ if(st->end>st->start+4){
+ val=conv_str(st,& (st->stack->stack_data[st->start+4]));
+ }
m = map_mapname2mapid(str);
if(m >= 0) {
switch(i) {
@@ -6775,6 +6779,12 @@ int buildin_setmapflag(struct script_state *st) case MF_NOCOMMAND:
map[m].flag.nocommand=1;
break;
+ case MF_JEXP:
+ map[m].jexp = (atoi(val) < 0) ? 100 : atoi(val);
+ break;
+ case MF_BEXP:
+ map[m].bexp = (atoi(val) < 0) ? 100 : atoi(val);
+ break;
}
}
@@ -6905,6 +6915,12 @@ int buildin_removemapflag(struct script_state *st) case MF_NOCOMMAND:
map[m].flag.nocommand=0;
break;
+ case MF_JEXP:
+ map[m].jexp=100;
+ break;
+ case MF_BEXP:
+ map[m].bexp=100;
+ break;
}
}
|