public override void Start(ICoreAPI api)
        {
            base.Start(api);

            //Block Behavior
            api.RegisterBlockBehaviorClass("BlockCreateBehavior", typeof(BlockCreateBehavior));
            api.RegisterBlockBehaviorClass("BlockSwapBehavior", typeof(BlockSwapBehavior));
            api.RegisterBlockBehaviorClass("LampConnectorBehavior", typeof(LampConnectorBehavior));
            api.RegisterBlockBehaviorClass("LampPostBehavior", typeof(LampPostBehavior));
            api.RegisterBlockBehaviorClass("RotateNinety", typeof(RotateNinety));
            api.RegisterBlockBehaviorClass("ChimneyBehavior", typeof(ChimneyBehavior));
            api.RegisterBlockBehaviorClass("CostTest", typeof(CostTest));

            //Block
            api.RegisterBlockClass("BlockPlaceOnDrop", typeof(BlockPlaceOnDrop));
            api.RegisterBlockClass("BlockGiantReeds", typeof(BlockGiantReeds));
            api.RegisterBlockClass("BlockMortarAndPestle", typeof(BlockMortarAndPestle));
            //api.RegisterBlockClass("BlockPlant", typeof(BlockPlant));
            //api.RegisterBlockClass("FixedBlockCrop", typeof(FixedBlockCrop));

            //Item
            api.RegisterItemClass("ItemSickle", typeof(ItemSickle));
            api.RegisterItemClass("ItemShears", typeof(ItemShears));
            api.RegisterItemClass("ItemGiantReedsRoot", typeof(ItemGiantReedsRoot));
            api.RegisterItemClass("ItemAdze", typeof(ItemAdze));
            api.RegisterItemClass("ItemSwapBlocks", typeof(ItemSwapBlocks));
            //Block Entity
            api.RegisterBlockEntityClass("GenericPOI", typeof(POIEntity));
            api.RegisterBlockEntityClass("NeolithicTransient", typeof(NeolithicTransient));
            api.RegisterBlockEntityClass("BEScary", typeof(BEScary));
            api.RegisterBlockEntityClass("FixedBESapling", typeof(FixedBESapling));
            api.RegisterBlockEntityClass("BEMortarAndPestle", typeof(BEMortarAndPestle));
            api.RegisterBlockEntityClass("BlockEntityChimney", typeof(BlockEntityChimney));
        }
示例#2
0
        public override void Start(ICoreAPI api)
        {
            base.Start(api);

            api.RegisterBlockEntityClass("BEEWire", typeof(BEEWire));
            api.RegisterBlockEntityClass("BEEAssembler", typeof(BEEAssembler));
            api.RegisterBlockEntityClass("BEEGenerator", typeof(BEEGenerator));
            api.RegisterBlockClass("ElectricalBlock", typeof(ElectricalBlock));
            api.RegisterBlockClass("BlockWire", typeof(BlockWire));
            api.RegisterBlockClass("BlockCannedMeal", typeof(BlockCannedMeal));
            api.RegisterItemClass("ItemQuarryTool", typeof(ItemQuarryTool));
            api.RegisterItemClass("ItemJetPack", typeof(ItemJetPack));
            api.RegisterBlockEntityClass("BEEForge", typeof(BEEForge));
            api.RegisterBlockClass("BlockEForge", typeof(BlockEForge));
            api.RegisterBlockEntityClass("BEPowerFlag", typeof(BEPowerFlag));
            api.RegisterBlockClass("BlockClayformer", typeof(BlockClayformer));
            api.RegisterBlockClass("BlockMetalPress", typeof(BlockMetalPress));
            api.RegisterBlockClass("BlockTemporalPocket", typeof(BlockTemporalPocket));
            api.RegisterBlockEntityClass("BETemporalPocket", typeof(BETemporalPocket));
            api.RegisterBlockEntityClass("BEEMacerator", typeof(BEEMacerator));
            api.RegisterBlockEntityClass("BEEBlastFurnace", typeof(BEEBlastFurnace));
            //api.RegisterBlockEntityBehaviorClass("BEBMPMotor", typeof(BEBMPMotor));
            //api.RegisterBlockClass("BlockPoweredRotor", typeof(BlockPoweredRotor));
            //api.RegisterBlockClass("BlockElectricMotor", typeof(BlockElectricMotor));
            //api.RegisterBlockEntityClass("BEEMotor", typeof(BEEMotor));
        }
