Мини-чат
AriaMan
04.05.2022 - 21:47
Когда мы были молодыми...
Shaggy
14.04.2022 - 23:35
Хаю хай, с вами шаггай
Marsi4eg
14.04.2022 - 10:28
Smile
Shaggy
23.09.2019 - 07:02
Still there
Marsi4eg
17.11.2017 - 15:47
2004? Wink
AriaMan
19.10.2017 - 01:41
Привет из 2005ого... Думаю никто не переплюнет. Smile
Shaggy
04.08.2017 - 16:05
Привет из 2017
kostyanchik2009
07.08.2016 - 12:54
привет из 2016
SKV1991
12.10.2015 - 12:29
Дизайн сайта почти Material Grin Главно пашет так же стабильно, как раньше
SKV1991
12.10.2015 - 12:18
Аааа! Сайт жив!!!! Я последний раз тут лет 9 назад был, писал скрипты Grin
Shaggy
15.02.2015 - 15:45
Хай эврибади!
kostyanchik2009
13.09.2014 - 15:39
Всем привет! И в правду тухловато здесь Sad
VcSaJen
11.09.2014 - 22:19
Vital, ага.
Vital
28.08.2014 - 00:50
Эх, как тихо тут...

19.07.2014 - 16:09
Кому интересно - прохождение mirrors edge.
VcSaJen
20.11.2013 - 21:30
Привет, gcuman.
gcuman
15.11.2013 - 19:59
aasdas
cij
16.07.2013 - 15:28
Можно узнать условия размещения рекламы ?
Vital
05.07.2013 - 18:05
Жаль, отступы не сохраняются при публикации, было бы полезно.
Vital
05.07.2013 - 18:03
Спасибо! Раньше месяцами ждали, теперь через 5 минут всё готово. Smile
Архив чата

Вы должны авторизироваться, чтобы добавить сообщение.

Популярные статьи
  Статья Прочтений Опубликовал
» Ставим машины и педов в San Andreas !
Скриптинг в San Andreas
10869 igorok
10.07.2005 - 18:39
» Анимации
Помощь SA скриптеру...
6541 gta4d
24.12.2005 - 23:30
» Начинать новую игру не надо?
Скриптинг в San Andreas
5815 AriaMan
02.06.2006 - 14:57
» Эффектные аварии
Скриптинг в San Andreas
5700 Zibatop
13.07.2006 - 01:57
» Дрифт v2.0
Скриптинг в San Andreas
5306 Flash
01.12.2007 - 01:46
» Общие принципы создания миссии
Скриптинг в San Andreas
5234 RunAway
20.08.2005 - 15:44
» Общие принципы создания миссий
Скриптинг в Vice City
4952 RunAway
26.06.2005 - 03:16
» Тюнинг
Скриптинг в San Andreas
4933 RunAway
16.10.2005 - 17:36
» Эффект Most Wanted.
Создание новых возможностей
4926 Marsi4eg
26.12.2005 - 04:06
» Гоночная миссия собственными руками
Скриптинг в Vice City
4722 Crow
10.10.2005 - 11:47
Логин
Имя

Пароль



Забыли пароль?
Запросите новый здесь.


Голосование
Скриптинг мертв?

Да
Да
9% [4 Голосов]

Нет
Нет
23% [10 Голосов]

Он еще вернется :) После выхода ГТА4 например
Он еще вернется :) После выхода ГТА4 например
68% [30 Голосов]

Голосов: 44
Начат: 16.03.2008 - 02:40
Закончен: 14.04.2009 - 19:45

Архив опросов

Самодельный таймер
Итак, многие, кто начал изучать скриптинг, знают, что в cleo скриптах нельзя использовать глобальные переменные (точнее не рекомендуется, это не относится к общим, таким, как $PLAYER_ACTOR, $ONMISSION и т.п.). Но если попробовать использовать локальные переменные (1@, например) для создания таймера, игра вылетит, ведь этому опкоду нужна именно глобальная переменная. Поэтому приходится либо отказываться от таймера вовсе, либо рисковать и использовать глобальные переменные. Я (конечно, думаю, что я не первый) придумал новый способ создания таймера, простой и имеющий "гибкие" настройки. Ему не нужны глобальные переменные, он, так же, как и стандартный его собрат, выводится на экран, так же есть звуки, когда значения таймера малы, но все в нем можно изменить по собственному желанию. Итак, сначала приведу сам код, затем объясню все по порядку.


:Cicl
wait 0
if and
not actor.Dead($PLAYER_ACTOR)
not actor.Driving($PLAYER_ACTOR)
0AB0: key_pressed 0xD //проверки на то, что игрок жив, не в авто, и на нажатие клавиши "Enter"
jf @Cicl
actor.StorePos($PLAYER_ACTOR,2@,3@,4@) //сохраняем текущие координаты игрока в переменные
02CE: 4@ = ground_z_at 2@ 3@ 4@ //получаем координату поверхности, чтобы действие не происходило в воздухе
//начало самого таймера, то есть простого цикла, известного многим по школьному курсу программирования (в Turbo Pascal)
for 1@ = 15 downto 0 //берем downto, чтобы счет шел от большего к меньшему
01E5: show_text_1number_highpriority GXT 'VAR' number 1@ time 1000 flag 1 //выводим значение переменной (секунды), которая в цикле изменяется с 15 до 0
if //начало условия. эта часть необязательна, она нужна для звука, который будет проигрываться, когда время будет меньше 5 секунд
1@ <= 5 //если значение времени таймера меньше или равно 5, то...
then
018C: play_sound 1084 at 0.0 0.0 0.0 //...проигрываем звук №1084
end //конец условия. else не нужно в данном случае
wait 1000 //ждем 1 секунду, иначе таймер закончится сразу же, да и таймер в секундах
end //конец цикла, это и конец таймера
020C: create_explosion_with_radius 10 at 2@ 3@ 4@ //создаем два больших взрыва
020C: create_explosion_with_radius 6 at 2@ 3@ 4@
wait 750 //ждем 750 мс, чтобы игрок не сразу мог перезапустить скрипт
jump to @Cicl //идем на начало


Суть скрипта в том, что спустя 15 секунд после нажатия Enter произойдет взрыв (в той точке, в которой игрок нажал клавишу). Как видите, сам код прост и мал по размеру. К тому же есть еще плюсы:

-Не нужно проверять, что время таймера равно нулю, цикл сам завершается

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

Помимо того, что можно выводить разные варианты текста (как по стилям написания, так и по цвету, например, сделать текст красным, когда значение таймера меньше 5 секунд), Вы сможете вывести текст как текст-бокс (серый прямоугольник в верхнем левом углу экрана, примером будет сообщение о том, как сменить оружие на другое). Для этого понадобится команда 0513, только не забудьте применить команду 03E6 после цикла, чтобы текст-бокс не держался на экране все время и исчез (сам он не исчезает).

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

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

Комментарии
Нет комментариев.
Добавить комментарий
Пожалуйста, залогиньтесь для добавления комментария.
Рейтинги
Рейтинг доступен только для пользователей.

Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.

Нет данных для оценки.