public void CopyLocal(SIProps copyFrom) { WILocalProps p = copyFrom.Local; //copying values is a pain in the ass but it's way faster than anything else Local.ActiveRadius = p.ActiveRadius; Local.BaseCurrencyValue = p.BaseCurrencyValue; Local.CauseOfDestruction = p.CauseOfDestruction; Local.ChunkPosition.CopyFrom(p.ChunkPosition); Local.CraftedByPlayer = p.CraftedByPlayer; Local.DisplayNamerScript = p.DisplayNamerScript; Local.FreezeOnSleep = p.FreezeOnSleep; Local.FreezeOnStartup = p.FreezeOnStartup; Local.FreezeTimeout = p.FreezeTimeout; Local.HasInitializedOnce = p.HasInitializedOnce; Local.HudTargetScript = p.HudTargetScript; Local.IsStackContainer = p.IsStackContainer; Local.LightOffset.CopyFrom(p.LightOffset); Local.LightTemplateName = p.LightTemplateName; Local.Mode = p.Mode; Local.PreviousMode = p.PreviousMode; if (Local.RemoveItemSkills.Count > 0) { Local.RemoveItemSkills.Clear(); } Local.RemoveItemSkills.AddRange(p.RemoveItemSkills); Local.StackNamerScript = p.StackNamerScript; Local.StolenGoods = p.StolenGoods; Local.Subcategory = p.Subcategory; Local.Transform.CopyFrom(p.Transform); Local.UseAsContainerInInventory = p.UseAsContainerInInventory; Local.VisibleDistance = p.VisibleDistance; //Local = ObjectClone.Clone <WILocalProps>(copyFrom.Local); }
public void Clear( ) { if (Name != null) { Name.Clear(); } if (Local != null) { Local.Clear(); } Name = null; Local = null; }