Суббота, 20.04.2024, 03:03
Качественные скрипты, моды и дополнения для GTA без регистрации
Главная Регистрация Вход
Приветствую Вас, Гость · RSS
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Форум » Игры серии ГТА » Скриптинг » Вопросы по созданию КЛЕО-скриптов (Вопросы по опкодам, кодингу и др.)
Вопросы по созданию КЛЕО-скриптов
АксиомаДата: Вторник, 13.12.2011, 18:47 | Сообщение # 976
Группа: Заблокированные
Сообщений: 81
Статус: Offline
Den_spb, Но ведь делали скрипт фонарь где прицепили к игроку свет
 
ILYALIONДата: Вторник, 13.12.2011, 18:49 | Сообщение # 977
Группа: Проверенные
Сообщений: 325
Статус: Offline
Можно ли запретить игроку прыгать? И как потом вернуть ему эту "возможность"
 
Den_spbДата: Вторник, 13.12.2011, 18:54 | Сообщение # 978
Создатель сайта
Группа: Администраторы
Сообщений: 1595
Статус: Offline
Можно отключить игровую кнопку прыжка: 0901: enable_player $PLAYER_CHAR jump_key 0
 
ILYALIONДата: Вторник, 13.12.2011, 19:25 | Сообщение # 979
Группа: Проверенные
Сообщений: 325
Статус: Offline
Den_spb, код
Code
{$CLEO .cs}

//-------------MAIN---------------
wait 0  

:NONAME_4
wait 0  
if  
    not Player.Defined($PLAYER_CHAR)
else_jump @NONAME_31  
jump @NONAME_4  

:NONAME_31
wait 0
if
     0AB0:  key_pressed 116
else_jump @NONAME_4
model.Load(1468)
038B: load requested models
Actor.Angle($PLAYER_ACTOR) = 0.0
04C4: store_coords_to 2@ 3@ 4@ from_actor $PLAYER_ACTOR with_offset 0.0 1.0 0.0
object.Create(10@,1468,2@,3@,4@)
model.Destroy(1468)
07F7: set_object 10@ indestructible 0
:NONAME_32
wait 0
if
     0AB0:  key_pressed 116
else_jump @NONAME_32
071E: get_object 10@ health_to 0
wait 360000
jump @NONAME_31
вылетает после второго надатия кнопки. SmLog показывает опкод 0100, которого вообще нет в коде? Что за бред?

Добавлено (13.12.2011, 19:21)
---------------------------------------------
Понял, вместо

Code
071E: get_object 10@ health_to 0
надо
Code
071F: set_object 10@ health_to 0

Добавлено (13.12.2011, 19:25)
---------------------------------------------
Den_spb, вот новый код

Code
{$CLEO .cs}

//-------------MAIN---------------
wait 0  

:NONAME_4
wait 0  
if  
    not Player.Defined($PLAYER_CHAR)
else_jump @NONAME_31  
jump @NONAME_4  

:NONAME_31
wait 0
if
     0AB0:  key_pressed 116
else_jump @NONAME_4
model.Load(1468)
038B: load requested models
Actor.Angle($PLAYER_ACTOR) = 0.0
04C4: store_coords_to 2@ 3@ 4@ from_actor $PLAYER_ACTOR with_offset 0.0 1.0 0.0
object.Create(10@,1468,2@,3@,4@)
model.Destroy(1468)
07F7: set_object 10@ indestructible 0
:NONAME_32
wait 0
if
     0AB0:  key_pressed 116
else_jump @NONAME_32
07F7: set_object 10@ indestructible 1
071F: set_object 10@ health_to 0  
jump @NONAME_31

Но забор не разваливается
 
Den_spbДата: Вторник, 13.12.2011, 19:30 | Сообщение # 980
Создатель сайта
Группа: Администраторы
Сообщений: 1595
Статус: Offline
Перед разрушением надо сделать объект разрушаемым. А вместо обнуления здоровья можно попробовать 0723: break_object $1754[0] intensity 1
 
