コード例 #1
0
ファイル: plyVariables.cs プロジェクト: ljn398431/MyMakerIL
 public void CopyTo(plyVariables vars, bool includeValues)
 {
     if (Application.isPlaying)
     {
         Debug.LogError("plyVariables.CopyTo() should not be used at runtime");
     }
     else if (vars.varDefs.Count == 0)
     {
         vars.lastVarIdent = this.lastVarIdent;
         vars.varDefs      = new List <plyVar>();
         for (int i = 0; i < this.varDefs.Count; i++)
         {
             plyVar plyVar = this.varDefs[i].Copy();
             if (!includeValues)
             {
                 plyVar.ClearValue();
             }
             vars.varDefs.Add(plyVar);
         }
     }
     else
     {
         if (vars.lastVarIdent < this.lastVarIdent)
         {
             vars.lastVarIdent = this.lastVarIdent;
         }
         for (int j = 0; j < this.varDefs.Count; j++)
         {
             int num  = this.varDefs[j].ident;
             int num2 = 0;
             while (num2 < vars.varDefs.Count)
             {
                 if (!(this.varDefs[j].name == vars.varDefs[num2].name))
                 {
                     if (num == vars.varDefs[num2].ident)
                     {
                         num = vars.CreateVariableIdent();
                     }
                     num2++;
                     continue;
                 }
                 num = -1;
                 break;
             }
             if (num >= 0)
             {
                 plyVar plyVar2 = this.varDefs[j].Copy();
                 plyVar2.ident = num;
                 if (!includeValues)
                 {
                     plyVar2.ClearValue();
                 }
                 vars.varDefs.Add(plyVar2);
             }
         }
     }
 }