OpenComputers/OpenComponents
OpenComponents

Для издания | |
---|---|

Автор |
Sangar |

Дата выпуска |
2 Февраля 2014 |

Совместимо с |
1.6.4/1.7.2/1.7.10 |

Установка |
См. Установка |

Требования | |

Ссылки |


**OpenComponents** — дополнение к моду OpenComputers, которое значительно расширяет функциональность блока адаптера. Становится возможным взаимодействие со многими блоками оригинального Minecraft и различных модификаций к нему.

## Установка

* Внимание:* начиная с версии

**OpenComputers 1.4**, это дополнение входит в состав основного мода. Поэтому устанавливать его отдельно не требуется.

Основная статья: Установка модификаций с помощью Forge

- Установите Minecraft Forge.
- Скачайте
*OpenComputers*. - Скопируйте файл в папку

.*<папка игры>*/mods

## API

### Маяк (*beacon*)

`getLevels(): number`

— возвращает высоту пирамиды маяка`getPrimaryEffect(): string`

— возвращает название первичного эффекта маяка. Значения:`potion.moveSpeed`

— скорость`potion.digSpeed`

— спешка`potion.resistance`

— сопротивление`potion.jump`

— мощный прыжок`potion.damageBoost`

— сила


- Возвращает
`nil`

если эффект не установлен.

- Возвращает

`getSecondayEffect(): string`

— возвращает название вторичного эффекта.`potion.regeneration`

— регенерация


- Возвращает
`nil`

если эффект не установлен.

- Возвращает

### Варочная стойка (*brewing*)

`getBrewTime(): number`

— возвращает время, необходимое для варки зелья.

### Командный блок (*commandblock*)

`getCommand(): string`

— возвращает команду, установленную в блок. Если команда ещё не была задана, функция вернет пустую строку.`setCommand(command: string): true`

— устанавливает новую команду в блок.`executeCommand(): number`

— активирует блок и исполняет команду. Возвращает`1`

или`0`

в зависимости от успеха.

### Компаратор (*comparator*)

`getOutputSignal(): number`

— возвращает силу сигнала на выходе.

### Печь (*furnace*)

`getBurnTime(): number`

— возвращает время горения топлива (только горящего в данный момент, без учета остального топлива в печи).`getCookTime(): number`

— возвращает время приготовления (плавки и т.д.).`getCurrentItemBurnTime(): number`

— возвращает общее время горения одной единицы топлива, помещенного в печь.`isBurning(): boolean`

— возвращает`true`

если в печи горит огонь, и`false`

если она потухла.

### Сундук (*chest*)

`getInventoryName(): string`

— возвращает строку`"container.chest"`

.`getInventorySize(): number`

— возвращает число`27`

— объем сундука (адаптер определяет объем только той части сундука, к которой присоединен).`getSlotStackSize(slot: number): number`

— возвращает количество предметов в заданном слоте. Слоты нумеруются от 1 до 27 (слева-направо, сверху-вниз).`getSlotMaxStackSize(slot: number): number`

— возвращает максимальное количество предметов, которое может поместиться в заданный слот. Число зависит от типа предметов в слоте (к примеру — для угля это`64`

, а для кровати —`1`

). Если слот пустой, функция вернет число`64`

.

`compareStacks(slotA: number, slotB: number): boolean`

— сравнивает предметы в заданных слотах.

- Возвращает
`true`

если предметы совпадают, или слоты пусты (или`slotA`

и`slotB`

указывают на один слот) - Возвращает
`false`

если предметы различны.

- Возвращает

`transferStack(slotA: number, slotB: number[, count: number]): boolean`

— перемещает предметы из слота*A*в слот*B*(если не указано количество, перемещает все предметы).

- Возвращает
`true`

, если хотя бы один предмет был перемещен, или`false`

в противном случае.

- Возвращает

`getStackInSlot(slot: number): table`

— возвращает описание предмета в слоте в виде таблицы (ID, метаданные, количество).

- По-умолчанию функция отключена в конфигурации мода. В этом случае функция вернет
`nil`

и сообщение`not enabled in config`

. - Включить функцию можно в файле
`.minecraft/config/OpenComponents.cfg`

в параметре`vanilla.B:allowItemStackInspection`

, поменяв значение на`true`

.

- По-умолчанию функция отключена в конфигурации мода. В этом случае функция вернет

`getAllStacks(): table`

— возвращает список всех предметов в сундуке в виде таблицы.

- По умолчанию функция отключена в конфигурации мода. См. функцию
`getStackInSlot()`

выше.

- По умолчанию функция отключена в конфигурации мода. См. функцию

### Спаунер мобов (*mobspawner*)

`getSpawningMobName(): string`

— возвращает название моба, который появляется из этого спаунера. Названия даны на английском языке.

- Пример:
`Slime`

,`MushroomCow`

,`Wolf`

,`VillagerGolem`

или`Blaze`

.

- Пример:

### Музыкальный блок (*musicblock*)

`getPitch(): number`

— возвращает высоту звука (ноты). Высота — число от 1 до 25.`setPitch(note: number): true`

— задает новую высоту звука (ноту) блока.`trigger([note: number]): boolean`

— активирует блок, проигрывая ноту. В качестве необязательного параметра, можно передать высоту ноты (блок будет перенастроен). Если параметр не указан, блок воспроизведет ту ноту, на которую он настроен.

- Возвращает
`false`

если блок не может воспроизвести ноту (над музыкальным блоком установлен другой).

- Возвращает

### Проигрыватель (*jukebox*)

`getRecord(): number`

— возвращает название пластинки. Если в проигрывателе нет пластинки, функция вернет`nil`

.

- Пример:
`C418 — blocks`

,`C418 — wait`

.

- Пример:

### Табличка (*item_sign*)

`getValue(): string`

— возвращает текст таблички. Текст содержит все четыре строки, разделенных символами переноса`\n`

.`setValue(text: string): string`

— изменяет текст таблички на новый. Для того, чтобы записать текст на табличку в несколько строк, разделяйте передаваемый в параметр`text`

текст символами переноса`\n`

.

- Функция возвращает новый текст таблички.


## История версий

- Начиная с
**OpenComputers 1.4**, дополнение OpenComponents включено в состав основного мода.