case WINHAMSTER: tagName = "winHamster"; break;\r
case PLAYERLIST: tagName = "playerList"; break;\r
case PANIC: tagName = "panic"; break;\r
+ case EXECUTION: tagName = "execution"; break;\r
+ case VANISH: tagName = "vanish"; break;\r
+ case CHECKOUT: tagName = "checkout"; break;\r
+ case SHORTMEMBER: tagName = "shortMember"; break;\r
case ASKENTRY: tagName = "askEntry"; break;\r
case ASKCOMMIT: tagName = "askCommit"; break;\r
case NOCOMMENT: tagName = "noComment"; break;\r
case GAMEOVER: tagName = "gameOver"; break;\r
case GUARD: tagName = "guard"; break;\r
case JUDGE: tagName = "judge"; break;\r
+ case COUNTING2: tagName = "counting2"; break;\r
case ASSAULT: tagName = "assault"; break;\r
default: throw new IllegalArgumentException();\r
}\r
}\r
\r
/**\r
- * COUNTING属性値をXML出力する。\r
+ * avatarId属性値をXML出力する。\r
+ * @param writer 出力先\r
+ * @throws IOException 出力エラー\r
+ */\r
+ public void dumpSingleAvatarAttr(Writer writer) throws IOException{\r
+ AvatarData avatarData = this.avatarList.get(0);\r
+\r
+ writer.append(' ');\r
+ XmlUtils.attrOut(writer, "avatarId", avatarData.getAvatarId());\r
+\r
+ return;\r
+ }\r
+\r
+ /**\r
+ * COUNTINGのvictim属性値をXML出力する。\r
* @param writer 出力先\r
* @throws IOException 出力エラー\r
*/\r
}\r
\r
/**\r
- * SUDDENDEATH属性値をXML出力する。\r
+ * EXECUTIONのvictim属性値をXML出力する。\r
* @param writer 出力先\r
* @throws IOException 出力エラー\r
*/\r
- public void dumpSuddendeathAttr(Writer writer) throws IOException{\r
- AvatarData avatarData = this.avatarList.get(0);\r
-\r
- writer.append(' ');\r
- XmlUtils.attrOut(writer, "avatarId", avatarData.getAvatarId());\r
-\r
+ public void dumpExecutionAttr(Writer writer) throws IOException{\r
+ int totalAvatar = this.avatarList.size();\r
+ int totalVotes = this.intList.size();\r
+ if(totalAvatar != totalVotes){\r
+ AvatarData victim = this.avatarList.get(totalAvatar - 1);\r
+ writer.append(' ');\r
+ XmlUtils.attrOut(writer, "victim", victim.getAvatarId());\r
+ }\r
return;\r
}\r
\r
}\r
\r
/**\r
+ * execution子要素をXML出力する。\r
+ * @param writer 出力先\r
+ * @throws IOException 出力エラー\r
+ */\r
+ public void dumpExecutionElem(Writer writer) throws IOException{\r
+ int total = this.intList.size();\r
+ for(int index = 0; index < total; index++){\r
+ AvatarData voteTo = this.avatarList.get(index);\r
+ int count = this.intList.get(index);\r
+ writer.append("<nominated");\r
+ writer.append(' ');\r
+ XmlUtils.attrOut(writer, "avatarId", voteTo.getAvatarId());\r
+ writer.append(' ');\r
+ XmlUtils.attrOut(writer, "count", "" + count);\r
+ writer.append(" />\n");\r
+ }\r
+ return;\r
+ }\r
+\r
+ /**\r
* playerlist子要素をXML出力する。\r
* @param writer 出力先\r
* @throws IOException 出力エラー\r
case COUNTING:\r
dumpCountingAttr(writer);\r
break;\r
+ case EXECUTION:\r
+ dumpExecutionAttr(writer);\r
+ break;\r
case SUDDENDEATH:\r
- dumpSuddendeathAttr(writer);\r
+ case VANISH:\r
+ case CHECKOUT:\r
+ dumpSingleAvatarAttr(writer);\r
break;\r
case ASKENTRY:\r
dumpAskEntryAttr(writer);\r
dumpSurvivorElem(writer);\r
break;\r
case COUNTING:\r
+ case COUNTING2:\r
dumpCountingElem(writer);\r
break;\r
+ case EXECUTION:\r
+ dumpExecutionElem(writer);\r
+ break;\r
case PLAYERLIST:\r
dumpPlayerlistElem(writer);\r
break;\r
/**\r
* {@inheritDoc}\r
* @param content {@inheritDoc}\r
+ * @param voteByRange {@inheritDoc}\r
+ * @param voteToRange {@inheritDoc}\r
+ * @throws HtmlParseException {@inheritDoc}\r
+ */\r
+ @Override\r
+ public void sysEventCounting2(DecodedContent content,\r
+ SeqRange voteByRange,\r
+ SeqRange voteToRange)\r
+ throws HtmlParseException{\r
+ AvatarData avatar;\r
+\r
+ DecodedContent voteBy =\r
+ this.converter.convert(content, voteByRange);\r
+ avatar = this.villageData.getAvatarData(voteBy);\r
+ this.currentEvent.addAvatarData(avatar);\r
+\r
+ DecodedContent voteTo =\r
+ this.converter.convert(content, voteToRange);\r
+ avatar = this.villageData.getAvatarData(voteTo);\r
+ this.currentEvent.addAvatarData(avatar);\r
+\r
+ return;\r
+ }\r
+\r
+ /**\r
+ * {@inheritDoc}\r
+ * @param content {@inheritDoc}\r
* @param avatarRange {@inheritDoc}\r
* @throws HtmlParseException {@inheritDoc}\r
*/\r
\r
/**\r
* {@inheritDoc}\r
+ * @param content {@inheritDoc}\r
+ * @param avatarRange {@inheritDoc}\r
+ * @param votes {@inheritDoc}\r
+ * @throws HtmlParseException {@inheritDoc}\r
+ */\r
+ @Override\r
+ public void sysEventExecution(DecodedContent content,\r
+ SeqRange avatarRange,\r
+ int votes)\r
+ throws HtmlParseException{\r
+ DecodedContent avatarName;\r
+ avatarName = this.converter.convert(content, avatarRange);\r
+ AvatarData avatar = this.villageData.getAvatarData(avatarName);\r
+ this.currentEvent.addAvatarData(avatar);\r
+\r
+ if(votes > 0){\r
+ this.currentEvent.addInteger(votes);\r
+ }\r
+\r
+ return;\r
+ }\r
+\r
+ /**\r
+ * {@inheritDoc}\r
+ * @param content {@inheritDoc}\r
+ * @param avatarRange {@inheritDoc}\r
+ * @throws HtmlParseException {@inheritDoc}\r
+ */\r
+ @Override\r
+ public void sysEventCheckout(DecodedContent content,\r
+ SeqRange avatarRange)\r
+ throws HtmlParseException{\r
+ DecodedContent avatarName;\r
+ avatarName = this.converter.convert(content, avatarRange);\r
+ AvatarData avatar = this.villageData.getAvatarData(avatarName);\r
+ this.currentEvent.addAvatarData(avatar);\r
+ return;\r
+ }\r
+\r
+ /**\r
+ * {@inheritDoc}\r
+ * @param content {@inheritDoc}\r
+ * @param avatarRange {@inheritDoc}\r
+ * @throws HtmlParseException {@inheritDoc}\r
+ */\r
+ @Override\r
+ public void sysEventVanish(DecodedContent content,\r
+ SeqRange avatarRange)\r
+ throws HtmlParseException{\r
+ DecodedContent avatarName;\r
+ avatarName = this.converter.convert(content, avatarRange);\r
+ AvatarData avatar = this.villageData.getAvatarData(avatarName);\r
+ this.currentEvent.addAvatarData(avatar);\r
+ return;\r
+ }\r
+\r
+ /**\r
+ * {@inheritDoc}\r
* @throws HtmlParseException {@inheritDoc}\r
*/\r
@Override\r