Dropper

Struct Dropper 

Source
pub struct Dropper<'mc>(/* private fields */);

Implementations§

Source§

impl<'mc> Dropper<'mc>

Source

pub fn drop(&self) -> Result<(), Box<dyn Error>>

Tries to drop a randomly selected item from the dropper’s inventory, following the normal behavior of a dropper.

Normal behavior of a dropper is as follows:

If the block that the dropper is facing is an InventoryHolder, the randomly selected ItemStack is placed within that Inventory in the first slot that’s available, starting with 0 and counting up.If the inventory is full, nothing happens.

If the block that the dropper is facing is not an InventoryHolder, the randomly selected ItemStack is dropped on the ground in the form of an {@link org.bukkit.entity.Item Item}.

If the block represented by this state is no longer a dropper, this will do nothing.

Source

pub fn inventory(&self) -> Result<Inventory<'mc>, Box<dyn Error>>

Gets the inventory of the block represented by this block state.

If the block was changed to a different type in the meantime, the returned inventory might no longer be valid.

If this block state is not placed this will return the captured inventory snapshot instead.

Source

pub fn snapshot_inventory(&self) -> Result<Inventory<'mc>, Box<dyn Error>>

Gets the captured inventory snapshot of this container.

The returned inventory is not linked to any block. Any modifications to the returned inventory will not be applied to the block represented by this block state up until {@link #update(boolean, boolean)} has been called.

Source

pub fn persistent_data_container( &self, ) -> Result<PersistentDataContainer<'mc>, Box<dyn Error>>

Returns a custom tag container capable of storing tags on the object. Note that the tags stored on this container are all stored under their own custom namespace therefore modifying default tags using this {@link PersistentDataHolder} is impossible.

This {@link PersistentDataHolder} is only linked to the snapshot instance stored by the {@link BlockState}. When storing changes on the {@link PersistentDataHolder}, the updated content will only be applied to the actual tile entity after one of the {@link #update()} methods is called.

Source

pub fn block(&self) -> Result<Block<'mc>, Box<dyn Error>>

Gets the block associated with this holder.

Source

pub fn is_locked(&self) -> Result<bool, Box<dyn Error>>

Checks if the container has a valid (non empty) key.

Source

pub fn lock(&self) -> Result<String, Box<dyn Error>>

Gets the key needed to access the container.

Source

pub fn set_lock(&self, key: impl Into<String>) -> Result<(), Box<dyn Error>>

Sets the key required to access this container. Set to null (or empty string) to remove key.

Source

pub fn custom_name(&self) -> Result<Option<String>, Box<dyn Error>>

Gets the custom name on a mob or block. If there is no name this method will return null.

This value has no effect on players, they will always use their real name.

Source

pub fn set_custom_name( &self, name: impl Into<String>, ) -> Result<(), Box<dyn Error>>

Sets a custom name on a mob or block. This name will be used in death messages and can be sent to the client as a nameplate over the mob.

Setting the name to null or an empty string will clear it.

This value has no effect on players, they will always use their real name.

Source

pub fn set_loot_table( &self, table: impl Into<LootTable<'mc>>, ) -> Result<(), Box<dyn Error>>

Set the loot table for a container or entity.

To remove a loot table use null. Do not use {@link LootTables#EMPTY} to clear a LootTable.

Source

pub fn loot_table(&self) -> Result<Option<LootTable<'mc>>, Box<dyn Error>>

Gets the Loot Table attached to this block or entity.

If an block/entity does not have a loot table, this will return null, NOT an empty loot table.

Source

pub fn set_seed(&self, seed: i64) -> Result<(), Box<dyn Error>>

Set the seed used when this Loot Table generates loot.

Source

pub fn seed(&self) -> Result<i64, Box<dyn Error>>

Get the Loot Table’s seed.

The seed is used when generating loot.

Source

pub fn instance_of(&self, other: impl Into<String>) -> Result<bool, Error>

Trait Implementations§

Source§

impl<'mc> Into<Container<'mc>> for Dropper<'mc>

Source§

fn into(self) -> Container<'mc>

Converts this type into the (usually inferred) input type.
Source§

impl<'mc> Into<Lootable<'mc>> for Dropper<'mc>

Source§

fn into(self) -> Lootable<'mc>

Converts this type into the (usually inferred) input type.
Source§

impl<'mc> JNIInstantiatable<'mc> for Dropper<'mc>

Source§

fn from_raw( env: &SharedJNIEnv<'mc>, obj: JObject<'mc>, ) -> Result<Self, Box<dyn Error>>

Source§

impl<'mc> JNIRaw<'mc> for Dropper<'mc>

Source§

fn jni_ref(&self) -> SharedJNIEnv<'mc>

Source§

fn jni_object(&self) -> JObject<'mc>

Auto Trait Implementations§

§

impl<'mc> !Freeze for Dropper<'mc>

§

impl<'mc> !RefUnwindSafe for Dropper<'mc>

§

impl<'mc> !Send for Dropper<'mc>

§

impl<'mc> !Sync for Dropper<'mc>

§

impl<'mc> Unpin for Dropper<'mc>

§

impl<'mc> UnwindSafe for Dropper<'mc>

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<D> OwoColorize for D

Source§

fn fg<C>(&self) -> FgColorDisplay<'_, C, Self>
where C: Color,

Set the foreground color generically Read more
Source§

fn bg<C>(&self) -> BgColorDisplay<'_, C, Self>
where C: Color,

Set the background color generically. Read more
Source§

fn black(&self) -> FgColorDisplay<'_, Black, Self>

Change the foreground color to black
Source§

fn on_black(&self) -> BgColorDisplay<'_, Black, Self>

Change the background color to black
Source§

fn red(&self) -> FgColorDisplay<'_, Red, Self>

Change the foreground color to red
Source§

fn on_red(&self) -> BgColorDisplay<'_, Red, Self>

Change the background color to red
Source§

fn green(&self) -> FgColorDisplay<'_, Green, Self>

Change the foreground color to green
Source§

fn on_green(&self) -> BgColorDisplay<'_, Green, Self>

Change the background color to green
Source§

fn yellow(&self) -> FgColorDisplay<'_, Yellow, Self>

Change the foreground color to yellow
Source§

fn on_yellow(&self) -> BgColorDisplay<'_, Yellow, Self>

Change the background color to yellow
Source§

fn blue(&self) -> FgColorDisplay<'_, Blue, Self>

Change the foreground color to blue
Source§

fn on_blue(&self) -> BgColorDisplay<'_, Blue, Self>

Change the background color to blue
Source§

fn magenta(&self) -> FgColorDisplay<'_, Magenta, Self>

Change the foreground color to magenta
Source§

fn on_magenta(&self) -> BgColorDisplay<'_, Magenta, Self>

Change the background color to magenta
Source§

fn purple(&self) -> FgColorDisplay<'_, Magenta, Self>

Change the foreground color to purple
Source§

fn on_purple(&self) -> BgColorDisplay<'_, Magenta, Self>

Change the background color to purple
Source§

fn cyan(&self) -> FgColorDisplay<'_, Cyan, Self>

Change the foreground color to cyan
Source§

fn on_cyan(&self) -> BgColorDisplay<'_, Cyan, Self>

Change the background color to cyan
Source§

fn white(&self) -> FgColorDisplay<'_, White, Self>

Change the foreground color to white
Source§

fn on_white(&self) -> BgColorDisplay<'_, White, Self>

Change the background color to white
Source§

fn default_color(&self) -> FgColorDisplay<'_, Default, Self>

Change the foreground color to the terminal default
Source§

fn on_default_color(&self) -> BgColorDisplay<'_, Default, Self>

Change the background color to the terminal default
Source§

fn bright_black(&self) -> FgColorDisplay<'_, BrightBlack, Self>

Change the foreground color to bright black
Source§

fn on_bright_black(&self) -> BgColorDisplay<'_, BrightBlack, Self>

Change the background color to bright black
Source§

fn bright_red(&self) -> FgColorDisplay<'_, BrightRed, Self>

Change the foreground color to bright red
Source§

fn on_bright_red(&self) -> BgColorDisplay<'_, BrightRed, Self>

Change the background color to bright red
Source§

fn bright_green(&self) -> FgColorDisplay<'_, BrightGreen, Self>

Change the foreground color to bright green
Source§

fn on_bright_green(&self) -> BgColorDisplay<'_, BrightGreen, Self>

Change the background color to bright green
Source§

fn bright_yellow(&self) -> FgColorDisplay<'_, BrightYellow, Self>

Change the foreground color to bright yellow
Source§

fn on_bright_yellow(&self) -> BgColorDisplay<'_, BrightYellow, Self>

Change the background color to bright yellow
Source§

fn bright_blue(&self) -> FgColorDisplay<'_, BrightBlue, Self>

Change the foreground color to bright blue
Source§

fn on_bright_blue(&self) -> BgColorDisplay<'_, BrightBlue, Self>

Change the background color to bright blue
Source§

fn bright_magenta(&self) -> FgColorDisplay<'_, BrightMagenta, Self>

Change the foreground color to bright magenta
Source§

fn on_bright_magenta(&self) -> BgColorDisplay<'_, BrightMagenta, Self>

Change the background color to bright magenta
Source§

fn bright_purple(&self) -> FgColorDisplay<'_, BrightMagenta, Self>

Change the foreground color to bright purple
Source§

fn on_bright_purple(&self) -> BgColorDisplay<'_, BrightMagenta, Self>

Change the background color to bright purple
Source§

fn bright_cyan(&self) -> FgColorDisplay<'_, BrightCyan, Self>

Change the foreground color to bright cyan
Source§

fn on_bright_cyan(&self) -> BgColorDisplay<'_, BrightCyan, Self>

Change the background color to bright cyan
Source§

fn bright_white(&self) -> FgColorDisplay<'_, BrightWhite, Self>

Change the foreground color to bright white
Source§

fn on_bright_white(&self) -> BgColorDisplay<'_, BrightWhite, Self>

Change the background color to bright white
Source§

fn bold(&self) -> BoldDisplay<'_, Self>

Make the text bold
Source§

fn dimmed(&self) -> DimDisplay<'_, Self>

Make the text dim
Source§

fn italic(&self) -> ItalicDisplay<'_, Self>

Make the text italicized
Source§

fn underline(&self) -> UnderlineDisplay<'_, Self>

Make the text underlined
Make the text blink
Make the text blink (but fast!)
Source§

fn reversed(&self) -> ReversedDisplay<'_, Self>

Swap the foreground and background colors
Source§

fn hidden(&self) -> HiddenDisplay<'_, Self>

Hide the text
Source§

fn strikethrough(&self) -> StrikeThroughDisplay<'_, Self>

Cross out the text
Source§

fn color<Color>(&self, color: Color) -> FgDynColorDisplay<'_, Color, Self>
where Color: DynColor,

Set the foreground color at runtime. Only use if you do not know which color will be used at compile-time. If the color is constant, use either OwoColorize::fg or a color-specific method, such as OwoColorize::green, Read more
Source§

fn on_color<Color>(&self, color: Color) -> BgDynColorDisplay<'_, Color, Self>
where Color: DynColor,

Set the background color at runtime. Only use if you do not know what color to use at compile-time. If the color is constant, use either OwoColorize::bg or a color-specific method, such as OwoColorize::on_yellow, Read more
Source§

fn fg_rgb<const R: u8, const G: u8, const B: u8>( &self, ) -> FgColorDisplay<'_, CustomColor<R, G, B>, Self>

Set the foreground color to a specific RGB value.
Source§

fn bg_rgb<const R: u8, const G: u8, const B: u8>( &self, ) -> BgColorDisplay<'_, CustomColor<R, G, B>, Self>

Set the background color to a specific RGB value.
Source§

fn truecolor(&self, r: u8, g: u8, b: u8) -> FgDynColorDisplay<'_, Rgb, Self>

Sets the foreground color to an RGB value.
Source§

fn on_truecolor(&self, r: u8, g: u8, b: u8) -> BgDynColorDisplay<'_, Rgb, Self>

Sets the background color to an RGB value.
Source§

fn style(&self, style: Style) -> Styled<&Self>

Apply a runtime-determined style
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more