コード例 #1
0
 void FixedUpdate()
 {
     activeAbility = (quincy_ability)abilitySelector.getSelectedAbility();
     if (Input.GetKeyDown(KeyCode.Q) && PoPCamera.State == PoPCamera.CameraState.TargetLock)
     {
         try_ability(activeAbility);
     }
 }
コード例 #2
0
    /*!
     * This will call the apropriate behavior function in the Item class of an object.
     * @param ability The ability type for wich it will call the apropriate function in Item.
     * @param newTarget Optional parameter if you wish to use this function on an object that is not the camera target.
     */
    void try_ability(quincy_ability ability, GameObject newTarget = null)
    {
        if (ability_ready(ability))
        {
            GameObject target = PoPCamera.instance.CurrentTarget();
            if (target && target.GetComponent <Item>())
            {
                Item script = target.GetComponent <Item>();

                switch (ability)
                {
                case quincy_ability.Cut:
                    script.Cut();
                    break;

                case quincy_ability.SoundThrow:
                    script.SoundThrow(soundRange);
                    break;

                case quincy_ability.Stun:
                    script.Stun(stunTime);
                    break;

                case quincy_ability.Push:
                    script.Push(gameObject.transform.position, pushDistance, pushRange);
                    break;

                case quincy_ability.Pull:
                    script.Pull(gameObject.transform.position, pushDistance, pullRange);
                    break;

                case quincy_ability.Heat:
                    script.Heat();
                    break;

                case quincy_ability.Cool:
                    script.Cool();
                    break;

                case quincy_ability.Blast:
                    script.Blast();
                    break;
                }
            }
        }
    }
コード例 #3
0
ファイル: Quinc.cs プロジェクト: chicostategamestudios/qk-pop
	void FixedUpdate()
	{
		activeAbility = (quincy_ability)abilitySelector.getSelectedAbility();
		if(Input.GetKeyDown(KeyCode.Q) && PoPCamera.State == PoPCamera.CameraState.TargetLock)
		{
				try_ability(activeAbility);
		}
	}
コード例 #4
0
ファイル: Quinc.cs プロジェクト: chicostategamestudios/qk-pop
	/*!
	 * Checks if the given ability is ready to be used, and if it is, resets the cooldown.
	 * @param ability The ability that is checked.
	 */
	bool ability_ready(quincy_ability ability){

		switch (ability) {
		case quincy_ability.Cut:
			if(Time.time > nextCut){
				nextCut = Time.time + cutRate;
				return true;
			}
			else return false;

		case quincy_ability.SoundThrow:
			if(Time.time > nextSound){
				nextSound = Time.time + soundRate;
				return true;
			}
			else return false;

		case quincy_ability.Stun:
			if(Time.time > nextStun){
				nextStun = Time.time + stunRate;
				return true;
			}
			else return false;

		case quincy_ability.Push:
			if(Time.time > nextPush){
				nextPush = Time.time + pushRate;
				return true;
			}
			else return false;

		case quincy_ability.Pull:
			if(Time.time > nextPull){
				nextPull = Time.time + pullRate;
				return true;
			}
			else return false;

		case quincy_ability.Heat:
			if(Time.time > nextHeat){
				nextHeat = Time.time + heatRate;
				return true;
			}
			else return false;

		case quincy_ability.Cool:
			if(Time.time > nextCold){
				nextCold = Time.time + coldRate;
				return true;
			}
			else return false;

		case quincy_ability.Blast:
			if(Time.time > nextBlast){
				nextBlast = Time.time + blastRate;
				return true;
			}
			else return false;
		default:
			return false;
		}
	}
