本文整理汇总了C#中SimDescription.Fixup方法的典型用法代码示例。如果您正苦于以下问题:C# SimDescription.Fixup方法的具体用法?C# SimDescription.Fixup怎么用?C# SimDescription.Fixup使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类SimDescription
的用法示例。
在下文中一共展示了SimDescription.Fixup方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: EnsureInstantiate
public static bool EnsureInstantiate(SimDescription sim, Lot lot)
{
if (sim.CreatedSim == null)
{
if (sim.Household == null)
{
if (!sim.IsValidDescription)
{
sim.Fixup();
}
Urnstone urnstone = Urnstones.CreateGrave(sim, SimDescription.DeathType.OldAge, false, true);
if (urnstone != null)
{
Common.Sleep();
if (!Urnstones.GhostSpawn(urnstone, lot))
{
return false;
}
}
}
else
{
Instantiation.Perform(sim, null);
}
}
return (sim.CreatedSim != null);
}
示例2: UnpackSim
public static SimDescription UnpackSim(MiniSimDescription ths, bool updateGenealogy)
{
try
{
if (ths == null) return null;
// Calling ImportSimDescription prior to the Aging Manager being available is invalid, don't allow it
if (AgingManager.Singleton == null) return null;
SimDescription desc = new SimDescription();
ResourceKeyContentCategory installed = ResourceKeyContentCategory.kInstalled;
DownloadContent.ImportSimDescription(ths.mTravelKey, desc, ref installed);
desc.SimDescriptionId = ths.mSimDescriptionId;
if (desc.CareerManager != null)
{
// Fixup for careers require a household, which is not set until later in this process
desc.CareerManager.mJob = null;
desc.CareerManager.mSchool = null;
}
desc.Fixup();
if (updateGenealogy && !GameStates.IsTravelling)
{
if (desc.DefaultOutfitKey == ResourceKey.kInvalidResourceKey)
{
SimOutfit outfit = desc.GetOutfit(OutfitCategories.Everyday, 0x0);
if ((outfit == null) || (!outfit.IsValid))
{
desc.Dispose(false, false);
return null;
}
desc.UpdateFromOutfit(OutfitCategories.Everyday);
}
desc.CASGenealogy = ths.CASGenealogy;
}
Corrections.CleanupBrokenSkills(desc, null);
OccultTypeHelper.ValidateOccult(desc, null);
return desc;
}
catch (Exception e)
{
Common.Exception(ths.FullName, e);
return null;
}
}
示例3: PrivateCreateGrave
protected static Urnstone PrivateCreateGrave(SimDescription corpse)
{
string style;
ProductVersion version = ProductVersion.BaseGame;
switch (corpse.Species)
{
case CASAgeGenderFlags.Dog:
case CASAgeGenderFlags.LittleDog:
style = "tombstoneDog";
version = ProductVersion.EP5;
break;
case CASAgeGenderFlags.Horse:
if (corpse.IsUnicorn)
{
style = "tombstoneUnicorn";
}
else
{
style = "tombstoneHorse";
}
version = ProductVersion.EP5;
break;
case CASAgeGenderFlags.Cat:
style = "tombstoneCat";
version = ProductVersion.EP5;
break;
default:
ulong lifetimeHappiness = corpse.LifetimeHappiness;
if (lifetimeHappiness >= Urnstone.LifetimeHappinessWealthyTombstone)
{
style = "UrnstoneHumanWealthy";
}
else if (lifetimeHappiness < Urnstone.LifetimeHappinessPoorTombstone)
{
style = "UrnstoneHumanPoor";
}
else
{
style = "UrnstoneHuman";
}
break;
}
Urnstone stone = GlobalFunctions.CreateObject(style, version, Vector3.OutOfWorld, 0, Vector3.UnitZ, null, null) as Urnstone;
if (stone == null)
{
return null;
}
corpse.Fixup();
stone.SetDeadSimDescription(corpse);
stone.mPlayerMoveable = true;
return stone;
}
示例4: Fixup
protected static bool Fixup(SimDescription me)
{
if (me == null) return true;
if (!me.IsValidDescription)
{
me.Fixup();
}
return (me.Genealogy != null);
}