<?xml version="1.0" encoding="utf-8"?>
<!-- Generated on Thu, 04 Jun 2026 18:33:04 +0200 -->
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>GMod-Fan Inc. - Форум</title>
    <link>https://gmod-fan.com/forum/discussions/topic-5417.html</link>
    <description>Последние ответы в теме: Туториал по созданию скриптового аддона.</description>
    <generator>LogicBoard</generator>
    <item>
      <title>Туториал по созданию скриптового аддона.</title>
      <description><![CDATA[<div class="block_quote"><span class="block_titlequote">Volkus-Borodatus (-.-) писал:</span><span class="block_textquote">О, а можно ли настроить вывод инфы жирным шрифтом в центр экрана, тип сколько урона нанёс попаданием пули/ударом?<br /></span></div><!--quote -->Да конечно.<br />Вот:<br />function HPText( target, dmginfo ) // Значения для события &quot;EntityTakeDamage&quot;.target - объект который получает урон.dmginfo - все что связано с уроном(yрон,тип,нападающий и тд.)<br />// Условия для того чтобы не вылезали ошибки.Только игрок может получить текст.<br />// И если игрок нападет на НПС или другого игрока.<br />if IsValid(target) and IsValid(dmginfo:GetAttacker()) and dmginfo:GetAttacker():IsPlayer() and (target:IsNPC() or target:IsPlayer()) then<br />// Вывод текста нападающему игроку.HUD_PRINTCENTER - это вывод текста в центре экрана.<br />dmginfo:GetAttacker():PrintMessage(HUD_PRINTCENTER,&quot;Вы нанесли &quot; .. math.Round( dmginfo:GetDamage() ) .. &quot; урона&quot;)  // math.Round - Округляем урон до целого числа.<br />end<br />end<br />hook.Add( &quot;EntityTakeDamage&quot;, &quot;HPTextId&quot;, HPText )<br />Не забудь преобразовать весь код в UTF-8 (без BOM).<br /><!-- Small_img:http://s013.radikal.ru/i323/1505/ab/381d6af2caa8.jpg| --><center><a href='http://s013.radikal.ru/i323/1505/ab/381d6af2caa8.jpg' onclick="return hs.expand(this)"><img src='http://s013.radikal.ru/i323/1505/ab/381d6af2caa8.jpg' width='400' height='300' alt='Прикрепленная картинка' /></a></center><!--/Small_img -->]]></description>
      <link>https://gmod-fan.com/forum/discussions/last/topic-5417.html</link>
      <pubDate>Mon, 18 May 2015 04:06:34 +0200</pubDate>
      <author>Hds46</author>
      <guid isPermaLink="true"><![CDATA[https://gmod-fan.com/forum/discussions/last/topic-5417.html]]></guid>
    </item>
    <item>
      <title>Туториал по созданию скриптового аддона.</title>
      <description><![CDATA[<div class="block_quote"><span class="block_titlequote" data-pid="63035">Hds46 (17.05.2015, 10:18) писал:</span><span class="block_textquote">&quot;EntityTakeDamage&quot; - Событие когда какой-нибудь объект получает урон(Значения.(target,dmginfo)).</span></div><!--quote --> <br />О, а можно ли настроить вывод инфы жирным шрифтом в центр экрана, тип сколько урона нанёс попаданием пули/ударом?]]></description>
      <link>https://gmod-fan.com/forum/discussions/last/topic-5417.html</link>
      <pubDate>Sun, 17 May 2015 09:49:42 +0200</pubDate>
      <author>Volkus-Borodatus (-.-)</author>
      <guid isPermaLink="true"><![CDATA[https://gmod-fan.com/forum/discussions/last/topic-5417.html]]></guid>
    </item>
    <item>
      <title>Туториал по созданию скриптового аддона.</title>
      <description><![CDATA[Итак,вы научились делать оружие,и терперь вы научитесь делать скриптовый аддон.<br />Для этого мы используем хуки.<br />Хуки - это коды которые изменяют или реагируют на события игры/движка.<br />Хуки позолят вам контролировать игровой процесс по вашему вкусу.<br />Хуки могут быть серверными или клиентскими,а также могут быть и серверными и клиентскими.<br /><strong>(Шаг 1)</strong>Создадим в папке addons папку с нашим скриптом,и затем в этой папке создадим папку lua,и затем в папке lua создадим папку autorun,и в этой папке создадим папку server.<br />Для новых версий игры нам не нужен addon.txt.<br />Если у вас старая версия,тогда вам придется его создать.Подробнее <a href="http://gmod-fan.ru/forum/discussions/topic-2056.html" >здесь</a>.<br />Скрипты можно положить и использовать в папках autorun,server,client.<br />В autorun можно запустить и клиентские коды и серверные.В папке server илм client можно положить только клиентские или серверные скрипты.<br />Создадим в папке server наш луа скрипт.<br /><div align="center"><!-- Small_img:http://s017.radikal.ru/i411/1505/96/41a0dd620be5.jpg| --><center><a href='http://s017.radikal.ru/i411/1505/96/41a0dd620be5.jpg' onclick="return hs.expand(this)"><img src='http://s017.radikal.ru/i411/1505/96/41a0dd620be5.jpg' width='400' height='250' alt='Прикрепленная картинка' /></a></center><!--/Small_img --></div><br /><strong>(Шаг 2)</strong>Теперь приступим к скриптингу.<br />Вписываем в луа скрипт наш код:<br />function HookTest() // Название нашей функции которую будет вызывать хук.<br />print(&quot;Привет&quot;) // Вывод текста в консоль.<br />end // Конец функции<br /> <br />hook.Add(&quot;Think&quot;, &quot;HookId&quot;, HookTest) // Код хука.<br /><br />Где &quot;Think&quot; - Название события.В кавычках.<br />Где &quot;HookId&quot; - Название хука добавляемого хука.В кавычках.<br />Где  HookTest - Название функции которую будет вызывать хук.Без кавычек.<br /><br />Теперь нужно сделать так чтобы гмод читал наш текст.<br />Для этого нужен NotePad++.<br />Выделите весь код.<br />Жмите на Кодировки/Преобразовать в UTF-8 (без BOM).<br /><div align="center"><!-- Small_img:http://s017.radikal.ru/i421/1505/56/c3c2fbff79c7.jpg| --><center><a href='http://s017.radikal.ru/i421/1505/56/c3c2fbff79c7.jpg' onclick="return hs.expand(this)"><img src='http://s017.radikal.ru/i421/1505/56/c3c2fbff79c7.jpg' width='400' height='250' alt='Прикрепленная картинка' /></a></center><!--/Small_img --></div><br />Затем сохраните.<br /><br /><strong>(Шаг 3)</strong>Теперь проверим это в игре и мы увидим:<br /><div align="center"><!-- Small_img:http://s45.radikal.ru/i109/1505/82/818d58167b16.jpg| --><center><a href='http://s45.radikal.ru/i109/1505/82/818d58167b16.jpg' onclick="return hs.expand(this)"><img src='http://s45.radikal.ru/i109/1505/82/818d58167b16.jpg' width='400' height='300' alt='Прикрепленная картинка' /></a></center><!--/Small_img --></div><br />Событие &quot;Think&quot; будет постоянно вызывать код, который мы указали в функции.<br />Некоторые события имеют свои значения для функции.Например для определения игрока.<br /><br />function HelloSpawn( ply ) // Обратите внимание на код ply в скобках,это игрок который спавнится после подключения.<br />ply:PrintMessage(HUD_PRINTTALK,&quot;Здравствуйте!Вы зашли на наш сервер.Хорошей игры!&quot;) // Выводим в чат появившегося игрока,наш текст.<br />end<br />hook.Add( &quot;PlayerInitialSpawn&quot;, &quot;HelloSpawnId&quot;, HelloSpawn ) // Событие &quot;PlayerInitialSpawn&quot; вызывается когда игрок подключается.<br /><div align="center"><!-- Small_img:http://s020.radikal.ru/i708/1505/94/d37589dc9b8a.jpg| --><center><a href='http://s020.radikal.ru/i708/1505/94/d37589dc9b8a.jpg' onclick="return hs.expand(this)"><img src='http://s020.radikal.ru/i708/1505/94/d37589dc9b8a.jpg' width='400' height='300' alt='Прикрепленная картинка' /></a></center><!--/Small_img --></div>Вот пара других событий: <br /><blockquote class="blockspoiler"><span class="titlespoiler"><a href='#' onclick="ShowAndHide('6830dacf17365deb050f672047107470'); return false;">Hooks</a></span><div id='6830dacf17365deb050f672047107470' style='display:none;' class="textspoiler">&quot;PlayerSpawn&quot; - Событие когда игрок возрождается после смерти.(Значения.(ply))<br />&quot;EntityTakeDamage&quot; - Событие когда какой-нибудь объект получает урон(Значения.(target,dmginfo)).<br />&quot;PlayerDeath&quot; - Событие когда игрок умирает.(Значения.(victim, inflictor, attacker))<br />&quot;EntityRemoved&quot; - Событие когда какой-нибудь объект удаляется.(Значения.(ent))<br />&quot;OnEntityCreated&quot; - Событие когда какой-нибудь объект появляется.(Значения.(ent))</div></blockquote><!--spoiler --><br />Ну вот,вы научились создавать скриптовый аддон для Garry's Mod'а.<br />В следующем туториале будет пример по созданию целого мода с консольными командами и тд.<br /><br />Вы можете помочь мне материально по WebMoney.<br />Ru-Кошелек: R236462443208<br /><br />Пишите в комментах если у вас появились ошибки или есть предложения.]]></description>
      <link>https://gmod-fan.com/forum/discussions/last/topic-5417.html</link>
      <pubDate>Sun, 17 May 2015 08:18:06 +0200</pubDate>
      <author>Hds46</author>
      <guid isPermaLink="true"><![CDATA[https://gmod-fan.com/forum/discussions/last/topic-5417.html]]></guid>
    </item>
  </channel></rss>