コード例 #5
0
ファイル: Quinc.cs プロジェクト: chicostategamestudios/qk-pop
	/*!
	 * This will call the apropriate behavior function in the Item class of an object.
	 * @param ability The ability type for wich it will call the apropriate function in Item.
	 * @param newTarget Optional parameter if you wish to use this function on an object that is not the camera target.
	 */
	void try_ability(quincy_ability ability, GameObject newTarget = null){
		if (ability_ready (ability)) {
			GameObject target = PoPCamera.instance.CurrentTarget();
			if(target && target.GetComponent<Item>()){
				Item script = target.GetComponent<Item>();

				switch(ability){
				case quincy_ability.Cut:
					script.Cut();
					break;

				case quincy_ability.SoundThrow:
					script.SoundThrow(soundRange);
					break;

				case quincy_ability.Stun:
					script.Stun(stunTime);
					break;

				case quincy_ability.Push:
					script.Push(gameObject.transform.position, pushDistance, pushRange);
					break;

				case quincy_ability.Pull:
					script.Pull(gameObject.transform.position, pushDistance, pullRange);
					break;

				case quincy_ability.Heat:
					script.Heat();
					break;

				case quincy_ability.Cool:
					script.Cool();
					break;

				case quincy_ability.Blast:
					script.Blast();
					break;
				}
			}
		}
	}
