@Override
	public List<String> parseQuestSteps(List<String> script, int startLine, boolean rawLineInput)
	{
		Vector<String> line=null;
		String cmd=null;
		final Vector<String> parsed=new Vector<String>();
		StringBuffer scr=new StringBuffer("");
		boolean inScript=false;
		String lineStr=null;
		for(int v=startLine;v<script.size();v++)
		{
			lineStr=script.get(v).trim();
			if(lineStr.trim().equalsIgnoreCase(XMLLibrary.FILE_XML_BOUNDARY))
			{
				if(scr.toString().trim().length()>0)
					parsed.addElement(scr.toString());
				scr=new StringBuffer((script.get(v))+"\n\r");
				while((++v)<script.size())
					scr.append((script.get(v))+"\n\r");
				break;
			}
			line=CMParms.parse(lineStr.toUpperCase());
			if(line.size()==0)
				continue;
			cmd=line.firstElement().trim();
			if(rawLineInput)
				scr.append((script.get(v))+"\n\r");
			else
				scr.append(CMStrings.replaceAll((script.get(v))+"\n\r",";","\\;"));
			if(cmd.equals("</SCRIPT>")&&(inScript))
			{
				inScript=false;
				continue;
			}
			if(cmd.equals("<SCRIPT>"))
			{
				inScript=true;
				continue;
			}
			if(cmd.equals("STEP"))
			{
				parsed.addElement(scr.toString());
				scr=new StringBuffer("");
			}
		}
		if(scr.toString().trim().length()>0)
			parsed.add(scr.toString().trim());
		return parsed;
	}