Делаем новые миссии. CLEO - скрипты, cutscene, статьи, программы. Игровые новости.
 
8.11.07 21:47 |

Панель, или список товаров.

Раздел: Основы скриптинга | Автор: yelmi | Рейтинг: 8.20 (5) | Хитов 5298

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

Код:
:PANEL
thread 'PANEL'

:PANEL_1
wait 0
01B4: toggle_player $PLAYER_CHAR can_move 0
0512: show_permanent_text_box 'IE20'
0581: toggle_radar 0
08D4: $PANEL = create_panel_with_title 'IE09' position 29.0 170.0 width 180.0 columns 1 interactive 1 background 1 alignment 0
08DB: set_panel $PANEL column 0 header 'DUMMY' data 'IE16' 'IE10' 'IE11' 'IE12' 'IE13' 'IE14' 'IE15' 'DUMMY' 'DUMMY' 'DUMMY' 'DUMMY' 'DUMMY'

:PANEL_2
wait 0
if
00E1: player 0 pressed_key 16 // если нажата клавиша «ПРОБЕЛ»
jf @PANEL_9 //если нет, то переходим на метку PANEL_9
08D7: 0@ = panel $Panel active_row // получаем номер строки
if
0@ == 0 //если выбрана первая строка
jf @PANEL_3 // если нет, то переходим на метку PANEL_3
00BE: text_clear_all // убираем весь текст
00BA: show_text_styled GXT 'MTG02F' time 3000 style 5
// выводим текс на экран
jump @PANEL_9 // переходим на метку PANEL_9

:PANEL_3
if
0@ == 1 // если выбрана вторая строка
jf @PANEL_4
00BE: text_clear_all
00BA: show_text_styled GXT 'MTIME1' time 3000 style 5
jump @PANEL_9

:PANEL_4
if
0@ == 2
jf @PANEL_5
00BE: text_clear_all
00BA: show_text_styled GXT 'MTIME2' time 3000 style 5
jump @PANEL_9

:PANEL_5
if
0@ == 3
jf @PANEL_6
00BE: text_clear_all
00BA: show_text_styled GXT 'MTIME3' time 3000 style 5
jump @PANEL_9

:PANEL_6
if
0@ == 4
jf @PANEL_7
00BE: text_clear_all
00BA: show_text_styled GXT 'MTIME4' time 3000 style 5
jump @PANEL_9

:PANEL_7
if
0@ == 5
jf @PANEL_8
00BE: text_clear_all
00BA: show_text_styled GXT 'MTIME5' time 3000 style 5
jump @PANEL_9

:PANEL_8
if
0@ == 6 // если выбрана седьмая строка
jf @PANEL_9
00BE: text_clear_all
00BA: show_text_styled GXT 'MTIME6' time 3000 style 5

:PANEL_9
wait 0
if
00E1: player 0 pressed_key 15
jf @PANEL_2 //если не нажата клавиша F или ENTER
0581: toggle_radar 1 // возвращаем радар
03E6: remove_text_box // убираем text_box
08DA: remove_panel $PANEL // удаляем панель
01B4: toggle_player $PLAYER_CHAR can_move 1
// возвращаем управление игроком
end_thread


Смотрим результат работы скрипта:
Панель, или  список товаров

В этом примере панель будет на экране до тех пор, пока не будет нажата клавиша F или ENTER и если она будет нажата, то возвращаем игроку управление, и завершаем поток.

Если вы дочитали это статью, то хочу с вами поделиться еще одним немаловажным требованиям к панелям, а именно:
В GTA San Andreas существует ограничение для панелей. Одновременно на экран можно выводить только две панели, если пытаться вывести больше игра вылетает.




  «12

  1 2 3 4 5 6 7 8 9 10  

Родственные ссылки
» Другие статьи раздела Основы скриптинга
» Эта статья от пользователя yelmi

5 cамых читаемых статей из раздела Основы скриптинга:
» Работа со звуками в GTA San Andreas
» Директивы
» Контроль клавиатуры
» External Script – что это такое и как с ним работать?
» Панель, или список товаров. Часть II.

5 последних статей раздела Основы скриптинга:
» Директивы
» Дополнительные команды
» Ключевые слова
» Классы
» Циклы

¤ Перевести статью в страницу для печати
¤ Послать эту cтатью другу

MyArticles 0.6 beta for RUNCMS: by RunCms.ru


Реклама

Вверх     Вернуться на главную. Вход в Систему. Статьи. Скачать. Миссии. ФОРУМ Обратная связь.   
   
   
Яндекс.Метрика
   
   
- Генерация страницы: 0.03 секунд -