コード例 #1
0
ファイル: VillagerSwap.cs プロジェクト: vanton/NHSE
        private static VillagerData AdaptVillager(VillagerInfo exist, VillagerData replace, bool prepMoveOut = false)
        {
            var ov = exist.Villager;
            var oh = exist.House;
            var nv = new Villager2(replace.Villager);

            _ = new VillagerHouse1(replace.House)
            {
                NPC1 = oh.NPC1, NPC2 = oh.NPC2, BuildPlayer = oh.BuildPlayer
            };

            // Copy Memories
            var om = nv.GetMemory(0);
            var nm = ov.GetMemory(0);

            nm.PlayerId = om.PlayerId;
            nv.SetMemory(nm, 0);

            if (!prepMoveOut)
            {
                return(replace);
            }

            nv.MovingOut = true;
            return(replace);
        }
コード例 #2
0
ファイル: VillagerSwap.cs プロジェクト: vanton/NHSE
        public static VillagerData GetReplacementVillager(VillagerInfo exist, string newVillager, bool prepMoveOut = false)
        {
            var replace = VillagerResources.GetVillager(newVillager);

            return(AdaptVillager(exist, replace, prepMoveOut));
        }