Ejemplo n.º 1
0
 // Use this for initialization
 void Start()
 {
     cameraScripts            = Camera.main.GetComponent <CameraScripts>();
     partySystem              = GameObject.Find("PartySystem").GetComponent <PartySystem>();
     playerHUD                = GameObject.Find("HUD").GetComponent <PlayerHUD>();
     targetedAbilityIndicator = GameObject.Find("HUD").GetComponent <TargetedAbilityIndicator>();
     keyboardHelp             = GameObject.Find("KeyboardHelp").gameObject;
     keyboardHelp.SetActive(false);
     lichManaBar       = GameObject.Find("Bar_Mana").gameObject.GetComponent <RectTransform>();
     lichManaBarScaleX = lichManaBar.localScale.x;
 }
Ejemplo n.º 2
0
 // Use this for initialization
 void Start()
 {
     cameraScripts = Camera.main.GetComponent <CameraScripts>();
     playerHUD     = GameObject.Find("HUD").GetComponent <PlayerHUD>();
     gameHUD       = GameObject.Find("HUD").GetComponent <GameHUD>();
     initPositions();
     initCharacterList();
     character1 = characters[0];
     character2 = characters[1];
     character3 = characters[2];
     character4 = characters[3];
     selectAll();
 }
Ejemplo n.º 3
0
    public override float startCast(Vector2 targetPosition)
    {
        checkForParent();
        if (currentCooldown <= 0)
        {
            if (!parent.tag.Equals("Player"))
            {
                this.targetPosition = targetPosition;
                castTime           += Tuner.CAST_TIME_EXTRA_FOR_ENEMIES;
            }
            else
            {
                this.targetPosition = CameraScripts.getCurrentMousePos();
            }
            return(castTime);
        }

        return(0);
    }
Ejemplo n.º 4
0
    // Use this for initialization
    void Start()
    {
        //问题一:
        //为什么是在Material上进行设置?
        if (mainCamera)
        {
            mainCamera.clearFlags = CameraClearFlags.Nothing;
            if (PathTracerMaterial)
            {
                Debug.Log("PathTracerMaterial found");
                Vector2 _resolution = new Vector2(Screen.width, Screen.height);
                PathTracerMaterial.SetVector("Resolution", _resolution);
                Debug.Log("screen resolution:" + _resolution.ToString());
                PathTracerMaterial.SetInt("SAMPLES", samples);
                PathTracerMaterial.SetInt("MAX_DEPTH", bounces);
            }
            //设置渲染纹理的超分辨率
            renderBuffer = new RenderTexture((int)(Screen.width * supersamplingFactor), (int)(Screen.height * supersamplingFactor), 0, RenderTextureFormat.ARGB32);
            //Anisotropic filtering level of the texture
            renderBuffer.anisoLevel       = 0;
            renderBuffer.autoGenerateMips = false;
            renderBuffer.filterMode       = FilterMode.Trilinear;
            renderBuffer.useMipMap        = false;

            renderBuffer.Create();

            copyBuffer                  = new RenderTexture((int)(Screen.width * supersamplingFactor), (int)(Screen.height * supersamplingFactor), 0, RenderTextureFormat.ARGB32);
            copyBuffer.anisoLevel       = 0;
            copyBuffer.autoGenerateMips = false;
            copyBuffer.filterMode       = FilterMode.Trilinear;
            copyBuffer.useMipMap        = false;

            copyBuffer.Create();

            cameraScript = (CameraScripts)mainCamera.gameObject.AddComponent(typeof(CameraScripts));
            cameraScript.renderBuffer = renderBuffer;
            cameraScript.copyBuffer   = copyBuffer;
            cameraScript.mainCamera   = mainCamera;
            cameraScript.inputSamples = samples;

            cameraScript.PathTracerMaterial = PathTracerMaterial;
        }
    }
Ejemplo n.º 5
0
 // Use this for initialization
 void Start()
 {
     resultScore = CameraScripts.getScore();
 }
Ejemplo n.º 6
0
	void Awake() {
		cameraScript = Camera.main.GetComponent<CameraScripts> ();
	}
