diff options
author | epoque11 <epoque11@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2012-03-20 14:01:10 +0000 |
---|---|---|
committer | epoque11 <epoque11@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2012-03-20 14:01:10 +0000 |
commit | 78fe9886d39b11a38903ffc513a70fa2b00e43f3 (patch) | |
tree | 24d372dab35483df25a60a0a6ebb8ddbc8eb5e2f /src/char | |
parent | e697781ab5e618988b37951ab4e16a3e23e18655 (diff) | |
download | hercules-78fe9886d39b11a38903ffc513a70fa2b00e43f3.tar.gz hercules-78fe9886d39b11a38903ffc513a70fa2b00e43f3.tar.bz2 hercules-78fe9886d39b11a38903ffc513a70fa2b00e43f3.tar.xz hercules-78fe9886d39b11a38903ffc513a70fa2b00e43f3.zip |
- Fixed Clown/Gypsy/Minstrel/Wanderer not receiving skill points upon change-sex
- Fixed missing casts from void* to struct online_char_data* in char.c
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@15735 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src/char')
-rw-r--r-- | src/char/char.c | 16 |
1 files changed, 4 insertions, 12 deletions
diff --git a/src/char/char.c b/src/char/char.c index 7f5d8950f..33abbc25b 100644 --- a/src/char/char.c +++ b/src/char/char.c @@ -214,7 +214,7 @@ void set_char_charselect(int account_id) { struct online_char_data* character; - character = idb_ensure(online_char_db, account_id, create_online_char_data); + character = (struct online_char_data*)idb_ensure(online_char_db, account_id, create_online_char_data); if( character->server > -1 ) if( server[character->server].users > 0 ) // Prevent this value from going negative. @@ -248,7 +248,7 @@ void set_char_online(int map_id, int char_id, int account_id) Sql_ShowDebug(sql_handle); //Check to see for online conflicts - character = idb_ensure(online_char_db, account_id, create_online_char_data); + character = (struct online_char_data*)idb_ensure(online_char_db, account_id, create_online_char_data); if( character->char_id != -1 && character->server > -1 && character->server != map_id ) { ShowNotice("set_char_online: Character %d:%d marked in map server %d, but map server %d claims to have (%d:%d) online!\n", @@ -338,7 +338,7 @@ void set_char_offline(int char_id, int account_id) */ static int char_db_setoffline(DBKey key, DBData *data, va_list ap) { - struct online_char_data* character = db_data2ptr(data); + struct online_char_data* character = (struct online_char_data*)db_data2ptr(data); int server = va_arg(ap, int); if (server == -1) { character->char_id = -1; @@ -357,7 +357,7 @@ static int char_db_setoffline(DBKey key, DBData *data, va_list ap) */ static int char_db_kickoffline(DBKey key, DBData *data, va_list ap) { - struct online_char_data* character = db_data2ptr(data); + struct online_char_data* character = (struct online_char_data*)db_data2ptr(data); int server_id = va_arg(ap, int); if (server_id > -1 && character->server != server_id) @@ -2081,14 +2081,6 @@ int parse_fromlogin(int fd) class_[i] = (sex ? JOB_MINSTREL : JOB_WANDERER); else if( class_[i] == JOB_MINSTREL_T || class_[i] == JOB_WANDERER_T ) class_[i] = (sex ? JOB_MINSTREL_T : JOB_WANDERER_T); - // remove specifical skills of classes 19,20 4020,4021 and 4042,4043 - if( SQL_ERROR == Sql_Query(sql_handle, "UPDATE `%s` SET `skill_point` = `skill_point` +" - " (SELECT SUM(lv) FROM `%s` WHERE `char_id` = '%d' AND `id` >= '315' AND `id` <= '330' AND `lv` > '0')" - " WHERE `char_id` = '%d'", - char_db, skill_db, char_id[i], char_id[i]) ) - Sql_ShowDebug(sql_handle); - if( SQL_ERROR == Sql_Query(sql_handle, "DELETE FROM `%s` WHERE `char_id` = '%d' AND `id` >= '315' AND `id` <= '330'", skill_db, char_id[i]) ) - Sql_ShowDebug(sql_handle); } // to avoid any problem with equipment and invalid sex, equipment is unequiped. if( SQL_ERROR == Sql_Query(sql_handle, "UPDATE `%s` SET `equip` = '0' WHERE `char_id` = '%d'", inventory_db, char_id[i]) ) |