mirror of
https://github.com/mcMMO-Dev/mcMMO.git
synced 2025-06-27 19:24:44 +02:00
Finalized page system. Moved grabbing pages to Page.java.
This commit is contained in:
@ -5,9 +5,21 @@ import java.util.ArrayList;
|
||||
import org.bukkit.ChatColor;
|
||||
import org.bukkit.entity.Player;
|
||||
|
||||
import com.gmail.nossr50.m;
|
||||
import com.gmail.nossr50.datatypes.SkillType;
|
||||
import com.gmail.nossr50.locale.mcLocale;
|
||||
|
||||
public class Page {
|
||||
|
||||
public static int getTotalPageNumber(String address)
|
||||
{
|
||||
String[] addressSplit = mcLocale.getString(address).split("\n");
|
||||
if(addressSplit.length < 8)
|
||||
return 1;
|
||||
else
|
||||
return (addressSplit.length/8)+1;
|
||||
}
|
||||
|
||||
public static ArrayList<String> grabPageContents(String header, String address, int pagenum)
|
||||
{
|
||||
int pageIndexStart = 0;
|
||||
@ -24,19 +36,16 @@ public class Page {
|
||||
allStrings.add(ChatColor.GOLD+"-="+ChatColor.GREEN+header+ChatColor.GOLD+"=-"); //So stylish
|
||||
|
||||
//Add targeted strings
|
||||
|
||||
while(allStrings.size() < 9)
|
||||
{
|
||||
allStrings.add(addressSplit[pageIndexStart+allStrings.size()-1]);
|
||||
if(pageIndexStart+allStrings.size() > addressSplit.length)
|
||||
allStrings.add("");
|
||||
else
|
||||
allStrings.add(addressSplit[pageIndexStart+allStrings.size()-1]);
|
||||
}
|
||||
|
||||
int totalPages = 1;
|
||||
|
||||
if(addressSplit.length >= 8)
|
||||
{
|
||||
totalPages = (addressSplit.length/8)+1;
|
||||
}
|
||||
|
||||
allStrings.add("Page "+pagenum+" of "+totalPages);
|
||||
allStrings.add("Page "+pagenum+" of "+getTotalPageNumber(address));
|
||||
return allStrings;
|
||||
}
|
||||
|
||||
@ -50,4 +59,36 @@ public class Page {
|
||||
x++;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public static void grabGuidePageForSkill(SkillType skilltype, Player player, String[] args)
|
||||
{
|
||||
if (args.length >= 1)
|
||||
{
|
||||
if(args[0].equals("?"))
|
||||
{
|
||||
String capitalized = m.getCapitalized(skilltype.toString());
|
||||
String address = "Guides."+capitalized;
|
||||
|
||||
Page.clearChat(player);
|
||||
if(args.length > 1 && m.isInt(args[1]) && m.getInt(args[1]) <= Page.getTotalPageNumber(address))
|
||||
{
|
||||
for(String target : Page.grabPageContents(capitalized+" Guide", address, m.getInt(args[1])))
|
||||
{
|
||||
player.sendMessage(target);
|
||||
}
|
||||
} else if(args.length > 1 && m.getInt(args[1]) > Page.getTotalPageNumber(address))
|
||||
{
|
||||
player.sendMessage("That page doesn't exist, there are only "+Page.getTotalPageNumber(address)+" total pages");
|
||||
}
|
||||
else if(args.length > 1 && !m.isInt(args[1]))
|
||||
{
|
||||
player.sendMessage("Not a valid page number!");
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
player.sendMessage(ChatColor.RED + "Usage is /"+skilltype.toString().toLowerCase()+" ? [page]");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user