示例#3
0
 public override void Start(ICoreAPI api)
 {
     //api.RegisterBlockBehaviorClass(InstaTNTBehavior.NAME, typeof(InstaTNTBehavior));
     api.RegisterItemClass("ItemRangedWeapon", typeof(ItemRangedWeapon));
     api.RegisterItemClass("ItemPoisonArrow", typeof(ItemPoisonArrow));
     api.RegisterEntity("EntityPoisonProjectile", typeof(EntityPoisonProjectile));
     api.RegisterEntityBehaviorClass("poisonable", typeof(Poisonable));
 }
示例#4
0
        public override void Start(ICoreAPI api)
        {
            base.Start(api);
            // api.RegisterBlockBehaviorClass(TestBehavior.NAME, typeof(TestBehavior));
            // api.RegisterBlockEntityClass("FancyMold", typeof(BlockEntityFancyMold));

            api.RegisterItemClass(SeedBagItem.NAME, typeof(SeedBagItem));
            api.RegisterItemClass(SpadeItem.NAME, typeof(SpadeItem));
        }
        public override void Start(ICoreAPI api)
        {
            base.Start(api);

            api.RegisterItemClass("ItemPostParchmentUnwritten", typeof(ItemPostParchmentUnwritten));
            api.RegisterItemClass("ItemPostParchmentWritten", typeof(ItemPostParchmentWritten));

            api.RegisterBlockClass("BlockTradingPost", typeof(BlockTradingPost));
            api.RegisterBlockEntityClass("BlockEntityTradingPost", typeof(BlockEntityTradingPost));
        }
        public override void Start(ICoreAPI api)
        {
            base.Start(api);

            api.RegisterItemClass("ProgCard", typeof(ItemProgCard));
            api.RegisterItemClass("ItemDeployBot", typeof(ItemDeployBot));

            api.RegisterEntityBehaviorClass("program", typeof(EntityBehaviorProgram));

            api.RegisterEntity("EntityReprogLocust", typeof(EntityReprogLocust));

            AiTaskRegistry.Register <AiTaskHarvest>("harvest");
            AiTaskRegistry.Register <AiTaskSeekItem>("seekitem");
            AiTaskRegistry.Register <AiTaskToChest>("tochest");
            AiTaskRegistry.Register <AiTaskFromChest>("fromchest");
            AiTaskRegistry.Register <AiTaskPlant>("plant");
            AiTaskRegistry.Register <AiTaskSqueezeHoney>("squeezehoney");
            AiTaskRegistry.Register <AiTaskMilk>("milk");
            AiTaskRegistry.Register <AiTaskToBarrel>("tobarrel");
            AiTaskRegistry.Register <AiTaskGetSeed>("getseed");
            AiTaskRegistry.Register <AiTaskSeekItemAny>("seekanyitem");
            AiTaskRegistry.Register <AiTaskGetFuel>("getfuel");
            AiTaskRegistry.Register <AiTaskRefuel>("refuel");
            AiTaskRegistry.Register <AiTaskRepair>("repair");
            AiTaskRegistry.Register <AiTaskProgSeekEntity>("progseekentity");
            AiTaskRegistry.Register <AiTaskProgMeleeAttack>("progmeleeattack");
            AiTaskRegistry.Register <AiTaskQuarry>("quarry");
            AiTaskRegistry.Register <AiTaskStayCloseToOwner>("stayclosetoowner");
            AiTaskRegistry.Register <AiTaskPathBuilder>("pathbuilder");
            AiTaskRegistry.Register <AiTaskToAltChest>("toaltchest");
            AiTaskRegistry.Register <AiTaskProgRangedAttack>("prograngedattack");
            AiTaskRegistry.Register <AiTaskForm>("form");
            AiTaskRegistry.Register <AiTaskToPoint>("topoint");
            AiTaskRegistry.Register <AiTaskGetItem>("getitem");
            AiTaskRegistry.Register <AiTaskAnyFromChest>("anyfromchest");
            AiTaskRegistry.Register <AiTaskGetTool>("gettool");

            try
            {
                TemporalHackerConfig FromDisk;
                if ((FromDisk = api.LoadModConfig <TemporalHackerConfig>("TemporalHackerConfig.json")) == null)
                {
                    api.StoreModConfig <TemporalHackerConfig>(TemporalHackerConfig.Loaded, "TemporalHackerConfig.json");
                }
                else
                {
                    TemporalHackerConfig.Loaded = FromDisk;
                }
            }
            catch
            {
                api.StoreModConfig <TemporalHackerConfig>(TemporalHackerConfig.Loaded, "TemporalHackerConfig.json");
            }
        }
