Понедельник, 25.11.2024, 03:14
Качественные скрипты, моды и дополнения для GTA без регистрации
Главная Регистрация Вход
Приветствую Вас, Гость · RSS
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Вопросы по созданию КЛЕО-скриптов 2
EmilioDurhamCopДата: Среда, 22.08.2012, 00:03 | Сообщение # 181
Группа: Пользователи
Сообщений: 33
Статус: Offline
Большое спасибо! Появятся вопросы, буду писать! biggrin

Добавлено (22.08.2012, 00:03)
---------------------------------------------
И последнее, как сделать, чтобы в скрипте при нажатии клавиши появились и Смоук, и Райдер, и Цезарь? Не подскажешь?

 
Den_spbДата: Среда, 22.08.2012, 00:14 | Сообщение # 182
Создатель сайта
Группа: Администраторы
Сообщений: 1600
Статус: Offline
Попробуй сам написать. Код останется тем же, но вместо одной модели актёра надо загрузить 3 модели, также по 3 раза надо использовать команду создания актёра, команду выдачи оружия, команду снятия флага уникальности (remove references).
 
EmilioDurhamCopДата: Среда, 22.08.2012, 00:16 | Сообщение # 183
Группа: Пользователи
Сообщений: 33
Статус: Offline
У меня Санни наезжает на команду then, пишет, что команда неизвестная!
 
Den_spbДата: Среда, 22.08.2012, 00:18 | Сообщение # 184
Создатель сайта
Группа: Администраторы
Сообщений: 1600
Статус: Offline
Значит пропущен if (должно быть if..then..end или if..then..else..end)
 
EmilioDurhamCopДата: Среда, 22.08.2012, 00:31 | Сообщение # 185
Группа: Пользователи
Сообщений: 33
Статус: Offline
А, блин. Как всегда. smile

Добавлено (22.08.2012, 00:31)
---------------------------------------------
Я прописываю в коде:

Code
// 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---------------
wait 0  

:NONAME_4
wait 0  
if  
    Player.Defined($PLAYER_CHAR)
