void parseAnimEffectInfo(StreamReader dataStream, GfxSkill skill) { GfxSkillEffect newSkillEffect = skill.addSkillEffect(); string line; while (!dataStream.EndOfStream) { line = dataStream.ReadLine(); // Ignore comments & blanks if (!(line.Length == 0 || line.Substring(0, 2) == "//")) { string delim = "\t"; string spaceDelim = " "; line = line.TrimStart(spaceDelim.ToCharArray()); line = line.TrimEnd(spaceDelim.ToCharArray()); string strline = line.Trim(delim.ToCharArray()); if (strline == "}") { // Finished emitter break; } else { // Attribute parseAnimEffectInfoAttrib(strline, newSkillEffect); } } } }
void addSkillEffect() { showSkill(); GUILayout.BeginHorizontal("box"); GUILayout.Label("EffectName"); mEffectName = EditorGUILayout.TextField(mEffectName); GUILayout.EndHorizontal(); GUILayout.BeginHorizontal("box"); GUILayout.Label("AttachPoint"); mLocatorNameIndex = EditorGUILayout.Popup(mLocatorNameIndex, LocatorNames.ToArray()); //mAttachPoint = EditorGUILayout.TextField(mAttachPoint); GUILayout.EndHorizontal(); GUILayout.BeginHorizontal("box"); if (GUILayout.Button("OK")) { GFX.GfxSkillEffect newSkillEffect = mSkill.addSkillEffect(); newSkillEffect.setParameter("EffectTemplateName", mEffectName); if (LocatorNames[mLocatorNameIndex] == "none") { newSkillEffect.setParameter("AttachPoint", ""); } else { newSkillEffect.setParameter("AttachPoint", LocatorNames[mLocatorNameIndex]); } refreshSkillEffectList(); lastEffectIndex = 0; if (skillIndex != 0) { stat = GUI_STATUS.CHECKING; } else { stat = GUI_STATUS.NONE; } } if (GUILayout.Button("Cancel")) { lastEffectIndex = 0; if (skillIndex != 0) { stat = GUI_STATUS.CHECKING; } else { stat = GUI_STATUS.NONE; } } GUILayout.EndHorizontal(); }