mirror of
https://github.com/mcMMO-Dev/mcMMO.git
synced 2024-11-22 21:26:46 +01:00
Merge branch 'master' of github.com:mcMMO-Dev/mcMMO
Conflicts: Changelog.txt
This commit is contained in:
commit
4e6cc5ffa0
@ -9,14 +9,15 @@ Key:
|
|||||||
|
|
||||||
Version 1.3.06-dev
|
Version 1.3.06-dev
|
||||||
+ Added permissions check to skill functions
|
+ Added permissions check to skill functions
|
||||||
+ Added API functions for obtaining offline profiles & profiles via player names
|
+ Added API functions for obtaining offline profiles & profiles via player names
|
||||||
+ Changed Archery's Daze to deal 4 DMG on proc (2 Hearts)
|
|
||||||
+ Changed /addlevel command to work for offline users
|
|
||||||
= Fixed mmoupdate not being useable from console
|
= Fixed mmoupdate not being useable from console
|
||||||
|
= Fixed bug with repairing wooden tools
|
||||||
! Changed mcremove to no longer kick players when they are removed from database
|
! Changed mcremove to no longer kick players when they are removed from database
|
||||||
! Changed mcremove to work on offline users for FlatFile
|
! Changed mcremove to work on offline users for FlatFile
|
||||||
! Changed PlayerProfile constructor to always take a boolean
|
! Changed PlayerProfile constructor to always take a boolean
|
||||||
! Changed getPlayerProfile function to work for online & offline users
|
! Changed getPlayerProfile function to work for online & offline users
|
||||||
|
! Changed Archery's Daze to deal 4 DMG on proc (2 Hearts)
|
||||||
|
! Changed /addlevel command to work for offline users
|
||||||
|
|
||||||
Version 1.3.05
|
Version 1.3.05
|
||||||
+ Added Skill Shot to Archery which increases damage dealt by 10% every 50 skill levels (caps at 200%)
|
+ Added Skill Shot to Archery which increases damage dealt by 10% every 50 skill levels (caps at 200%)
|
||||||
|
@ -11,6 +11,7 @@ import com.gmail.nossr50.datatypes.PlayerProfile;
|
|||||||
import com.gmail.nossr50.locale.mcLocale;
|
import com.gmail.nossr50.locale.mcLocale;
|
||||||
|
|
||||||
public class McabilityCommand implements CommandExecutor {
|
public class McabilityCommand implements CommandExecutor {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
|
public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
|
||||||
if (CommandHelper.noConsoleUsage(sender)) {
|
if (CommandHelper.noConsoleUsage(sender)) {
|
||||||
|
@ -7,57 +7,66 @@ import org.bukkit.command.CommandSender;
|
|||||||
import org.bukkit.entity.Player;
|
import org.bukkit.entity.Player;
|
||||||
|
|
||||||
import com.gmail.nossr50.mcPermissions;
|
import com.gmail.nossr50.mcPermissions;
|
||||||
|
import com.gmail.nossr50.commands.CommandHelper;
|
||||||
import com.gmail.nossr50.locale.mcLocale;
|
import com.gmail.nossr50.locale.mcLocale;
|
||||||
|
|
||||||
|
//TODO: Rework this whole thing. It's ugly.
|
||||||
public class MccCommand implements CommandExecutor {
|
public class MccCommand implements CommandExecutor {
|
||||||
@Override
|
|
||||||
public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
|
|
||||||
|
|
||||||
if (!(sender instanceof Player)) {
|
@Override
|
||||||
sender.sendMessage("This command does not support console useage.");
|
public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
|
||||||
return true;
|
if (CommandHelper.noConsoleUsage(sender)) {
|
||||||
}
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
Player player = (Player) sender;
|
Player player = (Player) sender;
|
||||||
|
|
||||||
player.sendMessage(ChatColor.RED + "---[]" + ChatColor.YELLOW + "mcMMO Commands" + ChatColor.RED + "[]---"); //TODO: Needs more locale.
|
player.sendMessage(ChatColor.RED + "---[]" + ChatColor.YELLOW + "mcMMO Commands" + ChatColor.RED + "[]---"); //TODO: Needs more locale.
|
||||||
|
|
||||||
if (mcPermissions.getInstance().party(player)) {
|
if (mcPermissions.getInstance().party(player)) {
|
||||||
player.sendMessage(mcLocale.getString("m.mccPartyCommands"));
|
player.sendMessage(mcLocale.getString("m.mccPartyCommands"));
|
||||||
player.sendMessage("/party " + mcLocale.getString("m.mccParty"));
|
player.sendMessage("/party " + mcLocale.getString("m.mccParty"));
|
||||||
player.sendMessage("/party q " + mcLocale.getString("m.mccPartyQ"));
|
player.sendMessage("/party q " + mcLocale.getString("m.mccPartyQ"));
|
||||||
|
|
||||||
if (mcPermissions.getInstance().partyChat(player))
|
if (mcPermissions.getInstance().partyChat(player)) {
|
||||||
player.sendMessage("/p " + mcLocale.getString("m.mccPartyToggle"));
|
player.sendMessage("/p " + mcLocale.getString("m.mccPartyToggle"));
|
||||||
|
}
|
||||||
|
|
||||||
player.sendMessage("/invite " + mcLocale.getString("m.mccPartyInvite"));
|
player.sendMessage("/invite " + mcLocale.getString("m.mccPartyInvite"));
|
||||||
player.sendMessage("/invite " + mcLocale.getString("m.mccPartyAccept"));
|
player.sendMessage("/invite " + mcLocale.getString("m.mccPartyAccept"));
|
||||||
|
|
||||||
if (mcPermissions.getInstance().partyTeleport(player))
|
if (mcPermissions.getInstance().partyTeleport(player)) {
|
||||||
player.sendMessage("/ptp " + mcLocale.getString("m.mccPartyTeleport"));
|
player.sendMessage("/ptp " + mcLocale.getString("m.mccPartyTeleport"));
|
||||||
}
|
}
|
||||||
player.sendMessage(mcLocale.getString("m.mccOtherCommands"));
|
}
|
||||||
player.sendMessage("/mcstats " + ChatColor.RED + mcLocale.getString("m.mccStats"));
|
|
||||||
player.sendMessage("/mctop <skillname> <page> " + ChatColor.RED + mcLocale.getString("m.mccLeaderboards"));
|
|
||||||
|
|
||||||
if (mcPermissions.getInstance().mcAbility(player))
|
player.sendMessage(mcLocale.getString("m.mccOtherCommands"));
|
||||||
player.sendMessage("/mcability " + ChatColor.RED + mcLocale.getString("m.mccToggleAbility"));
|
player.sendMessage("/mcstats " + ChatColor.RED + mcLocale.getString("m.mccStats"));
|
||||||
|
player.sendMessage("/mctop <skillname> <page> " + ChatColor.RED + mcLocale.getString("m.mccLeaderboards"));
|
||||||
|
|
||||||
if (mcPermissions.getInstance().adminChat(player))
|
if (mcPermissions.getInstance().mcAbility(player)) {
|
||||||
player.sendMessage("/a " + ChatColor.RED + mcLocale.getString("m.mccAdminToggle"));
|
player.sendMessage("/mcability " + ChatColor.RED + mcLocale.getString("m.mccToggleAbility"));
|
||||||
|
}
|
||||||
|
|
||||||
if (mcPermissions.getInstance().inspect(player))
|
if (mcPermissions.getInstance().adminChat(player)) {
|
||||||
player.sendMessage("/inspect " + mcLocale.getString("m.mccInspect"));
|
player.sendMessage("/a " + ChatColor.RED + mcLocale.getString("m.mccAdminToggle"));
|
||||||
|
}
|
||||||
|
|
||||||
if (mcPermissions.getInstance().mmoedit(player))
|
if (mcPermissions.getInstance().inspect(player)) {
|
||||||
player.sendMessage("/mmoedit " + mcLocale.getString("m.mccMmoedit"));
|
player.sendMessage("/inspect " + mcLocale.getString("m.mccInspect"));
|
||||||
|
}
|
||||||
|
|
||||||
if (mcPermissions.getInstance().mcgod(player))
|
if (mcPermissions.getInstance().mmoedit(player)) {
|
||||||
player.sendMessage("/mcgod " + ChatColor.RED + mcLocale.getString("m.mccMcGod"));
|
player.sendMessage("/mmoedit " + mcLocale.getString("m.mccMmoedit"));
|
||||||
|
}
|
||||||
|
|
||||||
player.sendMessage(mcLocale.getString("m.mccSkillInfo"));
|
if (mcPermissions.getInstance().mcgod(player)) {
|
||||||
player.sendMessage("/mcmmo " + mcLocale.getString("m.mccModDescription"));
|
player.sendMessage("/mcgod " + ChatColor.RED + mcLocale.getString("m.mccMcGod"));
|
||||||
|
}
|
||||||
|
|
||||||
return true;
|
player.sendMessage(mcLocale.getString("m.mccSkillInfo"));
|
||||||
}
|
player.sendMessage("/mcmmo " + mcLocale.getString("m.mccModDescription"));
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,43 +1,38 @@
|
|||||||
package com.gmail.nossr50.commands.mc;
|
package com.gmail.nossr50.commands.mc;
|
||||||
|
|
||||||
import org.bukkit.ChatColor;
|
|
||||||
import org.bukkit.command.Command;
|
import org.bukkit.command.Command;
|
||||||
import org.bukkit.command.CommandExecutor;
|
import org.bukkit.command.CommandExecutor;
|
||||||
import org.bukkit.command.CommandSender;
|
import org.bukkit.command.CommandSender;
|
||||||
import org.bukkit.entity.Player;
|
import org.bukkit.entity.Player;
|
||||||
|
|
||||||
import com.gmail.nossr50.Users;
|
import com.gmail.nossr50.Users;
|
||||||
import com.gmail.nossr50.mcPermissions;
|
import com.gmail.nossr50.commands.CommandHelper;
|
||||||
import com.gmail.nossr50.datatypes.PlayerProfile;
|
import com.gmail.nossr50.datatypes.PlayerProfile;
|
||||||
import com.gmail.nossr50.locale.mcLocale;
|
import com.gmail.nossr50.locale.mcLocale;
|
||||||
|
|
||||||
public class McgodCommand implements CommandExecutor {
|
public class McgodCommand implements CommandExecutor {
|
||||||
@Override
|
|
||||||
public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
|
|
||||||
|
|
||||||
if (!(sender instanceof Player)) {
|
@Override
|
||||||
sender.sendMessage("This command does not support console useage."); //TODO: Needs more locale.
|
public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
|
||||||
return true;
|
if (CommandHelper.noConsoleUsage(sender)) {
|
||||||
}
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
Player player = (Player) sender;
|
if (CommandHelper.noCommandPermissions(sender, "mcmmo.tools.mcgod")) {
|
||||||
PlayerProfile PP = Users.getProfile(player);
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
if (!mcPermissions.getInstance().mcgod(player)) {
|
PlayerProfile PP = Users.getProfile((Player) sender);
|
||||||
player.sendMessage(ChatColor.YELLOW + "[mcMMO] " + ChatColor.DARK_RED + mcLocale.getString("mcPlayerListener.NoPermission"));
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (mcPermissions.getInstance().mcgod(player)) {
|
if (PP.getGodMode()) {
|
||||||
if (PP.getGodMode()) {
|
sender.sendMessage(mcLocale.getString("mcPlayerListener.GodModeDisabled"));
|
||||||
player.sendMessage(mcLocale.getString("mcPlayerListener.GodModeDisabled"));
|
}
|
||||||
PP.toggleGodMode();
|
else {
|
||||||
} else {
|
sender.sendMessage(mcLocale.getString("mcPlayerListener.GodModeEnabled"));
|
||||||
player.sendMessage(mcLocale.getString("mcPlayerListener.GodModeEnabled"));
|
}
|
||||||
PP.toggleGodMode();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return true;
|
PP.toggleGodMode();
|
||||||
}
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,10 +1,10 @@
|
|||||||
package com.gmail.nossr50.commands.mc;
|
package com.gmail.nossr50.commands.mc;
|
||||||
|
|
||||||
import org.bukkit.ChatColor;
|
import org.bukkit.ChatColor;
|
||||||
|
import org.bukkit.Material;
|
||||||
import org.bukkit.command.Command;
|
import org.bukkit.command.Command;
|
||||||
import org.bukkit.command.CommandExecutor;
|
import org.bukkit.command.CommandExecutor;
|
||||||
import org.bukkit.command.CommandSender;
|
import org.bukkit.command.CommandSender;
|
||||||
import org.bukkit.entity.Player;
|
|
||||||
import org.getspout.spoutapi.player.SpoutPlayer;
|
import org.getspout.spoutapi.player.SpoutPlayer;
|
||||||
|
|
||||||
import com.gmail.nossr50.config.LoadProperties;
|
import com.gmail.nossr50.config.LoadProperties;
|
||||||
@ -12,32 +12,26 @@ import com.gmail.nossr50.locale.mcLocale;
|
|||||||
|
|
||||||
public class McmmoCommand implements CommandExecutor {
|
public class McmmoCommand implements CommandExecutor {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
|
public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
|
||||||
|
String description = mcLocale.getString("mcMMO.Description", new Object[] { "mcc" });
|
||||||
|
String[] mcSplit = description.split(",");
|
||||||
|
|
||||||
if (!(sender instanceof Player)) {
|
for (String x : mcSplit) {
|
||||||
sender.sendMessage("This command does not support console useage."); //TODO: Needs more locale.
|
sender.sendMessage(x);
|
||||||
return true;
|
}
|
||||||
}
|
|
||||||
|
|
||||||
Player player = (Player) sender;
|
if (LoadProperties.donateMessage) {
|
||||||
|
if (LoadProperties.spoutEnabled && sender instanceof SpoutPlayer) {
|
||||||
|
SpoutPlayer sPlayer = (SpoutPlayer) sender;
|
||||||
|
|
||||||
String description = mcLocale.getString("mcMMO.Description", new Object[] { "mcc" });
|
sPlayer.sendNotification(ChatColor.YELLOW + "[mcMMO]" + ChatColor.GOLD + " Donate!", ChatColor.GREEN + "nossr50@gmail.com", Material.DIAMOND);
|
||||||
String[] mcSplit = description.split(",");
|
}
|
||||||
|
|
||||||
for (String x : mcSplit) {
|
sender.sendMessage(ChatColor.DARK_AQUA + "Donation Info:");
|
||||||
player.sendMessage(x);
|
sender.sendMessage(ChatColor.GOLD + " - " + ChatColor.GREEN + "nossr50@gmail.com" + ChatColor.GOLD + " Paypal");
|
||||||
}
|
}
|
||||||
|
|
||||||
if (LoadProperties.spoutEnabled && player instanceof SpoutPlayer) {
|
return true;
|
||||||
SpoutPlayer sPlayer = (SpoutPlayer) player;
|
}
|
||||||
if (LoadProperties.donateMessage)
|
|
||||||
sPlayer.sendMessage(ChatColor.YELLOW + "[mcMMO]"+ChatColor.GOLD+" Donate! Paypal "+ChatColor.GREEN+"nossr50@gmail.com"); //Where'd our notification go?
|
|
||||||
} else {
|
|
||||||
if (LoadProperties.donateMessage)
|
|
||||||
player.sendMessage(ChatColor.YELLOW + "[mcMMO]"+ChatColor.GOLD+" Donate! Paypal "+ChatColor.GREEN+"nossr50@gmail.com");
|
|
||||||
}
|
|
||||||
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
@ -16,11 +16,11 @@ import com.gmail.nossr50.spout.SpoutStuff;
|
|||||||
public class mcSpoutListener implements Listener {
|
public class mcSpoutListener implements Listener {
|
||||||
//Why do we have this here? We never use it...
|
//Why do we have this here? We never use it...
|
||||||
mcMMO plugin = null;
|
mcMMO plugin = null;
|
||||||
|
|
||||||
public mcSpoutListener(mcMMO pluginx) {
|
public mcSpoutListener(mcMMO pluginx) {
|
||||||
plugin = pluginx;
|
plugin = pluginx;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Monitor SpoutCraftEnable events.
|
* Monitor SpoutCraftEnable events.
|
||||||
*
|
*
|
||||||
@ -30,13 +30,13 @@ public class mcSpoutListener implements Listener {
|
|||||||
public void onSpoutCraftEnable(SpoutCraftEnableEvent event) {
|
public void onSpoutCraftEnable(SpoutCraftEnableEvent event) {
|
||||||
SpoutPlayer sPlayer = event.getPlayer();
|
SpoutPlayer sPlayer = event.getPlayer();
|
||||||
PlayerProfile PPs = Users.getProfile(sPlayer);
|
PlayerProfile PPs = Users.getProfile(sPlayer);
|
||||||
|
|
||||||
//TODO: Add custom titles based on skills
|
//TODO: Add custom titles based on skills
|
||||||
if (LoadProperties.showPowerLevel) {
|
if (LoadProperties.showPowerLevel) {
|
||||||
sPlayer.setTitle(sPlayer.getName()+ "\n" + ChatColor.YELLOW + "P" + ChatColor.GOLD + "lvl"
|
sPlayer.setTitle(sPlayer.getName()+ "\n" + ChatColor.YELLOW + "P" + ChatColor.GOLD + "lvl"
|
||||||
+ ChatColor.WHITE+"." + ChatColor.GREEN + String.valueOf(PPs.getPowerLevel()));
|
+ ChatColor.WHITE+"." + ChatColor.GREEN + String.valueOf(PPs.getPowerLevel()));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (sPlayer.isSpoutCraftEnabled()) {
|
if (sPlayer.isSpoutCraftEnabled()) {
|
||||||
SpoutStuff.playerHUDs.put(sPlayer, new HUDmmo(sPlayer)); //Setup Party HUD stuff
|
SpoutStuff.playerHUDs.put(sPlayer, new HUDmmo(sPlayer)); //Setup Party HUD stuff
|
||||||
|
|
||||||
|
@ -484,5 +484,6 @@ public class Repair {
|
|||||||
int slot = inventory.first(Material.WOOD);
|
int slot = inventory.first(Material.WOOD);
|
||||||
ItemStack item = inventory.getItem(slot);
|
ItemStack item = inventory.getItem(slot);
|
||||||
item.setAmount(item.getAmount() - 1);
|
item.setAmount(item.getAmount() - 1);
|
||||||
|
inventory.setItem(slot, item);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -102,21 +102,12 @@ public class Skills {
|
|||||||
/* Woodcutting & Axes need to be treated differently.
|
/* Woodcutting & Axes need to be treated differently.
|
||||||
* Basically the tool always needs to ready and we check to see if the cooldown is over when the user takes action
|
* Basically the tool always needs to ready and we check to see if the cooldown is over when the user takes action
|
||||||
*/
|
*/
|
||||||
if (skill == SkillType.WOODCUTTING || skill == SkillType.AXES) {
|
if (ability.getPermissions(player) && tool.inHand(inHand) && !PP.getToolPreparationMode(tool)) {
|
||||||
if ((mcPermissions.getInstance().treeFeller(player) || mcPermissions.getInstance().skullSplitter(player)) &&
|
if (skill != SkillType.WOODCUTTING && skill != SkillType.AXES) {
|
||||||
tool.inHand(inHand) && !PP.getToolPreparationMode(tool)) {
|
if (!PP.getAbilityMode(ability) && !cooldownOver(PP.getSkillDATS(ability) * TIME_CONVERSION_FACTOR, ability.getCooldown())) {
|
||||||
if (LoadProperties.enableAbilityMessages) {
|
player.sendMessage(mcLocale.getString("Skills.TooTired") + ChatColor.YELLOW + " (" + calculateTimeLeft(PP.getSkillDATS(ability) * TIME_CONVERSION_FACTOR, ability.getCooldown()) + "s)");
|
||||||
player.sendMessage(tool.getRaiseTool());
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
PP.setToolPreparationATS(tool, System.currentTimeMillis());
|
|
||||||
PP.setToolPreparationMode(tool, true);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else if (ability.getPermissions(player) && tool.inHand(inHand) && !PP.getToolPreparationMode(tool)) {
|
|
||||||
if (!PP.getAbilityMode(ability) && !cooldownOver(PP.getSkillDATS(ability) * TIME_CONVERSION_FACTOR, ability.getCooldown())) {
|
|
||||||
player.sendMessage(mcLocale.getString("Skills.TooTired") + ChatColor.YELLOW + " (" + calculateTimeLeft(PP.getSkillDATS(ability) * TIME_CONVERSION_FACTOR, ability.getCooldown()) + "s)");
|
|
||||||
return;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (LoadProperties.enableAbilityMessages) {
|
if (LoadProperties.enableAbilityMessages) {
|
||||||
|
@ -302,7 +302,7 @@ m.LVL=[[DARK_GRAY]]LVL: [[GREEN]]{0} [[DARK_AQUA]]XP[[YELLOW]]([[GOLD]]{1}[[YELL
|
|||||||
Combat.BeastLore=[[GREEN]]**BEAST LORE**
|
Combat.BeastLore=[[GREEN]]**BEAST LORE**
|
||||||
Combat.BeastLoreOwner=[[DARK_AQUA]]Owner ([[RED]]{0}[[DARK_AQUA]])
|
Combat.BeastLoreOwner=[[DARK_AQUA]]Owner ([[RED]]{0}[[DARK_AQUA]])
|
||||||
Combat.BeastLoreHealth=[[DARK_AQUA]]Health ([[GREEN]]{0}[[DARK_AQUA]]/{1})
|
Combat.BeastLoreHealth=[[DARK_AQUA]]Health ([[GREEN]]{0}[[DARK_AQUA]]/{1})
|
||||||
mcMMO.Description=[[DARK_AQUA]]About the [[YELLOW]]mcMMO[[DARK_AQUA]] Project:,[[GOLD]]mcMMO is an [[RED]]open source[[GOLD]] RPG mod created in February 2011,[[GOLD]]by [[BLUE]]nossr50[[GOLD]]. The goal is to provide a quality RPG experience.,[[DARK_AQUA]]Tips:,[[GOLD]] - [[GREEN]]Use [[RED]]/mcc[[GREEN]] to see commands,[[GOLD]] - [[GREEN]]Type [[RED]]/SKILLNAME[[GREEN]] to see detailed skill info,[[DARK_AQUA]]Developers:,[[GOLD]] - [[GREEN]]nossr50 [[BLUE]](Project Lead),[[GOLD]] - [[GREEN]]GJ [[BLUE]](Senior Developer),[[GOLD]] - [[GREEN]]NuclearW [[BLUE]](Developer),[[DARK_AQUA]]Useful Links:,[[GOLD]] - [[GREEN]]issues.mcmmo.org[[GOLD]] Bug Reporting,[[GOLD]] - [[GREEN]]#mcmmo @ irc.esper.net[[GOLD]] IRC Chat,[[GOLD]] - [[GREEN]]http://bit.ly/H6XwFb[[GOLD]] Bukkit Forum Thread,[[DARK_AQUA]]Donation Info:
|
mcMMO.Description=[[DARK_AQUA]]About the [[YELLOW]]mcMMO[[DARK_AQUA]] Project:,[[GOLD]]mcMMO is an [[RED]]open source[[GOLD]] RPG mod created in February 2011,[[GOLD]]by [[BLUE]]nossr50[[GOLD]]. The goal is to provide a quality RPG experience.,[[DARK_AQUA]]Tips:,[[GOLD]] - [[GREEN]]Use [[RED]]/mcc[[GREEN]] to see commands,[[GOLD]] - [[GREEN]]Type [[RED]]/SKILLNAME[[GREEN]] to see detailed skill info,[[DARK_AQUA]]Developers:,[[GOLD]] - [[GREEN]]nossr50 [[BLUE]](Project Lead),[[GOLD]] - [[GREEN]]GJ [[BLUE]](Senior Developer),[[GOLD]] - [[GREEN]]NuclearW [[BLUE]](Developer),[[DARK_AQUA]]Useful Links:,[[GOLD]] - [[GREEN]]issues.mcmmo.org[[GOLD]] Bug Reporting,[[GOLD]] - [[GREEN]]#mcmmo @ irc.esper.net[[GOLD]] IRC Chat,[[GOLD]] - [[GREEN]]http://bit.ly/H6XwFb[[GOLD]] Bukkit Forum Thread
|
||||||
Party.Locked=[[RED]]Party is locked, only party leader may invite.
|
Party.Locked=[[RED]]Party is locked, only party leader may invite.
|
||||||
Party.IsntLocked=[[GRAY]]Party is not locked
|
Party.IsntLocked=[[GRAY]]Party is not locked
|
||||||
Party.Unlocked=[[GRAY]]Party is unlocked
|
Party.Unlocked=[[GRAY]]Party is unlocked
|
||||||
|
Loading…
Reference in New Issue
Block a user