Esempio n. 1
0
    /// <summary>
    /// 创建家族成员
    /// </summary>
    /// <param name="characterForFamily"></param>
    public void CreateFamilyCharacter(CharacterForFamilyBean characterForFamily)
    {
        if (characterForFamily == null)
        {
            return;
        }
        FamilyTypeEnum familyType = characterForFamily.GetFamilyType();
        GameDataBean   gameData   = GameDataHandler.Instance.manager.GetGameData();
        FamilyDataBean familyData = gameData.GetFamilyData();

        if (familyType == FamilyTypeEnum.Daughter || familyType == FamilyTypeEnum.Son)
        {
            //如果是女儿或者儿子 需要3年后才能移动
            if (!characterForFamily.CheckIsGrowUp(gameData.gameTime))
            {
                return;
            }
        }
        else if (familyType == FamilyTypeEnum.Mate)
        {
            //如果是伴侣需要结婚日之后才刷新
            if (!familyData.CheckMarry(gameData.gameTime))
            {
                return;
            }
        }


        //获取门的坐标 并在门周围生成NPC
        Vector3 doorPosition = InnHandler.Instance.GetRandomEntrancePosition();

        //向下3个单位
        doorPosition += new Vector3(0, -3f, 0);
        GameObject objFamily = BuildNpc(listHideNpc, objNormalModel, characterForFamily, doorPosition);

        if (objFamily == null)
        {
            return;
        }
        NpcAIFamilyCpt npcAIFamily = objFamily.GetComponent <NpcAIFamilyCpt>();

        listFamilyCharacter.Add(npcAIFamily);
    }
Esempio n. 2
0
 public Family(FamilyTypeEnum familyType)
 {
     FamilyType    = familyType;
     FamilyMembers = new List <FamilyMember>(); // starts off as empty
 }
Esempio n. 3
0
 public void SetFamilyType(FamilyTypeEnum familyType)
 {
     this.familyType = (int)familyType;
 }