private void Setup() { sysScr = GetComponent <SystemScript>(); gridPos = sysScr.GridPos; //needs more info... //ship = LevelManager.Instance.Ships [playerID].GetComponent <ShipScript> (); GameObject _ship = transform.parent.parent.parent.parent.gameObject; //ShipScript _shipScr = _ship.GetComponent <ShipScript> (); pwrMngr = _ship.GetComponent <ShipPowerMngr> (); hScr = sysScr.GetOriginObj().GetComponent <HealthScript> (); //Debug.LogError (_ship.transform.childCount); if (_ship.transform.childCount < 7) { //if (_ship.transform.GetChild (7) == null) { //Debug.LogError ("shield stuff called"); GameObject _shield = (GameObject)Instantiate(shield, _ship.transform); shield = _shield; shieldScr = shield.GetComponent <ShieldScript> (); shieldScr.Setup(gridPos.Z); /* * GameObject _field = _ship.transform.GetChild (1).gameObject; * * shield.transform.position = _field.transform.position; * shield.transform.localScale = (_field.transform.localScale * 16 / 1920); * //float _scale = (Screen.width / shield.GetComponent <SpriteRenderer> ().bounds.size.x); * float _scale0 = (_field.transform.localScale.x * 16 / 1920); * float _scale1 = (_field.transform.localScale.y * 16 / 1080); * //shield.transform.localScale = new Vector3 (_scale, _scale, _scale); * * shield.transform.localScale = new Vector3 (_scale0, _scale1); */ } else { //Debug.LogError ("no shield stuff called"); shield = _ship.transform.GetChild(6).gameObject; shieldScr = shield.GetComponent <ShieldScript> (); } //IncreaseShieldCapacity (shieldBoost); pwrMngr.PowerSetup(systemType, powerReq); originShldSys = GetOriginShielSystem(); originShldSys.fullPwrReq += powerReq; if (this == originShldSys) { isOrigin = true; pwrMngr.AddToSysScrList(systemType, sysScr); } }
/* * public void UpdatePowerState (bool _isPowered) { * if (isPowered) { * //try power down * pwrMngr.PowerDistribution (systemType, -powerReq, this); * //updates available power * //pwrMngr.PowerDistribution (0, powerReq); * pwrMngr.UpdateReactor (powerReq); * isPowered = false; * } else { * if (!hScr.IsFullyDamaged) { * Debug.Log ("req: " + powerReq); * Debug.Log ("full req: " + originShldSys.fullPwrReq); * if (this == originShldSys) { * if (pwrMngr.EnoughPower (fullPwrReq)) { * //try power up * * pwrMngr.PowerDistribution (systemType, powerReq, this); * isPowered = true; * } * } else { * Debug.Log ("fasfaf"); * pwrMngr.PowerDistribution (systemType, powerReq, this); * isPowered = true; * } * } * * Debug.Log ("is fully damaged: " + hScr.IsFullyDamaged); * } * * //isPowered = !isPowered; * Debug.Log ("shield powered = " + isPowered); * } */ private ShieldSystemScript GetOriginShielSystem() { ShieldSystemScript _shldScr = sysScr.GetOriginObj().GetComponent <ShieldSystemScript> (); return(_shldScr); }