Создание пользовательского тайла[]
Настройка вашей "Tile" папки[]
Сначала убедитесь, что вы создали папку ModPack.
Создайте папку с именем "Tile" в папке вашего мода.
Оформление тайла. (мебель)[]
- Зайдите в вашу "Tile" папку
- Создайте новый .ini файл и назовите его независимо от вашего тайла. Например, "Etherium Forge"
- Откройте его, и напишите там код:
[Stats] id=-1 ;если в строке"type" установить значение -1 то это будет пользовательский тайл Width=3 Height=4 ;Высота и ширина линий решеток на решетке.png, а не фактических пикселей. pick=0 axe=0 hammer=1 ;кирка, топор, молоток. Чем можно сломать тайл DropName=Etherium Forge ;какой предмет будет падать, когда он ломается Lighted=False MergeDirt=False Cut=False Alch=False Shine=1150 ;он создает свет? Shine2=True ;он будет сверкать? Stone=False WaterDeath=False ;при погружении в воду, он будет исчезать? LavaDeath=False ;при погружении в лаву, он будет исчезать? Table=False BlockLight=True ;Будет ли блокировать свет? NoSunLight=True ;Будет ли блокировать солнечный свет? Dungeon=False ;Можно ли спауниться в пещерах? SolidTop=False ;Есть ли свойства как у платформы? Solid=False ;вы можете ходить по нему? NoAttach=False NoFail=False FrameImportant=False
- Теперь создаем .png файл с тем же именем, что и .ini файл.
- При изготовлении тайла убедитесь, что ваш файл PNG по линии сетки 1x1 и выглядят на нем вот так>>>>>
Создание предмета вашего тайла[]
- Если вы этого не сделали, убедитесь, что у вас есть папка "Item" в вашей мод папке
- Создание INI-файла (не должен быть таким же именем, что и тайл).
[Stats] width=16 height=16 type=-1 useStyle=1 useAnimation=15 useTime=10 createTileName=Etherium Forge ;Тайл будет создан при использовании. placeStyle=1 ;Не уверен, что при изменении 1 будет работать хорошо. consumable=True ;Почти всегда ставьте True, оно будет убеждать, что тайл находится в ваших руках. autoReuse=True maxStack=1 useTurn=True scale=1 value=2000000 className=Item [Recipe] Items=1 Wood ;измените его, если надо будет. Amount=1 needWater=False
- Добавьте к вашему .ini файлу файл .png.
- Сам элемент не нуждается в сеткt на нем. Etherium Forge >>>>>
- УСПЕХ!
Теперь, когда вы используете ваш предмет, тайл должен появиться.
Оформление тайла. (Блок)[]
- Зайдите в папку "Tile"
- Создайте новый .ini файл и назовите его независимо от вашего тайла. Например, "Greenium"
- Откройте его, и напишите там код:
[Stats] id=-1 ;если в строке"type" установить значение -1 то это будет пользовательский тайл Width=1 Height=1 ;Высота и ширина линий решеток на решетке.png, а не фактических пикселей. pick=1 axe=0 hammer=0 ;кирка, топор, молоток. Чем можно сломать тайл DropName=Greenium Ore ;какой предмет будет падать, когда он ломается. Предмет в вашей папке "Item" Lighted=False MergeDirt=False Cut=False Alch=False Shine=1150 ;он создает свет? Shine2=True ;он будет сверкать? Stone=False WaterDeath=False ;при погружении в воду, он будет исчезать? LavaDeath=False ;при погружении в лаву, он будет исчезать? Table=False BlockLight=True ;Будет ли блокировать свет? NoSunLight=True ;Будет ли блокировать солнечный свет? Dungeon=False ;Можно ли спауниться в пещерах? SolidTop=False ;Есть ли свойства как у платформы? Solid=True ;вы можете ходить по нему? NoAttach=False NoFail=False FrameImportant=False
- Теперь создаем .png файл с тем же именем, что и ini файла.
- При изготовлении плитки убедитесь, что ваш .png файл на линиях сетки 1x1 как здесь >>>>
- В отличие от обычных руд, эта руда НЕ сольется с грязью, поэтому зеленая грязь не имеет значения.
Создание предмета вашего тайла.[]
- Если этого не сделали, убедитесь, что у вас есть папка "Item" в вашей мод папке.
- Создание INI-файла (не должен быть таким же именем, что и тайл).
[Stats] width=16 height=16 type=-1 useStyle=1 useAnimation=15 useTime=10 createTileName=Greenium ;какой тайл будет создан при использовании. Тайл в вашей папке "Tile". placeStyle=1 ;Не уверен, что при изменении 1 будет работать хорошо. consumable=True ;Почти всегда ставьте True, оно будет убеждать, что тайл находится в ваших руках. autoReuse=True maxStack=250 useTurn=True scale=1 value=2000000 className=Item
- Добавьте .ini файлу файл .png.
- Добавить рецепт, чтобы проверить его или обратитесь к странице спауна руды.
- Вот предмет и как будет выглядеть на земле при падении>>>>>
- УСПЕХ!
Создание тайла для сундука[]
- Выполните описанные выше действия для создания какого-нибудь тайла.
- Положите в .cs файл
public void PlaceTile(int x, int y) { while(Main.tile[x,y].frameX>0) x--; while(Main.tile[x,y].frameY>0) y--; int ID = Chest.CreateChest(x, y); } public void UseTile(Player player, int x, int y) { while(Main.tile[x,y].frameX>0) x--; // && Main.tile[x-1,y].type==type while(Main.tile[x,y].frameY>0) y--; // && Main.tile[x,y-1].type==type Main.chestText = "Chest"; int ID= Chest.FindChest(x, y); Main.player[Main.myPlayer].chest = ID; Main.playerInventory = true; Main.PlaySound(12, -1, -1, 1); Main.player[Main.myPlayer].chestX = x; Main.player[Main.myPlayer].chestY = y; } public bool CanDestroyTile(int x, int y) { while(Main.tile[x,y].frameX>0) x--; while(Main.tile[x,y].frameY>0) y--; int ID= Chest.FindChest(x, y); if(ID==-1) return true; for(int i=0;i<Chest.maxItems;i++) { if(Main.chest[ID].item[i].type > 0) return false; } return true; //Если нет предметов в сундуке, то можно будет уничтожить } public void DestroyTile(int x, int y) { while(Main.tile[x,y].frameX>0) x--; while(Main.tile[x,y].frameY>0) y--; Chest.DestroyChest(x, y); }
- Первая строка позволяет ему быть размещённым.
- Вторая строка позволяет его использовать.
- Третья позволяет ему быть уничтоженым только при отсутствии предметов внутри
- Окончательная строка позволяет ему быть уничтоженым в целом.