public ISerializable <ShipControllerPersistance> SetObject(ShipControllerPersistance serializedObject) { this._fleetCommandQueue = new FleetCommandQueue(); this._fleetCommandQueue.SetObject(serializedObject.fleetCommandQueuePersistance); MineController mineController = GetComponent <MineController>(); if (mineController != null) { mineController.SetObject(serializedObject.mineControllerPersistance); } ResourceStorageController resourceStorageController = GetComponent <ResourceStorageController>(); if (resourceStorageController != null) { resourceStorageController.SetObject(serializedObject.resourceStoragePersistance); } foreach (TurretControllerPersistance turretControllerPersistance in serializedObject.turretControllerPersistances) { transform.GetChild(turretControllerPersistance.turretIndex).GetComponent <TurretController>().SetObject(turretControllerPersistance); } this._ship = serializedObject.ship; this.shipType = serializedObject.shipType; return(this); }
private void Start() { resourceStorageController = GetComponent <ResourceStorageController>(); if (miningTimer == null) { miningTimer = new Timer(miningInterval, false, Mine); } }
public MineCommand(MapObject source, MapObject target) : base(source, target, CommandType.Mine) { resourceStorageController = source.GetComponent <ResourceStorageController>(); mineController = source.GetComponent <MineController>(); if (target != null) { asteroidController = target.GetComponent <AsteroidController>() ?? null; } base.destinationOffset = 2f; player = PlayerDatabase.Instance.GetObjectPlayer(source.gameObject); }
public ShipControllerPersistance Serialize() { List <TurretControllerPersistance> turretControllerPersistances = new List <TurretControllerPersistance>(); TurretController[] turretControllers = GetComponentsInChildren <TurretController>(); foreach (TurretController turretController in turretControllers) { turretControllerPersistances.Add(turretController.Serialize()); } ShipControllerPersistance shipControllerPersistance = new ShipControllerPersistance(Ship, shipType, GetComponent <MapObject>().Serialize(), _fleetCommandQueue.Serialize(), turretControllerPersistances, true); MineController mineController = GetComponent <MineController>(); ResourceStorageController resourceStorageController = GetComponent <ResourceStorageController>(); shipControllerPersistance.mineControllerPersistance = mineController != null?mineController.Serialize() : null; shipControllerPersistance.resourceStoragePersistance = resourceStorageController != null?resourceStorageController.Serialize() : null; return(shipControllerPersistance); }