示例#7
0
        public override void Start(ICoreAPI api)
        {
            api.Logger.Debug("[Compass] Start");
            base.Start(api);

            config = ModConfig.Load(api);

            api.RegisterItemClass("ItemMagneticCompass", typeof(ItemMagneticCompass));
            api.RegisterItemClass("ItemRelativeCompass", typeof(ItemRelativeCompass));
            api.RegisterItemClass("ItemOriginCompass", typeof(ItemOriginCompass));

            api.RegisterBlockClass("BlockMagneticCompass", typeof(BlockMagneticCompass));
            api.RegisterBlockClass("BlockRelativeCompass", typeof(BlockRelativeCompass));
            api.RegisterBlockClass("BlockOriginCompass", typeof(BlockOriginCompass));

            api.RegisterBlockEntityClass("BlockEntityCompass", typeof(BlockEntityCompass));

            if (api.Side == EnumAppSide.Server)
            {
                var sapi = (ICoreServerAPI)api;
                sapi.Event.ServerRunPhase(EnumServerRunPhase.GameReady, () => {
                    var compassModGridRecipes = sapi.World.GridRecipes.FindAll(gr => gr.Name.Domain == "compass");
                    var scrap    = compassModGridRecipes.Find(gr => gr.Name.Path == scrapRecipeAssetLoc.Path);
                    var origin   = compassModGridRecipes.Find(gr => gr.Name.Path == originRecipeAssetLoc.Path);
                    var relative = compassModGridRecipes.Find(gr => gr.Name.Path == relativeRecipeAssetLoc.Path);

                    if (!config.EnableScrapRecipe)
                    {
                        sapi.World.GridRecipes.Remove(scrap);
                    }

                    if (!config.EnableOriginRecipe)
                    {
                        sapi.World.GridRecipes.Remove(origin);
                    }
                    else
                    {
                        origin.IngredientPattern = "C".PadRight(GameMath.Clamp(config.OriginCompassGears, 1, 8) + 1, 'G').PadRight(9, '_');
                        origin.ResolveIngredients(sapi.World);
                    }

                    if (!config.EnableRelativeRecipe)
                    {
                        sapi.World.GridRecipes.Remove(relative);
                    }
                    else
                    {
                        relative.IngredientPattern = "C".PadRight(GameMath.Clamp(config.RelativeCompassGears, 1, 8) + 1, 'G').PadRight(9, '_');
                        relative.ResolveIngredients(sapi.World);
                    }
                });
            }
        }
示例#8
0
 public override void Start(ICoreAPI api)
 {
     base.Start(api);
     api.RegisterItemClass("ItemSnowball", Type.GetType(MOD_SPACE + ".ItemSnowball"));
     api.RegisterEntity("EntityThrownSnowball", Type.GetType(MOD_SPACE + ".EntityThrownSnowball"));
     api.RegisterBlockBehaviorClass("CollectSnowball", Type.GetType(MOD_SPACE + ".BlockBehaviorCollectSnowball"));
 }
        public override void Start(ICoreAPI api)
        {
            this.api = api;

            api.RegisterItemClass("ItemPlumbAndSquare", typeof(ItemPlumbAndSquare));
            api.RegisterBlockBehaviorClass("Reinforcable", typeof(BlockBehaviorReinforcable));
        }
