diff options
author | Haru <haru@dotalux.com> | 2014-02-24 10:21:27 +0100 |
---|---|---|
committer | Haru <haru@dotalux.com> | 2014-03-05 22:35:02 +0100 |
commit | d25cc9b7dbc103cf1454db37159ffffeedaac149 (patch) | |
tree | 0e4af566382b946797aa9de21df70b9bdf9d88fa /src/map/mapreg_sql.c | |
parent | 78bf8d26567a2054bd9ff5268f9f73cb07d82b98 (diff) | |
download | hercules-d25cc9b7dbc103cf1454db37159ffffeedaac149.tar.gz hercules-d25cc9b7dbc103cf1454db37159ffffeedaac149.tar.bz2 hercules-d25cc9b7dbc103cf1454db37159ffffeedaac149.tar.xz hercules-d25cc9b7dbc103cf1454db37159ffffeedaac149.zip |
Ref redesign, part 2
- Reorganized regs var/array DBMaps into a specific reg_db structure
Signed-off-by: Haru <haru@dotalux.com>
Diffstat (limited to 'src/map/mapreg_sql.c')
-rw-r--r-- | src/map/mapreg_sql.c | 52 |
1 files changed, 26 insertions, 26 deletions
diff --git a/src/map/mapreg_sql.c b/src/map/mapreg_sql.c index 926df2994..bdda652b8 100644 --- a/src/map/mapreg_sql.c +++ b/src/map/mapreg_sql.c @@ -27,7 +27,7 @@ struct mapreg_interface mapreg_s; * @return variable's integer value */ int mapreg_readreg(int64 uid) { - struct mapreg_save *m = i64db_get(mapreg->db, uid); + struct mapreg_save *m = i64db_get(mapreg->regs.vars, uid); return m?m->u.i:0; } @@ -38,7 +38,7 @@ int mapreg_readreg(int64 uid) { * @return variable's string value */ char* mapreg_readregstr(int64 uid) { - struct mapreg_save *m = i64db_get(mapreg->db, uid); + struct mapreg_save *m = i64db_get(mapreg->regs.vars, uid); return m?m->u.str:NULL; } @@ -56,7 +56,7 @@ bool mapreg_setreg(int64 uid, int val) { const char* name = script->get_str(num); if( val != 0 ) { - if( (m = i64db_get(mapreg->db,uid)) ) { + if( (m = i64db_get(mapreg->regs.vars, uid)) ) { m->u.i = val; if(name[1] != '@') { m->save = true; @@ -64,7 +64,7 @@ bool mapreg_setreg(int64 uid, int val) { } } else { if( i ) - script->array_update(&mapreg->array_db,uid,false); + script->array_update(&mapreg->regs.arrays, uid, false); m = ers_alloc(mapreg->ers, struct mapreg_save); @@ -79,15 +79,15 @@ bool mapreg_setreg(int64 uid, int val) { if( SQL_ERROR == SQL->Query(map->mysql_handle, "INSERT INTO `%s`(`varname`,`index`,`value`) VALUES ('%s','%d','%d')", mapreg->table, tmp_str, i, val) ) Sql_ShowDebug(map->mysql_handle); } - i64db_put(mapreg->db, uid, m); + i64db_put(mapreg->regs.vars, uid, m); } } else { // val == 0 if( i ) - script->array_update(&mapreg->array_db,uid,true); - if( (m = i64db_get(mapreg->db,uid)) ) { + script->array_update(&mapreg->regs.arrays, uid, true); + if( (m = i64db_get(mapreg->regs.vars, uid)) ) { ers_free(mapreg->ers, m); } - i64db_remove(mapreg->db,uid); + i64db_remove(mapreg->regs.vars, uid); if( name[1] != '@' ) {// Remove from database because it is unused. if( SQL_ERROR == SQL->Query(map->mysql_handle, "DELETE FROM `%s` WHERE `varname`='%s' AND `index`='%d'", mapreg->table, name, i) ) @@ -113,19 +113,19 @@ bool mapreg_setregstr(int64 uid, const char* str) { if( str == NULL || *str == 0 ) { if( i ) - script->array_update(&mapreg->array_db,uid,true); + script->array_update(&mapreg->regs.arrays, uid, true); if(name[1] != '@') { if( SQL_ERROR == SQL->Query(map->mysql_handle, "DELETE FROM `%s` WHERE `varname`='%s' AND `index`='%d'", mapreg->table, name, i) ) Sql_ShowDebug(map->mysql_handle); } - if( (m = i64db_get(mapreg->db,uid)) ) { + if( (m = i64db_get(mapreg->regs.vars, uid)) ) { if( m->u.str != NULL ) aFree(m->u.str); ers_free(mapreg->ers, m); } - i64db_remove(mapreg->db,uid); + i64db_remove(mapreg->regs.vars, uid); } else { - if( (m = i64db_get(mapreg->db,uid)) ) { + if( (m = i64db_get(mapreg->regs.vars, uid)) ) { if( m->u.str != NULL ) aFree(m->u.str); m->u.str = aStrdup(str); @@ -135,7 +135,7 @@ bool mapreg_setregstr(int64 uid, const char* str) { } } else { if( i ) - script->array_update(&mapreg->array_db,uid,false); + script->array_update(&mapreg->regs.arrays, uid, false); m = ers_alloc(mapreg->ers, struct mapreg_save); @@ -152,7 +152,7 @@ bool mapreg_setregstr(int64 uid, const char* str) { if( SQL_ERROR == SQL->Query(map->mysql_handle, "INSERT INTO `%s`(`varname`,`index`,`value`) VALUES ('%s','%d','%s')", mapreg->table, tmp_str, i, tmp_str2) ) Sql_ShowDebug(map->mysql_handle); } - i64db_put(mapreg->db, uid, m); + i64db_put(mapreg->regs.vars, uid, m); } } @@ -194,7 +194,7 @@ void script_load_mapreg(void) { int i = index; - if( i64db_exists(mapreg->db, reference_uid(s, i)) ) { + if( i64db_exists(mapreg->regs.vars, reference_uid(s, i)) ) { ShowWarning("load_mapreg: duplicate! '%s' => '%s' skipping...\n",varname,value); continue; } @@ -220,7 +220,7 @@ void script_save_mapreg(void) { struct mapreg_save *m = NULL; if( mapreg->dirty ) { - iter = db_iterator(mapreg->db); + iter = db_iterator(mapreg->regs.vars); for( m = dbi_first(iter); dbi_exists(iter); m = dbi_next(iter) ) { if( m->save ) { int num = script_getvarid(m->uid); @@ -284,11 +284,11 @@ int mapreg_destroyreg(DBKey key, DBData *data, va_list ap) { void mapreg_reload(void) { mapreg->save(); - mapreg->db->clear(mapreg->db, mapreg->destroyreg); + mapreg->regs.vars->clear(mapreg->regs.vars, mapreg->destroyreg); - if( mapreg->array_db ) { - mapreg->array_db->destroy(mapreg->array_db,script->array_free_db); - mapreg->array_db = NULL; + if( mapreg->regs.arrays ) { + mapreg->regs.arrays->destroy(mapreg->regs.arrays, script->array_free_db); + mapreg->regs.arrays = NULL; } mapreg->load(); @@ -300,19 +300,19 @@ void mapreg_reload(void) { void mapreg_final(void) { mapreg->save(); - mapreg->db->destroy(mapreg->db, mapreg->destroyreg); + mapreg->regs.vars->destroy(mapreg->regs.vars, mapreg->destroyreg); ers_destroy(mapreg->ers); - if( mapreg->array_db ) - mapreg->array_db->destroy(mapreg->array_db,script->array_free_db); + if( mapreg->regs.arrays ) + mapreg->regs.arrays->destroy(mapreg->regs.arrays, script->array_free_db); } /** * Initializer. */ void mapreg_init(void) { - mapreg->db = i64db_alloc(DB_OPT_BASE); + mapreg->regs.vars = i64db_alloc(DB_OPT_BASE); mapreg->ers = ers_new(sizeof(struct mapreg_save), "mapreg_sql.c::mapreg_ers", ERS_OPT_CLEAN); mapreg->load(); @@ -340,7 +340,7 @@ void mapreg_defaults(void) { mapreg = &mapreg_s; /* */ - mapreg->db = NULL; + mapreg->regs.vars = NULL; mapreg->ers = NULL; mapreg->skip_insert = false; @@ -348,7 +348,7 @@ void mapreg_defaults(void) { mapreg->dirty = false; /* */ - mapreg->array_db = NULL; + mapreg->regs.arrays = NULL; /* */ mapreg->init = mapreg_init; |