void SetfieldHandler::parsering1(InPacket& recv) const { int16_t rsize = recv.read_short(); for (int16_t i = 0; i < rsize; i++) { recv.read_int(); recv.read_padded_string(13); recv.read_int(); recv.read_int(); recv.read_int(); recv.read_int(); } }
StatsEntry LoginParser::parse_stats(InPacket& recv) { StatsEntry statsentry; statsentry.name = recv.read_padded_string(13); recv.read_bool(); //gender recv.read_byte(); //skin recv.read_int(); //face recv.read_int(); //hair for (size_t i = 0; i < 3; i++) { statsentry.petids.push_back(recv.read_long()); } statsentry.stats[Maplestat::LEVEL] = recv.read_byte(); statsentry.stats[Maplestat::JOB] = recv.read_short(); statsentry.stats[Maplestat::STR] = recv.read_short(); statsentry.stats[Maplestat::DEX] = recv.read_short(); statsentry.stats[Maplestat::INT] = recv.read_short(); statsentry.stats[Maplestat::LUK] = recv.read_short(); statsentry.stats[Maplestat::HP] = recv.read_short(); statsentry.stats[Maplestat::MAXHP] = recv.read_short(); statsentry.stats[Maplestat::MP] = recv.read_short(); statsentry.stats[Maplestat::MAXMP] = recv.read_short(); statsentry.stats[Maplestat::AP] = recv.read_short(); statsentry.stats[Maplestat::SP] = recv.read_short(); statsentry.exp = recv.read_int(); statsentry.stats[Maplestat::FAME] = recv.read_short(); recv.skip(4); //gachaexp statsentry.mapid = recv.read_int(); statsentry.portal = recv.read_byte(); recv.skip(4); //timestamp return statsentry; }