#4001 18-11-2011 07:54

VcSaJen
Registered: 25-08-2006
Posts: 217

Re: Один вопрос

В Вайс-сити там для игрока нужен опкод не для актёра, а для игрока:

035E: set_player $PLAYER_CHAR armour_to 100

Если нужно для своих актёров, то опкод 035F.

Last edited by VcSaJen (18-11-2011 07:57)


[small][/small]

Offline

#4002 18-11-2011 11:11

Jack Daniel's
Registered: 05-07-2011
Posts: 211

Re: Один вопрос

Можешь сделать через адреса памяти http://gtamodding.ru/w/index.php?title= … 1.82.D1.8B

Last edited by Jack Daniel's (18-11-2011 11:12)

Offline

#4003 18-11-2011 20:17

Den_spb
From: Ленинград
Registered: 23-11-2008
Posts: 937
Website

Re: Один вопрос

Сам цикл составлен правильно. wait 100 можно убрать.

Offline

#4004 19-11-2011 18:01

reute70
From: Средняя Волга
Registered: 22-08-2009
Posts: 182

Re: Один вопрос

Может я совсем всё забыл, но - в коде цикл постоянно устанавливает одну и ту же погоду каждые 0.1 секунду ?!

Offline

#4005 19-11-2011 20:12

listener
From: Vice City
Registered: 09-11-2006
Posts: 616
Website

Re: Один вопрос

Возможно, это от незнания о FORCE_WEATHER (не помню, как он в опкодах называется)

Offline

#4006 20-11-2011 04:42

Dr_Emmett_Brown_2011
Registered: 28-04-2011
Posts: 80

Re: Один вопрос

А как пользоваться этим опкодом:

01B5: force_weather 1

?

Offline

#4007 20-11-2011 06:52

Ruzel
Registered: 03-06-2010
Posts: 61

Re: Один вопрос

сдрасьте всем) никто случайно не знает, когда примерно выйдет для гта4 нормальный редактор скриптов, как санни билдер? очень хочется скриптить в четверке)
жду не дождусь прям)

Last edited by Ruzel (20-11-2011 06:54)

Offline

#4008 20-11-2011 08:37

Jack Daniel's
Registered: 05-07-2011
Posts: 211

Re: Один вопрос

Ruzel wrote:

сдрасьте всем) никто случайно не знает, когда примерно выйдет для гта4 нормальный редактор скриптов, как санни билдер? очень хочется скриптить в четверке)
жду не дождусь прям)

Мда, уже 2-3, кто живет в каком-то вакууме.
http://sannybuilder.com/forums/viewtopic.php?id=1711

Offline

#4009 20-11-2011 11:08

Ruzel
Registered: 03-06-2010
Posts: 61

Re: Один вопрос

Jack Daniel's
Ого, там ведь кажется идет скриптинг как программирование на Си, а я в этом ничего непонимаю( Мне бы что-нибудь полегче, как в сани билдере) может в скором времени выйдет что-нибудь подобное? или остается только учить программинг?)

Offline

#4010 20-11-2011 14:32

VcSaJen
Registered: 25-08-2006
Posts: 217

Re: Один вопрос

Никакой это не программинг, а реальный скриптинг, как в SB. Просто синтаксис немного другой.
И не обязательно использовать MSVC++, можно пользоваться легковесным Geany.
Как выйдет Cleo IV, напишу статью про это.

Last edited by VcSaJen (20-11-2011 14:35)


[small][/small]

Offline

#4011 20-11-2011 18:37

Ruzel
Registered: 03-06-2010
Posts: 61

Re: Один вопрос

VcSaJen
буду ждать. надеюсь скоро выйдет)
[---]
вопросы:
есть ли в скрипте sco мультипоточность? (параллельное выполнение нескольких тредов)
если я просто добавлю свой скрипт sco в архив script.img, будет ли он работать? или нужно прописывать где-то что-то.
и что за параметр nameHash в опкоде CREATE_CAR ?

Last edited by Ruzel (26-11-2011 16:00)

Offline

#4012 26-11-2011 19:32

Jack Daniel's
Registered: 05-07-2011
Posts: 211

Re: Один вопрос

Вопрос, собсна, нубский. Но на что указывает $PLAYER_CHAR? На CPed?

Last edited by Jack Daniel's (26-11-2011 19:33)

Offline

#4013 26-11-2011 21:29

~AquaZ~
Registered: 01-03-2010
Posts: 726

Re: Один вопрос

То $PLAYER_ACTOR. А CHAR - явно вещь другая, и сомневаюсь что пул игроков есть, хотя у меня были случаи когда появлялись 2 игрока (оба рабочие).

Offline

#4014 26-11-2011 22:57

Den_spb
From: Ленинград
Registered: 23-11-2008
Posts: 937
Website

Re: Один вопрос

$PLAYER_CHAR - номер игрока (как правило, 0). Структура игрока называется CPlayer.

Offline

#4015 27-11-2011 00:51

listener
From: Vice City
Registered: 09-11-2006
Posts: 616
Website

Re: Один вопрос

@Den_spb - Если верить debug info из GTA III, эта структура, оригинально называлась CPlayerInfo.
Их не пул, а массив. Для III/VC/SA, в массиве два элемента (на консолях был режим с двумя игроками, каждый со своего пада). Для IV - 16/32 объекта (консоли/PC).

Offline

#4016 27-11-2011 11:46

Jack Daniel's
Registered: 05-07-2011
Posts: 211

Re: Один вопрос

