public override string ToString()
 {
     if (val != null)
     {
         return(val.ToString());
     }
     return(base.ToString());
 }
Beispiel #2
0
        public string GetExportableDsgVarValueString(DsgVarValue val)
        {
            string value = "";

            switch (val.type)
            {
            default:
                value = val.ToString();
                break;

            case DsgVarType.GameMaterial:
                value = HashUtils.MD5Hash(val.valueGameMaterial?.ToJSON());
                break;

            case DsgVarType.VisualMaterial:
                value = HashUtils.MD5Hash(val.valueVisualMaterial?.ToJSON());
                break;

            case DsgVarType.Perso:
                value = val.valuePerso?.namePerso;
                break;

            case DsgVarType.PersoArray:
                List <string> persoNames = new List <string>();
                foreach (DsgVarValue child in val.valueArray)
                {
                    Perso perso = child.valuePerso;
                    if (perso != null)
                    {
                        persoNames.Add(perso.namePerso);
                    }
                    else
                    {
                        persoNames.Add("NullPointer");
                    }
                }
                value = "{ " + string.Join(", ", persoNames) + " }";
                break;

            case DsgVarType.WayPointArray:     // TODO
                break;

            case DsgVarType.TextArray:     // TODO: check
                goto default;

            //break;
            case DsgVarType.TextRefArray:     // TODO: check
                goto default;

            case DsgVarType.GraphArray:
                break;

            case DsgVarType.SOLinksArray:
                break;

            case DsgVarType.SoundEventArray:     // TODO: check
                goto default;

            case DsgVarType.VisualMatArray:
                break;

            case DsgVarType.Way:
                break;

            case DsgVarType.ActionArray:     // TODO
                break;

            case DsgVarType.SuperObjectArray:     // TODO
                break;
            }

            return(value);
        }