jf @NONAME_157  
if  
0AB0:   key_pressed 73  
jf @NONAME_157  
04C4: store_coords_to 0@ 1@ 2@ from_actor $PLAYER_ACTOR with_offset 0.0 5.0 0.0  
023C: load_special_actor 'SWEET' as 1 // models 290-299  
023C: load_special_actor 'RYDER' as 2 // models 290-299  
023C: load_special_actor 'SMOKE' as 3 // models 290-299  
Model.Load(#MICRO_UZI)
038B: load_requested_models  
1@ = Actor.Create(Gang2, #SPECIAL01, 0@, 1@, 2@)
2@ = Actor.Create(Gang2, #SPECIAL02, 0@, 1@, 2@)
3@ = Actor.Create(Gang2, #SPECIAL03, 0@, 1@, 2@)
01B2: give_actor 3@ weapon 28 ammo 60 // Load the weapon model before using this  
Model.Destroy(#MICRO_UZI)
Actor.RemoveReferences(3@)
wait 2000  

:NONAME_157
jump @NONAME_4  

Но создается один и тот же актёр (Свит). Как это исправить?
 
Den_spbДата: Среда, 22.08.2012, 00:54 | Сообщение # 186
Создатель сайта
Группа: Администраторы
Сообщений: 1600
Статус: Offline
Ошибка здесь:
Quote
1@ = Actor.Create(Gang2, #SPECIAL01, 0@, 1@, 2@)
2@ = Actor.Create(Gang2, #SPECIAL02, 0@,1@, 2@) // вместо Y координаты используется указатель первого актёра
3@ = Actor.Create(Gang2, #SPECIAL03, 0@, 1@, 2@) // вместо Y и Z координаты используются указатели первого и второго актёра
В результате актёры будут созданы неизвестно где. Надо применить другие (свободные) переменные:
Code
3@ = Actor.Create(Gang2, #SPECIAL01, 0@, 1@, 2@)
0@ += 2.0   
   4@ = Actor.Create(Gang2, #SPECIAL02, 0@, 1@, 2@)
0@ += 2.0   
   5@ = Actor.Create(Gang2, #SPECIAL03, 0@, 1@, 2@)
А координату X (0@) я изменил для того, чтобы актёры не создавались "друг в друге".
Команду RemoveReferences надо применить ко всем трём актёрам:
Code
Actor.RemoveReferences(3@)
Actor.RemoveReferences(4@)
Actor.RemoveReferences(5@)
Эта команда снимает флаг уникальности, благодаря чему игра сможет удалить актёра, если он погибнет или окажется далеко от игрока.
П.С. Для редактирования скрипта лучше открывать исходник (Файл - Открыть - *txt), а не декомпилировать скрипт (не щелкать по cs-файлу).
 
DK22PacДата: Среда, 22.08.2012, 04:05 | Сообщение # 187
$player_actor
Группа: Проверенные
Сообщений: 559
Статус: Offline
EmilioDurhamCop, справку читай.
Хочешь писать скрипты - читай справку.
 
EmilioDurhamCopДата: Среда, 22.08.2012, 06:10 | Сообщение # 188
Группа: Пользователи
Сообщений: 33
Статус: Offline
Quote
EmilioDurhamCop, справку читай.
Хочешь писать скрипты - читай справку.

DK22Pac, я поражаюсь, хоть и в первый за SB. Мне не особо понятна документация.

Добавлено (22.08.2012, 06:10)
---------------------------------------------
Я закончил со скриптом и получилось создать сразу трёх актеров. Слушайте, как вы думайте, с указанием автора и писателя такого, как ты (Den_spb) можно заливать на популярные сайты про GTA?
Или только на личное пользование? tongue


Сообщение отредактировал EmilioDurhamCop - Среда, 22.08.2012, 06:12
 
Den_spbДата: Среда, 22.08.2012, 09:44 | Сообщение # 189
Создатель сайта
Группа: Администраторы
Сообщений: 1600
Статус: Offline
Quote (EmilioDurhamCop)
Мне не особо понятна документация.
То, что сначала справка малопонятна - это нормально. Но изучать её всё равно нужно - там есть много полезных статей, которые пригодятся в дальнейшем.

Quote (EmilioDurhamCop)
Слушайте, как вы думайте, с указанием автора и писателя такого, как ты (Den_spb) можно заливать на популярные сайты про GTA?
Залить-то можно, конечно, но по-моему этот скрипт будет интересен немногим - слишком простой, да и похожие аналоги давно есть.
 
EmilioDurhamCopДата: Среда, 22.08.2012, 14:28 | Сообщение # 190
Группа: Пользователи
Сообщений: 33
Статус: Offline
Quote (EmilioDurhamCop)
Залить-то можно, конечно, но по-моему этот скрипт будет интересен немногим - слишком простой, да и похожие аналоги давно есть.

Но он вылетать-то не будет! На кривые скрипты многие писают кипятком. А так вообще прикольно. Кстати, видео скоро будет. smile
 
DK22PacДата: Среда, 22.08.2012, 14:41 | Сообщение # 191
$player_actor
Группа: Проверенные
Сообщений: 559
Статус: Offline
Quote (EmilioDurhamCop)
можно заливать на популярные сайты про GTA?

А зачем тебе это?
Денег захотелоь? Популярности на тех же сайтах?
Если первое, то лучше сейчас же тебя забанить.
 
EmilioDurhamCopДата: Среда, 22.08.2012, 15:01 | Сообщение # 192
Группа: Пользователи
Сообщений: 33
Статус: Offline
Quote (DK22Pac)

А зачем тебе это?
Денег захотелоь? Популярности на тех же сайтах?
Если первое, то лучше сейчас же тебя забанить.

Издеваешься? Я же знал, что ты такой попадешься. Только почему ты агришься? Короче говоря, ничего вешать не собирался.
 
VitalДата: Среда, 22.08.2012, 16:59 | Сообщение # 193
Группа: Проверенные
Сообщений: 206
Статус: Offline
EmilioDurhamCop, здесь с нарушением правил всё строго, ты не воспринимай так резко.
А вообще советую изучать так: (я изучал именно так)
-сперва почитать справку, желательно с начальных понятий и уроков
-научиться создавать простые скрипты, схожие с уроками из справки
-дополнять и усложнять ранее созданные скрипты
-изучать дополнительные возможности, которые помогут облегчить написание скриптов (gosub, if..then.else, циклы и т.д.)
-при необходимости искать сайты с примерами и объяснением скриптов
-чтобы изучить новые приёмы и набрать опыта, смотри, как пишут скрипты известные скриптеры (ZAZ,Script,DK22Pac,Yelmi и многие другие). Я так научился некоторым вещам (а именно: команды velocity для объектов, команда $I (include) и др.)
-если что-то отсутствует в справке или интернете, поищи подобные вещи в оригинальном main.scm или чужих скриптах (только без плагиата)
И вот ещё совет: когда научишься основам и начнёшь писать простые скрипты, тебе захочется большего, а простыми средствами порой сложно добиться больших результатов, поэтому учись использовать циклы (repeat, for, while (while true)), а также конструкции if..then..else..end. И помни, что их можно вложить друг в друга (например, один цикл в другой). Это мне теперь помогло создать некоторые вещи, которые я бы раньше назвал ужасно сложными. Я, например, долго не хотел даже смотреть на массивы, но теперь наконец начал с ними создавать скрипты (осуществил давнюю мечту: три охранника, у каждого свой маркер, исчезающий после смерти и возможность дать своё оружие каждому из них).
Удачи в изучении!
P.S. И будь терпелив, не бросай на начале. И если возникнет ошибка или вопрос (а я вижу, что у тебя их много), то сперва внимательно рассмотри скрипт и сам (как нас учили на информатике) пройди по каждому шагу скрипта, проверяя себя на наличие ошибок.


SCRIPTER
 
EmilioDurhamCopДата: Четверг, 23.08.2012, 10:53 | Сообщение # 194
Группа: Пользователи
Сообщений: 33
Статус: Offline
Vital, так-то спасибо за речь. Мне нравится то, что говоришь. Придёт время и как нельзя кстати начать учиться скриптингу.

Добавлено (23.08.2012, 10:53)
---------------------------------------------
Мне нужно заменить в скрипте букву i на 1. Справку обнюхал, сделал все как надо, но нажатой остается не только буква i, но и добавляется 1. В результате, с двух букв получается, я create'чу актеров. Можно ли это исправить?


Сообщение отредактировал EmilioDurhamCop - Четверг, 23.08.2012, 10:54
 
Den_spbДата: Четверг, 23.08.2012, 17:13 | Сообщение # 195
Создатель сайта
Группа: Администраторы
Сообщений: 1600
Статус: Offline
Нужно исправить номер кнопки в команде 0AB0. Вторую команду 0AB0 добавлять не надо.
 
Поиск: