[Разработка] SAMP UDF | Дорабатываем вместе! | От 04.02.2018
|
|
M0d3R |
Дата: Среда, 05.04.2017, 16:43 | Сообщение # 181
|
Новичок
Сообщений: 7
Статус: Offline
|
aknqkzxlcs_4, ГМ(Даже с патчем)/Бег не работает
|
|
|
|
aknqkzxlcs_4 |
Дата: Среда, 05.04.2017, 19:12 | Сообщение # 182
|
Любитель
Сообщений: 40
Статус: Offline
|
Цитата M0d3R ( ) aknqkzxlcs_4, ГМ(Даже с патчем)/Бег не работает
infiniteHealth() не только я проверял, у нас работало, лично я тестировал на ДМ сервере
Цитата fromysha ( ) Выручайте, вообщем функция isInChat()
Код if(isInChat() && !isDialogOpen()) { addChatMessageEx(0xDD0000, "Ошибка: закройте чат") return } addChatMessageEx(0x00DD00, "Чат закрыт")
Код if(!isInChat() || isDialogOpen()) { addChatMessageEx(0xDD0000, "Ошибка: сперва нужно открыть чат") return } addChatMessageEx(0x00DD00, "Чат открыт")
Сообщение отредактировал aknqkzxlcs_4 - Среда, 05.04.2017, 19:15 |
|
|
|
fromysha |
Дата: Среда, 05.04.2017, 19:26 | Сообщение # 183
|
Боец
Сообщений: 78
Статус: Offline
|
Цитата aknqkzxlcs_4 ( ) Код if(isInChat() && !isDialogOpen()) { addChatMessageEx(0xDD0000, "Ошибка: закройте чат") return } addChatMessageEx(0x00DD00, "Чат закрыт")
Код if(!isInChat() || isDialogOpen()) { addChatMessageEx(0xDD0000, "Ошибка: сперва нужно открыть чат") return } addChatMessageEx(0x00DD00, "Чат открыт")
Протести с открытым диалогом. Хрень так же как и у меня получается
[SAMP RP] CLEO Criminal Checker (на худе) > http://cheat-master.ru/forum/129-708293-1 [CLEO] Авто замена текста в Диалогах и Чате > http://cheat-master.ru/forum/129-708561-1
|
|
|
|
[CM]Coockie |
Дата: Четверг, 06.04.2017, 22:33 | Сообщение # 184
|
developer
Сообщений: 67
Статус: Offline
|
Function for work from HTTP. author: Coockie
Код curl(url) { ComObjError(false) whr := ComObjCreate("WinHttp.WinHttpRequest.5.1") whr.Open("GET", url, false) whr.SetRequestHeader("User-Agent", "Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko") whr.SetRequestHeader("Referer", url) whr.SetRequestHeader("Content-Type", "application/x-www-form-urlencoded") whr.Send() whr.WaitForResponse() return whr.ResponseText }
Сообщение отредактировал [CM]Coockie - Четверг, 06.04.2017, 22:35 |
|
|
|
Dworkin |
Дата: Суббота, 08.04.2017, 16:24 | Сообщение # 185
|
Боец
Сообщений: 110
Статус: Offline
|
Список ID костей: http://wiki.sa-mp.com/wiki/Bone_IDs_RU
GetBonePosition(ped,boneId) - получение координат костей по педу. Просто так не получится ее использовать. Смотрите пример
Это пихаем в udf
Код GetBonePosition(ped,boneId){ callWithParamsBonePos(0x5E4280, [["i", ped],["i", pParamBonePos1],["i",boneId],["i", 1]], false, true) return [readFloat(hGTA, pParamBonePos1), readFloat(hGTA, pParamBonePos1 + 4), readFloat(hGTA, pParamBonePos1 + 8)] }
callWithParamsBonePos(dwFunc, aParams, bCleanupStack = true, thiscall = false) { validParams := 0 i := aParams.MaxIndex() dwLen := i * 5 + 5 + 1 if(bCleanupStack) dwLen += 3 VarSetCapacity(injectData, i * 5 + 5 + 3 + 1, 0) i_ := 1 while(i > 0) { if(aParams[i][1] != "") { dwMemAddress := 0x0 if(aParams[i][1] == "p") { dwMemAddress := aParams[i][2] } else if(aParams[i][1] == "s") { if(i_>3) return false dwMemAddress := pParamBonePos%i_% writeString(hGTA,dwMemAddress, aParams[i][2]) if(ErrorLevel) return false i_ += 1 } else if(aParams[i][1] == "i") { dwMemAddress := aParams[i][2] } else { return false } NumPut((thiscall && i == 1 ? 0xB9 : 0x68), injectData, validParams * 5, "UChar") NumPut(dwMemAddress, injectData, validParams * 5 + 1, "UInt") validParams += 1 } i -= 1 } offset := dwFunc - ( pInjectFuncBonePos + validParams * 5 + 5 ) NumPut(0xE8, injectData, validParams * 5, "UChar") NumPut(offset, injectData, validParams * 5 + 1, "Int") if(bCleanupStack) { NumPut(0xC483, injectData, validParams * 5 + 5, "UShort") NumPut(validParams*4, injectData, validParams * 5 + 7, "UChar") NumPut(0xC3, injectData, validParams * 5 + 8, "UChar") } else { NumPut(0xC3, injectData, validParams * 5 + 5, "UChar") } writeRaw(hGTA, pInjectFuncBonePos, &injectData, dwLen) if(ErrorLevel) return false hThread := createRemoteThread(hGTA, 0, 0, pInjectFuncBonePos, 0, 0, 0) if(ErrorLevel) return false waitForSingleObject(hThread, 0xFFFFFFFF) closeProcess(hThread) return true }
Для примера получим координаты кости своей головы:
Код global hGTA := openProcess(getPID("GTA:SA:MP")) ; надо открыть процесс global pMemory := virtualAllocEx(hGTA, 6144, 0x1000 | 0x2000, 0x40) ; выделяем и резервиурем виртуальную область в памяти global pParamBonePos1 := pMemory global pInjectFuncBonePos := pMemory + 5120
CPED := readDword(hGTA, 0xB6F5F0) ; для примера получим свой пед cbone := GetBonePosition(CPED,2) ; далее вызываем нашу функцию. Если подставить пед которого не существует то произойдет краш. msgbox % cbone[1] "`n" cbone[2] "`n" cbone[3]
Сообщение отредактировал Dworkin - Суббота, 08.04.2017, 16:30 |
|
|
|
[CM]Толстый |
Дата: Воскресенье, 09.04.2017, 23:47 | Сообщение # 186
|
Бывалый
Сообщений: 407
Статус: Offline
|
Dworkin, вот ты заморочился то Похвально!
|
|
|
|
Oleg_Rachinga |
Дата: Понедельник, 10.04.2017, 21:08 | Сообщение # 187
|
Новичок
Сообщений: 9
Статус: Offline
|
Сделайте более подробное описание функций в самом файле, для таких, как я
|
|
|
|
Efmprof |
Дата: Вторник, 11.04.2017, 08:10 | Сообщение # 188
|
EXOTIC MEDIA GROUP
Сообщений: 27
Статус: Offline
|
Проблема. Не работают функции связанные с SAMP. Со стандартными все ОК.
|
|
|
|
denial19 |
Дата: Вторник, 11.04.2017, 17:43 | Сообщение # 189
|
Боец
Сообщений: 107
Статус: Offline
|
Привет, знатоки. Почувствовал в себе силу и решил попробовать использовать инклуды для AHK. Помогите вот с данной ошибкой при подключение инкулудов. Вроде все правильно инклудил. В API стоит директория "A_ScriptDir, "API.dll"", что абсолютно верно. Может ли быть проблема здесь "hModule := DllCall("LoadLibrary", Str, PATH_API)" ? Ошибка с немецкого переводиться что библиотека .dll не подключена . Надеюсь на вашу помощь. Может ли это быть что win 32 bit или что она эмулируется с macbook?
|
|
|
|
Dworkin |
Дата: Среда, 12.04.2017, 02:59 | Сообщение # 190
|
Боец
Сообщений: 110
Статус: Offline
|
Код PATH_SAMP_API := PathCombine(A_ScriptDir, "Open-SAMP-API.dll") hModule := DllCall("LoadLibrary", Str, PATH_SAMP_API) у меня так...сверяй. Если макбук то скорее всего из-за него
|
|
|
|
denial19 |
Дата: Среда, 12.04.2017, 07:29 | Сообщение # 191
|
Боец
Сообщений: 107
Статус: Offline
|
Цитата Dworkin ( ) PathCombine "PathCombine" у меня нет такой функции. У меня расписана RelToAbs, которая вроде верно работает . Ты используешь инклуды с этой темы? Если нет, будь добр, скинь свои заведомо рабочие. Ибо копать очень долго получается. Спасибо.
|
|
|
|
[CM]Coockie |
Дата: Среда, 12.04.2017, 17:20 | Сообщение # 192
|
developer
Сообщений: 67
Статус: Offline
|
denial19, на MAC вроде не работают скрипты, они зависят от Microsoft C++
|
|
|
|
denial19 |
Дата: Среда, 12.04.2017, 18:27 | Сообщение # 193
|
Боец
Сообщений: 107
Статус: Offline
|
Цитата [CM]Coockie ( ) denial19, на MAC вроде не работают скрипты, они зависят от Microsoft C++ Как бы Mac OS давно IBM PC совместима, следовательно Windows грамотно эмулируется. Тут проблема с открытием .dll , но я пока не вижу решения.
|
|
|
|
[CM]MurKotik |
Дата: Пятница, 14.04.2017, 16:45 | Сообщение # 194
|
Murkot Develop
Сообщений: 252
Статус: Offline
|
Цитата [CM () Coockie;4219211]Function for work from HTTP. author: Coockie Далеко не новая функция Так же надо будет сделать ответы в виде кодов ошибок (404 / 505 / 403) Ибо при ошибке запроса АХК свернёт все окна и выдаст свой диалог а это не оч
-------------------
Ушёл в себя, вернусь поздно и пьяный!
Сообщение отредактировал [CM]MurKotik - Пятница, 14.04.2017, 16:46 |
|
|
|
[CM]Coockie |
Дата: Пятница, 14.04.2017, 19:20 | Сообщение # 195
|
developer
Сообщений: 67
Статус: Offline
|
[CM]MurKotik, это сборка, такой не было)
|
|
|
|