* try to resolve merge conflict
* feat: TU19 (Dec 2014) Features & Content (#32)
* December 2014 files
* Working release build
* Fix compilation issues
* Add sound to Windows64Media
* Add DLC content and force Tutorial DLC
* Revert "Add DLC content and force Tutorial DLC"
This reverts commit 97a4399472.
* Disable broken light packing
* Disable breakpoint during DLC texture map load
Allows DLC loading but the DLC textures are still broken
* Fix post build not working
* ...
* fix vs2022 build
* fix cmake build
---------
Co-authored-by: Loki <lokirautio@gmail.com>
82 lines
1.8 KiB
C++
82 lines
1.8 KiB
C++
#pragma once
|
|
|
|
/*
|
|
class WrittenBookItem extends Item {
|
|
|
|
public static final int TITLE_LENGTH = 16;
|
|
public static final int PAGE_LENGTH = 256;
|
|
public static final int MAX_PAGES = 50;
|
|
public static final String TAG_TITLE = "title";
|
|
public static final String TAG_AUTHOR = "author";
|
|
public static final String TAG_PAGES = "pages";
|
|
|
|
public WrittenBookItem(int id) {
|
|
super(id);
|
|
setMaxStackSize(1);
|
|
}
|
|
|
|
public static boolean makeSureTagIsValid(CompoundTag bookTag) {
|
|
|
|
if (!WritingBookItem.makeSureTagIsValid(bookTag)) {
|
|
return false;
|
|
}
|
|
|
|
if (!bookTag.contains(TAG_TITLE)) {
|
|
return false;
|
|
}
|
|
String title = bookTag.getString(TAG_TITLE);
|
|
if (title == null || title.length() > TITLE_LENGTH) {
|
|
return false;
|
|
}
|
|
|
|
if (!bookTag.contains(TAG_AUTHOR)) {
|
|
return false;
|
|
}
|
|
|
|
return true;
|
|
}
|
|
|
|
@Override
|
|
public String getHoverName(ItemInstance itemInstance) {
|
|
if (itemInstance.hasTag()) {
|
|
CompoundTag itemTag = itemInstance.getTag();
|
|
|
|
StringTag titleTag = (StringTag) itemTag.get(TAG_TITLE);
|
|
if (titleTag != null) {
|
|
return titleTag.toString();
|
|
}
|
|
}
|
|
return super.getHoverName(itemInstance);
|
|
}
|
|
|
|
@Override
|
|
public void appendHoverText(ItemInstance itemInstance, Player player, List<String> lines, boolean advanced) {
|
|
|
|
if (itemInstance.hasTag()) {
|
|
CompoundTag itemTag = itemInstance.getTag();
|
|
|
|
StringTag authorTag = (StringTag) itemTag.get(TAG_AUTHOR);
|
|
if (authorTag != null) {
|
|
lines.add(ChatFormatting.GRAY + String.format(I18n.get("book.byAuthor", authorTag.data)));
|
|
}
|
|
}
|
|
}
|
|
|
|
@Override
|
|
public ItemInstance use(ItemInstance itemInstance, Level level, Player player) {
|
|
player.openItemInstanceGui(itemInstance);
|
|
return itemInstance;
|
|
}
|
|
|
|
@Override
|
|
public boolean shouldOverrideMultiplayerNBT() {
|
|
return true;
|
|
}
|
|
|
|
@Override
|
|
public boolean isFoil(ItemInstance itemInstance) {
|
|
return true;
|
|
}
|
|
|
|
};
|
|
*/ |