void OnWizardOtherButton()
    {
        // If we have something selected
        if (Selection.activeTransform != null)
        {
            Rigidbody rigidbody = Selection.activeTransform.GetComponent <Rigidbody>();
            if (rigidbody == null)
            {
                rigidbody = Selection.activeGameObject.AddComponent <Rigidbody>();
            }
            rigidbody.useGravity  = false;
            rigidbody.constraints = RigidbodyConstraints.FreezePosition | RigidbodyConstraints.FreezeRotation;

            // TurretInit requires TurretAI which requires RangeChecker, TurretTrackingV3, Weapon
            TurretInit turretInit = Selection.activeTransform.GetComponent <TurretInit>();
            if (turretInit == null)
            {
                turretInit = Selection.activeGameObject.AddComponent <TurretInit>();
            }

            TurretTrackingV4 tracking = Selection.activeTransform.GetComponent <TurretTrackingV4>();
            if (tracking == null)
            {
                tracking = Selection.activeGameObject.AddComponent <TurretTrackingV4>();
            }
            tracking.horizontalRotation = horizontalRotation;
            tracking.verticalRotation   = verticalRotation;
            tracking.barrelRotation     = barrelRotation;

            range = Selection.activeTransform.Find("RangeChecker").GetComponent <SphereCollider>();
            RangeChecker rangeChecker = Selection.activeTransform.GetComponent <RangeChecker>();
            rangeChecker.range = range;

            healthSlider = healthSlider.GetComponent <Slider>();
            HealthUI healthUI = Selection.activeTransform.GetComponent <HealthUI>();
            healthUI.slider = healthSlider;

            Weapon weapon = Selection.activeTransform.GetComponent <Weapon>();
            weapon.projectileSpawns = projectileSpawns;

            MessageHandler messageHandler = Selection.activeTransform.GetComponent <MessageHandler>();
            if (!messageHandler.messages.Contains(MessageType.HEALTHCHANGED))
            {
                messageHandler.messages.Add(MessageType.HEALTHCHANGED);
            }
            if (!messageHandler.messages.Contains(MessageType.DAMAGED))
            {
                messageHandler.messages.Add(MessageType.DAMAGED);
            }
            if (!messageHandler.messages.Contains(MessageType.DIED))
            {
                messageHandler.messages.Add(MessageType.DIED);
            }
        }
    }
示例#2
0
    //public List<GameObject> projectileSpawns;

    // Use this for initialization
    void Awake()
    {
        Health health = GetComponent <Health>();

        health.maxHealth     = turretProfile.health;
        health.canRegenerate = turretProfile.canRegenerate;
        health.regenRate     = turretProfile.regenRate;

        /*HealthUI healthUI = GetComponent<HealthUI>();
         * healthUI.slider = slider;*/

        TurretTrackingV4 trackingV3 = GetComponent <TurretTrackingV4>();

        trackingV3.rotatingBarrel   = turretProfile.rotatingBarrel;
        trackingV3.rotationSpeed    = turretProfile.rotationSpeed;
        trackingV3.barrelSpeed      = turretProfile.barrelSpeed;
        trackingV3.horizontalSpeed  = turretProfile.horizontalSpeed;
        trackingV3.verticalSpeed    = turretProfile.verticalSpeed;
        trackingV3.followMultiplyer = turretProfile.followMultiplyer;

        Weapon weapon = GetComponent <Weapon>();

        //weapon.projectileSpawns = projectileSpawns;
        weapon.projectile               = turretProfile.projectile;
        weapon.damage                   = turretProfile.damage;
        weapon.fileRate                 = turretProfile.fileRate;
        weapon.muzzleVeclocity          = turretProfile.muzzleVeclocity;
        weapon.jitterX                  = turretProfile.jitterX;
        weapon.jitterY                  = turretProfile.jitterY;
        weapon.jitterOverTimeIncreaseBy = turretProfile.jitterOverTimeIncreaseBy;
        weapon.VFX_Muzzle               = turretProfile.VFX_Muzzle;
        weapon.shootSoundIndex          = turretProfile.shootSoundIndex;

        RangeChecker rangeChecker = GetComponent <RangeChecker>();

        rangeChecker.tags     = turretProfile.tags;
        rangeChecker.maxRange = turretProfile.maxRange;
        //rangeChecker.range = range;
    }
示例#3
0
 // Use this for initialization
 void Start()
 {
     _range    = GetComponent <RangeChecker>();
     _tracking = GetComponent <TurretTrackingV4>();
     _weapon   = GetComponent <Weapon>();
 }