예제 #1
0
 public override void Start(ICoreAPI api)
 {
     api.RegisterBlockClass("BlockSmeltedContainer", typeof(BlockSmeltedContainer));
     api.RegisterBlockClass("BlockSmeltingContainer", typeof(NeoBlockSmeltingContainer));
     api.RegisterBlockClass("BlockCookingContainer", typeof(CookingContainerFix));
     api.RegisterBlockClass("BlockCookedContainer", typeof(CookedContainerFix));
     api.RegisterBlockClass("BlockMeal", typeof(BlockMealFix));
     api.RegisterBlockEntityClass("CookedContainerFix", typeof(CookedContainerFixBE));
     api.RegisterBlockEntityClass("MealFix", typeof(BlockEntityMealFix));
 }
예제 #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)
        {
            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));
        }
예제 #4
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));
        }
예제 #5
0
 public override void Start(ICoreAPI api)
 {
     base.Start(api);
     api.RegisterBlockClass("resinvessel", typeof(BlockResinVessel));
     api.RegisterBlockBehaviorClass("resinvesselb", typeof(BlockBehaviorResinVessel));
     api.RegisterBlockEntityClass("resinvessel", typeof(BlockEntityResinVessel));
 }
예제 #6
0
        public override void Start(ICoreAPI api)
        {
            this.api = api;
            base.Start(api);

            api.RegisterBlockClass("BlockBreadboard", typeof(BlockCircuitBoard));
            api.RegisterBlockClass("BlockSignalConnection", typeof(BlockConnection));
            api.RegisterBlockClass("BlockSignalSource", typeof(BlockSource));
            api.RegisterBlockClass("BlockSwitch", typeof(BlockSwitch));



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

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

            api.RegisterBlockEntityBehaviorClass("BEBehaviorCircuitHolder", typeof(BEBehaviorCircuitHolder));
            api.RegisterBlockEntityBehaviorClass("BEBehaviorSignalConnector", typeof(BEBehaviorSignalNodeProvider));

            api.RegisterBlockEntityBehaviorClass("BEBehaviorSignalSwitch", typeof(BEBehaviorSignalSwitch));

            RegisterCircuitComponentClass("valve", typeof(CircuitComponentValve));
            RegisterCircuitComponentClass("source", typeof(CircuitComponentSource));
            RegisterCircuitComponentClass("resistor", typeof(CircuitComponentResistor));
        }
예제 #7
0
        public override void Start(ICoreAPI api)
        {
            ModConfig = ModConfig.Load(api);

            api.RegisterBlockEntityClass(ChardisBlockEntity.Name, typeof(ChardisBlockEntity));
            api.RegisterBlockClass(ChardisBlock.Name, typeof(ChardisBlock));
        }
예제 #8
0
파일: Main.cs 프로젝트: wqpvs/advancedblock
        public override void Start(ICoreAPI api)
        {
            base.Start(api);


            // Blocks Class
            api.RegisterBlockClass("BlockSingleSink", typeof(BlockSingleSink));
            api.RegisterBlockClass("BlockDoubleSink", typeof(BlockDoubleSink));
            api.RegisterBlockClass("BlockIceBox", typeof(BlockIceBox)); // taking from Github new one and better and less work.
            api.RegisterBlockClass("ModdedBlockLiquidContainerBase", typeof(ModdedBlockLiquidContainerBase));
            // Block Entity Class
            api.RegisterBlockEntityClass("SingleSink", typeof(BlockEntitySingleSink));
            api.RegisterBlockEntityClass("DoubleSink", typeof(BlockEntityDoubleSink));
            api.RegisterBlockEntityClass("IceBox", typeof(BlockEntityIceBox));  // taking from Github new one and better and less work.
            api.RegisterBlockEntityClass("ModdedFirepit", typeof(BlockEntityModdedFirepit));
        }
예제 #9
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));
 }
예제 #10
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());
        }
