示例#1
0
 private void Awake()
 {
     camShakeInducer = GetComponent <TraumaInducer>();
     PanelManager.OnCrystalCaptureCutSceneDone += OnCrystalCaptureCutSceneDone;
     Crystal.ReturnControlToState += OnReturnControlToState;
     InBattleUnitInventoryManager.OnUsedUsableItem += OnUsedUsableItem;
 }
 private void Start()
 {
     lerp        = GetComponent <AnimationLerp>();
     clipBullets = clipMaxBullets;
     shakeThing  = gameObject.GetComponent <TraumaInducer>();
     animator    = transform.GetChild(0).GetComponent <Animator>();
     mesh.material.SetColor("_EmissiveColor", normalColor * normalIntensity);
     playerController = GameManager.Get().playerGO.GetComponent <Player>().fpsController;
     player           = GameManager.Get().playerGO.GetComponent <Player>();
     // mesh.material.SetColor("_EmissionColor", normalColor * 6.016924f);
     FirstPersonController.OnFPSJumpStart += JumpAnimationStart;
     FirstPersonController.OnFPSJumpEnd   += JumpAnimationEnd;
 }
示例#3
0
    void IfDamage()
    {
        Life--;
        AkSoundEngine.PostEvent("pl_die", gameObject);
        Instantiate(Damage, new Vector3(transform.position.x, transform.position.y, transform.position.z), Quaternion.identity);
        if (Life > 0)
        {
            int randomPoint = Random.Range(0, MaxRandomPoint);
            ActualRespawnPoint = new Vector3(RespawnPoint[randomPoint].position.x, RespawnPoint[randomPoint].position.y, 0.0f);
            transform.position = ActualRespawnPoint;
        }

        TraumaInducer.Shake();

        lifeImage[Life].SetActive(false);
    }
示例#4
0
    //[Header("Components Assigment")]
    //Player Inventory;

    // Start is called before the first frame update
    void Start()
    {
        isInLight                    = true;
        screenShake                  = GetComponent <TraumaInducer>();
        fpsController                = GetComponent <FirstPersonController>();
        fpsController.m_WalkSpeed    = walkSpeed;
        fpsController.m_RunSpeed     = runSpeed;
        fpsController.crouchMovSpeed = crouchMovSpeed;
        lastGO = gameObject;

        isDefenseActive = false;

        health = maxHealth;
        if (OnPlayerChangeHP != null)
        {
            OnPlayerChangeHP(health);
        }
    }
示例#5
0
    void OnTriggerEnter2D(Collider2D coll)
    {
        collision = coll.transform;
        if (collision.CompareTag("Floor") || collision.CompareTag("Player"))
        {
            InFloor = true;
            m_Animator.SetBool("Jump", false);
        }
        else
        {
            InFloor = false;
        }
        if (!immune)
        {
            if (collision.CompareTag("EnemyObject") || collision.CompareTag("Lava"))
            {
                IfDamage();
                playerState = PlayerState.Normal;
                StartCoroutine(ImmunePlayer());
            }
            if (collision.CompareTag("Ice"))
            {
                AkSoundEngine.PostEvent("pl_frozen", gameObject);
                playerState = PlayerState.OnIce;
            }
            if (collision.CompareTag("Poison"))
            {
                AkSoundEngine.PostEvent("pl_frozen", gameObject);
                playerState = PlayerState.OnPosion;
            }


            if (collision.CompareTag("Mele"))
            {
                AkSoundEngine.PostEvent("pl_deathbybat", gameObject);
                TraumaInducer.Shake();
                rotationEnemy = Enemy.transform.rotation;
                playerState   = PlayerState.OnImpulse;
            }
        }
    }
示例#6
0
    // The player hits the enemy on collision.
    private void OnCollisionEnter(Collision collision)
    {
        GameObject   target = collision.transform.gameObject;
        PhotonPlayer player = target.GetComponent <PhotonPlayer>();

        if (player != null)
        {
            // enemy is killed when the HP becomes below 0.
            player.GotDamaged(damage: DAMAGE);

            TraumaInducer explosion = Instantiate(explosionPrefab, transform.position, Quaternion.identity).GetComponent <TraumaInducer>();
            explosion.PlayExplosion();

            if (player.hp <= 0)
            {
                player.HasKilled();
            }
        }

        Destroy(gameObject);
    }