#1 21-02-2008 08:26

MegaMax
From: Kemerovo
Registered: 21-02-2008
Posts: 7
Website

Car_lights_mod

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

капот:

// This file was decompiled using sascm.ini published by Seemann (http://sannybuilder.com/files/SASCM.rar) on 13.10.2007

{$VERSION 3.1.0027}
{$CLEO .cs}

//-------------MAIN---------------
$DRIVEBYMODE = 0 
$PLAYER_ACTOR = Actor.EmulateFromPlayer($PLAYER_CHAR)

:NONAME_15
wait 100 
if 
   Player.Defined($PLAYER_CHAR)
else_jump @NONAME_15 
if and
   Actor.Driving($PLAYER_ACTOR)
03C0: 0@ = actor $PLAYER_ACTOR car 
00E1:   player 0 pressed_key 17 
else_jump @NONAME_15 
0657: car 0@ open_componentA 0 
jump @NONAME_15

багажник:

// This file was decompiled using sascm.ini published by Seemann (http://sannybuilder.com/files/SASCM.rar) on 13.10.2007

{$VERSION 3.1.0027}
{$CLEO .cs}

//-------------MAIN---------------
$DRIVEBYMODE = 0 
$PLAYER_ACTOR = Actor.EmulateFromPlayer($PLAYER_CHAR)

:NONAME_15
wait 100 
if 
   Player.Defined($PLAYER_CHAR)
jf @NONAME_15 
if and
   Actor.Driving($PLAYER_ACTOR)
03C0: 0@ = actor $PLAYER_ACTOR car 
00E1:   player 0 pressed_key 5 
jf @NONAME_15 
0657: car 0@ open_componentA 1 
jump @NONAME_15

Last edited by MegaMax (21-02-2008 08:29)


[small]я нуб, я делаю мини-минискрипты по аналогиям[/small]

Offline

#2 21-02-2008 15:12

Sanchez
Registered: 18-08-2006
Posts: 280

Re: Car_lights_mod

MegaMax wrote:

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

Как вариант использовать опкод:

068A: set_car $RYDER_CAR repair_componentA 2

Offline

#3 23-02-2008 05:29

MegaMax
From: Kemerovo
Registered: 21-02-2008
Posts: 7
Website

Re: Car_lights_mod

учитывая, что я в этом деле полный нуб, то может напишешь как будет окончательный вариант? Пжлста:)


[small]я нуб, я делаю мини-минискрипты по аналогиям[/small]

Offline

#4 23-02-2008 08:02

Sanchez
Registered: 18-08-2006
Posts: 280

Re: Car_lights_mod

{$CLEO}
0@ = 0
while true
    wait 0
    if
        Player.Defined($PLAYER_CHAR)
    then
        if
            Actor.Driving($PLAYER_ACTOR)
        then
            03C0: 1@ = actor $PLAYER_ACTOR car
            if and
                00E1:   player 0 pressed_key 17
                0@ == 0
            then
                0@ = 1
                0657: car 1@ open_componentA 0
                wait 100 
            end
            if and
                00E1:   player 0 pressed_key 17
                0@ == 1
            then
                0@ = 0
                068A: set_car 1@ repair_componentA 0
                wait 100 
            end 
        end
    end
end

Offline

#5 23-02-2008 10:58

MegaMax
From: Kemerovo
Registered: 21-02-2008
Posts: 7
Website

Re: Car_lights_mod

Big Thanks!

P.S. С Днем Защитника Отечества!


[small]я нуб, я делаю мини-минискрипты по аналогиям[/small]

Offline

#6 23-02-2008 11:00

Sanchez
Registered: 18-08-2006
Posts: 280

Re: Car_lights_mod

{$CLEO}

const
    i = 12@
    playerCar = 13@
end

var
    0@: Array 6 of Integer
    6@: Array 6 of Integer
end

0@ = 0x68
1@ = 0x62
2@ = 0x67
3@ = 0x69
4@ = 0x61
5@ = 0x63

{
for i = 0 to 5
    6@[i] = 0
end
}

while true
    wait 0
    if
        Player.Defined($PLAYER_CHAR)
    then
        if
            Actor.Driving($PLAYER_ACTOR)
        then
            03C0: playerCar = actor $PLAYER_ACTOR car 
            gosub @Proc
        end
    end
end

:Proc
for i = 0 to 5
    if and
        0AB0:  key_pressed 0x11
        0AB0:  key_pressed 0@[i]
    then
        {
        if
            88A7:   not car playerCar componentA i opened_or_not_present
        then
            0657: car playerCar open_componentA i
        else
            068A: set_car playerCar repair_componentA i 
        end
        }
        if
            6@[i] == 0    
        then
            6@[i] = 1
            0657: car playerCar open_componentA i
            wait 100
            return
        end
        if
            6@[i] == 1   
        then
            6@[i] = 0
            068A: set_car playerCar repair_componentA i
            wait 100
            return
        end 
    end
end
return

Открывает капот, багажник и двери. Клавиши: Ctrl + Num123789. Можешь поменять на свои.

Offline

#7 23-02-2008 11:11

MegaMax
From: Kemerovo
Registered: 21-02-2008
Posts: 7
Website

Re: Car_lights_mod

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

Last edited by MegaMax (23-02-2008 11:12)


[small]я нуб, я делаю мини-минискрипты по аналогиям[/small]

Offline

#8 23-02-2008 11:46

MegaMax
From: Kemerovo
Registered: 21-02-2008
Posts: 7
Website

Re: Car_lights_mod

еще такая просьба: я вот хочу добавить тачки на карту... Сможешь мне привести пример мода с расположением одной машины? а я потом сам буду забивать координаты и названия моделей


[small]я нуб, я делаю мини-минискрипты по аналогиям[/small]

Offline

#9 23-02-2008 11:53

Sanchez
Registered: 18-08-2006
Posts: 280

Offline

#10 23-02-2008 12:11

MegaMax
From: Kemerovo
Registered: 21-02-2008
Posts: 7
Website

Re: Car_lights_mod

спс) а вот когда я буду добавлять еще несколько машинок в этот скрипт, то мне на какие значаения менять подчеркнутые слова

Статья wrote:

{$CLEO}
0A95: enable_thread_saving

if
    0@ == 0
then
    014B: 1@ = init_parked_car_generator 401 color -1 -1 1 alarm 0 door_lock 0 0 10000 at -2035.194 170.770 28.462 angle 90.0
    014C: set_parked_car_generator 1@ cars_to_generate_to 101
    0@ = 1
end
0A93: end_custom_thread

Last edited by MegaMax (23-02-2008 12:12)


[small]я нуб, я делаю мини-минискрипты по аналогиям[/small]

Offline

#11 23-02-2008 12:19

Sanchez
Registered: 18-08-2006
Posts: 280

Re: Car_lights_mod

{$CLEO}
0A95: enable_thread_saving

if
    0@ == 0
then
    014B: 1@ = init_parked_car_generator #ADMIRAL color -1 -1 1 alarm 0 door_lock 0 0 10000 at -2035.194 170.770 28.462 angle 90.0
    014C: set_parked_car_generator 1@ cars_to_generate_to 101
    
    014B: 2@ = init_parked_car_generator #BULLET color -1 -1 1 alarm 0 door_lock 0 0 10000 at -2035.194 170.770 28.462 angle 90.0
    014C: set_parked_car_generator 2@ cars_to_generate_to 101
    
    // ...
    
    014B: 31@ = init_parked_car_generator #NRG500 color -1 -1 1 alarm 0 door_lock 0 0 10000 at -2035.194 170.770 28.462 angle 90.0
    014C: set_parked_car_generator 31@ cars_to_generate_to 101     
    
    0@ = 1
end
0A93: end_custom_thread

Offline

#12 17-04-2008 18:51

ariant
Registered: 17-04-2008
Posts: 2

Re: Car_lights_mod

А можно и номера свои установить на эти машины ?
есть что-то вроде этого ?
0674: set_car_model #ADMIRAL numberplate "VOVAN"

Offline

#13 17-04-2008 19:22

flashTrash
From: Н.Новгород
Registered: 21-02-2007
Posts: 260
Website

Re: Car_lights_mod

ariant wrote:

А можно и номера свои установить на эти машины ?
есть что-то вроде этого ?
0674: set_car_model #ADMIRAL numberplate "VOVAN"

Есть. Пишешь вместо 014B: 09E2:
09E2: @1 = parked_car_generator_w_numberplate #GREENWOO 44 44 0 alarm 0 door_lock 0 0 10000 plate "C0P15P1G" at x y z angle z
Номер машины должен содержать 8 букв(английские буквы и цифры). Если нужен пробел, то ставь знак "_" (без ковычек)

Offline

#14 18-04-2008 18:43

ariant
Registered: 17-04-2008
Posts: 2

Re: Car_lights_mod

flashTrash спасибо smile

Offline

#15 04-06-2008 04:20

AlphaOmega
Registered: 02-06-2008
Posts: 98

Re: Car_lights_mod

А в чём принципиальная разница (помимо г.р.з.) между опкодами 09E2 и 014B ?
если парковать через 09E2: 0002@ = parked_car_generator_w_numberplate ... то машина не появляется пока не уйдёшь далеко от этого места и не вернёшься...
а если парковать с 014B: 0001@ = init_parked_car_generator ... то машина есть там, где нужно даже если начать игру в этом месте...

и... кстати, как бы припарковать PETRO с прицепом PETROTR?

Offline

#16 04-06-2008 10:38

flashTrash
From: Н.Новгород
Registered: 21-02-2007
Posts: 260
Website

Re: Car_lights_mod

2AlphaOmega
Разница между этими опкодами только в том, что 09E2: позволяет присваивать машине уникальный номер. Насчет появления - вроде одинаково работают(машины Свита и Райдера всегда стоят), другое дело, что модели машин могут просто не успеть загрузиться и тогда они не появятся. Либо частота появление стоит маленькая.
Частоту появления машины надо задавать опкодом после 09E2: и 014B:

014C: set_parked_car_generator $2764 cars_to_generate_to 101

Где 101 - частота появления(101 - появляется всегда, 0 - никогда).

Offline

#17 04-06-2008 11:14

Seemann
Registered: 07-08-2006
Posts: 2,155

Re: Car_lights_mod

Где 101 - частота появления(101 - появляется всегда, 0 - никогда).

Не совсем так. Я недавно выяснил истинное значение этого числа. Опкод 014С устанавливает лимит на кол-во генераций машины на данной парковке. Число 101 и выше означает, что машина появляется всегда, число 0 - никогда. Если напишешь число 1, машина на парковке появится только однажды, число 100 - 100 раз и т.д.

Offline

#18 04-06-2008 12:40

flashTrash
From: Н.Новгород
Registered: 21-02-2007
Posts: 260
Website

Re: Car_lights_mod

истинное значение этого числа

Ничего себе... И зачем это только надо, если в мэйне используются только 0 и 101? Логика Рокстаров порой находится где-то в 3.5 измерении...

Offline

#19 04-06-2008 13:03

Capushon
Registered: 13-08-2006
Posts: 350
Website

Re: Car_lights_mod

@flashTrash -

И зачем это только надо, если в мэйне используются только 0 и 101? Логика Рокстаров порой находится где-то в 3.5 измерении...

Отличная логика, например мне нужно чтобы машина была не всегда на месте, а 50x50, или 1 раз на 10 случаев (если это спортивная дорогая машина).
Я в мультимоде это повсеместно использовал...


Сначала ты надежда и гордость,
Потом о спину ломают аршин. (c)БГ

Offline

#20 04-06-2008 13:17

flashTrash
From: Н.Новгород
Registered: 21-02-2007
Posts: 260
Website

Re: Car_lights_mod

@Capushon

Если напишешь число 1, машина на парковке появится только однажды, число 100 - 100 раз и т.д.

(C) Seemann
50 напишешь - а на 51-й раз машина перестанет появляться.

Offline

#21 04-06-2008 13:39

AlphaOmega
Registered: 02-06-2008
Posts: 98

Re: Car_lights_mod

flashTrash, у обоих машин стоит 101. А появляется рядом с домом (при начале игры) только «безномерная» машина...
Облазил все опкоды, но не нашёл параметра «прицепить прицеп» для припаркованных машин. Такое можно только к конкретным (созданными) моделями... так всё же - может есть способ припарковать петро с петротр зацепленным?...

Offline

#22 04-06-2008 14:07

Capushon
Registered: 13-08-2006
Posts: 350
Website

Re: Car_lights_mod

@Seemann -

Если напишешь число 1, машина на парковке появится только однажды, число 100 - 100 раз и т.д.

Разве это счётчик? Мне казалось это %

@AlphaOmega -

у обоих машин стоит 101. А появляется рядом с домом (при начале игры) только «безномерная» машина...

Ты привысил общий лимит кол-ва машин. Убери временно где-нибудь - и появится вторая.


Сначала ты надежда и гордость,
Потом о спину ломают аршин. (c)БГ

Offline

#23 04-06-2008 14:13

AlphaOmega
Registered: 02-06-2008
Posts: 98

Re: Car_lights_mod

Capushon wrote:

Ты привысил общий лимит кол-ва машин. Убери временно где-нибудь - и появится вторая.

Невозможно. Я парковал всего две машины.

Offline

#24 04-06-2008 14:13

Seemann
Registered: 07-08-2006
Posts: 2,155

Re: Car_lights_mod

Разве это счётчик? Мне казалось это %

Угу, именно так. Мне тоже всегда казалось, что %, но последние исследования показали, что это именно счетчик генераций машины.

Иначе, где собственно логика и что такое 101%? smile Никогда не задумывался?

Offline

#25 04-06-2008 15:44

Yarik
Registered: 22-02-2008
Posts: 173
Website

Re: Car_lights_mod

Тогда значение 101 значит только 101 раз появиться? К концу игры не было б большей части машин тогда (т.к. лимит 101 исчерпался бы)

Offline

Board footer

Powered by FluxBB