public void doClassChange(byte classId) { //load hotbars //Calculate stats //Calculate hp/mp //Get Potenciel ?????? //Set HP/MP/TP PARAMS //Set mainskill and level //Set Parameters //Set current EXP //Set Hotbar Commands 1 //Set Hotbar Commands 2 //Set Hotbar Commands 3 //Check if bonus point available... set //Set rested EXP charaWork.parameterSave.state_mainSkill[0] = classId; charaWork.parameterSave.state_mainSkillLevel = charaWork.battleSave.skillLevel[classId - 1]; playerWork.restBonusExpRate = 0.0f; ActorPropertyPacketUtil propertyBuilder = new ActorPropertyPacketUtil("charaWork/stateForAll", this, actorId); propertyBuilder.addProperty("charaWork.parameterSave.state_mainSkill[0]"); propertyBuilder.addProperty("charaWork.parameterSave.state_mainSkillLevel"); propertyBuilder.newTarget("playerWork/expBonus"); propertyBuilder.addProperty("playerWork.restBonusExpRate"); List <SubPacket> packets = propertyBuilder.done(); foreach (SubPacket packet in packets) { broadcastPacket(packet, true); } Database.savePlayerCurrentClass(this); }