Ejemplo n.º 7
0
    // Update is called once per frame
    void Update()
    {
        if (Input.GetKeyDown(KeyCode.G))
        {
            cameraScripts.toggleLock();
        }
        if (Input.GetKeyDown(KeyCode.V))
        {
            HealthBar[] healthBars = FindObjectsOfType(typeof(HealthBar)) as HealthBar[];
            foreach (HealthBar bar in healthBars)
            {
                bar.toggleVisibility();
            }
        }
        if (Input.GetKeyDown(KeyCode.H))
        {
            if (lichMana >= Tuner.LICH_ABILITY_HEAL_COST)
            {
                bool healed = false;
                foreach (GameObject c in partySystem.aliveCharacters)
                {
                    if (c != null && c.GetComponent <UnitCombat>() != null)
                    {
                        if (c.GetComponent <UnitCombat>().getHealth() != c.GetComponent <UnitCombat>().getMaxHealth())
                        {
                            foreach (GameObject b in partySystem.aliveCharacters)
                            {
                                if (b != null && b.GetComponent <UnitCombat>() != null)
                                {
                                    b.GetComponent <UnitCombat>().takeDamage(-(b.GetComponent <UnitCombat>().getMaxHealth() * Tuner.LICH_ABILITY_HEAL_AMOUNT), null);
                                }
                            }
                            healed = true;
                            break;
                        }
                    }
                }
                if (healed)
                {
                    lichMana -= Tuner.LICH_ABILITY_HEAL_COST;
                }
            }
        }
        if (Input.GetKeyDown(KeyCode.F1))
        {
            keyboardHelp.SetActive(!keyboardHelp.activeSelf);
        }

        /////////////////////////////////////
        /// LICH ABILITIES
        /////////////////////////////////////
        float manaScale = lichMana / 100f;

        manaScale = Mathf.Clamp(manaScale, 0, 1f);
        lichManaBar.localScale = new Vector3(lichManaBarScaleX * manaScale, lichManaBar.localScale.y, lichManaBar.localScale.z);
        /////////////////////////////////////
        /// CHARACTER ABILITIES
        /////////////////////////////////////
        for (int i = 0; i < 8; i++)
        {
            wasTargeting[i] = targeting[i];
        }

        GameObject character = null;

        for (int i = 0; i < 8; i++)
        {
            int        characterID = Mathf.FloorToInt((i * 0.5f) + 1);
            int        abilityID   = (i % 2);
            UnitCombat unitCombat  = partySystem.getCharacter(characterID).GetComponent <UnitCombat>();

            if ((Input.GetKeyDown(Tuner.KEYS_CHARACTER_ABILITY[i]) || HUDCast[i] == true) && !Input.GetKey(KeyCode.LeftShift) && unitCombat.isAlive())
            {
                if (unitCombat.canCastAbility(abilityID, Vector2.zero, false))
                {
                    targeting[i] = true;
                    //shift = false;
                }
            }
            if (targeting[i] && (Input.GetMouseButtonDown(1) || !Input.GetKey(Tuner.KEYS_CHARACTER_ABILITY[i])) && HUDCast[i] == false)
            {
                if (!Input.GetKey(Tuner.KEYS_CHARACTER_ABILITY[i]))
                {
                    unitCombat.castAbilityInSlot(abilityID, CameraScripts.getCurrentMousePos());
                }
                targeting[i] = false;
                //shift = false;
            }
        }

        /*
         *  if (i < 4)
         *  {
         *      if (targeting[i] && (Input.GetMouseButtonDown(1) || !Input.GetKey(Tuner.KEYS_CHARACTER_ABILITY[i])) && HUDCast[i] == false)
         *      {
         *          if (!Input.GetKey(Tuner.KEYS_CHARACTER_ABILITY[i]))
         *          {
         *              unitCombat.castSpellInSlot(spellID);
         *          }
         *          targeting[i] = false;
         *          shift = false;
         *      }
         *  }
         *  else
         *  {
         *      if (Input.GetKeyDown(Tuner.KEYS_CHARACTER_ABILITY[i - 4]) && Input.GetKey(KeyCode.LeftShift) && unitCombat.isAlive())
         *      {
         *          if (unitCombat.canCastSpell(spellID))
         *          {
         *              targeting[i] = true;
         *              shift = true;
         *          }
         *      }
         *      if (targeting[i] && (Input.GetMouseButtonDown(1) || (!shift && !Input.GetKey(Tuner.KEYS_CHARACTER_ABILITY[i])) || (shift && !Input.GetKey(Tuner.KEYS_CHARACTER_ABILITY[i - 4]))) && HUDCast[i] == false)
         *      {
         *          if (!Input.GetKey(Tuner.KEYS_CHARACTER_ABILITY[i]) || (shift && !Input.GetKey(Tuner.KEYS_CHARACTER_ABILITY[i - 4])))
         *          {
         *              unitCombat.castSpellInSlot(spellID);
         *          }
         *          targeting[i] = false;
         *          shift = false;
         *      }
         *  }
         */
        for (int i = 0; i < 8; i++)
        {
            int characterID = Mathf.FloorToInt((i * 0.5f) + 1);
            int abilityID   = (i % 2);
            character = partySystem.getCharacter(characterID);
            Ability ability = character.GetComponent <UnitCombat>().getAbilityList()[abilityID];

            if (targeting[i])
            {
                targetedAbilityIndicator.showIndicator(character, ability, CameraScripts.getCurrentMousePos());
            }
            else
            {
                targetedAbilityIndicator.hideIndicator(character, ability);
            }
        }
        if (isTargetingFromHUD() && !playerHUD.isMouseOverHUD())
        {
            if (Input.GetMouseButtonDown(0))
            {
                for (int i = 0; i < 8; i++)
                {
                    setHUDCast(i, false);
                }
            }
        }
    }
Ejemplo n.º 8
0
 private void Awake()
 {
     cameraScript = Camera.main.GetComponent <CameraScripts>();
 }