예제 #11
0
        public override void Start(ICoreAPI api)
        {
            api.RegisterBlockClass("BlockTeleport", typeof(BlockTeleport));
            api.RegisterBlockEntityClass("BETeleport", typeof(BlockEntityTeleport));

            TreeAttribute.RegisterAttribute(Constants.ATTRIBUTES_ID + 1, typeof(BlockPosArrayAttribute));

            Config.Current = api.LoadOrCreateConfig <Config>(ConstantsCore.ModId + ".json");
        }
예제 #12
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));
        }
예제 #13
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));
        }
        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));
        }
예제 #15
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));
        }
예제 #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)
        {
            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);
                    }
                });
            }
        }
예제 #18
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));
        }
예제 #19
0
        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));
        }
예제 #20
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));
        }
예제 #21
0
        public override void Start(ICoreAPI api)
        {
            base.Start(api);

            //api.RegisterBlockClass("BlockBowl", typeof(BlockBowlNew));
            api.RegisterBlockClass("BlockCookedContainer", typeof(CookedContainerFix));
            api.RegisterBlockClass("BlockCookingContainer", typeof(CookingContainerFix));

            api.RegisterBlockClass("BlockSmeltingContainer", typeof(BlockSmeltingContainerFix));
            api.RegisterBlockClass("BlockSmeltedContainer", typeof(BlockSmeltedContainerFix));

            api.RegisterBlockEntityClass("CookedContainerFix", typeof(CookedContainerFixBE));
        }
예제 #22
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));
        }
예제 #23
0
 public override void Start(ICoreAPI api)
 {
     api.World.Logger.Debug("start registering blocks");
     try
     {
         api.RegisterBlockClass(nameof(GraveBlock), typeof(GraveBlock));
         api.RegisterBlockEntityClass(nameof(GraveBlockEntity), typeof(GraveBlockEntity));
     }
     catch (Exception e)
     {
         api.World.Logger.LogRaw(EnumLogType.Debug, $"error registering blocks: {e.StackTrace}");
         throw;
     }
 }
예제 #24
0
        public override void Start(ICoreAPI api)
        {
            base.Start(api);

            // Register base water wheel block and properties
            api.RegisterBlockClass("blockwaterwheel", typeof(BlockWaterWheel));
            api.RegisterBlockEntityClass("bewaterwheel", typeof(BEWaterWheel));
            api.RegisterBlockEntityBehaviorClass("bebehaviorwaterwheel", typeof(BEBehaviorWaterWheel));

            // Shouldn't use fake blocks until the game allows objects to be underwater and not mess with water flow.
            // There may be a way to edit the base game to allow blocks to extend their collision and selection boxes beyond their origin

            // Register the 'empty' surrounding blocks
            //api.RegisterBlockClass("blockwaterwheelsegment", typeof(BlockWaterWheelSegment));
            //api.RegisterBlockEntityClass("bewaterwheelsegment", typeof(BEWaterWheelSegment));
        }
예제 #25
0
        public override void Start(ICoreAPI api)
        {
            base.Start(api);

            Harmony testPatch = new Harmony("org.nationsatwar.patch");

            testPatch.PatchAll();

            Harmony.DEBUG = true;

            playerManager = PlayerManager.Instance;

            api.RegisterBlockClass("blockchair", typeof(BlockChair));

            api.RegisterBlockClass("blockomoktabletop", typeof(BlockOmokTableTop));
            api.RegisterBlockEntityClass("beomoktabletop", typeof(BEOmokTableTop));
        }
예제 #26
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);
        }
예제 #27
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));
        }
예제 #28
0
 public override void Start(ICoreAPI api)
 {
     base.Start(api);
     api.RegisterBlockEntityClass("FirepitStoker", typeof(FirepitStokerEntity));
 }
예제 #29
0
 public override void Start(ICoreAPI api)
 {
     api.RegisterBlockEntityClass("Display", typeof(BlockEntityDisplay));
 }
예제 #30
0
        public override void Start(ICoreAPI api)
        {
            api.RegisterBlockClass("BlockCustomShape", typeof(BlockCustomShape));

            api.RegisterBlockEntityClass("CustomShape", typeof(BlockEntityCustomShape));
        }