summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDracoRPG <DracoRPG@54d463be-8e91-2dee-dedb-b68131a5f0ec>2007-03-19 22:58:20 +0000
committerDracoRPG <DracoRPG@54d463be-8e91-2dee-dedb-b68131a5f0ec>2007-03-19 22:58:20 +0000
commit43db1f2c9eb1d648961d49a5fa28416565e333dc (patch)
treef2a6202bc00cfdf255aa7cd5112683dfe7061b6a
parentee6ed41176814afef6d4d1902311af3acf0e5929 (diff)
downloadhercules-43db1f2c9eb1d648961d49a5fa28416565e333dc.tar.gz
hercules-43db1f2c9eb1d648961d49a5fa28416565e333dc.tar.bz2
hercules-43db1f2c9eb1d648961d49a5fa28416565e333dc.tar.xz
hercules-43db1f2c9eb1d648961d49a5fa28416565e333dc.zip
Increased MAX_STATUCHANGE to 300 so we won't get the same error over and over next time we add an SC...
Reverted the map index reading for the map-server to the old system (from map_list.txt and not map_cache.dat) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@10034 54d463be-8e91-2dee-dedb-b68131a5f0ec
-rw-r--r--Changelog-Trunk.txt4
-rw-r--r--src/map/map.c13
-rw-r--r--src/map/map.h2
3 files changed, 12 insertions, 7 deletions
diff --git a/Changelog-Trunk.txt b/Changelog-Trunk.txt
index 4f64c745f..2a5ce5dad 100644
--- a/Changelog-Trunk.txt
+++ b/Changelog-Trunk.txt
@@ -4,7 +4,9 @@ AS OF SVN REV. 5091, WE ARE NOW USING TRUNK. ALL UNTESTED BUGFIXES/FEATURES GO
IF YOU HAVE A WORKING AND TESTED BUGFIX PUT IT INTO STABLE AS WELL AS TRUNK.
2007/03/20
- * Patched the MAX_STATUSCHANGE startup error [ultramage]
+ * Increased MAX_STATUSCHANGE to 300 to make room for new statuses [DracoRPG]
+ * Reverted mapindex reading from map_list.txt for the map-server [DracoRPG]
+ * Patched the MAX_STATUSCHANGE startup error [ultramage
* Removed the last argument from script command skillitem.
* Added skill ITEM_ENCHANTARMS, this is what weapon enchanting items should
use.
diff --git a/src/map/map.c b/src/map/map.c
index a438731de..f2dcd1a23 100644
--- a/src/map/map.c
+++ b/src/map/map.c
@@ -2454,7 +2454,6 @@ int map_readmap(struct map_data *m)
for(i = 0; i < map_count; i++) {
fread(&info, sizeof(info), 1, map_cache_fp);
if(strcmp(m->name, info.name) == 0) { // Map found
- m->index = info.index;
m->xs = info.xs;
m->ys = info.ys;
m->gat = (unsigned char *)aMalloc(m->xs*m->ys); // Allocate room for map cells data
@@ -2567,6 +2566,8 @@ int map_readallmaps (void)
continue;
}
+ map[i].index = mapindex_name2id(map[i].name);
+
if (uidb_get(map_db,(unsigned int)map[i].index) != NULL) {
ShowWarning("Map %s already loaded!\n", map[i].name);
if (map[i].gat) {
@@ -2579,6 +2580,8 @@ int map_readallmaps (void)
continue;
}
+ uidb_put(map_db, (unsigned int)map[i].index, &map[i]);
+
map[i].m = i;
memset(map[i].moblist, 0, sizeof(map[i].moblist)); //Initialize moblist [Skotlex]
map[i].mob_delete_timer = -1; //Initialize timer [Skotlex]
@@ -2604,9 +2607,6 @@ int map_readallmaps (void)
size = map[i].bxs * map[i].bys * sizeof(int);
map[i].block_count = (int*)aCallocA(size, 1);
map[i].block_mob_count = (int*)aCallocA(size, 1);
-
- mapindex_addmap(map[i].index, map[i].name);
- uidb_put(map_db, (unsigned int)map[i].index, &map[i]);
}
// finished map loading
@@ -3142,7 +3142,9 @@ void do_final(void) {
if (map[i].moblist[j]) aFree(map[i].moblist[j]);
}
}
-
+
+ mapindex_final();
+
id_db->destroy(id_db, NULL);
pc_db->destroy(pc_db, NULL);
charid_db->destroy(charid_db, NULL);
@@ -3296,6 +3298,7 @@ int do_init(int argc, char *argv[]) {
map_sql_init();
#endif /* not TXT_ONLY */
+ mapindex_init();
map_readallmaps();
add_timer_func_list(map_freeblock_timer, "map_freeblock_timer");
diff --git a/src/map/map.h b/src/map/map.h
index e5db5c0a0..b267bef5a 100644
--- a/src/map/map.h
+++ b/src/map/map.h
@@ -31,7 +31,7 @@
#define LIFETIME_FLOORITEM 60
#define DAMAGELOG_SIZE 30
#define LOOTITEM_SIZE 10
-#define MAX_STATUSCHANGE 251
+#define MAX_STATUSCHANGE 300
//Quick defines to know which are the min-max common ailments. [Skotlex]
//Because of the way the headers are included.. these must be replaced for actual values.
//Remember to update as needed! Min is SC_STONE and max is SC_DPOISON currently.