Re-added the item ids in user_stats and added "name" and "description"

tags to achievements_list.
This commit is contained in:
Pascal Koenig
2011-09-19 00:33:03 +02:00
parent 045919558d
commit 7a40761e00
4 changed files with 34 additions and 10 deletions

View File

@@ -36,6 +36,7 @@
<jar jarfile="${dist}/${name}.jar"> <jar jarfile="${dist}/${name}.jar">
<fileset dir="${bin}"/> <fileset dir="${bin}"/>
<fileset dir="${src}" includes="**/*.java" />
</jar> </jar>
</target> </target>

View File

@@ -49,17 +49,13 @@ public class XmlStats extends JavaPlugin {
if(this.enabled && webserverTemp.isRunning()){ if(this.enabled && webserverTemp.isRunning()){
this.enabled = false; this.enabled = false;
XmlStatsRegistry.flush();
LogDebug("Registry flushed.");
webserverTemp.stop(); webserverTemp.stop();
LogDebug("Webserver stopped."); LogDebug("Webserver stopped.");
XmlStatsRegistry.flush();
getServer().getScheduler().cancelTasks(this); getServer().getScheduler().cancelTasks(this);
LogDebug("XmlStats killed.");
} }
LogInfo("Plugin Disabled"); LogInfo("XmlStats Disabled");
} }
/* (non-Javadoc) /* (non-Javadoc)

View File

@@ -54,6 +54,14 @@ public class AchievementsList extends XmlWorker {
private Element getAchievement(AchievementListData data){ private Element getAchievement(AchievementListData data){
Element elem_ach = this.doc.createElement("achievement"); Element elem_ach = this.doc.createElement("achievement");
elem_ach.setAttribute("enabled", data.isEnabled()?"true":"false"); elem_ach.setAttribute("enabled", data.isEnabled()?"true":"false");
Element elem_achname = this.doc.createElement("name");
elem_achname.setTextContent(data.getName());
elem_ach.appendChild(elem_achname);
Element elem_achdesc = this.doc.createElement("description");
elem_achdesc.setTextContent(data.getDescription());
elem_ach.appendChild(elem_achdesc);
Element elem_category = this.doc.createElement("category"); Element elem_category = this.doc.createElement("category");
elem_category.setTextContent(data.getCategory()); elem_category.setTextContent(data.getCategory());

View File

@@ -14,12 +14,15 @@
*/ */
package de.sockenklaus.XmlStats.XmlWorkers; package de.sockenklaus.XmlStats.XmlWorkers;
import java.io.File;
import java.util.Arrays;
import java.util.HashMap; import java.util.HashMap;
import java.util.Map; import java.util.Map;
import java.util.List; import java.util.List;
import org.w3c.dom.Element; import org.w3c.dom.Element;
import com.nidefawl.Stats.ItemResolver.hModItemResolver;
import com.nidefawl.Stats.datasource.Category; import com.nidefawl.Stats.datasource.Category;
import com.nidefawl.Stats.datasource.PlayerStat; import com.nidefawl.Stats.datasource.PlayerStat;
@@ -33,12 +36,16 @@ public class UserStats extends XmlWorker {
/** The stats ds. */ /** The stats ds. */
private UserstatsDS statsDS; private UserstatsDS statsDS;
private hModItemResolver itemResolver;
private String[] resolveCats;
/** /**
* Instantiates a new xml worker userstats. * Instantiates a new xml worker userstats.
*/ */
public UserStats(){ public UserStats(){
this.statsDS = new UserstatsDS(); this.statsDS = new UserstatsDS();
itemResolver = new hModItemResolver(new File(statsDS.getDataFolder(),"items.txt"));
resolveCats = new String[]{"blockdestroy", "blockcreate", "itemdrop", "itempickup"};
} }
/* (non-Javadoc) /* (non-Javadoc)
@@ -77,8 +84,14 @@ public class UserStats extends XmlWorker {
elem_cat.appendChild(elem_items); elem_cat.appendChild(elem_items);
elem_cats.appendChild(elem_cat); elem_cats.appendChild(elem_cat);
for(String valName : cat.stats.keySet()){ for(String valName : cat.stats.keySet()){
elem_items.appendChild(getItemElem(valName, cat.get(valName))); Element elem_item = getItemElem(valName, cat.get(valName));
if(Arrays.asList(resolveCats).contains(catName)){
elem_item.setAttribute("id", String.valueOf(itemResolver.getItem(valName)));
}
elem_items.appendChild(elem_item);
} }
} }
return elem_player; return elem_player;
@@ -105,7 +118,13 @@ public class UserStats extends XmlWorker {
elem_cats.appendChild(elem_cat); elem_cats.appendChild(elem_cat);
for(String entryName : addedStats.get(catName).keySet()){ for(String entryName : addedStats.get(catName).keySet()){
elem_items.appendChild(getItemElem(entryName, addedStats.get(catName).get(entryName))); Element elem_item = this.getItemElem(entryName, addedStats.get(catName).get(entryName));
if(Arrays.asList(resolveCats).contains(catName)){
elem_item.setAttribute("id", String.valueOf(itemResolver.getItem(entryName)));
}
elem_items.appendChild(elem_item);
} }
elem_cat.appendChild(elem_items); elem_cat.appendChild(elem_items);
} }
@@ -122,7 +141,7 @@ public class UserStats extends XmlWorker {
*/ */
private Element getItemElem(String key, int value){ private Element getItemElem(String key, int value){
Element elem_item = this.doc.createElement("item"); Element elem_item = this.doc.createElement("item");
elem_item.appendChild(getTextElem("name", key)); elem_item.appendChild(getTextElem("name", key));
elem_item.appendChild(getTextElem("value", String.valueOf(value))); elem_item.appendChild(getTextElem("value", String.valueOf(value)));