示例#10
0
 public override void Start(ICoreAPI api)
 {
     api.RegisterBlockClass("BlockCake", typeof(BlockCake));
     api.RegisterBlockClass("BlockFruit", typeof(BlockFruit));
     api.RegisterBlockClass("BlockCropHC", typeof(BlockCropHC));
     api.RegisterBlockEntityClass("Cake", typeof(BlockEntityCake));
     api.RegisterItemClass("ItemPlantableSeedHC", typeof(ItemPlantableSeedHC));
 }
示例#11
0
        public override void Start(ICoreAPI api)
        {
            base.Start(api);
            api.RegisterItemClass("wildseed", typeof(WildSeed));
            api.RegisterItemClass("ItemMushroomSpawn", typeof(ItemMushroomSpawn));

            api.RegisterBlockClass("BlockEnhancedVines", typeof(BlockEnhancedVines));

            api.RegisterBlockEntityClass("WildPlant", typeof(WildPlantBlockEntity));
            api.RegisterBlockEntityClass("BEVines", typeof(BEVines));
            api.RegisterBlockEntityClass("BESeaweed", typeof(BESeaweed));

            api.RegisterBlockBehaviorClass("Score", typeof(BlockBehaviorScore));

            harmony = new Harmony("com.jakecool19.wildfarming.lootvessel");
            harmony.PatchAll(Assembly.GetExecutingAssembly());
        }
示例#12
0
        public override void Start(ICoreAPI api)
        {
            Config.Current = api.LoadOrCreateConfig <Config>(Mod.Info.ModID + ".json");

            api.World.Config.SetBool(Mod.Info.ModID + ":CorpseCompassEnabled", Config.Current.CorpseCompassEnabled.Value);

            api.RegisterEntityBehaviorClass("playercorpseondeath", typeof(EntityBehaviorPlayerCorpseOnDeath));
            api.RegisterEntity("EntityPlayerCorpse", typeof(EntityPlayerCorpse));
            api.RegisterItemClass("ItemCorpseCompass", typeof(ItemCorpseCompass));
        }
示例#13
0
        public override void Start(ICoreAPI api)
        {
            base.Start(api);

            api.RegisterItemClass("ItemMagicWand", typeof(ItemMagicWand));

            api.RegisterBlockClass("BlockCommand", typeof(BlockCommand));

            api.RegisterBlockEntityClass("BECommand", typeof(BlockEntityCommand));
        }
示例#14
0
        public override void Start(ICoreAPI api)
        {
            base.Start(api);

            api.RegisterItemClass("chunk", typeof(ChunksItem));
            api.RegisterItemClass("slabsetter", typeof(BlockStackSetterItem));


            api.RegisterBlockClass("RubbleStorage", typeof(RubbleStorageBlock));
            api.RegisterBlockEntityClass("RubbleStorageBE", typeof(RubbleStorageBE));

            api.RegisterBlockClass("RoughStoneStorage", typeof(RoughCutStorageBlock));
            api.RegisterBlockEntityClass("StoneStorageCoreBE", typeof(RoughCutStorageBE));
            api.RegisterBlockEntityClass("StoneStorageCapBE", typeof(GenericStorageCapBE));


            api.RegisterBlockClass("PlugFeatherBlock", typeof(PlugnFeatherBlock));
            api.RegisterBlockEntityClass("PlugFeatherBE", typeof(PlugnFeatherBE));
        }
示例#15
0
        public override void Start(ICoreAPI api)
        {
            api.Logger.Debug("[Compass] Start");
            base.Start(api);

            config = ModConfig.Load(api);

            api.RegisterItemClass("ItemMagneticCompass", typeof(ItemMagneticCompass));
            api.RegisterItemClass("ItemRelativeCompass", typeof(ItemRelativeCompass));
            api.RegisterItemClass("ItemOriginCompass", typeof(ItemOriginCompass));

            api.RegisterBlockClass("BlockMagneticCompass", typeof(BlockMagneticCompass));
            api.RegisterBlockClass("BlockRelativeCompass", typeof(BlockRelativeCompass));
            api.RegisterBlockClass("BlockOriginCompass", typeof(BlockOriginCompass));

            api.RegisterBlockEntityClass("BlockEntityCompass", typeof(BlockEntityCompass));

            ModConfig.ApplyConfigs(api, config);
        }
