public Groove(DocumentParser file) : this() { part = file.ReadLine(); lollipopMode = file.ReadLine().ToEnumWithDefault<LollipopMode>(LollipopMode.NotALollipop); mode = file.ReadLine().ToEnum<GrooveMode>(); pathType = file.ReadLine().ToEnumWithDefault<GroovePathNames>(GroovePathNames.None); if (pathType != GroovePathNames.None) { pathMode = file.ReadLine().ToEnum<GroovePathMode>(); } switch (pathType) { case GroovePathNames.None: break; case GroovePathNames.straight: pathCentre = file.ReadVector3(); pathPeriod = file.ReadSingle(); pathDelta = file.ReadVector3(); break; default: Console.WriteLine(); break; } animationType = file.ReadLine().ToEnumWithDefault<GrooveAnimation>(GrooveAnimation.None); if (animationType != GrooveAnimation.None) { animationMode = file.ReadLine().ToEnum<GroovePathMode>(); } switch (animationType) { case GrooveAnimation.rock: animationPeriod = file.ReadSingle(); animationCentre = file.ReadVector3(); animationAxis = file.ReadLine().ToEnum<GrooveAnimationAxis>(); rockMaxAngle = file.ReadSingle(); break; case GrooveAnimation.shear: shearPeriod = file.ReadVector3(); animationCentre = file.ReadVector3(); shearMagnitude = file.ReadVector3(); break; case GrooveAnimation.spin: animationPeriod = file.ReadSingle(); animationCentre = file.ReadVector3(); animationAxis = file.ReadLine().ToEnum<GrooveAnimationAxis>(); break; default: Console.WriteLine(file.ToString()); break; } }
public Funk(DocumentParser file) : this() { material = file.ReadLine(); mode = file.ReadLine().ToEnum<FunkMode>(); matrixModType = file.ReadLine().ToEnum<FunkMatrixMode>(); if (matrixModType != FunkMatrixMode.None) { matrixModMode = file.ReadLine().ToEnum<GroovePathMode>(); } switch (matrixModType) { case FunkMatrixMode.roll: rollPeriods = file.ReadVector2(); break; case FunkMatrixMode.spin: spinPeriod = file.ReadSingle(); break; default: Console.WriteLine(file.ToString()); break; } lightingMode = file.ReadLine().ToEnumWithDefault<GroovePathMode>(GroovePathMode.None); if (lightingMode != GroovePathMode.None) { Console.WriteLine(file.ToString()); } animationType = file.ReadLine().ToEnumWithDefault<FunkAnimationType>(FunkAnimationType.None); if (animationType != FunkAnimationType.None) { Console.WriteLine(file.ToString()); } }