rendered paste bodyIndex: src/game/Player.cpp===================================================================--- src/game/Player.cpp (revision 706)+++ src/game/Player.cpp (working copy)@@ -2661,6 +2661,35 @@ } OnlineTime = time(NULL);+++ QueryResult * result2 = sDatabase.Query("SELECT reset FROM characters WHERE guid = %u", guid);+ if(!result2) return false;++ Field * fields2 = result2->Fetch();+ if(fields2[0].GetUInt8() > 0)+ {+ Reset_Spells();+ for(uint32 i = PLAYER_SKILL_INFO_1_1; i < PLAYER_CHARACTER_POINTS1; ++i)+ SetUInt32Value(i, 0);++ // Load skills from create info.+ PlayerCreateInfo * info = objmgr.GetPlayerCreateInfo(getRace(), getClass());+ if(!info) return false; // wtf? ++ for(std::list<CreateInfo_SkillStruct>::iterator ss = info->skills.begin(); ss!=info->skills.end(); ss++)+ {+ if(ss->skillid && ss->currentval && ss->maxval)+ AddSkillLine(ss->skillid, ss->currentval, ss->maxval); + }+ UpdateStats();+ UpdateChances();+ sDatabase.Query("UPDATE characters SET reset = 0 WHERE guid = %u", guid);+ }+ delete fields2;++ return true; }