示例#16
0
        public override void Start(ICoreAPI api)
        {
            GameVersion.EnsureEqualVersionOrKillExecutable(api, System.Diagnostics.FileVersionInfo.GetVersionInfo(Assembly.GetExecutingAssembly().Location).FileVersion, GameVersion.OverallVersion, "VSCreativeMod");

            base.Start(api);

            api.RegisterItemClass("ItemMagicWand", typeof(ItemMagicWand));

            api.RegisterBlockClass("BlockCommand", typeof(BlockCommand));

            api.RegisterBlockEntityClass("BECommand", typeof(BlockEntityCommand));
        }
示例#17
0
        public override void Start(ICoreAPI api)
        {
            base.Start(api);

            api.RegisterBlockClass("BlockReedPresser", typeof(BlockReedPresser));
            api.RegisterBlockClass("BlockPaperStack", typeof(BlockPaperStack));
            api.RegisterBlockClass("BlockBookStack", typeof(BlockBookStack));
            api.RegisterBlockClass("BlockQuill", typeof(BlockQuill));
            api.RegisterBlockClass("BlockInkwell", typeof(BlockInkwell));

            api.RegisterBlockBehaviorClass("Inscribe", typeof(InscribeBehavior));
            api.RegisterBlockBehaviorClass("CreateReedPresser", typeof(CreateReedPresser));

            api.RegisterBlockEntityClass("BEReedPresser", typeof(BEReedPresser));
            api.RegisterBlockEntityClass("BEBookStack", typeof(BEBookStack));
            api.RegisterBlockEntityClass("BEPaperStack", typeof(BEPaperStack));

            api.RegisterItemClass("ItemPaper", typeof(ItemPaper));
            api.RegisterItemClass("ItemBook", typeof(ItemBook));
            api.RegisterItemClass("ItemBookBinding", typeof(ItemBookBinding));
        }
示例#18
0
        public override void Start(ICoreAPI api)
        {
            base.Start(api);

            // Blocks Class
            api.RegisterBlockClass("BlockSingleSink", typeof(BlockSingleSink));
            api.RegisterBlockClass("BlockIceBox", typeof(BlockIceBox));
            api.RegisterBlockClass("ModdedBlockLiquidContainerBase", typeof(ModdedBlockLiquidContainerBase));
            api.RegisterBlockClass("BlockCampFire", typeof(BlockCampFire));
            api.RegisterBlockClass("BlockKiln", typeof(BlockKiln));
            api.RegisterBlockClass("BlockPlantLongContainer", typeof(BlockPlantLongContainer));

            // Item Class
            api.RegisterItemClass("ItemCampFire", typeof(ItemCampFire));
            api.RegisterItemClass("ItemKiln", typeof(ItemKiln));
            // Block Entity Class
            api.RegisterBlockEntityClass("SingleSink", typeof(BlockEntitySingleSink));
            api.RegisterBlockEntityClass("BlockEntityIceBox", typeof(BlockEntityIceBox));
            api.RegisterBlockEntityClass("CampFire", typeof(BlockEntityCampFire));
            api.RegisterBlockEntityClass("Kiln", typeof(BlockEntityKiln));
            api.RegisterBlockEntityClass("LongPlantContainer", typeof(BlockEntityLongPlantContainer));
        }
