public object ConfigProcess(string[] row)

    {
        if (row.Length < 16)

        {
            return(null);
        }



        RowHelper rh = new RowHelper(row);

        DisassemblygirlPetConfig rec = new DisassemblygirlPetConfig();



        rec.id = CSVUtility.ToInt(rh.Read());          //id

        rec.level = CSVUtility.ToInt(rh.Read());       //级别

        rec.name = rh.Read();                          //名字

        rec.iconID = rh.Read();                        //图标ID

        rec.resourceID = rh.Read();                    //资源ID

        rec.missileResourceID = rh.Read();             //投射物资源ID

        rec.missileHitEffectID = rh.Read();            //投射物击中资源ID

        rec.ATK = CSVUtility.ToFloat(rh.Read());       //拆解力

        rec.CRT = CSVUtility.ToFloat(rh.Read());       //爆破力

        rec.SPD = CSVUtility.ToFloat(rh.Read());       //速度

        rec.WOE = CSVUtility.ToFloat(rh.Read());       //半径

        rec.RP = CSVUtility.ToInt(rh.Read());          //价格

        rec.GP = CSVUtility.ToInt(rh.Read());          //金钱

        rec.missileAudioID = rh.Read();                //投射物音效资源ID

        rec.physicsType = CSVUtility.ToInt(rh.Read()); //物理类型0:无 | 1:穿透 | 2: 单次弹射|3: 多重弹射

        rec.effectors = rh.Read();                     //效果器

        return(rec);
    }
    public void Load()

    {
        CSVReader reader = new CSVReader();

        reader.LoadText("Config/Disassemblygirl_Pet.txt", 3);

        int rows = reader.GetRowCount();

        for (int r = 0; r < rows; ++r)

        {
            string[] row = reader.GetRow(r);

            DisassemblygirlPetConfig ac = ConfigProcess(row) as DisassemblygirlPetConfig;

            configs.Add(ac.id, ac);
        }
    }
示例#3
0
        public bool LevelUP()
        {
            if (LevelMax())
            {
                return(false);
            }

            DisassemblygirlPetConfig config = ConfigMgr.GetInstance().DisassemblygirlPet.GetConfigById(id + 1);

            id         = config.id;
            level      = config.level;
            name       = config.name;
            iconID     = config.iconID;
            GP         = config.GP;
            RP         = config.RP;
            resourceID = config.resourceID;

            missileData.attributeBox.SetAttribute(AttributeKeys.ATK, AttributeSetTypes.BaseValue, config.ATK);
            missileData.attributeBox.SetAttribute(AttributeKeys.CRT, AttributeSetTypes.BaseValue, config.CRT);
            missileData.attributeBox.SetAttribute(AttributeKeys.SPD, AttributeSetTypes.BaseValue, config.SPD);

            missileData.WOE         = config.WOE;
            missileData.resourceID  = config.missileResourceID;
            missileData.hitEffectID = config.missileHitEffectID;
            missileData.audioID     = config.missileAudioID;
            missileData.physicsType = (PhysicsType)config.physicsType;
            missileData.effectors.Clear();

            foreach (string effectorID in config.effectors.Split('|'))
            {
                EffectorData effector = EffectorData.FromConfig(int.Parse(effectorID));

                if (effector != null)
                {
                    missileData.effectors.Add(effector);
                }
            }
            return(true);
        }
示例#4
0
        public static PetData FromConfig(DisassemblygirlPetConfig config)
        {
            PetData pet = new PetData();

            pet.id         = config.id;
            pet.level      = config.level;
            pet.name       = config.name;
            pet.iconID     = config.iconID;
            pet.GP         = config.GP;
            pet.RP         = config.RP;
            pet.resourceID = config.resourceID;

            pet.missileData = new MissileData();
            pet.missileData.attributeBox = AttributeBox.CreateDefault();
            pet.missileData.attributeBox.SetAttribute(AttributeKeys.ATK, AttributeSetTypes.BaseValue, config.ATK);
            pet.missileData.attributeBox.SetAttribute(AttributeKeys.CRT, AttributeSetTypes.BaseValue, config.CRT);
            pet.missileData.attributeBox.SetAttribute(AttributeKeys.SPD, AttributeSetTypes.BaseValue, config.SPD);

            pet.missileData.WOE         = config.WOE;
            pet.missileData.resourceID  = config.missileResourceID;
            pet.missileData.hitEffectID = config.missileHitEffectID;
            pet.missileData.audioID     = config.missileAudioID;
            pet.missileData.physicsType = (PhysicsType)config.physicsType;
            pet.missileData.effectors   = new List <EffectorData>();

            foreach (string effectorID in config.effectors.Split('|'))
            {
                EffectorData effector = EffectorData.FromConfig(int.Parse(effectorID));

                if (effector != null)
                {
                    pet.missileData.effectors.Add(effector);
                }
            }

            return(pet);
        }