public int parseNohSkill(Node n,int xId){ if ("skill".equalsIgnoreCase(n.getNodeName())){ NamedNodeMap attrs = n.getAttributes(); int id = Integer.parseInt(attrs.getNamedItem("id").getNodeValue()); int lvl= Integer.parseInt(attrs.getNamedItem("level").getNodeValue()); if(id==1177)xId=666; if(id==142)xId=66666; _indexToId.put(xId,id); _nohSkillLevel.put(xId,lvl); _log.warning("skill id: "+id+" lvl: "+lvl+" xId: "+xId); List noh=new FastList(); int i=xId; for (Node d=n.getFirstChild(); d != null; d = d.getNextSibling()){ i=parseNohSkill(d,i+1); if(i!=0)noh.add(i); } _nohSkills.put(xId,noh); return i; } return 0; }