public override string ToString() => String.Format("Color: {0} RepeatU: {1} RepeatV: {2} OffsetU: {3} OffsetV: {4} " + "Rotation: {5} Bump: {6} Shiny: {7} Fullbright: {8} Mapping: {9} Media: {10} Glow: {11} ID: {12} MaterialID: {13}", TextureColor.ToString(), RepeatU, RepeatV, OffsetU, OffsetV, Rotation, Bump.ToString(), Shiny.ToString(), FullBright, TexMapType.ToString(), MediaFlags, Glow, TextureID.ToString(), MaterialID.ToString());
private void PlaceNewComp(CompTimePair nextCTP) { CompsScatteredSoFar++; //Shotter.TakeEngineShot(); var fEngine = ObjectSerializer.DeepCopy(StaticData.EngineManager); for (int i = 0; i < 15; i++) { fEngine.Update(new GameTime()); } Vector2 cPossss = StaticData.EngineManager.CookieRB.PositionXNA2D; Vector2 cPos = fEngine.CookieRB.PositionXNA2D; //StaticData.EngineManager.CookieRB.PositionXNACenter2D; int cX = (int)cPos.X; int cY = (int)cPos.Y; Component cAdd = new Rope(0, 0, 100); Vector3 acc = StaticData.EngineManager.CookieRB.GetAcceleration(); switch (nextCTP.CType) { case ComponentType.Cookie: break; case ComponentType.Frog: cAdd = GetFrogPosition(); break; case ComponentType.Blower: cAdd = GetBlowerPosition(nextCTP); break; case ComponentType.Rope: break; case ComponentType.Bubble: cAdd = new Bubble(cX - (int)StaticData.BubbleDimBubble / 2, cY - (int)StaticData.BubbleDimBubble / 2); //GetBubblePosition(); break; case ComponentType.Water: break; case ComponentType.Rocket: int dirR = _rand.Next(8); cAdd = new Rocket(cX - (int)StaticData.RocketCarrierHalfSize.X, cY - (int)StaticData.RocketCarrierHalfSize.Y, (Direction)dirR); //GetRocketPosition(nextCTP); break; case ComponentType.Bump: int dirB = _rand.Next(3); dirB = dirB == 2 ? 3 : dirB; if (dirB == 1 || dirB == 3) { var fEngineB = ObjectSerializer.DeepCopy(StaticData.EngineManager); for (int i = 0; i < 25; i++) { fEngineB.Update(new GameTime()); } cPos = fEngine.CookieRB.PositionXNA2D; cX = (int)cPos.X; cY = (int)cPos.Y; } cAdd = new Bump(cX - (int)StaticData.BumpHalfSize.X, cY - (int)StaticData.BumpHalfSize.Y, (Direction)dirB); //cAdd = GetBumperPosition(nextCTP); break; case ComponentType.Cracker: break; default: throw new ArgumentOutOfRangeException(); } if (!(cAdd is Rope)) { cAdd.AddSelfToEngine(); LevelStr += cAdd.ToString(); } }