crwdns141469:0crwdne141469:0
Warning
crwdns141471:0crwdne141471:0
crwdns141473:0crwdne141473:0
crwdns141475:0:javadoc:crwdnd141475:0:javadoc:crwdnd141475:0:javadoc:crwdne141475:0
import org.spongepowered.api.item.ItemTypes;
import org.spongepowered.api.item.inventory.ItemStack;
public ItemStack generateSword() {
ItemStack superMegaAwesomeSword = ItemStack.builder()
.itemType(ItemTypes.DIAMOND_SWORD).build();
return superMegaAwesomeSword;
}
crwdns141477:0:javadoc:crwdne141477:0
import java.util.List;
import java.util.stream.Collectors;
import org.spongepowered.api.Sponge;
import org.spongepowered.api.data.manipulator.mutable.item.EnchantmentData;
import org.spongepowered.api.data.meta.ItemEnchantment
import org.spongepowered.api.item.Enchantment;
EnchantmentData enchantmentData = superMegaAwesomeSword
.getOrCreate(EnchantmentData.class).get();
final List<EnchantmentType> enchantments = Sponge.getRegistry()
.getAllOf(EnchantmentType.class).stream().collect(Collectors.toList());
for (EnchantmentType enchantment : enchantments) {
enchantmentData.set(enchantmentData.enchantments()
.add(Enchantment.of(enchantment, 1000)));
}
superMegaAwesomeSword.offer(enchantmentData);
crwdns141479:0crwdne141479:0
import net.kyori.adventure.text.Component;
import net.kyori.adventure.text.TextComponent;
import net.kyori.adventure.text.format.NamedTextColor;
import org.spongepowered.api.data.key.Keys;
import org.spongepowered.api.item.ItemTypes;
superMegaAwesomeSword.offer(Keys.DISPLAY_NAME, TextComponent.ofChildren(
Component.text("SUPER ", NamedTextColor.BLUE),
Component.text("MEGA ", NamedTextColor.GOLD),
Component.text("AWESOME ", NamedTextColor.DARK_AQUA),
ItemTypes.DIAMOND_SWORD.asComponent().color(NamedTextColor.AQUA));
crwdns141481:0crwdne141481:0
superMegaAwesomeSword.offer(Keys.UNBREAKABLE, true);
crwdns141483:0crwdne141483:0
crwdns141485:0crwdne141485:0
crwdns141487:0:doc:crwdnd141487:0:javadoc:crwdnd141487:0:javadoc:crwdnd141487:0:javadoc:crwdnd141487:0:javadoc:crwdnd141487:0:javadoc:crwdne141487:0
import org.spongepowered.api.entity.Entity;
import org.spongepowered.api.entity.EntityTypes;
import org.spongepowered.api.event.CauseStackManager.StackFrame;
import org.spongepowered.api.world.Location;
import org.spongepowered.api.world.World;
import org.spongepowered.api.world.extent.Extent;
import java.util.Optional;
public void spawnItem(ItemStack superMegaAwesomeSword, Location<World> spawnLocation) {
Extent extent = spawnLocation.getExtent();
Entity item = extent.createEntity(EntityTypes.ITEM, spawnLocation.getPosition());
item.offer(Keys.REPRESENTED_ITEM, superMegaAwesomeSword.createSnapshot());
try (StackFrame frame = Sponge.getCauseStackManager().pushCauseFrame()) {
frame.addContext(EventContextKeys.SPAWN_TYPE, SpawnTypes.PLACEMENT);
extent.spawnEntity(item);
}
}
crwdns141489:0crwdne141489:0
crwdns141491:0:javadoc:crwdnd141491:0:javadoc:crwdnd141491:0:javadoc:crwdne141491:0
import org.spongepowered.api.block.BlockState;
public ItemStack createStack(BlockState state) {
return ItemStack.builder().fromBlockState(state).build();
}