当前位置: 首页>>代码示例>>Java>>正文


Java AttachCapabilitiesEvent.addCapability方法代码示例

本文整理汇总了Java中net.minecraftforge.event.AttachCapabilitiesEvent.addCapability方法的典型用法代码示例。如果您正苦于以下问题:Java AttachCapabilitiesEvent.addCapability方法的具体用法?Java AttachCapabilitiesEvent.addCapability怎么用?Java AttachCapabilitiesEvent.addCapability使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在net.minecraftforge.event.AttachCapabilitiesEvent的用法示例。


在下文中一共展示了AttachCapabilitiesEvent.addCapability方法的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);
    }
}
 
开发者ID:ichttt,项目名称:FirstAid,代码行数:20,代码来源:EventHandler.java

示例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());
}
 
开发者ID:InfinityStudio,项目名称:InspiringWorld,代码行数:18,代码来源:CapabilityInterfaceInject.java

示例3: 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();
            }
        }
    }
}
 
开发者ID:MineMaarten,项目名称:Signals,代码行数:20,代码来源:RailManager.java

示例4: 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());

        }
    }
}
 
开发者ID:Hoijima,项目名称:Fallout_Equestria,代码行数:18,代码来源:EventHandlerPre.java

示例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());
        }
    }
}
 
开发者ID:alxnns1,项目名称:MobHunter,代码行数:17,代码来源:CapabilityHandler.java

示例6: 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());
        }
    }
}
 
开发者ID:Lumaceon,项目名称:ClockworkPhase2,代码行数:24,代码来源:CapabilityAttachHandler.java

示例7: 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));
	}
}
 
开发者ID:TheXFactor117,项目名称:Loot-Slash-Conquer,代码行数:10,代码来源:CapabilityEnemyLevel.java

示例8: onCapabilitiesWorld

import net.minecraftforge.event.AttachCapabilitiesEvent; //导入方法依赖的package包/类
@SubscribeEvent
public void onCapabilitiesWorld(AttachCapabilitiesEvent<World> evt)
{
	if (!(evt.getObject().getWorldType() instanceof WorldTypeExP))
	{
		ExPMisc.modLogger.log(LogLevel.Debug, "The world initialized without ExPetrum world type! Have you forgot to set it in advanced world settings?");
	}
	
	handleWorldSettings(evt.getObject());
	evt.addCapability(ExPWorldCapability.KEY, this.createCapabilityProviderOfIExPWorld(evt.getObject()));
}
 
开发者ID:V0idWa1k3r,项目名称:ExPetrum,代码行数:12,代码来源:ExPHandlerServer.java

示例9: 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));
	}
}
 
开发者ID:TheXFactor117,项目名称:Loot-Slash-Conquer,代码行数:11,代码来源:CapabilityPlayerInformation.java

示例10: attachCapabilityEnt

import net.minecraftforge.event.AttachCapabilitiesEvent; //导入方法依赖的package包/类
@SubscribeEvent
public void attachCapabilityEnt(AttachCapabilitiesEvent<Entity> event) {
	if (event.getObject() instanceof EntityPlayer || event.getObject() instanceof EntityTF2Character) {
		event.addCapability(new ResourceLocation(TF2weapons.MOD_ID, "weaponcapability"), new WeaponsCapability((EntityLivingBase) event.getObject()));
	}
	if (event.getObject() instanceof EntityPlayer) {
		event.addCapability(new ResourceLocation(TF2weapons.MOD_ID, "playercapability"), new TF2PlayerCapability((EntityPlayer) event.getObject()));
	}
	if (event.getObject() instanceof EntityPlayer && !event.getObject().hasCapability(TF2weapons.INVENTORY_CAP, null)) {
		final InventoryWearables inv=new InventoryWearables((EntityPlayer) event.getObject());
		
		event.addCapability(new ResourceLocation(TF2weapons.MOD_ID, "wearablescapability"), inv);
		
	}
}
 
开发者ID:rafradek,项目名称:Mods,代码行数:16,代码来源:TF2EventsCommon.java

示例11: 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());
	}
}
 
开发者ID:raphydaphy,项目名称:ArcaneMagic,代码行数:9,代码来源:ModEvents.java

示例12: onEntityCaps

import net.minecraftforge.event.AttachCapabilitiesEvent; //导入方法依赖的package包/类
@SubscribeEvent
public static void onEntityCaps(AttachCapabilitiesEvent<Entity> e)
{
    if (e.getObject() instanceof EntityPlayer)
    {
        e.addCapability(CapabilityRegistry.ENTRY_STORE_NAME, new IfEntryStoreProvider());
        e.addCapability(CapabilityRegistry.AURA_CONTAINER_NAME, new AuraContainerProvider());
    }
}
 
开发者ID:PearXTeam,项目名称:PurificatiMagicae,代码行数:10,代码来源:CapabilityEvents.java

示例13: attachCapabilities

import net.minecraftforge.event.AttachCapabilitiesEvent; //导入方法依赖的package包/类
@SubscribeEvent
public static void attachCapabilities(final AttachCapabilitiesEvent<Entity> event) {
	if (event.getObject() instanceof EntityMob) {
		final Stats stats = new Stats((EntityMob) event.getObject());
		event.addCapability(HEALTH_ID, createProvider((IHealth) stats));
		event.addCapability(ATTACK_ID, createProvider((IAttack) stats));
		event.addCapability(FOLLOW_ID, createProvider((IFollow) stats));
	}
}
 
开发者ID:bookerthegeek,项目名称:Mob-Option-Redux,代码行数:10,代码来源:CapabilityStats.java

示例14: attachCapabilities

import net.minecraftforge.event.AttachCapabilitiesEvent; //导入方法依赖的package包/类
/**
 * Attach the {@link ITurn} capability to all living entities.
 *
 * @param event The event
 */
@SubscribeEvent
public void attachCapabilities(AttachCapabilitiesEvent<Entity> e) {
	if (e.getObject() instanceof EntityPlayer) {
		final PlayerTurn playerTurn = new PlayerTurn((EntityPlayer) e.getObject());
		e.addCapability(ID, createProvider(playerTurn));
	}
}
 
开发者ID:stuebz88,项目名称:modName,代码行数:13,代码来源:CapPlayerTurn.java

示例15: attachCapabiltiesEvent

import net.minecraftforge.event.AttachCapabilitiesEvent; //导入方法依赖的package包/类
@SubscribeEvent
public void attachCapabiltiesEvent(AttachCapabilitiesEvent<Entity> event)
{
	if (event.getObject() instanceof EntityPlayer)
	{
		event.addCapability(ExPPlayerCapability.KEY, createCapabilityProviderOfIExPPlayer((EntityPlayer) event.getObject()));
	}
}
 
开发者ID:V0idWa1k3r,项目名称:ExPetrum,代码行数:9,代码来源:ExPHandlerServer.java


注:本文中的net.minecraftforge.event.AttachCapabilitiesEvent.addCapability方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。