2017-08-20 1 views
1

In Einheit:Einheit - Dialog erscheint

Könnte mir jemand sagen, was ich falsch gemacht habe. Ich wollte einen Dialog aufmachen, nachdem Sie in der Nähe ein Zeichen sind, aber irgendwie funktioniert mein Code nicht wirklich.

public class Interactable : MonoBehaviour { 
    [HideInInspector] 
    public NavMeshAgent playerAgent; 
    private bool hasInteracted; 

public virtual void MoveToIneraction(NavMeshAgent playerAgent) 
{ 
    hasInteracted = false; 
    this.playerAgent = playerAgent; 
    playerAgent.stoppingDistance = 2.3f; 
    playerAgent.destination = this.transform.position; 

    Interact(); 
} 

void Update() 
{ 
    if (!!hasInteracted && playerAgent != null && playerAgent.pathPending) 
    { 
     if(playerAgent.remainingDistance <= playerAgent.stoppingDistance) 
     { 
      Interact(); 
      hasInteracted = true; 
     } 
    } 
} 

public virtual void Interact() 
{ 
    Debug.Log("Interacted"); 
} 
} 
+0

Was meinen Sie damit Arbeit does't: nichts erscheint oder das Spiel Crash/ein Fehler angezeigt? –

Antwort

1
!!hasInteracted 

Es sollte !hasInteracted sein, ich denke,

Verwandte Themen