<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title>Всё о создании игр</title>
		<link>https://gcup.ru/</link>
		<description>Форум игроделов</description>
		<lastBuildDate>Thu, 24 Jul 2025 08:41:54 GMT</lastBuildDate>
		<generator>uCoz Web-Service</generator>
		<atom:link href="https://gcup.ru/forum/rss" rel="self" type="application/rss+xml" />
		
		<item>
			<title>Адекватность написания скрипта на Python.</title>
			<link>https://gcup.ru/forum/79-104572-1</link>
			<pubDate>Thu, 24 Jul 2025 08:41:54 GMT</pubDate>
			<description>Форум: &lt;a href=&quot;https://gcup.ru/forum/79&quot;&gt;Скриптовые языки программирования&lt;/a&gt;&lt;br /&gt;Автор темы: Томахомэ&lt;br /&gt;Автор последнего сообщения: Искусительница&lt;br /&gt;Количество ответов: 9</description>
			<content:encoded>Задался я, значить, задачей создать с нуля &lt;a class=&quot;link&quot; href=&quot;https://gcup.ru/go?https://disk.yandex.ru/d/jeiKy7YGazV8eQ&quot; title=&quot;https://disk.yandex.ru/d/jeiKy7YGazV8eQ&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;нейросеть-реставратор аудио&lt;/a&gt;. Поскольку сам за Питон не шарю, а &quot;змееводы&quot; и нейроинженеры на дороге не валяются, запросил помощи у Grok&apos;а, который у меня лично хорошо зарекомендовал себя своим умением довольно доходчиво объяснять смысл кода на это раз уже на старых добрых C и M68k ASM, и даже выдавать на них вполне осмысленные строки - понадеялся я на то, что с Питоном он ладит хотя бы примерно так же.&lt;br /&gt;Запрошенный мной скрипт &lt;b&gt;audio_autoencoder.py&lt;/b&gt; должен, вроде как, по логике вещей, обучать модель &lt;b&gt;AuRec&lt;/b&gt; на сравнении &quot;нормального&quot; звукового файла и его искусственно пошакаленной версии. В качестве &quot;аттестата зрелости&quot; для AuRec я выбрал &lt;b&gt;stage2.wav&lt;/b&gt; - рип одного из музыкальных треков игры &lt;a class=&quot;link&quot; href=&quot;https://gcup.ru/go?http://adb.arcadeitalia.net/dettaglio_mame.php?game_name=gaialast&quot; title=&quot;http://adb.arcadeitalia.net/dettaglio_mame.php?game_name=gaialast&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;Gaia: The Last Choice of Earth&lt;/a&gt;, где вся музыка существует только в виде угрёбищнейших ADPCM-сэмплов с частотой дискретизации 6060,(60). И если бы &lt;b&gt;AuRec&lt;/b&gt; заставила бы его звучать прилично - это однозначно свидетельствовало бы, что она как нейрореставратор состоялась.&lt;br /&gt;Однако, сколько бы материала для обучения я ей не подкидывал, при каждом применении скрипта &lt;b&gt;apply_audio_autoencoder.py&lt;/b&gt; файл &lt;b&gt;stage2_recover.wav&lt;/b&gt; всё так же один хрен мало того, что выдаёт какой-то шум, в котором исходник не узнаётся вообще, так ещё и короче последнего в несколько раз.&lt;br /&gt;&lt;br /&gt;Так вот, самая суть вопроса - хоть &lt;b&gt;audio_autoencoder.py&lt;/b&gt; с &lt;b&gt;apply_audio_autoencoder.py&lt;/b&gt; и производят впечатление конвенционально рабочих инструментов, не нуждаются ли они в обширных правках уже человеческими руками, и не генерят ли они просто-напросто мусор вместо того, чтобы обучать модель и применять её?</content:encoded>
			<category>Скриптовые языки программирования</category>
			<dc:creator>Томахомэ</dc:creator>
			<guid>https://gcup.ru/forum/79-104572-1</guid>
		</item>
		<item>
			<title>Создание собственной узконаправленной нейронки с нуля.</title>
			<link>https://gcup.ru/forum/79-104570-1</link>
			<pubDate>Fri, 13 Jun 2025 07:40:04 GMT</pubDate>
			<description>Форум: &lt;a href=&quot;https://gcup.ru/forum/79&quot;&gt;Скриптовые языки программирования&lt;/a&gt;&lt;br /&gt;Автор темы: Томахомэ&lt;br /&gt;Автор последнего сообщения: PapeyChayu&lt;br /&gt;Количество ответов: 1</description>
			<content:encoded>Функция - снятие в формате .pth стиля конкретного автора с пакета его работ и конвертация в этот стиль других изображений. Примерно как это делает &lt;a class=&quot;link&quot; href=&quot;https://gcup.ru/go?https://huggingface.co/lj1995/VoiceConversionWebUI/tree/main&quot; title=&quot;https://huggingface.co/lj1995/VoiceConversionWebUI/tree/main&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;RVC&lt;/a&gt; с голосами.</content:encoded>
			<category>Скриптовые языки программирования</category>
			<dc:creator>Томахомэ</dc:creator>
			<guid>https://gcup.ru/forum/79-104570-1</guid>
		</item>
		<item>
			<title>как изменить формулы?</title>
			<link>https://gcup.ru/forum/79-104235-1</link>
			<pubDate>Sat, 30 Mar 2024 19:39:18 GMT</pubDate>
			<description>Форум: &lt;a href=&quot;https://gcup.ru/forum/79&quot;&gt;Скриптовые языки программирования&lt;/a&gt;&lt;br /&gt;Описание темы: можно ли как-то из формул убрать защиту мобов?&lt;br /&gt;Автор темы: kotiklinok&lt;br /&gt;Автор последнего сообщения: kotiklinok&lt;br /&gt;Количество ответов: 2</description>
			<content:encoded>комьюнити игры Rucoy Online методом проб и ошибок вывели формулы, которым следует игра. Формулы очень точны и выполняют свои задачи. С использованием этих формул уже создано несколько ботов, сайт и еще много чего, но лично мне чего-то не хватает. дело в том, что почти везде используется защита мобов, но чтобы найти нужного моба для взятия его защиты необходимо перебрать всех мобов и сначала найти нужного. я хотел бы узнать можно ли как-то из формул убрать защиту мобов. это поможет написать мне бота для дискорда.&lt;br /&gt;&lt;br /&gt;real_stat = stat + buffs&lt;br /&gt;&lt;br /&gt;min_raw_damage = (real_stat * weapon_atk) / 20 + lvl / 4&lt;br /&gt;max_raw_damage = (real_stat * weapon_atk) / 10 + lvl / 4&lt;br /&gt;max_raw_crit_damage = max_raw_damage * 1.05&lt;br /&gt;&lt;br /&gt;min_damage = max(min_raw_damage - mob_defense, 0)&lt;br /&gt;max_damage = max(max_raw_damage - mob_defense, 0)&lt;br /&gt;max_crit_damage max_damage * 1.05&lt;br /&gt;&lt;br /&gt;accuracy = (max((max_damage / (max_raw_damage - min_raw_damage)), 0) * 0.99) + (min(1.00, (max_crit_damage / (max_raw_crit_damage - max_raw_damage))) * 0.01)&lt;br /&gt;tickrate = int(3600 * (1.0 - (1.0 - accuracy) ** 10))&lt;br /&gt;какой у игрока тикрейт можно узнать с помощью команды в самой игре &lt;br /&gt;&lt;br /&gt;average_damage = accuracy * (0.99 * ((max_damage + min_damage) / 2)) + 0.01 * ((max_crit_damage + max_damage) / 2)&lt;br /&gt;time_to_kill = mob_health / average_damage&lt;br /&gt;&lt;br /&gt;на данный момент я пишу команду для бота для поиска самого эффективного трена. если accuracy выше 0.1749, то тренировку на этом мобе можно считать эффективной, но из-за того, что в расчетах с самого начала используется защита, приходится перебирать каждую группу мобов, чтобы найти необходимого. Я не надеюсь что здесь мне помогут, но все же не спросить будет хуже, чем спросить и не получить ответа&lt;br /&gt;&lt;br /&gt;все имена переменных взяты у первого бота, что использовал формулы. Если есть идеи как их лучше всего назвать - пишите. &lt;br /&gt;если я написал не в том разделе - не пишите это. Лучше скажите где мне написать со своей проблемой.</content:encoded>
			<category>Скриптовые языки программирования</category>
			<dc:creator>kotiklinok</dc:creator>
			<guid>https://gcup.ru/forum/79-104235-1</guid>
		</item>
		<item>
			<title>Как JS-скрипт запустить в нужный момент?</title>
			<link>https://gcup.ru/forum/79-104178-1</link>
			<pubDate>Wed, 29 Nov 2023 13:25:03 GMT</pubDate>
			<description>Форум: &lt;a href=&quot;https://gcup.ru/forum/79&quot;&gt;Скриптовые языки программирования&lt;/a&gt;&lt;br /&gt;Описание темы: jQuery&lt;br /&gt;Автор темы: GameDev2&lt;br /&gt;Автор последнего сообщения: GameDev2&lt;br /&gt;Количество ответов: 8</description>
			<content:encoded>Допустим, у меня есть JS-скрипт &quot;Падает снег&quot;, который подключался на постоянное воспроизведение:&lt;br /&gt;&lt;br /&gt;&lt;script src=&quot;scripts/snow.js&quot;&gt;&lt;/script&gt;&lt;br /&gt;&lt;br /&gt;Как сделать, чтобы он не постоянно шёл, а запускался, например, когда выходит всплывающее окно, например.&lt;br /&gt;&lt;br /&gt;Как-то нужно обрамить код с переменной? И как-то менять её - как?</content:encoded>
			<category>Скриптовые языки программирования</category>
			<dc:creator>GameDev2</dc:creator>
			<guid>https://gcup.ru/forum/79-104178-1</guid>
		</item>
		<item>
			<title>Не срабатывает часть JS кода jquery</title>
			<link>https://gcup.ru/forum/79-104128-1</link>
			<pubDate>Thu, 12 Oct 2023 14:17:09 GMT</pubDate>
			<description>Форум: &lt;a href=&quot;https://gcup.ru/forum/79&quot;&gt;Скриптовые языки программирования&lt;/a&gt;&lt;br /&gt;Описание темы: Web игра &quot;Кто хочет стать миллионером&quot;&lt;br /&gt;Автор темы: GameDev2&lt;br /&gt;Автор последнего сообщения: TLT&lt;br /&gt;Количество ответов: 16</description>
			<content:encoded>Никогда не имел дело разновидностями API для программирования JS в web, поэтому для меня странно, почему не срабатывает часть кода в найденном мною &lt;a class=&quot;link&quot; href=&quot;https://gcup.ru/go?https://github.com/spatocode/millionaire/blob/master/scripts/main.js&quot; title=&quot;https://github.com/spatocode/millionaire/blob/master/scripts/main.js&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;шаблоне&lt;/a&gt; игры:&lt;br /&gt;&lt;br /&gt;&lt;!--uzcode--&gt;&lt;div class=&quot;bbCodeBlock&quot;&gt;&lt;div class=&quot;bbCodeName&quot; style=&quot;padding-left:5px;font-weight:bold;font-size:7pt&quot;&gt;Код&lt;/div&gt;&lt;div class=&quot;codeMessage&quot; style=&quot;border:1px inset;max-height:200px;overflow:auto;&quot;&gt;&lt;!--uzc--&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;resetGame(&amp;#41; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;$(&quot;.modal&quot;&amp;#41;.fadeOut(&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;$(&quot;#game&quot;&amp;#41;.fadeOut(&amp;#41;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;setTimeout(&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;function(&amp;#41;{$(&quot;.welcome&quot;&amp;#41;.fadeIn(600&amp;#41;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;,1000&amp;#41;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;this.enableCallFriendLifeline = true&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;this.enableAskAudienceLifeline = true&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;this.enableFiftyFiftyLifeline = true&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;this.stageLength = 1;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;this.answeredQuestion = &amp;#91;];&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;this.gameLength = $(&quot;.stages button&quot;&amp;#41;.length&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;this.pLen = this.gameLength&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;this.amount = $(&quot;.stages button&quot;&amp;#41;.eq(this.pLen-1&amp;#41;.html(&amp;#41;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;$(&quot;img:hover&quot;&amp;#41;.css(&quot;background-color&quot;,&quot;rgb(250, 121, 0&amp;#41; !important&quot;&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;$(&quot;.fifty&quot;&amp;#41;.attr({&quot;src&quot;:&quot;images/fifty.png&quot;,&quot;onClick&quot;:&quot;game.fifty(&amp;#41;&quot;}&amp;#41;.css(&quot;cursor&quot;,&quot;pointer&quot;&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;$(&quot;.callFriend&quot;&amp;#41;.attr({&quot;src&quot;:&quot;images/call.png&quot;,&quot;onClick&quot;:&quot;game.call_a_friend(&amp;#41;&quot;}&amp;#41;.css(&quot;cursor&quot;,&quot;pointer&quot;&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;}&lt;br /&gt;&lt;!--/uzc--&gt;&lt;/div&gt;&lt;/div&gt;&lt;!--/uzcode--&gt;&lt;br /&gt;&lt;br /&gt;Возможно зависит от jquery.js или vanilla.js типа написания строк, но не срабатывает ни так, ни так...&lt;br /&gt;&lt;br /&gt;Т.е. при проигрыше или победе идет вызов resetGame, но использованные подсказки и текущее положение вопроса (справа по очкам в столбике) так и остаются не сброшенными. Я в эту функции вставлял другие действия, они срабатывали, т.е. вероятно, проблема именно в написании, нужно как-то по-другому писать &quot;this.enableCallFriendLifeline = true&quot; для jquery.&lt;br /&gt;&lt;br /&gt;Конечно, можно найти решение, просто перезагружать страницу, но хотелось бы понять, в чём проблема.&lt;br /&gt;&lt;br /&gt;&lt;img src=&quot;https://i.imgur.com/KYobMdb.png&quot; border=&quot;0&quot; alt=&quot;&quot;/&gt;</content:encoded>
			<category>Скриптовые языки программирования</category>
			<dc:creator>GameDev2</dc:creator>
			<guid>https://gcup.ru/forum/79-104128-1</guid>
		</item>
		<item>
			<title>Нужны советы/идеи по реализации анимации и обрезанию тйлов</title>
			<link>https://gcup.ru/forum/79-103769-1</link>
			<pubDate>Sat, 30 Apr 2022 12:44:06 GMT</pubDate>
			<description>Форум: &lt;a href=&quot;https://gcup.ru/forum/79&quot;&gt;Скриптовые языки программирования&lt;/a&gt;&lt;br /&gt;Автор темы: Alkrip&lt;br /&gt;Автор последнего сообщения: Alkrip&lt;br /&gt;Количество ответов: 0</description>
			<content:encoded>Здравствуйте формучане!&lt;br /&gt;Столкнулся с такой вот проблемой. Есть код для квадратичной тайловой системы. Мне же нужно подогнать его в гексогональную. Может кто-то помочь с написанием кода или хотя бы подкинуть идейку по реализации? Я использовал библиотеку &quot;pytmx&quot; для расшифровки tmx файлов.&lt;br /&gt;Основной код:&lt;br /&gt;&lt;!--uzcode--&gt;&lt;div class=&quot;bbCodeBlock&quot;&gt;&lt;div class=&quot;bbCodeName&quot; style=&quot;padding-left:5px;font-weight:bold;font-size:7pt&quot;&gt;Код&lt;/div&gt;&lt;div class=&quot;codeMessage&quot; style=&quot;border:1px inset;max-height:200px;overflow:auto;&quot;&gt;&lt;!--uzc--&gt; import pygame&lt;br /&gt;import sys&lt;br /&gt;from pytmx.util_pygame import load_pygame&lt;br /&gt;from tiles import Tile&lt;br /&gt;from settings import *&lt;br /&gt; &lt;br /&gt;pygame.init(&amp;#41;&lt;br /&gt;screen = pygame.display.set_mode(((screen_width, screen_height&amp;#41;&amp;#41;, pygame.RESIZABLE&amp;#41;&lt;br /&gt;pygame.display.set_caption(&quot;-&quot;&amp;#41;&lt;br /&gt;clock = pygame.time.Clock(&amp;#41;&lt;br /&gt; &lt;br /&gt;tmx_data = load_pygame(&apos;./data/tmx/level_test.tmx&apos;&amp;#41;&lt;br /&gt;sprite_group = pygame.sprite.Group(&amp;#41;&lt;br /&gt; &lt;br /&gt;for layer in tmx_data.visible_layers:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if hasattr(layer,&apos;data&apos;&amp;#41;:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;for x,y, surf in layer.tiles(&amp;#41;:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;pos = (x * 64 , y * 64&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Tile(pos = pos, surf = surf, groups = sprite_group&amp;#41;&lt;br /&gt; &lt;br /&gt;while True:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;for event in pygame.event.get(&amp;#41;:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if event.type == pygame.QUIT:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;pygame.quit(&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;sys.exit(&amp;#41;&lt;br /&gt; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;screen.fill(BLACK&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;sprite_group.draw(screen&amp;#41;&lt;br /&gt; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;pygame.display.update(&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;clock.tick(FPS&amp;#41;&lt;!--/uzc--&gt;&lt;/div&gt;&lt;/div&gt;&lt;!--/uzcode--&gt;&lt;br /&gt;Тайлы:&lt;br /&gt;&lt;!--uzcode--&gt;&lt;div class=&quot;bbCodeBlock&quot;&gt;&lt;div class=&quot;bbCodeName&quot; style=&quot;padding-left:5px;font-weight:bold;font-size:7pt&quot;&gt;Код&lt;/div&gt;&lt;div class=&quot;codeMessage&quot; style=&quot;border:1px inset;max-height:200px;overflow:auto;&quot;&gt;&lt;!--uzc--&gt;class Tile(pygame.sprite.Sprite&amp;#41;:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;def __init__(self,pos,surf,groups&amp;#41;:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;super(&amp;#41;.__init__(groups&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;self.image = surf&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;self.rect = self.image.get_rect(topleft = pos&amp;#41;&lt;!--/uzc--&gt;&lt;/div&gt;&lt;/div&gt;&lt;!--/uzcode--&gt;</content:encoded>
			<category>Скриптовые языки программирования</category>
			<dc:creator>Alkrip</dc:creator>
			<guid>https://gcup.ru/forum/79-103769-1</guid>
		</item>
		<item>
			<title>ошибка в LUA</title>
			<link>https://gcup.ru/forum/79-103273-1</link>
			<pubDate>Fri, 07 May 2021 16:09:50 GMT</pubDate>
			<description>Форум: &lt;a href=&quot;https://gcup.ru/forum/79&quot;&gt;Скриптовые языки программирования&lt;/a&gt;&lt;br /&gt;Автор темы: EvgenShet&lt;br /&gt;Автор последнего сообщения: maker-rus&lt;br /&gt;Количество ответов: 7</description>
			<content:encoded>первый день изучаю Lua хотел решить такую задачку:&lt;br /&gt;Лучник атакует Воина дальней атакой, находясь в неподвижной точке. Воин&lt;br /&gt;приближается к лучнику с фиксированной скоростью.&lt;br /&gt;Параметры лучника:&lt;br /&gt;● Здоровье 600&lt;br /&gt;● Атака 10 за выстрел&lt;br /&gt;● 25% вероятность x2 урона&lt;br /&gt;● 40% вероятность увернуться от атаки (полностью избежав урон)&lt;br /&gt;Параметры воина:&lt;br /&gt;● Здоровье 800&lt;br /&gt;● Атака 25 за удар&lt;br /&gt;● 50% вероятность заблокировать 7 единиц получаемого урона&lt;br /&gt;В момент начала боя воин находится на расстоянии 60 метров от лучника. Пока воин&lt;br /&gt;успевает сократить дистанцию на 10 метров, лучник делает 2 попадания по воину.&lt;br /&gt;Скорость атаки воина в 2 раза ниже, чем у лучника.&lt;br /&gt;&lt;br /&gt;Написал такой вот код ( делал по одному образцу, но там задача была в разы проще) :&lt;br /&gt;&lt;br /&gt;&lt;!--uzcode--&gt;&lt;div class=&quot;bbCodeBlock&quot;&gt;&lt;div class=&quot;bbCodeName&quot; style=&quot;padding-left:5px;font-weight:bold;font-size:7pt&quot;&gt;Код&lt;/div&gt;&lt;div class=&quot;codeMessage&quot; style=&quot;border:1px inset;max-height:200px;overflow:auto;&quot;&gt;&lt;!--uzc--&gt;--параметры испытаний&lt;br /&gt;iterations = 1500000; -- итерации&lt;br /&gt;timeout_limit = 1000; -- число попыток, если не убили за него, то ничья&lt;br /&gt;distance=60; --расстояние между противниками&lt;br /&gt;&lt;br /&gt;-- статы персонажей&lt;br /&gt;char = {};&lt;br /&gt;char &amp;#91;1] = {};&lt;br /&gt;char &amp;#91;2] = {};&lt;br /&gt;&lt;br /&gt;--лучник&lt;br /&gt;char&amp;#91;1]&amp;#91;&quot;health&quot;] = 600;&lt;br /&gt;char&amp;#91;1]&amp;#91;&quot;damage&quot;] = 10;&lt;br /&gt;char&amp;#91;1]&amp;#91;&quot;chancetohit&quot;] = 1;&lt;br /&gt;char&amp;#91;1]&amp;#91;&quot;chancetocrit&quot;] = 0.25;&lt;br /&gt;char&amp;#91;1]&amp;#91;&quot;chancetosave&quot;] = 0.40;&lt;br /&gt;char&amp;#91;1]&amp;#91;&quot;attackspeed&quot;] = 2;&lt;br /&gt;&lt;br /&gt;char&amp;#91;2]&amp;#91;&quot;health&quot;] = 800;&lt;br /&gt;char&amp;#91;2]&amp;#91;&quot;damage&quot;] = 25;&lt;br /&gt;char&amp;#91;2]&amp;#91;&quot;chancetohit&quot;] = 1;&lt;br /&gt;char&amp;#91;2]&amp;#91;&quot;chancetoreduceto7&quot;] = 0.50;&lt;br /&gt;char&amp;#91;2]&amp;#91;&quot;attackspeed&quot;] = 1;&lt;br /&gt;&lt;br /&gt;-- обнуляем переменные&lt;br /&gt;char_A_wins = 0;&lt;br /&gt;char_B_wins = 0;&lt;br /&gt;char_AB_wins = 0;&lt;br /&gt;timeout_count = 0;&lt;br /&gt;&lt;br /&gt;-- попал юнит или нет&lt;br /&gt;IsDamage = function(chance&amp;#41;&lt;br /&gt;local isdamage1 = false;&lt;br /&gt;local r = math.random(&amp;#41;;&lt;br /&gt;if (r&lt;chance&amp;#41; then&lt;br /&gt;isdamage1 = true;&lt;br /&gt;end&lt;br /&gt;return isdamage1;&lt;br /&gt;end&lt;br /&gt;-- спас бросок&lt;br /&gt;IsSave = function(chance1&amp;#41;&lt;br /&gt;local issave1 = false;&lt;br /&gt;local z = math.random(&amp;#41;;&lt;br /&gt;if (z&gt;chance1&amp;#41; then&lt;br /&gt;issave1 = true;&lt;br /&gt;end&lt;br /&gt;return issave1;&lt;br /&gt;end&lt;br /&gt;--крит&lt;br /&gt;IsCrit = function(chance2&amp;#41;&lt;br /&gt;local iscrit1 = false;&lt;br /&gt;local y = math.random(&amp;#41;;&lt;br /&gt;if (y&lt;chance2&amp;#41; then&lt;br /&gt;iscrit1 = true;&lt;br /&gt;end&lt;br /&gt;return iscrit1;&lt;br /&gt;end&lt;br /&gt;--уменьшение урона&lt;br /&gt;IsReduce = function(chance3&amp;#41;&lt;br /&gt;local isreduce1 = false;&lt;br /&gt;local f = math.random(&amp;#41;;&lt;br /&gt;if (f&lt;chance3&amp;#41; then&lt;br /&gt;iscrit1 = true;&lt;br /&gt;end&lt;br /&gt;return isreduce1;&lt;br /&gt;end&lt;br /&gt;-- &amp;#91;&amp;#91;лучник атакует&lt;br /&gt;&lt;br /&gt;archerAttack=function(&amp;#41;&lt;br /&gt;if(IsCrit(char&amp;#91;1].chancetocrit&amp;#41;&amp;#41; then&lt;br /&gt;if (IsReduce(char&amp;#91;2].chancetoreduceto7&amp;#41;&amp;#41; then char_B_health = char_B_health - (2 * char&amp;#91;1].damage - 7&amp;#41;;&lt;br /&gt;else char_B_health = char_B_health - 2 * char&amp;#91;1].damage; end&lt;br /&gt;else&lt;br /&gt;if (IsReduce (char&amp;#91;2].chancetoreduceto7&amp;#41;&amp;#41; then char_B_health = char_B_health - (char&amp;#91;1].damage - 7&amp;#41;;&lt;br /&gt;else char_B_health = char_B_health - char&amp;#91;1].damage; end&lt;br /&gt;end&lt;br /&gt;return archerAttack;&lt;br /&gt;end&lt;br /&gt;-- воин атакует&lt;br /&gt;WarriorAttack=function(&amp;#41;&lt;br /&gt;if (not(IsSave(char&amp;#91;1].chancetosave&amp;#41;&amp;#41;&amp;#41; then char_A_health = char_A_health - char&amp;#91;2].damage; end&lt;br /&gt;return WarriorAttack;&lt;br /&gt;end&lt;br /&gt;&lt;br /&gt;-- генератор случайных чисел&lt;br /&gt;math.randomseed(os.time(&amp;#41;&amp;#41;;&lt;br /&gt;-- d = расстояние между противниками&lt;br /&gt;for d=1, distance/6 do&lt;br /&gt;local char_A_health = char&amp;#91;1].health;&lt;br /&gt;local char_B_health = char&amp;#91;2].health;&lt;br /&gt;local char_A_dead = false;&lt;br /&gt;local char_B_dead = false;&lt;br /&gt;archerAttack(&amp;#41;;&lt;br /&gt;&lt;br /&gt;end&lt;br /&gt;&lt;br /&gt;-- основной цикл&lt;br /&gt;for i = 1, iterations do&lt;br /&gt;local char_A_health = char&amp;#91;1].health;&lt;br /&gt;local char_B_health =char_B_health;&lt;br /&gt;local char_A_dead = false;&lt;br /&gt;local char_B_dead = false;&lt;br /&gt;&lt;br /&gt;-- i2 = число попыток, если не убили за негото ничья&lt;br /&gt;for i2 = 1, timeout_limit do&lt;br /&gt;archerAttack(&amp;#41;;&lt;br /&gt;archerAttack(&amp;#41;;&lt;br /&gt;WarriorAttack(&amp;#41;;&lt;br /&gt;if (char_A_health&lt;=0&amp;#41; then&lt;br /&gt;char_A_dead = true;&lt;br /&gt;end&lt;br /&gt;if (char_B_health&lt;=0&amp;#41; then&lt;br /&gt;char_B_dead = true;&lt;br /&gt;end&lt;br /&gt;if (char_A_dead or char_B_dead&amp;#41; then&lt;br /&gt;break;&lt;br /&gt;end&lt;br /&gt;end&lt;br /&gt;if (not(char_A_dead&amp;#41;&amp;#41; and( not(char_B_dead&amp;#41;&amp;#41; then&lt;br /&gt;-- считаем ничьи по таймауту отдельно&lt;br /&gt;timeout_count = timeout_count +1;&lt;br /&gt;else&lt;br /&gt;if (char_A_dead and char_B_dead&amp;#41; then&lt;br /&gt;-- ничьи без таймаута&lt;br /&gt;char_AB_wins = char_AB_wins + 1;&lt;br /&gt;else&lt;br /&gt;if (char_A_dead&amp;#41; then&lt;br /&gt;-- победил B&lt;br /&gt;char_B_wins = char_B_wins + 1;&lt;br /&gt;end&lt;br /&gt;if (char_B_dead&amp;#41; then&lt;br /&gt;-- победил A&lt;br /&gt;char_A_wins = char_A_wins + 1;&lt;br /&gt;end&lt;br /&gt;end&lt;br /&gt;end&lt;br /&gt;end&lt;br /&gt;print (&quot;A wins =&quot; .. char_A_wins .. &quot; (&quot; .. (100*char_A_wins/(char_A_wins+char_B_wins+char_AB_wins+timeout_count&amp;#41;&amp;#41; .. &quot;%&amp;#41;&quot;&amp;#41;;&lt;br /&gt;print (&quot;B wins =&quot; .. char_B_wins .. &quot; (&quot; .. (100*char_B_wins/(char_A_wins+char_B_wins+char_AB_wins+timeout_count&amp;#41;&amp;#41; .. &quot;%&amp;#41;&quot;&amp;#41;;&lt;br /&gt;print (&quot;AB wins =&quot; .. char_AB_wins .. &quot; (&quot; .. (100*char_AB_wins/(char_A_wins+char_B_wins+char_AB_wins+timeout_count&amp;#41;&amp;#41; .. &quot;%&amp;#41;&quot;&amp;#41;;&lt;br /&gt;print (&quot;timeout =&quot; .. timeout_count .. &quot; (&quot; .. (100*timeout_count/(char_A_wins+char_B_wins+char_AB_wins+timeout_count&amp;#41;&amp;#41; .. &quot;%&amp;#41;&quot;&amp;#41;;&lt;br /&gt;&lt;!--/uzc--&gt;&lt;/div&gt;&lt;/div&gt;&lt;!--/uzcode--&gt;&lt;br /&gt;&lt;br /&gt;выдает ошибку&lt;br /&gt;lua: fight.lua:76: attempt to perform arithmetic on global &apos;char_B_health&apos; (a nil value)&lt;br /&gt;stack traceback:&lt;br /&gt;fight.lua:76: in function &apos;archerAttack&apos;&lt;br /&gt;fight.lua:96: in main chunk&lt;br /&gt;[C]: ?</content:encoded>
			<category>Скриптовые языки программирования</category>
			<dc:creator>EvgenShet</dc:creator>
			<guid>https://gcup.ru/forum/79-103273-1</guid>
		</item>
		<item>
			<title>Реализация ввода действий игрока в консоли на Python</title>
			<link>https://gcup.ru/forum/79-103135-1</link>
			<pubDate>Wed, 10 Feb 2021 10:03:55 GMT</pubDate>
			<description>Форум: &lt;a href=&quot;https://gcup.ru/forum/79&quot;&gt;Скриптовые языки программирования&lt;/a&gt;&lt;br /&gt;Автор темы: cakeliekcrap&lt;br /&gt;Автор последнего сообщения: maker-rus&lt;br /&gt;Количество ответов: 2</description>
			<content:encoded>Всем доброго времени суток. Пишу для универа текстовую игру на python, среда разработки PyCharm. Проект - текстовая игра, в которой игроку нужно самому писать действия в консоль. У меня есть несколько классов, Player - класс, в котором происходит инициализация игрока, Trader - инициализация торговцев и Town - здесь описана реализация игровых городов. Хотелось бы узнать совета, как лучше реализовать сам набор действий игрока в консоль. Сейчас у меня эта система реализована крайне топорно: у меня есть списки на каждое действие, в которых я описываю максимально возможные варианты действий, затем в основной программе я просто на условных операторах проверяю совпадение введеного текста со словами в списках. Например:&lt;br /&gt;&lt;br /&gt;&lt;!--uzcode--&gt;&lt;div class=&quot;bbCodeBlock&quot;&gt;&lt;div class=&quot;bbCodeName&quot; style=&quot;padding-left:5px;font-weight:bold;font-size:7pt&quot;&gt;Код&lt;/div&gt;&lt;div class=&quot;codeMessage&quot; style=&quot;border:1px inset;max-height:200px;overflow:auto;&quot;&gt;&lt;!--uzc--&gt;&lt;br /&gt;While True:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;player_action = input(&quot;Что Вы хотите сделать?&quot;&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if player_action in goToButcher:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;butcher.talk(&amp;#41;&lt;!--/uzc--&gt;&lt;/div&gt;&lt;/div&gt;&lt;!--/uzcode--&gt;&lt;br /&gt;&lt;br /&gt;Таких действий и ветвлений может быть много, а бесконечные if-elif выглядят очень нечитаемо и неудобно. К тому же есть случаи, когда вместо input(&quot;Что Вы хотите сделать?&quot;) нужно вывести например input(&quot;Введите номер товара&quot;). Вообщем хотелось бы услышать советы по поводу того, как бы лучше все это реализовать, какие-нибудь алгоритмы или что-то в этом роде. Использую в проекте ООП</content:encoded>
			<category>Скриптовые языки программирования</category>
			<dc:creator>cakeliekcrap</dc:creator>
			<guid>https://gcup.ru/forum/79-103135-1</guid>
		</item>
		<item>
			<title>Курс для начинающих - Разработчик Python</title>
			<link>https://gcup.ru/forum/79-102902-1</link>
			<pubDate>Sun, 11 Oct 2020 08:05:44 GMT</pubDate>
			<description>Форум: &lt;a href=&quot;https://gcup.ru/forum/79&quot;&gt;Скриптовые языки программирования&lt;/a&gt;&lt;br /&gt;Автор темы: wetrow1980&lt;br /&gt;Автор последнего сообщения: wetrow1980&lt;br /&gt;Количество ответов: 0</description>
			<content:encoded>Делюсь курсом - &quot;Разработчик Python&apos;&apos; от широко известного образовательного центра &quot;Geekbrains&quot;&lt;br /&gt;Который, на протяжении многих лет, готовит высококлассных программистов с возможностью, последующего &lt;br /&gt;трудоустройства. Подробнее о курсе &lt;a class=&quot;link&quot; href=&quot;https://gcup.ru/go?https://geekbrains.ru/geek_university/python&quot; title=&quot;https://geekbrains.ru/geek_university/python&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;здесь&lt;/a&gt; &lt;br /&gt;Скачать данный курс можно:&lt;br /&gt;1. часть &lt;a class=&quot;link&quot; href=&quot;https://gcup.ru/go?https://turb.cc/2infyl1il7dq.html&quot; title=&quot;https://turb.cc/2infyl1il7dq.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;здесь&lt;/a&gt;&lt;br /&gt;пароль на архив &lt;a class=&quot;link&quot; href=&quot;https://gcup.ru/go?https://prnt.sc/uwkjz5&quot; title=&quot;https://prnt.sc/uwkjz5&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;здесь&lt;/a&gt;&lt;br /&gt;2. часть &lt;a class=&quot;link&quot; href=&quot;https://gcup.ru/go?https://turb.cc/2infyl1il7dq.html&quot; title=&quot;https://turb.cc/2infyl1il7dq.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;здесь&lt;/a&gt;&lt;br /&gt;Пароль на архив &lt;a class=&quot;link&quot; href=&quot;https://gcup.ru/go?https://prnt.sc/uwkkct&quot; title=&quot;https://prnt.sc/uwkkct&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;здесь&lt;/a&gt;&lt;br /&gt;3. часть &lt;a class=&quot;link&quot; href=&quot;https://gcup.ru/go?https://turb.cc/ghu5nagrgii1.html&quot; title=&quot;https://turb.cc/ghu5nagrgii1.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;здесь&lt;/a&gt;&lt;br /&gt;Пароль на архив &lt;a class=&quot;link&quot; href=&quot;https://gcup.ru/go?https://prnt.sc/uwkkp8&quot; title=&quot;https://prnt.sc/uwkkp8&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;здесь&lt;/a&gt;&lt;br /&gt;Этот и другие, отличные видеокурсы всегда доступны в моем телеграмм канале &lt;a class=&quot;link&quot; href=&quot;https://gcup.ru/go?https://t.me/kurslutsie&quot; title=&quot;https://t.me/kurslutsie&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;здесь&lt;/a&gt;</content:encoded>
			<category>Скриптовые языки программирования</category>
			<dc:creator>wetrow1980</dc:creator>
			<guid>https://gcup.ru/forum/79-102902-1</guid>
		</item>
		<item>
			<title>Какие книги мне нужно прочитать для создания игры?</title>
			<link>https://gcup.ru/forum/79-102165-1</link>
			<pubDate>Sun, 08 Dec 2019 16:16:27 GMT</pubDate>
			<description>Форум: &lt;a href=&quot;https://gcup.ru/forum/79&quot;&gt;Скриптовые языки программирования&lt;/a&gt;&lt;br /&gt;Автор темы: Kory2711&lt;br /&gt;Автор последнего сообщения: Kory2711&lt;br /&gt;Количество ответов: 4</description>
			<content:encoded>Скажите, пожалуйста, какие книги про программирование на JS, Php и Mysql нужно прочитать, чтобы потом можно было создать браузерную онлайн игру?</content:encoded>
			<category>Скриптовые языки программирования</category>
			<dc:creator>Kory2711</dc:creator>
			<guid>https://gcup.ru/forum/79-102165-1</guid>
		</item>
		<item>
			<title>ошибка с сейвами... опять - corona SDK (решено)</title>
			<link>https://gcup.ru/forum/79-102140-1</link>
			<pubDate>Mon, 18 Nov 2019 14:35:43 GMT</pubDate>
			<description>Форум: &lt;a href=&quot;https://gcup.ru/forum/79&quot;&gt;Скриптовые языки программирования&lt;/a&gt;&lt;br /&gt;Автор темы: Core&lt;br /&gt;Автор последнего сообщения: Core&lt;br /&gt;Количество ответов: 15</description>
			<content:encoded>Как это исправить? Прошу разъяснять подробнее, тк я очень тупой.&lt;br /&gt;&lt;!--uSpoiler--&gt;&lt;div class=&quot;uSpoilerClosed&quot; id=&quot;uSpoiler8C4gdq&quot;&gt;&lt;div class=&quot;uSpoilerButBl&quot;&gt;&lt;input type=&quot;button&quot; class=&quot;uSpoilerButton&quot; onclick=&quot;if($(&apos;#uSpoiler8C4gdq&apos;)[0]){if ($(&apos;.uSpoilerText&apos;,$(&apos;#uSpoiler8C4gdq&apos;))[0].style.display==&apos;none&apos;){$(&apos;.uSpoilerText&apos;,$(&apos;#uSpoiler8C4gdq&apos;))[0].style.display=&apos;&apos;;$(&apos;.uSpoilerButton&apos;,$(&apos;#uSpoiler8C4gdq&apos;)).val(&apos;Закрыть спойлер&apos;);$(&apos;#uSpoiler8C4gdq&apos;).attr(&apos;class&apos;,&apos;uSpoilerOpened&apos;);}else {$(&apos;.uSpoilerText&apos;,$(&apos;#uSpoiler8C4gdq&apos;))[0].style.display=&apos;none&apos;;$(&apos;.uSpoilerButton&apos;,$(&apos;#uSpoiler8C4gdq&apos;)).val(&apos;Открыть спойлер&apos;);$(&apos;#uSpoiler8C4gdq&apos;).attr(&apos;class&apos;,&apos;uSpoilerClosed&apos;);}}&quot; value=&quot;Открыть спойлер&quot;/&gt;&lt;/div&gt;&lt;div class=&quot;uSpoilerText&quot; style=&quot;display:none;&quot;&gt;&lt;!--ust--&gt;&lt;a class=&quot;link&quot; href=&quot;https://gcup.ru/go?https://radikal.ru&quot; title=&quot;https://radikal.ru&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;https://a.radikal.ru/a39/1911/f8/396186fb24ba.png&quot; border=&quot;0&quot; alt=&quot;&quot;/&gt;&lt;/a&gt;&lt;!--/ust--&gt;&lt;/div&gt;&lt;/div&gt;&lt;!--/uSpoiler--&gt;</content:encoded>
			<category>Скриптовые языки программирования</category>
			<dc:creator>Core</dc:creator>
			<guid>https://gcup.ru/forum/79-102140-1</guid>
		</item>
		<item>
			<title>проблемы с сохранением переменной в txt файле coronaSDK</title>
			<link>https://gcup.ru/forum/79-102139-1</link>
			<pubDate>Sat, 16 Nov 2019 10:15:30 GMT</pubDate>
			<description>Форум: &lt;a href=&quot;https://gcup.ru/forum/79&quot;&gt;Скриптовые языки программирования&lt;/a&gt;&lt;br /&gt;Автор темы: Core&lt;br /&gt;Автор последнего сообщения: Gent&lt;br /&gt;Количество ответов: 3</description>
			<content:encoded>по нажатию на кнопку click, должны набираться очки, но при нажатиях больше одного раза, переменная не выдает больше одного.&lt;br /&gt;Как исправить? Скорее всего ошибка в функции loadSettions.&lt;br /&gt;&lt;br /&gt;main.lua&lt;!--uSpoiler--&gt;&lt;div class=&quot;uSpoilerClosed&quot; id=&quot;uSpoilerH4qWyD&quot;&gt;&lt;div class=&quot;uSpoilerButBl&quot;&gt;&lt;input type=&quot;button&quot; class=&quot;uSpoilerButton&quot; onclick=&quot;if($(&apos;#uSpoilerH4qWyD&apos;)[0]){if ($(&apos;.uSpoilerText&apos;,$(&apos;#uSpoilerH4qWyD&apos;))[0].style.display==&apos;none&apos;){$(&apos;.uSpoilerText&apos;,$(&apos;#uSpoilerH4qWyD&apos;))[0].style.display=&apos;&apos;;$(&apos;.uSpoilerButton&apos;,$(&apos;#uSpoilerH4qWyD&apos;)).val(&apos;Закрыть спойлер&apos;);$(&apos;#uSpoilerH4qWyD&apos;).attr(&apos;class&apos;,&apos;uSpoilerOpened&apos;);}else {$(&apos;.uSpoilerText&apos;,$(&apos;#uSpoilerH4qWyD&apos;))[0].style.display=&apos;none&apos;;$(&apos;.uSpoilerButton&apos;,$(&apos;#uSpoilerH4qWyD&apos;)).val(&apos;Открыть спойлер&apos;);$(&apos;#uSpoilerH4qWyD&apos;).attr(&apos;class&apos;,&apos;uSpoilerClosed&apos;);}}&quot; value=&quot;Открыть спойлер&quot;/&gt;&lt;/div&gt;&lt;div class=&quot;uSpoilerText&quot; style=&quot;display:none;&quot;&gt;&lt;!--ust--&gt;&lt;br /&gt;&lt;!--uzcode--&gt;&lt;div class=&quot;bbCodeBlock&quot;&gt;&lt;div class=&quot;bbCodeName&quot; style=&quot;padding-left:5px;font-weight:bold;font-size:7pt&quot;&gt;Код&lt;/div&gt;&lt;div class=&quot;codeMessage&quot; style=&quot;border:1px inset;max-height:200px;overflow:auto;&quot;&gt;&lt;!--uzc--&gt;&lt;br /&gt;-----------------------------------------------------------&lt;br /&gt;--&lt;br /&gt;-- main.lua -- Clicer&lt;br /&gt;--&lt;br /&gt;-----------------------------------------------------------&lt;br /&gt;&lt;br /&gt;-- Мой говно-код сдесь&lt;br /&gt;&lt;br /&gt;local money = 0&lt;br /&gt;&lt;br /&gt;local auto_money = 0&lt;br /&gt;local auto_money_buy = 110&lt;br /&gt;local auto_money_lvl = 0&lt;br /&gt;&lt;br /&gt;local bonus_money_lvl = 0&lt;br /&gt;local bonus_money_buy = 45&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;local json = require(&quot;json&quot;&amp;#41;&lt;br /&gt;&lt;br /&gt;local function loadSettings(fileName&amp;#41;&lt;br /&gt;&lt;br /&gt;-- Path for the file to read&lt;br /&gt;local path_money_c = system.pathForFile( &quot;money_c.txt&quot;, system.ResourceDirectory &amp;#41;&lt;br /&gt;&lt;br /&gt;-- Open the file handle&lt;br /&gt;local file, errorString = io.open( path_money_c, &quot;r&quot; &amp;#41;&lt;br /&gt;&lt;br /&gt;if not file then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;-- Error occurred; output the cause&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;print( &quot;File error: &quot; .. errorString &amp;#41;&lt;br /&gt;else&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;-- Read data from file&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;money = file:read( &quot;*n&quot; &amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;io.close( file &amp;#41;&lt;br /&gt;end&lt;br /&gt;&lt;br /&gt;file = nil&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return nil&lt;br /&gt;end&lt;br /&gt;&lt;br /&gt;function saveSetting(fileName&amp;#41;&lt;br /&gt;local saveData = money&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;local path_money_c = system.pathForFile( &quot;money_c.txt&quot;, system.ResourceDirectory &amp;#41;&lt;br /&gt;-- Open the file handle&lt;br /&gt;local file, errorString = io.open( path_money_c, &quot;w&quot; &amp;#41;&lt;br /&gt;&lt;br /&gt;if not file then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;-- Error occurred; output the cause&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;print( &quot;File error: &quot; .. errorString &amp;#41;&lt;br /&gt;else&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;-- Write data to file&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;file:write( saveData &amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;-- Close the file handle&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;io.close( file &amp;#41;&lt;br /&gt;end&lt;br /&gt;&lt;br /&gt;file = nil&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;--local path_auto_maney_c = system.pathForFile( &quot;auto_money_c.txt&quot;, system.ResourceDirectory &amp;#41;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;--local path_auto_maney_buy_c = system.pathForFile( &quot;auto_money_buy_c.txt&quot;, system.ResourceDirectory &amp;#41;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;--local path_auto_maney_lvl_c = system.pathForFile( &quot;auto_money_lvl_c.txt&quot;, system.ResourceDirectory &amp;#41;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;--local path_bonus_maney_lvl_c = system.pathForFile( &quot;bonus_money_lvl_c.txt&quot;, system.ResourceDirectory &amp;#41;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;--local path_bonus_maney_buy_c = system.pathForFile( &quot;bonus_money_buy_c.txt&quot;, system.ResourceDirectory &amp;#41;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return nil&lt;br /&gt;end&lt;br /&gt;&lt;br /&gt;local bacg = display.newRect(0,0,1080,1920&amp;#41;&lt;br /&gt;bacg:setFillColor(0.799,0.799,0.799&amp;#41;&lt;br /&gt;&lt;br /&gt;local bacg_m = display.newRect(0,0,1080,100&amp;#41;&lt;br /&gt;bacg_m:setFillColor(0.599,0.599,0.599&amp;#41;&lt;br /&gt;&lt;br /&gt;local button = display.newRect(160,190,175,175&amp;#41;&lt;br /&gt;button:setFillColor(0,0.4,0.3&amp;#41;&lt;br /&gt;&lt;br /&gt;local button_auto = display.newRect(70,400,111,111&amp;#41;&lt;br /&gt;button_auto:setFillColor(0,0.4,0.3&amp;#41;&lt;br /&gt;&lt;br /&gt;local button_bonus = display.newRect(250,400,111,111&amp;#41;&lt;br /&gt;button_bonus:setFillColor(0,0.4,0.3&amp;#41;&lt;br /&gt;&lt;br /&gt;--audio&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;local lvl_up_audio = audio.loadSound(&quot;audio/lvl_up.mp3&quot;&amp;#41;&lt;br /&gt;&lt;br /&gt;--audio end&lt;br /&gt;&lt;br /&gt;------------------------txt&lt;br /&gt;local text = display.newText(&quot;Click&quot;, 161, 190, &quot;consolas&quot;, 30&amp;#41;&lt;br /&gt;text:setFillColor(1,1,1&amp;#41;&lt;br /&gt;&lt;br /&gt;local text1 = display.newText(&quot;Money:&quot;, 64, -19, &quot;consolas&quot;, 30&amp;#41;&lt;br /&gt;text1:setFillColor(0,0.1,0.8&amp;#41;&lt;br /&gt;&lt;br /&gt;local text2 = display.newText(money, 200, -16, &quot;consolas&quot;, 30&amp;#41;&lt;br /&gt;text2:setFillColor(0,0.1,0.8&amp;#41;&lt;br /&gt;&lt;br /&gt;local text3 = display.newText(&quot;Auto&quot;, 70, 370, &quot;consolas&quot;, 30&amp;#41;&lt;br /&gt;text3:setFillColor(1,1,1&amp;#41;&lt;br /&gt;&lt;br /&gt;local text4 = display.newText(&quot;click&quot;, 70, 400, &quot;consolas&quot;, 30&amp;#41;&lt;br /&gt;text4:setFillColor(1,1,1&amp;#41;&lt;br /&gt;&lt;br /&gt;local text5 = display.newText(auto_money_buy, 70, 437, &quot;consolas&quot;, 30&amp;#41;&lt;br /&gt;text5:setFillColor(1,1,1&amp;#41;&lt;br /&gt;&lt;br /&gt;local text6 = display.newText(&quot;Bonus&quot;, 250, 370, &quot;consolas&quot;, 30&amp;#41;&lt;br /&gt;text6:setFillColor(1,1,1&amp;#41;&lt;br /&gt;&lt;br /&gt;local text7 = display.newText(&quot;click&quot;, 250, 400, &quot;consolas&quot;, 30&amp;#41;&lt;br /&gt;text7:setFillColor(1,1,1&amp;#41;&lt;br /&gt;&lt;br /&gt;local text8 = display.newText(bonus_money_buy, 250, 437, &quot;consolas&quot;, 30&amp;#41;&lt;br /&gt;text8:setFillColor(1,1,1&amp;#41;&lt;br /&gt;------------------------txt end&lt;br /&gt;&lt;br /&gt;local button_shadow = display.newRect(160,280,175,10&amp;#41;&lt;br /&gt;button_shadow:setFillColor(0,0.3,0.4&amp;#41;&lt;br /&gt;local button_shadow_auto = display.newRect(70,460,111,10&amp;#41;&lt;br /&gt;button_shadow_auto:setFillColor(0,0.3,0.4&amp;#41;&lt;br /&gt;local button_shadow_bonus = display.newRect(250,460,111,10&amp;#41;&lt;br /&gt;button_shadow_bonus:setFillColor(0,0.3,0.4&amp;#41;&lt;br /&gt;&lt;br /&gt;local copyright = display.newText(&quot;KernelCoreSW 2018-2019&quot;, 163, 490, &quot;consolas&quot;, 23&amp;#41;&lt;br /&gt;copyright:setFillColor(0,0.1,0.8&amp;#41;&lt;br /&gt;&lt;br /&gt;local function flapBird (event&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;if(event.phase == &quot;began&quot;&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;---lvl&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(bonus_money_lvl == 0&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;money = money + 1&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(bonus_money_lvl == 1&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;money = money + 2&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(bonus_money_lvl == 2&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;money = money + 3&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(bonus_money_lvl == 3&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;money = money + 4&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(bonus_money_lvl == 4&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;money = money + 5&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(bonus_money_lvl == 5&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;money = money + 6&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(bonus_money_lvl == 6&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;money = money + 7&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(bonus_money_lvl == 7&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;money = money + 8&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(bonus_money_lvl == 8&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;money = money + 9&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(bonus_money_lvl == 9&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;money = money + 10&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(bonus_money_lvl == 10&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;money = money + 11&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;text2.text = money&lt;br /&gt;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;end&lt;br /&gt;local function flapBird_auto (event&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;if(event.phase == &quot;began&quot;&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(money &gt;= auto_money_buy&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;audio.play(lvl_up_audio&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;money = money - auto_money_buy&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;auto_money_buy = auto_money_buy * 3&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;auto_money_lvl = auto_money_lvl + 1&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;text2.text = money&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;text5.text = auto_money_buy&lt;br /&gt;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;end&lt;br /&gt;local function flapBird_bonus (event&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;if(event.phase == &quot;began&quot;&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(money &gt;= bonus_money_buy&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;audio.play(lvl_up_audio&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;money = money - bonus_money_buy&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;bonus_money_buy = bonus_money_buy * 3&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;bonus_money_lvl = bonus_money_lvl + 1&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;text2.text = money&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;text8.text = bonus_money_buy&lt;br /&gt;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;end&lt;br /&gt;local function onUpdate (args&amp;#41;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(auto_money &gt; 40&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;auto_money = 0&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;end&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;---------levels&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(auto_money_lvl == 1&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;if(auto_money == 40&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;money = money + 1&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;text2.text = money&lt;br /&gt;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(auto_money_lvl == 2&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;if(auto_money == 40&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;money = money + 5&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;text2.text = money&lt;br /&gt;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(auto_money_lvl == 3&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;if(auto_money == 40&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;money = money + 10&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;text2.text = money&lt;br /&gt;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(auto_money_lvl == 4&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;if(auto_money == 40&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;money = money + 16&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;text2.text = money&lt;br /&gt;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(auto_money_lvl == 5&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;if(auto_money == 40&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;money = money + 21&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;text2.text = money&lt;br /&gt;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(auto_money_lvl == 6&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;if(auto_money == 40&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;money = money + 29&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;text2.text = money&lt;br /&gt;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(auto_money_lvl == 7&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;if(auto_money == 40&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;money = money + 36&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;text2.text = money&lt;br /&gt;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(auto_money_lvl == 8&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;if(auto_money == 40&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;money = money + 41&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;text2.text = money&lt;br /&gt;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(auto_money_lvl == 9&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;if(auto_money == 40&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;money = money + 56&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;text2.text = money&lt;br /&gt;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(auto_money_lvl == 10&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;if(auto_money == 40&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;money = money + 61&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;text2.text = money&lt;br /&gt;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(auto_money_lvl == 11&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;if(auto_money == 40&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;money = money + 76&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;text2.text = money&lt;br /&gt;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;---------levels end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;auto_money = auto_money + 1&lt;br /&gt;&lt;br /&gt;end&lt;br /&gt;&lt;br /&gt;button:addEventListener(&quot;touch&quot;, flapBird&amp;#41;&lt;br /&gt;button_auto:addEventListener(&quot;touch&quot;, flapBird_auto&amp;#41;&lt;br /&gt;button_bonus:addEventListener(&quot;touch&quot;, flapBird_bonus&amp;#41;&lt;br /&gt;Runtime:addEventListener(&quot;enterFrame&quot;, onUpdate&amp;#41;&lt;br /&gt;Runtime:addEventListener(&quot;enterFrame&quot;, loadSettings&amp;#41;&lt;br /&gt;&lt;br /&gt;&lt;!--/uzc--&gt;&lt;/div&gt;&lt;/div&gt;&lt;!--/uzcode--&gt; &lt;!--/ust--&gt;&lt;/div&gt;&lt;/div&gt;&lt;!--/uSpoiler--&gt;&lt;br /&gt;money_c.txt&lt;br /&gt;&lt;!--uzcode--&gt;&lt;div class=&quot;bbCodeBlock&quot;&gt;&lt;div class=&quot;bbCodeName&quot; style=&quot;padding-left:5px;font-weight:bold;font-size:7pt&quot;&gt;Код&lt;/div&gt;&lt;div class=&quot;codeMessage&quot; style=&quot;border:1px inset;max-height:200px;overflow:auto;&quot;&gt;&lt;!--uzc--&gt; 0 &lt;br /&gt;&lt;!--/uzc--&gt;&lt;/div&gt;&lt;/div&gt;&lt;!--/uzcode--&gt;</content:encoded>
			<category>Скриптовые языки программирования</category>
			<dc:creator>Core</dc:creator>
			<guid>https://gcup.ru/forum/79-102139-1</guid>
		</item>
		<item>
			<title>lua - attempt to call global &apos;loadSettings&apos; как исправить?</title>
			<link>https://gcup.ru/forum/79-102070-1</link>
			<pubDate>Wed, 23 Oct 2019 10:19:15 GMT</pubDate>
			<description>Форум: &lt;a href=&quot;https://gcup.ru/forum/79&quot;&gt;Скриптовые языки программирования&lt;/a&gt;&lt;br /&gt;Автор темы: Core&lt;br /&gt;Автор последнего сообщения: sfabrikan&lt;br /&gt;Количество ответов: 5</description>
			<content:encoded>При старте моего щидевера вылезает ошибка:&lt;br /&gt;&lt;!--uzquote--&gt;&lt;div class=&quot;bbQuoteBlock&quot;&gt;&lt;div class=&quot;bbQuoteName&quot; style=&quot;padding-left:5px;font-size:7pt&quot;&gt;&lt;b&gt;Цитата&lt;/b&gt; &lt;/div&gt;&lt;div class=&quot;quoteMessage&quot; style=&quot;border:1px inset;max-height:200px;overflow:auto;&quot;&gt;&lt;!--uzq--&gt;main.lua 224 attempt to call global &apos;loadSettings&apos; (a nil value) stack traceback&lt;!--/uzq--&gt;&lt;/div&gt;&lt;/div&gt;&lt;!--/uzquote--&gt;&lt;br /&gt;вот мой код:&lt;br /&gt;&lt;!--uSpoiler--&gt;&lt;div class=&quot;uSpoilerClosed&quot; id=&quot;uSpoilerxJ1IjF&quot;&gt;&lt;div class=&quot;uSpoilerButBl&quot;&gt;&lt;input type=&quot;button&quot; class=&quot;uSpoilerButton&quot; onclick=&quot;if($(&apos;#uSpoilerxJ1IjF&apos;)[0]){if ($(&apos;.uSpoilerText&apos;,$(&apos;#uSpoilerxJ1IjF&apos;))[0].style.display==&apos;none&apos;){$(&apos;.uSpoilerText&apos;,$(&apos;#uSpoilerxJ1IjF&apos;))[0].style.display=&apos;&apos;;$(&apos;.uSpoilerButton&apos;,$(&apos;#uSpoilerxJ1IjF&apos;)).val(&apos;Закрыть спойлер&apos;);$(&apos;#uSpoilerxJ1IjF&apos;).attr(&apos;class&apos;,&apos;uSpoilerOpened&apos;);}else {$(&apos;.uSpoilerText&apos;,$(&apos;#uSpoilerxJ1IjF&apos;))[0].style.display=&apos;none&apos;;$(&apos;.uSpoilerButton&apos;,$(&apos;#uSpoilerxJ1IjF&apos;)).val(&apos;Открыть спойлер&apos;);$(&apos;#uSpoilerxJ1IjF&apos;).attr(&apos;class&apos;,&apos;uSpoilerClosed&apos;);}}&quot; value=&quot;Открыть спойлер&quot;/&gt;&lt;/div&gt;&lt;div class=&quot;uSpoilerText&quot; style=&quot;display:none;&quot;&gt;&lt;!--ust--&gt;&lt;br /&gt;&lt;b&gt;main.lua&lt;/b&gt;&lt;br /&gt;&lt;!--uzcode--&gt;&lt;div class=&quot;bbCodeBlock&quot;&gt;&lt;div class=&quot;bbCodeName&quot; style=&quot;padding-left:5px;font-weight:bold;font-size:7pt&quot;&gt;Код&lt;/div&gt;&lt;div class=&quot;codeMessage&quot; style=&quot;border:1px inset;max-height:200px;overflow:auto;&quot;&gt;&lt;!--uzc--&gt;&lt;br /&gt;-----------------------------------------------------------&lt;br /&gt;--&lt;br /&gt;-- main.lua -- Clicer&lt;br /&gt;--&lt;br /&gt;-----------------------------------------------------------&lt;br /&gt;&lt;br /&gt;-- Мой говно-код сдесь&lt;br /&gt;local money = 0&lt;br /&gt;&lt;br /&gt;local auto_money = 0&lt;br /&gt;local auto_money_lvl = 0&lt;br /&gt;local auto_money_buy = 50&lt;br /&gt;&lt;br /&gt;local bonus_money_lvl = 0&lt;br /&gt;local bonus_money_buy = 35&lt;br /&gt;&lt;br /&gt;local json_pip = require(&quot;json&quot;&amp;#41;&lt;br /&gt;&lt;br /&gt;local bacg = display.newRect(0,0,1080,1920&amp;#41;&lt;br /&gt;local button = display.newRect(160,190,175,175&amp;#41;&lt;br /&gt;button:setFillColor(0,0.4,0.3&amp;#41;&lt;br /&gt;&lt;br /&gt;local button_auto = display.newRect(70,400,111,111&amp;#41;&lt;br /&gt;button_auto:setFillColor(0,0.4,0.3&amp;#41;&lt;br /&gt;&lt;br /&gt;local button_bonus = display.newRect(250,400,111,111&amp;#41;&lt;br /&gt;button_bonus:setFillColor(0,0.4,0.3&amp;#41;&lt;br /&gt;&lt;br /&gt;------------------------txt&lt;br /&gt;local text = display.newText(&quot;Click&quot;, 161, 190, &quot;consolas&quot;, 30&amp;#41;&lt;br /&gt;text:setFillColor(1,1,1&amp;#41;&lt;br /&gt;&lt;br /&gt;local text1 = display.newText(&quot;Money:&quot;, 64, -19, &quot;consolas&quot;, 30&amp;#41;&lt;br /&gt;text1:setFillColor(0,0.1,0.8&amp;#41;&lt;br /&gt;&lt;br /&gt;local text2 = display.newText(money, 200, -16, &quot;consolas&quot;, 30&amp;#41;&lt;br /&gt;text2:setFillColor(0,0.1,0.8&amp;#41;&lt;br /&gt;&lt;br /&gt;local text3 = display.newText(&quot;Auto&quot;, 70, 370, &quot;consolas&quot;, 30&amp;#41;&lt;br /&gt;text3:setFillColor(1,1,1&amp;#41;&lt;br /&gt;&lt;br /&gt;local text4 = display.newText(&quot;click&quot;, 70, 400, &quot;consolas&quot;, 30&amp;#41;&lt;br /&gt;text4:setFillColor(1,1,1&amp;#41;&lt;br /&gt;&lt;br /&gt;local text5 = display.newText(auto_money_buy, 70, 437, &quot;consolas&quot;, 30&amp;#41;&lt;br /&gt;text5:setFillColor(1,1,1&amp;#41;&lt;br /&gt;&lt;br /&gt;local text6 = display.newText(&quot;Bonus&quot;, 250, 370, &quot;consolas&quot;, 30&amp;#41;&lt;br /&gt;text6:setFillColor(1,1,1&amp;#41;&lt;br /&gt;&lt;br /&gt;local text7 = display.newText(&quot;click&quot;, 250, 400, &quot;consolas&quot;, 30&amp;#41;&lt;br /&gt;text7:setFillColor(1,1,1&amp;#41;&lt;br /&gt;&lt;br /&gt;local text8 = display.newText(bonus_money_buy, 250, 437, &quot;consolas&quot;, 30&amp;#41;&lt;br /&gt;text8:setFillColor(1,1,1&amp;#41;&lt;br /&gt;------------------------txt end&lt;br /&gt;&lt;br /&gt;local button_shadow = display.newRect(160,280,175,10&amp;#41;&lt;br /&gt;button_shadow:setFillColor(0,0.3,0.4&amp;#41;&lt;br /&gt;local button_shadow_auto = display.newRect(70,460,111,10&amp;#41;&lt;br /&gt;button_shadow_auto:setFillColor(0,0.3,0.4&amp;#41;&lt;br /&gt;local button_shadow_bonus = display.newRect(250,460,111,10&amp;#41;&lt;br /&gt;button_shadow_bonus:setFillColor(0,0.3,0.4&amp;#41;&lt;br /&gt;&lt;br /&gt;local copyright = display.newText(&quot;KernelCoreSW 2018-2019&quot;, 163, 490, &quot;consolas&quot;, 23&amp;#41;&lt;br /&gt;copyright:setFillColor(0,0.1,0.8&amp;#41;&lt;br /&gt;&lt;br /&gt;local function flapBird (event&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;if(event.phase == &quot;began&quot;&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;---lvl&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(bonus_money_lvl == 0&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;money = money + 1&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(bonus_money_lvl == 1&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;money = money + 2&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(bonus_money_lvl == 2&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;money = money + 3&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(bonus_money_lvl == 3&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;money = money + 4&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(bonus_money_lvl == 4&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;money = money + 5&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(bonus_money_lvl == 5&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;money = money + 6&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(bonus_money_lvl == 6&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;money = money + 7&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(bonus_money_lvl == 7&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;money = money + 8&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(bonus_money_lvl == 8&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;money = money + 9&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(bonus_money_lvl == 9&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;money = money + 10&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(bonus_money_lvl == 10&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;money = money + 11&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;text2.text = money&lt;br /&gt;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;end&lt;br /&gt;local function flapBird_auto (event&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;if(event.phase == &quot;began&quot;&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(money &gt;= auto_money_buy&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;money = money - auto_money_buy&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;auto_money_buy = auto_money_buy * 3&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;auto_money_lvl = auto_money_lvl + 1&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;text2.text = money&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;text5.text = auto_money_buy&lt;br /&gt;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;end&lt;br /&gt;&lt;br /&gt;local function flapBird_bonus (event&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;if(event.phase == &quot;began&quot;&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(money &gt;= bonus_money_buy&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;money = money - bonus_money_buy&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;bonus_money_buy = bonus_money_buy * 3&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;bonus_money_lvl = bonus_money_lvl + 1&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;text2.text = money&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;text8.text = bonus_money_buy&lt;br /&gt;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;end&lt;br /&gt;local function onUpdate (args&amp;#41;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(auto_money &gt; 40&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;auto_money = 0&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;end&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;---------levels&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(auto_money_lvl == 1&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;if(auto_money == 40&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;money = money + 1&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;text2.text = money&lt;br /&gt;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(auto_money_lvl == 2&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;if(auto_money == 40&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;money = money + 5&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;text2.text = money&lt;br /&gt;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(auto_money_lvl == 3&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;if(auto_money == 40&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;money = money + 10&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;text2.text = money&lt;br /&gt;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(auto_money_lvl == 4&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;if(auto_money == 40&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;money = money + 16&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;text2.text = money&lt;br /&gt;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(auto_money_lvl == 5&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;if(auto_money == 40&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;money = money + 21&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;text2.text = money&lt;br /&gt;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(auto_money_lvl == 6&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;if(auto_money == 40&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;money = money + 29&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;text2.text = money&lt;br /&gt;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(auto_money_lvl == 7&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;if(auto_money == 40&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;money = money + 36&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;text2.text = money&lt;br /&gt;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(auto_money_lvl == 8&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;if(auto_money == 40&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;money = money + 41&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;text2.text = money&lt;br /&gt;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(auto_money_lvl == 9&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;if(auto_money == 40&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;money = money + 56&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;text2.text = money&lt;br /&gt;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(auto_money_lvl == 10&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;if(auto_money == 40&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;money = money + 61&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;text2.text = money&lt;br /&gt;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(auto_money_lvl == 11&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;if(auto_money == 40&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;money = money + 76&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;text2.text = money&lt;br /&gt;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;---------levels end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;auto_money = auto_money + 1&lt;br /&gt;&lt;br /&gt;end&lt;br /&gt;local function load_settings(fileName&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;local path = system.pathForFile(fileName, system.ResourceDirectory&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;local contents = &quot;&quot;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;local myTable = {}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;local file = io.open(path, &quot;r&quot;&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(file&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;contents = file:read(&quot;*a&quot;&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;myTable = json.decode(contents&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;io.close(file&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;return myTable&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return nil&lt;br /&gt;end&lt;br /&gt;local settings = loadSettings(&quot;settings.json&quot;&amp;#41;&lt;br /&gt;if(settings&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;money = settings.money&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;auto_money = settings.auto_money&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;auto_money_buy = settings.auto_money_buy&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;auto_money_lvl = settings.auto_money_lvl&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;bonus_money_lvl = settings.bonus_money_lvl&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;bonus_money_buy = settings.bonus_money_buy&lt;br /&gt;&lt;br /&gt;end&lt;br /&gt;button:addEventListener(&quot;touch&quot;, flapBird&amp;#41;&lt;br /&gt;button_auto:addEventListener(&quot;touch&quot;, flapBird_auto&amp;#41;&lt;br /&gt;button_bonus:addEventListener(&quot;touch&quot;, flapBird_bonus&amp;#41;&lt;br /&gt;Runtime:addEventListener(&quot;enterFrame&quot;, onUpdate&amp;#41;&lt;br /&gt;&lt;!--/uzc--&gt;&lt;/div&gt;&lt;/div&gt;&lt;!--/uzcode--&gt;&lt;br /&gt;&lt;b&gt;settings.json&lt;/b&gt;&lt;br /&gt;&lt;!--uzcode--&gt;&lt;div class=&quot;bbCodeBlock&quot;&gt;&lt;div class=&quot;bbCodeName&quot; style=&quot;padding-left:5px;font-weight:bold;font-size:7pt&quot;&gt;Код&lt;/div&gt;&lt;div class=&quot;codeMessage&quot; style=&quot;border:1px inset;max-height:200px;overflow:auto;&quot;&gt;&lt;!--uzc--&gt;&lt;br /&gt;{&quot;money&quot;:228,&quot;auto_money&quot;:0,&quot;auto_money_lvl&quot;:1,&quot;auto_money_buy&quot;:228,&quot;bonus_money_lvl&quot;:1,&quot;bonus_money_buy&quot;:228}&lt;br /&gt;&lt;!--/uzc--&gt;&lt;/div&gt;&lt;/div&gt;&lt;!--/uzcode--&gt;&lt;br /&gt;&lt;!--/ust--&gt;&lt;/div&gt;&lt;/div&gt;&lt;!--/uSpoiler--&gt;</content:encoded>
			<category>Скриптовые языки программирования</category>
			<dc:creator>Core</dc:creator>
			<guid>https://gcup.ru/forum/79-102070-1</guid>
		</item>
		<item>
			<title>найти ошибку в реализаций многопоточности.</title>
			<link>https://gcup.ru/forum/79-102040-1</link>
			<pubDate>Sun, 06 Oct 2019 21:22:13 GMT</pubDate>
			<description>Форум: &lt;a href=&quot;https://gcup.ru/forum/79&quot;&gt;Скриптовые языки программирования&lt;/a&gt;&lt;br /&gt;Описание темы: найти ошибку в реализаций многопоточности.&lt;br /&gt;Автор темы: egor230&lt;br /&gt;Автор последнего сообщения: DivES&lt;br /&gt;Количество ответов: 1</description>
			<content:encoded>Здравствуйте всем. Помогите пожалуйста найти ошибку в реализаций многопоточности.&lt;br /&gt;&lt;br /&gt;Функция foo запускается из цикла основного потока функции main единожды, которая представляет из себя цикл, когда в функции foo вызывается функция yield() она уступает управления основному потоку(функции main ), потом включаем хук приостанавливает основном поток(функцию main ) через n время, уступая управления второму потоку(функции foo ). Всё идёт хорошо до 150 итерации основного потока. Помогите понять где ошибка?&lt;br /&gt;&lt;!--uzcode--&gt;&lt;div class=&quot;bbCodeBlock&quot;&gt;&lt;div class=&quot;bbCodeName&quot; style=&quot;padding-left:5px;font-weight:bold;font-size:7pt&quot;&gt;Код&lt;/div&gt;&lt;div class=&quot;codeMessage&quot; style=&quot;border:1px inset;max-height:200px;overflow:auto;&quot;&gt;&lt;!--uzc--&gt;static int timerfirsttread = 0;// таймер для первого потока.&lt;br /&gt;void LUAHook(lua_State* L, lua_Debug* ar&amp;#41; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;timerfirsttread++;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if (timerfirsttread &gt; 16&amp;#41; {// сколько будет работать первый поток.&lt;br /&gt;&amp;nbsp;&amp;nbsp;timerfirsttread = 0; lua_yield(L, 0&amp;#41;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;};&lt;br /&gt;int my_yield(lua_State* L&amp;#41; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;int args = lua_gettop(L&amp;#41;;args++;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;lua_State* L1 = lua_newthread(L&amp;#41;; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;lua_pushthread(L1&amp;#41;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return lua_yield(L, args&amp;#41;;/* Когда функция C вызывает lua_yield таким образом, запущенная сопрограмма приостанавливает&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;свое выполнение, и вызов lua_resume этой запущенной процедуры возвращается.*/&lt;br /&gt;};&lt;br /&gt;int yield(lua_State* L&amp;#41; {return lua_yield(L, 0&amp;#41;;/*&amp;nbsp;&amp;nbsp;Параметр res - это число значений из стека,&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;которые передаются как результаты lua_resume.*/&lt;br /&gt;};&lt;br /&gt;const char* LUA = R&quot;(&lt;br /&gt;function foo(x&amp;#41;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;x = x or 3&lt;br /&gt;print(&quot; func foo &quot;..x.. &quot; &amp;#92;n&quot;&amp;#41;&lt;br /&gt;for i = 1, x do &lt;br /&gt;print(&quot; func foo &quot;..i..&quot;&amp;#92;n&quot;&amp;#41;&lt;br /&gt;yield(&amp;#41;&lt;br /&gt;end&lt;br /&gt;end&lt;br /&gt;&lt;br /&gt;function main(&amp;#41;&lt;br /&gt;for i = 1, 320 do&lt;br /&gt;x=i*6&lt;br /&gt;print(&quot; func main &quot;..i..&quot;&amp;#92;n&quot;&amp;#41;&lt;br /&gt;if i ==1&lt;br /&gt;then my_yield(foo,40&amp;#41; &lt;br /&gt;end&lt;br /&gt;end&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;#41;&quot;; &lt;br /&gt;int main(int argc, char* argv&amp;#91;]&amp;#41; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;lua_State* L = luaL_newstate(&amp;#41;;/*Функция создает новое Lua состояние. Она вызывает lua_newstate с функцией-*/&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;luaL_openlibs(L&amp;#41;; lua_State* L1 = NULL;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;lua_register(L, &quot;my_yield&quot;, my_yield&amp;#41;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;lua_register(L, &quot;yield&quot;,&amp;nbsp;&amp;nbsp;yield&amp;#41;; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;cout &lt;&lt; &quot;&amp;#92;n&quot;; checkerror(L, LUA&amp;#41;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;lua_getglobal(L, &quot;main&quot;&amp;#41;; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;lua_resume(L, NULL, 0&amp;#41;; /* Запускает и продолжает сопрограмму в данном потоке L. */&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;L1 = lua_tothread(L, -1&amp;#41;; lua_pop(L, 1&amp;#41;; lua_xmove(L, L1, lua_gettop(L&amp;#41;&amp;#41;;lua_remove(L1, 1&amp;#41;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;int args = lua_gettop(L1&amp;#41;;//&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;cout &lt;&lt; args &lt;&lt; endl;// Аргументы.&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;for (int i = 1; i &gt; args; i++&amp;#41; {lua_pushvalue(L1, i&amp;#41;;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;args--;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;res1 = lua_resume(L1, L, args&amp;#41;;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;lua_xmove(L, L1, 1&amp;#41;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;while ( LUA_OK != lua_status(L&amp;#41;&amp;#41; {&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;// пока поток main не завершен.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if (LUA_YIELD == lua_status(L1&amp;#41;&amp;#41; {// если поток 2 на паузе.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;lua_sethook(L, LUAHook, LUA_MASKCOUNT, 6&amp;#41;;//Пауза после 6 итерации. &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;lua_resume(L, L1, 0&amp;#41;; &lt;br /&gt;&amp;nbsp;&amp;nbsp;}// main&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if (LUA_YIELD == lua_status(L&amp;#41;&amp;#41;{// если поток main на паузе.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;lua_sethook(L, LUAHook, LUA_MASKCOUNT, 0&amp;#41;;// отключить хук. &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;lua_resume(L1, L, 0&amp;#41;;// foo&lt;br /&gt;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if (LUA_OK == lua_status(L1&amp;#41;&amp;#41; {// если поток foo&amp;nbsp;&amp;nbsp;завершен.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;lua_sethook(L, LUAHook, LUA_MASKCOUNT, 0&amp;#41;;// отключить хук. &lt;br /&gt;&amp;nbsp;&amp;nbsp;lua_resume(L, NULL, 0&amp;#41;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;lua_settop(L1, 0&amp;#41;; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if (LUA_OK == lua_status(L&amp;#41;&amp;#41; { break; }// если поток main&amp;nbsp;&amp;nbsp;завершен.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;};&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;lua_close(L&amp;#41;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return 0;&lt;br /&gt;};&lt;br /&gt;&lt;!--/uzc--&gt;&lt;/div&gt;&lt;/div&gt;&lt;!--/uzcode--&gt;</content:encoded>
			<category>Скриптовые языки программирования</category>
			<dc:creator>egor230</dc:creator>
			<guid>https://gcup.ru/forum/79-102040-1</guid>
		</item>
		<item>
			<title>Файл Python вылетает после вычисления.</title>
			<link>https://gcup.ru/forum/79-102024-1</link>
			<pubDate>Thu, 03 Oct 2019 21:33:58 GMT</pubDate>
			<description>Форум: &lt;a href=&quot;https://gcup.ru/forum/79&quot;&gt;Скриптовые языки программирования&lt;/a&gt;&lt;br /&gt;Автор темы: Core&lt;br /&gt;Автор последнего сообщения: FlyOfFly&lt;br /&gt;Количество ответов: 9</description>
			<content:encoded>Калькулятор вылетает после того, как провел вычисления.&lt;br /&gt;&lt;span style=&quot;color:red&quot;&gt;поставить input() в конце как видите не помогло&lt;/span&gt;&lt;br /&gt;&lt;!--uzcode--&gt;&lt;div class=&quot;bbCodeBlock&quot;&gt;&lt;div class=&quot;bbCodeName&quot; style=&quot;padding-left:5px;font-weight:bold;font-size:7pt&quot;&gt;Код&lt;/div&gt;&lt;div class=&quot;codeMessage&quot; style=&quot;border:1px inset;max-height:200px;overflow:auto;&quot;&gt;&lt;!--uzc--&gt;&lt;br /&gt;#Дебильный калькулятор v 0.1&lt;br /&gt;what = input(&quot;Что будим делать?(+,-,*,/&amp;#41;: &quot; &amp;#41;&lt;br /&gt;&lt;br /&gt;a = float( input(&quot;Введите первое число: &quot;&amp;#41;&amp;#41;&lt;br /&gt;b = float( input(&quot;Введите второе число: &quot;&amp;#41;&amp;#41;&lt;br /&gt;&lt;br /&gt;if what == &quot;+&quot;:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;c = a + b&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;print(&quot;Результат: &quot; + str(с&amp;#41;&amp;#41; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;input(&quot;Нажмите Enter для выхода.&quot;&amp;#41;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;elif what == &quot;-&quot;:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;c = a - b&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;print(&quot;Результат: &quot; + str(с&amp;#41;&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;input(&quot;Нажмите Enter для выхода.&quot;&amp;#41;&lt;br /&gt;elif what == &quot;*&quot;:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;c = a * b&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;print(&quot;Результат: &quot; + str(с&amp;#41;&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;input(&quot;Нажмите Enter для выхода.&quot;&amp;#41;&lt;br /&gt;elif what == &quot;/&quot;:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;c = a / b&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;print(&quot;Результат: &quot; + str(с&amp;#41;&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;input(&quot;Нажмите Enter для выхода.&quot;&amp;#41;&lt;br /&gt;else:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;print(&quot;Выбран неверный оператор&quot;&amp;#41;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;input(&quot;Нажмите Enter для выхода.&quot;&amp;#41;&lt;br /&gt;&lt;!--/uzc--&gt;&lt;/div&gt;&lt;/div&gt;&lt;!--/uzcode--&gt;&lt;br /&gt;&lt;span style=&quot;font-size:6pt;&quot;&gt;помогите &lt;img rel=&quot;usm&quot; src=&quot;https://gcup.ru/SML/sad.gif&quot; border=&quot;0&quot; align=&quot;absmiddle&quot; alt=&quot;:(&quot; /&gt; ...&lt;/span&gt;</content:encoded>
			<category>Скриптовые языки программирования</category>
			<dc:creator>Core</dc:creator>
			<guid>https://gcup.ru/forum/79-102024-1</guid>
		</item>
		<item>
			<title>Видеокурсы по созданию HTML5 игр</title>
			<link>https://gcup.ru/forum/79-101628-1</link>
			<pubDate>Tue, 14 May 2019 09:00:10 GMT</pubDate>
			<description>Форум: &lt;a href=&quot;https://gcup.ru/forum/79&quot;&gt;Скриптовые языки программирования&lt;/a&gt;&lt;br /&gt;Описание темы: Видеоуроки по разработке игр на JavaScript и Canvas&lt;br /&gt;Автор темы: Wawr&lt;br /&gt;Автор последнего сообщения: Wawr&lt;br /&gt;Количество ответов: 0</description>
			<content:encoded>&lt;a class=&quot;link&quot; href=&quot;https://gcup.ru/go?https://gamedev.land/2019/04/06/breakout/&quot; title=&quot;https://gamedev.land/2019/04/06/breakout/&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://s1.uploadpics.ru/images/b15gnLEHFN.png&quot; border=&quot;0&quot; alt=&quot;&quot;/&gt;&lt;/a&gt;&lt;br /&gt;Всем привет!&lt;br /&gt;&lt;br /&gt;Подготовил серию видеоуроков по разработке простого арканоида на JavaScript.&lt;br /&gt;Курс предназначен для начинающих JavaScript разработчиков, знакомых с HTML и базовыми возможностями JS и желающих освоить возможности Canvas и общие техники игровой разработки.&lt;br /&gt;&lt;br /&gt;Мы напишем весь код на чистом JavaScript с использованием HTML5 canvas без использования сторонних библиотек. В ходе обучения разбираем следующие темы:&lt;br /&gt;&lt;br /&gt;- основы работы с HTML5 canvas&lt;br /&gt;- загрузка, отрисовка и движение спрайтов&lt;br /&gt;- обработка столкновений&lt;br /&gt;- запуск покадровой анимация из spritesheet&lt;br /&gt;- воспроизведение звуков&lt;br /&gt;&lt;br /&gt;Будет полезно пройти этот курс до начала изучения вашего первого HTML5-фреймворка для создания игр. Возможности игровых JS-движков станут намного понятнее, т.к. вы уже будете знать, как они реализованы и что за ними стоит.&lt;br /&gt;&lt;br /&gt;Приятного просмотра и продуктивного обучения!&lt;br /&gt;&lt;br /&gt;&lt;a class=&quot;link&quot; href=&quot;https://gcup.ru/go?https://www.youtube.com/playlist?list=PLylqOn-qjbyWXd7xj6ZHeHpas3_lzXnQB&quot; title=&quot;https://www.youtube.com/playlist?list=PLylqOn-qjbyWXd7xj6ZHeHpas3_lzXnQB&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;Плейлист со всеми уроками&lt;/a&gt;&lt;br /&gt;&lt;a class=&quot;link&quot; href=&quot;https://gcup.ru/go?https://github.com/bolotnikov/breakout/&quot; title=&quot;https://github.com/bolotnikov/breakout/&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;Git&lt;/a&gt;&lt;br /&gt;&lt;a class=&quot;link&quot; href=&quot;https://gcup.ru/go?https://gamedev.land/games/breakout/&quot; title=&quot;https://gamedev.land/games/breakout/&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;Демо игры&lt;/a&gt;&lt;br /&gt;Новые курсы будут постепенно выходить в &lt;a class=&quot;link&quot; href=&quot;https://gcup.ru/go?https://gamedev.land/&quot; title=&quot;https://gamedev.land/&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;моем блоге&lt;/a&gt; и &lt;a class=&quot;link&quot; href=&quot;https://gcup.ru/go?https://vk.com/gamedevland&quot; title=&quot;https://vk.com/gamedevland&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;группе вк&lt;/a&gt;&lt;p&gt;&lt;b&gt;Добавлено&lt;/b&gt; (14 Мая 2019, 12:00)&lt;br /&gt;---------------------------------------------&lt;br /&gt;&lt;a class=&quot;link&quot; href=&quot;https://gcup.ru/go?https://gamedev.land/2019/05/14/snake/&quot; title=&quot;https://gamedev.land/2019/05/14/snake/&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;&lt;br /&gt;&lt;img src=&quot;http://s1.uploadpics.ru/images/ZkIoxiCgjV.png&quot; border=&quot;0&quot; alt=&quot;&quot;/&gt;&lt;br /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Готов следующий курс по разработке HTML5 игр. На этот раз пишем змейку:)&lt;br /&gt;&lt;br /&gt;Данный курс подойдет начинающим JavaScript разработчикам, которые хотят закрепить знания синтаксиса и возможностей языка на практическом примере. Кроме того в курсе разбираются многие фишки, которые будут интересны и более опытным программистам:&lt;br /&gt;&lt;br /&gt;- как адаптировать разрешение игры под любое устройство (уроки 6, 7 и 8)&lt;br /&gt;- как поворичивать спрайты на канвасе под нужным углом через вращение контекста (урок 16)&lt;br /&gt;- как написать прелоадер спрайтов и звуков и загружать игру только по факту загрузки всех ассетов (уроки 3 и 19)&lt;br /&gt;- как правильно предзагружать кастомные шрифты в игру (урок 22)&lt;br /&gt;&lt;br /&gt;Приятного просмотра!&lt;br /&gt;&lt;br /&gt;&lt;a class=&quot;link&quot; href=&quot;https://gcup.ru/go?https://www.youtube.com/playlist?list=PLylqOn-qjbyUyJ9RQ1MHaLx2QxcvycxiD&quot; title=&quot;https://www.youtube.com/playlist?list=PLylqOn-qjbyUyJ9RQ1MHaLx2QxcvycxiD&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;Плейлист со всеми уроками&lt;/a&gt;&lt;br /&gt;&lt;a class=&quot;link&quot; href=&quot;https://gcup.ru/go?https://github.com/bolotnikov/snake&quot; title=&quot;https://github.com/bolotnikov/snake&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;Git&lt;/a&gt;&lt;br /&gt;&lt;a class=&quot;link&quot; href=&quot;https://gcup.ru/go?https://gamedev.land/games/snake/&quot; title=&quot;https://gamedev.land/games/snake/&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;Демо игры&lt;/a&gt;&lt;br /&gt;&lt;a class=&quot;link&quot; href=&quot;https://gcup.ru/go?https://vk.com/gamedevland&quot; title=&quot;https://vk.com/gamedevland&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;Вступайте в группу!&lt;/a&gt;</content:encoded>
			<category>Скриптовые языки программирования</category>
			<dc:creator>Wawr</dc:creator>
			<guid>https://gcup.ru/forum/79-101628-1</guid>
		</item>
		<item>
			<title>Нужно удалить теги с пустым содержанием</title>
			<link>https://gcup.ru/forum/79-101666-1</link>
			<pubDate>Tue, 30 Apr 2019 06:57:08 GMT</pubDate>
			<description>Форум: &lt;a href=&quot;https://gcup.ru/forum/79&quot;&gt;Скриптовые языки программирования&lt;/a&gt;&lt;br /&gt;Описание темы: Javascript и replace&lt;br /&gt;Автор темы: Quad69&lt;br /&gt;Автор последнего сообщения: Quad69&lt;br /&gt;Количество ответов: 2</description>
			<content:encoded>Подскажите, как можно удалить теги с пустым содержанием?&lt;br /&gt;&lt;a class=&quot;link&quot; href=&quot;https://gcup.ru/go?https://ibb.co/jygT0Zc&quot; title=&quot;https://ibb.co/jygT0Zc&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;Скриншот&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;На скриншоте видно теги &lt;Район&gt;&lt;Город&gt;&lt;НаселенныйПункт&gt; а между ними пустота(пробелы, табуляция, переносы строк).&lt;br /&gt;Их нужно все удалить, те теги между которыми что то есть трогать не нужно.&lt;br /&gt;&lt;br /&gt;Пробовал такой код, но он работает не очень:&lt;br /&gt;&lt;!--uzcode--&gt;&lt;div class=&quot;bbCodeBlock&quot;&gt;&lt;div class=&quot;bbCodeName&quot; style=&quot;padding-left:5px;font-weight:bold;font-size:7pt&quot;&gt;Код&lt;/div&gt;&lt;div class=&quot;codeMessage&quot; style=&quot;border:1px inset;max-height:200px;overflow:auto;&quot;&gt;&lt;!--uzc--&gt;document.getElementById(&apos;content&apos;&amp;#41;.value = document.getElementById(&apos;content&apos;&amp;#41;.value.replace(/&amp;#92;&lt;.*?&amp;#92;&gt;.*&amp;#91;&amp;#92;s&amp;#92;v]&lt;&amp;#92;/.*?&amp;#92;&gt;/gm, &apos;&apos;&amp;#41;;&lt;!--/uzc--&gt;&lt;/div&gt;&lt;/div&gt;&lt;!--/uzcode--&gt;</content:encoded>
			<category>Скриптовые языки программирования</category>
			<dc:creator>Quad69</dc:creator>
			<guid>https://gcup.ru/forum/79-101666-1</guid>
		</item>
		<item>
			<title>Система тестов для игрового ИИ на Python</title>
			<link>https://gcup.ru/forum/79-101511-1</link>
			<pubDate>Wed, 27 Feb 2019 14:09:14 GMT</pubDate>
			<description>Форум: &lt;a href=&quot;https://gcup.ru/forum/79&quot;&gt;Скриптовые языки программирования&lt;/a&gt;&lt;br /&gt;Автор темы: t800&lt;br /&gt;Автор последнего сообщения: t800&lt;br /&gt;Количество ответов: 2</description>
			<content:encoded>Всем привет!&lt;br /&gt;&lt;br /&gt;Подкинули задачу протестировать алгоритмы игрового ИИ.&lt;br /&gt;&lt;br /&gt;Соответственно что-то сижу и туплю как это дело все в должном виде должно быть оформлено.&lt;br /&gt;&lt;br /&gt;Ну чтоб не зазря с людей ДЕНЬГИ то брать... &lt;img rel=&quot;usm&quot; src=&quot;https://gcup.ru/SML/smile.gif&quot; border=&quot;0&quot; align=&quot;absmiddle&quot; alt=&quot;:)&quot; /&gt;&lt;br /&gt;&lt;br /&gt;А туплю то вот по какой причине. ИИ то как писать в принципе понятно - ибо когда алгоритмы дали - че тут думать-то - садись себе и кодь, а вот как корректно запилить систему тестов чтобы все было на приемлемом уровне?&lt;br /&gt;&lt;br /&gt;Одним словом кидайте сюды свои ИМХО - на досуге почитаю &lt;img rel=&quot;usm&quot; src=&quot;https://gcup.ru/SML/smile.gif&quot; border=&quot;0&quot; align=&quot;absmiddle&quot; alt=&quot;:)&quot; /&gt;</content:encoded>
			<category>Скриптовые языки программирования</category>
			<dc:creator>t800</dc:creator>
			<guid>https://gcup.ru/forum/79-101511-1</guid>
		</item>
		<item>
			<title>MySQL связать две таблицы</title>
			<link>https://gcup.ru/forum/79-101483-1</link>
			<pubDate>Wed, 20 Feb 2019 15:43:52 GMT</pubDate>
			<description>Форум: &lt;a href=&quot;https://gcup.ru/forum/79&quot;&gt;Скриптовые языки программирования&lt;/a&gt;&lt;br /&gt;Автор темы: Quad69&lt;br /&gt;Автор последнего сообщения: DeadDay&lt;br /&gt;Количество ответов: 14</description>
			<content:encoded>Всем привет!&lt;br /&gt;Подскажите, как связать две таблицы в бд mysql?&lt;br /&gt;Если точнее, то нужно что бы при добавлении записи в основную таблицу, она также появлялась в остальных в таблицах с таким же id.&lt;br /&gt;Обычно я делал это триггерами, но как я понял это не правильное решение.&lt;br /&gt;&lt;span style=&quot;font-size:6pt;&quot;&gt;p.s в вебе я недавно&lt;/span&gt;</content:encoded>
			<category>Скриптовые языки программирования</category>
			<dc:creator>Quad69</dc:creator>
			<guid>https://gcup.ru/forum/79-101483-1</guid>
		</item>
		<item>
			<title>Нахождение среднего значения и стандартного отклонения</title>
			<link>https://gcup.ru/forum/79-101392-1</link>
			<pubDate>Thu, 24 Jan 2019 13:45:25 GMT</pubDate>
			<description>Форум: &lt;a href=&quot;https://gcup.ru/forum/79&quot;&gt;Скриптовые языки программирования&lt;/a&gt;&lt;br /&gt;Автор темы: graniza&lt;br /&gt;Автор последнего сообщения: graniza&lt;br /&gt;Количество ответов: 21</description>
			<content:encoded>Помогите пожалуйста с программой. Задача такая: Напишите программу для нахождения среднего значения и стандартного отклонения оптимального счета в данном пасьянсе. Покажите, что число рассмотренных игр обеспечивает достоверность полученных статистических результатов. Подсчитайте также, если сумеете, среднее число ходов и среднее число точек принятия решения на пути к оптимальному результату. Единственный входной параметр программы — число пасьянсов, которые нужно разложить. Вывод обязательно должен содержать требуемую статистику, но иногда оказываются полезными и другие данные.&lt;br /&gt;Как вариант, я думал сделать сначала пасьянс, а потом уже статистику. То есть две программы, но не знаю будет ли это правильно.&lt;br /&gt;Если кто-то делал подобное, прошу объясните, как это все сделать, пожалуйста. Готов отблагодарить деньгами, сразу же отпишу в лс, если кто напишет хотя бы рабочий код, без объяснений. Желательно сегодня. Молю, прошу.&lt;br /&gt;&lt;!--uzcode--&gt;&lt;div class=&quot;bbCodeBlock&quot;&gt;&lt;div class=&quot;bbCodeName&quot; style=&quot;padding-left:5px;font-weight:bold;font-size:7pt&quot;&gt;Код&lt;/div&gt;&lt;div class=&quot;codeMessage&quot; style=&quot;border:1px inset;max-height:200px;overflow:auto;&quot;&gt;&lt;!--uzc--&gt;from random import randint&lt;br /&gt;&lt;br /&gt;# 52 deck of cards ranked 1-13&lt;br /&gt;# shuffle the deck at game start&lt;br /&gt;# board of 10 spots&lt;br /&gt;# discard pile&lt;br /&gt;# rank: ace=low k=high&lt;br /&gt;# when placing card, every space to left is empty or lower rank&lt;br /&gt;# every space to right is empty or higher rank&lt;br /&gt;# loss = 6th discard&lt;br /&gt;# win = at least one card on every spot on board&lt;br /&gt;&lt;br /&gt;lossCount=0;&lt;br /&gt;winCount=0;&lt;br /&gt;# 10,000 play-thrus&lt;br /&gt;for z in range(0,7&amp;#41;:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;# new deck&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;deck = list(&amp;#41;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;# new discard pile&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;discard = list(&amp;#41;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;# 4 of each card&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;for i in range(1,5&amp;#41;:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;for x in range(1,14&amp;#41;:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;deck.append(x&amp;#41;;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;# shuffling the deck&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;for z in range(0,51&amp;#41;:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;w = randint(z,51&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;tempCard = deck&amp;#91;z];&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;deck&amp;#91;z] = deck&amp;#91;w];&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;deck&amp;#91;w] = tempCard;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;#print deck;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;#print len(deck&amp;#41;;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;# Initializing the board&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;board = &amp;#91;None]*10;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;# Automating card draws from the deck&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;for i in range(0,51&amp;#41;:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;#print board;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;card = deck.pop(&amp;#41;;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;# Place card in it&apos;s corresponding spot if game isn&apos;t over yet&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if (None in board&amp;#41; and (len(discard&amp;#41;&lt;6&amp;#41;:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if len(board&amp;#41;&gt;=card:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;board&amp;#91;card-1] = card;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;else:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;discard.append(card&amp;#41;;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;# Loss conditions&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if len(discard&amp;#41;==6:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;lossCount +=1;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;print (&quot;You lose! :(&quot;&amp;#41;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;# Win conditions&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if ((None in board&amp;#41; == False&amp;#41;:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;winCount +=1;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;print (&quot;You win! :&amp;#41;&quot;&amp;#41;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;print (board&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;print (discard&amp;#41;&lt;br /&gt;print (winCount&amp;#41;;&lt;br /&gt;print (&quot;wins: &quot; + str((100*float(winCount&amp;#41;/float(10&amp;#41;&amp;#41;&amp;#41; +&quot;%&quot;&amp;#41;;&lt;br /&gt;print (&quot;end!&quot;&amp;#41;;&lt;!--/uzc--&gt;&lt;/div&gt;&lt;/div&gt;&lt;!--/uzcode--&gt;&lt;br /&gt;Нашел код пасьянса, не уверен что правильно.&lt;br /&gt;И код статистики:&lt;br /&gt;&lt;!--uzcode--&gt;&lt;div class=&quot;bbCodeBlock&quot;&gt;&lt;div class=&quot;bbCodeName&quot; style=&quot;padding-left:5px;font-weight:bold;font-size:7pt&quot;&gt;Код&lt;/div&gt;&lt;div class=&quot;codeMessage&quot; style=&quot;border:1px inset;max-height:200px;overflow:auto;&quot;&gt;&lt;!--uzc--&gt;#program to calculate the statistical mean, variance, and standard deviation from a text file with a number on each line&lt;br /&gt;import statistics&lt;br /&gt;&lt;br /&gt;#list to store all the students&apos; scores&lt;br /&gt;scores = &amp;#91;]&lt;br /&gt;scoreFile = open(C:&amp;#92;Users&amp;#92;Brandon&amp;#92;Documents&amp;#92;GradingStatistics&amp;#92;studentScores, &apos;r&apos;&amp;#41;&lt;br /&gt;outputFile = open(C:&amp;#92;Users&amp;#92;Brandon&amp;#92;Documents&amp;#92;GradingStatistics&amp;#92;scoreStatistics, &apos;w&apos;&amp;#41;&lt;br /&gt;&lt;br /&gt;for line in scoreFile.readlines(&amp;#41;:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;line = line.strip(&amp;#41; #getting rid of the &amp;#92;n characters&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;scores.append(line&amp;#41;&lt;br /&gt;&lt;br /&gt;#writes a student&apos;s score line by line&lt;br /&gt;def display_scores(scoreList&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;for score in scoreList:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;outputFile.write(score&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;outputFile.write(&quot;&amp;#92;n&quot;&amp;#41;&lt;br /&gt;&lt;br /&gt;def display_average(scoreList&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;average = statistics.mean(scoreList&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;outputFile.write(&quot;Average score: %s&quot;, %average&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;outputFile.write(&quot;&amp;#92;n&quot;&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;def display_variance(scoreList&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;variance = statistics.pvariance(scoreList&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;outputFile.write(&quot;Variance of the scores: %s&quot;, %variance&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;outputFile.write(&quot;&amp;#92;n&quot;&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;def display_stdev(scoreList&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;stdev = statistics.stdev(scoreList&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;outputFile.write(&quot;Standard deviation of the scores: %s&quot;, %stdev&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;outputFile.write(&quot;&amp;#92;n&quot;&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;display_average(scores&amp;#41;&lt;br /&gt;display_stdev(scores&amp;#41;&lt;br /&gt;&lt;br /&gt;scoreFile.close(&amp;#41;&lt;br /&gt;outputFile.close(&amp;#41;&lt;!--/uzc--&gt;&lt;/div&gt;&lt;/div&gt;&lt;!--/uzcode--&gt;&lt;br /&gt;Как это объединить все в одну программу? Нужно сделать так, чтобы задание выполнялось.</content:encoded>
			<category>Скриптовые языки программирования</category>
			<dc:creator>graniza</dc:creator>
			<guid>https://gcup.ru/forum/79-101392-1</guid>
		</item>
		<item>
			<title>просьба накидать русскоязычные материалы по Phaser</title>
			<link>https://gcup.ru/forum/79-97964-1</link>
			<pubDate>Tue, 25 Dec 2018 12:14:41 GMT</pubDate>
			<description>Форум: &lt;a href=&quot;https://gcup.ru/forum/79&quot;&gt;Скриптовые языки программирования&lt;/a&gt;&lt;br /&gt;Описание темы: желательно для совсем нубов.&lt;br /&gt;Автор темы: Bo&lt;br /&gt;Автор последнего сообщения: Zhutiko&lt;br /&gt;Количество ответов: 1</description>
			<content:encoded>Чтобы снять основную массу вопросов:&lt;br /&gt;&lt;br /&gt;1) Я прошел курс по JavaScript на Hexlet (с трудом, я немой и слабослышащий, аудио/видео воспринимать могу но тяжело на самом деле - полчаса подряд - мой максимум) и Codecademy (очень понравилось, интерактивный курс с упражнениями для совсем нубов типа меня). Ну плюс пара книг и онлайн-учебников. &lt;br /&gt;2) На др мне подарили курс от &quot;Zenva learn mobile game development by building 15 game&quot; но тут опять затык. Мало того что это все голосом (фиг бы с ним), но там такой индусский английский =( очень тяжело. Большой плюс - есть все исходники, т.е. что непонятно можно смотреть комментарии и пытаться разораться. &lt;br /&gt;&lt;br /&gt;Но хотелось бы что-то текстовое, очень нубское, а если есть на русском и для нубов - ну вот вообще замечательно.&lt;br /&gt;На оф сайте есть книжка (за деньги), но я свой лимит подарочных денег исчерпал, увы. &lt;br /&gt;Да, я знаю про Google, но может кто уже разбирался и у кого-нибудь есть материалы, чтобы не копаться во всем.&lt;br /&gt;&lt;br /&gt;p.s. Принимаются комментарии типа &quot;для нубов есть вот такой framework/engine c кучей русскоязычной документации и комьюнити&quot;. Unity3D не предлагать.</content:encoded>
			<category>Скриптовые языки программирования</category>
			<dc:creator>Bo</dc:creator>
			<guid>https://gcup.ru/forum/79-97964-1</guid>
		</item>
		<item>
			<title>C++, lua, luabridge передать таблицу из lua в c++ в lua</title>
			<link>https://gcup.ru/forum/79-101254-1</link>
			<pubDate>Wed, 05 Dec 2018 20:54:48 GMT</pubDate>
			<description>Форум: &lt;a href=&quot;https://gcup.ru/forum/79&quot;&gt;Скриптовые языки программирования&lt;/a&gt;&lt;br /&gt;Автор темы: puksus&lt;br /&gt;Автор последнего сообщения: puksus&lt;br /&gt;Количество ответов: 0</description>
			<content:encoded>Уже задал вопрос на &lt;a class=&quot;link&quot; href=&quot;https://gcup.ru/go?https://otvet.mail.ru/question/211866182&quot; title=&quot;https://otvet.mail.ru/question/211866182&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;майл ру&lt;/a&gt;, продублирую тут:&lt;br /&gt;&lt;!--uSpoiler--&gt;&lt;div class=&quot;uSpoilerClosed&quot; id=&quot;uSpoilerZf6AWo&quot;&gt;&lt;div class=&quot;uSpoilerButBl&quot;&gt;&lt;input type=&quot;button&quot; class=&quot;uSpoilerButton&quot; onclick=&quot;if($(&apos;#uSpoilerZf6AWo&apos;)[0]){if ($(&apos;.uSpoilerText&apos;,$(&apos;#uSpoilerZf6AWo&apos;))[0].style.display==&apos;none&apos;){$(&apos;.uSpoilerText&apos;,$(&apos;#uSpoilerZf6AWo&apos;))[0].style.display=&apos;&apos;;$(&apos;.uSpoilerButton&apos;,$(&apos;#uSpoilerZf6AWo&apos;)).val(&apos;Закрыть спойлер&apos;);$(&apos;#uSpoilerZf6AWo&apos;).attr(&apos;class&apos;,&apos;uSpoilerOpened&apos;);}else {$(&apos;.uSpoilerText&apos;,$(&apos;#uSpoilerZf6AWo&apos;))[0].style.display=&apos;none&apos;;$(&apos;.uSpoilerButton&apos;,$(&apos;#uSpoilerZf6AWo&apos;)).val(&apos;Открыть спойлер&apos;);$(&apos;#uSpoilerZf6AWo&apos;).attr(&apos;class&apos;,&apos;uSpoilerClosed&apos;);}}&quot; value=&quot;Открыть спойлер&quot;/&gt;&lt;/div&gt;&lt;div class=&quot;uSpoilerText&quot; style=&quot;display:none;&quot;&gt;&lt;!--ust--&gt;&lt;br /&gt;Пишу игру, в ней будут объекты. Для создания объекта у меня есть LUA скрипт, который вызывается сразу при создании объекта и формирует наш объект так, как требуется; возможно, вызывая в процессе какие то другие функции, функции из движка и т. д, не суть.&lt;br /&gt;На входе эта луа функция принимает аргумент - таблицу, содержащую данные произвольной топологии. Эта таблица содержит дополнительные данные, для создания объекта.&lt;br /&gt;Также движок должен позволять луа скриптам создавать другие объекты, передавая при этом произвольные параметры через таблицу. Алгоритм такой:&lt;br /&gt;&lt;br /&gt;1) идёт итерация игрового цикла, выполняется какой-то скрипт, которому приспичило создать объект&lt;br /&gt;&lt;!--uzcode--&gt;&lt;div class=&quot;bbCodeBlock&quot;&gt;&lt;div class=&quot;bbCodeName&quot; style=&quot;padding-left:5px;font-weight:bold;font-size:7pt&quot;&gt;Код&lt;/div&gt;&lt;div class=&quot;codeMessage&quot; style=&quot;border:1px inset;max-height:200px;overflow:auto;&quot;&gt;&lt;!--uzc--&gt;&lt;br /&gt;function someLuaFunction(&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;local position = {6, 3, 2}&lt;br /&gt;&amp;nbsp;&amp;nbsp;Core.EntitiesManager.createEntity(&quot;testCube&quot;, position&amp;#41;&lt;br /&gt;end&lt;!--/uzc--&gt;&lt;/div&gt;&lt;/div&gt;&lt;!--/uzcode--&gt;&lt;br /&gt;здесь первый параметр - имя создаваемого объекта, второй - та самая таблица произвольной топологии, для разных объектов может иметь разный вид. Для простоты примера пусть будет тупо позиция.&lt;br /&gt;&lt;br /&gt;2) вызывается функция из С++ (Core.EntitiesManager.createEntity), которая создаёт пустой объект, затем по имени объекта ищет подходящий скрипт для создания объекта с соответствующим именем, ищет в нём функцию onCreate и вызывает, ПЕРЕДАВ В НЕЁ идишник объекта И полученную таблицу. Упрощённо говоря:&lt;br /&gt;&lt;!--uzcode--&gt;&lt;div class=&quot;bbCodeBlock&quot;&gt;&lt;div class=&quot;bbCodeName&quot; style=&quot;padding-left:5px;font-weight:bold;font-size:7pt&quot;&gt;Код&lt;/div&gt;&lt;div class=&quot;codeMessage&quot; style=&quot;border:1px inset;max-height:200px;overflow:auto;&quot;&gt;&lt;!--uzc--&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;void EntitiesManager::createEntity( lua_State* params&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;object = new чото там&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;int id = objBuffer.push_back(object&amp;#41;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;luabridge::luaRef ref = достать из params первый аргумент - строку: имя объекта и найти по этому имени подходящий скрипт для создания&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;// Как достать второй аргумент - таблицу из params и послать её на вход onCreate(&amp;#41;?&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ref (id, ..&amp;#41;;&lt;br /&gt;}&lt;!--/uzc--&gt;&lt;/div&gt;&lt;/div&gt;&lt;!--/uzcode--&gt;&lt;br /&gt;&lt;br /&gt;3) функция onCreate из нужного скрипта вызывается, имея на входе идишник и таблицу&lt;br /&gt;&lt;!--uzcode--&gt;&lt;div class=&quot;bbCodeBlock&quot;&gt;&lt;div class=&quot;bbCodeName&quot; style=&quot;padding-left:5px;font-weight:bold;font-size:7pt&quot;&gt;Код&lt;/div&gt;&lt;div class=&quot;codeMessage&quot; style=&quot;border:1px inset;max-height:200px;overflow:auto;&quot;&gt;&lt;!--uzc--&gt;function testCube.onCreate(id, position&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;Core.EntitiesManager.setObjPosition(id, position&amp;#41;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;Core.ThrowError(&quot;луа психанул и кинул исключение без веской причины, наслаждайтесь&quot;&amp;#41;;&lt;br /&gt;end&lt;!--/uzc--&gt;&lt;/div&gt;&lt;/div&gt;&lt;!--/uzcode--&gt;&lt;br /&gt;&lt;br /&gt;Собсно вопрос - как реализовать пункт 2)&lt;br /&gt;Тобишь, как достать из lua_State аргумент-таблицу произвольной топологии и ничего в ней не меняя послать в функцию в луа в качестве аргумента&lt;br /&gt;&lt;br /&gt;Перегуглил весь гугел - ничего не нашёл, а свободного времени мало чтобы досконально во всём разбираться...&lt;br /&gt;&lt;!--/ust--&gt;&lt;/div&gt;&lt;/div&gt;&lt;!--/uSpoiler--&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Добавлено&lt;/b&gt; (05 Декабря 2018, 01:25)&lt;br /&gt;---------------------------------------------&lt;br /&gt;Можно конечно обойти проблему так:&lt;br /&gt;1) просим движок создать объект и возвратить идишник&lt;br /&gt;2) НАПРЯМУЮ вызываем скрипт создания нужного объекта в луа&lt;br /&gt;&lt;br /&gt;Но:&lt;br /&gt;1) Это злостный костыль&lt;br /&gt;2) это 2 строки луа кода вместо одной. (ну, тут можно обернуть в отдельную функцию)&lt;br /&gt;3) всё равно хочется узнать ответ на вопрос в топе ибо могут в дальнейшем возникнуть похожие ситуации - всё время костылить чтоль?&lt;br /&gt;&lt;br /&gt;Впрочем, работать такой подход будет чуть быстрее&lt;p&gt;&lt;b&gt;Добавлено&lt;/b&gt; (05 Декабря 2018, 23:54)&lt;br /&gt;---------------------------------------------&lt;br /&gt;Нашёл ответ на свой вопрос сам: пришлось всё-таки разбираться и ковыряться в луа стеке.&lt;br /&gt;&lt;br /&gt;Итак: Вот пример функции, которая решила создать объект&lt;br /&gt;&lt;!--uSpoiler--&gt;&lt;div class=&quot;uSpoilerClosed&quot; id=&quot;uSpoilerVX4zjQ&quot;&gt;&lt;div class=&quot;uSpoilerButBl&quot;&gt;&lt;input type=&quot;button&quot; class=&quot;uSpoilerButton&quot; onclick=&quot;if($(&apos;#uSpoilerVX4zjQ&apos;)[0]){if ($(&apos;.uSpoilerText&apos;,$(&apos;#uSpoilerVX4zjQ&apos;))[0].style.display==&apos;none&apos;){$(&apos;.uSpoilerText&apos;,$(&apos;#uSpoilerVX4zjQ&apos;))[0].style.display=&apos;&apos;;$(&apos;.uSpoilerButton&apos;,$(&apos;#uSpoilerVX4zjQ&apos;)).val(&apos;Закрыть спойлер&apos;);$(&apos;#uSpoilerVX4zjQ&apos;).attr(&apos;class&apos;,&apos;uSpoilerOpened&apos;);}else {$(&apos;.uSpoilerText&apos;,$(&apos;#uSpoilerVX4zjQ&apos;))[0].style.display=&apos;none&apos;;$(&apos;.uSpoilerButton&apos;,$(&apos;#uSpoilerVX4zjQ&apos;)).val(&apos;Открыть спойлер&apos;);$(&apos;#uSpoilerVX4zjQ&apos;).attr(&apos;class&apos;,&apos;uSpoilerClosed&apos;);}}&quot; value=&quot;Открыть спойлер&quot;/&gt;&lt;/div&gt;&lt;div class=&quot;uSpoilerText&quot; style=&quot;display:none;&quot;&gt;&lt;!--ust--&gt;&lt;br /&gt;&lt;!--uzcode--&gt;&lt;div class=&quot;bbCodeBlock&quot;&gt;&lt;div class=&quot;bbCodeName&quot; style=&quot;padding-left:5px;font-weight:bold;font-size:7pt&quot;&gt;Код&lt;/div&gt;&lt;div class=&quot;codeMessage&quot; style=&quot;border:1px inset;max-height:200px;overflow:auto;&quot;&gt;&lt;!--uzc--&gt;&lt;br /&gt;a = function (&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if zz == nil then&lt;br /&gt;&amp;nbsp;&amp;nbsp;local h = Core.Vector2(400.0, 300.0&amp;#41;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;zz = Core.EntitiesManager.createEntity(&quot;testEntity&quot;, h&amp;#41;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;end &lt;br /&gt;end&lt;br /&gt;&lt;!--/uzc--&gt;&lt;/div&gt;&lt;/div&gt;&lt;!--/uzcode--&gt;&lt;br /&gt;создаём юзердату-позицию, вызываем Core.EntitiesManager.createEntity, которая возвращает юзердату-идишник.&lt;br /&gt;&lt;!--/ust--&gt;&lt;/div&gt;&lt;/div&gt;&lt;!--/uSpoiler--&gt;&lt;br /&gt;&lt;br /&gt;Вот сбайнденная Core.EntitiesManager.createEntity в движке:&lt;br /&gt;&lt;!--uSpoiler--&gt;&lt;div class=&quot;uSpoilerClosed&quot; id=&quot;uSpoilerHwo6OY&quot;&gt;&lt;div class=&quot;uSpoilerButBl&quot;&gt;&lt;input type=&quot;button&quot; class=&quot;uSpoilerButton&quot; onclick=&quot;if($(&apos;#uSpoilerHwo6OY&apos;)[0]){if ($(&apos;.uSpoilerText&apos;,$(&apos;#uSpoilerHwo6OY&apos;))[0].style.display==&apos;none&apos;){$(&apos;.uSpoilerText&apos;,$(&apos;#uSpoilerHwo6OY&apos;))[0].style.display=&apos;&apos;;$(&apos;.uSpoilerButton&apos;,$(&apos;#uSpoilerHwo6OY&apos;)).val(&apos;Закрыть спойлер&apos;);$(&apos;#uSpoilerHwo6OY&apos;).attr(&apos;class&apos;,&apos;uSpoilerOpened&apos;);}else {$(&apos;.uSpoilerText&apos;,$(&apos;#uSpoilerHwo6OY&apos;))[0].style.display=&apos;none&apos;;$(&apos;.uSpoilerButton&apos;,$(&apos;#uSpoilerHwo6OY&apos;)).val(&apos;Открыть спойлер&apos;);$(&apos;#uSpoilerHwo6OY&apos;).attr(&apos;class&apos;,&apos;uSpoilerClosed&apos;);}}&quot; value=&quot;Открыть спойлер&quot;/&gt;&lt;/div&gt;&lt;div class=&quot;uSpoilerText&quot; style=&quot;display:none;&quot;&gt;&lt;!--ust--&gt;&lt;br /&gt;&lt;!--uzcode--&gt;&lt;div class=&quot;bbCodeBlock&quot;&gt;&lt;div class=&quot;bbCodeName&quot; style=&quot;padding-left:5px;font-weight:bold;font-size:7pt&quot;&gt;Код&lt;/div&gt;&lt;div class=&quot;codeMessage&quot; style=&quot;border:1px inset;max-height:200px;overflow:auto;&quot;&gt;&lt;!--uzc--&gt;&lt;br /&gt;int createEntity(lua_State* state&amp;#41;&lt;br /&gt;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;lua_settop(state, 2&amp;#41;; // Получаем тока 2 аргумента - имя объекта и таблица, остальное убиваем из стека&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;const char* objName = luaL_checkstring(state, 1&amp;#41;;&amp;nbsp;&amp;nbsp;// Достаём первый аргумент - имя объекта&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;lua_remove(state, 1&amp;#41;; // Убираем первый аргумент чтоб не мешался. Теперь в стеке только таблица&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;StorageId id = context.entitiesManager(&amp;#41;.createEntity(objName, state&amp;#41;; // Создаём объект&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;luabridge::push(state, id&amp;#41;; // Возвращаем идишник объекта (то что в луа скрипте присваивается переменной zz &amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return 1; // Указываем, что вернули одно значение&lt;br /&gt;}&lt;br /&gt;&lt;!--/uzc--&gt;&lt;/div&gt;&lt;/div&gt;&lt;!--/uzcode--&gt;&lt;br /&gt;&lt;!--/ust--&gt;&lt;/div&gt;&lt;/div&gt;&lt;!--/uSpoiler--&gt;&lt;br /&gt;&lt;br /&gt;А вот как выглядит непосредственно функция создания объекта&lt;br /&gt;&lt;!--uSpoiler--&gt;&lt;div class=&quot;uSpoilerClosed&quot; id=&quot;uSpoilerqJQTsN&quot;&gt;&lt;div class=&quot;uSpoilerButBl&quot;&gt;&lt;input type=&quot;button&quot; class=&quot;uSpoilerButton&quot; onclick=&quot;if($(&apos;#uSpoilerqJQTsN&apos;)[0]){if ($(&apos;.uSpoilerText&apos;,$(&apos;#uSpoilerqJQTsN&apos;))[0].style.display==&apos;none&apos;){$(&apos;.uSpoilerText&apos;,$(&apos;#uSpoilerqJQTsN&apos;))[0].style.display=&apos;&apos;;$(&apos;.uSpoilerButton&apos;,$(&apos;#uSpoilerqJQTsN&apos;)).val(&apos;Закрыть спойлер&apos;);$(&apos;#uSpoilerqJQTsN&apos;).attr(&apos;class&apos;,&apos;uSpoilerOpened&apos;);}else {$(&apos;.uSpoilerText&apos;,$(&apos;#uSpoilerqJQTsN&apos;))[0].style.display=&apos;none&apos;;$(&apos;.uSpoilerButton&apos;,$(&apos;#uSpoilerqJQTsN&apos;)).val(&apos;Открыть спойлер&apos;);$(&apos;#uSpoilerqJQTsN&apos;).attr(&apos;class&apos;,&apos;uSpoilerClosed&apos;);}}&quot; value=&quot;Открыть спойлер&quot;/&gt;&lt;/div&gt;&lt;div class=&quot;uSpoilerText&quot; style=&quot;display:none;&quot;&gt;&lt;!--ust--&gt;&lt;br /&gt;&lt;!--uzcode--&gt;&lt;div class=&quot;bbCodeBlock&quot;&gt;&lt;div class=&quot;bbCodeName&quot; style=&quot;padding-left:5px;font-weight:bold;font-size:7pt&quot;&gt;Код&lt;/div&gt;&lt;div class=&quot;codeMessage&quot; style=&quot;border:1px inset;max-height:200px;overflow:auto;&quot;&gt;&lt;!--uzc--&gt;&lt;br /&gt;void Entity::runCreateScript(StorageId id, lua_State* state&amp;#41;&lt;br /&gt;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;context.entitiesManager(&amp;#41;.getObjectsDataRef(&amp;#41;&amp;#91;id.uid] = luabridge::newTable(context.sharedVariables(&amp;#41;.runtimeState&amp;#41;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if (idOnCreate_ &gt;= 0&amp;#41;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;if (!state&amp;#41;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;refs_&amp;#91;idOnCreate_](id&amp;#41;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;else{&lt;br /&gt;// Интересующий код начинается здесь&lt;br /&gt;// Сейчас в стеке лежит только таблица&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;refs_&amp;#91;idOnCreate_].push(state&amp;#41;; // Пихаем в стек функцию testEntity.onCreate&lt;br /&gt;// Сейчас в стеке лежит таблица, затем функция&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;luabridge::push(state, id&amp;#41;; // Пихаем в стек идишник&lt;br /&gt;// Сейчас в стеке лежит таблица, затем функция, затем идишник&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;lua_insert(state, 1&amp;#41;; // перемещаем идишник в начало стека&lt;br /&gt;// Сейчас в стеке лежит идишник, затем таблица, затем функция &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;lua_insert(state, 1&amp;#41;; // перемещаем функцию в начало стека&lt;br /&gt;// Сейчас в стеке лежит функция, затем идишник, затем таблица &lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;int code = lua_pcall(state, 2, 0, 0&amp;#41;; // вызываем функцию, передав идишник и таблицу&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;if (code != 0&amp;#41;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;const char* error = luaL_checkstring(state, -1&amp;#41;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;throwString(&quot;Entity::runCreateScript %s&quot;, error&amp;#41;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;}&lt;br /&gt;&lt;!--/uzc--&gt;&lt;/div&gt;&lt;/div&gt;&lt;!--/uzcode--&gt;&lt;br /&gt;&lt;!--/ust--&gt;&lt;/div&gt;&lt;/div&gt;&lt;!--/uSpoiler--&gt;&lt;br /&gt;&lt;br /&gt;Вот так выглядит код вызванного testEntity.onCreate&lt;br /&gt;&lt;!--uSpoiler--&gt;&lt;div class=&quot;uSpoilerClosed&quot; id=&quot;uSpoilerDEcT8L&quot;&gt;&lt;div class=&quot;uSpoilerButBl&quot;&gt;&lt;input type=&quot;button&quot; class=&quot;uSpoilerButton&quot; onclick=&quot;if($(&apos;#uSpoilerDEcT8L&apos;)[0]){if ($(&apos;.uSpoilerText&apos;,$(&apos;#uSpoilerDEcT8L&apos;))[0].style.display==&apos;none&apos;){$(&apos;.uSpoilerText&apos;,$(&apos;#uSpoilerDEcT8L&apos;))[0].style.display=&apos;&apos;;$(&apos;.uSpoilerButton&apos;,$(&apos;#uSpoilerDEcT8L&apos;)).val(&apos;Закрыть спойлер&apos;);$(&apos;#uSpoilerDEcT8L&apos;).attr(&apos;class&apos;,&apos;uSpoilerOpened&apos;);}else {$(&apos;.uSpoilerText&apos;,$(&apos;#uSpoilerDEcT8L&apos;))[0].style.display=&apos;none&apos;;$(&apos;.uSpoilerButton&apos;,$(&apos;#uSpoilerDEcT8L&apos;)).val(&apos;Открыть спойлер&apos;);$(&apos;#uSpoilerDEcT8L&apos;).attr(&apos;class&apos;,&apos;uSpoilerClosed&apos;);}}&quot; value=&quot;Открыть спойлер&quot;/&gt;&lt;/div&gt;&lt;div class=&quot;uSpoilerText&quot; style=&quot;display:none;&quot;&gt;&lt;!--ust--&gt;&lt;br /&gt;&lt;!--uzcode--&gt;&lt;div class=&quot;bbCodeBlock&quot;&gt;&lt;div class=&quot;bbCodeName&quot; style=&quot;padding-left:5px;font-weight:bold;font-size:7pt&quot;&gt;Код&lt;/div&gt;&lt;div class=&quot;codeMessage&quot; style=&quot;border:1px inset;max-height:200px;overflow:auto;&quot;&gt;&lt;!--uzc--&gt;&lt;br /&gt;testEntity.onCreate = function(id, pos&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Core.Messaging.printMessage(&quot;ggg &quot;..pos.x, &quot;error&quot;&amp;#41;;&lt;br /&gt;end&lt;br /&gt;&lt;!--/uzc--&gt;&lt;/div&gt;&lt;/div&gt;&lt;!--/uzcode--&gt;&lt;br /&gt;Выводим сообщение на экран&lt;br /&gt;&lt;!--/ust--&gt;&lt;/div&gt;&lt;/div&gt;&lt;!--/uSpoiler--&gt;&lt;br /&gt;&lt;br /&gt;И вот (правильный!) результат на экране:&lt;br /&gt;&lt;!--uSpoiler--&gt;&lt;div class=&quot;uSpoilerClosed&quot; id=&quot;uSpoilerV18zF6&quot;&gt;&lt;div class=&quot;uSpoilerButBl&quot;&gt;&lt;input type=&quot;button&quot; class=&quot;uSpoilerButton&quot; onclick=&quot;if($(&apos;#uSpoilerV18zF6&apos;)[0]){if ($(&apos;.uSpoilerText&apos;,$(&apos;#uSpoilerV18zF6&apos;))[0].style.display==&apos;none&apos;){$(&apos;.uSpoilerText&apos;,$(&apos;#uSpoilerV18zF6&apos;))[0].style.display=&apos;&apos;;$(&apos;.uSpoilerButton&apos;,$(&apos;#uSpoilerV18zF6&apos;)).val(&apos;Закрыть спойлер&apos;);$(&apos;#uSpoilerV18zF6&apos;).attr(&apos;class&apos;,&apos;uSpoilerOpened&apos;);}else {$(&apos;.uSpoilerText&apos;,$(&apos;#uSpoilerV18zF6&apos;))[0].style.display=&apos;none&apos;;$(&apos;.uSpoilerButton&apos;,$(&apos;#uSpoilerV18zF6&apos;)).val(&apos;Открыть спойлер&apos;);$(&apos;#uSpoilerV18zF6&apos;).attr(&apos;class&apos;,&apos;uSpoilerClosed&apos;);}}&quot; value=&quot;Открыть спойлер&quot;/&gt;&lt;/div&gt;&lt;div class=&quot;uSpoilerText&quot; style=&quot;display:none;&quot;&gt;&lt;!--ust--&gt;&lt;br /&gt;&lt;img src=&quot;https://i.imgur.com/lqxfHPt.jpg&quot; border=&quot;0&quot; alt=&quot;&quot;/&gt;&lt;br /&gt;&lt;!--/ust--&gt;&lt;/div&gt;&lt;/div&gt;&lt;!--/uSpoiler--&gt;</content:encoded>
			<category>Скриптовые языки программирования</category>
			<dc:creator>puksus</dc:creator>
			<guid>https://gcup.ru/forum/79-101254-1</guid>
		</item>
		<item>
			<title>Программирование на Tcl&apos;Tk</title>
			<link>https://gcup.ru/forum/79-97923-1</link>
			<pubDate>Fri, 02 Nov 2018 13:23:31 GMT</pubDate>
			<description>Форум: &lt;a href=&quot;https://gcup.ru/forum/79&quot;&gt;Скриптовые языки программирования&lt;/a&gt;&lt;br /&gt;Описание темы: Проба сил ...&lt;br /&gt;Автор темы: colencor&lt;br /&gt;Автор последнего сообщения: colencor&lt;br /&gt;Количество ответов: 4</description>
			<content:encoded>Это приложение является GUI для сами знаете чего ... &lt;img rel=&quot;usm&quot; src=&quot;https://gcup.ru/SML/smile.gif&quot; border=&quot;0&quot; align=&quot;absmiddle&quot; alt=&quot;:)&quot; /&gt;&lt;br /&gt;Поставьте на выполнение и увидите ...&lt;br /&gt;Если не знаете - тем более на выполнение!&lt;br /&gt;&lt;!--uzcode--&gt;&lt;div class=&quot;bbCodeBlock&quot;&gt;&lt;div class=&quot;bbCodeName&quot; style=&quot;padding-left:5px;font-weight:bold;font-size:7pt&quot;&gt;Код&lt;/div&gt;&lt;div class=&quot;codeMessage&quot; style=&quot;border:1px inset;max-height:200px;overflow:auto;height:expression(this.scrollHeight&lt;5?this.style.height:scrollHeight&gt;200?&apos;200px&apos;:&apos;&apos;+(this.scrollHeight+5)+&apos;px&apos;);&quot;&gt;&lt;!--uzc--&gt;source &amp;#91;file join &amp;#91;file dirname &amp;#91;info script]] arab_rim.tcl]&lt;br /&gt;source &amp;#91;file join &amp;#91;file dirname &amp;#91;info script]] rim_arab.tcl]&lt;br /&gt;package require Tk&lt;br /&gt;set w .filebox&lt;br /&gt;catch {destroy $w}&lt;br /&gt;toplevel $w&lt;br /&gt;wm title $w &quot;Из римских в арабские!&quot;&lt;br /&gt;wm iconname $w &quot;filebox&quot;&lt;br /&gt;ttk::frame $w._bg&lt;br /&gt;place $w._bg -x 0 -y 0 -relwidth 1 -relheight 1&lt;br /&gt;set font #4ddd84&lt;br /&gt;ttk::label $w.msg -font $font -wraplength 4i -justify left -text &quot;Это приложение переводит числа из римской&amp;nbsp;&amp;nbsp;системы&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;счисления,&amp;nbsp;&amp;nbsp;в&amp;nbsp;&amp;nbsp;арабскую и обратно!&quot;&lt;br /&gt;pack $w.msg -side top&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;set i &quot;Ввести число&quot;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;set g &amp;#91;ttk::frame $w.$i]&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ttk::label&amp;nbsp;&amp;nbsp;$g.lab&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;-text &quot;Римское__число: $i: &quot; -anchor e&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ttk::entry&amp;nbsp;&amp;nbsp;$g.ent&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;-textvar Rim &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ttk::button $g.but&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;-text &quot;Вычислить!!!&quot; -command {tk_messageBox&amp;nbsp;&amp;nbsp;-title &quot;Арабское число&quot;&amp;nbsp;&amp;nbsp;-message &quot;Римское $Rim&amp;nbsp;&amp;nbsp;==&gt;&amp;nbsp;&amp;nbsp;Арабское &amp;#91;eval {Run $Rim}]&quot;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ttk::button $g.but1&amp;nbsp;&amp;nbsp;&amp;nbsp;-text &quot;Очистить!&quot;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;-command {$g.ent delete 0 &amp;#91;string length $Rim]}&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;pack $g.lab&amp;nbsp;&amp;nbsp;-side left&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;pack $g.ent&amp;nbsp;&amp;nbsp;-side left&amp;nbsp;&amp;nbsp;&amp;nbsp;-expand yes -fill x&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;pack $g.but&amp;nbsp;&amp;nbsp;-side left&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;pack $g.but1 -side left&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;pack $g -fill x -padx 1c -pady 3&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;set j &quot;Ввести_число&quot;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;set f &amp;#91;ttk::frame $w.$j]&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ttk::label&amp;nbsp;&amp;nbsp;$f.lab1&amp;nbsp;&amp;nbsp;&amp;nbsp;-text &quot;Арабское число: $j: &quot; -anchor e&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ttk::entry&amp;nbsp;&amp;nbsp;$f.ent1&amp;nbsp;&amp;nbsp;&amp;nbsp;-textvar Arab&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ttk::button $f.but2&amp;nbsp;&amp;nbsp;&amp;nbsp;-text &quot;Вычислить!!!&quot; -command {tk_messageBox&amp;nbsp;&amp;nbsp;-title &quot;Римское число&quot;&amp;nbsp;&amp;nbsp;-message &quot;Арабское $Arab&amp;nbsp;&amp;nbsp;==&gt;&amp;nbsp;&amp;nbsp;Римское &amp;#91;eval {Runo $Arab}]&quot;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ttk::button $f.but3&amp;nbsp;&amp;nbsp;&amp;nbsp;-text &quot;Очистить!&quot;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;-command {$f.ent1 delete 0 &amp;#91;string length $Arab]} &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;pack $f.lab1&amp;nbsp;&amp;nbsp;-side left&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;pack $f.ent1&amp;nbsp;&amp;nbsp;-side left&amp;nbsp;&amp;nbsp;&amp;nbsp;-expand yes&amp;nbsp;&amp;nbsp;&amp;nbsp;-fill x&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;pack $f.but2&amp;nbsp;&amp;nbsp;-side left&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;pack $f.but3&amp;nbsp;&amp;nbsp;-side left&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;pack $f -fill x -padx 1c -pady 3&lt;!--/uzc--&gt;&lt;/div&gt;&lt;/div&gt;&lt;!--/uzcode--&gt;&lt;br /&gt;Необходимое дополнение: код создавался не с нуля, так что некоторые моменты для меня &quot;магия&quot; &lt;img rel=&quot;usm&quot; src=&quot;https://gcup.ru/SML/facepalm.gif&quot; border=&quot;0&quot; align=&quot;absmiddle&quot; alt=&quot;facepalm&quot; /&gt; &lt;br /&gt;arab_rim.tcl&lt;br /&gt;&lt;!--uzcode--&gt;&lt;div class=&quot;bbCodeBlock&quot;&gt;&lt;div class=&quot;bbCodeName&quot; style=&quot;padding-left:5px;font-weight:bold;font-size:7pt&quot;&gt;Код&lt;/div&gt;&lt;div class=&quot;codeMessage&quot; style=&quot;border:1px inset;max-height:200px;overflow:auto;height:expression(this.scrollHeight&lt;5?this.style.height:scrollHeight&gt;200?&apos;200px&apos;:&apos;&apos;+(this.scrollHeight+5)+&apos;px&apos;);&quot;&gt;&lt;!--uzc--&gt;#!/usr/local/bin/wish&lt;br /&gt;proc Runo {Arab} {&lt;br /&gt;set a_r {I V X L C D M}&lt;br /&gt;set Arabn &amp;#91;split $Arab {}]&lt;br /&gt;set Zx &amp;#91;string reverse $Arabn]&lt;br /&gt;set I 0; set W &quot;&quot;; set W2 &quot;&quot;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;foreach V $Zx { set I2 &amp;#91;expr 2*$I]; set I1 &amp;#91;expr 2*$I+1]&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;set I3 &amp;#91;expr 2*$I+2]; set V1 &amp;#91;expr $V - 5]&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if {$V == 4} {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;append W &amp;#91;lindex $a_r $I1] &amp;#91;lindex $a_r $I2]&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;} elseif {$V == 9} {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;append W &amp;#91;lindex $a_r $I3] &amp;#91;lindex $a_r $I2]&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;} elseif {$V1 &lt; 0} {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;for {set J 0} {$J &lt; $V} {incr J} {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;append W &amp;#91;lindex $a_r $I2]&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}} else {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;for {set J 0} {$J &lt; $V1} {incr J} {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;append W &amp;#91;lindex $a_r $I2]&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;} &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;append W &amp;#91;lindex $a_r $I1]&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;incr I&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;set L &amp;#91;string reverse $W]&lt;br /&gt;}&lt;!--/uzc--&gt;&lt;/div&gt;&lt;/div&gt;&lt;!--/uzcode--&gt;&lt;br /&gt;rim_arab.tcl&lt;br /&gt;&lt;!--uzcode--&gt;&lt;div class=&quot;bbCodeBlock&quot;&gt;&lt;div class=&quot;bbCodeName&quot; style=&quot;padding-left:5px;font-weight:bold;font-size:7pt&quot;&gt;Код&lt;/div&gt;&lt;div class=&quot;codeMessage&quot; style=&quot;border:1px inset;max-height:200px;overflow:auto;height:expression(this.scrollHeight&lt;5?this.style.height:scrollHeight&gt;200?&apos;200px&apos;:&apos;&apos;+(this.scrollHeight+5)+&apos;px&apos;);&quot;&gt;&lt;!--uzc--&gt;proc Run {Rim} {&lt;br /&gt;set r_a(I&amp;#41; 1; set r_a(V&amp;#41; 5; set r_a(X&amp;#41; 10; set r_a(L&amp;#41; 50;&lt;br /&gt;set r_a(C&amp;#41; 100; set r_a(D&amp;#41; 500; set r_a(M&amp;#41; 1000&lt;br /&gt;#set Rim &amp;#91;gets stdin]&lt;br /&gt;set RimCM &amp;#91;string map {IV IIII IX VIIII XL XXXX XC LXXXX CD CCCC CM DCCCC} $Rim]&lt;br /&gt;set RimN &amp;#91;split $RimCM {}]&lt;br /&gt;set Arab 0 &lt;br /&gt;foreach P $RimN {set Arab &amp;#91;expr $Arab + $r_a($P&amp;#41;]}&lt;br /&gt;set T $Arab&lt;br /&gt;}&lt;!--/uzc--&gt;&lt;/div&gt;&lt;/div&gt;&lt;!--/uzcode--&gt;&lt;br /&gt;Следующий код чисто мой!&lt;br /&gt;&lt;!--uzcode--&gt;&lt;div class=&quot;bbCodeBlock&quot;&gt;&lt;div class=&quot;bbCodeName&quot; style=&quot;padding-left:5px;font-weight:bold;font-size:7pt&quot;&gt;Код&lt;/div&gt;&lt;div class=&quot;codeMessage&quot; style=&quot;border:1px inset;max-height:200px;overflow:auto;height:expression(this.scrollHeight&lt;5?this.style.height:scrollHeight&gt;200?&apos;200px&apos;:&apos;&apos;+(this.scrollHeight+5)+&apos;px&apos;);&quot;&gt;&lt;!--uzc--&gt;source &amp;#91;file join &amp;#91;file dirname &amp;#91;info script]] arab_rim.tcl]&lt;br /&gt;source &amp;#91;file join &amp;#91;file dirname &amp;#91;info script]] rim_arab.tcl]&lt;br /&gt;&lt;br /&gt;package require Tk&lt;br /&gt;. config -bg gray75&lt;br /&gt;wm title . &quot;Rim &lt;&lt; &gt;&gt; Arab&quot;&lt;br /&gt;&lt;br /&gt;label&amp;nbsp;&amp;nbsp;.label1&amp;nbsp;&amp;nbsp;-text &quot;Римское число:&quot; &lt;br /&gt;entry&amp;nbsp;&amp;nbsp;.entry1&amp;nbsp;&amp;nbsp;-textvar Rim &lt;br /&gt;button .button1 -text &quot;Вычислить!&quot; -command {tk_messageBox&amp;nbsp;&amp;nbsp;-title &quot;Арабское число&quot;&amp;nbsp;&amp;nbsp;-message &quot;Римское $Rim&amp;nbsp;&amp;nbsp;==&gt;&amp;nbsp;&amp;nbsp;Арабское &amp;#91;eval {Run $Rim}]&quot;} &lt;br /&gt;button .button2 -text &quot;Очистить!&quot;&amp;nbsp;&amp;nbsp;-command {.entry1 delete 0 &amp;#91;string length $Rim]} &lt;br /&gt;pack&amp;nbsp;&amp;nbsp;&amp;nbsp;.label1 .entry1 .button1 .button2 -side left&lt;br /&gt;&lt;br /&gt;label&amp;nbsp;&amp;nbsp;.label2&amp;nbsp;&amp;nbsp;-text &quot;Арабское число:&quot; &lt;br /&gt;entry&amp;nbsp;&amp;nbsp;.entry2&amp;nbsp;&amp;nbsp;-textvar Arab &lt;br /&gt;button .button3 -text &quot;Вычислить!&quot; -command {tk_messageBox&amp;nbsp;&amp;nbsp;-title &quot;Римское число&quot;&amp;nbsp;&amp;nbsp;-message &quot;Арабское $Arab&amp;nbsp;&amp;nbsp;==&gt;&amp;nbsp;&amp;nbsp;Римское &amp;#91;eval {Runo $Arab}]&quot;} &lt;br /&gt;button .button4 -text &quot;Очистить!&quot;&amp;nbsp;&amp;nbsp;-command {.entry2 delete 0 &amp;#91;string length $Arab]} &lt;br /&gt;pack&amp;nbsp;&amp;nbsp;&amp;nbsp;.label2 .entry2 .button3 .button4 -side left &lt;br /&gt;&lt;!--/uzc--&gt;&lt;/div&gt;&lt;/div&gt;&lt;!--/uzcode--&gt;&lt;p&gt;&lt;b&gt;Добавлено&lt;/b&gt; (16 марта 2017, 07:51)&lt;br /&gt;---------------------------------------------&lt;br /&gt;Следующее ...&lt;br /&gt;По идее код должен делать следующее:&lt;br /&gt;Создавать список из чисел длиной = a,&lt;br /&gt;без 0, без повторов чисел, без лакун.&lt;br /&gt;Например a = 7 =&gt; {2 4 6 7 5 3 1}, но&lt;br /&gt;происходит бесконечный цикл ...&lt;br /&gt;Вопрос - как исправить код что бы он&lt;br /&gt;работал корректно ...&lt;br /&gt; &lt;!--uzcode--&gt;&lt;div class=&quot;bbCodeBlock&quot;&gt;&lt;div class=&quot;bbCodeName&quot; style=&quot;padding-left:5px;font-weight:bold;font-size:7pt&quot;&gt;Код&lt;/div&gt;&lt;div class=&quot;codeMessage&quot; style=&quot;border:1px inset;max-height:200px;overflow:auto;height:expression(this.scrollHeight&lt;5?this.style.height:scrollHeight&gt;200?&apos;200px&apos;:&apos;&apos;+(this.scrollHeight+5)+&apos;px&apos;);&quot;&gt;&lt;!--uzc--&gt;proc Vvod {a} {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;global t&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;puts stdout { Vvedite a:}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;set a &amp;#91;gets stdin]&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;set t &amp;#91;format &quot;%d&quot; $a] &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;proc Ldelete {list value} {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;set ix &amp;#91;lsearch -exact $list $value]&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if {$ix &gt;= 0} {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return &amp;#91;lreplace $list $ix $ix]&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;} else {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return $list&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;proc Bez_X {order} {&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;foreach valume $order {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;set m &amp;#91;lsearch -all $order $valume]&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;set y &amp;#91;lrange $m 1 end]&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;foreach val $y { &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;lset order $val X&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;set order &amp;#91;Ldelete $order X]&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;return $order&lt;br /&gt;}&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;proc Spisok {t} {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;for {set i 1} {$i &lt;= $t } {incr i} {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;set j &amp;#91;expr {round(rand(&amp;#41;*$t&amp;#41;}]&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if {$j == 0} {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;set k &amp;#91;expr {$j + 1}]&lt;br /&gt;} else {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;set k $j&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;lappend order $k&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;puts stdout &quot;order = $order&quot;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;set order &amp;#91;Bez_X $order]&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;puts stdout &quot;order1 = $order&quot;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return $order&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;proc !Spisok {order t} {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;set dlina &amp;#91;llength $order]&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if {$dlina &lt; $t} {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;set q &amp;#91;expr $t - $dlina]&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;set order1 &amp;#91;Spisok $q]&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;puts stdout &quot;order11 = $order1&quot;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;set order &amp;#91;concat $order $order1]&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;puts stdout &quot;order2 = $order&quot;&lt;br /&gt;# ----------------------------------------------------------------------&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;#&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;set order &amp;#91;Bez_X $order ] &lt;br /&gt;# При присутствии этой команды Bez_X получается бесконечный цикл!&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;puts stdout &quot;order3 = $order&quot;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;!Spisok $order $t&lt;br /&gt;} else {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return $order&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;while 1 {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Vvod a&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;set order &amp;#91;Spisok $t]&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;set x &amp;#91;!Spisok $order $t]&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;puts stdout &quot;x = $x&quot;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;!--/uzc--&gt;&lt;/div&gt;&lt;/div&gt;&lt;!--/uzcode--&gt;</content:encoded>
			<category>Скриптовые языки программирования</category>
			<dc:creator>colencor</dc:creator>
			<guid>https://gcup.ru/forum/79-97923-1</guid>
		</item>
		<item>
			<title>[Гайд] Как создать регенерацию энергии в браузерной MMORPG</title>
			<link>https://gcup.ru/forum/79-99931-1</link>
			<pubDate>Tue, 16 Oct 2018 20:49:20 GMT</pubDate>
			<description>Форум: &lt;a href=&quot;https://gcup.ru/forum/79&quot;&gt;Скриптовые языки программирования&lt;/a&gt;&lt;br /&gt;Описание темы: PHP, MySQL, JS&lt;br /&gt;Автор темы: HellWalk&lt;br /&gt;Автор последнего сообщения: YuriyEmpty&lt;br /&gt;Количество ответов: 2</description>
			<content:encoded>Не смотря на то, что необходимость регенерации энергии (здоровья, выносливости) возникает практически при создании любой браузерной игры, полноценного руководства по данной теме в рунете не нашел. Так как для своей игры делал данную механику, подумал, почему бы не сделать рунет чуточку полезней, и не написать руководство о том, как это делается:&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;a class=&quot;link&quot; href=&quot;https://gcup.ru/go?http://walkweb.ru/energy/&quot; title=&quot;http://walkweb.ru/energy/&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;Демо&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;a class=&quot;link&quot; href=&quot;https://gcup.ru/go?https://github.com/WalkWeb/Browser-MMORPG-Energy-System&quot; title=&quot;https://github.com/WalkWeb/Browser-MMORPG-Energy-System&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;Код на github&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;a class=&quot;link&quot; href=&quot;https://gcup.ru/go?http://www.diablo1.ru/dusk-world/diary-07.php&quot; title=&quot;http://www.diablo1.ru/dusk-world/diary-07.php&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;Само руководство&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Разумеется, руководство ориентированно на новичков (но имеющих базовые знания PHP, MySQL и JS), профессионалы вполне возможно сделают и лучше, чем у меня.</content:encoded>
			<category>Скриптовые языки программирования</category>
			<dc:creator>HellWalk</dc:creator>
			<guid>https://gcup.ru/forum/79-99931-1</guid>
		</item>
		<item>
			<title>Python и информационная безопасность</title>
			<link>https://gcup.ru/forum/79-100793-1</link>
			<pubDate>Sat, 04 Aug 2018 14:55:06 GMT</pubDate>
			<description>Форум: &lt;a href=&quot;https://gcup.ru/forum/79&quot;&gt;Скриптовые языки программирования&lt;/a&gt;&lt;br /&gt;Автор темы: Game_maker_8&lt;br /&gt;Автор последнего сообщения: Xakep&lt;br /&gt;Количество ответов: 1</description>
			<content:encoded>Подскажите какие-нибудь библиотеки ,которые как-либо связаны с информационной безопасностью,буду благодарен</content:encoded>
			<category>Скриптовые языки программирования</category>
			<dc:creator>Game_maker_8</dc:creator>
			<guid>https://gcup.ru/forum/79-100793-1</guid>
		</item>
		<item>
			<title>Программирование на Groovy</title>
			<link>https://gcup.ru/forum/79-98069-1</link>
			<pubDate>Thu, 26 Apr 2018 10:45:06 GMT</pubDate>
			<description>Форум: &lt;a href=&quot;https://gcup.ru/forum/79&quot;&gt;Скриптовые языки программирования&lt;/a&gt;&lt;br /&gt;Описание темы: Что лучше Swing или Tk ...&lt;br /&gt;Автор темы: colencor&lt;br /&gt;Автор последнего сообщения: colencor&lt;br /&gt;Количество ответов: 2</description>
			<content:encoded>&lt;!--uzcode--&gt;&lt;div class=&quot;bbCodeBlock&quot;&gt;&lt;div class=&quot;bbCodeName&quot; style=&quot;padding-left:5px;font-weight:bold;font-size:7pt&quot;&gt;Код&lt;/div&gt;&lt;div class=&quot;codeMessage&quot; style=&quot;border:1px inset;max-height:200px;overflow:auto;&quot;&gt;&lt;!--uzc--&gt;import groovy.swing.SwingBuilder&lt;br /&gt;import javax.swing.*&lt;br /&gt;import java.awt.FlowLayout&lt;br /&gt;/*def download(address&amp;#41; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;def file = new FileOutputStream(address&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;def out&amp;nbsp;&amp;nbsp;= new BufferedOutputStream(file&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;out&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;&lt; file (address&amp;#41;.openStream(&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;out.close(&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;download(chisla&amp;#41;*/&lt;br /&gt;swinger = new SwingBuilder(&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;gui = swinger.frame(title:&apos;Арабские &lt;&lt; &gt;&gt; Римские&apos;, size: &amp;#91;448, 160]&amp;#41; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;panel(layout: new FlowLayout(&amp;#41;&amp;#41; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;arabrim =&amp;nbsp;&amp;nbsp;new JLabel(&apos;Это приложение переводит из арабской cистемы счисления в римскую и обратно!&apos;&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;arabrim.setBorder(BorderFactory.createEtchedBorder(&amp;#41;&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;panel(&amp;#41;.add(arabrim&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;panel(layout: new FlowLayout(&amp;#41;&amp;#41; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;arab = new JLabel(&apos;Арабское число:&apos;&amp;#41;; panel(&amp;#41;.add(arab&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;message1 = textField(columns: 12&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;button = swinger.button(text: &apos;Вычислить&apos;, actionPerformed: {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;JOptionPane.showMessageDialog(gui, ArabRim(message1.text&amp;#41;&amp;#41;}&amp;#41;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;button = swinger.button(text: &apos;Очистить&apos;, actionPerformed: {&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;message1.selectAll(&amp;#41;; message1.cut(&amp;#41;}&amp;#41;&lt;br /&gt;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;rim&amp;nbsp;&amp;nbsp;= new JLabel(&apos;Римское__число:&apos;&amp;#41;; panel(&amp;#41;.add(rim&amp;#41;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;message2 = textField(columns: 12&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;button = swinger.button(text: &apos;Вычислить&apos;, actionPerformed: {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;JOptionPane.showMessageDialog(gui, RimArab(message2.text&amp;#41;&amp;#41;}&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;button = swinger.button(text: &apos;Очистить&apos;, actionPerformed: {&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;message2.selectAll(&amp;#41;; message2.cut(&amp;#41;}&amp;#41;&lt;br /&gt;}}&lt;br /&gt;gui.show(&amp;#41;&lt;br /&gt;&lt;br /&gt;def ArabRim (Arab&amp;#41; {&lt;br /&gt;List Rim = &amp;#91; &quot;I&quot;, &quot;V&quot;, &quot;X&quot;, &quot;L&quot;, &quot;C&quot;, &quot;D&quot;, &quot;M&quot;]&lt;br /&gt;A = Arab.reverse(&amp;#41;; i = 0; L = &amp;#91;]&lt;br /&gt;for( v in A&amp;#41;{ x = v as Integer; iI = i*2; iV = 2*i+1; iX = 2*i+2&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;switch (x&amp;#41;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;case 4:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;r&amp;nbsp;&amp;nbsp;= Rim&amp;#91;iI] + Rim&amp;#91;iV]; break&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;case 9:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;r&amp;nbsp;&amp;nbsp;= Rim&amp;#91;iI] + Rim&amp;#91;iX]; break&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;case 1..3: r&amp;nbsp;&amp;nbsp;= &quot;&quot;; for( int j = 0; j &lt; x;&amp;nbsp;&amp;nbsp;j++&amp;#41;{ r&amp;nbsp;&amp;nbsp;= r&amp;nbsp;&amp;nbsp;+ Rim&amp;#91;iI]}; break&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;case 5..8: r2 = &quot;&quot;; x1 = x - 5; for( int j = 0; j &lt; x1; j++&amp;#41;{ r2 = r2 + Rim&amp;#91;iI]}; r1 = Rim&amp;#91;iV]; r = r1 + r2; break&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;case 0:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;r&amp;nbsp;&amp;nbsp;= &quot;&quot;; break&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}; ++i; L = L + r}&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;Rim = L.reverse(&amp;#41;; return Rim.join(&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;def RimArab (Rim&amp;#41; {&lt;br /&gt;Map rimArab = &amp;#91; &quot;I&quot;:1, &quot;V&quot;:5, &quot;X&quot;:10, &quot;L&quot;:50, &quot;C&quot;:100, &quot;D&quot;:500, &quot;M&quot;:1000]&lt;br /&gt;f = Rim.replace(&quot;IV&quot;, &quot;IIII&quot;&amp;#41;.replace(&quot;IX&quot;, &quot;VIIII&quot;&amp;#41;.replace(&quot;XL&quot;, &quot;XXXX&quot;&amp;#41;.replace(&quot;XC&quot;, &quot;LXXXX&quot;&amp;#41;.replace(&quot;CD&quot;, &quot;CCCC&quot;&amp;#41;.replace(&quot;CM&quot;, &quot;DCCCC&quot;&amp;#41;&lt;br /&gt;Arab = 0; for(i in f&amp;#41; { Arab = Arab + rimArab&amp;#91;i]}; return Arab&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;!--/uzc--&gt;&lt;/div&gt;&lt;/div&gt;&lt;!--/uzcode--&gt;&lt;br /&gt;В комментарии моя попытка подключить файл &lt;i&gt;chisla.groovy&lt;/i&gt; в котором находятся методы &lt;b&gt;ArabRim &lt;/b&gt;и &lt;b&gt;RimArab &lt;/b&gt;...&lt;br /&gt;Пока неудачно ... &lt;img rel=&quot;usm&quot; src=&quot;https://gcup.ru/SML/help.gif&quot; border=&quot;0&quot; align=&quot;absmiddle&quot; alt=&quot;help&quot; /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Добавлено&lt;/b&gt; (06 апреля 2017, 05:11)&lt;br /&gt;---------------------------------------------&lt;br /&gt;Переделанный на Groovy код создающий список длиной равной N, без 0, без повторов чисел, без лакун ...&lt;br /&gt;&lt;!--uzcode--&gt;&lt;div class=&quot;bbCodeBlock&quot;&gt;&lt;div class=&quot;bbCodeName&quot; style=&quot;padding-left:5px;font-weight:bold;font-size:7pt&quot;&gt;Код&lt;/div&gt;&lt;div class=&quot;codeMessage&quot; style=&quot;border:1px inset;max-height:200px;overflow:auto;&quot;&gt;&lt;!--uzc--&gt;package demo&lt;br /&gt;def Vvod (&amp;#41; {print &quot;Vvedite n = &quot;; s = System.in.newReader(&amp;#41;.readLine(&amp;#41;; n = s as Integer}&lt;br /&gt;def Spisok (n&amp;#41; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;order = &amp;#91;]&lt;br /&gt;&amp;nbsp;&amp;nbsp;for (int i = 1; i &lt;= n; i++&amp;#41; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;j = Math.round(Math.random(&amp;#41; * n&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;if (j == 0&amp;#41; {order &lt;&lt; ( j + 1&amp;#41;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;else&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{order &lt;&lt;&amp;nbsp;&amp;nbsp;&amp;nbsp;j }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return order&lt;br /&gt;}&lt;br /&gt;def Bez_X (order&amp;#41; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;len&amp;nbsp;&amp;nbsp;= order.size(&amp;#41; - 1&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;len1 = len + 1&lt;br /&gt;&amp;nbsp;&amp;nbsp;for (int i = 0; i &lt;= len; i++&amp;#41; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;for (int j = (i + 1&amp;#41;; j &lt;= len1; j++&amp;#41; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if (order&amp;#91;j] == order&amp;#91;i]&amp;#41; {order.remove(j&amp;#41;}&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;len1 = order.size(&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return order&lt;br /&gt;}&lt;br /&gt;def Ok_Spisok (n&amp;#41; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;order = Bez_X (Spisok (n&amp;#41;&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;for (int k = 1; k &lt;= n; k++&amp;#41; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;order = Bez_X (order + k&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return order&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;def Vivod (&amp;#41; { print &quot;order = &quot;; println order}&lt;br /&gt;&lt;br /&gt;while (1&amp;#41;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;Vvod (&amp;#41;; if(n == &quot;n&quot;&amp;#41; {break}&lt;br /&gt;&amp;nbsp;&amp;nbsp;Ok_Spisok (n&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;Vivod (&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;!--/uzc--&gt;&lt;/div&gt;&lt;/div&gt;&lt;!--/uzcode--&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Добавлено&lt;/b&gt; (16 апреля 2017, 08:21)&lt;br /&gt;---------------------------------------------&lt;br /&gt;&lt;!--uzcode--&gt;&lt;div class=&quot;bbCodeBlock&quot;&gt;&lt;div class=&quot;bbCodeName&quot; style=&quot;padding-left:5px;font-weight:bold;font-size:7pt&quot;&gt;Код&lt;/div&gt;&lt;div class=&quot;codeMessage&quot; style=&quot;border:1px inset;max-height:200px;overflow:auto;&quot;&gt;&lt;!--uzc--&gt;def Ok_Spisok (n&amp;#41; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;order = Bez_X (Spisok (n&amp;#41;&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;for (int k = n; 1 &lt;= k; k--&amp;#41; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;order = Bez_X (order + k&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return order&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;!--/uzc--&gt;&lt;/div&gt;&lt;/div&gt;&lt;!--/uzcode--&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Добавлено&lt;/b&gt; (11 мая 2017, 22:00)&lt;br /&gt;---------------------------------------------&lt;br /&gt;Следующий код не работает как отдельная прога,&lt;br /&gt;а только &quot;в&quot; IDE ...&lt;br /&gt;&lt;br /&gt;&lt;!--uzcode--&gt;&lt;div class=&quot;bbCodeBlock&quot;&gt;&lt;div class=&quot;bbCodeName&quot; style=&quot;padding-left:5px;font-weight:bold;font-size:7pt&quot;&gt;Код&lt;/div&gt;&lt;div class=&quot;codeMessage&quot; style=&quot;border:1px inset;max-height:200px;overflow:auto;&quot;&gt;&lt;!--uzc--&gt;//Main.java&lt;br /&gt;public class Main {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;public static void main(String args&amp;#91;]&amp;#41; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;chislo m2 = new chislo(&amp;#41;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;m2.run(&amp;#41;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;}&lt;!--/uzc--&gt;&lt;/div&gt;&lt;/div&gt;&lt;!--/uzcode--&gt;&lt;br /&gt;&lt;br /&gt;&lt;!--uzcode--&gt;&lt;div class=&quot;bbCodeBlock&quot;&gt;&lt;div class=&quot;bbCodeName&quot; style=&quot;padding-left:5px;font-weight:bold;font-size:7pt&quot;&gt;Код&lt;/div&gt;&lt;div class=&quot;codeMessage&quot; style=&quot;border:1px inset;max-height:200px;overflow:auto;&quot;&gt;&lt;!--uzc--&gt;//chislo.groovy&lt;br /&gt;import groovy.swing.SwingBuilder&lt;br /&gt;import javax.swing.*&lt;br /&gt;import java.awt.FlowLayout&lt;br /&gt;&lt;br /&gt;public class ArabRim_2 {&lt;br /&gt;&amp;nbsp;&amp;nbsp;def Arabrim_2(Arab&amp;#41; { ArabRim m2 = new ArabRim(&amp;#41;; def&amp;nbsp;&amp;nbsp;&amp;nbsp;Rim = m2.Arabrim(Arab&amp;#41;; return Rim }}&lt;br /&gt;&amp;nbsp;&amp;nbsp;def Arab_Rim(Arab&amp;#41; {ArabRim_2 m3 = new ArabRim_2(&amp;#41;;&amp;nbsp;&amp;nbsp;Rim = m3.Arabrim_2(Arab&amp;#41;}&lt;br /&gt;&lt;br /&gt;public class RimArab_2 {&lt;br /&gt;&amp;nbsp;&amp;nbsp;def Rimarab_2(Rim&amp;#41; { RimArab m1 = new RimArab(&amp;#41;; def&amp;nbsp;&amp;nbsp;&amp;nbsp;Arab = m1.Rimarab(Rim&amp;#41;; return Arab }}&lt;br /&gt;&amp;nbsp;&amp;nbsp;def Rim_Arab(Rim&amp;#41; {RimArab_2 m2 = new RimArab_2(&amp;#41;;&amp;nbsp;&amp;nbsp;Arab = m2.Rimarab_2(Rim&amp;#41;}&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;swinger = new SwingBuilder(&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;gui = swinger.frame(title:&apos;Арабские &lt;&lt; &gt;&gt; Римские&apos;, size: &amp;#91;510, 160]&amp;#41; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;panel(layout: new FlowLayout(&amp;#41;&amp;#41; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;arabrim =&amp;nbsp;&amp;nbsp;new JLabel(&apos;Это приложение переводит из Арабской системы счисления в Римскую и обратно!&apos;&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;arabrim.setBorder(BorderFactory.createEtchedBorder(&amp;#41;&amp;#41;; panel(&amp;#41;.add(arabrim&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;panel(layout: new FlowLayout(&amp;#41;&amp;#41; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;arab = new JLabel(&apos;Арабское&amp;nbsp;&amp;nbsp;число:&apos;&amp;#41;; panel(&amp;#41;.add(arab&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;message1 = textField(columns: 12&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;button = swinger.button(text: &apos;Вычислить&apos;, actionPerformed: {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;JOptionPane.showMessageDialog(gui, Arab_Rim(message1.text&amp;#41;&amp;#41;}&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;button = swinger.button(text: &apos;Очистить&apos;, actionPerformed: {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;message1.selectAll(&amp;#41;; message1.cut(&amp;#41;}&amp;#41;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;rim&amp;nbsp;&amp;nbsp;= new JLabel(&apos;Римское__число:&apos;&amp;#41;; panel(&amp;#41;.add(rim&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;message2 = textField(columns: 12&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;button = swinger.button(text: &apos;Вычислить&apos;, actionPerformed: {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;JOptionPane.showMessageDialog(gui, Rim_Arab(message2.text&amp;#41;&amp;#41;}&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;button = swinger.button(text: &apos;Очистить&apos;, actionPerformed: {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;message2.selectAll(&amp;#41;; message2.cut(&amp;#41;}&amp;#41;}}&lt;br /&gt;gui.show(&amp;#41;&lt;!--/uzc--&gt;&lt;/div&gt;&lt;/div&gt;&lt;!--/uzcode--&gt;&lt;br /&gt;&lt;br /&gt;&lt;!--uzcode--&gt;&lt;div class=&quot;bbCodeBlock&quot;&gt;&lt;div class=&quot;bbCodeName&quot; style=&quot;padding-left:5px;font-weight:bold;font-size:7pt&quot;&gt;Код&lt;/div&gt;&lt;div class=&quot;codeMessage&quot; style=&quot;border:1px inset;max-height:200px;overflow:auto;&quot;&gt;&lt;!--uzc--&gt;//ArabRim.groovy&lt;br /&gt;public class ArabRim {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;String Rim, A, r, r2, r1&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Integer i, x, iI, iV, iX, x1&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;List L, rim = &amp;#91; &quot;I&quot;, &quot;V&quot;, &quot;X&quot;, &quot;L&quot;, &quot;C&quot;, &quot;D&quot;, &quot;M&quot;]&lt;br /&gt;&amp;nbsp;&amp;nbsp;def Arabrim (Arab&amp;#41; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;A = Arab.reverse(&amp;#41;; i = 0; L = &amp;#91;]&lt;br /&gt;&amp;nbsp;&amp;nbsp;for( v in A&amp;#41;{ x = v as Integer; iI = i*2; iV = 2*i+1; iX = 2*i+2&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;switch (x&amp;#41;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;case 4:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;r&amp;nbsp;&amp;nbsp;= rim&amp;#91;iI] + rim&amp;#91;iV]; break&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;case 9:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;r&amp;nbsp;&amp;nbsp;= rim&amp;#91;iI] + rim&amp;#91;iX]; break&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;case 1..3: r&amp;nbsp;&amp;nbsp;= &quot;&quot;; for( int j = 0; j &lt; x;&amp;nbsp;&amp;nbsp;j++&amp;#41;{ r&amp;nbsp;&amp;nbsp;= r&amp;nbsp;&amp;nbsp;+ rim&amp;#91;iI]}; break&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;case 5..8: r2 = &quot;&quot;; x1 = x - 5; for( int j = 0; j &lt; x1; j++&amp;#41;{ r2 = r2 + rim&amp;#91;iI]}; r1 = rim&amp;#91;iV]; r = r1 + r2; break&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;case 0:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;r&amp;nbsp;&amp;nbsp;= &quot;&quot;; break }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;++i; L = L + r }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Rim = L.reverse(&amp;#41;.join(&amp;#41;; return Rim } }&lt;!--/uzc--&gt;&lt;/div&gt;&lt;/div&gt;&lt;!--/uzcode--&gt;&lt;br /&gt;&lt;br /&gt;&lt;!--uzcode--&gt;&lt;div class=&quot;bbCodeBlock&quot;&gt;&lt;div class=&quot;bbCodeName&quot; style=&quot;padding-left:5px;font-weight:bold;font-size:7pt&quot;&gt;Код&lt;/div&gt;&lt;div class=&quot;codeMessage&quot; style=&quot;border:1px inset;max-height:200px;overflow:auto;&quot;&gt;&lt;!--uzc--&gt;//RimArab.groovy&lt;br /&gt;public class RimArab {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;String&amp;nbsp;&amp;nbsp;f; Integer Arab&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Map rimArab = &amp;#91;&quot;I&quot;:1, &quot;V&quot;:5, &quot;X&quot;:10, &quot;L&quot;:50, &quot;C&quot;:100, &quot;D&quot;:500, &quot;M&quot;:1000]&lt;br /&gt;&amp;nbsp;&amp;nbsp;def Rimarab (Rim&amp;#41; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;f = Rim.replace(&quot;IV&quot;, &quot;IIII&quot;&amp;#41;.replace(&quot;IX&quot;, &quot;VIIII&quot;&amp;#41;.replace(&quot;XL&quot;, &quot;XXXX&quot;&amp;#41;.replace(&quot;XC&quot;, &quot;LXXXX&quot;&amp;#41;.replace(&quot;CD&quot;, &quot;CCCC&quot;&amp;#41;.replace(&quot;CM&quot;, &quot;DCCCC&quot;&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Arab = 0; for(i in f&amp;#41; { Arab = Arab + rimArab&amp;#91;i]}; return Arab } }&lt;!--/uzc--&gt;&lt;/div&gt;&lt;/div&gt;&lt;!--/uzcode--&gt;&lt;br /&gt;&lt;br /&gt;&lt;!--uzcode--&gt;&lt;div class=&quot;bbCodeBlock&quot;&gt;&lt;div class=&quot;bbCodeName&quot; style=&quot;padding-left:5px;font-weight:bold;font-size:7pt&quot;&gt;Код&lt;/div&gt;&lt;div class=&quot;codeMessage&quot; style=&quot;border:1px inset;max-height:200px;overflow:auto;&quot;&gt;&lt;!--uzc--&gt;class chislo {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;void run(&amp;#41; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;throw new UnsupportedOperationException(&quot;Not yet implemented&quot;&amp;#41;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;}&lt;br /&gt;&lt;!--/uzc--&gt;&lt;/div&gt;&lt;/div&gt;&lt;!--/uzcode--&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Добавлено&lt;/b&gt; (14 мая 2017, 21:26)&lt;br /&gt;---------------------------------------------&lt;br /&gt;&quot;Случайность&quot; списка &quot;усилена&quot; ...&lt;br /&gt;&lt;!--uzcode--&gt;&lt;div class=&quot;bbCodeBlock&quot;&gt;&lt;div class=&quot;bbCodeName&quot; style=&quot;padding-left:5px;font-weight:bold;font-size:7pt&quot;&gt;Код&lt;/div&gt;&lt;div class=&quot;codeMessage&quot; style=&quot;border:1px inset;max-height:200px;overflow:auto;&quot;&gt;&lt;!--uzc--&gt;def Ok_Spisok (n&amp;#41; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;order1 = Bez_X (Spisok (n&amp;#41;&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;for (int k = n; 1 &lt;= k; k--&amp;#41; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;order1 = Bez_X (order1 + k&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;order = Bez_X (Spisok (n&amp;#41;&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;for (i in order1&amp;#41; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;order = Bez_X (order + i&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return order&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;!--/uzc--&gt;&lt;/div&gt;&lt;/div&gt;&lt;!--/uzcode--&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Добавлено&lt;/b&gt; (30 мая 2017, 13:56)&lt;br /&gt;---------------------------------------------&lt;br /&gt;При таком изменении кода вывод становится более &quot;информативным&quot;:&lt;br /&gt;&lt;!--uzcode--&gt;&lt;div class=&quot;bbCodeBlock&quot;&gt;&lt;div class=&quot;bbCodeName&quot; style=&quot;padding-left:5px;font-weight:bold;font-size:7pt&quot;&gt;Код&lt;/div&gt;&lt;div class=&quot;codeMessage&quot; style=&quot;border:1px inset;max-height:200px;overflow:auto;&quot;&gt;&lt;!--uzc--&gt;button = swinger.button(text: &apos;Вычислить&apos;, &amp;#92;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;actionPerformed: { swinger.optionPane(message: &amp;#92;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&quot;Арабское $message1.text&amp;nbsp;&amp;nbsp;==&gt;&amp;nbsp;&amp;nbsp;Римское ${Arab_Rim(message1.text&amp;#41;}&quot;&amp;#41;. &amp;#92;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;createDialog(null, &apos;Арабские в Римские&apos;&amp;#41;.show(&amp;#41;}&amp;#41;&lt;!--/uzc--&gt;&lt;/div&gt;&lt;/div&gt;&lt;!--/uzcode--&gt;&lt;br /&gt;&lt;!--uzcode--&gt;&lt;div class=&quot;bbCodeBlock&quot;&gt;&lt;div class=&quot;bbCodeName&quot; style=&quot;padding-left:5px;font-weight:bold;font-size:7pt&quot;&gt;Код&lt;/div&gt;&lt;div class=&quot;codeMessage&quot; style=&quot;border:1px inset;max-height:200px;overflow:auto;&quot;&gt;&lt;!--uzc--&gt;button = swinger.button(text: &apos;Вычислить&apos;, &amp;#92;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;actionPerformed: { swinger.optionPane(message: &amp;#92;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&quot;Римское $message2.text&amp;nbsp;&amp;nbsp;==&gt;&amp;nbsp;&amp;nbsp;Арабское ${Rim_Arab(message2.text&amp;#41;}&quot;&amp;#41;. &amp;#92;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;createDialog(null, &apos;Римские в Арабские&apos;&amp;#41;.show(&amp;#41;}&amp;#41;&lt;!--/uzc--&gt;&lt;/div&gt;&lt;/div&gt;&lt;!--/uzcode--&gt;</content:encoded>
			<category>Скриптовые языки программирования</category>
			<dc:creator>colencor</dc:creator>
			<guid>https://gcup.ru/forum/79-98069-1</guid>
		</item>
		<item>
			<title>Посоветуете библиотеку для работы с графикой (Python)</title>
			<link>https://gcup.ru/forum/79-100272-1</link>
			<pubDate>Thu, 19 Apr 2018 16:43:53 GMT</pubDate>
			<description>Форум: &lt;a href=&quot;https://gcup.ru/forum/79&quot;&gt;Скриптовые языки программирования&lt;/a&gt;&lt;br /&gt;Описание темы: Поиск нужной мне библиотеки для работы с графикой.&lt;br /&gt;Автор темы: martuk&lt;br /&gt;Автор последнего сообщения: snimchenko&lt;br /&gt;Количество ответов: 1</description>
			<content:encoded>Посоветуете библиотеку для работы с графикой на программном уровне. Не средство отрисовки графики на экране(!) а именно для работы с изображениями.&lt;br /&gt;Программа должна работать в консольном режиме, открывать графику (.png,.jpg,.gif) и редактировать. Вообщем работа с канвой: текст, линии, прямоугольники. &lt;br /&gt;Главное - умение работать с .gif для редактирования (брать каждый кадр отдельно в качестве канвы грубо говоря) и сохранить результат на харде.&lt;br /&gt;&lt;br /&gt;Могу привести аналог, который удовлетворяет все мои запросы - Imagick (php) но он жутко медленный, гифки он редактирует долго.</content:encoded>
			<category>Скриптовые языки программирования</category>
			<dc:creator>martuk</dc:creator>
			<guid>https://gcup.ru/forum/79-100272-1</guid>
		</item>
		<item>
			<title>[Three.js]странное отображение игры[JS]</title>
			<link>https://gcup.ru/forum/79-97955-1</link>
			<pubDate>Sat, 07 Apr 2018 07:13:36 GMT</pubDate>
			<description>Форум: &lt;a href=&quot;https://gcup.ru/forum/79&quot;&gt;Скриптовые языки программирования&lt;/a&gt;&lt;br /&gt;Описание темы: не могу понять в чем загвоздка...&lt;br /&gt;Автор темы: BrightSpot&lt;br /&gt;Автор последнего сообщения: v1rus&lt;br /&gt;Количество ответов: 3</description>
			<content:encoded>Может кто работал с библиотекой Three.js - у меня небольшая 3д бродилка от первого лица...&lt;br /&gt;Вот она очень странно себя ведет! а точнее разные браузеры на разных компах выдают совершенно разный результат...&lt;br /&gt;у меня на всех браузерах все норм идет, у друзей то освещение не правильно пашет, то вообще модели не отображаються, то колизии(самописные) перестают работать или работают наполовину... при этом нет закономерностей браузер-версия-ос-железо... то есть при одинаковых конфах одинаковые браузеры на разных компах по разному себя ведут...&lt;br /&gt;Хз что, происходит... ошибки не выдает... с телефонами таже фигня - некоторые отображают некоторые нет &lt;img rel=&quot;usm&quot; src=&quot;https://gcup.ru/SML/wacko.gif&quot; border=&quot;0&quot; align=&quot;absmiddle&quot; alt=&quot;%)&quot; /&gt;</content:encoded>
			<category>Скриптовые языки программирования</category>
			<dc:creator>BrightSpot</dc:creator>
			<guid>https://gcup.ru/forum/79-97955-1</guid>
		</item>
		<item>
			<title>поворот</title>
			<link>https://gcup.ru/forum/79-99913-1</link>
			<pubDate>Mon, 19 Feb 2018 15:22:46 GMT</pubDate>
			<description>Форум: &lt;a href=&quot;https://gcup.ru/forum/79&quot;&gt;Скриптовые языки программирования&lt;/a&gt;&lt;br /&gt;Описание темы: помогите понять&lt;br /&gt;Автор темы: allods&lt;br /&gt;Автор последнего сообщения: drcrack&lt;br /&gt;Количество ответов: 11</description>
			<content:encoded>&lt;!--uzcode--&gt;&lt;div class=&quot;bbCodeBlock&quot;&gt;&lt;div class=&quot;bbCodeName&quot; style=&quot;padding-left:5px;font-weight:bold;font-size:7pt&quot;&gt;Код&lt;/div&gt;&lt;div class=&quot;codeMessage&quot; style=&quot;border:1px inset;max-height:200px;overflow:auto;&quot;&gt;&lt;!--uzc--&gt;&amp;nbsp;&amp;nbsp;x&apos;=x&lt;br /&gt;&amp;nbsp;&amp;nbsp;y&apos;=y*math.cos(math.rad(L&amp;#41;&amp;#41;+ z*math.sin(math.rad(L&amp;#41;&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;z&apos;=-y*math.sin(math.rad(L&amp;#41;&amp;#41;+ z*math.cos(math.rad(L&amp;#41;&amp;#41;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;x&apos;=x*math.cos(math.rad(L&amp;#41;&amp;#41; + z*math.sin(math.rad(L&amp;#41;&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;y&apos;=y&lt;br /&gt;&amp;nbsp;&amp;nbsp;z&apos;=-x*math.sin(math.rad(L&amp;#41;&amp;#41; + z*math.cos(math.rad(L&amp;#41;&amp;#41;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;x&apos;=x*math.cos(math.rad(L&amp;#41;&amp;#41; - y*math.sin(math.rad(L&amp;#41;&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;y&apos;=x*math.sin(math.rad(L&amp;#41;&amp;#41; + y*math.cos(math.rad(L&amp;#41;&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;z&apos;=z&lt;!--/uzc--&gt;&lt;/div&gt;&lt;/div&gt;&lt;!--/uzcode--&gt;&lt;br /&gt;&lt;br /&gt;Ребят есть такой код для поворота. По оси X Y и Z.&lt;br /&gt;Но я не могу понять что такое L ? Радиана чего ?</content:encoded>
			<category>Скриптовые языки программирования</category>
			<dc:creator>allods</dc:creator>
			<guid>https://gcup.ru/forum/79-99913-1</guid>
		</item>
		<item>
			<title>Поиск библиотеки для LUA</title>
			<link>https://gcup.ru/forum/79-99755-1</link>
			<pubDate>Thu, 18 Jan 2018 20:24:29 GMT</pubDate>
			<description>Форум: &lt;a href=&quot;https://gcup.ru/forum/79&quot;&gt;Скриптовые языки программирования&lt;/a&gt;&lt;br /&gt;Описание темы: Lua и диалоговые окна.&lt;br /&gt;Автор темы: martuk&lt;br /&gt;Автор последнего сообщения: sfabrikan&lt;br /&gt;Количество ответов: 2</description>
			<content:encoded>Надо добавить в Lua приложения диалоговые окна (Открытие файла, Сохранение, выбор папки, выбор цвета. В общем, все те окна, которые предоставляет Win).&lt;br /&gt;Искал в этих ваших интернетах, но оказалась, что эта задача не такая уж и тривиальная. &lt;br /&gt;&lt;br /&gt;Конечно же есть os.execute, и можно сделать все это с его помощью, то это решение не очень меня радует.&lt;br /&gt;&lt;br /&gt;Есть ли какие то готовые решения? Какие то библиотеки (Желательно Win/Mac/Linux). Не откажусь от каких нибудь баз дополнений, расширяющих возможности lua, а то не нашел что-то.</content:encoded>
			<category>Скриптовые языки программирования</category>
			<dc:creator>martuk</dc:creator>
			<guid>https://gcup.ru/forum/79-99755-1</guid>
		</item>
		<item>
			<title>Создание изометрической плоскости для браузерной игры</title>
			<link>https://gcup.ru/forum/79-99563-1</link>
			<pubDate>Mon, 11 Dec 2017 02:06:04 GMT</pubDate>
			<description>Форум: &lt;a href=&quot;https://gcup.ru/forum/79&quot;&gt;Скриптовые языки программирования&lt;/a&gt;&lt;br /&gt;Описание темы: JS Canvas или что то другое&lt;br /&gt;Автор темы: wRagnarok&lt;br /&gt;Автор последнего сообщения: maker-rus&lt;br /&gt;Количество ответов: 1</description>
			<content:encoded>Здравствуйте, создаю игру (многопользовательская браузерная экономическая стратегия), одна из сцен игры должна быть выполнена в изометрической сетке, на котором будут находится объекты (сетка - по факту офис, объекты - мебель, например стол).&lt;br /&gt;&lt;br /&gt;Сетка небольшая получается от 8х8 до примерно 40х40 максимум.&lt;br /&gt;&lt;br /&gt;Главная проблема выбора в том что хочу сделать по фен-шую на Canvas JS но с ним никогда не работал (Нативный JS знаю, но с canvas никогда не было надобности работать). И не могу разобраться как лучше реализовать это все через Canvas, возможно есть у кого то на эту тему либо материалы либо наработки.&lt;br /&gt;&lt;br /&gt;1. По факту требуется прорисовать сетку в изометрии (вот такую я нарисовал)&lt;br /&gt;&lt;!--uSpoiler--&gt;&lt;div class=&quot;uSpoilerClosed&quot; id=&quot;uSpoiler3rRFPr&quot;&gt;&lt;div class=&quot;uSpoilerButBl&quot;&gt;&lt;input type=&quot;button&quot; class=&quot;uSpoilerButton&quot; onclick=&quot;if($(&apos;#uSpoiler3rRFPr&apos;)[0]){if ($(&apos;.uSpoilerText&apos;,$(&apos;#uSpoiler3rRFPr&apos;))[0].style.display==&apos;none&apos;){$(&apos;.uSpoilerText&apos;,$(&apos;#uSpoiler3rRFPr&apos;))[0].style.display=&apos;&apos;;$(&apos;.uSpoilerButton&apos;,$(&apos;#uSpoiler3rRFPr&apos;)).val(&apos;Закрыть спойлер&apos;);$(&apos;#uSpoiler3rRFPr&apos;).attr(&apos;class&apos;,&apos;uSpoilerOpened&apos;);}else {$(&apos;.uSpoilerText&apos;,$(&apos;#uSpoiler3rRFPr&apos;))[0].style.display=&apos;none&apos;;$(&apos;.uSpoilerButton&apos;,$(&apos;#uSpoiler3rRFPr&apos;)).val(&apos;Открыть спойлер&apos;);$(&apos;#uSpoiler3rRFPr&apos;).attr(&apos;class&apos;,&apos;uSpoilerClosed&apos;);}}&quot; value=&quot;Открыть спойлер&quot;/&gt;&lt;/div&gt;&lt;div class=&quot;uSpoilerText&quot; style=&quot;display:none;&quot;&gt;&lt;!--ust--&gt;&lt;img src=&quot;http://dl4.joxi.net/drive/2017/12/10/0011/3243/777387/87/eb9b490dc1.jpg&quot; border=&quot;0&quot; alt=&quot;&quot;/&gt;&lt;!--/ust--&gt;&lt;/div&gt;&lt;/div&gt;&lt;!--/uSpoiler--&gt;&lt;br /&gt;&lt;br /&gt;2. Добавление/удаление на ней объектов (мебель)&lt;br /&gt;&lt;br /&gt;3. Перемещение объектов (передвигать с привязкой к сетке, например стол занимает 1 ячейку в ширину и 2 ячейки в высоту).&lt;br /&gt;&lt;br /&gt;4. Поворот объекта ( все объекты визуализированы с помощью 4 картинок с разных сторон), то есть изменение координат при повороте и изменения текстуры объекта.&lt;br /&gt;&lt;br /&gt;Вот пример изображения как это должно выглядеть. &lt;br /&gt;&lt;!--uSpoiler--&gt;&lt;div class=&quot;uSpoilerClosed&quot; id=&quot;uSpoileraEy1nC&quot;&gt;&lt;div class=&quot;uSpoilerButBl&quot;&gt;&lt;input type=&quot;button&quot; class=&quot;uSpoilerButton&quot; onclick=&quot;if($(&apos;#uSpoileraEy1nC&apos;)[0]){if ($(&apos;.uSpoilerText&apos;,$(&apos;#uSpoileraEy1nC&apos;))[0].style.display==&apos;none&apos;){$(&apos;.uSpoilerText&apos;,$(&apos;#uSpoileraEy1nC&apos;))[0].style.display=&apos;&apos;;$(&apos;.uSpoilerButton&apos;,$(&apos;#uSpoileraEy1nC&apos;)).val(&apos;Закрыть спойлер&apos;);$(&apos;#uSpoileraEy1nC&apos;).attr(&apos;class&apos;,&apos;uSpoilerOpened&apos;);}else {$(&apos;.uSpoilerText&apos;,$(&apos;#uSpoileraEy1nC&apos;))[0].style.display=&apos;none&apos;;$(&apos;.uSpoilerButton&apos;,$(&apos;#uSpoileraEy1nC&apos;)).val(&apos;Открыть спойлер&apos;);$(&apos;#uSpoileraEy1nC&apos;).attr(&apos;class&apos;,&apos;uSpoilerClosed&apos;);}}&quot; value=&quot;Открыть спойлер&quot;/&gt;&lt;/div&gt;&lt;div class=&quot;uSpoilerText&quot; style=&quot;display:none;&quot;&gt;&lt;!--ust--&gt;&lt;img src=&quot;https://image.shutterstock.com/display_pic_with_logo/2372318/245126644/stock-vector-flat-d-isometric-scrum-process-concept-web-style-modern-infographics-with-digital-office-245126644.jpg&quot; border=&quot;0&quot; alt=&quot;&quot;/&gt;&lt;!--/ust--&gt;&lt;/div&gt;&lt;/div&gt;&lt;!--/uSpoiler--&gt;&lt;p&gt;&lt;b&gt;Добавлено&lt;/b&gt; (11 декабря 2017, 04:19)&lt;br /&gt;---------------------------------------------&lt;br /&gt;Может у кого то есть варианты без канвас сделать (только не Flash)?</content:encoded>
			<category>Скриптовые языки программирования</category>
			<dc:creator>wRagnarok</dc:creator>
			<guid>https://gcup.ru/forum/79-99563-1</guid>
		</item>
		<item>
			<title>Сравнение скоростей JS, Lua, Python, Ruby из Java</title>
			<link>https://gcup.ru/forum/79-99524-1</link>
			<pubDate>Tue, 05 Dec 2017 10:32:11 GMT</pubDate>
			<description>Форум: &lt;a href=&quot;https://gcup.ru/forum/79&quot;&gt;Скриптовые языки программирования&lt;/a&gt;&lt;br /&gt;Автор темы: goldsphere&lt;br /&gt;Автор последнего сообщения: GC-Vic&lt;br /&gt;Количество ответов: 1</description>
			<content:encoded>В общем решил провести Speed Test для данных языков из Java. Алгоритм простой. В массиве из 1000000 элементов, каждому присваивается индекс, а потом всё суммируется. И я не ожидал, что разница будет такая большая (хотя я и ничего ранее на них не писал (почти)).&lt;br /&gt;&lt;br /&gt;Lua 352 ms&lt;br /&gt;JavaScript 616 ms&lt;br /&gt;Ruby 1778 ms&lt;br /&gt;Python 2509 ms&lt;br /&gt;&lt;br /&gt;Всё запускалось через ScriptEngine. И у меня такой вопрос. Понятно, что у всех языков есть свои сильные стороны, где они работают быстрее. Тот алгоритм, на котором я тестировал это так, пример. Какие тесты нужно провести, чтобы объективно сравнить эти языки. И если я не буду использовать ScriptEngine, а буду напрямую работать с API этих языков, даст ли это преимущество?</content:encoded>
			<category>Скриптовые языки программирования</category>
			<dc:creator>goldsphere</dc:creator>
			<guid>https://gcup.ru/forum/79-99524-1</guid>
		</item>
		<item>
			<title>Язык программирования Io</title>
			<link>https://gcup.ru/forum/79-85096-1</link>
			<pubDate>Thu, 30 Nov 2017 17:04:11 GMT</pubDate>
			<description>Форум: &lt;a href=&quot;https://gcup.ru/forum/79&quot;&gt;Скриптовые языки программирования&lt;/a&gt;&lt;br /&gt;Описание темы: Вопросы про этот язык&lt;br /&gt;Автор темы: colencor&lt;br /&gt;Автор последнего сообщения: colencor&lt;br /&gt;Количество ответов: 26</description>
			<content:encoded>Для начала, знает ли кто нибудь, что нибудь, про этот язык.&lt;br /&gt;Я узнал про Io прочтя книгу &quot;Семь языков за семь недель&quot; (ДМК, Брюс Тейт)&lt;br /&gt;На этот момент мною написан код myIf ( изменённый if ), а также несколько&lt;br /&gt;реализаций перевода из арабской системы чисел в латинскую.&lt;br /&gt;Сейчас пытаюсь написать приложение &quot;из латинской в арабскую&quot;.&lt;br /&gt;Вопросов куча &lt;img rel=&quot;usm&quot; src=&quot;https://gcup.ru/SML/wacko.gif&quot; border=&quot;0&quot; align=&quot;absmiddle&quot; alt=&quot;%)&quot; /&gt;&lt;p&gt;&lt;b&gt;Добавлено&lt;/b&gt; (16 августа 2016, 04:46)&lt;br /&gt;---------------------------------------------&lt;br /&gt;Примеры кода:&lt;br /&gt;№1&lt;br /&gt;&lt;br /&gt;&lt;!--uzcode--&gt;&lt;div class=&quot;bbCodeBlock&quot;&gt;&lt;div class=&quot;bbCodeName&quot; style=&quot;padding-left:5px;font-weight:bold;font-size:7pt&quot;&gt;Код&lt;/div&gt;&lt;div class=&quot;codeMessage&quot; style=&quot;border:1px inset;max-height:200px;overflow:auto;height:expression(this.scrollHeight&lt;5?this.style.height:scrollHeight&gt;200?&apos;200px&apos;:&apos;&apos;+(this.scrollHeight+5)+&apos;px&apos;);&quot;&gt;&lt;!--uzc--&gt;rim := list( &quot;M&quot;, &quot;D&quot;, &quot;C&quot;, &quot;L&quot;, &quot;X&quot;, &quot;V&quot;, &quot;I&quot; &amp;#41;&lt;br /&gt;%+&amp;nbsp;&amp;nbsp;:= method( a, b, ( a - a % b&amp;#41;/b&amp;#41;&lt;br /&gt;rt&amp;nbsp;&amp;nbsp;:= method( for( i, 1,&amp;nbsp;&amp;nbsp;%+( a, 1000&amp;#41;, write(&quot;M&quot;&amp;#41;&amp;#41;&amp;#41;&lt;br /&gt;rs&amp;nbsp;&amp;nbsp;:= method( for( i, 0, 2, ( s := %+( a % 10**(3-i&amp;#41;, 10**(2-i&amp;#41;&amp;#41;; i2 := 2*i+2; i1 := 2*i+1&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if( s == 9, write( rim at(i2&amp;#41; .. rim at(2*i&amp;#41;&amp;#41;,&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if( s == 4, write( rim at(i2&amp;#41; .. rim at( i1&amp;#41;&amp;#41;,&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if((s1 := s - 5&amp;#41; &lt; 0, for( j, 1, s,&amp;nbsp;&amp;nbsp;write(rim at(i2&amp;#41;&amp;#41;&amp;#41;,&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;write(rim at(i1&amp;#41;&amp;#41; for( j, 1, s1, write(rim at(i2&amp;#41;&amp;#41;&amp;#41;&amp;#41;&amp;#41;&amp;#41;&amp;#41;&amp;#41;&amp;#41;&lt;br /&gt;&lt;br /&gt;input := method( File standardInput readLine&amp;#41;&lt;br /&gt;line := &quot;----------------------------&amp;#92;n&quot;&lt;br /&gt;writeln(&quot;Press Enter for exit&quot;&amp;#41;&lt;br /&gt;loop(inp := input; if(inp isNil, break&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;a := inp asNumber; if(a isNan,&amp;nbsp;&amp;nbsp;break &amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;write( line, &quot; &quot;, a, &quot; ===&gt; &quot;&amp;#41; rt rs&quot;&quot; write( &quot;&amp;#92;n&quot;, line&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;#41;&lt;!--/uzc--&gt;&lt;/div&gt;&lt;/div&gt;&lt;!--/uzcode--&gt;&lt;br /&gt;&lt;br /&gt;№2&lt;br /&gt;&lt;br /&gt;&lt;!--uzcode--&gt;&lt;div class=&quot;bbCodeBlock&quot;&gt;&lt;div class=&quot;bbCodeName&quot; style=&quot;padding-left:5px;font-weight:bold;font-size:7pt&quot;&gt;Код&lt;/div&gt;&lt;div class=&quot;codeMessage&quot; style=&quot;border:1px inset;max-height:200px;overflow:auto;height:expression(this.scrollHeight&lt;5?this.style.height:scrollHeight&gt;200?&apos;200px&apos;:&apos;&apos;+(this.scrollHeight+5)+&apos;px&apos;);&quot;&gt;&lt;!--uzc--&gt;myIf := method( call evalArgAt( 2 &amp;#41;; ifFalse( call evalArgAt( 1 &amp;#41;&amp;#41;; ifTrue( call evalArgAt( 0 &amp;#41;&amp;#41;&amp;#41;&lt;br /&gt;rim := list( &quot;M&quot;, &quot;D&quot;, &quot;C&quot;, &quot;L&quot;, &quot;X&quot;, &quot;V&quot;, &quot;I&quot; &amp;#41;&lt;br /&gt;%+&amp;nbsp;&amp;nbsp;:= method( a, b, ( a - a % b&amp;#41;/b&amp;#41;&lt;br /&gt;rt&amp;nbsp;&amp;nbsp;:= method( for( i, 1,&amp;nbsp;&amp;nbsp;%+( a, 1000&amp;#41;, write(&quot;M&quot;&amp;#41;&amp;#41;&amp;#41;&lt;br /&gt;rs&amp;nbsp;&amp;nbsp;:= method( for( i, 0, 2, ( s := %+( a % 10**(3-i&amp;#41;, 10**(2-i&amp;#41;&amp;#41;&amp;#41;; i2 := 2*i+2; i1 := 2*i+1; s1 := s - 5&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;( s == 9&amp;#41; myIf( write( rim at(i2&amp;#41; .. rim at(2*i&amp;#41;&amp;#41;&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;( s == 4&amp;#41; myIf( write( rim at(i2&amp;#41; .. rim at( i1&amp;#41;&amp;#41;&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;( 0 &lt; s and s &lt; 4 &amp;#41; myIf( for( j, 1, s,&amp;nbsp;&amp;nbsp;write(rim at(i2&amp;#41;&amp;#41;&amp;#41;&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;( 5 &lt;= s and s &lt; 9&amp;#41; myIf(write(rim at(i1&amp;#41;&amp;#41; for( j, 1, s1, write(rim at(i2&amp;#41;&amp;#41;&amp;#41;&amp;#41;&amp;#41;&amp;#41;&lt;br /&gt;input := method( File standardInput readLine&amp;#41;&lt;br /&gt;line := &quot;---------------------------&amp;#92;n&quot;&lt;br /&gt;writeln(&quot;Press Enter for exit&quot;&amp;#41;&lt;br /&gt;loop(&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;inp := input; if(inp isNil, break&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;a := inp asNumber; if(a isNan,&amp;nbsp;&amp;nbsp;break &amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;write( line, &quot; &quot;, a, &quot; ===&gt; &quot;&amp;#41; rt rs&quot;&quot; write( &quot;&amp;#92;n&quot;, line&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;#41;&lt;br /&gt;&lt;!--/uzc--&gt;&lt;/div&gt;&lt;/div&gt;&lt;!--/uzcode--&gt;</content:encoded>
			<category>Скриптовые языки программирования</category>
			<dc:creator>colencor</dc:creator>
			<guid>https://gcup.ru/forum/79-85096-1</guid>
		</item>
		<item>
			<title>[Гайд] Как создать систему уровней в браузерной MMORPG</title>
			<link>https://gcup.ru/forum/79-99285-1</link>
			<pubDate>Mon, 23 Oct 2017 19:58:31 GMT</pubDate>
			<description>Форум: &lt;a href=&quot;https://gcup.ru/forum/79&quot;&gt;Скриптовые языки программирования&lt;/a&gt;&lt;br /&gt;Описание темы: PHP, MySQL&lt;br /&gt;Автор темы: HellWalk&lt;br /&gt;Автор последнего сообщения: HellWalk&lt;br /&gt;Количество ответов: 4</description>
			<content:encoded>Идея написания данного руководства появилась с &lt;a class=&quot;link&quot; href=&quot;https://gcup.ru/go?https://toster.ru/q/469186&quot; title=&quot;https://toster.ru/q/469186&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;этого вопроса&lt;/a&gt; на тостере - как оказалось, банального руководства о том, как сделать уровни в браузерной игре, в рунете нет. Подумал, почему бы не сделать интернет чуточку полезней, и написал руководство по этой теме.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;a class=&quot;link&quot; href=&quot;https://gcup.ru/go?http://walkweb.ru/level/&quot; title=&quot;http://walkweb.ru/level/&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;Демо&lt;/a&gt;&lt;br /&gt;&lt;a class=&quot;link&quot; href=&quot;https://gcup.ru/go?https://github.com/WalkWeb/Browser-MMORPG-Level-System&quot; title=&quot;https://github.com/WalkWeb/Browser-MMORPG-Level-System&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;Код на github&lt;/a&gt;&lt;br /&gt;&lt;a class=&quot;link&quot; href=&quot;https://gcup.ru/go?http://www.diablo1.ru/dusk-world/diary-05.php&quot; title=&quot;http://www.diablo1.ru/dusk-world/diary-05.php&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;Само руководство&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Разумеется, руководство ориентированно на новичков (но имеющих базовые знания PHP и SQL), взявшихся создавать свою браузерную MMORPG с нуля.</content:encoded>
			<category>Скриптовые языки программирования</category>
			<dc:creator>HellWalk</dc:creator>
			<guid>https://gcup.ru/forum/79-99285-1</guid>
		</item>
		<item>
			<title>s4g - скриптовый язык программирования</title>
			<link>https://gcup.ru/forum/79-99165-1</link>
			<pubDate>Mon, 02 Oct 2017 06:00:34 GMT</pubDate>
			<description>Форум: &lt;a href=&quot;https://gcup.ru/forum/79&quot;&gt;Скриптовые языки программирования&lt;/a&gt;&lt;br /&gt;Автор темы: Byurrer&lt;br /&gt;Автор последнего сообщения: Byurrer&lt;br /&gt;Количество ответов: 0</description>
			<content:encoded>&lt;b&gt;s4g&lt;/b&gt; - скриптовый язык программирования&lt;br /&gt;&lt;b&gt;Язык программирования:&lt;/b&gt; C++ 11&lt;br /&gt;&lt;b&gt;Платформа:&lt;/b&gt; начиная с Windows XP и выше&lt;br /&gt;&lt;b&gt;Лицензия:&lt;/b&gt; свободная (MIT с некоторыми дополнениями)&lt;br /&gt;&lt;b&gt;Сайт:&lt;/b&gt; &lt;a class=&quot;link&quot; href=&quot;https://gcup.ru/go?https://s4g.su&quot; title=&quot;https://s4g.su&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;ссылка&lt;/a&gt;&lt;br /&gt;&lt;b&gt;Пользовательская документация:&lt;/b&gt; &lt;a class=&quot;link&quot; href=&quot;https://gcup.ru/go?https://s4g.su/guide.htm&quot; title=&quot;https://s4g.su/guide.htm&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;ссылка&lt;/a&gt;&lt;br /&gt;&lt;b&gt;Документация для программистов:&lt;/b&gt; &lt;a class=&quot;link&quot; href=&quot;https://gcup.ru/go?https://doc.s4g.su&quot; title=&quot;https://doc.s4g.su&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;ссылка&lt;/a&gt;&lt;br /&gt;&lt;b&gt;Быстрый старт:&lt;/b&gt; &lt;a class=&quot;link&quot; href=&quot;https://gcup.ru/go?https://s4g.su/stati/begin.html&quot; title=&quot;https://s4g.su/stati/begin.html&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;ссылка&lt;/a&gt;&lt;br /&gt;&lt;b&gt;Репозиторий:&lt;/b&gt; &lt;a class=&quot;link&quot; href=&quot;https://gcup.ru/go?https://dev.ds-servers.com/sip/s4g&quot; title=&quot;https://dev.ds-servers.com/sip/s4g&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;ссылка&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;s4g (scripts for games)&lt;/b&gt; – высокоуровневый, императивный, процедурный, встраиваемый, скриптовый язык программирования общего назначения, написанный на C++.&lt;br /&gt;s4g создавался как мощный, гибкий, быстрый и простой скриптовый язык (конечно же в балансе всего этого), предоставляющий достаточные выразительные средства для решения различных задач.&lt;br /&gt;Как такового понятия входа в программу нет, поэтому могут выполняться отдельные участки кода, такие как функции.&lt;br /&gt;s4g легко расширяем посредством предоставляемого набора функций (api). Файл s4g_lib_std.h яркий пример простого расширения языка, в данном файле происходит экспорт языковых функций в скриптовую систему.&lt;br /&gt;s4g поддерживает препроцесс похожий на C++.&lt;br /&gt;Тип виртуальной машины – стековая.&lt;br /&gt;При разработке был сделан особый упор на real-time производительность исполнения кода и отчетности скриптовой системы перед программистом, так как изначальная цель использования языка в среде критичной по времени исполнения.&lt;br /&gt;Является свободно распространяемым программным средством по лицензии MIT (см. файл LICENSE).&lt;br /&gt;&lt;br /&gt;На данный момент версия 0.9.2 то есть еще не все сделано, и язык еще немного сыроват, но это уже более стабильная версия. Требуются дополнительные тесты. Кому не трудно протестируйте))&lt;br /&gt;Язык будем потихоньку дорабатывать.&lt;br /&gt;&lt;br /&gt;Несколько примеров:&lt;br /&gt;&lt;!--uSpoiler--&gt;&lt;div class=&quot;uSpoilerClosed&quot; id=&quot;uSpoilerG_ed_s&quot;&gt;&lt;div class=&quot;uSpoilerButBl&quot;&gt;&lt;input type=&quot;button&quot; class=&quot;uSpoilerButton&quot; onclick=&quot;if($(&apos;#uSpoilerG_ed_s&apos;)[0]){if ($(&apos;.uSpoilerText&apos;,$(&apos;#uSpoilerG_ed_s&apos;))[0].style.display==&apos;none&apos;){$(&apos;.uSpoilerText&apos;,$(&apos;#uSpoilerG_ed_s&apos;))[0].style.display=&apos;&apos;;$(&apos;.uSpoilerButton&apos;,$(&apos;#uSpoilerG_ed_s&apos;)).val(&apos;Закрыть спойлер&apos;);$(&apos;#uSpoilerG_ed_s&apos;).attr(&apos;class&apos;,&apos;uSpoilerOpened&apos;);}else {$(&apos;.uSpoilerText&apos;,$(&apos;#uSpoilerG_ed_s&apos;))[0].style.display=&apos;none&apos;;$(&apos;.uSpoilerButton&apos;,$(&apos;#uSpoilerG_ed_s&apos;)).val(&apos;Открыть спойлер&apos;);$(&apos;#uSpoilerG_ed_s&apos;).attr(&apos;class&apos;,&apos;uSpoilerClosed&apos;);}}&quot; value=&quot;Открыть спойлер&quot;/&gt;&lt;/div&gt;&lt;div class=&quot;uSpoilerText&quot; style=&quot;display:none;&quot;&gt;&lt;!--ust--&gt;&lt;br /&gt;&lt;!--uzcode--&gt;&lt;div class=&quot;bbCodeBlock&quot;&gt;&lt;div class=&quot;bbCodeName&quot; style=&quot;padding-left:5px;font-weight:bold;font-size:7pt&quot;&gt;Код&lt;/div&gt;&lt;div class=&quot;codeMessage&quot; style=&quot;border:1px inset;max-height:200px;overflow:auto;&quot;&gt;&lt;!--uzc--&gt;&lt;br /&gt;//простой пример работы с препроцессом&lt;br /&gt;&lt;br /&gt;#define TEST2(str&amp;#41; #str&lt;br /&gt;#define TEST(a, b&amp;#41; TEST2(a ## b&amp;#41;&lt;br /&gt;print(TEST(qwe, asd&amp;#41; + &quot;&amp;#92;n&quot;&amp;#41;;&lt;br /&gt;&lt;br /&gt;#define TRUE 1&lt;br /&gt;#define FALSE 0&lt;br /&gt;&lt;br /&gt;#if TRUE&lt;br /&gt;print(&quot;good&amp;#92;n&quot;&amp;#41;;&lt;br /&gt;#else&lt;br /&gt;print(&quot;bad&amp;#92;n&quot;&amp;#41;;&lt;br /&gt;#endif&lt;br /&gt;&lt;!--/uzc--&gt;&lt;/div&gt;&lt;/div&gt;&lt;!--/uzcode--&gt;&lt;br /&gt;&lt;!--/ust--&gt;&lt;/div&gt;&lt;/div&gt;&lt;!--/uSpoiler--&gt;&lt;br /&gt;&lt;br /&gt;&lt;!--uSpoiler--&gt;&lt;div class=&quot;uSpoilerClosed&quot; id=&quot;uSpoilerjU0YjD&quot;&gt;&lt;div class=&quot;uSpoilerButBl&quot;&gt;&lt;input type=&quot;button&quot; class=&quot;uSpoilerButton&quot; onclick=&quot;if($(&apos;#uSpoilerjU0YjD&apos;)[0]){if ($(&apos;.uSpoilerText&apos;,$(&apos;#uSpoilerjU0YjD&apos;))[0].style.display==&apos;none&apos;){$(&apos;.uSpoilerText&apos;,$(&apos;#uSpoilerjU0YjD&apos;))[0].style.display=&apos;&apos;;$(&apos;.uSpoilerButton&apos;,$(&apos;#uSpoilerjU0YjD&apos;)).val(&apos;Закрыть спойлер&apos;);$(&apos;#uSpoilerjU0YjD&apos;).attr(&apos;class&apos;,&apos;uSpoilerOpened&apos;);}else {$(&apos;.uSpoilerText&apos;,$(&apos;#uSpoilerjU0YjD&apos;))[0].style.display=&apos;none&apos;;$(&apos;.uSpoilerButton&apos;,$(&apos;#uSpoilerjU0YjD&apos;)).val(&apos;Открыть спойлер&apos;);$(&apos;#uSpoilerjU0YjD&apos;).attr(&apos;class&apos;,&apos;uSpoilerClosed&apos;);}}&quot; value=&quot;Открыть спойлер&quot;/&gt;&lt;/div&gt;&lt;div class=&quot;uSpoilerText&quot; style=&quot;display:none;&quot;&gt;&lt;!--ust--&gt;&lt;br /&gt;&lt;!--uzcode--&gt;&lt;div class=&quot;bbCodeBlock&quot;&gt;&lt;div class=&quot;bbCodeName&quot; style=&quot;padding-left:5px;font-weight:bold;font-size:7pt&quot;&gt;Код&lt;/div&gt;&lt;div class=&quot;codeMessage&quot; style=&quot;border:1px inset;max-height:200px;overflow:auto;&quot;&gt;&lt;!--uzc--&gt;&lt;br /&gt;//пример работы с функциями с замыканием и с функция с переменным количеством аргументов&lt;br /&gt;&lt;br /&gt;var closure1 = function (&amp;#41;&lt;br /&gt;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;var a = 10;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;var c = 1;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;var fc = function(arg1&amp;#41; extern a,c&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return a+arg1-c;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;};&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;a = 15;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;var fc2 = function(arg1&amp;#41; extern a,c&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return a+arg1*c;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;};&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;var arrfunc = {fc;fc2;};&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return arrfunc;&lt;br /&gt;};&lt;br /&gt;&lt;br /&gt;var arrfunc = closure1(&amp;#41;;&lt;br /&gt;var nfc = arrfunc:&amp;#91;0];&lt;br /&gt;var nfc2 = arrfunc:&amp;#91;1];&lt;br /&gt;print(&quot;closure &quot; + tostring(nfc(10&amp;#41;&amp;#41; + &quot;&amp;#92;n&quot;&amp;#41;;&lt;br /&gt;print(&quot;closure &quot; + tostring(nfc2(10&amp;#41;&amp;#41; + &quot;&amp;#92;n&quot;&amp;#41;;&lt;br /&gt;&lt;br /&gt;var mmarg = function (...&amp;#41;&lt;br /&gt;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;var f1 = function(arg1&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;var f2 = function(a1&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;return a1*a1;&lt;br /&gt;&amp;nbsp;&amp;nbsp;};&lt;br /&gt;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;return f2(arg1&amp;#41;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;};&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;print(&quot;f1 table length is &quot; + tostring(f1(count(args&amp;#41;&amp;#41;&amp;#41; + &quot;&amp;#92;n&quot;&amp;#41;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;print(&quot;f1 argument number 1 is &quot; + tostring(f1(args:&amp;#91;1]&amp;#41;&amp;#41; + &quot;&amp;#92;n&quot;&amp;#41;;&lt;br /&gt;};&lt;br /&gt;&lt;br /&gt;mmarg(1,2,3,4,5,6&amp;#41;;&lt;br /&gt;&lt;!--/uzc--&gt;&lt;/div&gt;&lt;/div&gt;&lt;!--/uzcode--&gt;&lt;br /&gt;&lt;!--/ust--&gt;&lt;/div&gt;&lt;/div&gt;&lt;!--/uSpoiler--&gt;&lt;br /&gt;&lt;br /&gt;Возможно местами код не элегантный, а алгоритмы не совершенны, но мы делали для себя, а потом решили выпустить в open source))&lt;br /&gt;В некоторых местах мы могли оказаться не настолько компетентны на сколько хотелось бы. Выслушаем объективные комментарии, примем к сведению. Комментарии обсуждения целесообразности разработки не принимаем))</content:encoded>
			<category>Скриптовые языки программирования</category>
			<dc:creator>Byurrer</dc:creator>
			<guid>https://gcup.ru/forum/79-99165-1</guid>
		</item>
		<item>
			<title>Ошибка при добавлении текста на Python 3.5</title>
			<link>https://gcup.ru/forum/79-98510-1</link>
			<pubDate>Tue, 13 Jun 2017 20:36:14 GMT</pubDate>
			<description>Форум: &lt;a href=&quot;https://gcup.ru/forum/79&quot;&gt;Скриптовые языки программирования&lt;/a&gt;&lt;br /&gt;Автор темы: GameBot&lt;br /&gt;Автор последнего сообщения: GameBot&lt;br /&gt;Количество ответов: 0</description>
			<content:encoded>На моем компьютере IDLE ругается на строчку&lt;br /&gt;self.font = pygame.font.Font(None, 25)&lt;br /&gt;-------&lt;br /&gt;RuntimeError: Can&apos;t seek in stream&lt;br /&gt;&lt;br /&gt;Если ее закоментировать, то все нормально. Причем на другом компьютере все работает. Как это исправить?&lt;p&gt;&lt;b&gt;Добавлено&lt;/b&gt; (13 июня 2017, 23:36)&lt;br /&gt;---------------------------------------------&lt;br /&gt;Опять же, сам спрашиваю, сам нахожу ошибку&lt;br /&gt;Если такая ошибка есть, то питон не видит шрифт по умолчанию, что бы убрать проблему надо писать строчку сразу с шрифтом. К примеру так:&lt;br /&gt;import pygame&lt;br /&gt;pygame.init()&lt;br /&gt;pygame.font.init()&lt;br /&gt;font = pygame.font.SysFont(&quot;comicsansms&quot;, 72)</content:encoded>
			<category>Скриптовые языки программирования</category>
			<dc:creator>GameBot</dc:creator>
			<guid>https://gcup.ru/forum/79-98510-1</guid>
		</item>
		<item>
			<title>Python 3.5 модуль Pygame. Сохранение игры</title>
			<link>https://gcup.ru/forum/79-98487-1</link>
			<pubDate>Fri, 09 Jun 2017 11:38:15 GMT</pubDate>
			<description>Форум: &lt;a href=&quot;https://gcup.ru/forum/79&quot;&gt;Скриптовые языки программирования&lt;/a&gt;&lt;br /&gt;Автор темы: GameBot&lt;br /&gt;Автор последнего сообщения: Эргалон&lt;br /&gt;Количество ответов: 1</description>
			<content:encoded>Возможно ли на python сделать точку сохранения в игре? То есть поиграл, закрыл, начал играть снова на том же месте</content:encoded>
			<category>Скриптовые языки программирования</category>
			<dc:creator>GameBot</dc:creator>
			<guid>https://gcup.ru/forum/79-98487-1</guid>
		</item>
		<item>
			<title>Python 3.5 Окно pygame зависает сразу после включения</title>
			<link>https://gcup.ru/forum/79-98485-1</link>
			<pubDate>Thu, 08 Jun 2017 10:40:46 GMT</pubDate>
			<description>Форум: &lt;a href=&quot;https://gcup.ru/forum/79&quot;&gt;Скриптовые языки программирования&lt;/a&gt;&lt;br /&gt;Автор темы: GameBot&lt;br /&gt;Автор последнего сообщения: GameBot&lt;br /&gt;Количество ответов: 0</description>
			<content:encoded>Помогите пожалуйста&lt;br /&gt;Делаю игру в питоне с модулем pygame и окно сразу после запуска зависает. Как решить эту проблему?&lt;br /&gt;&lt;br /&gt;Скрипт:&lt;br /&gt;&lt;br /&gt;from pygame.locals import *&lt;br /&gt;import random&lt;br /&gt;import os&lt;br /&gt;&lt;br /&gt;#добавление массива с переменными&lt;br /&gt;game = {&lt;br /&gt;&quot;State&quot; : &quot;Loading&quot;,&lt;br /&gt;&quot;Flag&quot; : True,&lt;br /&gt;&quot;Room&quot; : None,&lt;br /&gt;&quot;Dibs&quot; : 0,&lt;br /&gt;&quot;Money&quot; : 0,&lt;br /&gt;&quot;MineLevel&quot; : 1,&lt;br /&gt;&quot;MineBody&quot; : None,&lt;br /&gt;&quot;MineHair&quot; : None,&lt;br /&gt;&quot;MineSilent&quot; : None,&lt;br /&gt;&quot;MineActor&quot; : None,&lt;br /&gt;&quot;MineLier&quot; : None,&lt;br /&gt;&quot;Reputation&quot; : 0,&lt;br /&gt;&quot;Meet&quot; : 0,&lt;br /&gt;&quot;Save&quot; : [10, 10],&lt;br /&gt;&quot;screen&quot; : None,&lt;br /&gt;&quot;clock&quot; : None,&lt;br /&gt;&quot;tup_xy&quot; : [0,0],&lt;br /&gt;&quot;fullscreen&quot; : False,&lt;br /&gt;&quot;Bg&quot;: None,&lt;br /&gt;&quot;scene&quot; : 1,&lt;br /&gt;&quot;backgorund&quot; : None&lt;br /&gt;}&lt;br /&gt;class TgameObject():&lt;br /&gt;def __init__(self, screen):&lt;br /&gt;self.screen = screen&lt;br /&gt;self.img = []&lt;br /&gt;self.img_n = 0&lt;br /&gt;self.xy = [0,0]&lt;br /&gt;#self.font = pygame.font.Font(None, 25)&lt;br /&gt;def update(self):&lt;br /&gt;self.screen.blit(self.img[self.img_n], self.xy)&lt;br /&gt;def load_img(self, fname):&lt;br /&gt;path = &apos;data&amp;#92;img&amp;#92;&amp;#92;&apos;&lt;br /&gt;ext = fname.split(&apos;.&apos;)[-1]&lt;br /&gt;if ext == &quot;png&quot;:&lt;br /&gt;self.img.append(pygame.image.load(path+fname).convert_alpha())&lt;br /&gt;else:&lt;br /&gt;self.img.append(pygame.image.load(path+fname).convert())&lt;br /&gt;&lt;br /&gt;class TBG(TgameObject):&lt;br /&gt;def __init__(self, screen):&lt;br /&gt;TgameObject.__init__(self,screen)&lt;br /&gt;def update(self):&lt;br /&gt;TgameObject.update(self)&lt;br /&gt;xy = [0, 0]&lt;br /&gt;self.img_n += 1&lt;br /&gt;self.screen.blit(self.img[self.img_n], xy)&lt;br /&gt;self.img_n = 0&lt;br /&gt;&lt;br /&gt;pygame.init()&lt;br /&gt;size = pygame.display.list_modes()[0]&lt;br /&gt;size = [800, 480]&lt;br /&gt;game[&quot;screen&quot;] = pygame.display.set_mode(size)&lt;br /&gt;game[&quot;clock&quot;] = pygame.time.Clock()&lt;br /&gt;# когда будут еще картинки, оставить только 1 лоад вг1&lt;br /&gt;game[&quot;screen&quot;] = pygame.display.set_mode(size)&lt;br /&gt;game[&quot;background&quot;] = TBG(game[&quot;screen&quot;])&lt;br /&gt;game[&quot;background&quot;].load_img(&apos;Bg1.png&apos;)&lt;br /&gt;game[&quot;background&quot;].load_img(&apos;Bg1.png&apos;)&lt;br /&gt;game[&quot;background&quot;].load_img(&apos;Bg1.png&apos;)&lt;br /&gt;game[&quot;background&quot;].load_img(&apos;Bg1.png&apos;)&lt;br /&gt;game[&quot;background&quot;].load_img(&apos;Bg1.png&apos;)&lt;br /&gt;game[&quot;background&quot;].load_img(&apos;Bg1.png&apos;)&lt;br /&gt;game[&quot;background&quot;].load_img(&apos;Bg1.png&apos;)&lt;br /&gt;&lt;br /&gt;def gui(screen):&lt;br /&gt;global game&lt;br /&gt;&lt;br /&gt;def render(screen):&lt;br /&gt;global game&lt;br /&gt;game[&apos;screen&apos;].fill([0,0,0])&lt;br /&gt;game[&apos;background&apos;].update()&lt;br /&gt;gui(game[&apos;screen&apos;])&lt;br /&gt;pygame.display.update()&lt;br /&gt;pygame.display.flip()&lt;br /&gt;&lt;br /&gt;def player():&lt;br /&gt;global game&lt;br /&gt;pass&lt;br /&gt;&lt;br /&gt;# Обработка событий&lt;br /&gt;def events():&lt;br /&gt;global game&lt;br /&gt;pass&lt;br /&gt;&lt;br /&gt;def comp():&lt;br /&gt;global game&lt;br /&gt;pass&lt;br /&gt;&lt;br /&gt;def main():&lt;br /&gt;global game&lt;br /&gt;print(&quot;Hello world&quot;)&lt;br /&gt;while game[&quot;Flag&quot;] == True:&lt;br /&gt;events()&lt;br /&gt;render(game[&apos;screen&apos;])&lt;br /&gt;pygame.quit()&lt;br /&gt;if __name__ == &quot;__main__&quot;:&lt;br /&gt;main()&lt;br /&gt;&lt;br /&gt;ссылка на картинку&lt;br /&gt;http://s1.uploadpics.ru/images/bkIBB5gnUM.png&lt;br /&gt;&lt;br /&gt;Заранее спасибо &lt;img rel=&quot;usm&quot; src=&quot;https://gcup.ru/SML/happy.gif&quot; border=&quot;0&quot; align=&quot;absmiddle&quot; alt=&quot;^_^&quot; /&gt; ^_^&lt;br /&gt;Печенек вам&lt;p&gt;&lt;b&gt;Добавлено&lt;/b&gt; (08 июня 2017, 13:40)&lt;br /&gt;---------------------------------------------&lt;br /&gt;Все, я нашел проблему&lt;br /&gt;Надо в функции events поставить какой нибудь код&lt;br /&gt;К примеру этот&lt;br /&gt;for e in pygame.event.get():&lt;br /&gt; if e.type == KEYDOWN:&lt;br /&gt; if e.key == K_ESCAPE:&lt;br /&gt; game[&quot;Flag&quot;] = False&lt;br /&gt; print(&quot;QUIT&quot;)</content:encoded>
			<category>Скриптовые языки программирования</category>
			<dc:creator>GameBot</dc:creator>
			<guid>https://gcup.ru/forum/79-98485-1</guid>
		</item>
		<item>
			<title>Алгоритм.Симуляция футбольного/хоккейного и тд матча!</title>
			<link>https://gcup.ru/forum/79-98385-1</link>
			<pubDate>Sun, 28 May 2017 06:49:27 GMT</pubDate>
			<description>Форум: &lt;a href=&quot;https://gcup.ru/forum/79&quot;&gt;Скриптовые языки программирования&lt;/a&gt;&lt;br /&gt;Автор темы: morgan234&lt;br /&gt;Автор последнего сообщения: Puni&lt;br /&gt;Количество ответов: 1</description>
			<content:encoded>Всем день добрый!&lt;br /&gt;Уже давным давно занимаюсь программированием на php,mysql,javascript,nodejs.С этим вообще проблем нет !Все интерфейсы ,вся логика сайта готова и сто раз уже переделывалась!С самим программированием то есть проблем нет!&lt;br /&gt;Есть проблема скорее с логикой!Вот хоть расшибись не могу я вдуплить,каким образом произвести симуляцию матча!Точнее вот :матч начался ,игроки разводят в центре поля и дальше!А что дальше то?На чем основывать логику?Кому даст дальше пас игрок,как будут расположены партнеры и соперник!Вообще просто в ступор это вгоняет!&lt;br /&gt;не могу понять как сделать искуственный интелект !ТО есть грубо говоря как заставить его бегать,пасовать ,бить и принимать какие то решения,само собой исходя из своей тактики,тактики соперник и установок на матч!Неужели надо просто прописывать тысячи вариаций и на рандоме с воздействием каких то констант их считать?!Ну не может же так быть!Я думаю есть какой то более оригинальный способ симуляции!Я знаю как что писать,дело все в логике,не улавливаю я ее нить!Как сделать их передвижения и так далее?Может хоть кто нибудь направит меня на правильный курс!Мне не надо кусков кода или еще чего!Просто обьяснить логику!&lt;br /&gt;Я делал математическое вычесление результатов матча,основываясь на показателях игроков,воздействия тактики ,схем и так далее,но это все не то!&lt;br /&gt;Мне хочется более реалистичной симуляции,с выводом на экран текущих событий!&lt;br /&gt;Спасибо заранее!</content:encoded>
			<category>Скриптовые языки программирования</category>
			<dc:creator>morgan234</dc:creator>
			<guid>https://gcup.ru/forum/79-98385-1</guid>
		</item>
		<item>
			<title>Почему в LUA нельзя переместить часть данных</title>
			<link>https://gcup.ru/forum/79-98337-1</link>
			<pubDate>Sun, 14 May 2017 11:39:24 GMT</pubDate>
			<description>Форум: &lt;a href=&quot;https://gcup.ru/forum/79&quot;&gt;Скриптовые языки программирования&lt;/a&gt;&lt;br /&gt;Описание темы: из массива в другую часть этого же массива?&lt;br /&gt;Автор темы: dj--alex&lt;br /&gt;Автор последнего сообщения: dj--alex&lt;br /&gt;Количество ответов: 2</description>
			<content:encoded>Вопрос знающим&lt;br /&gt;Что я делаю не так:?&lt;br /&gt;как переместить в памяти в массиве блок данных так чтобы&lt;br /&gt;он читался,&lt;br /&gt;я его копирую в другую часть этого же массива&lt;br /&gt;а там NULL вместо него. (nil) Такая же конструкция обязана работать.&lt;br /&gt;я в PHP тысячу раз такое делал, я понимаю что в ЛУА вообще работа с массивами корява но не настолько же.&lt;br /&gt;main.lua 145 bad argument #1 to &apos;byte&apos; (string expected, got nil)&lt;br /&gt;&lt;br /&gt;data, size = love.filesystem.read (levelname);- читаем ффайл.&lt;br /&gt;xdata=freadbin (data); -- тут в массив загружается код уровня&lt;br /&gt;for a=624,31,1 do&lt;br /&gt;xdata[a+1000]=string.byte(xdata[a]); -- вот тут ВРОДЕ БЫ он копирует данные на новое место&lt;br /&gt;end&lt;br /&gt;можно и без String.byte - все равно будет скопирован хрен. ни одного из 30 байт!!!!&lt;br /&gt;&lt;br /&gt;hpmax=xdata[1634] ; - а вот тут main.lua 145 bad argument #1 to &apos;byte&apos; (string expected, got nil)</content:encoded>
			<category>Скриптовые языки программирования</category>
			<dc:creator>dj--alex</dc:creator>
			<guid>https://gcup.ru/forum/79-98337-1</guid>
		</item>
		<item>
			<title>Нужна помощь с JavaScript</title>
			<link>https://gcup.ru/forum/79-97848-1</link>
			<pubDate>Sun, 05 Mar 2017 15:33:13 GMT</pubDate>
			<description>Форум: &lt;a href=&quot;https://gcup.ru/forum/79&quot;&gt;Скриптовые языки программирования&lt;/a&gt;&lt;br /&gt;Описание темы: анимация&lt;br /&gt;Автор темы: johniksilver&lt;br /&gt;Автор последнего сообщения: Code_Bryant&lt;br /&gt;Количество ответов: 6</description>
			<content:encoded>Доброго времени суток.&lt;br /&gt;Ребят &lt;b&gt;помогите разобраться:&lt;/b&gt;&lt;br /&gt;Учу языки программирования &lt;span style=&quot;color:blue&quot;&gt;php, JS&lt;/span&gt; и т.д и для практики решил сделать &lt;u&gt;браузерную игру&lt;/u&gt;...&lt;br /&gt;Ну уже много чего сделал... и вот появилась у меня идея, сделать охоту в игре похожей на проект &quot;&lt;i&gt;&lt;b&gt;dwar.ru&lt;/b&gt;&lt;/i&gt;&quot;... Но без использования &lt;span style=&quot;color:red&quot;&gt;&lt;b&gt;FLASH&lt;/b&gt;&lt;/span&gt;.(кто не знает объясню на пальцах как она там реализована: есть некоторое поле с видом сверху и по полю бегают &lt;u&gt;&lt;i&gt;&lt;b&gt;монстрики&lt;/b&gt;&lt;/i&gt;&lt;/u&gt;, при нажатие на них ты нападаешь на монстра и начинается бой...) вот меня интересует &lt;span style=&quot;color:blue&quot;&gt;&lt;i&gt;&lt;b&gt;сама механика&lt;/b&gt;&lt;/i&gt;&lt;/span&gt; как они перемещаются по полю рандомно останавливаются или меняют направление движения.. вроде придумал конструкцию как это можно реализовать(&lt;u&gt;скрипты покажу ниже&lt;/u&gt;), но столкнулся с такой проблемой : при переходе между &quot;вкладками&quot; игры (в локацию, в магазин и обратно в охоту)(реализовано это с помощью AJAX без обновления страницы(на одной и той же странице в один див по необходимости подключаются файлы с локацией или магазином или охотой) &lt;span style=&quot;color:green&quot;&gt;&lt;b&gt;скрипт JS&lt;/b&gt;&lt;/span&gt; (который отвечает за передвижение монстров) &lt;span style=&quot;color:red&quot;&gt;&lt;b&gt;парится&lt;/b&gt;&lt;/span&gt; и монстры начинают по карте прыгать с невероятной скоростью... после обновления страницы всё опять &lt;span style=&quot;color:green&quot;&gt;&lt;u&gt;&lt;b&gt;работает хорошо &lt;/b&gt;&lt;/u&gt;&lt;/span&gt;и монстры более менее плавно перемещаются. .. &lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;color:green&quot;&gt;&lt;b&gt;[b]Код который двигает монстров по локации:&lt;/b&gt;[/b]&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;!--uzcode--&gt;&lt;div class=&quot;bbCodeBlock&quot;&gt;&lt;div class=&quot;bbCodeName&quot; style=&quot;padding-left:5px;font-weight:bold;font-size:7pt&quot;&gt;Код&lt;/div&gt;&lt;div class=&quot;codeMessage&quot; style=&quot;border:1px inset;max-height:200px;overflow:auto;height:expression(this.scrollHeight&lt;5?this.style.height:scrollHeight&gt;200?&apos;200px&apos;:&apos;&apos;+(this.scrollHeight+5)+&apos;px&apos;);&quot;&gt;&lt;!--uzc--&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;function Str(napravlenie, Id, pozX1, pozY1&amp;#41; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;var b = 1;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;var i = 1;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;var napr = parseFloat(napravlenie&amp;#41;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;var timerId = setInterval(function(&amp;#41;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;b++;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;window&amp;#91;&quot;img&quot;+b] = document.getElementById(Id&amp;#41;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(b&lt;200&amp;#41;{&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(napr == &quot;1&quot;&amp;#41;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;i = i-1.2; x = pozX1 + i;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(x &gt; 1&amp;#41;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;window&amp;#91;&quot;img&quot;+b].style.top = x + &apos;px&apos;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(napr == &quot;2&quot;&amp;#41;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;i = i+1.2; x = pozY1 + i;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(x &lt; 1000&amp;#41;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;window&amp;#91;&quot;img&quot;+b].style.left = x + &apos;px&apos;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(napr == &quot;3&quot;&amp;#41;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;i = i+1.2; x = pozX1 + i;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(x &lt; 1000&amp;#41;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;window&amp;#91;&quot;img&quot;+b].style.top = x + &apos;px&apos;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(napr == &quot;4&quot;&amp;#41;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;i = i-1.2; x = pozY1 + i;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(x &gt; 1&amp;#41;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;window&amp;#91;&quot;img&quot;+b].style.left = x + &apos;px&apos;;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;else{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;console.log(&apos;Перемещение окончено&apos;&amp;#41;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;clearInterval(timerId&amp;#41;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;setTimeout(rand, 1000, Id&amp;#41;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;},100&amp;#41;&lt;br /&gt;};&amp;nbsp;&amp;nbsp;&lt;br /&gt; &lt;br /&gt;function rand(Id&amp;#41;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;function getRandomInRange(min, max&amp;#41; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return Math.floor(Math.random(&amp;#41; * (max - min + 1&amp;#41;&amp;#41; + min;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;var Rand2 = getRandomInRange(1, 4&amp;#41;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;var Rand3 = getRandomInRange(1, 1000&amp;#41;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;var img = document.getElementById(Id&amp;#41;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;var pozX = img.offsetTop;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;var pozY = img.offsetLeft;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;pozX= parseFloat(pozX&amp;#41;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;pozY= parseFloat(pozY&amp;#41;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;console.log(&apos;Я в данный момнт&amp;nbsp;&amp;nbsp;&apos; +pozX+&apos;x&apos;+pozY+&apos; буду идти -&gt;&apos;+Rand2&amp;#41;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(Rand2 == 1&amp;#41;{ pozX2 = pozX - 100;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;var napr = &quot;1&quot;; setTimeout(Str, 10, napr,Id,pozX,pozY&amp;#41;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(Rand2 == 2&amp;#41;{&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;pozX2 = pozX + 100;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;var napr = &quot;3&quot;; setTimeout(Str, 10, napr,Id,pozX,pozY&amp;#41;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(Rand2 == 3&amp;#41;{ pozY2 = pozY - 100;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;var napr = &quot;2&quot;; setTimeout(Str, 10, napr,Id,pozX,pozY&amp;#41;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(Rand2 == 4&amp;#41;{pozY2 = pozY + 100;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;var napr = &quot;4&quot;; setTimeout(Str, 10, napr,Id,pozX,pozY&amp;#41;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;};&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&lt;!--/uzc--&gt;&lt;/div&gt;&lt;/div&gt;&lt;!--/uzcode--&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;color:blue&quot;&gt;&lt;b&gt;Код который получает из БД монстрика и отправляет его на локацию:&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;!--uzcode--&gt;&lt;div class=&quot;bbCodeBlock&quot;&gt;&lt;div class=&quot;bbCodeName&quot; style=&quot;padding-left:5px;font-weight:bold;font-size:7pt&quot;&gt;Код&lt;/div&gt;&lt;div class=&quot;codeMessage&quot; style=&quot;border:1px inset;max-height:200px;overflow:auto;height:expression(this.scrollHeight&lt;5?this.style.height:scrollHeight&gt;200?&apos;200px&apos;:&apos;&apos;+(this.scrollHeight+5)+&apos;px&apos;);&quot;&gt;&lt;!--uzc--&gt;$i=100;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;$LoadMonster = mysqli_query($link,&quot;SELECT * FROM monsters WHERE M_LOCATION=&apos;$users2&amp;#91;location]&apos;&quot;&amp;#41;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;while($LoadMonster2 = mysqli_fetch_assoc($LoadMonster&amp;#41;&amp;#41;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;$rand = rand(1,4&amp;#41;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;$name = $LoadMonster2&amp;#91;M_ID];&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;$style = (file_exists(&quot;../images/monsters/$LoadMonster2&amp;#91;MONSTER_ID].gif&quot;&amp;#41;&amp;#41;?&quot;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;img&amp;nbsp;&amp;nbsp;src=&apos;../images/monsters/$LoadMonster2&amp;#91;MONSTER_ID].gif&apos; style=&apos;width:40px; height:40px;&apos; &gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&quot;:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&quot;&lt;img src=&apos;../images/monsters/zombie_walk.gif&apos; style=&apos;width:40px; height:40px;&apos; &gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&quot;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;$style2 = &quot;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;a class=&apos;test&apos; id=&apos;$LoadMonster2&amp;#91;M_ID]&apos;style=&apos;position:absolute;top:&quot;.$LoadMonster2&amp;#91;poz_x].&quot;px;left:&quot;.$LoadMonster2&amp;#91;poz_y].&quot;px;cursor: pointer; &apos;&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;input type=&apos;hidden&apos; value=&apos;monster&apos;&gt;&lt;br&gt;&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;center&gt;&lt;strong&gt;&lt;small&gt;$LoadMonster2&amp;#91;MONSTER_NAME] &amp;#91;$LoadMonster2&amp;#91;M_LVL]]&lt;/small&gt;&lt;/strong&gt;&lt;/center&gt;&quot;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.$style.&quot;&lt;/a&gt;&quot;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;$interval = &quot;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;setTimeout(function(&amp;#41;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;var napravlenie = &apos;$rand&apos;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;var Id$name = &amp;#92;&quot;$name&amp;#92;&quot;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;setTimeout(Str, $i, napravlenie, Id$name, &quot;.$LoadMonster2&amp;#91;poz_x].&quot;,&quot;.$LoadMonster2&amp;#91;poz_y].&quot; &amp;#41;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}, $i&amp;#41;;&quot;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;$i++;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;$allStyle = $allStyle.$style2;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;$allInterval = $allInterval.$interval;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;echo $allStyle;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;echo&quot;&lt;script tyle=&apos;text/javascript&apos;&gt;&quot;.$allInterval.&quot;&lt;/script&gt;&quot;;&lt;!--/uzc--&gt;&lt;/div&gt;&lt;/div&gt;&lt;!--/uzcode--&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;color:blue&quot;&gt;&lt;i&gt;&lt;b&gt;Не судите строго... я только учусь(так для себя для общего развития)&lt;/b&gt;&lt;/i&gt;&lt;/span&gt; &lt;img rel=&quot;usm&quot; src=&quot;https://gcup.ru/SML/blink.gif&quot; border=&quot;0&quot; align=&quot;absmiddle&quot; alt=&quot;blink&quot; /&gt; &lt;br /&gt;&lt;br /&gt;Кому интересно можете посмотреть как это работает: &lt;a class=&quot;link&quot; href=&quot;https://gcup.ru/go?http://r95852gs.beget.tech/&quot; title=&quot;http://r95852gs.beget.tech/&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;&lt;span style=&quot;color:blue&quot;&gt;&lt;b&gt;тут &lt;/b&gt;&lt;/span&gt;&lt;/a&gt;там регистрация очень простая нужно только логин и пароль...</content:encoded>
			<category>Скриптовые языки программирования</category>
			<dc:creator>johniksilver</dc:creator>
			<guid>https://gcup.ru/forum/79-97848-1</guid>
		</item>
		<item>
			<title>[ PHP MySQL ] Оптимизация запроса</title>
			<link>https://gcup.ru/forum/79-97316-1</link>
			<pubDate>Wed, 21 Dec 2016 13:58:50 GMT</pubDate>
			<description>Форум: &lt;a href=&quot;https://gcup.ru/forum/79&quot;&gt;Скриптовые языки программирования&lt;/a&gt;&lt;br /&gt;Автор темы: Kempston&lt;br /&gt;Автор последнего сообщения: Kempston&lt;br /&gt;Количество ответов: 0</description>
			<content:encoded>Такой вопрос. Можно ли как-то оптимизировать два запроса - в идеале сократить их до одного - для решения задачи чтения строки и обновлением, при этом, в ней одной ячейки.&lt;br /&gt;&lt;br /&gt;&lt;!--uzcode--&gt;&lt;div class=&quot;bbCodeBlock&quot;&gt;&lt;div class=&quot;bbCodeName&quot; style=&quot;padding-left:5px;font-weight:bold;font-size:7pt&quot;&gt;Код&lt;/div&gt;&lt;div class=&quot;codeMessage&quot; style=&quot;border:1px inset;max-height:200px;overflow:auto;height:expression(this.scrollHeight&lt;5?this.style.height:scrollHeight&gt;200?&apos;200px&apos;:&apos;&apos;+(this.scrollHeight+5)+&apos;px&apos;);&quot;&gt;&lt;!--uzc--&gt;$sq1=&quot;SELECT * FROM table WHERE ( field1=&apos;search&apos; &amp;#41; LIMIT 1&quot;;&lt;br /&gt;$sq2=&quot;UPDATE table SET field2=&apos;value&apos; WHERE field1=&apos;search&apos; LIMIT 1&quot;;&lt;br /&gt;&lt;!--/uzc--&gt;&lt;/div&gt;&lt;/div&gt;&lt;!--/uzcode--&gt;&lt;br /&gt;На ум приходит объединить запросы. Наверно, это дает какую-то экономию. Если не на уровне БД, то хотя бы на уровне скрипта php.&lt;br /&gt;&lt;br /&gt;&lt;!--uzcode--&gt;&lt;div class=&quot;bbCodeBlock&quot;&gt;&lt;div class=&quot;bbCodeName&quot; style=&quot;padding-left:5px;font-weight:bold;font-size:7pt&quot;&gt;Код&lt;/div&gt;&lt;div class=&quot;codeMessage&quot; style=&quot;border:1px inset;max-height:200px;overflow:auto;height:expression(this.scrollHeight&lt;5?this.style.height:scrollHeight&gt;200?&apos;200px&apos;:&apos;&apos;+(this.scrollHeight+5)+&apos;px&apos;);&quot;&gt;&lt;!--uzc--&gt;$sq1=&quot;( UPDATE table SET field2=&apos;value&apos; WHERE field1=&apos;search&apos; LIMIT 1 &amp;#41; UNION ( SELECT * FROM table WHERE ( field1=&apos;search&apos; &amp;#41; LIMIT 1 &amp;#41;&quot;;&lt;!--/uzc--&gt;&lt;/div&gt;&lt;/div&gt;&lt;!--/uzcode--&gt;&lt;br /&gt;&lt;br /&gt;Но, я так понимаю, во второй половине запроса будет производиться еще раз поиск по всей таблице. А можно ли сделать так, чтобы оперировать уже найденной строкой? То есть, чтобы не искать ее повторно для записи.&lt;br /&gt;И еще. Что получится в результате выполнения объединенного запроса? Будет ли массив с данными?</content:encoded>
			<category>Скриптовые языки программирования</category>
			<dc:creator>Kempston</dc:creator>
			<guid>https://gcup.ru/forum/79-97316-1</guid>
		</item>
		<item>
			<title>[Python] Вопрос по поводу разработки программ для Windows</title>
			<link>https://gcup.ru/forum/79-97217-1</link>
			<pubDate>Sat, 03 Dec 2016 00:03:12 GMT</pubDate>
			<description>Форум: &lt;a href=&quot;https://gcup.ru/forum/79&quot;&gt;Скриптовые языки программирования&lt;/a&gt;&lt;br /&gt;Описание темы: Python, GUI. Что выбрать?&lt;br /&gt;Автор темы: GoldApple&lt;br /&gt;Автор последнего сообщения: GoldApple&lt;br /&gt;Количество ответов: 2</description>
			<content:encoded>Начал я изучать питон. Вроде как интересно, но есть проблема, которая заключается в том, что по стандарту нет какого-то особого пользовательского интерфейса. Есть код программы и место где она выполняется. Но этого мало, и мне хотелось бы создавать какие-то программы, в которых будут окна, кнопки, тулбары и т.д. Думаю смысл понятен.&lt;br /&gt;Главный вопрос: &quot;Что использовать для разработки программ на питом с GUI? Есть ли какие-то видео обучения, либо текстовые справки по такой теме?&quot;</content:encoded>
			<category>Скриптовые языки программирования</category>
			<dc:creator>GoldApple</dc:creator>
			<guid>https://gcup.ru/forum/79-97217-1</guid>
		</item>
		<item>
			<title>Прозрачность пикселя, или удалёние его[JavaScript][Canvas]</title>
			<link>https://gcup.ru/forum/79-97153-1</link>
			<pubDate>Wed, 23 Nov 2016 13:05:26 GMT</pubDate>
			<description>Форум: &lt;a href=&quot;https://gcup.ru/forum/79&quot;&gt;Скриптовые языки программирования&lt;/a&gt;&lt;br /&gt;Описание темы: Pixel Manipulation&lt;br /&gt;Автор темы: last2424&lt;br /&gt;Автор последнего сообщения: last2424&lt;br /&gt;Количество ответов: 4</description>
			<content:encoded>Драсте, давно не бывал на форуме.&lt;br /&gt;Значит, появилась проблема с пикселями. Сначала рисую пустого белого персонажа, а потом через манипуляцию пикселей натягиваю ему какой-либо рандомный цвет.&lt;br /&gt;И значит, не могу убрать ненужные пиксели.&lt;br /&gt;&lt;!--uSpoiler--&gt;&lt;div class=&quot;uSpoilerClosed&quot; id=&quot;uSpoilerruZpWk&quot;&gt;&lt;div class=&quot;uSpoilerButBl&quot;&gt;&lt;input type=&quot;button&quot; class=&quot;uSpoilerButton&quot; onclick=&quot;if($(&apos;#uSpoilerruZpWk&apos;)[0]){if ($(&apos;.uSpoilerText&apos;,$(&apos;#uSpoilerruZpWk&apos;))[0].style.display==&apos;none&apos;){$(&apos;.uSpoilerText&apos;,$(&apos;#uSpoilerruZpWk&apos;))[0].style.display=&apos;&apos;;$(&apos;.uSpoilerButton&apos;,$(&apos;#uSpoilerruZpWk&apos;)).val(&apos;Закрыть спойлер&apos;);$(&apos;#uSpoilerruZpWk&apos;).attr(&apos;class&apos;,&apos;uSpoilerOpened&apos;);}else {$(&apos;.uSpoilerText&apos;,$(&apos;#uSpoilerruZpWk&apos;))[0].style.display=&apos;none&apos;;$(&apos;.uSpoilerButton&apos;,$(&apos;#uSpoilerruZpWk&apos;)).val(&apos;Открыть спойлер&apos;);$(&apos;#uSpoilerruZpWk&apos;).attr(&apos;class&apos;,&apos;uSpoilerClosed&apos;);}}&quot; value=&quot;Открыть спойлер&quot;/&gt;&lt;/div&gt;&lt;div class=&quot;uSpoilerText&quot; style=&quot;display:none;&quot;&gt;&lt;!--ust--&gt;&lt;img src=&quot;https://photos-2.dropbox.com/t/2/AAD7LT_mm3Qd_MhfmmDWqPRO2YByt_JRq5fm8NIK8OmuVA/12/373492280/png/32x32/3/1479848400/0/2/%D0%A1%D0%BA%D1%80%D0%B8%D0%BD%D1%88%D0%BE%D1%82%202016-11-21%2017.15.06.png/EKfnjvoCGLl9IAIoAg/0jr-zpbSGbyOalAKjp3U3z8Abv-bCvvYTzV0-HyJq-A?size_mode=3&amp;dl=0&amp;size=1280x960&quot; border=&quot;0&quot; alt=&quot;&quot;/&gt;&lt;!--/ust--&gt;&lt;/div&gt;&lt;/div&gt;&lt;!--/uSpoiler--&gt;&lt;br /&gt;*всё что снаружи жёлтого - ненужные части*&lt;br /&gt;В спрайте эти части сами по себе прозрачные, но когда начинается манипуляция пикселями, то появляются эти ненужные куски.&lt;br /&gt;Вот код самой смены цвета:&lt;br /&gt;&lt;!--uzcode--&gt;&lt;div class=&quot;bbCodeBlock&quot;&gt;&lt;div class=&quot;bbCodeName&quot; style=&quot;padding-left:5px;font-weight:bold;font-size:7pt&quot;&gt;Код&lt;/div&gt;&lt;div class=&quot;codeMessage&quot; style=&quot;border:1px inset;max-height:200px;overflow:auto;height:expression(this.scrollHeight&lt;5?this.style.height:scrollHeight&gt;200?&apos;200px&apos;:&apos;&apos;+(this.scrollHeight+5)+&apos;px&apos;);&quot;&gt;&lt;!--uzc--&gt;function recolor(x, y, c1, c2, fillC&amp;#41; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;var imgData = graph.getImageData(x, y, c1, c2&amp;#41;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;var col = hexToRgbA(fillC&amp;#41;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;for(var i = 0; i &lt; imgData.data.length; i+=4&amp;#41;{&lt;br /&gt;//&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;console.log(&quot;r: &quot;+ imgData.data&amp;#91;i] + &quot;, g: &quot; + imgData.data&amp;#91;i+1] + &quot;, b: &quot; + imgData.data&amp;#91;i+2] + &quot;, a: &quot; + imgData.data&amp;#91;i+3]&amp;#41;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(imgData.data&amp;#91;i] &gt;= 50 &amp;&amp; imgData.data&amp;#91;i] &lt;= 255&amp;#41;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;imgData.data&amp;#91;i] = col.r-(255-imgData.data&amp;#91;i]&amp;#41;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;imgData.data&amp;#91;i+1] = col.g-(255-imgData.data&amp;#91;i+1]&amp;#41;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;imgData.data&amp;#91;i+2] = col.b-(255-imgData.data&amp;#91;i+2]&amp;#41;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;imgData.data&amp;#91;i+3] = imgData.data&amp;#91;i+3];&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;graph.putImageData(imgData, x, y&amp;#41;;&lt;br /&gt;}&lt;!--/uzc--&gt;&lt;/div&gt;&lt;/div&gt;&lt;!--/uzcode--&gt;</content:encoded>
			<category>Скриптовые языки программирования</category>
			<dc:creator>last2424</dc:creator>
			<guid>https://gcup.ru/forum/79-97153-1</guid>
		</item>
		<item>
			<title>[PHP] Отправка переменных на почту</title>
			<link>https://gcup.ru/forum/79-97018-1</link>
			<pubDate>Sun, 30 Oct 2016 19:44:01 GMT</pubDate>
			<description>Форум: &lt;a href=&quot;https://gcup.ru/forum/79&quot;&gt;Скриптовые языки программирования&lt;/a&gt;&lt;br /&gt;Автор темы: Veliky_Virus&lt;br /&gt;Автор последнего сообщения: JackNazaryan&lt;br /&gt;Количество ответов: 2</description>
			<content:encoded>Доброго времени суток! Для одного проекта требуется отправить переменные на скрипт (на сайте), скрипт должен получить переменные и отправить их на почту автоматом.&lt;br /&gt;&lt;br /&gt;Код из скрипта:&lt;br /&gt;&lt;!--uzcode--&gt;&lt;div class=&quot;bbCodeBlock&quot;&gt;&lt;div class=&quot;bbCodeName&quot; style=&quot;padding-left:5px;font-weight:bold;font-size:7pt&quot;&gt;Код&lt;/div&gt;&lt;div class=&quot;codeMessage&quot; style=&quot;border:1px inset;max-height:200px;overflow:auto;height:expression(this.scrollHeight&lt;5?this.style.height:scrollHeight&gt;200?&apos;200px&apos;:&apos;&apos;+(this.scrollHeight+5)+&apos;px&apos;);&quot;&gt;&lt;!--uzc--&gt;&lt;?php&lt;br /&gt;$name=$_GET&amp;#91;&apos;name&apos;];&lt;br /&gt;$sender=$_GET&amp;#91;&apos;sender&apos;];&lt;br /&gt;$phone=$_GET&amp;#91;&apos;phone&apos;];&lt;br /&gt;$sertificate=$_GET&amp;#91;&quot;sertificate&quot;];&lt;br /&gt;$message=$_GET&amp;#91;&apos;message&apos;];&lt;br /&gt;$app=$_GET&amp;#91;&apos;app&apos;];&lt;br /&gt;$destination=$_GET&amp;#91;&apos;destination&apos;];&lt;br /&gt;$theme = &quot;Новое сообщение&quot;;&lt;br /&gt;mail($destination,$theme,$name,$sender,$phone,$sertificate,$message,$app&amp;#41;;&lt;br /&gt;?&gt;&lt;!--/uzc--&gt;&lt;/div&gt;&lt;/div&gt;&lt;!--/uzcode--&gt;&lt;br /&gt;&lt;br /&gt;Письмо не приходит, что я делаю не так?</content:encoded>
			<category>Скриптовые языки программирования</category>
			<dc:creator>Veliky_Virus</dc:creator>
			<guid>https://gcup.ru/forum/79-97018-1</guid>
		</item>
		<item>
			<title>Не могут зайти в игру выходит смайл игра на &quot;PHP&quot; Помогите!</title>
			<link>https://gcup.ru/forum/79-74457-1</link>
			<pubDate>Mon, 19 Sep 2016 17:42:18 GMT</pubDate>
			<description>Форум: &lt;a href=&quot;https://gcup.ru/forum/79&quot;&gt;Скриптовые языки программирования&lt;/a&gt;&lt;br /&gt;Описание темы: Не могут зайти в игру выходит смайл игра на &quot;PHP&quot; помогите!&lt;br /&gt;Автор темы: 1Grant1&lt;br /&gt;Автор последнего сообщения: JohnnyHam&lt;br /&gt;Количество ответов: 5</description>
			<content:encoded>С друзьями делаем игру для контакта я захожу все норм! &lt;br /&gt;И некоторые друзья заходят тоже норм.&lt;br /&gt;а у некоторых ошибка (просто выходит грустный смайл)&lt;br /&gt;Помогите пж игра делается на php коде для контакта &lt;br /&gt;http://s1.uploadpics.ru/images/W1IqjtZEQb.jpg</content:encoded>
			<category>Скриптовые языки программирования</category>
			<dc:creator>1Grant1</dc:creator>
			<guid>https://gcup.ru/forum/79-74457-1</guid>
		</item>
		<item>
			<title>На чем написать софт для парсинга с подменой IP</title>
			<link>https://gcup.ru/forum/79-81131-1</link>
			<pubDate>Sat, 16 Jul 2016 06:26:27 GMT</pubDate>
			<description>Форум: &lt;a href=&quot;https://gcup.ru/forum/79&quot;&gt;Скриптовые языки программирования&lt;/a&gt;&lt;br /&gt;Описание темы: Нужно подгружать страницы различных сайтов.&lt;br /&gt;Автор темы: phphtml&lt;br /&gt;Автор последнего сообщения: phphtml&lt;br /&gt;Количество ответов: 3</description>
			<content:encoded>Здравствуйте.&lt;br /&gt;Подскажите, на какой программе будет не слишком сложно реализовать подгрузку хтмл со страниц.&lt;br /&gt;При этом нужно подменять исходящий IP и HTTP_USER_AGENT. &lt;br /&gt;Хотя бы в каком направление гуглить?&lt;br /&gt;&lt;br /&gt;Заранее благодарен за ответ.&lt;br /&gt;&lt;i&gt;Curl на php не подходит, медленно. И нужен именно софт.&lt;/i&gt;</content:encoded>
			<category>Скриптовые языки программирования</category>
			<dc:creator>phphtml</dc:creator>
			<guid>https://gcup.ru/forum/79-81131-1</guid>
		</item>
		<item>
			<title>Полет пули frontend или backend?</title>
			<link>https://gcup.ru/forum/79-78130-1</link>
			<pubDate>Thu, 07 Jul 2016 14:51:50 GMT</pubDate>
			<description>Форум: &lt;a href=&quot;https://gcup.ru/forum/79&quot;&gt;Скриптовые языки программирования&lt;/a&gt;&lt;br /&gt;Автор темы: nbid&lt;br /&gt;Автор последнего сообщения: fastos&lt;br /&gt;Количество ответов: 4</description>
			<content:encoded>Для браузерной многопользовательской реалтайм игры&lt;br /&gt;Как правильно делать полет пули?&lt;br /&gt;Косм корабль стреляет в другие. 2D. Типа Darkorbit.&lt;br /&gt;NodeJS - backend&lt;br /&gt;JS - frontend&lt;br /&gt;С одной стороны кажется правильней делать на фронтенд, но тогда будут читара.&lt;br /&gt;А если на backend и в онлайне 1000 чел к примеру, то не замучается сервер рассчитывать полеты всех пуль/ракет, от которых, к тому же, есть шанс увернуться? С определением сигнатур кораблей чтобы определять попадание.&lt;br /&gt;&lt;br /&gt;Подскажите пожалуйста, или скажите где почитать теорию?&lt;br /&gt;Заранее благодарю.</content:encoded>
			<category>Скриптовые языки программирования</category>
			<dc:creator>nbid</dc:creator>
			<guid>https://gcup.ru/forum/79-78130-1</guid>
		</item>
		<item>
			<title>Не работает авторизация на Laravel 5.2</title>
			<link>https://gcup.ru/forum/79-72395-1</link>
			<pubDate>Tue, 17 May 2016 08:56:16 GMT</pubDate>
			<description>Форум: &lt;a href=&quot;https://gcup.ru/forum/79&quot;&gt;Скриптовые языки программирования&lt;/a&gt;&lt;br /&gt;Автор темы: dima9595&lt;br /&gt;Автор последнего сообщения: dima9595&lt;br /&gt;Количество ответов: 4</description>
			<content:encoded>Решил опять пересесть с Angular&apos;а на Laravel 5, а тут такое...&lt;br /&gt;&lt;br /&gt;Написал простую авторизацию, по идеи, всё работает - отдаёт данные авторизованного пользователя (через dd(Auth::user())), а вот после обновлении страницы пропадает, как будто даже не авторизован( Даже пишется в сессию, что то типа: &quot;login_web_...&quot; =&gt; null. Как я понимаю, это типо данные авторизации.&lt;br /&gt;&lt;br /&gt;Route:&lt;br /&gt;&lt;!--uzcode--&gt;&lt;div class=&quot;bbCodeBlock&quot;&gt;&lt;div class=&quot;bbCodeName&quot; style=&quot;padding-left:5px;font-weight:bold;font-size:7pt&quot;&gt;Код&lt;/div&gt;&lt;div class=&quot;codeMessage&quot; style=&quot;border:1px inset;max-height:200px;overflow:auto;height:expression(this.scrollHeight&lt;5?this.style.height:scrollHeight&gt;200?&apos;200px&apos;:&apos;&apos;+(this.scrollHeight+5)+&apos;px&apos;);&quot;&gt;&lt;!--uzc--&gt;Route::get(&apos;/&apos;, &amp;#91;&apos;as&apos; =&gt; &apos;index&apos;, &apos;uses&apos; =&gt; &apos;HomeController@index&apos;]&amp;#41;;&lt;br /&gt;&lt;br /&gt;Route::group(&amp;#91;&apos;prefix&apos; =&gt; &apos;auth&apos;], function(&amp;#41;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;Route::get(&apos;login&apos;, &amp;#91;&apos;as&apos; =&gt; &apos;auth.getLogin&apos;, &apos;uses&apos; =&gt; &apos;Auth&amp;#92;AuthController@getLogin&apos;]&amp;#41;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;Route::post(&apos;login&apos;, &amp;#91;&apos;as&apos; =&gt; &apos;auth.postLogin&apos;, &apos;uses&apos; =&gt; &apos;Auth&amp;#92;AuthController@postLogin&apos;]&amp;#41;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;Route::get(&apos;register&apos;, &amp;#91;&apos;as&apos; =&gt; &apos;auth.getRegister&apos;, &apos;uses&apos; =&gt; &apos;Auth&amp;#92;AuthController@getRegister&apos;]&amp;#41;;&lt;br /&gt;}&amp;#41;;&lt;!--/uzc--&gt;&lt;/div&gt;&lt;/div&gt;&lt;!--/uzcode--&gt;&lt;br /&gt;&lt;br /&gt;Если ещё какие-то данные нужны, то выложу. Просто думаю что дело в роутах. Но как решить - хз(&lt;br /&gt;Заранее благодарю за помощь.&lt;br /&gt;&lt;br /&gt;PS: Работаю на локалке. Ошибок ни каких не выводит. Сессии работают. Middleware =&gt; web уже писать не надо. И не говорите пожалуйста на счёт устновленной возможности авторизации - она тоже не работает.&lt;br /&gt;PS 2: Ребят, уже так месяц не смог найти проблему. Решил, может здесь помогут!?</content:encoded>
			<category>Скриптовые языки программирования</category>
			<dc:creator>dima9595</dc:creator>
			<guid>https://gcup.ru/forum/79-72395-1</guid>
		</item>
		<item>
			<title>Конструктор для кнопки (ImageButton), Love2D</title>
			<link>https://gcup.ru/forum/79-47005-1</link>
			<pubDate>Wed, 20 Apr 2016 17:48:35 GMT</pubDate>
			<description>Форум: &lt;a href=&quot;https://gcup.ru/forum/79&quot;&gt;Скриптовые языки программирования&lt;/a&gt;&lt;br /&gt;Описание темы: Не знаю как на основе него сделать библиотеку&lt;br /&gt;Автор темы: burlachenko&lt;br /&gt;Автор последнего сообщения: burlachenko&lt;br /&gt;Количество ответов: 13</description>
			<content:encoded>Здравствуйте всем, есть пример рабочей кнопки, но для удобства хотелось бы иметь &quot;библиотеку-конструктор&quot;, может кто-то помочь?&lt;br /&gt;&lt;!--uzcode--&gt;&lt;div class=&quot;bbCodeBlock&quot;&gt;&lt;div class=&quot;bbCodeName&quot; style=&quot;padding-left:5px;font-weight:bold;font-size:7pt&quot;&gt;Код&lt;/div&gt;&lt;div class=&quot;codeMessage&quot; style=&quot;border:1px inset;max-height:200px;overflow:auto;height:expression(this.scrollHeight&lt;5?this.style.height:scrollHeight&gt;200?&apos;200px&apos;:&apos;&apos;+(this.scrollHeight+5)+&apos;px&apos;);&quot;&gt;&lt;!--uzc--&gt;&lt;br /&gt;click = love.audio.newSource(&quot;Click.mp3&quot;, &quot;static&quot;&amp;#41;&amp;nbsp;&amp;nbsp;-- звук клик, при нажатии на кнопку &quot;старт&quot;, ресурс и путь к нему&lt;br /&gt;start = love.graphics.newImage(&quot;start_n.png&quot;&amp;#41; -- бекграунд нормальной кнопки&lt;br /&gt;starthover = love.graphics.newImage(&quot;start_nn.png&quot;&amp;#41; --бекграунд кнопки под курсором&lt;br /&gt;xoffset = 150 -- положение кнопки start по координате &quot;x&quot;&lt;br /&gt;yoffset = 230 -- положение кнопки start по координате &quot;y&quot;&lt;br /&gt;&lt;br /&gt;isHover = false -- начальное условие, при котором над кнопкой нет курсора&lt;br /&gt;&lt;br /&gt;function love.draw(&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if isHover then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;love.graphics.draw(starthover, xoffset, yoffset&amp;#41; -- кнопка старт- меняется бекграунд кнопки, если над ней курсор&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;else&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;love.graphics.draw(start, xoffset, yoffset&amp;#41; -- кнопка старт - нормальный бекграунд кнопки, если над ней нет курсора&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&lt;br /&gt;end&lt;br /&gt;&lt;br /&gt;function love.update(dt&amp;#41;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;local data = start:getData(&amp;#41;&amp;nbsp;&amp;nbsp;&amp;nbsp;-- Получаем координаты кнопки, для клика по-ней&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;function love.mousepressed(mx, my&amp;#41;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if ((mx - xoffset&amp;#41; &gt; 0&amp;#41; and ((mx - xoffset&amp;#41; &lt;= data:getWidth(&amp;#41; - 1&amp;#41; and ((my - yoffset&amp;#41; &gt; 0&amp;#41; and ((my - yoffset&amp;#41; &lt;= data:getHeight(&amp;#41; - 1&amp;#41; then &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;click:play(&amp;#41; -- проигрываем звук при нажатии на кнопку&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;isHover = false&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;--local data = start:getData(&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;local mx, my = love.mouse.getPosition(&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;if ((mx - xoffset&amp;#41; &gt; 0&amp;#41; and ((mx - xoffset&amp;#41; &lt;= data:getWidth(&amp;#41; - 1&amp;#41; and ((my - yoffset&amp;#41; &gt; 0&amp;#41; and ((my - yoffset&amp;#41; &lt;= data:getHeight(&amp;#41; - 1&amp;#41; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;local r, g, b, a = data:getPixel(mx - xoffset - 1, my - yoffset - 1&amp;#41;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;isHover = not (a == 1&amp;#41; -- если (a == 0&amp;#41; - прозрачность учитывается&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&lt;br /&gt;end&lt;br /&gt;&lt;!--/uzc--&gt;&lt;/div&gt;&lt;/div&gt;&lt;!--/uzcode--&gt;&lt;br /&gt;&lt;br /&gt;могу выложить &quot;love&quot; файл если нужно. Заранее спасибо</content:encoded>
			<category>Скриптовые языки программирования</category>
			<dc:creator>burlachenko</dc:creator>
			<guid>https://gcup.ru/forum/79-47005-1</guid>
		</item>
	</channel>
</rss>