Ejemplo n.º 1
0
    public override int GetSpeed(CellBug cellbug)
    {
        if (!cellbug)
        {
            return(0);
        }
        //需要访问dna
        Dna dna            = cellbug.GetAbility().GetDna();
        int speedGeneTotal = dna.GetDnaIndex(Const.DnaLineEnum.OneEnum, Const.GenesEnum.SpeedEnum)
                             + dna.GetDnaIndex(Const.DnaLineEnum.TwoEnum, Const.GenesEnum.SpeedEnum);

        if (speedGeneTotal == 0)
        {
            nowSpeed = lowSpeed;
        }
        else if (speedGeneTotal == 1)
        {
            nowSpeed = middleSpeed;
        }
        else if (speedGeneTotal == 2)
        {
            nowSpeed = highSpeed;
        }

        return(nowSpeed);
    }
Ejemplo n.º 2
0
    public override int GetPoison(CellBug cellbug)
    {
        //需要访问dna
        Dna dna = cellbug.GetAbility().GetDna();

        nowPoison = dna.GetDnaIndex(Const.DnaLineEnum.OneEnum, Const.GenesEnum.PoisonEnum)
                    + dna.GetDnaIndex(Const.DnaLineEnum.TwoEnum, Const.GenesEnum.PoisonEnum);
        return(nowPoison);
    }
Ejemplo n.º 3
0
    public override int GetPowerGetFrom(CellBug cellbug)
    {
        //需要访问dna
        Dna dna = cellbug.GetAbility().GetDna();

        nowForm = dna.GetDnaIndex(Const.DnaLineEnum.OneEnum, Const.GenesEnum.PowerGetFromEnum)
                  + dna.GetDnaIndex(Const.DnaLineEnum.TwoEnum, Const.GenesEnum.PowerGetFromEnum);
        return(nowForm);
    }
Ejemplo n.º 4
0
    public override int GetAntibiotic(CellBug cellbug)
    {
        //需要访问dna

        Dna dna = cellbug.GetAbility().GetDna();

        nowAntibiotic = dna.GetDnaIndex(Const.DnaLineEnum.OneEnum, Const.GenesEnum.AntibioticEnum)
                        + dna.GetDnaIndex(Const.DnaLineEnum.TwoEnum, Const.GenesEnum.AntibioticEnum);

        return(nowAntibiotic);
    }
Ejemplo n.º 5
0
    public override float GetPowerCustom(CellBug cellBug)
    {
        Dna dna = cellBug.GetAbility().GetDna();
        int photosynthesisGeneTotal = dna.GetDnaIndex(Const.DnaLineEnum.OneEnum, Const.GenesEnum.PhotosynthesisEnum)
                                      + dna.GetDnaIndex(Const.DnaLineEnum.TwoEnum, Const.GenesEnum.PhotosynthesisEnum);

        if (photosynthesisGeneTotal == 0)
        {
            return(lowPowerCustom);
        }
        else if (photosynthesisGeneTotal == 1)
        {
            return(middlePowerCustom);
        }
        else if (photosynthesisGeneTotal == 2)
        {
            return(highPowerCustom);
        }
        return(lowPowerCustom);
    }
Ejemplo n.º 6
0
    public override float GetPhotosynthesis(CellBug cellbug)
    {
        //需要访问dna
        Dna dna = cellbug.GetAbility().GetDna();
        int photosynthesisGeneTotal = dna.GetDnaIndex(Const.DnaLineEnum.OneEnum, Const.GenesEnum.PhotosynthesisEnum)
                                      + dna.GetDnaIndex(Const.DnaLineEnum.TwoEnum, Const.GenesEnum.PhotosynthesisEnum);

        if (photosynthesisGeneTotal == 0)
        {
            nowPhotosynthesis = lowPhotosynthesis;
        }
        else if (photosynthesisGeneTotal == 1)
        {
            nowPhotosynthesis = middlePhotosynthesis;
        }
        else if (photosynthesisGeneTotal == 2)
        {
            nowPhotosynthesis = highPhotosynthesis;
        }
        return(nowPhotosynthesis);
    }
Ejemplo n.º 7
0
    public override int GetAttackForce(CellBug cellbug)
    {
        //需要访问dna
        Dna dna             = cellbug.GetAbility().GetDna();
        int attackGeneTotal = dna.GetDnaIndex(Const.DnaLineEnum.OneEnum, Const.GenesEnum.AttackForceEnum)
                              + dna.GetDnaIndex(Const.DnaLineEnum.TwoEnum, Const.GenesEnum.AttackForceEnum);

        if (attackGeneTotal == 0)
        {
            nowAttackForce = lowAttackForce;
        }
        else if (attackGeneTotal == 1)
        {
            nowAttackForce = middleAttackForce;
        }
        else if (attackGeneTotal == 2)
        {
            nowAttackForce = highAttackForce;
        }

        return(nowAttackForce);
    }
