|
|
@ -1,38 +1,30 @@ |
|
|
|
// priority: 0
|
|
|
|
// priority: 0
|
|
|
|
|
|
|
|
|
|
|
|
const ItemDescription = java('com.simibubi.create.foundation.item.ItemDescription'); |
|
|
|
onEvent("item.tooltip", event => { |
|
|
|
const Palette = java('com.simibubi.create.foundation.item.ItemDescription$Palette'); |
|
|
|
const ItemDescription = java("com.simibubi.create.foundation.item.ItemDescription"); |
|
|
|
|
|
|
|
const Palette = java("com.simibubi.create.foundation.item.ItemDescription$Palette"); |
|
|
|
onEvent('item.tooltip', event => { |
|
|
|
|
|
|
|
event.addAdvanced('tiab:time_in_a_bottle', (item, _, tooltip) => { |
|
|
|
|
|
|
|
tooltip.pop(); // Remove "Stored time hh:mm:ss" line
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
event.addAdvanced("tiab:time_in_a_bottle", (item, _, tooltip) => { |
|
|
|
let name = tooltip[0]; |
|
|
|
let name = tooltip[0]; |
|
|
|
let time = item.nbt.getInt('storedTime') / 20; |
|
|
|
tooltip.pop(); // Remove "Stored time hh:mm:ss" line.
|
|
|
|
let hours = Math.floor(time / 3600); |
|
|
|
|
|
|
|
let minutes = Math.floor(time % 3600 / 60); |
|
|
|
let storedTime = item.nbt.getInt("storedTime"); |
|
|
|
let seconds = Math.floor(time % 3600 % 60); |
|
|
|
let totalSeconds = Math.floor(storedTime / 20); |
|
|
|
|
|
|
|
let totalMinutes = Math.floor(totalSeconds / 60) |
|
|
|
if (hours > 0 || minutes > 0 || seconds > 0) { |
|
|
|
let totalHours = Math.floor(totalMinutes / 60); |
|
|
|
name.append(Component.string(" (")); |
|
|
|
|
|
|
|
|
|
|
|
if (totalSeconds > 0) { |
|
|
|
if (hours > 0) |
|
|
|
name.append(" ("); |
|
|
|
name.append(Component.string(`${hours}h`)); |
|
|
|
if (totalHours > 0) name.append(`${totalHours}h`); |
|
|
|
|
|
|
|
if (totalMinutes > 0) name.append(`${totalMinutes % 60}m`); |
|
|
|
if (minutes > 0) |
|
|
|
name.append(`${totalSeconds % 60}s)`); |
|
|
|
name.append(Component.string(`${minutes}m`)); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (seconds > 0) |
|
|
|
|
|
|
|
name.append(Component.string(`${seconds}s`)); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
name.append(Component.string(")")); |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
new ItemDescription(Palette.Gray) |
|
|
|
new ItemDescription(Palette.Gray) |
|
|
|
.withSummary(Component.translate('item.tiab.time_in_a_bottle.tooltip.summary')) |
|
|
|
.withSummary(Component.translate("item.tiab.time_in_a_bottle.tooltip.summary")) |
|
|
|
// Create expects localized strings instead of components here, so we localize ourselves
|
|
|
|
// Create expects localized strings instead of components here, so we localize ourselves
|
|
|
|
.withControl(Component.translate('item.tiab.time_in_a_bottle.tooltip.condition').string, |
|
|
|
.withControl(Component.translate("item.tiab.time_in_a_bottle.tooltip.condition").string, |
|
|
|
Component.translate('item.tiab.time_in_a_bottle.tooltip.behaviour').string) |
|
|
|
Component.translate("item.tiab.time_in_a_bottle.tooltip.behaviour").string) |
|
|
|
.createTabs() |
|
|
|
.createTabs() |
|
|
|
.addInformation(tooltip); |
|
|
|
.addInformation(tooltip); |
|
|
|
}); |
|
|
|
}); |
|
|
|