Отправить игрока в точку можно и не опкодом, а например используя программное нажатие "вперед", при этом можно звонить, а бег можно превратить в ходьбу без смены анимации. Единственно, что игрок скорее всего должен быть controllable и развернут под нужным углом.
Теперь подробнее.
Чтобы игрок звонил, нужно его статус поставить 0x24 (0x94AD28 - [pointer] - Player pointer, +0x244 - [byte] - player current status) либо опкод 052B.
Чтобы игрок шел, а не бежал, нужно анимацию движения вперед уменьшить с 0xFF например до 0x55 как сделано в Walk моде.
Адреса игровых кнопок судя по модам начинаются с 0x7DBCB0, каждая кнопка 2 байта, т.е. чтобы сместиться на кнопку номер 8 "вперед" (00E1: key_pressed 0 8 ), нужно прибавить 8*2, т.е. 0x7DBCB0+8*2. При нажатии вперед это значение 255 (0xFF), ставим 255 сами - игрок бежит (с телефоном), ставим меньше - игрок замедляется, причем это влияет на анимацию.
В итоге связка может выглядить так:
052B: actor $PLAYER_ACTOR hold_cellphone 1
10@ = 8
10@ *= 2
10@ += 0x7DBCB0
05DF: write_memory 10@ size 2 value 0x55 virtual_protect 0 // в цикле
Вот Walk mod
http://www.gtagarage.com/mods/show.php?id=22101У меня не получилось по таймеру в asi ходить, возможно нужен непрерывный цикл как в скрипте, и еще возможно придется нупить некоторые адреса.
Тут
http://gtaforums.com/topic/117195-documenting-gta3vc-memory-adresses/page-2#entry1572417 это обсуждается.
Но через скрипт проблем не должно возникнуть, попробуй его доработать под телефон.