Example #1
0
    public float RechargeAmount = 50f; // hard coded for now, make variable

    // Use this for initialization
    void Start()
    {
        // TODO - get renderers automatically

        _targeter = GetComponent <TargetableComponentController>();

        // get faction of ship
        var ship = transform.parent.parent.GetComponent <ShipController>();

        Color = FactionColors.ShieldColor[ship.Faction];

        _strength = MaxStrength;
        _strengthAtStartOfTurn = _strength;
        _collider = GetComponent <Collider>();

        SetShaderParams();
        SetBeamPositions();

        PowerPlant = GetComponentInParent <ShipController>().GetComponentInChildren <PowerController>(); // for now assumes one power plant per ship

        GameManager.Instance.RegisterOnResetToStart(OnResetToStart);
        GameManager.Instance.RegisterOnStartOfPlanning(OnStartOfPlanning);
        GameManager.Instance.RegisterOnStartOfOutcome(OnStartOfOutcome);
        GameManager.Instance.RegisterOnEndOfTurn(OnEndOfTurn);
    }
    // Use this for initialization
    void Start()
    {
        FreeFire      = true;
        _showArc      = true;
        _targeter     = GetComponent <TargetableComponentController>();
        DamageBoosted = false;
        RangeBoosted  = false;

        _arcIndicator = transform.Find("ArcIndicator").GetComponent <LineRenderer>();
        _meshRenderer = GetComponentInChildren <MeshRenderer>();

        // get faction of ship
        _faction    = transform.parent.parent.GetComponent <ShipController>().Faction;
        _laserColor = FactionColors.LaserColor[_faction];

        transform.gameObject.layer = (_faction == Faction.Friendly ? GameManager.PLAYER_LAYER : GameManager.ENEMY_LAYER);

        PowerPlant = GetComponentInParent <ShipController>().GetComponentInChildren <PowerController>(); // for now assumes one power plant per ship

        GameManager.Instance.RegisterOnResetToStart(OnResetToStart);
        GameManager.Instance.RegisterOnStartOfPlanning(OnStartOfPlanning);
        GameManager.Instance.RegisterOnStartOfOutcome(OnStartOfOutcome);
        GameManager.Instance.RegisterOnEndOfTurn(OnEndOfTurn);
    }