ToolLib — различия между версиями

Строка 41: Строка 41:
 
Для регистрации материала блока используется метод ToolAPI.addBlockMaterial(materialBlock, breakingMultiplier);
 
Для регистрации материала блока используется метод ToolAPI.addBlockMaterial(materialBlock, breakingMultiplier);
 
<syntaxhighlight lang="JavaScript">ToolAPI.addBlockMaterial("test", 3);</syntaxhighlight>
 
<syntaxhighlight lang="JavaScript">ToolAPI.addBlockMaterial("test", 3);</syntaxhighlight>
 +
<div class="mw-parser-output">
 
<div class="mw-parser-output">
 
<div class="mw-parser-output">
 
<div class="mw-parser-output">
 
<div class="mw-parser-output">
Строка 56: Строка 57:
 
    }
 
    }
 
} </syntaxhighlight>
 
} </syntaxhighlight>
</div></div>
+
</div></div></div>
  
 
=== Все методы ===
 
=== Все методы ===
 
</div> </div> </div> </div> </div> </div> </div> </div> </div> </div> </div> </div> </div> </div> </div> </div> </div> </div>
 
</div> </div> </div> </div> </div> </div> </div> </div> </div> </div> </div> </div> </div> </div> </div> </div> </div> </div>

Версия 13:14, 27 августа 2019

Ожидает заполнения, Волк там где-то спит, скоро закончит. Или не скоро, пинайте его.
ToolAPI - API позваляющая регистрировать инструменты.
ToolType - Библиотека, предоставляющая универсальные типы инструментов и содержащая некоторые доработки и фиксы ошибок в ToolAPI.

Версия Скачать
3 Скачать

 

Документация

Подключение

Чтобы подключить библиотеку, необходимо расположить файл библиотеки в папку lib в корне мода написать следующее в начале вашего кода:

IMPORT("ToolType");

После этого вам станет доступен весь функционал библиотеки.

Основные команды

Для регистрации инструмента используется метод ToolAPI.setTool(ItemID, materialTool, toolType)

ToolAPI.setTool(ItemID["myTool"], "wood", ToolType.axe);

Для регистрации нового материала инструментов используется метод ToolAPI.addToolMaterial(materialTool, params)

ToolAPI.addToolMaterial("dirt", {
    durability: 3,//Долговечность(Сколько блоков можно сломать)
    level: 1,//Уровень инструмента, влияет на блоки которые инструмент может ломать 
    efficiency: 10,//Эффективность, чем больше эффективность, тем быстрее ломается нужный блок
    damage: 1,//Урон наносимый инструментами данного материала
    enchantability: 14
});

Для регистрации блока используется метод ToolAPI.registerBlockMaterial(BlockID, materialBlock, level);

ToolAPI.registerBlockMaterial(BlockID["myBlock"], "stone", 1);

Для регистрации материала блока используется метод ToolAPI.addBlockMaterial(materialBlock, breakingMultiplier);

ToolAPI.addBlockMaterial("test", 3);

Создание своего типа инструмента

 

ToolType.myType = {
    enchantType: Native.EnchantType.pickaxe,//Тип чар для инстумента
    damage: 2,//Урон инструмента
    blockTypes: ["dirt", "stone", "test"], //Материалы блоков, которые может ломать инструмент
    onAttack: function(item){
        if(item.data > Item.getMaxDamage(item.id)){
            item.id = item.data = item.count = 0;
        }
    }
}

Все методы