コード例 #6
0
    public override void OnInspectorGUI()
    {
        EditorGUI.BeginChangeCheck();

        EditorGUILayout.BeginHorizontal();
        GUILayout.Label("Settings for:", GUILayout.MaxWidth(80));
        selected_ability = (quincy_ability)EditorGUILayout.EnumPopup(selected_ability);
        EditorGUILayout.EndHorizontal();

        EditorGUILayout.BeginHorizontal();
        quinc_target.abilitySelector = (AbilityDockController)EditorGUILayout.ObjectField(quinc_target.abilitySelector, typeof(AbilityDockController), true);
        EditorGUILayout.EndHorizontal();

        EditorGUILayout.BeginVertical();
        switch (selected_ability) {
        case quincy_ability.Push:
            EditorGUILayout.BeginHorizontal();
            GUILayout.Label("Reload Time:", GUILayout.MaxWidth(80));
            quinc_target.pushRate = EditorGUILayout.Slider(quinc_target.pushRate, 0.0f, 50.0f);
            EditorGUILayout.EndHorizontal();
            EditorGUILayout.BeginHorizontal();
            GUILayout.Label("Force:", GUILayout.MaxWidth(80));
            quinc_target.pushDistance = EditorGUILayout.Slider(quinc_target.pushDistance, 0.0f, 50.0f);
            EditorGUILayout.EndHorizontal();
            EditorGUILayout.BeginHorizontal();
            GUILayout.Label("Range:", GUILayout.MaxWidth(80));
            quinc_target.pushRange = EditorGUILayout.Slider(quinc_target.pushRange, 0.0f, 50.0f);
            EditorGUILayout.EndHorizontal();
            break;

        case quincy_ability.Pull:
            EditorGUILayout.BeginHorizontal();
            GUILayout.Label("Reload Time:", GUILayout.MaxWidth(80));
            quinc_target.pullRate = EditorGUILayout.Slider(quinc_target.pullRate, 0.0f, 50.0f);
            EditorGUILayout.EndHorizontal();
            EditorGUILayout.BeginHorizontal();
            GUILayout.Label("Force:", GUILayout.MaxWidth(80));
            quinc_target.pullDistance = EditorGUILayout.Slider(quinc_target.pullDistance, 0.0f, 50.0f);
            EditorGUILayout.EndHorizontal();
            EditorGUILayout.BeginHorizontal();
            GUILayout.Label("Range:", GUILayout.MaxWidth(80));
            quinc_target.pullRange = EditorGUILayout.Slider(quinc_target.pullRange, 0.0f, 50.0f);
            EditorGUILayout.EndHorizontal();
            break;

        case quincy_ability.Cut:
            EditorGUILayout.BeginHorizontal();
            GUILayout.Label("Reload Time:", GUILayout.MaxWidth(80));
            quinc_target.cutRate = EditorGUILayout.Slider(quinc_target.cutRate, 0.0f, 50.0f);
            EditorGUILayout.EndHorizontal();
            EditorGUILayout.BeginHorizontal();
            GUILayout.Label("Range:", GUILayout.MaxWidth(80));
            quinc_target.cutRange = EditorGUILayout.Slider(quinc_target.cutRange, 0.0f, 50.0f);
            EditorGUILayout.EndHorizontal();
            break;

        case quincy_ability.SoundThrow:
            EditorGUILayout.BeginHorizontal();
            GUILayout.Label("Reload Time:", GUILayout.MaxWidth(80));
            quinc_target.soundRate = EditorGUILayout.Slider(quinc_target.soundRate, 0.0f, 50.0f);
            EditorGUILayout.EndHorizontal();
            EditorGUILayout.BeginHorizontal();
            GUILayout.Label("Range:", GUILayout.MaxWidth(80));
            quinc_target.soundRange = EditorGUILayout.Slider(quinc_target.soundRange, 0.0f, 50.0f);
            EditorGUILayout.EndHorizontal();
            break;

        case quincy_ability.Stun:
            EditorGUILayout.BeginHorizontal();
            GUILayout.Label("Reload Time:", GUILayout.MaxWidth(80));
            quinc_target.stunRate = EditorGUILayout.Slider(quinc_target.stunRate, 0.0f, 50.0f);
            EditorGUILayout.EndHorizontal();
            EditorGUILayout.BeginHorizontal();
            GUILayout.Label("Range:", GUILayout.MaxWidth(80));
            quinc_target.stunRange = EditorGUILayout.Slider(quinc_target.stunRange, 0.0f, 50.0f);
            EditorGUILayout.EndHorizontal();
            EditorGUILayout.BeginHorizontal();
            GUILayout.Label("Stun Time:", GUILayout.MaxWidth(80));
            quinc_target.stunTime = EditorGUILayout.Slider(quinc_target.stunTime, 0.0f, 50.0f);
            EditorGUILayout.EndHorizontal();
            break;

        case quincy_ability.Cool:
            EditorGUILayout.BeginHorizontal();
            GUILayout.Label("Reload Time:", GUILayout.MaxWidth(80));
            quinc_target.coldRate = EditorGUILayout.Slider(quinc_target.coldRate, 0.0f, 50.0f);
            EditorGUILayout.EndHorizontal();
            EditorGUILayout.BeginHorizontal();
            GUILayout.Label("Range:", GUILayout.MaxWidth(80));
            quinc_target.coldRange = EditorGUILayout.Slider(quinc_target.coldRange, 0.0f, 50.0f);
            EditorGUILayout.EndHorizontal();
            break;

        case quincy_ability.Heat:
            EditorGUILayout.BeginHorizontal();
            GUILayout.Label("Reload Time:", GUILayout.MaxWidth(80));
            quinc_target.heatRate = EditorGUILayout.Slider(quinc_target.heatRate, 0.0f, 50.0f);
            EditorGUILayout.EndHorizontal();
            EditorGUILayout.BeginHorizontal();
            GUILayout.Label("Range:", GUILayout.MaxWidth(80));
            quinc_target.heatRange = EditorGUILayout.Slider(quinc_target.heatRange, 0.0f, 50.0f);
            EditorGUILayout.EndHorizontal();
            break;
        }
        EditorGUILayout.EndVertical();

        EditorGUI.EndChangeCheck();
    }
コード例 #7
0
 void OnEnable()
 {
     quinc_target = (Quinc)target;
     selected_ability = quincy_ability.Push;
 }
