Skip to content
This repository was archived by the owner on Dec 11, 2022. It is now read-only.

Commit

Permalink
添加一些函数 格式化代码
Browse files Browse the repository at this point in the history
  • Loading branch information
xiaozhangup committed Mar 6, 2022
1 parent 33a0178 commit 91a39e5
Show file tree
Hide file tree
Showing 10 changed files with 333 additions and 26 deletions.
124 changes: 124 additions & 0 deletions .idea/uiDesigner.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 2 additions & 2 deletions src/main/java/me/xiaozhangup/natunology/Main.java
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@

import me.xiaozhangup.natunology.commands.Commands;
import me.xiaozhangup.natunology.event.MovePart;
import me.xiaozhangup.natunology.techcore.api.Test;
import me.xiaozhangup.natunology.techcore.events.Books;
import me.xiaozhangup.natunology.techcore.views.MainTap;
import org.bukkit.Bukkit;
import org.bukkit.plugin.Plugin;
import org.bukkit.plugin.java.JavaPlugin;
Expand Down Expand Up @@ -31,7 +31,7 @@ public void onEnable() {
getLogger().info("Commands Loaded!");

Bukkit.getPluginManager().registerEvents(new Books(), this);
Bukkit.getPluginManager().registerEvents(new MainTap(), this);
Test.runTest();

// if (getConfig().getBoolean("Dead.enable")) {
// Bukkit.getPluginManager().registerEvents(new Invkeep() , this);
Expand Down
1 change: 0 additions & 1 deletion src/main/java/me/xiaozhangup/natunology/api/NString.java
Original file line number Diff line number Diff line change
Expand Up @@ -14,5 +14,4 @@ public static List<String> toStringlist(String... s) {
}
return strings;
}

}
21 changes: 21 additions & 0 deletions src/main/java/me/xiaozhangup/natunology/techcore/Datahash.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
package me.xiaozhangup.natunology.techcore;

import org.bukkit.entity.Player;
import org.bukkit.inventory.ItemStack;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;

public class Datahash {

public static HashMap<Integer, ItemStack> items = new HashMap<>();
public static List<ItemStack> group = new ArrayList<>();
public static HashMap<Integer, String> itemgroupd = new HashMap<>();
public static HashMap<ItemStack, String> groupid = new HashMap<>();

public static HashMap<Player, String> lastgroup = new HashMap<>();

public static HashMap<Integer, List<ItemStack>> crafttable = new HashMap<>();

}
33 changes: 33 additions & 0 deletions src/main/java/me/xiaozhangup/natunology/techcore/api/ItemHash.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
package me.xiaozhangup.natunology.techcore.api;

import me.xiaozhangup.natunology.techcore.Datahash;
import org.bukkit.inventory.ItemStack;

public class ItemHash {

public static void addGroup(ItemStack itemStack, String id) {
Datahash.group.add(itemStack);
Datahash.groupid.put(itemStack, id);
}

public static String getGroupId(ItemStack itemStack) {
try {
return Datahash.groupid.get(itemStack);
} catch (Exception e) {
return null;
}
}

public static void addItem(ItemStack itemStack, Integer integer, String group) {
Datahash.items.put(integer, itemStack);
Datahash.itemgroupd.put(integer, group);
}

public static ItemStack getItem(Integer integer) {
try {
return Datahash.items.get(integer);
} catch (Exception e) {
return null;
}
}
}
19 changes: 19 additions & 0 deletions src/main/java/me/xiaozhangup/natunology/techcore/api/Test.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
package me.xiaozhangup.natunology.techcore.api;

import me.xiaozhangup.natunology.techcore.items.Items;
import org.bukkit.Material;
import org.bukkit.inventory.ItemStack;

public class Test {

public static void runTest() {
ItemHash.addGroup(new ItemStack(Material.CHEST), "test1");
ItemHash.addGroup(new ItemStack(Material.GLASS), "test2");
ItemHash.addGroup(new ItemStack(Material.GRASS), "test3");
ItemHash.addItem(Items.addId(new ItemStack(Material.LAVA_BUCKET), 42), 42, "misc");
ItemHash.addItem(Items.addId(new ItemStack(Material.TORCH), 43), 43, "test1");
ItemHash.addItem(Items.addId(new ItemStack(Material.ACACIA_BOAT), 44), 44, "test2");
ItemHash.addItem(Items.addId(new ItemStack(Material.EGG), 45), 45, "test3");
}

}
38 changes: 38 additions & 0 deletions src/main/java/me/xiaozhangup/natunology/techcore/events/Books.java
Original file line number Diff line number Diff line change
@@ -1,10 +1,17 @@
package me.xiaozhangup.natunology.techcore.events;

import me.xiaozhangup.natunology.techcore.Datahash;
import me.xiaozhangup.natunology.techcore.api.ItemHash;
import me.xiaozhangup.natunology.techcore.views.InfoMenu;
import me.xiaozhangup.natunology.techcore.views.MainTap;
import me.xiaozhangup.natunology.techcore.views.Menukey;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.inventory.InventoryClickEvent;
import org.bukkit.event.player.PlayerInteractEvent;
import org.bukkit.inventory.InventoryHolder;
import org.bukkit.inventory.ItemStack;

public class Books implements Listener {

Expand All @@ -19,4 +26,35 @@ public void onItemClick(PlayerInteractEvent e) {
MainTap.openMainTap(p);
}
}

