You are not logged in.
0AA7: call_function 1@ num_params 2 pop 2 4 7 3@
Почему ты указываешь кол-во параметров 2, когда их у тебя стоит три.
нет, команда toggle debug_mode в консоле (Ctrl+~)
А про этот дебуг мод было где-то сказано? Лично я не знаю что это и зачем (судя по названию, использовалось для отладки редактора, кэп.). Так что хватит ломать санник (и писать тупые посты, как следствие), пользуйся общими стандартами.
Это что за debug_mode? расскажи как включал.
При чём тут "для геймеров"? Это можно сделать с любым приложением, а не только с играми.
Что такое "ПГ" ?
PlayGround<dot>ru
А есть другие? Она в двух вариантах: визуальная и через командную строку.
SAAT
Прошло два дня. Я так понял, что никто ничего не знает?
Никто не ответил на вопрос в теме "Один вопрос" про entity target у камеры, по этому решил сделать тему.
В исходниках, угадайте чего, нашёл следующее:
bool CVehicleSA::IsSphereTouchingVehicle ( CVector * vecOrigin, float fRadius )
{
DEBUG_TRACE("bool CVehicleSA::IsSphereTouchingVehicle ( CVector * vecOrigin, float fRadius )");
DWORD dwThis = (DWORD) m_pInterface;
DWORD dwFunc = FUNC_CVehicle_IsSphereTouchingVehicle;
bool bReturn = false;
_asm
{
push eax
mov ecx, dwThis
mov eax, vecOrigin
push fRadius
push dword ptr [eax]
push dword ptr [eax + 4]
push dword ptr [eax + 8]
call dwFunc
mov bReturn, al
}
return bReturn;
}Можно это перенести на дельфи для создания опкода "is_car_visible". Либо, найти код, который проверяет entity target камеры и записывает результат.
@Kostyan - а при чём тут память? В далёкие времена, на сколько я помню, он в своём мультимоде объединил все наработки в области скриптинга (жалко я к sb подключился только в 2008-м
)
Если не ошибаюсь, он проверяет.
EDIT:
Ошибся, он устанавливает. Можно проверить присутствие игрока в какой-либо группе?
А как он его может хранить. Тем более найденного? Регистр хранит указатель на актёра (предполагаемого, берётся из пула педов) и в скрипте проверяется "существует-ли актёр", и если да - опкод 056E возвращает true, в противном случае - false. Короче, много лишнего написал, это на случай если ты не представляешь себе как это работает 
@Sergey81 - я заметил что у тебя выработалась тенденция следующего характера - нашёл адрес - сделал скрипт. Изучи ВСЕ полезные/бесполезные адреса и ф-ции, и сделай мультимод (как в своё время, это сделал капюшон).
И еще. Каким образом подходить к скриптовым константам (педтипам, номерам клавиш, номерам ооружия и проч.)? Тут 2 варианта - либо нативная поддержка (как с опкодами), либо определение во внешних подключаемых модулях (include)? Этакая стандартная библиотека...
Я за вариант 2 (инклюды). Их исправить можно, если что не нравится.
работает всё, руки вправь
Во общем получается так, что раньше я такого не замечал за опкодом 03C0: однако сейчас это проявляется. Дело в том, что я действительно воспользовался проверкой Actor.Driving(30@) (по совету Den_spb), которую я упускал в силу того, что при отсутствии актера в машине, опкод выдавал всегда -1 и этого было достаточно, а сейчас что-то с этим опкодом не то.
Я прошу Alien'a проверить все как следует, хотя опять же меня смущает, что это стандартный опкод, но все же.
@3Doomer - специально для тебя приводил текст:
Я конечно понимаю, что проще сослаться на то, что "у меня всё работает" и ничего не исправлять.
Sw[ee]t, у тебя наверно нелицензионный Санни Билдер
А такой существует? Я говорю что опкод не работает, исправьте.
03C0: $2197 = actor $PLAYER_ACTOR car // mission only
У меня так помечен. И да, он не работает, хендл машины искать ни в какую не хочет.
Я конечно понимаю, что проще сослаться на то, что "у меня всё работает" и ничего не исправлять.
@mfisto - а ты читал приписку к этому опкоду? Он работает только на миссиях. У меня такая же фигня была, пришлось получать хендл машины через closest car.
This video contains content from Sony Music Entertainment, who has blocked it in your country on copyright grounds.
Первое что замечаем, ага. Добавил.
[center]![]()
[/center]
У каждой рядом проежающей/стоящей машины показывается здоровье и ID. Смотрим скрин.
В этой версии я разделил вывод здоровья и ID. По-умолчанию, показывается только здоровье, если хотите что бы показывалось и ID, то сделайте следующее:
Создайте в папке cleo файл debug.ini и пропишите в нём следующее:
[debug]
info=1
И теперь у вас будет и ID машины и её хп.
Так же, если вы зажмёте Ctrl+H, то это дело исчезнет (пока будете зажимать), когда перестанете - снова появится. Удобно, если нужно снять скриншот.
Мелкие фиксы:
- В левом верхнем углу какието надписи...
- Надпись иногда исчезает (остаётся на одном месте)
- Исправления в коде
В архиве лежит также и QuickOpcode.asi и SCMgxt.asi которые необходимы для правильной работы в сампе и в игре вообще.
Не слабо ты игру прокачал))
Да не то слово. Так сказать "для лентяев".
Ну а если честно, то нам наверное показывают что в игре вполне реально реализовать какую-нибудь систему "авто-управления". То есть "систему для ленивых". Типа нажал кнопочку, игра прочитала из txt файла координаты метки и вышла в карту и поставила там метку.
Ну так в чём проблема?
Заморозь игрока, выйди в меню. Далее (уже сам) нажми карта и поставь метку где надо. Если меню закрыто (есть опкод-проверка) то считывай координаты метки и делай с ней что хочешь.
соответственно хотелось бы выход из карты в игру по нажатию той же кнопки.
Не получится такое сделать. Если ты делаешь скрипт - то он обрабатывается когда ты в игре, но не в меню. Если бы делал asi плагин, то мог бы реализовать и такое (только на кой чёрт оно нужно).
Это является ответом на твой первый вопрос о:
проблема в том, что следующая часть кода, которая меняет Current menu id не срабатывает.
Матрица точно такая же (и CEntity, и CCamera наследуются от CPlaceable)
Значит все субъекты игрового мира имеют след. иерархию:
CWorld->CPlaceable->CEntity-><класс>