本文整理匯總了Java中net.minecraftforge.event.AttachCapabilitiesEvent類的典型用法代碼示例。如果您正苦於以下問題:Java AttachCapabilitiesEvent類的具體用法?Java AttachCapabilitiesEvent怎麽用?Java AttachCapabilitiesEvent使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。
AttachCapabilitiesEvent類屬於net.minecraftforge.event包,在下文中一共展示了AttachCapabilitiesEvent類的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。
示例1: registerCapability
import net.minecraftforge.event.AttachCapabilitiesEvent; //導入依賴的package包/類
@SubscribeEvent
public static void registerCapability(AttachCapabilitiesEvent<Entity> event) {
Entity obj = event.getObject();
if (obj instanceof EntityPlayer && !(obj instanceof FakePlayer)) {
EntityPlayer player = (EntityPlayer) obj;
AbstractPlayerDamageModel damageModel;
if (player.world.isRemote)
damageModel = FirstAid.activeDamageConfig == null ? PlayerDamageModel.createTemp() : PlayerDamageModel.create();
else {
FirstAid.activeDamageConfig = FirstAidConfig.damageSystem;
FirstAid.activeHealingConfig = FirstAidConfig.externalHealing;
FirstAid.scaleMaxHealth = FirstAidConfig.scaleMaxHealth;
damageModel = PlayerDamageModel.create();
}
event.addCapability(CapProvider.IDENTIFIER, new CapProvider(player, damageModel));
//replace the data manager with our wrapper to grab absorption
player.dataManager = new DataManagerWrapper(player, player.dataManager);
}
}
示例2: onAttach
import net.minecraftforge.event.AttachCapabilitiesEvent; //導入依賴的package包/類
@SubscribeEvent
public void onAttach(AttachCapabilitiesEvent event)
{
Map<ResourceLocation, ICapabilityProvider> map = Maps.newHashMap();
if (event instanceof AttachCapabilitiesEvent.Item)
handle(map, event.getObject(), ((AttachCapabilitiesEvent.Item) event).getItemStack());
else if (event instanceof AttachCapabilitiesEvent.Entity)
handle(map, event.getObject(), ((AttachCapabilitiesEvent.Entity) event).getEntity());
else if (event instanceof AttachCapabilitiesEvent.TileEntity)
handle(map, event.getObject(), ((AttachCapabilitiesEvent.TileEntity) event).getTileEntity());
else
handle(map, event.getObject(), event.getObject());
for (ICapabilityProvider iCapabilityProvider : event.getCapabilities().values())
handle(map, iCapabilityProvider, event.getObject());
for (Map.Entry<ResourceLocation, ICapabilityProvider> entry : map.entrySet())
event.addCapability(entry.getKey(), entry.getValue());
}
示例3: onTELoad
import net.minecraftforge.event.AttachCapabilitiesEvent; //導入依賴的package包/類
@SubscribeEvent
public void onTELoad(AttachCapabilitiesEvent.TileEntity event) {
TileEntity tile = event.getTileEntity();
if (tile instanceof IEnergyReceiver || tile instanceof IEnergyProvider || tile instanceof IEnergyHandler) {
//This is where we need EnumFacing.UNKNOWN
try{
if(tile.hasCapability(CapabilityEnergy.ENERGY, EnumFacing.NORTH)){
return;
}
}catch (Exception e){
return;
}
event.addCapability(new ResourceLocation("rfbridge:forgeEnergy"), new FECapabilityProvider(tile));
}
}
示例4: playerCapabilities
import net.minecraftforge.event.AttachCapabilitiesEvent; //導入依賴的package包/類
/** Attaches ICapPlayer to the Player. */
@SubscribeEvent
public void playerCapabilities(AttachCapabilitiesEvent<Entity> event) {
if (!(event.getObject() instanceof EntityPlayer)) {
return;
}
EntityPlayer player = (EntityPlayer) event.getObject();
if (!(player.hasCapability(GeoCaps.CAP_PLAYER, null))) {
event.addCapability(GeoCaps.CAP_PLAYER_ID,
new ProviderCapPlayer(new DefaultCapPlayer(player)));
}
}
示例5: attachCapability
import net.minecraftforge.event.AttachCapabilitiesEvent; //導入依賴的package包/類
@SubscribeEvent
public static void attachCapability(AttachCapabilitiesEvent<Entity> event)
{
//Attach our capabilities to all players
Entity entity = event.getObject();
if(entity instanceof EntityPlayer)
{
for(Capability cap : MHCapabilities.getCapabilities())
{
ICapability icap = getDefaultICapability(cap);
if(icap == null) continue;
if(!entity.hasCapability(cap, null))
event.addCapability(icap.getKey(), icap.getProvider());
}
}
}
示例6: onAddCapabilitiesEntity
import net.minecraftforge.event.AttachCapabilitiesEvent; //導入依賴的package包/類
@SubscribeEvent
public void onAddCapabilitiesEntity(AttachCapabilitiesEvent<Entity> event) {
if (canHaveAttributes(event.getObject())) {
EntityLivingBase ent = (EntityLivingBase) event.getObject();
if (ent instanceof EntityPlayer) {
event.addCapability(new ResourceLocation(main.MODID + ":radiation_capability"), new RadsFactoryProvider());
event.addCapability(new ResourceLocation(main.MODID + ":water_capability"), new WaterFactoryProvider());
event.addCapability(new ResourceLocation(main.MODID + ":spechial_capability"), new SpechialFactoryProvider());
event.addCapability(new ResourceLocation(main.MODID + ":skills_capability"), new SkillsFactoryProvider());
event.addCapability(new ResourceLocation(main.MODID + ":level_capability"), new LevelFactoryProvider());
event.addCapability(new ResourceLocation(main.MODID + ":ftj_capability"), new FTJFactoryProvider());
event.addCapability(new ResourceLocation(main.MODID + ":adv_inv_capability"), new IAdvProvider());
event.addCapability(new ResourceLocation(main.MODID + ":trigger_cap"), new ITrigger_item_Provider());
}
}
}
示例7: onTileEntityCapabilityAttachEvent
import net.minecraftforge.event.AttachCapabilitiesEvent; //導入依賴的package包/類
public void onTileEntityCapabilityAttachEvent(AttachCapabilitiesEvent<TileEntity> event){
ICapabilityProvider provider = new CapabilityDestinationProvider.Provider();
boolean requiresCap = false;
CapabilityDestinationProvider cap = provider.getCapability(CapabilityDestinationProvider.INSTANCE, null);
for(IDestinationProvider destinationProvider : destinationProviders) {
if(destinationProvider.isTileEntityApplicable(event.getObject())) {
try {
cap.addDestinationProvider(destinationProvider.getClass().newInstance());
if(!requiresCap) {
requiresCap = true;
event.addCapability(new ResourceLocation(Constants.MOD_ID, "destinationProviderCapability"), provider);
}
} catch(Exception e) {
e.printStackTrace();
}
}
}
}
示例8: onEntityCapabilityAttach
import net.minecraftforge.event.AttachCapabilitiesEvent; //導入依賴的package包/類
@SubscribeEvent
public void onEntityCapabilityAttach(AttachCapabilitiesEvent<Entity> event)
{
Entity entity = event.getObject();
if(entity instanceof EntityPlayer)
{
if(!entity.hasCapability(TEMPORAL_TOOLBELT, EnumFacing.DOWN))
{
event.addCapability(new ResourceLocation(Reference.MOD_ID + ":temporal_toolbelt"), new CapabilityTemporalToolbelt.TemporalToolbeltGenericProvider());
}
else if(!entity.hasCapability(STASIS_CAPABILITY, EnumFacing.DOWN))
{
event.addCapability(new ResourceLocation(Reference.MOD_ID + ":stasis"), new CapabilityStasis.StasisGenericProvider());
}
}
else if(entity instanceof EntityLiving)
{
if(!entity.hasCapability(CUSTOM_BEHAVIOR, EnumFacing.DOWN))
{
event.addCapability(new ResourceLocation(Reference.MOD_ID + ":customBehavior"), new CapabilityStasis.StasisGenericProvider());
}
}
}
示例9: attachCapabilities
import net.minecraftforge.event.AttachCapabilitiesEvent; //導入依賴的package包/類
@SubscribeEvent
public void attachCapabilities(AttachCapabilitiesEvent<Entity> event)
{
if (event.getObject() instanceof EntityMob)
{
final EnemyLevel enemyLevel = new EnemyLevel((EntityMob) event.getObject());
event.addCapability(ID, createProvider(enemyLevel));
}
}
示例10: attachCapabilities
import net.minecraftforge.event.AttachCapabilitiesEvent; //導入依賴的package包/類
@SubscribeEvent
public void attachCapabilities(AttachCapabilitiesEvent<Entity> event)
{
if (event.getObject() instanceof EntityPlayer)
{
final Stats stats = new Stats((EntityPlayer) event.getObject());
event.addCapability(ID, createProvider(stats));
}
}
示例11: attachCapabilities
import net.minecraftforge.event.AttachCapabilitiesEvent; //導入依賴的package包/類
@SubscribeEvent
public void attachCapabilities(AttachCapabilitiesEvent<Entity> event)
{
if (event.getObject() instanceof EntityPlayer)
{
final PlayerInformation playerInfo = new PlayerInformation((EntityPlayer) event.getObject());
event.addCapability(ID, createProvider(playerInfo));
}
}
示例12: attachCapabilities
import net.minecraftforge.event.AttachCapabilitiesEvent; //導入依賴的package包/類
@SubscribeEvent
public void attachCapabilities(AttachCapabilitiesEvent<Entity> event)
{
if (event.getObject() instanceof EntityPlayer)
{
final CurrentAbilities currentAbilities = new CurrentAbilities((EntityPlayer) event.getObject());
event.addCapability(ID, createProvider(currentAbilities));
}
}
示例13: onAttachCapability
import net.minecraftforge.event.AttachCapabilitiesEvent; //導入依賴的package包/類
@SubscribeEvent
public void onAttachCapability(AttachCapabilitiesEvent<TileEntity> e) {
if (!enabled) return;
TileEntity tile = e.getObject();
if (tile instanceof IMultipartTE) {
register(e, ((IMultipartTE) tile).getMultipartId());
}
}
示例14: attachCapability
import net.minecraftforge.event.AttachCapabilitiesEvent; //導入依賴的package包/類
@SubscribeEvent
public void attachCapability(AttachCapabilitiesEvent.Entity e) {
if (e.getEntity() instanceof EntityPlayer
&& !e.getEntity().hasCapability(XP_CAPABILITY, null))
e.addCapability(new ResourceLocation(MODID, "xpCapability"),
new XPCapability.Provider());
}
示例15: onAttachCapability
import net.minecraftforge.event.AttachCapabilitiesEvent; //導入依賴的package包/類
@SubscribeEvent
public static void onAttachCapability(AttachCapabilitiesEvent<Entity> ev)
{
if (ev.getObject() instanceof EntityPlayer)
{
ev.addCapability(new ResourceLocation(ArcaneMagic.MODID, "notebook_storage"), new NotebookInfo());
}
}