void SerializeColor(creg::ISerializer &s, unsigned char **color) { if (s.IsWriting()) { char ColorType = 0; char ColorId = 0; if (!ColorType) for (int a = 0; a < teamHandler->ActiveTeams(); ++a) if (*color==teamHandler->Team(a)->color) { ColorType = 1; ColorId = a; break; } s.Serialize(&ColorId,sizeof(ColorId)); s.Serialize(&ColorType,sizeof(ColorType)); } else { char ColorType; char ColorId; s.Serialize(&ColorId,sizeof(ColorId)); s.Serialize(&ColorType,sizeof(ColorType)); switch (ColorType) { case 0:{ *color = DefaultColor; break; } case 1:{ *color = teamHandler->Team(ColorId)->color; break; } } } }
void SerializeColor(creg::ISerializer &s, unsigned char **color) { if (s.IsWriting()) { char ColorType = 0; char ColorId = 0; if (!ColorType) for (int a=0;a<MAX_TEAMS;a++) if (*color==gs->Team(a)->color) { ColorType = 1; ColorId = a; break; } s.Serialize(&ColorId,sizeof(ColorId)); s.Serialize(&ColorType,sizeof(ColorType)); } else { char ColorType; char ColorId; s.Serialize(&ColorId,sizeof(ColorId)); s.Serialize(&ColorType,sizeof(ColorType)); switch (ColorType) { case 0:{ *color = DefaultColor; break; } case 1:{ *color = gs->Team(ColorId)->color; break; } } } }
static void SerializeString(creg::ISerializer& s, std::string& str) { unsigned short size = (unsigned short)str.length(); s.Serialize(&size,2); if (!s.IsWriting()) str.resize(size); s.Serialize(&str[0], size); }
void spring_time::Serialize(creg::ISerializer& s) { if (s.IsWriting()) { int y = spring_tomsecs(*this - spring_gettime()); s.SerializeInt(&y, 4); } else { int y; s.SerializeInt(&y, 4); *this = *this + spring_msecs(y); } }