#' Get per-mob stats
#'
#' Extract common mob names from a list of mob stats. Uses \code{strings.entities} for
#' substitutions of some mob names.
#' @keywords entities
#' @param entities The entities dataset from which mob names should be extracted
#' @param mobData Dataset of mob metadata, defaults to \link[wurstmineR]{strings.mobs}
#' @return Vector of mob names, adjusted for readability
#' @export
#' @examples
#' \dontrun{
#' entities <- stats2df(fromJSON("http://api.wurstmineberg.de/server/playerstats/general.json"))
#' getMobStats(entities)
#' }
getMobStats <- function(entities = entities, mobData = NULL){
if (is.null(mobData)){
mobData <- wurstmineR::strings.mobs
}
entities.only <- entities[names(entities) != "player"]
mobStats <- data.frame(stat = names(entities.only), stringsAsFactors = F)
mobStats$action <- character(nrow(mobStats))
mobStats$action[grep("killEntity", mobStats$stat)] <- "killed"
mobStats$action[grep("entityKilledBy.", mobStats$stat)] <- "killed by"
mobStats$mob <- extractMobNames(mobStats$stat, strings.mobs)
mobStats$total <- as.numeric(plyr::colwise(sum)(entities.only))
mobStats$playerMax <- as.numeric(plyr::colwise(max)(entities.only))
mobStats$leadingPlayers <- getLeadingPlayers(mobStats, entities)
return(mobStats)
}
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.