示例#1
0
        public void AddEnemy()
        {
            MechaConfig mechaConfig = ConfigManager.Instance.GetRandomMechaConfig();
            MechaInfo   mechaInfo   = mechaConfig.GetMechaInfo(MechaCamp.Enemy);

            BattleManager.Instance.AddEnemyMecha(mechaInfo);
            ClientBattleManager.Instance.MechaDict[mechaInfo.GUID].transform.position = new Vector3(Random.Range(0, 20), 0, Random.Range(0, 20));
        }
        public static MechaInfo GetMechaInfo(this MechaConfig mechaConfig, MechaCamp mechaCamp)
        {
            MechaInfo mechaInfo = new MechaInfo(mechaConfig.MechaConfigName, mechaCamp, mechaConfig.Clone());

            foreach (MechaConfig.Config config in mechaConfig.MechaComponentList)
            {
                MechaComponentConfig mcc      = ConfigManager.Instance.GetMechaComponentConfig(config.MechaComponentKey);
                MechaComponentInfo   mci      = new MechaComponentInfo(mcc, config.MechaComponentQuality, config.MechaComponentAlias);
                GridPosR             finalGPR = config.GridPosR + ConfigManager.EDIT_AREA_HALF_SIZE * GridPosR.One;
                mechaInfo.AddMechaComponentInfo(mci, finalGPR);
            }

            return(mechaInfo);
        }