Search in sources :

Example 1 with IMixinTileEntityBeacon

use of org.spongepowered.common.interfaces.IMixinTileEntityBeacon in project SpongeCommon by SpongePowered.

the class BeaconDataProcessor method set.

@SuppressWarnings("unchecked")
@Override
protected boolean set(TileEntityBeacon dataHolder, Map<Key<?>, Object> keyValues) {
    Potion primary = ((Optional<Potion>) keyValues.get(Keys.BEACON_PRIMARY_EFFECT)).orElse(null);
    Potion secondary = ((Optional<Potion>) keyValues.get(Keys.BEACON_SECONDARY_EFFECT)).orElse(null);
    ((IMixinTileEntityBeacon) dataHolder).forceSetPrimaryEffect(primary);
    ((IMixinTileEntityBeacon) dataHolder).forceSetSecondaryEffect(secondary);
    dataHolder.markDirty();
    return true;
}
Also used : Optional(java.util.Optional) Potion(net.minecraft.potion.Potion) IMixinTileEntityBeacon(org.spongepowered.common.interfaces.IMixinTileEntityBeacon)

Aggregations

Optional (java.util.Optional)1 Potion (net.minecraft.potion.Potion)1 IMixinTileEntityBeacon (org.spongepowered.common.interfaces.IMixinTileEntityBeacon)1