示例#19
0
        public override void Start(ICoreAPI api)
        {
            base.Start(api);

            api.RegisterBlockClass("BlockTFRotaryGenerator", typeof(BlockTFRotaryGenerator));
            api.RegisterBlockClass("BlockWaterwheelRotor", typeof(BlockWaterwheelRotor));
            api.RegisterBlockClass("BlockEnergyDuct", typeof(BlockEnergyDuct));
            api.RegisterBlockClass("BlockFurnace", typeof(BlockFurnace));
            api.RegisterBlockClass("BlockMPMultiblockBase", typeof(BlockMPMultiblockBase));
            api.RegisterBlockClass("BlockSideconfigInteractions", typeof(BlockSideconfigInteractions));
            api.RegisterBlockClass("BlockTFRelay", typeof(BlockTFRelay));
            api.RegisterBlockClass("BlockTFEngine", typeof(BlockTFEngine));
            api.RegisterBlockClass("BlockTFForge", typeof(BlockTFForge));
            api.RegisterBlockClass("BlockCharger", typeof(BlockTFCharger));
            api.RegisterBlockClass("BlockConnector", typeof(BlockConnector));
            api.RegisterBlockClass("BlockTFCapacitor", typeof(BlockTFCapacitor));

            api.RegisterBlockEntityClass("TFCapacitor", typeof(TFCapacitor));
            api.RegisterBlockEntityClass("TFRotaryGenerator", typeof(TFRotaryGenerator));
            api.RegisterBlockEntityClass("BlockEntityEnergyDuct", typeof(BlockEntityEnergyDuct));
            api.RegisterBlockEntityClass("BlockEntityFurnace", typeof(BlockEntityFurnace));
            api.RegisterBlockEntityClass("BEMPMultiblockBase", typeof(BEMPMultiblockBase));
            api.RegisterBlockEntityClass("BETFRelay", typeof(BETFRelay));
            api.RegisterBlockEntityClass("BlockEntityTFEngine", typeof(BlockEntityTFEngine));
            api.RegisterBlockEntityClass("BlockEntityTFForge", typeof(BlockEntityTFForge));
            api.RegisterBlockEntityClass("BlockEntityCharger", typeof(BlockEntityTFCharger));
            api.RegisterBlockEntityClass("BlockEntityConnector", typeof(BlockEntityConnector));

            api.RegisterBlockEntityBehaviorClass("BEBehaviorTFRotaryGenerator", typeof(BEBehaviorTFRotaryGenerator));
            api.RegisterBlockEntityBehaviorClass("BEBehaviorWaterwheelRotor", typeof(BEBehaviorWaterwheelRotor));
            api.RegisterBlockEntityBehaviorClass("BEBehaviorTFEngine", typeof(BEBehaviorTFEngine));

            api.RegisterBlockBehaviorClass("OmniOrientable", typeof(BlockBehaviorOmniOrientable));

            api.RegisterItemClass("Wrench", typeof(Wrench));
            api.RegisterItemClass("TFChisel", typeof(TFChisel));
            api.RegisterItemClass("ItemWire", typeof(ItemWire));
        }
示例#20
0
        public override void Start(ICoreAPI api)
        {
            base.Start(api);
            api.RegisterBlockEntityClass("BEEWire", typeof(BEEWire));
            api.RegisterBlockEntityClass("BEEAssembler", typeof(BEEAssembler));
            api.RegisterBlockEntityClass("BEEGenerator", typeof(BEEGenerator));
            api.RegisterBlockClass("ElectricalBlock", typeof(ElectricalBlock));
            api.RegisterBlockClass("BlockCannedMeal", typeof(BlockCannedMeal));
            api.RegisterItemClass("ItemQuarryTool", typeof(ItemQuarryTool));

            //api.RegisterBlockEntityBehaviorClass("BEBMPMotor", typeof(BEBMPMotor));
            //api.RegisterBlockClass("BlockPoweredRotor", typeof(BlockPoweredRotor));
            //api.RegisterBlockClass("BlockElectricMotor", typeof(BlockElectricMotor));
            //api.RegisterBlockEntityClass("BEEMotor", typeof(BEEMotor));
        }
