<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Серый форум &mdash; SAMP: Взять данные с паспорта и вывести в чат]]></title>
		<link>http://forum.script-coding.com/viewtopic.php?id=12419</link>
		<atom:link href="http://forum.script-coding.com/extern.php?action=feed&amp;tid=12419&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «SAMP: Взять данные с паспорта и вывести в чат».]]></description>
		<lastBuildDate>Wed, 23 Aug 2017 14:33:00 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: SAMP: Взять данные с паспорта и вывести в чат]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=118688#p118688</link>
			<description><![CDATA[<p>Разве что избавиться от присвоения переменных функциям. Например: sendchat(&quot;&quot; . getplayeridbyname(name2) . &quot; &quot; . getplayerscorebyid(getplayeridbyname(name2)) . &quot; &quot; . name2 . &quot;&quot;).</p>]]></description>
			<author><![CDATA[null@example.com (belyankin12)]]></author>
			<pubDate>Wed, 23 Aug 2017 14:33:00 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=118688#p118688</guid>
		</item>
		<item>
			<title><![CDATA[Re: SAMP: Взять данные с паспорта и вывести в чат]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=118684#p118684</link>
			<description><![CDATA[<p>Все, теперь код рабочий, переменные можно вставлять в любые команды. А можно как-то уменьшить задержку? А то между нажатием кнопки и выводом в чат проходит секунды 4, если не больше<br /></p><div class="codebox"><pre><code>
#include SAMP.ahk

global path_log := A_MyDocuments &quot;\GTA San Andreas User Files\SAMP\chatlog.txt&quot;

Numpad1::
SendMessage, 0x50,, 0x4190419,, A
myid := getId()
SendChat(&quot;Здраствуйте, я адвокат. Покажите мне свой паспорт (( /showpass &quot; myid &quot; )) &quot; )
return

Numpad2::
SendMessage, 0x50,, 0x4190419,, A
log := {str:&quot;&quot;,find:0,num:0}    ,    log.str := []

        Loop, read, %path_log%
        log.str.Insert(A_LoopReadLine)    ,log.num := A_Index

		loop 30	
	    if RegExMatch(     log.str[log.num + 1 - A_Index]
            ,&quot;\[(.*)\]  Имя: (.*)&quot;
            , name) and (log.find:=log.num + 1 - A_Index)
                break
		if (name2 != &quot;&quot;) {
			idplayer := getPlayerIdByName(name2)
                        lvlplayer := getPlayerScoreById(idplayer)
                        SendChat(name2 . idplayer . lvlplayer)
		} else {
			msgbox, Error
		}
return
</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (ThisIsStart)]]></author>
			<pubDate>Wed, 23 Aug 2017 13:57:45 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=118684#p118684</guid>
		</item>
		<item>
			<title><![CDATA[Re: SAMP: Взять данные с паспорта и вывести в чат]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=118682#p118682</link>
			<description><![CDATA[<p>У тебя ахк юникодовский, судя по sendmessage. Установи AHK ANSI 32 bit.</p>]]></description>
			<author><![CDATA[null@example.com (belyankin12)]]></author>
			<pubDate>Wed, 23 Aug 2017 13:43:01 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=118682#p118682</guid>
		</item>
		<item>
			<title><![CDATA[Re: SAMP: Взять данные с паспорта и вывести в чат]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=118680#p118680</link>
			<description><![CDATA[<p>Теперь проблема с определением ID, бинд говорит и выводит то что нужно(хоть и с небольшой задержкой), только теперь вместо ID пишет &quot;-1&quot;. Поискав в SAMP.udf я изменил строки при ошибках, чтобы выдавало не только &quot;-1&quot;, но и &quot;-2&quot;, &quot;-3&quot;, и &quot;-4&quot;.<br />Вот код из SAMP.udf<br /></p><div class="codebox"><pre><code>
getPlayerIdByName(wName) {
    wName := &quot;&quot; wName
    if(StrLen(wName) &lt; 1 || StrLen(wName) &gt; 24)
        return -1
    
    if(iRefreshScoreboard+iUpdateTick &gt; A_TickCount)
    {
        For i, o in oScoreboardData
        {
            if(InStr(o.NAME,wName)==1)
                return i
        }
        return -2
    }
    
    if(!updateOScoreboardData())
        return -3
    
    For i, o in oScoreboardData
    {
        if(InStr(o.NAME,wName)==1)
            return i
    }
    return -4
}
</code></pre></div><p>Когда я представляюсь с этим кодом:<br /></p><div class="codebox"><pre><code>
SendChat(&quot;Здраствуйте, я адвокат. Покажите мне свой паспорт (( /showpass &quot; myid &quot; )) &quot; )
</code></pre></div><p>Вместо ID выводит &quot;-1&quot;.<br />А когда я показываю себе паспорт и пытаюсь вывести свое имя и ID. Вывод имени правильный, но вместо ID показывает &quot;-4&quot;.<br /></p><div class="codebox"><pre><code> Numpad2::
SendMessage, 0x50,, 0x4190419,, A
log := {str:&quot;&quot;,find:0,num:0}    ,    log.str := []

        Loop, read, %path_log%
        log.str.Insert(A_LoopReadLine)    ,log.num := A_Index

		loop 30	
	    if RegExMatch(     log.str[log.num + 1 - A_Index]
            ,&quot;\[(.*)\]  Имя: (.*)&quot;
            , name) and (log.find:=log.num + 1 - A_Index)
                break
		if (name2 != &quot;&quot;) {
			idplayer := getPlayerIdByName(name2)
                        lvlplayer := getPlayerScoreById(idplayer)
                        SendChat(name2 . idplayer . lvlplayer)
		} else {
			msgbox, Error
		}
return </code></pre></div><p>Я не знаю в чем ошибка, так как даже заменив значение &quot;-x&quot;, я не понимаю. Возможно вы поймете?</p>]]></description>
			<author><![CDATA[null@example.com (ThisIsStart)]]></author>
			<pubDate>Wed, 23 Aug 2017 13:24:56 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=118680#p118680</guid>
		</item>
		<item>
			<title><![CDATA[Re: SAMP: Взять данные с паспорта и вывести в чат]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=118679#p118679</link>
			<description><![CDATA[<p>В функции переменные не обрамляются процентами: getplayeridbyname(name2). sendhchat(&quot;&quot; . name2 . &quot; &quot; . idplayer . &quot; &quot; . lvlplayer . &quot;).</p>]]></description>
			<author><![CDATA[null@example.com (belyankin12)]]></author>
			<pubDate>Wed, 23 Aug 2017 12:35:01 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=118679#p118679</guid>
		</item>
		<item>
			<title><![CDATA[Re: SAMP: Взять данные с паспорта и вывести в чат]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=118676#p118676</link>
			<description><![CDATA[<p>Так, имя выводит целое, теперь я попробовал вывести ник, ID и уровень игрока. Запуск прошел без ошибок, но при попытке активации выходит окно ошибки с кодом направленную на строчку</p><div class="codebox"><pre><code>lvlplayer := getPlayerScoreById(%idplayer%)</code></pre></div><p>Вот целый код:<br /></p><div class="codebox"><pre><code>#include SAMP.ahk

global path_log := A_MyDocuments &quot;\GTA San Andreas User Files\SAMP\chatlog.txt&quot;

!2::
SendMessage, 0x50,, 0x4190419,, A
log := {str:&quot;&quot;,find:0,num:0}    ,    log.str := []

        Loop, read, %path_log%
        log.str.Insert(A_LoopReadLine)    ,log.num := A_Index

		loop 30	
	    if RegExMatch(     log.str[log.num + 1 - A_Index]
            ,&quot;\[(.*)\]  Имя: (.*)&quot;
            , name) and (log.find:=log.num + 1 - A_Index)
                break
		if (name2 != &quot;&quot;) {
			idplayer := getPlayerIdByName(%name2%)
                        lvlplayer := getPlayerScoreById(%idplayer%)
                        SendChat(&quot;%name2% , %idplayer% , %lvlplayer%&quot;)
		} else {
			msgbox, Error
		}
return</code></pre></div><p>И еще, я хотел добавить бинд приветствия и просьбы показать паспорт. Как правильно написать?<br /></p><div class="codebox"><pre><code>!1::
SendMessage, 0x50,, 0x4190419,, A
myid := getId()
SendChat(&quot;Здраствуйте, я адвокат. Покажите мне свой паспорт (( /showpass %myid% )) &quot;)
return</code></pre></div><p> <br />Это не правильно, и выводит он вместо ID %myid%, я пытался поставить кавычки чтобы было &quot;%myid%&quot;, но при запуске скрипта вылезает окно с ошибкой в этой строчке<br /></p><div class="codebox"><pre><code>
Line Text: &quot;)
Error: Missing close-quote
</code></pre></div><p>Что я делаю не так?</p>]]></description>
			<author><![CDATA[null@example.com (ThisIsStart)]]></author>
			<pubDate>Wed, 23 Aug 2017 11:54:50 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=118676#p118676</guid>
		</item>
		<item>
			<title><![CDATA[Re: SAMP: Взять данные с паспорта и вывести в чат]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=118675#p118675</link>
			<description><![CDATA[<p>Код верный, имя содержится в переменной name2, переработай тестовое сообщение под себя, а не используй это, сделанное для другого пользователя. Хотя все равно странно, что отправляется в чат вся строчка, вместо имени...</p><div class="codebox"><pre><code>sendinput {f6}%name2%{enter}</code></pre></div><p>работает?</p>]]></description>
			<author><![CDATA[null@example.com (belyankin12)]]></author>
			<pubDate>Wed, 23 Aug 2017 11:44:35 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=118675#p118675</guid>
		</item>
		<item>
			<title><![CDATA[Re: SAMP: Взять данные с паспорта и вывести в чат]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=118674#p118674</link>
			<description><![CDATA[<p>Хорошо, флуд я убрал. При активации вместо обычного ника в формате &quot;Nick_Name&quot; он берет все целиком и получается </p><div class="codebox"><pre><code>[16:08:28]  Имя: Nick_Name.</code></pre></div><p> А вот строчка с именем из паспорта<br /></p><div class="codebox"><pre><code>[16:05:35]  Имя: Nick_Name</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (ThisIsStart)]]></author>
			<pubDate>Wed, 23 Aug 2017 11:07:05 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=118674#p118674</guid>
		</item>
		<item>
			<title><![CDATA[Re: SAMP: Взять данные с паспорта и вывести в чат]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=118671#p118671</link>
			<description><![CDATA[<p>А, ну вот она причина <img src="//forum.script-coding.com/img/smilies/smile.png" width="15" height="15" />, неаккуратно отрезал второй поиск. Команда loop создает цикл, теперь челендж: найди причину флуда командой <img src="//forum.script-coding.com/img/smilies/smile.png" width="15" height="15" />. А насчёт имени: скопируй строчку из чатлога, где имя в паспорте.</p>]]></description>
			<author><![CDATA[null@example.com (belyankin12)]]></author>
			<pubDate>Wed, 23 Aug 2017 10:07:17 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=118671#p118671</guid>
		</item>
		<item>
			<title><![CDATA[Re: SAMP: Взять данные с паспорта и вывести в чат]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=118669#p118669</link>
			<description><![CDATA[<p>Скопируй новый код сюда, странно что он флудит, читая вышеприведенный код, он должен один раз тестовую фразу отправлять.</p>]]></description>
			<author><![CDATA[null@example.com (belyankin12)]]></author>
			<pubDate>Wed, 23 Aug 2017 09:51:56 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=118669#p118669</guid>
		</item>
		<item>
			<title><![CDATA[Re: SAMP: Взять данные с паспорта и вывести в чат]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=118668#p118668</link>
			<description><![CDATA[<p>Ясно, значит можно считывать просто имя. Теперь у меня другие проблемы, при нажатии на Alt+2 тестовую фразу он пишет очень много раз, и сервер сразу меня кикает. И еще, как оставить _? То есть Никнейм может быть формата &quot;Nick&quot; или &quot;Nick_Name&quot;, сейчас код выводит мне его в виду &quot;Nick Name&quot;. Я сменил &quot;(.*)_(.*)&quot; из кода на &quot;(.*)&quot;, но не все так просто как мне показалось.<br />Нужно сделать какую-то задержку, чтобы я не флудил, и ник сделать одним целым</p><p>Вот код: </p><div class="codebox"><pre><code>#include SAMP.ahk

global path_log := A_MyDocuments &quot;\GTA San Andreas User Files\SAMP\chatlog.txt&quot;

!2::
SendMessage, 0x50,, 0x4190419,, A
log := {str:&quot;&quot;,find:0,num:0}    ,    log.str := []

        Loop, read, %path_log%
        log.str.Insert(A_LoopReadLine)    ,log.num := A_Index

		loop 30	
	    if RegExMatch(     log.str[log.num + 1 - A_Index]
            ,&quot;\[(.*)\]  Имя: (.*)&quot;
            , name) and (log.find:=log.num + 1 - A_Index)
                break
		loop 30	
		if (name2 != &quot;&quot;) {
			sendinput, {F6}%lvl2% %name2% %name3%.{Enter}
		} else {
			msgbox, Error
		}
return</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (ThisIsStart)]]></author>
			<pubDate>Wed, 23 Aug 2017 09:40:23 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=118668#p118668</guid>
		</item>
		<item>
			<title><![CDATA[Re: SAMP: Взять данные с паспорта и вывести в чат]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=118666#p118666</link>
			<description><![CDATA[<p>Тогда можно вообще избавиться от проверки уровня по паспорту. Зачем использовать команду чтения текстового файла, если в памяти хранятся id и lvl игрока? Функции getplayeridbyname() и getplayerscorebyid() в UDF тебе помогут, имя узнаешь из паспорта, я так понял он у тебя нормально имя узнает.</p><p>Чтобы указать ошибки на конкретный код, нужна строчка с телефоном и возрастом из чатлога.</p>]]></description>
			<author><![CDATA[null@example.com (belyankin12)]]></author>
			<pubDate>Wed, 23 Aug 2017 08:48:00 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=118666#p118666</guid>
		</item>
		<item>
			<title><![CDATA[Re: SAMP: Взять данные с паспорта и вывести в чат]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=118661#p118661</link>
			<description><![CDATA[<p>Всем привет. Нашел данную тему и хочу переделать код по адвоката. То есть вместо звания и имени, записывался уровень игрока в определенную переменную, и его id. Проблема в том, что после того как я начал редактировать и попутно тестировать, после уровня игрока (&quot;Возраст&quot;) у меня записывалось &quot;Телефон: xxxxxx&quot;. То есть я не знаю как &quot;отделить&quot; лвл и телефон. Не требую мне полностью готовый и рабочий код, лучше укажите ошибки, и способы их исправить.<br />Цель: Чтобы после того как человек показывал мне паспорт, я нажимал на определенную клавишу, и шла проверка его уровня, проигрывалось РП(/me, /do и тд.) и собственно говоря сама команда /free в которой и требуется его id. Уровень мне нужен для установки цены.<br /></p><div class="codebox"><pre><code> #include SAMP.ahk

global path_log := A_MyDocuments &quot;\GTA San Andreas User Files\SAMP\chatlog.txt&quot;

!2::
SendMessage, 0x50,, 0x4190419,, A
log := {str:&quot;&quot;,find:0,num:0}    ,    log.str := []

        Loop, read, %path_log%
        log.str.Insert(A_LoopReadLine)    ,log.num := A_Index

		loop 30	
	    if RegExMatch(     log.str[log.num + 1 - A_Index]
            ,&quot;\[(.*)\]  Имя: (.*)_(.*)&quot;
            , name) and (log.find:=log.num + 1 - A_Index)
                break
		loop 30	
	    if RegExMatch(     log.str[log.num + 1 - A_Index]
            ,&quot;\[(.*)\]  Возраст: (.*)&quot;
            , lvl) and (log.find:=log.num + 1 - A_Index)
                break
		if (name2 != &quot;&quot;) and (lvl2 != &quot;&quot;) {
			sendinput, {F6}%lvl2% %name2% %name3%.{Enter}
		} else {
			msgbox, Error
		}
return </code></pre></div>]]></description>
			<author><![CDATA[null@example.com (ThisIsStart)]]></author>
			<pubDate>Tue, 22 Aug 2017 20:42:53 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=118661#p118661</guid>
		</item>
		<item>
			<title><![CDATA[Re: SAMP: Взять данные с паспорта и вывести в чат]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=112061#p112061</link>
			<description><![CDATA[<p><strong>belyankin12</strong>, О да спасибо, отлично работает.</p>]]></description>
			<author><![CDATA[null@example.com (ataks63rus)]]></author>
			<pubDate>Thu, 09 Feb 2017 18:04:32 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=112061#p112061</guid>
		</item>
		<item>
			<title><![CDATA[Re: SAMP: Взять данные с паспорта и вывести в чат]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=112060#p112060</link>
			<description><![CDATA[<p><strong>ataks63rus</strong>, посмотри уже мой вариант &gt;_&lt;, у меня все работает.</p>]]></description>
			<author><![CDATA[null@example.com (belyankin12)]]></author>
			<pubDate>Thu, 09 Feb 2017 17:53:00 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=112060#p112060</guid>
		</item>
	</channel>
</rss>
