예제 #1
0
    private void spawnRwrIcon()
    {
        hudControl hudRef = hudControl.mainHud.GetComponent <hudControl>();

        rwrIcon = GameObject.Instantiate(hudRef.rwrIconPrefab, hudRef.rwrIconContainer.transform).GetComponent <IconRWR>();
        rwrIcon.linkToRadarSource(this);
    }
예제 #2
0
 public void removeMissileIncoming(IconRWR mslIcon)
 {
     if (incomingMissiles.Contains(mslIcon))
     {
         incomingMissiles.Remove(mslIcon);
     }
 }
예제 #3
0
    public void addMissileIncoming(IconRWR mslIcon)
    {
        if (!mslIcon.hasPinged)
        {
            newMissileThreatAudio.Play();
        }

        if (!incomingMissiles.Contains(mslIcon))
        {
            incomingMissiles.Add(mslIcon);
        }
    }
예제 #4
0
    public void tryPing(Radar radarSource)
    {
        if (myFlow.isLocalPlayer && myFlow.team != radarSource.myFlow.team)
        {
            bool  isPinging = !myFlow.jamming && radarSource.radarOn && radarSource.withinScope(transform.position);
            float distance  = Vector3.Distance(transform.position, radarSource.transform.position);
            float bearing   = calculateBearing(radarSource.transform.position);

            IconRWR rwrIcon = radarSource.rwrIcon;

            rwrIcon.showPingResult(isPinging, distance, bearing);
        }
    }
예제 #5
0
    public void endLock(IconRWR lockSource)
    {
        if (incomingLocks.Contains(lockSource))
        {
            incomingLocks.Remove(lockSource);
        }

        if (incomingLocks.Count == 0 && isLocked)
        {
            isLocked = false;
            lockWarningDisplay.SetActive(false);
            incomingLockAudio.loop = false;
            incomingLockAudio.Stop();
        }
    }
예제 #6
0
    public void beginLock(IconRWR lockSource)
    {
        if (!incomingLocks.Contains(lockSource))
        {
            incomingLocks.Add(lockSource);
        }

        if (incomingLocks.Count > 0 && !isLocked)
        {
            isLocked = true;
            lockWarningDisplay.SetActive(true);
            incomingLockAudio.loop = true;
            incomingLockAudio.Play();
        }
    }