После ~часа в иде, исходниках mta|samp, я понял одно - чтобы получить инфу из структуры CPlayer, надо указатель из адреса 0xB7CD98 умножить на 0x190(размер структуры), в итоге по нулевому смещению у нас - CPlayer.PedInfo. Или я в чем-то ошибся grin Но все-таки я уже много чего попробовал, но не понятно, как получить player_char.

UPD. Хм, все оказалось просто. Нужно просто брать указатель из 0xB7CD98 - это и есть CPlayer.

Last edited by Jack Daniel's (27-11-2011 13:24)

Offline

#4017 27-11-2011 12:41

Den_spb
From: Ленинград
Registered: 23-11-2008
Posts: 937
Website

Re: Один вопрос

Точнее говоря, адрес CPlayer для N игрока рассчитывается как 0xB7CD98+0x190*N. Если в игре один игрок, то N=0, а CPlayer = 0xB7CD98. А адрес структуры педа игрока записан в структуре CPlayer по нулевому смещению: CPed = dword [CPlayer + 0]

Last edited by Den_spb (27-11-2011 12:54)

Offline

#4018 28-11-2011 20:33

JuSskeee*
From: Мариуполь
Registered: 25-11-2011
Posts: 51

Re: Один вопрос

Здраствуйте все. Есть такое дело в GTA SA  - scmpath.
Не могу понять как задать свои точки в пути.

Создаю код:

07C0: load_path 705
038B: load_requested_models
05D6: clear_scmpath
05D7: add_point_to_scmpath 2883.7747 1706.243 10.5092
05D7: add_point_to_scmpath 1983.7547 1706.243 10.5092
05D7: add_point_to_scmpath 2483.7747 1756.243 10.5092
05EB: assign_vehicle $12 to_path 705
0873: release_path 705

Точки произвольные, но существующие.
Но не смотря на это, машина едет по стандартному 705 пути.
Подскажите в чем дело?


Your Banny Wrote

Offline

#4019 29-11-2011 06:17

~AquaZ~
Registered: 01-03-2010
Posts: 726

Re: Один вопрос

Могу вводить в заблуждение, но может это?

07E7: AS_assign_scmpath_to_actor -1 in_car 102@ speed 25.0 flags 1 0 1

P.S. А вот меня всегда интересовало: чё значит Sanny?

Offline

#4020 29-11-2011 14:19

JuSskeee*
From: Мариуполь
Registered: 25-11-2011
Posts: 51

Re: Один вопрос

Заменил на предложенный опкод , но результат не удовлетворяет. Теперь машина просто стоит.


Your Banny Wrote

Offline

#4021 30-11-2011 15:03

JuSskeee*
From: Мариуполь
Registered: 25-11-2011
Posts: 51

Re: Один вопрос

Да , еще одни вопрос.
Код на анимацию для машины :

 Car.SetAnimation($93, 9, 5000)

Но машина как стояла так и стоит на месте.
Прошу помочь!


Your Banny Wrote

Offline

#4022 30-11-2011 20:20

JuSskeee*
From: Мариуполь
Registered: 25-11-2011
Posts: 51

Re: Один вопрос

Отбой воздушной тревоги! Нашел я решение проблемы,надо было просто добавить опкод

03A2: set_car $93 action 3

Your Banny Wrote

Offline

#4023 01-12-2011 08:59

Ruzel
Registered: 03-06-2010
Posts: 61

Re: Один вопрос

JuSskeee*
хм, а какие значения допустимы в этом опкоде, и какие действия им определены? чето не припоминаю :-)
[hr]
и все-таки что за параметр nameHash в опкоде CREATE_CAR в Scocl ?

Offline

#4024 01-12-2011 13:55

JuSskeee*
From: Мариуполь
Registered: 25-11-2011
Posts: 51

Re: Один вопрос

Я сам не знаю, что это за опкод. Я просто порылся в Мейне, написав в поисковике "Car.SetAnimation"
Просмотрев несколько вариантов я понял, что перед командой анимации машины нужно поставить выше приведенный опкод. В общем виде будет это так:

 03A2: set_car $93 action 3 
 Car.SetAnimation($93, 9, 5000)

Last edited by JuSskeee* (01-12-2011 18:24)


Your Banny Wrote

Offline

#4025 01-12-2011 14:11

Voron295
From: Каушаны
Registered: 06-12-2010
Posts: 425
Website

Re: Один вопрос

JuSskeee* wrote:

07C0: load_path 705
038B: load_requested_models
05D6: clear_scmpath
05D7: add_point_to_scmpath 2883.7747 1706.243 10.5092
05D7: add_point_to_scmpath 1983.7547 1706.243 10.5092
05D7: add_point_to_scmpath 2483.7747 1756.243 10.5092
05EB: assign_vehicle $12 to_path 705
0873: release_path 705

Точки произвольные, но существующие.
Но не смотря на это, машина едет по стандартному 705 пути.
Подскажите в чем дело?

Ничего удивительного, ты ведь загружаешь 705-ый путь и ставишь на него машину...
Правильно будет вот так:

05D6: clear_scmpath
05D7: add_point_to_scmpath 2883.7747 1706.243 10.5092
05D7: add_point_to_scmpath 1983.7547 1706.243 10.5092
05D7: add_point_to_scmpath 2483.7747 1756.243 10.5092
06BB: set_actor -1 drive_car $12 speed 10.0 along_SCM_path

Добро всегда побеждает зло. Кто победил, тот и добрый!
userbar.png

Offline

Board footer

Powered by FluxBB