@EventHandler
public void onInvClick(InventoryClickEvent e) {
if (!(e.getWhoClicked() instanceof Player)) return;
Player player = (Player) e.getWhoClicked();
InventoryHolder holder = player.getOpenInventory().getTopInventory().getHolder();
if (holder instanceof Menukey) {
e.setCancelled(true);
ItemStack itemStack = e.getCurrentItem();

if (itemStack != null && itemStack.hasItemMeta() && itemStack.getItemMeta().hasCustomModelData()) {
if (itemStack.getItemMeta().getCustomModelData() == 2) {
InfoMenu.openInfoMenu(player);
} else if (itemStack.getItemMeta().getCustomModelData() == 3) {
MainTap.openMainTap(player);
} else if (itemStack.getItemMeta().getCustomModelData() == 4) {
MainTap.openGroup(player, Datahash.lastgroup.get(player));
} else if (itemStack.getItemMeta().getCustomModelData() == 5) {
MainTap.openGroup(player, "misc");
Datahash.lastgroup.put(player, "misc");
} else {
MainTap.openCraft(player, itemStack.getItemMeta().getCustomModelData());
}
} else if (itemStack != null) {
if (ItemHash.getGroupId(itemStack) != null) {
MainTap.openGroup(player, ItemHash.getGroupId(itemStack));
Datahash.lastgroup.put(player, ItemHash.getGroupId(itemStack));
}
}
}
}
}
28 changes: 25 additions & 3 deletions src/main/java/me/xiaozhangup/natunology/techcore/items/Items.java
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,9 @@

import com.mojang.authlib.GameProfile;
import com.mojang.authlib.properties.Property;
import com.sun.org.apache.xerces.internal.xs.StringList;
import me.xiaozhangup.natunology.api.Message;
import me.xiaozhangup.natunology.api.NString;
import org.bukkit.Material;
import org.bukkit.entity.Item;
import org.bukkit.inventory.ItemStack;
import org.bukkit.inventory.meta.ItemMeta;
import org.bukkit.inventory.meta.SkullMeta;
Expand Down Expand Up @@ -99,11 +97,35 @@ public static ItemStack getSkull(String base64) {
}

public static ItemStack getHome() {
ItemStack itemStack = getSkull("eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvMTJkN2E3NTFlYjA3MWUwOGRiYmM5NWJjNWQ5ZDY2ZTVmNTFkYzY3MTI2NDBhZDJkZmEwM2RlZmJiNjhhN2YzYSJ9fX0=" , "&f返回主页面" , NString.toStringlist(" " , "&7单击返回"));
ItemStack itemStack = getSkull("eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvMTJkN2E3NTFlYjA3MWUwOGRiYmM5NWJjNWQ5ZDY2ZTVmNTFkYzY3MTI2NDBhZDJkZmEwM2RlZmJiNjhhN2YzYSJ9fX0=", "&f返回主页面", NString.toStringlist(" ", "&7单击返回"));
ItemMeta itemMeta = itemStack.getItemMeta();
itemMeta.setCustomModelData(3);
itemStack.setItemMeta(itemMeta);
return itemStack;
}

public static ItemStack getBack() {
ItemStack itemStack = getSkull("eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvZjZkYWI3MjcxZjRmZjA0ZDU0NDAyMTkwNjdhMTA5YjVjMGMxZDFlMDFlYzYwMmMwMDIwNDc2ZjdlYjYxMjE4MCJ9fX0=", "&f返回上一页", NString.toStringlist(" ", "&7单击返回"));
ItemMeta itemMeta = itemStack.getItemMeta();
itemMeta.setCustomModelData(4);
itemStack.setItemMeta(itemMeta);
return itemStack;
}

public static ItemStack itemBuilder(Material material, String name, String... lore) {
ItemStack itemStack = new ItemStack(material);
ItemMeta itemMeta = itemStack.getItemMeta();
itemMeta.setDisplayName(Message.color(name));
itemMeta.setLore(NString.toStringlist(lore));
itemStack.setItemMeta(itemMeta);
return itemStack;
}

public static ItemStack addId(ItemStack itemStack, Integer integer) {
ItemMeta itemMeta = itemStack.getItemMeta();
itemMeta.setCustomModelData(integer);
itemStack.setItemMeta(itemMeta);
return itemStack;
}

}
Original file line number Diff line number Diff line change
@@ -1,8 +1,10 @@
package me.xiaozhangup.natunology.techcore.views;

import me.xiaozhangup.natunology.api.Message;
import me.xiaozhangup.natunology.techcore.Datahash;
import me.xiaozhangup.natunology.techcore.items.Items;
import org.bukkit.Bukkit;
import org.bukkit.Material;
import org.bukkit.entity.Player;
import org.bukkit.event.inventory.InventoryType;
import org.bukkit.inventory.Inventory;
Expand All @@ -19,7 +21,14 @@ public static void openInfoMenu(Player p) {
inventory.setItem(i, Items.board());
}

inventory.setItem(4 , Items.getHome());
inventory.setItem(4, Items.getHome());

inventory.setItem(9, Items.itemBuilder(Material.PAPER, "&fItems", " ", "&7T: " + Datahash.items.size()));
inventory.setItem(10, Items.itemBuilder(Material.PAPER, "&fGroup", " ", "&7T: " + Datahash.group.size()));
inventory.setItem(11, Items.itemBuilder(Material.PAPER, "&fItemGroupD", " ", "&7T: " + Datahash.itemgroupd.size()));
inventory.setItem(12, Items.itemBuilder(Material.PAPER, "&fGroupID", " ", "&7T: " + Datahash.groupid.size()));
inventory.setItem(13, Items.itemBuilder(Material.PAPER, "&fLastGroup", " ", "&7T: " + Datahash.lastgroup.size()));
inventory.setItem(14, Items.itemBuilder(Material.PAPER, "&fCraftTable", " ", "&7T: " + Datahash.crafttable.size()));

p.openInventory(inventory);

Expand Down
Loading

0 comments on commit 91a39e5

Please sign in to comment.