ILYALIONДата: Вторник, 13.12.2011, 21:40 | Сообщение # 981
Группа: Проверенные
Сообщений: 325
Статус: Offline
Только что тоже нашёл этот опкод. Работает.

Добавлено (13.12.2011, 21:37)
---------------------------------------------
как сделать, чтобы актёр не боялся (не приседал, закрывая голову руками)? Какие титы пешеходов бы не делал-все боятся.

Добавлено (13.12.2011, 21:40)
---------------------------------------------
Можно ли заставить актёра атаковать нескольких человек одновременно?

 
Den_spbДата: Вторник, 13.12.2011, 22:39 | Сообщение # 982
Создатель сайта
Группа: Администраторы
Сообщений: 1595
Статус: Offline
Quote (ILYALION)
как сделать, чтобы актёр не боялся (не приседал, закрывая голову руками)? Какие титы пешеходов бы не делал-все боятся.
Возможно, тебе пригодится эта информация: http://sannybuilder.com/forums/viewtopic.php?id=44

Quote (ILYALION)
Можно ли заставить актёра атаковать нескольких человек одновременно?
Навряд ли
 
dyomДата: Среда, 14.12.2011, 14:23 | Сообщение # 983
Группа: Пользователи
Сообщений: 19
Статус: Offline
Добрый вечер. Вот решил сделать скрипт починка фар. Но игра вылетает sad Прошу помощи! cry

Code

0000: NOP  

:lights_1
wait 250  
if  
    Player.Defined($PLAYER_CHAR)
jf @lights_1  
if  
    Actor.Driving($PLAYER_ACTOR)
jf @lights_1
03C0: 0@ = actor $PLAYER_ACTOR car  
0A97: 25@ = car 0@ struct  
jf @lights_1
wait 100
if
not Actor.Driving($PLAYER_ACTOR)
jf @lights_1

:lights_3
0407: store_coords_to 2@ 3@ 4@ from_car 25@ with_offset 0.0 3.0 0.0  
wait 0  
if  
    not Actor.Driving($PLAYER_ACTOR)
jf @lights_3  
wait 0  
if  
0AB0:   key_pressed 74  
jf @lights_3  

:lights_4
04ED: load_animation "CAR"  
wait 0  
if  
04EE:   animation "CAR" loaded  
jf @lights_4
0407: store_coords_to 2@ 3@ 4@ from_car 25@ with_offset 0.0 3.5 0.0  
$ANGLE = Car.Angle(25@)
Player.CanMove($PLAYER_CHAR) = False
Car.LockInCurrentPosition(1@) = True
03BF: set_player $PLAYER_CHAR ignored_by_everyone 1  
0407: store_coords_to 12@ 13@ 14@ from_car 25@ with_offset 2.6 5.5 0.0  
0407: store_coords_to 22@ 23@ 24@ from_car 25@ with_offset 0.0 2.3 0.0  
Camera.SetPosition(12@, 13@, 14@, 0.0, 0.0, 0.0)
Camera.PointAt(22@, 23@, 24@, 2)

:lights_5
07CD: AS_actor $PLAYER_ACTOR walk_to 2@ 3@ 4@ stop_with_angle $ANGLE within_radius 0.5  
wait 0  
if  
    not Actor.Driving($PLAYER_ACTOR)
jf @lights_5
wait 0  
if  
    not Actor.Dead($PLAYER_ACTOR)
jf @lights_5  
wait 0  
if  
00FE:   actor $PLAYER_ACTOR sphere 0 in_sphere 2@ 3@ 4@ radius 0.5 0.5 0.5  
jf @lights_5  
wait 300  
Actor.Angle($PLAYER_ACTOR) = $ANGLE
0812: AS_actor $PLAYER_ACTOR perform_animation "FIXN_CAR_LOOP" IFP_file "CAR" 1.0 loopA 0 lockX 0 lockY 0 lockF 0 time 3000 // versionB  
wait 3000  
0A30: repair_car 25@  
0812: AS_actor $PLAYER_ACTOR perform_animation "FIXN_CAR_OUT" IFP_file "CAR" 1.0 loopA 0 lockX 0 lockY 0 lockF 0 time 2000 // versionB  
wait 2000  
Player.CanMove($PLAYER_CHAR) = True
Camera.Restore
Car.LockInCurrentPosition(25@) = False
03BF: set_player $PLAYER_CHAR ignored_by_everyone 0  
04EF: release_animation "CAR"  
jump @lights_6  