示例#21
0
        public override void Start(ICoreAPI api)
        {
            base.Start(api);

            api.RegisterBlockBehaviorClass("BlockCreateBehavior", typeof(BlockCreateBehavior));

            api.RegisterBlockBehaviorClass("BlockSwapBehavior", typeof(BlockSwapBehavior));

            api.RegisterBlockBehaviorClass("LampConnectorBehavior", typeof(LampConnectorBehavior));
            api.RegisterBlockBehaviorClass("LampPostBehavior", typeof(LampPostBehavior));
            api.RegisterBlockBehaviorClass("RotateNinety", typeof(RotateNinety));
            api.RegisterBlockBehaviorClass("ChimneyBehavior", typeof(ChimneyBehavior));

            //api.RegisterBlockClass("BlockPlaceOnDrop", typeof(BlockPlaceOnDropNew));
            api.RegisterBlockClass("BlockGiantReeds", typeof(BlockGiantReeds));
            api.RegisterBlockClass("BlockMortarAndPestle", typeof(BlockMortarAndPestle));
            //api.RegisterBlockClass("BlockBowl", typeof(BlockBowlNew));
            api.RegisterBlockClass("BlockLogWall", typeof(BlockLogWall));

            api.RegisterBlockClass("BlockCheeseCloth", typeof(BlockCheeseCloth));
            api.RegisterBlockClass("BlockNeolithicRoads", typeof(BlockNeolithicRoads));
            api.RegisterBlockClass("BlockLooseStones", typeof(BlockLooseStonesModified));
            api.RegisterBlockClass("FixedStairs", typeof(FixedStairs));
            api.RegisterBlockClass("BlockMetalWedge", typeof(BlockMetalWedge));
            api.RegisterBlockClass("BlockChandelier", typeof(BlockChandelierFix));
            api.RegisterBlockClass("BlockToolMold", typeof(BlockToolMoldReturnBlock));

            api.RegisterItemClass("ItemSickle", typeof(ItemSickle));
            api.RegisterItemClass("ItemGiantReedsRoot", typeof(ItemGiantReedsRoot));
            api.RegisterItemClass("ItemAdze", typeof(ItemAdze));
            api.RegisterItemClass("ItemChisel", typeof(ItemChiselFix));
            api.RegisterItemClass("ItemSwapBlocks", typeof(ItemSwapBlocks));
            api.RegisterItemClass("ItemSlaughteringAxe", typeof(ItemSlaughteringAxe));
            //api.RegisterItemClass("ItemKnife", typeof(ItemKnifeAdditions));

            api.RegisterBlockEntityClass("GenericPOI", typeof(POIEntity));
            api.RegisterBlockEntityClass("NeolithicTransient", typeof(NeolithicTransient));
            api.RegisterBlockEntityClass("BEScary", typeof(BEScary));
            api.RegisterBlockEntityClass("FixedBESapling", typeof(FixedBESapling));
            api.RegisterBlockEntityClass("BEMortarAndPestle", typeof(BEMortarAndPestle));
            api.RegisterBlockEntityClass("BlockEntityChimney", typeof(BlockEntityChimney));
            api.RegisterBlockEntityClass("BucketB", typeof(BEBucketOverride));
            api.RegisterBlockEntityClass("NeolithicRoads", typeof(BENeolithicRoads));
            api.RegisterBlockEntityClass("Wedger", typeof(BlockEntityMetalWedge));

            AiTaskRegistry.Register("fleepoi", typeof(AiTaskFleePOI));
            AiTaskRegistry.Register("sleep", typeof(AiTaskSleep));
            AiTaskRegistry.Register("neolithicseekfoodandeat", typeof(FixedAiTaskSeekFoodAndEat));

            api.RegisterEntityBehaviorClass("milkable", typeof(BehaviorMilkable));
            api.RegisterEntityBehaviorClass("slaughterable", typeof(BehaviorSlaughterable));
            api.RegisterEntityBehaviorClass("featherpluck", typeof(BehaviorFeatherPluck));
            api.RegisterEntityBehaviorClass("damagenotify", typeof(BehaviorNotifyHerdOfDamage));
        }
示例#22
0
        public override void Start(ICoreAPI api)
        {
            api.Logger.Debug("[Potion] Start");
            base.Start(api);

            config = ModConfig.Load(api);

            var harmony = new Harmony("llama3013.Alchemy");

            harmony.PatchAll(Assembly.GetExecutingAssembly());

            api.RegisterBlockClass("BlockPotionFlask", typeof(BlockPotionFlask));
            api.RegisterBlockEntityClass("BlockEntityPotionFlask", typeof(BlockEntityPotionFlask));
            api.RegisterItemClass("ItemPotion", typeof(ItemPotion));
            api.RegisterBlockClass("BlockHerbRacks", typeof(BlockHerbRacks));
            api.RegisterBlockEntityClass("HerbRacks", typeof(BlockEntityHerbRacks));
            api.RegisterBlockClass("BlockCauld", typeof(BlockCauld));
            api.RegisterBlockEntityClass("Cauld", typeof(BlockEntityCauld));
        }
