private static int OnBodySnatch(object[] arguments) { if ((arguments.Length != 0) && (Sim.ActiveActor != null)) { SimDescription sDFromArguments = Core.

GetSDFromArguments(arguments); if (sDFromArguments == null) { SimpleMessageDialog.Show(GenericStrings.Fail.ToUpper(), "Couldn't fi nd destination sim '" + arguments[0].ToString() + "'."); return 0; } if ((sDFromArguments.Gender != Sim.ActiveActor.SimDescription.Gender) ((sDFromArguments.Age != Sim.ActiveActor.SimDescription.Age) && (!Sim.ActiveAct or.SimDescription.Elder !sDFromArguments.Adult))) { SimpleMessageDialog.Show(GenericStrings.Fail.ToUpper(), "Source sim must be same age & sex as selected sim!"); return 0; } try { Sim.ActiveActor.SimDescription.HairColors = sDFromArguments.HairColo rs; Sim.ActiveActor.SimDescription.EyebrowColor = sDFromArguments.Eyebro wColor; Sim.ActiveActor.SimDescription.FacialHairColors = sDFromArguments.Fa cialHairColors; Sim.ActiveActor.SimDescription.BeardUsesHairColor = sDFromArguments. BeardUsesHairColor; Sim.ActiveActor.SimDescription.EyebrowsUseHairColor = sDFromArgument s.EyebrowsUseHairColor; Sim.ActiveActor.SimDescription.PropagateHairStyle = sDFromArguments. PropagateHairStyle; Sim.ActiveActor.SimDescription.GeneticHairstyleKey = sDFromArguments .GeneticHairstyleKey; Sim.ActiveActor.SimDescription.SkinToneIndex = sDFromArguments.SkinT oneIndex; Sim.ActiveActor.SimDescription.SkinToneKey = sDFromArguments.SkinTon eKey; Sim.ActiveActor.SimDescription.mZodiac = sDFromArguments.mZodiac; Sim.ActiveActor.SimDescription.VoiceVariation = sDFromArguments.Voic eVariation; Sim.ActiveActor.SimDescription.VoicePitchModifier = sDFromArguments. VoicePitchModifier; OutfitCategoryMap mOutfits = Sim.ActiveActor.SimDescription.mOutfits ; Sim.ActiveActor.SimDescription.mOutfits = sDFromArguments.mOutfits; sDFromArguments.mOutfits = mOutfits; OutfitCategories currentOutfitCategory = Sim.ActiveActor.CurrentOutf itCategory; Sim.ActiveActor.SimDescription.ForceSetBodyShape(sDFromArguments.Wei ght, sDFromArguments.Fitness); Sim.ActiveActor.SimDescription.RefreshBodyShape(); Sim.ActiveActor.SwitchToOutfitWithoutSpin(1); Sim.ActiveActor.SwitchToOutfitWithoutSpin(2); Sim.ActiveActor.SwitchToOutfitWithoutSpin(currentOutfitCategory); if (sDFromArguments.Household != null) { sDFromArguments.Household.Remove(sDFromArguments); }

DeleteHousehold.DestroySimDescription(sDFromArguments); Household.ActiveHousehold.InvalidateThumbnail(); HudModel hudModel = (HudModel) Responder.Instance.HudModel; if (hudModel != null) { int length = Enum.GetValues(typeof(MoodID)).Length; for (int i = 0; i < length; i++) { ThumbnailKey key = hudModel.GetThumbnailForGameObject(Sim.Ac tiveActor.ObjectId, 2, i); ThumbnailManager.InvalidateThumbnail(key); key.mCamera = 2; ThumbnailManager.InvalidateThumbnail(key); } hudModel.OnSimAgeChanged(Sim.ActiveActor.ObjectId); hudModel.OnSimAppearanceChanged(Sim.ActiveActor.ObjectId); } SimpleMessageDialog.Show("Success!", "Bodysnatched " + sDFromArgumen ts.FullName + "!"); } catch (Exception exception) { Main.FlagrantSystemError(exception); } } return 0; }

Sign up to vote on this title
UsefulNot useful