コード例 #8
0
    /*!
     * Checks if the given ability is ready to be used, and if it is, resets the cooldown.
     * @param ability The ability that is checked.
     */
    bool ability_ready(quincy_ability ability)
    {
        switch (ability)
        {
        case quincy_ability.Cut:
            if (Time.time > nextCut)
            {
                nextCut = Time.time + cutRate;
                return(true);
            }
            else
            {
                return(false);
            }

        case quincy_ability.SoundThrow:
            if (Time.time > nextSound)
            {
                nextSound = Time.time + soundRate;
                return(true);
            }
            else
            {
                return(false);
            }

        case quincy_ability.Stun:
            if (Time.time > nextStun)
            {
                nextStun = Time.time + stunRate;
                return(true);
            }
            else
            {
                return(false);
            }

        case quincy_ability.Push:
            if (Time.time > nextPush)
            {
                nextPush = Time.time + pushRate;
                return(true);
            }
            else
            {
                return(false);
            }

        case quincy_ability.Pull:
            if (Time.time > nextPull)
            {
                nextPull = Time.time + pullRate;
                return(true);
            }
            else
            {
                return(false);
            }

        case quincy_ability.Heat:
            if (Time.time > nextHeat)
            {
                nextHeat = Time.time + heatRate;
                return(true);
            }
            else
            {
                return(false);
            }

        case quincy_ability.Cool:
            if (Time.time > nextCold)
            {
                nextCold = Time.time + coldRate;
                return(true);
            }
            else
            {
                return(false);
            }

        case quincy_ability.Blast:
            if (Time.time > nextBlast)
            {
                nextBlast = Time.time + blastRate;
                return(true);
            }
            else
            {
                return(false);
            }

        default:
            return(false);
        }
    }
コード例 #9
0
 void OnEnable()
 {
     quinc_target     = (Quinc)target;
     selected_ability = quincy_ability.Push;
 }