Ejemplo n.º 8
0
    public override int GetBirthNum(CellBug cellbug)
    {
        //需要访问dna
        Dna dna = cellbug.GetAbility().GetDna();
        int birthNumGeneTotal = dna.GetDnaIndex(Const.DnaLineEnum.OneEnum, Const.GenesEnum.BrithNumEnum)
                                + dna.GetDnaIndex(Const.DnaLineEnum.TwoEnum, Const.GenesEnum.BrithNumEnum);

        if (birthNumGeneTotal == 0)
        {
            nowBirthNum = lowBirth;
        }
        else if (birthNumGeneTotal == 1)
        {
            nowBirthNum = middleBirth;
        }
        else if (birthNumGeneTotal == 2)
        {
            nowBirthNum = highBrith;
        }

        return(nowBirthNum);
    }
Ejemplo n.º 9
0
    public override int GetMusic(CellBug cellbug)
    {
        //需要访问dna

        Dna dna           = cellbug.GetAbility().GetDna();
        int songGeneTotal = dna.GetDnaIndex(Const.DnaLineEnum.OneEnum, Const.GenesEnum.SongEnum)
                            + dna.GetDnaIndex(Const.DnaLineEnum.TwoEnum, Const.GenesEnum.SongEnum);

        if (songGeneTotal == 0)
        {
            nowMusic = oneMusic;
        }
        else if (songGeneTotal == 1)
        {
            nowMusic = twoMusic;
        }
        else if (songGeneTotal == 2)
        {
            nowMusic = threeMusic;
        }

        return(nowMusic);
    }
Ejemplo n.º 10
0
    //出生的才会使用,系统产生的不使用
    public void SetDNA(int[] DNALineOne, int[] DNALineTwo)
    {
        dna.SetDna(DNALineOne, DNALineTwo);

        if (dna.GetDnaIndex(Const.DnaLineEnum.OneEnum, Const.GenesEnum.SpeedEnum) == 1 ||
            dna.GetDnaIndex(Const.DnaLineEnum.TwoEnum, Const.GenesEnum.SpeedEnum) == 1)
        {
            mine.transform.FindChild("speed").gameObject.SetActive(true);
        }
        else
        {
            mine.transform.FindChild("speed").gameObject.SetActive(false);
        }

        if (dna.GetDnaIndex(Const.DnaLineEnum.OneEnum, Const.GenesEnum.PoisonEnum) == 1 ||
            dna.GetDnaIndex(Const.DnaLineEnum.TwoEnum, Const.GenesEnum.PoisonEnum) == 1)
        {
            mine.transform.FindChild("poison").gameObject.SetActive(true);
        }
        else
        {
            mine.transform.FindChild("poison").gameObject.SetActive(false);
        }

        if (dna.GetDnaIndex(Const.DnaLineEnum.OneEnum, Const.GenesEnum.AntibioticEnum) == 1 ||
            dna.GetDnaIndex(Const.DnaLineEnum.TwoEnum, Const.GenesEnum.AntibioticEnum) == 1)
        {
            mine.transform.FindChild("antibiotic").gameObject.SetActive(true);
        }
        else
        {
            mine.transform.FindChild("antibiotic").gameObject.SetActive(false);
        }

        if (dna.GetDnaIndex(Const.DnaLineEnum.OneEnum, Const.GenesEnum.AttackForceEnum) == 1 ||
            dna.GetDnaIndex(Const.DnaLineEnum.TwoEnum, Const.GenesEnum.AttackForceEnum) == 1)
        {
            mine.transform.FindChild("attackForce").gameObject.SetActive(true);
        }
        else
        {
            mine.transform.FindChild("attackForce").gameObject.SetActive(false);
        }

        if (dna.GetDnaIndex(Const.DnaLineEnum.OneEnum, Const.GenesEnum.BrithNumEnum) == 1 ||
            dna.GetDnaIndex(Const.DnaLineEnum.TwoEnum, Const.GenesEnum.BrithNumEnum) == 1)
        {
            mine.transform.FindChild("brithNum").gameObject.SetActive(true);
        }
        else
        {
            mine.transform.FindChild("brithNum").gameObject.SetActive(false);
        }

        if (dna.GetDnaIndex(Const.DnaLineEnum.OneEnum, Const.GenesEnum.PhotosynthesisEnum) == 1 ||
            dna.GetDnaIndex(Const.DnaLineEnum.TwoEnum, Const.GenesEnum.PhotosynthesisEnum) == 1)
        {
            mine.transform.FindChild("photosynthesis").gameObject.SetActive(true);
        }
        else
        {
            mine.transform.FindChild("photosynthesis").gameObject.SetActive(false);
        }

        if (dna.GetDnaIndex(Const.DnaLineEnum.OneEnum, Const.GenesEnum.PowerGetFromEnum) == 1 ||
            dna.GetDnaIndex(Const.DnaLineEnum.TwoEnum, Const.GenesEnum.PowerGetFromEnum) == 1)
        {
            mine.transform.FindChild("powerGetFrom").gameObject.SetActive(true);
        }
        else
        {
            mine.transform.FindChild("powerGetFrom").gameObject.SetActive(false);
        }

        if (dna.GetDnaIndex(Const.DnaLineEnum.OneEnum, Const.GenesEnum.SongEnum) == 1 ||
            dna.GetDnaIndex(Const.DnaLineEnum.TwoEnum, Const.GenesEnum.SongEnum) == 1)
        {
            mine.transform.FindChild("song").gameObject.SetActive(true);
        }
        else
        {
            mine.transform.FindChild("song").gameObject.SetActive(false);
        }
    }