コード例 #1
0
ファイル: GunController.cs プロジェクト: MXAnton/topdown-gta
    IEnumerator Shoot()
    {
        animator.SetTrigger("Shoot");
        audioSource.PlayOneShot(gunShotSound);

        RaycastHit2D hitInfo = Physics2D.Raycast(firePoint.position, firePoint.right, Mathf.Infinity, ignoreShotLayerMask);

        if (!hitInfo || hitInfo.distance > range)
        {
            lineRenderer.SetPosition(0, firePoint.position);
            lineRenderer.SetPosition(1, firePoint.position + firePoint.right * range);
        }
        else
        {
            ObjectPrefs objectPrefs = hitInfo.transform.GetComponent <ObjectPrefs>();
            if (objectPrefs != null)
            {
                objectPrefs.TakeDamage(damage);
            }

            Instantiate(impactEffect, hitInfo.point, Quaternion.identity);

            lineRenderer.SetPosition(0, firePoint.position);
            lineRenderer.SetPosition(1, hitInfo.point);
        }

        lineRenderer.enabled = true;

        yield return(new WaitForSeconds(0.01f));

        lineRenderer.enabled = false;

        currentAmmoInClip -= 1;
    }
コード例 #2
0
    IEnumerator GiveDamage(Collider2D hit, float hitDistance)
    {
        yield return(new WaitForSeconds(0.2f));

        ObjectPrefs objectPrefs = hit.GetComponent <ObjectPrefs>();

        if (objectPrefs != null)
        {
            int explosionDamage = Mathf.RoundToInt(maxExplosionDamage / hitDistance);
            objectPrefs.TakeDamage(explosionDamage);
        }
    }
コード例 #3
0
ファイル: Sample.cs プロジェクト: cr545l/ObjectPrefs
    private void OnGUI()
    {
        GUILayout.Label(string.Format("Level {0}", ObjectPrefs.Get <int>("level")));

        if (GUILayout.Button("set level 10"))
        {
            ObjectPrefs.Set("level", 10);
            ObjectPrefs.Save();
        }

        if (GUILayout.Button("set level 20"))
        {
            ObjectPrefs.Set("level", 20);
            ObjectPrefs.Save();
        }

        if (GUILayout.Button("set level 30"))
        {
            ObjectPrefs.Set("level", 30);
            ObjectPrefs.Save();
        }
    }
コード例 #4
0
 void Start()
 {
     objectPrefs = GetComponentInParent <ObjectPrefs>();
     itemPickup  = GetComponentInParent <ItemPickup>();
 }