You are not logged in.
trashmas, да логически оно так, в любом случае я нашел альтернативный вариант
Но вопрос маится, знатоки подскажите, те деньги(количество) что снимаются в покрасочной(P&S), они где? В Main.scm искать или это из gta_sa.exe?
Offline
trashmas, да логически оно так, в любом случае я нашел альтернативный вариант
Но вопрос маится, знатоки подскажите, те деньги(количество) что снимаются в покрасочной(P&S), они где? В Main.scm искать или это из gta_sa.exe?
В exe.
Plugin-SDK https://github.com/DK22Pac/plugin-sdk
Discord-сервер по plugin-sdk и программированию в GTA
RU https://discord.gg/QEesDGb
ENG https://discord.gg/zaVqFQv
Offline
DK22Pac, благодарю, жаль что в ехе, с ним сложнее работать(недавно все познаю), но попытаюсь, за код отдельное спасибо, разобраться бы еще как все это превратить в мод на увеличение стоимости покраски, но лиха беда начало...
Offline
Люди, хочу спросить а как можно трансформировать позицию игрока и позицию атакующего актёра (который атаковал игрока), в экранные координаты?
В VC это функция
5778B0 ; char __cdecl CSprite::CalcScreenCoors(RwV3d *a1, RwV2d *a2, float *a3, float *a4, char a5)
В SA вроде
70CE30 ; CSprite::CalcScreenCoors(RwV3d const&, RwV3d*, float *, float *, bool, bool)
Offline
Nikita592 wrote:Люди, хочу спросить а как можно трансформировать позицию игрока и позицию атакующего актёра (который атаковал игрока), в экранные координаты?
В VC это функция
5778B0 ; char __cdecl CSprite::CalcScreenCoors(RwV3d *a1, RwV2d *a2, float *a3, float *a4, char a5)В SA вроде
70CE30 ; CSprite::CalcScreenCoors(RwV3d const&, RwV3d*, float *, float *, bool, bool)
Shag, спасибо, но как этим пользоваться? Использовать опкод 0A8D? Если да, то как? Просто я в памяти игры плохо разбираюсь, и как пользоваться этим адресом памяти я не знаю.
Offline
Shag wrote:Nikita592 wrote:Люди, хочу спросить а как можно трансформировать позицию игрока и позицию атакующего актёра (который атаковал игрока), в экранные координаты?
В VC это функция
5778B0 ; char __cdecl CSprite::CalcScreenCoors(RwV3d *a1, RwV2d *a2, float *a3, float *a4, char a5)В SA вроде
70CE30 ; CSprite::CalcScreenCoors(RwV3d const&, RwV3d*, float *, float *, bool, bool)Shag, спасибо, но как этим пользоваться? Использовать опкод 0A8D? Если да, то как? Просто я в памяти игры плохо разбираюсь, и как пользоваться этим адресом памяти я не знаю.
А для какой игры? Если для VC - могу накатать код на досуге(я не профи, так что для меня это работка на несколько часов, т.к. я всегда допускаю какие-нибудь ошибки и приходится тестировать по-нескольку раз), но вообще я работаю над новыми опкодами для Вайса, и этот опкод тоже в планах на добавление.
Если для SA - то навряд ли смогу помочь, т.к. с ней не работаю(даже в функции для неё не уверен).
UPD:
А, нашел всё же инфу по СА:
https://sannybuilder.com/forums/viewtop … 8988#p8988
Last edited by Shag (21-02-2018 20:05)
Offline
Nikita592 wrote:Shag wrote:Nikita592 wrote:Люди, хочу спросить а как можно трансформировать позицию игрока и позицию атакующего актёра (который атаковал игрока), в экранные координаты?
В VC это функция
5778B0 ; char __cdecl CSprite::CalcScreenCoors(RwV3d *a1, RwV2d *a2, float *a3, float *a4, char a5)В SA вроде
70CE30 ; CSprite::CalcScreenCoors(RwV3d const&, RwV3d*, float *, float *, bool, bool)Shag, спасибо, но как этим пользоваться? Использовать опкод 0A8D? Если да, то как? Просто я в памяти игры плохо разбираюсь, и как пользоваться этим адресом памяти я не знаю.
А для какой игры? Если для VC - могу накатать код на досуге(я не профи, так что для меня это работка на несколько часов, т.к. я всегда допускаю какие-нибудь ошибки и приходится тестировать по-нескольку раз), но вообще я работаю над новыми опкодами для Вайса, и этот опкод тоже в планах на добавление.
Если для SA - то навряд ли смогу помочь, т.к. с ней не работаю(даже в функции для неё не уверен).
UPD:
А, нашел всё же инфу по СА:
https://sannybuilder.com/forums/viewtop … 8988#p8988
Shag, спасибо. Для SA хочу это всё сделать.
Offline
Для sa есть адреса функцией для загрузки слота и сохранение в него без входа в меню.
Возможно, нужно поискать его в базе.
Для vc нашел.
{$CLEO .cs}
0000:
:1
wait 0
if and
0038: $onmission == 0 // integer values
80DF: not actor $player_actor driving
0AB0: key_pressed 0x74 // f5
jf @1
05E1: call 6412464 num_params 1 pop 0 0 // 0 это первый слот
wait 500 ms 0acd: show_text_high_priority "Save game" time 1000
jump @1
Last edited by egor230 (23-02-2018 07:59)
Offline
Здравствуйте, всем.
Хочу сделать гараж, где был гараж Джонса Кэма в миссии "работе".
Не получается, подскажите, пожалуйста.
{$CLEO} 0000: :1 wait 0 if 0AB0: key_pressed 0x41 // a jf @1 0219: 0@ = create_garage_type 2 door -852.82 -898.73 11.103 to -901.78 -904.66 14.103 depth -852.830 -897.225 gosub @open 03BB: set_garage 0@ door_type_to_swing_open 03DA: set_garage 0@ camera_follows_player //057A: set_garage 0@ max_cars_to 1 //02FA: garage 0@ change_to_type 16 jump @1 :open 0AE3: 3@ = random_object_near_point -836.77 -901.84 12.05 in_radius 5.0 find_next 0 //IF and SET for 4@ = 1 to 100 034E: move_object 3@ to -837.13 -901.67 15.95 speed 0.0 0.0 0.05 collision_check 0 wait 4 end return /* 1 конец гаража коор x 2 начала гаража правая сторона коор y то 1 начала гаража коор x то 2 начала гаража левая сторона коор y depth правый дальный угол
Offline
Помогите, никак не могу вывести координаты в чат. Пишет тупо "Координаты точки: X: Y: Z:", без указания самих координат.
{$CLEO .cs} if not 0@ = SAMP.Base() then 0A93: end_custom_thread end while not SAMP.Available() wait 100 end 0B34: samp register_client_command "cpp" to_label @cpp 0BDE: pause_thread 0 :cpp if call @is_racecp_active 0 then call @get_racecp_pos 0 X 1@ Y 2@ Z 3@ 0AF8: samp add_message_to_chat "Координаты точки: X: %f Y: %f Z: %f" color 0xFFFFFF 1@ 2@ 3@ else 0AF8: samp add_message_to_chat "Точка не найдена!" color 0xFFFFFF end samp.CmdRet() :is_racecp_active if 0AA2: 0@ = loadlib "samp.dll" then 0A8E: 1@ = 0@ + 0x21A10C 0A8D: 1@ = readMem 1@ sz 4 vp 0 1@ += 0x49 0A8D: 1@ = readMem 1@ sz 4 vp 0 if 1@ == true then 0485: return_true else 059A: return_false end 0AA3: freelib 0@ end 0AB2: ret 0 :get_racecp_pos if 0AA2: 0@ = loadlib "samp.dll" then 0A8E: 1@ = 0@ + 0x21A10C 0A8D: 1@ = readMem 1@ sz 4 vp 0 1@ += 0x2C 0A8D: 2@ = readMem 1@ sz 4 vp 0 1@ += 0x4 0A8D: 3@ = readMem 1@ sz 4 vp 0 1@ += 0x4 0A8D: 4@ = readMem 1@ sz 4 vp 0 0AA3: freelib 0@ end 0AB2: ret 3 2@ 3@ 4@
Offline
xISRAPILx wrote:не могу вывести координаты в чат
Это не форум по samp. Грязный читерский стафф обсуждается в других местах.
Ало, где ты тут читы видишь? Я только учусь, пробую что-то писать. Ты в получении координат точки видишь читы? Боже...
Offline
Ало, где ты тут читы видишь? Я только учусь, пробую что-то писать. Ты в получении координат точки видишь читы? Боже...
sampfuncs это читерская платформа. Если сервер не предоставляет координаты игроку добровольно, а ты хочешь их получить в обход - это уже читерство.
Offline
xISRAPILx wrote:Ало, где ты тут читы видишь? Я только учусь, пробую что-то писать. Ты в получении координат точки видишь читы? Боже...
sampfuncs это читерская платформа. Если сервер не предоставляет координаты игроку добровольно, а ты хочешь их получить в обход - это уже читерство.
Чем получение координат мешает игре, другим игрокам? Это же глупо... Лучше бы помог, чем спорить не зная сути. Буду благодарен. :-D
Offline
Чем получение координат мешает игре, другим игрокам? Это же глупо... Лучше бы помог, чем спорить не зная сути. Буду благодарен. :-D
При чем здесь "чем мешает"? Получая доступ к информации, которую сервер не предоставляет добровольно, ты получаешь преимущество над другими игроками. Это и есть читерство. Кого ты пытаешься обмануть?
Offline
xISRAPILx wrote:Чем получение координат мешает игре, другим игрокам? Это же глупо... Лучше бы помог, чем спорить не зная сути. Буду благодарен. :-D
При чем здесь "чем мешает"? Получая доступ к информации, которую сервер не предоставляет добровольно, ты получаешь преимущество над другими игроками. Это и есть читерство. Кого ты пытаешься обмануть?
Извини, но... Какое нахуй преимущество тебе дает знание координат точки? Ты головой подумай, это просто цифры, это никакого преимущества не дает тебе...
Ебать, именно по-этому кодеры не любят русские форумы.
Offline
xISRAPILx, с вопросами по SAMP - на форумы по SAMP. Буду благодарен.
Plugin-SDK https://github.com/DK22Pac/plugin-sdk
Discord-сервер по plugin-sdk и программированию в GTA
RU https://discord.gg/QEesDGb
ENG https://discord.gg/zaVqFQv
Offline
В клео возможно сделать что бы несколько клео скриптов работали одновременно, при этом взаимодействовали друг с другом? Например один поток проверяет если актер, созданный в другом потоке, умер. Я знаю что есть "передача" переменных при создании потока, а есть опкод просто на импорт/экспорт переменных? Типа "write_lvars 5@ 6@ 7@ from_thread "hello" to 0@ 1@ 2@" ну думаю ясно.
Конкретно интересует VC
Last edited by trashmas (07-03-2018 14:07)
Offline
Всем привет! У меня возник вопрос можно ли как то CLEO скриптом убрать вылет когда спавнишь много транспорта за 1 сеанс игры? Например на моем тесте игра крашнула как я подряд заспавнил 83 транспорт
Offline
Всем привет! У меня возник вопрос можно ли как то CLEO скриптом убрать вылет когда спавнишь много транспорта за 1 сеанс игры? Например на моем тесте игра крашнула как я подряд заспавнил 83 транспорт
Ты имеешь в виду одновременное присутствие вблизи игрока? Если да, то тут пока тухляк, но у меня есть небольшой прогресс(правда с педами и в вайсе), так что как разберусь окончательно - попробую раскопать что-нибудь и для са.
Offline
Chel555 wrote:Всем привет! У меня возник вопрос можно ли как то CLEO скриптом убрать вылет когда спавнишь много транспорта за 1 сеанс игры? Например на моем тесте игра крашнула как я подряд заспавнил 83 транспорт
Ты имеешь в виду одновременное присутствие вблизи игрока? Если да, то тут пока тухляк, но у меня есть небольшой прогресс(правда с педами и в вайсе), так что как разберусь окончательно - попробую раскопать что-нибудь и для са.
ты прав CLEO уже не выдерживает, зато MoonLoader выдерживает https://youtu.be/R2RJ-pyWSQo
Offline
ты прав CLEO уже не выдерживает, зато MoonLoader выдерживает
А причём здесь CLEO?
Offline