Помощь новичкам в МТА :D
|
|
Elbi | Дата: Четверг, 11.08.2011, 12:44 | Сообщение # 151 |
Уверенный в себе
Группа:
Продвинутые
Сообщений: 168
Награды: 7
Город: Алчевск
Репутация: 97
Замечания: 0%
Статус: 
| Есть одна функция, преобразует относительные координаты в абсолютные Code local screenX, screenY = guiGetScreenSize() function toposition(x,y) local finalX,finalY = x,y if x > 1 then finalX = x elseif x < -1 then finalX = screenX - x elseif x > 0 then finalX = screenX * x else finalX = screenX - (screenX * x) end -- if y > 1 then finalY = y elseif y < -1 then finalY = screenY - y elseif x > 0 then finalY = screenY * y else finalY = screenY - (screenY * y) end return finalX,finalY end Например, local dx,dy = toposition(0.1,0.45)
|
|
|
|
ROCKetMAN | Дата: Четверг, 11.08.2011, 12:47 | Сообщение # 152 |
Уверенный в себе
Группа:
Продвинутые
Сообщений: 170
Награды: 6
Город: Ростов-на-Дону
Репутация: 71
Замечания: 0%
Статус: 
| Elbi, Спасибо большое, сейчас попробую) лови +
Если помог - поставь + =)
Polaris in MTA is loading ███____________]
|
|
|
|
PrettySweetie | Дата: Четверг, 11.08.2011, 18:52 | Сообщение # 153 |
Местный
Группа:
Продвинутые
Сообщений: 704
Награды: 19
Город: Нериак
Репутация: 1221
Замечания: 0%
Статус: 
| Elbi, ы, мне как раз это надо было. Спасибо
|
|
|
|
ROCKetMAN | Дата: Пятница, 12.08.2011, 13:34 | Сообщение # 154 |
Уверенный в себе
Группа:
Продвинутые
Сообщений: 170
Награды: 6
Город: Ростов-на-Дону
Репутация: 71
Замечания: 0%
Статус: 
| Quote (Elbi) elseif x > 0 then finalY = screenY * y Здесь наверное опечатка, должно быть так: elseif y > 0 then finalY = screenY * y
Если помог - поставь + =)
Polaris in MTA is loading ███____________]
|
|
|
|
PrettySweetie | Дата: Пятница, 12.08.2011, 18:08 | Сообщение # 155 |
Местный
Группа:
Продвинутые
Сообщений: 704
Награды: 19
Город: Нериак
Репутация: 1221
Замечания: 0%
Статус: 
| ROCKetMAN, ы, точняк, а я то думаю чо у меня не пашет Не, посоны, это не то что мне нужны, мне то надо абсолютные в относительные (и rocketman тоже вроде как). Я лично пока решил так: использовал расположение, подсмотренное в одном спидометре и все картинки уже расставляю относительно этого расположения
|
|
|
|
Elbi | Дата: Пятница, 12.08.2011, 18:51 | Сообщение # 156 |
Уверенный в себе
Группа:
Продвинутые
Сообщений: 168
Награды: 7
Город: Алчевск
Репутация: 97
Замечания: 0%
Статус: 
| Да опечаточка есть, но если вводить координаты 0..1, то она не сказывается на результате. Функция выдрана из стандартных ресурсов.
|
|
|
|
ROCKetMAN | Дата: Пятница, 12.08.2011, 22:38 | Сообщение # 157 |
Уверенный в себе
Группа:
Продвинутые
Сообщений: 170
Награды: 6
Город: Ростов-на-Дону
Репутация: 71
Замечания: 0%
Статус: 
| Wolf_War, хз, у меня все работает. Для меня это как раз то что нужно) Сначала указываются относительные координаты, относительно экрана, а потом уже у каждого на клиенте преобразуются в абсолютные как надо. Может ты пытаешься указать относительные координаты относительно не всего экрана, а чего-то другого? Если так, то там просто нужно не local screenX, screenY = guiGetScreenSize(), а local screenX, screenY = guiGetSize ( your_gui_element, true ), думаю так
Если помог - поставь + =)
Polaris in MTA is loading ███____________]
Сообщение отредактировал ROCKetMAN - Пятница, 12.08.2011, 22:41 |
|
|
|
PrettySweetie | Дата: Суббота, 13.08.2011, 20:38 | Сообщение # 158 |
Местный
Группа:
Продвинутые
Сообщений: 704
Награды: 19
Город: Нериак
Репутация: 1221
Замечания: 0%
Статус: 
| ROCKetMAN, ааа, допер я для чего эта функция тогда она действительно хороша
|
|
|
|
ROCKetMAN | Дата: Понедельник, 15.08.2011, 14:03 | Сообщение # 159 |
Уверенный в себе
Группа:
Продвинутые
Сообщений: 170
Награды: 6
Город: Ростов-на-Дону
Репутация: 71
Замечания: 0%
Статус: 
| Вобщем такая фигня... есть 2 переменные, на стороне сервера, с набором символов (пароли). Одна из них получена из xml-файла:
local passnode = xmlFindChild ( RootNode, "password", 0 ) local pass = xmlNodeGetValue ( passnode )
Другая получена с клиента (ее имя password ). Проблема в том, что если я выполняю проверку if password == pass then <Блаблабла> else <Трололо> end, то попадаю на случай <Трололо>, хотя в обоих переменных одни и те же символы. Я проверял это, отправляя в чат сообщение outputChatBox ( "Password "..password.."pass "..pass, source, 255, 255, 0 ), в котором видно что они идентичны. Подскажите, вообще не понимаю в чем дело
P.S. пробовал пихать к ним tostring, все равно без результата.
Если помог - поставь + =)
Polaris in MTA is loading ███____________]
|
|
|
|
volk-rus | Дата: Понедельник, 15.08.2011, 21:47 | Сообщение # 160 |
Новенький
Группа:
Пользователи
Сообщений: 4
Награды: 0
Город: Санкт-петербург
Репутация: 3
Замечания: 0%
Статус: 
| Попробуй через string.find
Если помог поставь + :)
|
|
|
|
ROCKetMAN | Дата: Вторник, 16.08.2011, 11:21 | Сообщение # 161 |
Уверенный в себе
Группа:
Продвинутые
Сообщений: 170
Награды: 6
Город: Ростов-на-Дону
Репутация: 71
Замечания: 0%
Статус: 
| volk-rus, спс, я уже разобрался) но кстати за идею со string.find спс, мне так даже больше понравилось, а использование ее тоже самое что и выполнять обычную проверку? Просто мне это для системы логина, нужно чтоб все было надежно)
Если помог - поставь + =)
Polaris in MTA is loading ███____________]
|
|
|
|
volk-rus | Дата: Вторник, 16.08.2011, 20:53 | Сообщение # 162 |
Новенький
Группа:
Пользователи
Сообщений: 4
Награды: 0
Город: Санкт-петербург
Репутация: 3
Замечания: 0%
Статус: 
| да и можно расширенней
Если помог поставь + :)
|
|
|
|
ROCKetMAN | Дата: Среда, 17.08.2011, 10:17 | Сообщение # 163 |
Уверенный в себе
Группа:
Продвинутые
Сообщений: 170
Награды: 6
Город: Ростов-на-Дону
Репутация: 71
Замечания: 0%
Статус: 
| И все же это не совсем обычная проверка... Если делать так: if string.find ( password, pass ) ~= nil then... то например пароль "pass", можно записать как pass, pass!@#$%, !@#$%pass или !@#$%pass!@#$%. А по другому я хз как)) Все же думаю легче использовать обычную проверку)
Если помог - поставь + =)
Polaris in MTA is loading ███____________]
|
|
|
|
Turin_Brakes | Дата: Пятница, 26.08.2011, 09:47 | Сообщение # 164 |
Местный
Группа:
Продвинутые
Сообщений: 632
Награды: 10
Город: Moscow
Репутация: 205
Замечания: 80%
Статус: 
| Можно просто так: if string. find ( password, pass ) then так как оператор if сам по себе подразумевает проверку на nil и false.
I think SAMP is a pretty cool guy. He bans continents and doesn't afraid of anything.
[cut noguest]Помощь по cкриптам для MTA-SA. Оплату через вебмани не принимаю.[/cut]
|
|
|
|
ROCKetMAN | Дата: Среда, 28.09.2011, 15:21 | Сообщение # 165 |
Уверенный в себе
Группа:
Продвинутые
Сообщений: 170
Награды: 6
Город: Ростов-на-Дону
Репутация: 71
Замечания: 0%
Статус: 
| Подскажите плиз как работает функция get. Откуда она получает информацию? Вроде бы на вики сказано из settings.xml, которая в ..\MTA San Andreas 1.1\server\mods\deathmatch, но я пробовал добавить туда свои значения (добавлял вроде бы правильно: <setting name="[access][resourceName].settingName" value='[ мое_значение ]'></setting> ) и ничего не вышло. Добавлено (28.09.2011, 15:21) --------------------------------------------- up. Неужто никто не знает?
Если помог - поставь + =)
Polaris in MTA is loading ███____________]
Сообщение отредактировал ROCKetMAN - Пятница, 23.09.2011, 17:25 |
|
|
|