#5001 13-06-2018 16:01

Kim
Registered: 07-06-2017
Posts: 51

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

Еще раз помощь нужна, пишу вот так: 4@ = Actor.Create(24,#SFR1,-2443.4973, 501.8636, 30.0928). При этом создается два актера сразу.

Offline

#5002 13-06-2018 17:25

wmysterio
From: Ukraine
Registered: 04-03-2011
Posts: 198
Website

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

Kim wrote:

Еще раз помощь нужна, пишу вот так: 4@ = Actor.Create(24,#SFR1,-2443.4973, 501.8636, 30.0928). При этом создается два актера сразу.

Сам по себе он не создаёт несколько актёров. Скорее всего дубликат скрипта есть. По коду легче будет понять где что пошло не так. Покажите этот код, будем разгребать проблему smile

Last edited by wmysterio (13-06-2018 17:26)

Offline

#5003 13-06-2018 18:16

Kim
Registered: 07-06-2017
Posts: 51

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

wmysterio wrote:
Kim wrote:

Еще раз помощь нужна, пишу вот так: 4@ = Actor.Create(24,#SFR1,-2443.4973, 501.8636, 30.0928). При этом создается два актера сразу.

Сам по себе он не создаёт несколько актёров. Скорее всего дубликат скрипта есть. По коду легче будет понять где что пошло не так. Покажите этот код, будем разгребать проблему smile

А, все! Я нашел ошибку, спасибо за помощь!

Offline

#5004 21-06-2018 10:23

Kim
Registered: 07-06-2017
Posts: 51

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

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

Last edited by Kim (22-06-2018 16:11)

Offline

#5005 04-07-2018 23:34

Nikita592
Registered: 14-06-2017
Posts: 36

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

Люди! У меня появился вопрос. Я использую опкод 0D7E от DK22Pac, для рисования индикатора. И в этом опкоде есть параметры at_cornerA и at_cornerB. Я в at_cornerB вписал значения 512.0 и 256.0. Насколько я понял, cornerB отвечает за ширину и высоту рисования текстуры. При изменении at_cornerA текстура изменяется по размерам и прочему, насколько я понял. Вопрос: Как текстуру рисовать в центре используя опкод рисования от DK22Pac?

Offline

#5006 06-07-2018 13:55

DK22Pac
From: Ukraine
Registered: 26-03-2010
Posts: 447
Website

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

rect_x1 = center_x - width/2
rect_x2 = center_x + width/2
rect_y1 = center_y - height/2
rect_y2 = center_y + height/2

Plugin-SDK https://github.com/DK22Pac/plugin-sdk
Discord-сервер по plugin-sdk и программированию в GTA
RU https://discord.gg/QEesDGb
ENG https://discord.gg/zaVqFQv

Offline

#5007 07-07-2018 00:16

Nikita592
Registered: 14-06-2017
Posts: 36

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

DK22Pac wrote:
rect_x1 = center_x - width/2
rect_x2 = center_x + width/2
rect_y1 = center_y - height/2
rect_y2 = center_y + height/2

Спасибо! Но я сообразить не могу, как рисовать текстуру в центре экрана?

Offline

#5008 19-08-2018 11:26

4lifeGTA
Registered: 28-01-2018
Posts: 23

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

Всем здравия желаю, прошу подсказать и надоумить, сделал скрипт, но он не работает, хотя логически в нем все правильно, но я допускаю где-то ошибку, оно и понятно, я далек от программирования, вот и остается только логический метод. rolleyes

Скрипт создает маркеры в гаражах перекраски по всему штату, и заехав на машине в маркер/гараж и если у тебя копы на хвосте, то с игрока снимут деньжат за снятие розыска, чем больше розыск, тем больше сумма. Но не могу понять что не так, маркеры есть, а деньги не снимают, вот собственно скрипт:

{$CLEO .cs}

//-------------MAIN---------------
0000: NOP 
thread 'pas'

:pas_2 
wait 100
03BC: 0@ = create_sphere_at 2067.9 -1831.3 13.5 radius 7.0  
03BC: 1@ = create_sphere_at 1025.0 -1026.4 32.1 radius 7.0 
03BC: 2@ = create_sphere_at 487.6 -1738.1 11.1 radius 7.0
03BC: 3@ = create_sphere_at -1904.3 280.7 41.0 radius 7.0
03BC: 4@ = create_sphere_at -2425.6 1025.3 50.3 radius 7.0
03BC: 5@ = create_sphere_at 1971.7 2162.4 11.0 radius 7.0
03BC: 6@ = create_sphere_at -100.0 1114.2 19.7 radius 7.0
03BC: 7@ = create_sphere_at -1420.6 2587.9 55.8 radius 7.0
03BC: 8@ = create_sphere_at 720.1 -460.6 16.3 radius 7.0 

:pas_3 
0001: wait 0 ms 
00D6: if
0256:   player $PLAYER_CHAR defined 
//010F:   player $PLAYER_CHAR wanted_level > 0
else_jump @pas_3
01C0: 32@ = player $PLAYER_CHAR wanted_level 
0002: jump @pas_01

:pas_01 
0001: wait 0 ms  
if
0039: 32@ == 1
else_jump @pas_02
jump @pas_1z1

:pas_02 
0001: wait 0 ms 
if
0039: 32@ == 2
else_jump @pas_03
jump @pas_1z2

:pas_03
0001: wait 0 ms 
if
0039: 32@ == 3
else_jump @pas_04
jump @pas_1z3

:pas_04 
0001: wait 0 ms 
if
0039: 32@ == 4
else_jump @pas_05
jump @pas_1z4

:pas_05
0001: wait 0 ms 
if
0039: 32@ == 5
else_jump @pas_06
jump @pas_1z5

:pas_06 
0001: wait 0 ms  
if
0039: 32@ == 6
else_jump @pas_04
jump @pas_1z6

:pas_1z1 
wait 0
00D6: if
0100: actor $PLAYER_ACTOR in_sphere 2067.9 -1831.3 13.5 radius 7.0 7.0 7.0 sphere 1 in_car
else_jump @pas_4z1 
0110: clear_player $PLAYER_CHAR wanted_level
0109: player $PLAYER_CHAR money += -1000
0002: jump @pas_3

:pas_1z2 
wait 0
00D6: if
0100: actor $PLAYER_ACTOR in_sphere 2067.9 -1831.3 13.5 radius 7.0 7.0 7.0 sphere 1 in_car
else_jump @pas_4z2 
0110: clear_player $PLAYER_CHAR wanted_level
0109: player $PLAYER_CHAR money += -2000
0002: jump @pas_3

:pas_1z3 
wait 0
00D6: if
0100: actor $PLAYER_ACTOR in_sphere 2067.9 -1831.3 13.5 radius 7.0 7.0 7.0 sphere 1 in_car
else_jump @pas_4z3 
0110: clear_player $PLAYER_CHAR wanted_level
0109: player $PLAYER_CHAR money += -3000
0002: jump @pas_3

:pas_1z4 
wait 0
00D6: if
0100: actor $PLAYER_ACTOR in_sphere 2067.9 -1831.3 13.5 radius 7.0 7.0 7.0 sphere 1 in_car
else_jump @pas_4z4 
0110: clear_player $PLAYER_CHAR wanted_level
0109: player $PLAYER_CHAR money += -4000
0002: jump @pas_3

:pas_1z5 
wait 0
00D6: if
0100: actor $PLAYER_ACTOR in_sphere 2067.9 -1831.3 13.5 radius 7.0 7.0 7.0 sphere 1 in_car
else_jump @pas_4z5 
0110: clear_player $PLAYER_CHAR wanted_level
0109: player $PLAYER_CHAR money += -5000
0002: jump @pas_3

:pas_1z6 
wait 0
00D6: if
0100: actor $PLAYER_ACTOR in_sphere 2067.9 -1831.3 13.5 radius 7.0 7.0 7.0 sphere 1 in_car
else_jump @pas_4z6 
0110: clear_player $PLAYER_CHAR wanted_level
0109: player $PLAYER_CHAR money += -6000
0002: jump @pas_3

:pas_4z1 
wait 0
00D6: if 
//0039: 32@ == 1
0100: actor $PLAYER_ACTOR in_sphere 1025.0 -1026.4 32.1 radius 7.0 7.0 7.0 sphere 1 in_car
else_jump @pas_5z1 
0110: clear_player $PLAYER_CHAR wanted_level
0109: player $PLAYER_CHAR money += -1000
0002: jump @pas_3

:pas_4z2 
wait 0
00D6: if 
//0039: 32@ == 1
0100: actor $PLAYER_ACTOR in_sphere 1025.0 -1026.4 32.1 radius 7.0 7.0 7.0 sphere 1 in_car
else_jump @pas_5z2 
0110: clear_player $PLAYER_CHAR wanted_level
0109: player $PLAYER_CHAR money += -2000
0002: jump @pas_3

:pas_4z3 
wait 0
00D6: if 
//0039: 32@ == 1
0100: actor $PLAYER_ACTOR in_sphere 1025.0 -1026.4 32.1 radius 7.0 7.0 7.0 sphere 1 in_car
else_jump @pas_5z3 
0110: clear_player $PLAYER_CHAR wanted_level
0109: player $PLAYER_CHAR money += -3000
0002: jump @pas_3

:pas_4z4 
wait 0
00D6: if 
//0039: 32@ == 1
0100: actor $PLAYER_ACTOR in_sphere 1025.0 -1026.4 32.1 radius 7.0 7.0 7.0 sphere 1 in_car
else_jump @pas_5z4 
0110: clear_player $PLAYER_CHAR wanted_level
0109: player $PLAYER_CHAR money += -4000
0002: jump @pas_3

:pas_4z5 
wait 0
00D6: if 
//0039: 32@ == 1
0100: actor $PLAYER_ACTOR in_sphere 1025.0 -1026.4 32.1 radius 7.0 7.0 7.0 sphere 1 in_car
else_jump @pas_5z5 
0110: clear_player $PLAYER_CHAR wanted_level
0109: player $PLAYER_CHAR money += -5000
0002: jump @pas_3

:pas_4z6 
wait 0
00D6: if 
//0039: 32@ == 1
0100: actor $PLAYER_ACTOR in_sphere 1025.0 -1026.4 32.1 radius 7.0 7.0 7.0 sphere 1 in_car
else_jump @pas_5z6 
0110: clear_player $PLAYER_CHAR wanted_level
0109: player $PLAYER_CHAR money += -6000
0002: jump @pas_3

:pas_5z1 
wait 0
00D6: if 
//0039: 32@ == 1
0100: actor $PLAYER_ACTOR in_sphere 487.6 -1738.1 11.1 radius 7.0 7.0 7.0 sphere 1 in_car
else_jump @pas_6z1 
0110: clear_player $PLAYER_CHAR wanted_level
0109: player $PLAYER_CHAR money += -1000
0002: jump @pas_3

:pas_5z2 
wait 0
00D6: if 
//0039: 32@ == 1
0100: actor $PLAYER_ACTOR in_sphere 487.6 -1738.1 11.1 radius 7.0 7.0 7.0 sphere 1 in_car
else_jump @pas_6z2 
0110: clear_player $PLAYER_CHAR wanted_level
0109: player $PLAYER_CHAR money += -2000
0002: jump @pas_3

:pas_5z3 
wait 0
00D6: if 
//0039: 32@ == 1
0100: actor $PLAYER_ACTOR in_sphere 487.6 -1738.1 11.1 radius 7.0 7.0 7.0 sphere 1 in_car
else_jump @pas_6z3 
0110: clear_player $PLAYER_CHAR wanted_level
0109: player $PLAYER_CHAR money += -3000
0002: jump @pas_3

:pas_5z4 
wait 0
00D6: if 
//0039: 32@ == 1
0100: actor $PLAYER_ACTOR in_sphere 487.6 -1738.1 11.1 radius 7.0 7.0 7.0 sphere 1 in_car
else_jump @pas_6z4 
0110: clear_player $PLAYER_CHAR wanted_level
0109: player $PLAYER_CHAR money += -4000
0002: jump @pas_3

:pas_5z5 
wait 0
00D6: if 
//0039: 32@ == 1
0100: actor $PLAYER_ACTOR in_sphere 487.6 -1738.1 11.1 radius 7.0 7.0 7.0 sphere 1 in_car
else_jump @pas_6z5 
0110: clear_player $PLAYER_CHAR wanted_level
0109: player $PLAYER_CHAR money += -5000
0002: jump @pas_3

:pas_5z6 
wait 0
00D6: if 
//0039: 32@ == 1
0100: actor $PLAYER_ACTOR in_sphere 487.6 -1738.1 11.1 radius 7.0 7.0 7.0 sphere 1 in_car
else_jump @pas_6z6 
0110: clear_player $PLAYER_CHAR wanted_level
0109: player $PLAYER_CHAR money += -6000
0002: jump @pas_3

:pas_6z1 
wait 0
00D6: if 
//0039: 32@ == 1
0100: actor $PLAYER_ACTOR in_sphere -1904.3 280.7 41.0 radius 7.0 7.0 7.0 sphere 1 in_car
else_jump @pas_7z1 
0110: clear_player $PLAYER_CHAR wanted_level
0109: player $PLAYER_CHAR money += -1000
0002: jump @pas_3

:pas_6z2 
wait 0
00D6: if 
//0039: 32@ == 1
0100: actor $PLAYER_ACTOR in_sphere -1904.3 280.7 41.0 radius 7.0 7.0 7.0 sphere 1 in_car
else_jump @pas_7z2 
0110: clear_player $PLAYER_CHAR wanted_level
0109: player $PLAYER_CHAR money += -2000
0002: jump @pas_3

:pas_6z3 
wait 0
00D6: if 
//0039: 32@ == 1
0100: actor $PLAYER_ACTOR in_sphere -1904.3 280.7 41.0 radius 7.0 7.0 7.0 sphere 1 in_car
else_jump @pas_7z3 
0110: clear_player $PLAYER_CHAR wanted_level
0109: player $PLAYER_CHAR money += -3000
0002: jump @pas_3

:pas_6z4 
wait 0
00D6: if 
//0039: 32@ == 1
0100: actor $PLAYER_ACTOR in_sphere -1904.3 280.7 41.0 radius 7.0 7.0 7.0 sphere 1 in_car
else_jump @pas_7z4 
0110: clear_player $PLAYER_CHAR wanted_level
0109: player $PLAYER_CHAR money += -4000
0002: jump @pas_3

:pas_6z5 
wait 0
00D6: if 
//0039: 32@ == 1
0100: actor $PLAYER_ACTOR in_sphere -1904.3 280.7 41.0 radius 7.0 7.0 7.0 sphere 1 in_car
else_jump @pas_7z5 
0110: clear_player $PLAYER_CHAR wanted_level
0109: player $PLAYER_CHAR money += -5000
0002: jump @pas_3

:pas_6z6 
wait 0
00D6: if 
//0039: 32@ == 1
0100: actor $PLAYER_ACTOR in_sphere -1904.3 280.7 41.0 radius 7.0 7.0 7.0 sphere 1 in_car
else_jump @pas_7z6 
0110: clear_player $PLAYER_CHAR wanted_level
0109: player $PLAYER_CHAR money += -6000
0002: jump @pas_3

:pas_7z1 
wait 0
00D6: if 
//0039: 32@ == 1
0100: actor $PLAYER_ACTOR in_sphere -2425.6 1025.3 50.3 radius 7.0 7.0 7.0 sphere 1 in_car
else_jump @pas_8z1 
0110: clear_player $PLAYER_CHAR wanted_level
0109: player $PLAYER_CHAR money += -1000
0002: jump @pas_3

:pas_7z2 
wait 0
00D6: if 
//0039: 32@ == 1
0100: actor $PLAYER_ACTOR in_sphere -2425.6 1025.3 50.3 radius 7.0 7.0 7.0 sphere 1 in_car
else_jump @pas_8z2 
0110: clear_player $PLAYER_CHAR wanted_level
0109: player $PLAYER_CHAR money += -2000
0002: jump @pas_3

:pas_7z3 
wait 0
00D6: if 
//0039: 32@ == 1
0100: actor $PLAYER_ACTOR in_sphere -2425.6 1025.3 50.3 radius 7.0 7.0 7.0 sphere 1 in_car
else_jump @pas_8z3 
0110: clear_player $PLAYER_CHAR wanted_level
0109: player $PLAYER_CHAR money += -3000
0002: jump @pas_3

:pas_7z4 
wait 0
00D6: if 
//0039: 32@ == 1
0100: actor $PLAYER_ACTOR in_sphere -2425.6 1025.3 50.3 radius 7.0 7.0 7.0 sphere 1 in_car
else_jump @pas_8z4 
0110: clear_player $PLAYER_CHAR wanted_level
0109: player $PLAYER_CHAR money += -4000
0002: jump @pas_3

:pas_7z5 
wait 0
00D6: if 
//0039: 32@ == 1
0100: actor $PLAYER_ACTOR in_sphere -2425.6 1025.3 50.3 radius 7.0 7.0 7.0 sphere 1 in_car
else_jump @pas_8z5 
0110: clear_player $PLAYER_CHAR wanted_level
0109: player $PLAYER_CHAR money += -5000
0002: jump @pas_3

:pas_7z6 
wait 0
00D6: if 
//0039: 32@ == 1
0100: actor $PLAYER_ACTOR in_sphere -2425.6 1025.3 50.3 radius 7.0 7.0 7.0 sphere 1 in_car
else_jump @pas_8z6 
0110: clear_player $PLAYER_CHAR wanted_level
0109: player $PLAYER_CHAR money += -6000
0002: jump @pas_3

:pas_8z1 
wait 0
00D6: if 
//0039: 32@ == 1
0100: actor $PLAYER_ACTOR in_sphere 1971.7 2162.4 11.0 radius 7.0 7.0 7.0 sphere 1 in_car
else_jump @pas_9z1 
0110: clear_player $PLAYER_CHAR wanted_level
0109: player $PLAYER_CHAR money += -1000
0002: jump @pas_3

:pas_8z2 
wait 0
00D6: if 
//0039: 32@ == 1
0100: actor $PLAYER_ACTOR in_sphere 1971.7 2162.4 11.0 radius 7.0 7.0 7.0 sphere 1 in_car
else_jump @pas_9z2 
0110: clear_player $PLAYER_CHAR wanted_level
0109: player $PLAYER_CHAR money += -2000
0002: jump @pas_3

:pas_8z3 
wait 0
00D6: if 
//0039: 32@ == 1
0100: actor $PLAYER_ACTOR in_sphere 1971.7 2162.4 11.0 radius 7.0 7.0 7.0 sphere 1 in_car
else_jump @pas_9z3 
0110: clear_player $PLAYER_CHAR wanted_level
0109: player $PLAYER_CHAR money += -3000
0002: jump @pas_3

:pas_8z4 
wait 0
00D6: if 
//0039: 32@ == 1
0100: actor $PLAYER_ACTOR in_sphere 1971.7 2162.4 11.0 radius 7.0 7.0 7.0 sphere 1 in_car
else_jump @pas_9z4 
0110: clear_player $PLAYER_CHAR wanted_level
0109: player $PLAYER_CHAR money += -4000
0002: jump @pas_3

:pas_8z5 
wait 0
00D6: if 
//0039: 32@ == 1
0100: actor $PLAYER_ACTOR in_sphere 1971.7 2162.4 11.0 radius 7.0 7.0 7.0 sphere 1 in_car
else_jump @pas_9z5 
0110: clear_player $PLAYER_CHAR wanted_level
0109: player $PLAYER_CHAR money += -5000
0002: jump @pas_3

:pas_8z6
00D6: if 
//0039: 32@ == 1
0100: actor $PLAYER_ACTOR in_sphere 1971.7 2162.4 11.0 radius 7.0 7.0 7.0 sphere 1 in_car
else_jump @pas_9z6 
0110: clear_player $PLAYER_CHAR wanted_level
0109: player $PLAYER_CHAR money += -6000
0002: jump @pas_3

:pas_9z1 
wait 0
00D6: if 
//0039: 32@ == 1
0100: actor $PLAYER_ACTOR in_sphere -100.0 1114.2 19.7 radius 7.0 7.0 7.0 sphere 1 in_car
else_jump @pas_10z1 
0110: clear_player $PLAYER_CHAR wanted_level
0109: player $PLAYER_CHAR money += -1000
0002: jump @pas_3

:pas_9z2 
wait 0
00D6: if 
//0039: 32@ == 1
0100: actor $PLAYER_ACTOR in_sphere -100.0 1114.2 19.7 radius 7.0 7.0 7.0 sphere 1 in_car
else_jump @pas_10z2 
0110: clear_player $PLAYER_CHAR wanted_level
0109: player $PLAYER_CHAR money += -2000
0002: jump @pas_3

:pas_9z3 
wait 0
00D6: if 
//0039: 32@ == 1
0100: actor $PLAYER_ACTOR in_sphere -100.0 1114.2 19.7 radius 7.0 7.0 7.0 sphere 1 in_car
else_jump @pas_10z3 
0110: clear_player $PLAYER_CHAR wanted_level
0109: player $PLAYER_CHAR money += -3000
0002: jump @pas_3

:pas_9z4 
wait 0
00D6: if 
//0039: 32@ == 1
0100: actor $PLAYER_ACTOR in_sphere -100.0 1114.2 19.7 radius 7.0 7.0 7.0 sphere 1 in_car
else_jump @pas_10z4 
0110: clear_player $PLAYER_CHAR wanted_level
0109: player $PLAYER_CHAR money += -4000
0002: jump @pas_3

:pas_9z5 
wait 0
00D6: if 
//0039: 32@ == 1
0100: actor $PLAYER_ACTOR in_sphere -100.0 1114.2 19.7 radius 7.0 7.0 7.0 sphere 1 in_car
else_jump @pas_10z5 
0110: clear_player $PLAYER_CHAR wanted_level
0109: player $PLAYER_CHAR money += -5000
0002: jump @pas_3

:pas_9z6 
wait 0
00D6: if 
//0039: 32@ == 1
0100: actor $PLAYER_ACTOR in_sphere -100.0 1114.2 19.7 radius 7.0 7.0 7.0 sphere 1 in_car
else_jump @pas_10z6 
0110: clear_player $PLAYER_CHAR wanted_level
0109: player $PLAYER_CHAR money += -6000
0002: jump @pas_3

:pas_10z1 
wait 0
00D6: if 
//0039: 32@ == 1
0100: actor $PLAYER_ACTOR in_sphere -1420.6 2587.9 55.8 radius 7.0 7.0 7.0 sphere 1 in_car
else_jump @pas_11z1 
0110: clear_player $PLAYER_CHAR wanted_level
0109: player $PLAYER_CHAR money += -1000
0002: jump @pas_3

:pas_10z2 
wait 0
00D6: if 
//0039: 32@ == 1
0100: actor $PLAYER_ACTOR in_sphere -1420.6 2587.9 55.8 radius 7.0 7.0 7.0 sphere 1 in_car
else_jump @pas_11z2 
0110: clear_player $PLAYER_CHAR wanted_level
0109: player $PLAYER_CHAR money += -2000
0002: jump @pas_3

:pas_10z3 
wait 0
00D6: if 
//0039: 32@ == 1
0100: actor $PLAYER_ACTOR in_sphere -1420.6 2587.9 55.8 radius 7.0 7.0 7.0 sphere 1 in_car
else_jump @pas_11z3 
0110: clear_player $PLAYER_CHAR wanted_level
0109: player $PLAYER_CHAR money += -3000
0002: jump @pas_3

:pas_10z4 
wait 0
00D6: if 
//0039: 32@ == 1
0100: actor $PLAYER_ACTOR in_sphere -1420.6 2587.9 55.8 radius 7.0 7.0 7.0 sphere 1 in_car
else_jump @pas_11z4 
0110: clear_player $PLAYER_CHAR wanted_level
0109: player $PLAYER_CHAR money += -4000
0002: jump @pas_3

:pas_10z5 
wait 0
00D6: if 
//0039: 32@ == 1
0100: actor $PLAYER_ACTOR in_sphere -1420.6 2587.9 55.8 radius 7.0 7.0 7.0 sphere 1 in_car
else_jump @pas_11z5 
0110: clear_player $PLAYER_CHAR wanted_level
0109: player $PLAYER_CHAR money += -5000
0002: jump @pas_3

:pas_10z6 
wait 0
00D6: if 
//0039: 32@ == 1
0100: actor $PLAYER_ACTOR in_sphere -1420.6 2587.9 55.8 radius 7.0 7.0 7.0 sphere 1 in_car
else_jump @pas_11z6 
0110: clear_player $PLAYER_CHAR wanted_level
0109: player $PLAYER_CHAR money += -6000
0002: jump @pas_3

:pas_11z1 
wait 0
00D6: if 
//0039: 32@ == 1
0100: actor $PLAYER_ACTOR in_sphere 720.1 -460.6 16.3 radius 7.0 7.0 7.0 sphere 1 in_car
else_jump @pas_1z1 
0110: clear_player $PLAYER_CHAR wanted_level
0109: player $PLAYER_CHAR money += -1000
0002: jump @pas_3

:pas_11z2 
wait 0
00D6: if 
//0039: 32@ == 1
0100: actor $PLAYER_ACTOR in_sphere 720.1 -460.6 16.3 radius 7.0 7.0 7.0 sphere 1 in_car
else_jump @pas_1z2 
0110: clear_player $PLAYER_CHAR wanted_level
0109: player $PLAYER_CHAR money += -2000
0002: jump @pas_3

:pas_11z3 
wait 0
00D6: if 
//0039: 32@ == 1
0100: actor $PLAYER_ACTOR in_sphere 720.1 -460.6 16.3 radius 7.0 7.0 7.0 sphere 1 in_car
else_jump @pas_1z3 
0110: clear_player $PLAYER_CHAR wanted_level
0109: player $PLAYER_CHAR money += -3000
0002: jump @pas_3

:pas_11z4 
wait 0
00D6: if 
//0039: 32@ == 1
0100: actor $PLAYER_ACTOR in_sphere 720.1 -460.6 16.3 radius 7.0 7.0 7.0 sphere 1 in_car
else_jump @pas_1z4 
0110: clear_player $PLAYER_CHAR wanted_level
0109: player $PLAYER_CHAR money += -4000
0002: jump @pas_3

:pas_11z5 
wait 0
00D6: if 
//0039: 32@ == 1
0100: actor $PLAYER_ACTOR in_sphere 720.1 -460.6 16.3 radius 7.0 7.0 7.0 sphere 1 in_car
else_jump @pas_1z5 
0110: clear_player $PLAYER_CHAR wanted_level
0109: player $PLAYER_CHAR money += -5000
0002: jump @pas_3

:pas_11z6 
wait 0
00D6: if 
//0039: 32@ == 1
0100: actor $PLAYER_ACTOR in_sphere 720.1 -460.6 16.3 radius 7.0 7.0 7.0 sphere 1 in_car
else_jump @pas_1z6 
0110: clear_player $PLAYER_CHAR wanted_level
0109: player $PLAYER_CHAR money += -6000
0002: jump @pas_3

Offline

#5009 19-08-2018 13:37

wmysterio
From: Ukraine
Registered: 04-03-2011
Posts: 198
Website

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

4lifeGTA wrote:

хотя логически в нем все правильно

Это тот случай, когда знание побеждает логику. Переменная 32@ используется для таймеров и она постоянно изменяет своё значение. Классическая ошибка. Можно и так написать скрипт:

{$CLEO}
03BC: 0@ = create_sphere_at 2067.9 -1831.3 13.5 radius 7.0 
03BC: 1@ = create_sphere_at 1025.0 -1026.4 32.1 radius 7.0 
03BC: 2@ = create_sphere_at 487.6 -1738.1 11.1 radius 7.0
03BC: 3@ = create_sphere_at -1904.3 280.7 41.0 radius 7.0
03BC: 4@ = create_sphere_at -2425.6 1025.3 50.3 radius 7.0
03BC: 5@ = create_sphere_at 1971.7 2162.4 11.0 radius 7.0
03BC: 6@ = create_sphere_at -100.0 1114.2 19.7 radius 7.0
03BC: 7@ = create_sphere_at -1420.6 2587.9 55.8 radius 7.0
03BC: 8@ = create_sphere_at 720.1 -460.6 16.3 radius 7.0 

while true
wait 250
    if
    8256:   not player $PLAYER_CHAR defined
    then
    continue
    end
    01C0: 10@ = player $PLAYER_CHAR wanted_level
    if
    10@ == 0
    then
    continue
    end
    if or
    0100: actor $PLAYER_ACTOR in_sphere 2067.9 -1831.3 13.5 radius 7.0 7.0 7.0 sphere 1 in_car
    0100: actor $PLAYER_ACTOR in_sphere 1025.0 -1026.4 32.1 radius 7.0 7.0 7.0 sphere 1 in_car
    0100: actor $PLAYER_ACTOR in_sphere 487.6 -1738.1 11.1 radius 7.0 7.0 7.0 sphere 1 in_car
    0100: actor $PLAYER_ACTOR in_sphere -1904.3 280.7 41.0 radius 7.0 7.0 7.0 sphere 1 in_car
    0100: actor $PLAYER_ACTOR in_sphere -2425.6 1025.3 50.3 radius 7.0 7.0 7.0 sphere 1 in_car
    then
    gosub @WANTED_CLEAR
    end   
    if or
    0100: actor $PLAYER_ACTOR in_sphere 1971.7 2162.4 11.0 radius 7.0 7.0 7.0 sphere 1 in_car
    0100: actor $PLAYER_ACTOR in_sphere -100.0 1114.2 19.7 radius 7.0 7.0 7.0 sphere 1 in_car
    0100: actor $PLAYER_ACTOR in_sphere -1420.6 2587.9 55.8 radius 7.0 7.0 7.0 sphere 1 in_car
    0100: actor $PLAYER_ACTOR in_sphere 720.1 -460.6 16.3 radius 7.0 7.0 7.0 sphere 1 in_car
    then
    gosub @WANTED_CLEAR
    end     
    /* пишем другие проверки */                                                                   
end         

:WANTED_CLEAR
10@ *= 1000
0085: 9@ = 10@ // (int)
9@ -= 1
if
010A:   player $PLAYER_CHAR money > 9@
then
10@ *= -1
0110: clear_player $PLAYER_CHAR wanted_level
0109: player $PLAYER_CHAR money += 10@
end
return                      

Last edited by wmysterio (19-08-2018 13:44)

Offline

#5010 19-08-2018 19:41

4lifeGTA
Registered: 28-01-2018
Posts: 23

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

Wmysterio, спасибо за конкретный ответ!!! clap
Абсолютно с тобой согласен, знание это сила, а незнание напрасная трата сил и времени. С твоей помощью получился рабочий скрипт, теперь все как надо:

{$CLEO .cs}

//-------------MAIN---------------
03BC: 0@ = create_sphere_at 2067.9 -1831.3 13.5 radius 7.0 
03BC: 1@ = create_sphere_at 1025.0 -1026.4 32.1 radius 7.0 
03BC: 2@ = create_sphere_at 487.6 -1738.1 11.1 radius 7.0 
03BC: 3@ = create_sphere_at -1904.3 280.7 41.0 radius 7.0 
03BC: 4@ = create_sphere_at -2425.6 1025.3 50.3 radius 7.0 
03BC: 5@ = create_sphere_at 1971.7 2162.4 11.0 radius 7.0 
03BC: 6@ = create_sphere_at -100.0 1114.2 19.7 radius 7.0 
03BC: 7@ = create_sphere_at -1420.6 2587.9 55.8 radius 7.0 
03BC: 8@ = create_sphere_at 720.1 -460.6 16.3 radius 7.0 

:NONAME_225
wait 250 
if 
   Player.Defined($PLAYER_CHAR)
jf @NONAME_225 
jump @NONAME_253 

:NONAME_253
10@ = Player.WantedLevel($PLAYER_CHAR)
if 
  10@ == 0 
jf @NONAME_286 
jump @NONAME_655 

:NONAME_286
if or
0100:   actor $PLAYER_ACTOR in_sphere 2067.9 -1831.3 13.5 radius 7.0 7.0 7.0 sphere 1 in_car 
0100:   actor $PLAYER_ACTOR in_sphere 1025.0 -1026.4 32.1 radius 7.0 7.0 7.0 sphere 1 in_car 
0100:   actor $PLAYER_ACTOR in_sphere 487.6 -1738.1 11.1 radius 7.0 7.0 7.0 sphere 1 in_car 
0100:   actor $PLAYER_ACTOR in_sphere -1904.3 280.7 41.0 radius 7.0 7.0 7.0 sphere 1 in_car 
0100:   actor $PLAYER_ACTOR in_sphere -2425.6 1025.3 50.3 radius 7.0 7.0 7.0 sphere 1 in_car 
jf @NONAME_489 
gosub @NONAME_662 

:NONAME_489
if or
0100:   actor $PLAYER_ACTOR in_sphere 1971.7 2162.4 11.0 radius 7.0 7.0 7.0 sphere 1 in_car 
0100:   actor $PLAYER_ACTOR in_sphere -100.0 1114.2 19.7 radius 7.0 7.0 7.0 sphere 1 in_car 
0100:   actor $PLAYER_ACTOR in_sphere -1420.6 2587.9 55.8 radius 7.0 7.0 7.0 sphere 1 in_car 
0100:   actor $PLAYER_ACTOR in_sphere 720.1 -460.6 16.3 radius 7.0 7.0 7.0 sphere 1 in_car 
jf @NONAME_655 
gosub @NONAME_662 

:NONAME_655
jump @NONAME_225 

:NONAME_662
10@ *= 1000 
//0085: 9@ = 10@ // (int) 
//9@ -= 1 
if 
010F:   player $PLAYER_CHAR wanted_level > 0 
10@ *= -1 
Player.ClearWantedLevel($PLAYER_CHAR)
Player.Money($PLAYER_CHAR) += 10@
jump @NONAME_225
//:NONAME_721
//return 

З.ы.
О, у тебя есть сайт, пойдука там пошарюсь...

Offline

#5011 19-08-2018 20:00

wmysterio
From: Ukraine
Registered: 04-03-2011
Posts: 198
Website

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

4lifeGTA wrote:

С твоей помощью получился рабочий скрипт, теперь все как надо

Что немного странно, так как gosub должен обязательно заканчиваться return-ом, а у тебя там прыжок стоит.

4lifeGTA wrote:

О, у тебя есть сайт, пойдука там пошарюсь...

Шарься, там есть полно информации. Только там акцент больше на MAIN.SCM, хотя сам скриптинг там ничем не отличается от CLEO, кроме некоторых моментов.

Last edited by wmysterio (19-08-2018 20:00)

Offline

#5012 19-08-2018 20:49

4lifeGTA
Registered: 28-01-2018
Posts: 23

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

wmysterio wrote:

Что немного странно, так как gosub должен обязательно заканчиваться return-ом, а у тебя там прыжок стоит.

По другому выходило что-то не то, или сброшенная звезда мигала и деньги беспрерывно исчислялись или вообще ничего не происходило, я кароче помыкался, подумал что-же не так и убрал проверку денежек в кармане у игрока и прыжки переставил/вставил, после этого заработало нормально, пока не вылетело ни разу, поживем-увидим короче. Может виноваты другие скрипты, у меня стоят несколько управляющие силой розыска, принципом розыска и т.п.
Главное пока работает, если бы не ты и того бы не было wink

Offline

#5013 06-10-2018 09:56

Svyatogor2007
From: Moscow
Registered: 06-10-2018
Posts: 6

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

Приветствую знатоков.

В общем решил немного сократить размер своего скрипта, в связи с чем возник вопрос, можно ли одну и ту-же машину определить сразу в 2 переменные?
Например есть проверка:

if
29@ == 0
then
0@ = Actor.CurrentCar($PLAYER_ACTOR)
29@ = Actor.CurrentCar($PLAYER_ACTOR)
end
if and 
    056E: car 0@ defined
    056E: car 29@ defined 
    then
        if 
        Actor.InCar($PLAYER_ACTOR, 0@)
        then
        Car.SetImmunities(0@, 0, 0, 0, 0, 0)
        Car.LockInCurrentPosition(0@) = False
        041E: set_radio_station 7@
        Marker.Disable(28@)
        Car.RemoveReferences(0@)
        if
        not 29@ == 0
        then
        Car.SetImmunities(29@, 0, 0, 0, 0, 0)
        Car.LockInCurrentPosition(29@) = False
        Car.RemoveReferences(29@)
        end
        jump @SVRSAVE_90
        end
    else
    if
    056E: car 0@ defined
    then
    car.destroy(0@)
    Car.RemoveReferences(0@)
    end
    if
    056E: car 29@ defined
    then
    car.destroy(29@)
    Car.RemoveReferences(29@)
    end
    end

Тут суть, что 29@ это переменная для прицепа, и если прицеп был, но внезапно исчез, то машина из переменной 0@ уничтожается, а если прицепа не было изначально, то в обе переменных помещается машина игрока. В общем будет ли оно такое работать?

Вторая проблема с массивами. При попытке записать

0A8D: 17@(15@, 15i) = read_memory 9@ size 2 virtual_protect 0

компилятор пишет недостаточно параметров, ожидалось 4

А тут вообще игра вылетает:

15@ = 0
for 15@ = 0 to 14
        if 
        not 17@(15@,15i) == 65535 
        then 
        06E9: load_car_component 17@(15@,15i)
        31@ = 0
        wait 13@
        13@ += 10
        if and
        13@ < 200 
        06EA:   car_component 17@(15@,15i) available
        then
        if
        056E: car 1@ defined
        then
        06E7: 9@ = add_car_component 17@(15@,15i) to_car 1@
        06EB: release_car_component 17@(15@,15i)
        else
        15@ = 14
        jump @SVRSAVE_105
        end
        else
        if
        13@ < 200
        then
        15@ -= 1
        end
        end
        end
end

Last edited by Svyatogor2007 (06-10-2018 14:35)

Offline

#5014 07-10-2018 14:59

wmysterio
From: Ukraine
Registered: 04-03-2011
Posts: 198
Website

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

Svyatogor2007 wrote:

можно ли одну и ту-же машину определить сразу в 2 переменные?

Можно хоть во все доступные smile

0@ = Actor.CurrentCar($PLAYER_ACTOR)
0085: 1@ = 0@ // (int)    <---- переменная 1@ будет указывать на машину 0@
0085: 2@ = 0@ // (int)    <---- переменная 2@ будет указывать на машину 0@
0085: 3@ = 0@ // (int)    <---- переменная 3@ будет указывать на машину 0@
...
0085: N = 0@ // (int)      <---- переменная N будет указывать на машину 0@

Если машина 0@ была удалена, то остальные переменные будут указывать "в никуда" и будут содержать только числа.

Svyatogor2007 wrote:

В общем будет ли оно такое работать?

Я не знаю, как Вы это себе представляете. В SB есть опкод, которые используются для прицепов. Можно это использовать, чтобы не танцевать с бубном:

// ...
0@ = Car.Create( #LINERUN, 0.0, 0.0, 0.0 )   
1@ = Car.Create( #ARTICT1, 10.0, 0.0, 0.0 )

:LOOP
wait 0

    if or
    856E:   not car 0@ defined
    856E:   not car 1@ defined
    then
    jump @CAR_NOT_FOUND
    end
    
    if
    07AB:   car 0@ has_attached_trailer 1@
    then
    0AD1: show_formatted_text_highpriority "Trailer attached!" time 1
    else
    0AD1: show_formatted_text_highpriority "Trailer NOT attached!" time 1
    end


jump @LOOP

:CAR_NOT_FOUND
// ...
Svyatogor2007 wrote:

компилятор пишет недостаточно параметров, ожидалось 4

Массив неправильно написан, уберите пробелы между скобок:

17@(15@,15i)
Svyatogor2007 wrote:

А тут вообще игра вылетает

Пишите комментарии того, что Вы делаете )

1) Что в было в массиве до вызова цикла?
2) Компоненты действительно можно прицепить к машине? Не на все тачки можно ставить компоненты.
3) Ещё заметил, что вы изменяете порядок счётчика 15@. Этого лучше избегать - может игра зависнуть, если цикл будет слишком долго выполнятся.

Last edited by wmysterio (07-10-2018 15:01)

Offline

#5015 08-10-2018 08:22

Svyatogor2007
From: Moscow
Registered: 06-10-2018
Posts: 6

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

Спасибо, с вылетом разобрался, оказывается массив вообще ни при чем был. Касаемо счетчика, там еще таймер есть, если скрипт будет скакать на одном месте таймер заполнится и прервет цикл.

wmysterio wrote:

Я не знаю, как Вы это себе представляете. В SB есть опкод, которые используются для прицепов. Можно это использовать, чтобы не танцевать с бубном:

Опкод не подойдет, прицеп может быть, а может и не быть. Собственно на него изначально указывает переменная 29@, если она пуста, значит прицепа быть не должно.  Впрочем пока роблему решил так:

if
    056E: car 0@ defined
    then
        if
        not 29@ == 0
        then
            if
            856E: not car 29@ defined
            then
            car.destroy(0@)
            Car.RemoveReferences(0@)
            jump @SVRSAVE_106
            end
        end    
        if 
        Actor.InCar($PLAYER_ACTOR, 0@)
        then
        Car.SetImmunities(0@, 0, 0, 0, 0, 0)
        Car.LockInCurrentPosition(0@) = False
        041E: set_radio_station 7@
        Marker.Disable(28@)
        Car.RemoveReferences(0@)
        if
        not 29@ == 0
        then
        Car.SetImmunities(29@, 0, 0, 0, 0, 0)
        Car.LockInCurrentPosition(29@) = False
        Car.RemoveReferences(29@)
        end
        jump @SVRSAVE_90
        end
    else
    if
    not 29@ == 0
    then
    if
    056E: car 29@ defined
    then
    car.destroy(29@)
    Car.RemoveReferences(29@)
    end
    end
    jump @SVRSAVE_106
    end

Offline

#5016 09-10-2018 06:38

kenking
From: Казахстан
Registered: 28-06-2010
Posts: 253

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

Опкод не подойдет, прицеп может быть, а может и не быть.

В структуре транспорта есть m_pTrailer адрес +0x4C8 (size 4), по которому можно определить есть у транспорта прицеп или нет. И предыдущий адрес +0x4C4 (size 4) - это m_pTractor

Offline

#5017 09-10-2018 14:13

Svyatogor2007
From: Moscow
Registered: 06-10-2018
Posts: 6

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

kenking wrote:

Опкод не подойдет, прицеп может быть, а может и не быть.

В структуре транспорта есть m_pTrailer адрес +0x4C8 (size 4), по которому можно определить есть у транспорта прицеп или нет. И предыдущий адрес +0x4C4 (size 4) - это m_pTractor

Меня чуток не поняли видимо. Я все свое сохранение для транспорта мучаю. Тут цимес не в наличии прицепа в принципе, а в том, что бы упростить скрипт и убрать лишние строки.  Там дело в том, что игра прицеп удаляет рано, гораздо раньше автомобиля игрока, поэтому приходится проверять отдельно существует ли прицеп (если он был изначально) и существует ли автомобиль (если прицепа изначально не было), хотя в целом нынешний вариант тоже удачный получился, весь скрипт на 10кб поджал и добавил чего не хватало.

Тут новый вопрос возник, как пользоваться опкодом interceptor? Весь яндекс перерыл, нигде внятной справки нет, в стандартной справке билдера тоже тишина.
0AE2: почему-то глючит если много машин захватывать, а мне порядка 30-ти штук надо как то удержать от удаления... Бида.

Offline

#5018 09-10-2018 15:29

kenking
From: Казахстан
Registered: 28-06-2010
Posts: 253

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

0AE2: почему-то глючит если много машин захватывать, а мне порядка 30-ти штук надо как то удержать от удаления... Бида.

Дело не в количестве. Возможно код неправильно написан.

Offline

#5019 09-10-2018 16:43

wmysterio
From: Ukraine
Registered: 04-03-2011
Posts: 198
Website

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

Svyatogor2007 wrote:

Там дело в том, что игра прицеп удаляет рано, гораздо раньше автомобиля игрока

Если Вы думаете, что

0@ = Actor.CurrentCar($PLAYER_ACTOR)
29@ = Actor.CurrentCar($PLAYER_ACTOR)

захватывает прицеп и машину игрока, то это не так. Никакого прицепа там не запишется, а будет только машина игрока. Следовательно все проверки и действия с 29@ можно попросту убрать и использовать только 0@. Чем Вам не стирание лишних строк. Я не видел весь код, но тот что указан здесь можно сократить.

Svyatogor2007 wrote:

Меня чуток не поняли видимо

Я лично вообще не понял что нужно сделать smile Слишком мало подробностей, чтобы понять.

Svyatogor2007 wrote:

весь скрипт на 10кб поджал

Это ради чего? У меня мини-игра на 700+ строчек занимала 22 Кб. Не так у ж много. На быстродействие как-то не оказывает давления при грамотном подходе. Если это Cleo-скрипты, то можете добавить директиву {$NOSOURCE}, тогда ещё меньше получится. Для Cleo-миссий он вообще бесценен.

Offline

#5020 09-10-2018 19:49

Svyatogor2007
From: Moscow
Registered: 06-10-2018
Posts: 6

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

kenking wrote:

0AE2: почему-то глючит если много машин захватывать, а мне порядка 30-ти штук надо как то удержать от удаления... Бида.

Дело не в количестве. Возможно код неправильно написан.

Да, переписал заново, теперь работает.  Только с рандомом проблема:

... 00BF: 0@ = current_time_hours, 2@ = current_time_minutes
if and
0@ == 23
0@ == 0
0@ == 1
0@ == 2
0@ == 3
0@ == 4
0@ == 5
then
0@ = 60
else
0@ = 100
end 

// ... //

0209: 10@ = random_int_in_ranges 0 0@

// ... // 

if and
10@ < 55
8AE2: not 2@ = random_vehicle_near_point 2162.47 -1807.2 13.1119 in_radius 3.0 find_next 0 pass_wrecked 1
then
03C5: create_random_car_for_carpark 2162.47 -1807.2 12.3119 z_angle 180.723
end
2@ = 0

И днем и ночью почти ничего не меняется, т.е. сам рандом работает, но машин в среднем одинаково появляется.
Кстати в вашем скрипте не весь тюнинг сохраняется, и еще вы же мне сами писали, проверяй наличие авто после wait, а у вас:

:AVTO1_1024
wait 0 
06EA:   car_component 25@ available 
else_jump @AVTO1_1024 
06E7: 6@ = add_car_component 25@ to_car 9@ 
06EB: release_car_component 25@ 
jump @AVTO1_1371 

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

Last edited by Svyatogor2007 (09-10-2018 21:39)

Offline

#5021 10-10-2018 05:55

kenking
From: Казахстан
Registered: 28-06-2010
Posts: 253

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

Только с рандомом проблема

В опкодах случайного выбора значения из какого-либо диапазона, правое значение в диапазон не входит.
И ещё вот эту строчку

10@ < 55

попробуй записать так

001B: 55 > 10@

Кстати в вашем скрипте не весь тюнинг сохраняется

Не весь. На все детали не хватило переменных.

и еще вы же мне сами писали, проверяй наличие авто после wait, а у вас:

Ошибки в старых скриптах возможны. Я тоже когда-то учился, как ты сейчас.   grin Проверять надо.

Выше ты писал про сокращение размера скрипта. Размер скрипта не столь важен. Важен хорошо читаемый правильный оптимизированный код скрипта. Вот эти строчки можно сократить (P.S. тем более, что это условие всегда будет ложным)

if and
0@ == 23
0@ == 0
0@ == 1
0@ == 2
0@ == 3
0@ == 4
0@ == 5

до такого варианта

if or 
      0@ == 23
      8019: not 0@ > 5

а если взять отсчёт не от 23, а от 24 т.е. 0, то ещё короче

if  
  8019: not 0@ > 5

не могу найти указатель на второй номер, сохраняется только первый.

Какой номер ты имеешь ввиду?

Last edited by kenking (10-10-2018 10:48)

Offline

#5022 10-10-2018 17:47

4lifeGTA
Registered: 28-01-2018
Posts: 23

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

Приветствую, программисты!
Отрадно видеть что SA еще модифицируют, игра еще жива! Наверно это потому-что 5 часть не стала эволюционным венцом всей серии, да много нового, современного, но нету штата Сан Андреас, есть всего один город и его пригород, а SA это целый штат, 3 города и их пригороды!
Да, у SA карта меньше, но снаружи,а внутри она больше smile

Отвлекся я, а порог околачиваю с таким вопросом или просьбой, раньше был на руках скрипт одного умельца, который отключил агрессивное поведение водил, ну когда они начинают бешено таранить машину игрока, мстя за царапину на крыле grin
Помню что скрипт был простой и короткий, что-то с адресами памяти, найти в сети не получается, как испарился, может подскажет хороший человек, что это за скрипт, или адреса памяти?

Offline

#5023 11-10-2018 02:49

Svyatogor2007
From: Moscow
Registered: 06-10-2018
Posts: 6

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

kenking wrote:

не могу найти указатель на второй номер, сохраняется только первый.

Какой номер ты имеешь ввиду?

Номер машины имеется ввиду. Один есть, а второй рандомный от игры.

Offline

#5024 12-10-2018 17:05

trashmas
Registered: 12-04-2016
Posts: 39

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

Добрый день,

подскажите пожалуйста, в чем отличия опкодов:

011C: actor $PLAYER_ACTOR clear_objective 
009F: set_actor $PLAYER_ACTOR idle 
0192: set_actor $PLAYER_ACTOR objective_to_stand_still 

В игре все трое только прерывают действие педа, и больше никакого эффекта
VC

Last edited by trashmas (12-10-2018 17:05)

Offline

#5025 12-10-2018 20:49

4lifeGTA
Registered: 28-01-2018
Posts: 23

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

trashmas, я в опкодах не шарю, но чисто логически:
1. это когда нужно обязать актера ничего не делать, "типа заморозить".
2. idle вроде как анимация бездействия, следовательно этим назначается актеру.
3. это как понимаю заставить актера остановиться( если до этого он топал ). Ну или заставляет стоять на месте но "курить можно" grin

В любом случае инфа по этим опкодам есть здесь: https://gtagmodding.com/opcode-database/opcode/0192/

Last edited by 4lifeGTA (12-10-2018 20:55)

Offline

Board footer

Powered by FluxBB