示例#23
0
        public override void StartPre(ICoreAPI api)
        {
            api.RegisterItemClass("ItemCage", typeof(ItemCage));
            api.RegisterEntity("EntityThrownCage", typeof(EntityThrownCage));

            if (api.Side == EnumAppSide.Client)
            {
                (api as ICoreClientAPI).Network
                .RegisterChannel(ConstantsCore.ModId)
                .RegisterMessageType <Dictionary <AssetLocation, List <CaptureEntity> > >()
                .SetMessageHandler <Dictionary <AssetLocation, List <CaptureEntity> > >(OnReceiveAllBaits);
            }
            else
            {
                serverChannel = (api as ICoreServerAPI).Network
                                .RegisterChannel(ConstantsCore.ModId)
                                .RegisterMessageType <Dictionary <AssetLocation, List <CaptureEntity> > >();
            }
        }
示例#24
0
        public override void Start(ICoreAPI api)
        {
            base.Start(api);
            this.api = api;

            api.Logger.StoryEvent("[Tailor] Hello world!");

            // register network channel and message types
            api.Network.RegisterChannel("tailor")
            .RegisterMessageType(typeof(NetworkApiTailorRequest))
            .RegisterMessageType(typeof(NetworkApiTailorResponse))
            ;

            // load config file or write it with defaults
            config = api.LoadModConfig <ModConfig>("TailorConfig.json");
            if (config == null)
            {
                config = new ModConfig();
                api.StoreModConfig(config, "TailorConfig.json");
            }

            api.RegisterItemClass("boneneedle", typeof(BoneNeedleItem));
        }
示例#25
0
        public override void Start(ICoreAPI api)
        {
            base.Start(api);
            ModCore.api = api;

            // Apply Harmony Patches
            Patcher.apply();

            // Generics
            api.RegisterItemClass("ModularTool", typeof(ModularTool));
            api.RegisterItemClass("ToolPart", typeof(ToolPart));

            // Vanilla Replacements
            api.RegisterItemClass("ModularAxe", typeof(ModularAxe));
            api.RegisterItemClass("ModularChisel", typeof(ModularChisel));
            api.RegisterItemClass("ModularCleaver", typeof(ModularCleaver));
            api.RegisterItemClass("ModularKnife", typeof(ModularKnife));

            // Blocks
            api.RegisterBlockClass("TinkerTable", typeof(TinkerTable));

            // Block Entities
            api.RegisterBlockEntityClass("TinkerTable", typeof(BlockEntityTinkerTable));
        }
示例#26
0
 /// <summary> The start point for the core api. </summary>
 public override void Start(ICoreAPI api)
 {
     // Initialize item classes.
     api.RegisterItemClass("ItemAllomanticMetalProvider", typeof(ItemAllomanticMetalProvider));
     api.RegisterItemClass("ItemLerasium", typeof(ItemLerasium));
 }
示例#27
0
        public override void Start(ICoreAPI api)
        {
            base.Start(api);

            api.RegisterItemClass("ItemDigger", typeof(items.DiggerItem));
        }
示例#28
0
 public override void Start(ICoreAPI api)
 {
     api.RegisterItemClass("ItemFilletKnife", typeof(ItemFilletKnife));
 }
示例#29
0
 public override void Start(ICoreAPI api)
 {
     api.RegisterItemClass("Whetstone", typeof(Whetstone));
     api.RegisterItemClass("ItemSpear", typeof(Spear));
 }
示例#30
0
 public override void Start(ICoreAPI api)
 {
     base.Start(api);
     api.RegisterItemClass("ItemMagicWand", typeof(ItemMagicWand));
 }