:lights_6
25@ += 1440    
0AA6: call_method 7086336 25@ num_params 2 pop 0 0 1   
wait 300   
0AA6: call_method 7086336 25@ num_params 2 pop 0 1 1   
wait 300  
:lights_7
Car.RemoveReferences(25@)
wait 0  
jump @lights_1
 
ILYALIONДата: Среда, 14.12.2011, 17:02 | Сообщение # 984
Группа: Проверенные
Сообщений: 325
Статус: Offline
Проверка
Code
0112:   wasted_or_busted
только для миссий. А как вне миссии проверить, убит или арестован игрок?
 
Den_spbДата: Среда, 14.12.2011, 17:29 | Сообщение # 985
Создатель сайта
Группа: Администраторы
Сообщений: 1595
Статус: Offline
Quote (dyom)
Добрый вечер. Вот решил сделать скрипт починка фар. Но игра вылетает Прошу помощи!
Добрый вечер. В опкоды, производящие действия над машинами, надо подставлять хэндл машины (0@), а ты вместо этого подставляешь адрес структуры (25@).
Команды перехода (jump, jf, else_jump и т.д.) после команд не пишут - только после проверок.
Лучше, когда в скрипте один wait - в этом случае и скрипт работает быстрее, и каждую проверку достаточно написать один раз.
И надо учиться искать ошибки самостоятельно. Для этого есть много способов: Scmlog, вывод значений переменных на экран, разбивка скрипта на части с последующим тестированием каждой части и т.д.

Quote (ILYALION)
А как вне миссии проверить, убит или арестован игрок?
Можно проверить, изменилась ли статистика.
 
dyomДата: Среда, 14.12.2011, 17:37 | Сообщение # 986
Группа: Пользователи
Сообщений: 19
Статус: Offline
Den_spb, хм все равно вылетает sad
 
Den_spbДата: Среда, 14.12.2011, 17:48 | Сообщение # 987
Создатель сайта
Группа: Администраторы
Сообщений: 1595
Статус: Offline
Скрипт надо переделать - коряво написан и есть ошибки.
А лучше для начала попробовать написать более простой скрипт.
 
dyomДата: Четверг, 15.12.2011, 11:27 | Сообщение # 988
Группа: Пользователи
Сообщений: 19
Статус: Offline
Den_spb, а можно ли удалить компонент машины? Колесо например?
 
Den_spbДата: Четверг, 15.12.2011, 20:10 | Сообщение # 989
Создатель сайта
Группа: Администраторы
Сообщений: 1595
Статус: Offline
Есть опкоды:
Code
0689: set_car 95@ remove_componentA 1 visible_effect_flag 0  
0697: set_car 543@ remove_componentB 4 visible_effect_flag 1
Номера компонентов:
Code
0  Капот.   
1  Багажник.   
2  Дверь водителя или левого переднего места.   
3  Дверь правого переднего места.   
4  Дверь заднего левого места.   
5  Дверь заднего правого места.   
Чтобы производить действия над другими компонентами, надо изучить, как работают данные опкоды.
 
АксиомаДата: Четверг, 15.12.2011, 21:42 | Сообщение # 990
Группа: Заблокированные
Сообщений: 81
Статус: Offline
Как можно увеличить силу игрока что бы от удар другие отлетали и каким образом реализуется возможность управление машиной, как с грави-пушкой
 
Форум » Игры серии ГТА » Скриптинг » Вопросы по созданию КЛЕО-скриптов (Вопросы по опкодам, кодингу и др.)
Поиск: