pub struct SignItem {
_standing_block: BlockRef,
_wall_block: BlockRef,
_attachment_direction: Direction,
inner: StandingAndWallBlockItem,
}Expand description
Behavior for sign items that place sign blocks and open the editor.
In vanilla, SignItem extends StandingAndWallBlockItem and only overrides
updateCustomBlockEntityTag to open the sign editor after placement.
The _standing_block, _wall_block, and _attachment_direction fields are read by the
build script via #[json_arg] to generate constructor calls from classes.json.
The actual values are forwarded into inner — the fields themselves are not used at runtime.
Fields§
§_standing_block: BlockRef§_wall_block: BlockRef§_attachment_direction: Direction§inner: StandingAndWallBlockItemPlacement logic delegate (vanilla: SignItem extends StandingAndWallBlockItem).
Implementations§
Trait Implementations§
Source§impl ItemBehavior for SignItem
impl ItemBehavior for SignItem
Source§fn use_on(&self, context: &mut UseOnContext<'_>) -> InteractionResult
fn use_on(&self, context: &mut UseOnContext<'_>) -> InteractionResult
Called when this item is used on a block.
Source§fn type_name(&self) -> &'static str
fn type_name(&self) -> &'static str
Returns the Rust type name of the concrete behavior implementation.
Source§fn get_name<'a>(&self, stack: &'a ItemStack) -> Cow<'a, TextComponent>
fn get_name<'a>(&self, stack: &'a ItemStack) -> Cow<'a, TextComponent>
Returns vanilla
Item.getName(stack).Source§fn use_item(&self, context: &mut UseItemContext<'_>) -> InteractionResult
fn use_item(&self, context: &mut UseItemContext<'_>) -> InteractionResult
Called when this item is used (e.g. right click in air).
Source§fn interact_living_entity(
&self,
_stack: &mut ItemStack,
_player: &Player,
_target: &dyn LivingEntity,
_hand: InteractionHand,
) -> InteractionResult
fn interact_living_entity( &self, _stack: &mut ItemStack, _player: &Player, _target: &dyn LivingEntity, _hand: InteractionHand, ) -> InteractionResult
Called by vanilla
ItemStack.interactLivingEntity.Source§fn get_item_damage_source(
&self,
_attacker: &dyn LivingEntity,
) -> Option<DamageSource>
fn get_item_damage_source( &self, _attacker: &dyn LivingEntity, ) -> Option<DamageSource>
Returns vanilla
Item.getItemDamageSource.Source§fn get_attack_damage_bonus(
&self,
_attacker: &dyn LivingEntity,
_victim: &dyn Entity,
_base_damage: f32,
_damage_source: &DamageSource,
) -> f32
fn get_attack_damage_bonus( &self, _attacker: &dyn LivingEntity, _victim: &dyn Entity, _base_damage: f32, _damage_source: &DamageSource, ) -> f32
Returns item-specific attack damage added by
Item.getAttackDamageBonus.Source§fn hurt_enemy(
&self,
_stack: &mut ItemStack,
_target: &dyn LivingEntity,
_attacker: &dyn LivingEntity,
)
fn hurt_enemy( &self, _stack: &mut ItemStack, _target: &dyn LivingEntity, _attacker: &dyn LivingEntity, )
Called by vanilla
Item.hurtEnemy.Source§fn post_hurt_enemy(
&self,
_stack: &mut ItemStack,
_target: &dyn LivingEntity,
_attacker: &dyn LivingEntity,
)
fn post_hurt_enemy( &self, _stack: &mut ItemStack, _target: &dyn LivingEntity, _attacker: &dyn LivingEntity, )
Called by vanilla
Item.postHurtEnemy.Auto Trait Implementations§
impl !RefUnwindSafe for SignItem
impl !UnwindSafe for SignItem
impl Freeze for SignItem
impl Send for SignItem
impl Sync for SignItem
impl Unpin for SignItem
impl UnsafeUnpin for SignItem
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreWraps this value in an
Arc<SyncMutex<>>