Редактирование:ShootLib

Внимание! Вы не авторизовались на сайте. Ваш IP-адрес будет публично видимым, если вы будете вносить любые правки. Если вы войдёте или создадите учётную запись, правки вместо этого будут связаны с вашим именем пользователя, а также у вас появятся другие преимущества.

Правка может быть отменена. Пожалуйста, просмотрите сравнение версий, чтобы убедиться, что это именно те изменения, которые вас интересуют, и нажмите «Записать страницу», чтобы изменения вступили в силу.
Текущая версия Ваш текст
Строка 1: Строка 1:
<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"><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"><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"><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"><div class="mw-parser-output">'''ShootLib '''- Библиотека для создания оружия.</div> <div class="mw-parser-output">Для работы необходима библиотека [[InnerCore/Libs/SoundAPI|SoundAPI]].</div> <div class="mw-parser-output">[https://icmods.mineprogramming.org/mod.php?id=299 Пример] использования ShootLib.</div> <div class="mw-parser-output">&nbsp;</div> <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"><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"><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"><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"><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"><div class="mw-parser-output">'''ShootLib '''- Библиотека для создания оружия.</div> <div class="mw-parser-output">Для работы необходима библиотека [[InnerCore/Libs/SoundAPI|SoundAPI]].</div> <div class="mw-parser-output">[https://icmods.mineprogramming.org/mod.php?id=299 Пример] использования ShootLib.</div> <div class="mw-parser-output">&nbsp;</div>  
<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"><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">
 
<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"><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">
 
<div class="mw-parser-output"><div class="mw-parser-output">
 
<div class="mw-parser-output"><div class="mw-parser-output">
 
== Загрузка ==
 
== Загрузка ==
  
{| border="1" cellpadding="1" cellspacing="1" style="width: 700px;"
+
{| border="1" cellpadding="1" cellspacing="1" style="width: 500px;"
 
|-
 
|-
 
| colspan="3" style="text-align: center;" | <span style="font-size:large;">'''Библиотека'''</span>
 
| colspan="3" style="text-align: center;" | <span style="font-size:large;">'''Библиотека'''</span>
Строка 33: Строка 25:
 
*Оружием нельзя ломать блоки  
 
*Оружием нельзя ломать блоки  
  
|-
 
| style="text-align: center;" | '''1.2'''
 
| style="text-align: center;" | [https://vk.com/wall-80513593_2143 Скачать]
 
|
 
*Добавлен метод Entity.shot
 
*Добавлен параметр (int)gun.bullet.entity = Native.EntityType.ARROW&nbsp;
 
*Добавлен кэлбэк GunsDefined&nbsp;
 
*Исправление GUI прицела(При смене оружия мог остаться)
 
 
|-
 
| style="text-align: center;" | '''1.3'''
 
| style="text-align: center;" | [https://vk.com/wall-80513593_2147 Скачать]
 
|
 
*Исправлен конфликт интерфейса с несколькими модами.&nbsp;
 
*Исправлены ошибки&nbsp;
 
*Обновление SoundLib до 2.2
 
 
|-
 
| style="text-align: center;" | '''1.4'''
 
| style="text-align: center;" | [https://vk.com/wall-80513593_2159 Скачть]
 
|
 
*Переписан метод инициализации мода&nbsp;
 
*Использование [https://vk.com/wall-80513593_2155 AdvancedEvents]&nbsp;
 
*Исправлен графический интерфейс&nbsp;
 
*Исправлена стрельба из дробовика, теперь урон полностью нанесен.&nbsp;
 
*Незначительные исправления&nbsp;
 
*Обновление SoundLib до 2.3
 
 
|-
 
| style="text-align: center;" | '''1.5'''
 
| style="text-align: center;" | [https://vk.com/wall-80513593_2243 Скачать]
 
|
 
*Добавлен кэлбэк BulletHit
 
*Добавлен кэлбэк ShootGun
 
*Добавлен метод ShootLib.isBullet
 
 
|-
 
| style="text-align: center;" | '''Beta'''
 
| style="text-align: center;" | [https://vk.me/join/AJQ1d/qJIhXTUyeYRYZRRC65 Chat in VK]
 
| &nbsp;
 
 
|-
 
|-
 
| style="text-align: center;" | '''GitHub'''
 
| style="text-align: center;" | '''GitHub'''
| style="text-align: center;" | [https://github.com/Wolf-Team/Libraries/blob/master/ShootLib.js GitHub]
+
| style="text-align: center;" | [https://github.com/Wolf-Team/DemoShootLib GitHub]
 
| &nbsp;
 
| &nbsp;
 
|-
 
|-
Строка 83: Строка 35:
 
| style="text-align: center;" | '''&nbsp;Ссылка'''
 
| style="text-align: center;" | '''&nbsp;Ссылка'''
 
|-
 
|-
| colspan="2" style="text-align: center;" | '''DemoShootLib'''
+
| colspan="2" style="text-align: center;" | '''DemoShootLib [1.1.0]'''
 
| style="text-align: center;" | [https://icmods.mineprogramming.org/mod?id=299 Подробнее]
 
| style="text-align: center;" | [https://icmods.mineprogramming.org/mod?id=299 Подробнее]
|-
 
| colspan="2" style="text-align: center;" | '''SuperHeroes'''
 
| style="text-align: center;" | [https://icmods.mineprogramming.org/mod?id=327 Подробнее]
 
|-
 
| colspan="2" style="text-align: center;" | '''ScarLxrdsGunMod'''
 
| style="text-align: center;" | [https://icmods.mineprogramming.org/mod?id=394 Подробнее]
 
|-
 
| colspan="2" style="text-align: center;" | '''WolfGunsMod'''
 
| style="text-align: center;" | [https://icmods.mineprogramming.org/mod?id=397 Подробнее]
 
 
|}
 
|}
 
<br/> '''Если вы используете данную библиотеку, пожалуйста добавляйте ваш мод в список или пишите [https://vk.com/id93821471 мне].'''
 
 
</div> </div>  
 
</div> </div>  
 
</div>
 
</div>
Строка 110: Строка 51:
  
 
== Документация ==
 
== Документация ==
<div class="mw-parser-output">
+
 
 
<div class="mw-parser-output">
 
<div class="mw-parser-output">
 
=== Инициализация ===
 
=== Инициализация ===
  
Для начала импортируйте библиотеку.
+
Для начала испортируйте библиотеку.
 
<pre>IMPORT("ShootLib")</pre>
 
<pre>IMPORT("ShootLib")</pre>
  
Строка 200: Строка 141:
 
*Если&nbsp;image_button,&nbsp;left_handed,&nbsp;loadSoundFile, fire, aim, reload,&nbsp;crosshair и/или&nbsp;crosshairGUI не указаны, то будут назначены стандартные значения.  
 
*Если&nbsp;image_button,&nbsp;left_handed,&nbsp;loadSoundFile, fire, aim, reload,&nbsp;crosshair и/или&nbsp;crosshairGUI не указаны, то будут назначены стандартные значения.  
  
Если вы не собираетесь менять стандартнеы настройки, метод '''ShootLib.init()''' можно не вызывать </div>
+
Если вы не собираетесь менять стандартнеы настройки, метод '''ShootLib.init()''' можно не вызывать
 
</div>
 
</div>
  
Строка 216: Строка 157:
  
 
Для создании нескольких боеприпасов за раз можно использовать&nbsp;'''ShootLib.addAmmos(''ammos'')''', где ''ammos ''- массив&nbsp;объектов описания боеприпасов
 
Для создании нескольких боеприпасов за раз можно использовать&nbsp;'''ShootLib.addAmmos(''ammos'')''', где ''ammos ''- массив&nbsp;объектов описания боеприпасов
<div class="mw-parser-output">
+
 
 
<div class="mw-parser-output">
 
<div class="mw-parser-output">
 
=== Создание оружия ===
 
=== Создание оружия ===
Строка 232: Строка 173:
 
        meta:0
 
        meta:0
 
    },
 
    },
    shotType:ShootLib.ShotType.NORMAL, //Тип выстрела
+
    shotType:ShotType.NORMAL, //Тип выстрела
    buttonType:ShootLib.ButtonType.CLICK, //Тип кнопки
+
    buttonType:ButtonType.CLICK, //Тип кнопки
 
    bullet:{
 
    bullet:{
 
        speed:10, //Сокрость пули
 
        speed:10, //Сокрость пули
Строка 249: Строка 190:
 
        reload:"reload/LugerReload.ogg" //Звук перезарядки
 
        reload:"reload/LugerReload.ogg" //Звук перезарядки
 
    },
 
    },
    shotgun:{ //Только при gun.shotType:ShootLib.ShotType.SHOTGUN
+
    shotgun:{ //Только при gun.shotType:ShotType.SHOTGUN
 
        count:6, //Кол-во дробинок
 
        count:6, //Кол-во дробинок
 
        degreesSpread:3, //Разброс дроби
 
        degreesSpread:3, //Разброс дроби
Строка 256: Строка 197:
  
 
Для создании нескольких оружий за раз можно использовать&nbsp;'''ShootLib.addGuns(''guns'')''', где ''guns ''- массив&nbsp;объектов описания оружий
 
Для создании нескольких оружий за раз можно использовать&nbsp;'''ShootLib.addGuns(''guns'')''', где ''guns ''- массив&nbsp;объектов описания оружий
</div>
 
 
== Полная документация ==
 
 
=== ShootLib ===
 
 
<div class="mw-parser-output">
 
==== Методы ====
 
 
{| border="1" cellpadding="1" cellspacing="1" style="width: 100%;"
 
|-
 
| style="text-align: center;" | '''Версия'''
 
| style="text-align: center;" | '''Метод'''
 
| style="text-align: center;" | '''Аргументы'''
 
| style="text-align: center;" | '''Описание метода'''
 
|-
 
| style="text-align: center;" | '''1'''
 
| style="text-align: center;" | init(object settings)
 
| style="text-align: center;" | settings - настройки библиотеки
 
| style="text-align: center;" | Задает настройки библиотеки
 
|-
 
| style="text-align: center;" | '''1'''
 
| style="text-align: center;" | addGun(object gun)
 
| style="text-align: center;" | gun - объект описания оружия
 
| style="text-align: center;" | Добавить оружие
 
|-
 
| style="text-align: center;" | '''1'''
 
| style="text-align: center;" | addGuns(object[] guns)
 
| style="text-align: center;" | guns - массив объектов описания оружия
 
| style="text-align: center;" | Добавить оружия
 
|-
 
| style="text-align: center;" | '''1'''
 
| style="text-align: center;" | getGun(int gun_id)
 
| style="text-align: center;" | gun_id - ID предмета
 
| style="text-align: center;" | Получить объект описания оружия
 
|-
 
| style="text-align: center;" | '''1'''
 
| style="text-align: center;" | isGun(int gun_id)
 
| style="text-align: center;" | gun_id - ID предмета
 
| style="text-align: center;" | Вернет true, если предмет gun_id оружие
 
|-
 
| style="text-align: center;" | '''1'''
 
| style="text-align: center;" | addAmmo(object ammo)
 
| style="text-align: center;" | ammo - объект описания боеприпаса
 
| style="text-align: center;" | Добавить боеприпас
 
|-
 
| style="text-align: center;" | '''1'''
 
| style="text-align: center;" | addAmmos(object[] ammos)
 
| style="text-align: center;" | ammos - массив объектов описания боеприпаса
 
| style="text-align: center;" | Добавить боеприпасы
 
|-
 
| style="text-align: center;" | '''1'''
 
| style="text-align: center;" | getAmmo(int ammo_id)
 
| style="text-align: center;" | ammo_id - ID предмета
 
| style="text-align: center;" | Получить объект описания боеприпаса
 
|-
 
| style="text-align: center;" | '''1'''
 
| style="text-align: center;" | isAmmo(int ammo_id)
 
| style="text-align: center;" | ammo_id - ID предмета
 
| style="text-align: center;" | Вернет true, если предмет ammo_id боеприпас
 
|-
 
| style="text-align: center;" | '''1.5'''
 
| style="text-align: center;" | isBullet(int entity)
 
| style="text-align: center;" | entity - сущность
 
| style="text-align: center;" | Вернет true, если существует и является боеприпасом, иначе вернет false
 
|}
 
</div>
 
 
==== Константы ====
 
 
{| border="1" cellpadding="1" cellspacing="1" style="width: 500px;"
 
|-
 
| '''Константа'''
 
| '''Описание'''
 
| '''Значени'''е
 
|-
 
| ShotType.SINGLE
 
| colspan="1" rowspan="2" | Выстрел патроном
 
| 0
 
|-
 
| ShotType.NORMAL
 
| 0
 
|-
 
| ShotType.MULTIPLE
 
| colspan="1" rowspan="2" | Выстрел дробью
 
| 1
 
|-
 
| ShotType.SHOTGUN
 
| 1
 
|-
 
| ButtonType.CLICK
 
| Нажатие кнопки
 
| 1
 
|-
 
| ButtonType.TOUCH
 
| Касание кнопки
 
| 2
 
|-
 
| MAX_DAMAGE
 
| Максимальный урон
 
| -1
 
|-
 
| GUN_BITMAP
 
| GUI прицел будет принимать ссылку
 
| -1
 
|}
 
 
=== Entity ===
 
 
==== Методы ====
 
 
{| border="1" cellpadding="1" cellspacing="1" style="width: 100%;"
 
|-
 
| style="text-align: center;" | '''Версия'''
 
| style="text-align: center;" | '''Метод'''
 
| style="text-align: center;" | '''Аргументы'''
 
| style="text-align: center;" | '''Описание метода'''
 
|-
 
| style="text-align: center;" | '''1.2'''
 
| style="text-align: center;" | shot(Entity entity)
 
| style="text-align: center;" | entity - сущность, которая должна выстрелить
 
| style="text-align: center;" | Заставляет моба выстрелить
 
|}
 
 
<div class="mw-parser-output">
 
<div class="mw-parser-output">
 
=== Callback ===
 
 
Новый callback GunsDefined вызывается после создания всех оружий и боеприпасов
 
<syntaxhighlight lang="JavaScript">Callback.addCallback("GunsDefined",function(){
 
   //Например ваши крафты
 
});</syntaxhighlight>
 
 
Callback BulletHit вызывается при попадании снаряда во что-нибудь
 
<syntaxhighlight lang="JavaScript">Callback.addCallback("BulletHit", function(bullet, item, hit){
 
    /*
 
    * При попадании снарядом куда-нибудь
 
    * bullet - сущность пули
 
    * hit - объект, по которому попали
 
    */
 
});</syntaxhighlight>
 
 
Callback ShootGun срабатывает при выстреле из оружия
 
<syntaxhighlight lang="JavaScript">Callback.addCallback("ShootGun", function(bullet, item, gun){
 
    /*
 
    * При выстреле из оружия
 
    * bullet - сущность пули
 
    * item - предмет, из которого был произведен выстрел
 
    * gun - описание оружия
 
    */
 
});</syntaxhighlight>
 
 
&nbsp;
 
 
</div>
 
</div>

Обратите внимание, что все добавления и изменения текста статьи рассматриваются как выпущенные на условиях лицензии GNU Free Documentation License 1.3 или более поздняя (см. Mineprogramming wiki:Авторские права). Если вы не хотите, чтобы ваши тексты свободно распространялись и редактировались любым желающим, не помещайте их сюда.
Вы также подтверждаете, что являетесь автором вносимых дополнений или скопировали их из источника, допускающего свободное распространение и изменение своего содержимого.
НЕ РАЗМЕЩАЙТЕ БЕЗ РАЗРЕШЕНИЯ МАТЕРИАЛЫ, ОХРАНЯЕМЫЕ АВТОРСКИМ ПРАВОМ!