コード例 #1
0
        /// <summary>
        ///     Unit initialization shared by both real units and their ghosts.
        /// </summary>
        /// <param name="freshUnit"></param>
        /// <param name="config"></param>
        private static void MakeUnitCommon(GameObject freshUnit, Unit armoryUnit)
        {
            freshUnit.name = armoryUnit.Name;
            freshUnit.SetActive(false);

            GameObject art = Object.Instantiate(armoryUnit.ArtPrefab);

            art.transform.parent = freshUnit.transform;

            DataComponent.CreateDataComponent(
                freshUnit, armoryUnit.Config, armoryUnit.MobilityData);

            // freshUnit.AddComponent<UnitDispatcher>().enabled = false;
            // freshUnit.AddComponent<MovementComponent>().enabled = false;
            // prototype.AddComponent<NetworkIdentity>();

            TurretSystem turretSystem = freshUnit.GetComponent <TurretSystem>();

            turretSystem.Initialize(freshUnit, armoryUnit);
        }