예제 #1
0
        internal static int NewItemHook(OnTerraria.Item.orig_NewItem_int_int_int_int_int_int_bool_int_bool_bool orig, int X, int Y, int Width, int Height, int Type, int Stack, bool noBroadcast, int pfix, bool noGrabDelay, bool reverseLookup)
        {
            int num = 400;

            if (NPCLoader.blockLoot.Contains(Type))
            {
                num = BlockNewItem(orig, X, Y, Width, Height, Type, Stack, noBroadcast, pfix, noGrabDelay, reverseLookup);
            }
            else
            {
                num = orig(X, Y, Width, Height, Type, Stack, noBroadcast, pfix, noGrabDelay, reverseLookup);
            }
            return(num);
        }
예제 #2
0
        public static int BlockNewItem(OnTerraria.Item.orig_NewItem_int_int_int_int_int_int_bool_int_bool_bool orig, int X, int Y, int Width, int Height, int Type, int Stack = 1, bool noBroadcast = false, int pfix = 0, bool noGrabDelay = false, bool reverseLookup = false)
        {
            if ((ModContent.GetInstance <OriginWorld>().worldEvil & 4) != 0)
            {
                switch (Type)
                {
                case ItemID.CorruptSeeds:
                    Type = ModContent.ItemType <Defiled_Grass_Seeds>();
                    break;

                case ItemID.DemoniteOre:
                    Type = ModContent.ItemType <Defiled_Ore_Item>();
                    break;
                }
            }
            return(orig(X, Y, Width, Height, Type, Stack, noBroadcast, pfix, noGrabDelay, reverseLookup));
        }