示例#1
0
    public object ConfigProcess(string[] row)

    {
        if (row.Length < 19)

        {
            return(null);
        }



        RowHelper rh = new RowHelper(row);

        DisassemblygirlWeaponConfig rec = new DisassemblygirlWeaponConfig();



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

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

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

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

        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.CD = CSVUtility.ToFloat(rh.Read());        //间隔

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

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

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

        rec.hitEffectID = rh.Read();                   //击中效果资源ID

        rec.audioID = rh.Read();                       //音效资源ID

        rec.offsetX = CSVUtility.ToFloat(rh.Read());   //武器偏移X

        rec.offsetY = CSVUtility.ToFloat(rh.Read());   //武器偏移Y

        rec.skillID = CSVUtility.ToInt(rh.Read());     //技能ID

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

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

        return(rec);
    }
示例#2
0
        public void AddWeapon(int weaponID)
        {
            DisassemblygirlWeaponConfig config = ConfigMgr.GetInstance().DisassemblygirlWeapon.GetConfigById(weaponID);

            if (config != null)
            {
                weapons.Add(WeaponData.FromConfig(config));
            }
        }
示例#3
0
        public bool LevelUP()
        {
            if (LevelMax())
            {
                return(false);
            }

            DisassemblygirlWeaponConfig config = ConfigMgr.GetInstance().DisassemblygirlWeapon.GetConfigById(id + 1);

            id     = config.id;
            level  = config.level;
            name   = config.name;
            iconID = config.iconID;

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

            WOE = config.WOE;
            GP  = config.GP;
            RP  = config.RP;
            CD  = config.CD;

            resourceID  = config.resourceID;
            hitEffectID = config.hitEffectID;
            audioID     = config.audioID;

            offsetX     = config.offsetX;
            offsetY     = config.offsetY;
            physicsType = (PhysicsType)config.physicsType;

            if (config.skillID != 0)
            {
                skillData = SkillData.FromConfig(config.skillID);
            }

            effectors.Clear();

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

                if (effector != null)
                {
                    effectors.Add(effector);
                }
            }
            return(true);
        }
示例#4
0
        public static WeaponData FromConfig(DisassemblygirlWeaponConfig config)
        {
            WeaponData weapon = new WeaponData();

            weapon.id           = config.id;
            weapon.level        = config.level;
            weapon.name         = config.name;
            weapon.iconID       = config.iconID;
            weapon.attributeBox = AttributeBox.CreateDefault();
            weapon.attributeBox.SetAttribute(AttributeKeys.ATK, AttributeSetTypes.BaseValue, config.ATK);
            weapon.attributeBox.SetAttribute(AttributeKeys.CRT, AttributeSetTypes.BaseValue, config.CRT);
            weapon.attributeBox.SetAttribute(AttributeKeys.SPD, AttributeSetTypes.BaseValue, config.SPD);

            weapon.WOE = config.WOE;
            weapon.CD  = config.CD;
            weapon.GP  = config.GP;
            weapon.RP  = config.RP;

            weapon.resourceID  = config.resourceID;
            weapon.hitEffectID = config.hitEffectID;
            weapon.audioID     = config.audioID;
            weapon.offsetX     = config.offsetX;
            weapon.offsetY     = config.offsetY;
            weapon.physicsType = (PhysicsType)config.physicsType;

            if (config.skillID != 0)
            {
                weapon.skillData = SkillData.FromConfig(config.skillID);
            }

            weapon.effectors = new List <EffectorData>();

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

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

            return(weapon);
        }
示例#5
0
    public void Load()

    {
        CSVReader reader = new CSVReader();

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

        int rows = reader.GetRowCount();

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

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

            DisassemblygirlWeaponConfig ac = ConfigProcess(row) as DisassemblygirlWeaponConfig;

            configs.Add(ac.id, ac);
        }
    }