2017-08-01 2 views
0

Ich habe einen Code, der eine Animation abspielen wird, nachdem ein anderer beendet ist. Hier ist mein Code:Zwei Probleme mit einem Animationssequenzcode

using System.Collections; 
using System.Collections.Generic; 
using UnityEngine; 

public class AnimationSequence : MonoBehaviour { 

    public Animation First; 
    public Animation Second; 


    // Use this for initialization 
    void Start() { 
     First.GetComponent<Animation>(); 
     Second.GetComponent<Animation>(); 
    } 

    // Update is called once per frame 
    void Update() { 
     if (First.IsPlaying = false){ 
      Second.Play; 
     } 
    } 
} 

Und ich zwei Fehler:

  1. Die linke Seite einer Zuweisung muss eine Variable sein, eine Eigenschaft oder einen Indexer
  2. Nur Zuordnung, Aufruf , Erhöhung, Senkung await und neue Objekt Ausdrücke können als Aussage
+1

Welche Linien die Fehler zu beklagen sind, erklärt werden? – jhhoff02

+0

Zeile 19,13 und 20,3 –

+0

und welche Zeilen sind in dem Code enthalten, den Sie uns oben gezeigt haben? – jhhoff02

Antwort

0

Änderung

verwendet werden
void Update() { 
    if (First.IsPlaying = false){ 
     Second.Play; 
    } 
} 

zu

void Update() { 
    if (First.IsPlaying == false){ 
     Second.Play; 
    } 
} 

'=' ist eine Zuordnung '==' ist ein Vergleich. Oder mehr idiomatische

void Update() { 
    if (!First.IsPlaying){ 
     Second.Play; 
    } 
} 

und es scheint, wie isPlaying eine Funktion ist. SO tun

void Update() { 
    if (!First.IsPlaying()){ 
     Second.Play; 
    } 
} 

Wenn Sie eine Eigenschaft sein wollen isPlaying dann hat es wie folgt

class Player 
{ 
.... 
    public bool IsPlaying {get;set;} 
.... 
} 
+0

Okay. Der zweite Fehler ist weg, aber jetzt bekomme ich das Das '! ' operator kann nicht auf Operanden vom Typ 'method group 'angewendet werden, wenn ich die Anweisung geändert habe –

+0

siehe edit ........ – pm100