コード例 #10
0
    override public void OnInspectorGUI()
    {
        EditorGUI.BeginChangeCheck();

        EditorGUILayout.BeginHorizontal();
        GUILayout.Label("Settings for:", GUILayout.MaxWidth(80));
        selected_ability = (quincy_ability)EditorGUILayout.EnumPopup(selected_ability);
        EditorGUILayout.EndHorizontal();

        EditorGUILayout.BeginHorizontal();
        quinc_target.abilitySelector = (AbilityDockController)EditorGUILayout.ObjectField(quinc_target.abilitySelector, typeof(AbilityDockController), true);
        EditorGUILayout.EndHorizontal();

        EditorGUILayout.BeginVertical();
        switch (selected_ability)
        {
        case quincy_ability.Push:
            EditorGUILayout.BeginHorizontal();
            GUILayout.Label("Reload Time:", GUILayout.MaxWidth(80));
            quinc_target.pushRate = EditorGUILayout.Slider(quinc_target.pushRate, 0.0f, 50.0f);
            EditorGUILayout.EndHorizontal();
            EditorGUILayout.BeginHorizontal();
            GUILayout.Label("Force:", GUILayout.MaxWidth(80));
            quinc_target.pushDistance = EditorGUILayout.Slider(quinc_target.pushDistance, 0.0f, 50.0f);
            EditorGUILayout.EndHorizontal();
            EditorGUILayout.BeginHorizontal();
            GUILayout.Label("Range:", GUILayout.MaxWidth(80));
            quinc_target.pushRange = EditorGUILayout.Slider(quinc_target.pushRange, 0.0f, 50.0f);
            EditorGUILayout.EndHorizontal();
            break;

        case quincy_ability.Pull:
            EditorGUILayout.BeginHorizontal();
            GUILayout.Label("Reload Time:", GUILayout.MaxWidth(80));
            quinc_target.pullRate = EditorGUILayout.Slider(quinc_target.pullRate, 0.0f, 50.0f);
            EditorGUILayout.EndHorizontal();
            EditorGUILayout.BeginHorizontal();
            GUILayout.Label("Force:", GUILayout.MaxWidth(80));
            quinc_target.pullDistance = EditorGUILayout.Slider(quinc_target.pullDistance, 0.0f, 50.0f);
            EditorGUILayout.EndHorizontal();
            EditorGUILayout.BeginHorizontal();
            GUILayout.Label("Range:", GUILayout.MaxWidth(80));
            quinc_target.pullRange = EditorGUILayout.Slider(quinc_target.pullRange, 0.0f, 50.0f);
            EditorGUILayout.EndHorizontal();
            break;

        case quincy_ability.Cut:
            EditorGUILayout.BeginHorizontal();
            GUILayout.Label("Reload Time:", GUILayout.MaxWidth(80));
            quinc_target.cutRate = EditorGUILayout.Slider(quinc_target.cutRate, 0.0f, 50.0f);
            EditorGUILayout.EndHorizontal();
            EditorGUILayout.BeginHorizontal();
            GUILayout.Label("Range:", GUILayout.MaxWidth(80));
            quinc_target.cutRange = EditorGUILayout.Slider(quinc_target.cutRange, 0.0f, 50.0f);
            EditorGUILayout.EndHorizontal();
            break;

        case quincy_ability.SoundThrow:
            EditorGUILayout.BeginHorizontal();
            GUILayout.Label("Reload Time:", GUILayout.MaxWidth(80));
            quinc_target.soundRate = EditorGUILayout.Slider(quinc_target.soundRate, 0.0f, 50.0f);
            EditorGUILayout.EndHorizontal();
            EditorGUILayout.BeginHorizontal();
            GUILayout.Label("Range:", GUILayout.MaxWidth(80));
            quinc_target.soundRange = EditorGUILayout.Slider(quinc_target.soundRange, 0.0f, 50.0f);
            EditorGUILayout.EndHorizontal();
            break;

        case quincy_ability.Stun:
            EditorGUILayout.BeginHorizontal();
            GUILayout.Label("Reload Time:", GUILayout.MaxWidth(80));
            quinc_target.stunRate = EditorGUILayout.Slider(quinc_target.stunRate, 0.0f, 50.0f);
            EditorGUILayout.EndHorizontal();
            EditorGUILayout.BeginHorizontal();
            GUILayout.Label("Range:", GUILayout.MaxWidth(80));
            quinc_target.stunRange = EditorGUILayout.Slider(quinc_target.stunRange, 0.0f, 50.0f);
            EditorGUILayout.EndHorizontal();
            EditorGUILayout.BeginHorizontal();
            GUILayout.Label("Stun Time:", GUILayout.MaxWidth(80));
            quinc_target.stunTime = EditorGUILayout.Slider(quinc_target.stunTime, 0.0f, 50.0f);
            EditorGUILayout.EndHorizontal();
            break;

        case quincy_ability.Cool:
            EditorGUILayout.BeginHorizontal();
            GUILayout.Label("Reload Time:", GUILayout.MaxWidth(80));
            quinc_target.coldRate = EditorGUILayout.Slider(quinc_target.coldRate, 0.0f, 50.0f);
            EditorGUILayout.EndHorizontal();
            EditorGUILayout.BeginHorizontal();
            GUILayout.Label("Range:", GUILayout.MaxWidth(80));
            quinc_target.coldRange = EditorGUILayout.Slider(quinc_target.coldRange, 0.0f, 50.0f);
            EditorGUILayout.EndHorizontal();
            break;

        case quincy_ability.Heat:
            EditorGUILayout.BeginHorizontal();
            GUILayout.Label("Reload Time:", GUILayout.MaxWidth(80));
            quinc_target.heatRate = EditorGUILayout.Slider(quinc_target.heatRate, 0.0f, 50.0f);
            EditorGUILayout.EndHorizontal();
            EditorGUILayout.BeginHorizontal();
            GUILayout.Label("Range:", GUILayout.MaxWidth(80));
            quinc_target.heatRange = EditorGUILayout.Slider(quinc_target.heatRange, 0.0f, 50.0f);
            EditorGUILayout.EndHorizontal();
            break;
        }
        EditorGUILayout.EndVertical();

        EditorGUI.EndChangeCheck();
    }