<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Серый форум &mdash; AHK:Stalker Задать переменную последовательным нажатием цифр.]]></title>
		<link>http://forum.script-coding.com/viewtopic.php?id=12715</link>
		<atom:link href="http://forum.script-coding.com/extern.php?action=feed&amp;tid=12715&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «AHK:Stalker Задать переменную последовательным нажатием цифр.».]]></description>
		<lastBuildDate>Tue, 30 May 2017 15:46:34 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: AHK:Stalker Задать переменную последовательным нажатием цифр.]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=116249#p116249</link>
			<description><![CDATA[<p><strong>svoboden</strong>, благодарю, именно то что я искал.<br />Хотя со Сталкером я по другому разобрался, но этот скрипт должен помочь в другом месте.</p><p>Не вижу возможности закрыть свою же тему, так что прошу модераторов закрыть). Вопрос решен.</p>]]></description>
			<author><![CDATA[null@example.com (tdaa)]]></author>
			<pubDate>Tue, 30 May 2017 15:46:34 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=116249#p116249</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK:Stalker Задать переменную последовательным нажатием цифр.]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=116248#p116248</link>
			<description><![CDATA[<p><strong>stealzy</strong>, можно с примерами? я прочитал про эту команду, она позволяет записать кнопку, но как именно ее использовать не разобрался.</p><p> Спасибо всем. Натолкнули на мысль что есть и другие решения.<br /> Решил проблему записыванием значения в файл. Теперь нет нужны вспоминать какой сэйв был последний, все запоминается в ini файл, и соответственно берется из него же, при следующей активации скрипта.</p><p> В итоге получился такой скрипт:</p><div class="codebox"><pre><code>#If (WinActive(&quot;ahk_exe xrEngine.exe&quot;) or WinActive(&quot;ahk_exe XR_3DA.exe&quot;))  ;проверка на версию игры(чистое небо или тени Чернобыля
nsave:=0 ;для первого запуска, если файл отсутствует
F5:: ;кнопка сохранения
   if WinActive(&quot;ahk_exe xrEngine.exe&quot;) 
    section:=&quot;S.T.A.L.K.E.R Clear Sky Saves&quot;  ;создает отдельные секции в ini файле для разных версий игры
   else if WinActive(&quot;ahk_exe XR_3DA.exe&quot;)
    section:=&quot;S.T.A.L.K.E.R Shadow of Chernobyl Saves&quot; ;создает отдельные секции в ini файле для разных версий игры

   IniRead, nsave,  d:\saves\saves.ini, %section%, nsave ;считываем последнее сохраненное значение из ini файла.
   If (nsave&gt;=0 and nsave&lt;49)
   {
    nsave:=nsave+1
     send {VKC0}save %nsave%{Enter}  ;сохраняемся через консоль
     sleep 2000 ;ожидаем сохранения, можно под себя подстроить
     send {VKC0} ;закрываем консоль
    IniWrite, %nsave%,  d:\saves\saves.ini, %section%, nsave ;после сохранения заменяем значение в ini файле
   }  
   Else
   {
    nsave:=0
     send {VKC0}save 50{Enter}
     sleep 2000
     send {VKC0}
    IniWrite, %nsave%,  d:\saves\saves.ini, %section%, nsave

   }
Return

f9:: ;кнопка загрузки
   if WinActive(&quot;ahk_exe xrEngine.exe&quot;) 
    section:=&quot;S.T.A.L.K.E.R Clear Sky Saves&quot;
   else if WinActive(&quot;ahk_exe XR_3DA.exe&quot;)
    section:=&quot;S.T.A.L.K.E.R Shadow of Chernobyl Saves&quot;

  IniRead, nsave,  d:\saves\saves.ini, %section%, nsave ;считываем последнее сохранение
   If (nsave&gt;0 and nsave&lt;=49)
     send {VKC0}load %nsave%{Enter}  ;загружаемся через консоль
   else 
     send {VKC0}load 50{Enter}
return
</code></pre></div><p> Думаю можно как и секцию путь сделать в папку игры(для каждой свой), но это уже детали, к функциональности дела не имеющие.</p>]]></description>
			<author><![CDATA[null@example.com (tdaa)]]></author>
			<pubDate>Tue, 30 May 2017 15:44:22 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=116248#p116248</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK:Stalker Задать переменную последовательным нажатием цифр.]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=116244#p116244</link>
			<description><![CDATA[<p>Чтобы подтвердить ввод, надо нажать клавишу &quot;Enter&quot;.<br /></p><div class="codebox"><pre><code>    vkA4:: ; lalt
    Input ItemName, M,{Enter}
    a := ItemName
    return
    
   F5::
    MsgBox  %a%
    return</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (svoboden)]]></author>
			<pubDate>Tue, 30 May 2017 13:33:33 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=116244#p116244</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK:Stalker Задать переменную последовательным нажатием цифр.]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=116228#p116228</link>
			<description><![CDATA[<p><strong>svoboden</strong>, это просто значение. То же самое что в начале скрипта. Мне нужно получить значение переменной в зависимости от последовательности нажатых клавиш. Например: альт, нумпад4, нумпад1 должны задать переменную a:=41. <br />Как организовать последовательное нажатие клавиш я примерно представляю, но как получить из него значение?</p><p>Если сэйвов меньше 10 то проблем нет, просто назначить на каждую клавишу нумпада своё значение переменной. Так же есть возможность сделать сумму.<br /></p><div class="codebox"><pre><code>
!numpad0::
a:=0
Return

!numpad1::
a:=a+10
Return

!numpad2::
a:=a+20
Return

Numpad1::
a:=a+1
Rerurn

Numpad2::
a:=a+2
Return
;;ets
</code></pre></div><p>Сейчас на работе и не могу сделать код с последовательным нажатием, в принципе там можно сделать и 3х значное число. <br />Думаю это решение прокатиться для данной задачи. Но хотелось бы чего то более универсального.</p>]]></description>
			<author><![CDATA[null@example.com (tdaa)]]></author>
			<pubDate>Tue, 30 May 2017 05:47:46 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=116228#p116228</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK:Stalker Задать переменную последовательным нажатием цифр.]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=116223#p116223</link>
			<description><![CDATA[<div class="codebox"><pre><code>
      !2::
      a = 0
      return</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (svoboden)]]></author>
			<pubDate>Mon, 29 May 2017 20:44:43 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=116223#p116223</guid>
		</item>
		<item>
			<title><![CDATA[AHK:Stalker Задать переменную последовательным нажатием цифр.]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=116220#p116220</link>
			<description><![CDATA[<p>Добрый день. <br />Многие сталкивались данной игрой и одиночным квиксэйвом.<br />Поэтому решил с помощью консоли и AHK сделать себе несколько сэйвов, чтобы из игры их не писать ручками.<br />В итоге получился вот такой код.<br /></p><div class="codebox"><pre><code>
#If (WinActive(&quot;ahk_exe xrEngine.exe&quot;) or WinActive(&quot;ahk_exe XR_3DA.exe&quot;)) 
a:=0

F5::
   If (a&gt;=0 and a&lt;49)
   {
     a:=a+1
      send {VKC0}save %a%{Enter}
       sleep 2000
      send {VKC0}
     ; ...
   }
   Else If (a&gt;=49 or a&lt;0)
   {
     a:=0
      send {VKC0}save 50{Enter}
       sleep 2000
      send {VKC0}
   }
  
   Return
</code></pre></div><p> Теперь нужен скрипт, который присвоит переменной &quot;a&quot; нужное значение. <br /> Поясню, если я остановился на 5 сэйве и ушел спать, а наследующий день начал играть, то Сэйв опять пойдет с 1, и затрет последние вчерашние сэйвы.<br /> Поэтому мне надо используя последовательное нажатие клавиш на нумпаде после определенного действия(например нажатия клавиши альт) или вместе с зажатой клавишей, записать число в переменную &quot;a&quot;.</p>]]></description>
			<author><![CDATA[null@example.com (tdaa)]]></author>
			<pubDate>Mon, 29 May 2017 17:43:55 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=116220#p116220</guid>
		</item>
	</channel>
</rss>
