Всё нормально. Кинь мне скрипт я посмотрю.Вот что тут не так...и так и по другому пробовал,в чат не хочет выводить текст,почему я такое нубло? :D :D :D
Всё нормально. Кинь мне скрипт я посмотрю.Вот что тут не так...и так и по другому пробовал,в чат не хочет выводить текст,почему я такое нубло? :D :D :D
{$CLEO}
const
DIALOG_STYLE_LIST = 2
end
0000:
repeat
wait 400
until 0AFA: is_samp_available // Ожидаем инициализации структур SAMP'а
0AC8: 0@ = allocate_memory_size 64 // Выделяем память под список элементов(кол-во текста должно быть не больше 64 символов(пробелы и переходы на новую строку тоже равны 1 символу))
0ad3: format_stirng 0@ = "Первый пункт%cВторой пункт%cТретий пункт" 0xA 0xA // Создаем список, 0xA - означает переход на новую строку, а %c указывается в самой строке
0B3B: samp show_dialog id 17 caption "Третий диалог" text 0@ button_1 "Выбрать" button_2 "Закрыть" style DIALOG_STYLE_LIST
0AC9: free_allocated_memory 0@ // Освобождаем память, больше не нужна.
while true
wait 0
if
0B3C: samp is_dialog_responded id 17 button 1@ list_item 3@ input_text 0
then
0AF8: samp add_message_to_chat "Была нажата кнопка %d" color -1 params 1@
if
1@ == 1
then
0AF8: samp add_message_to_chat "А именно: Уря" color -1
0AF8: samp add_message_to_chat "Элемент №%d" color -1 params 3@
if 3@ == 0
then 0AF8: samp add_message_to_chat "Это первый пункт" color -1
end
if 3@ == 1 // Был выбран второй пункт
then 0AF8: samp add_message_to_chat "Это второй пункт" color -1
end
if 3@ == 2 // Был выбран третий пункт
then 0AF8: samp add_message_to_chat "Это третий пункт" color -1
end
else
0AF8: samp add_message_to_chat "А именно: Закрыть" color -1
end
end
end
Как сделать вызов таблицы по команде?
Как делать таблицу я научился тут, но она появляется при подключении к серверу. А мне надо, чтобы она появлялась только когда я вводу команду /primer. Надеюсь, до вас дошло вышесказанное.
Код:{$CLEO} const DIALOG_STYLE_LIST = 2 end 0000: repeat wait 400 until 0AFA: is_samp_available // Ожидаем инициализации структур SAMP'а 0AC8: 0@ = allocate_memory_size 64 // Выделяем память под список элементов(кол-во текста должно быть не больше 64 символов(пробелы и переходы на новую строку тоже равны 1 символу)) 0ad3: format_stirng 0@ = "Первый пункт%cВторой пункт%cТретий пункт" 0xA 0xA // Создаем список, 0xA - означает переход на новую строку, а %c указывается в самой строке 0B3B: samp show_dialog id 17 caption "Третий диалог" text 0@ button_1 "Выбрать" button_2 "Закрыть" style DIALOG_STYLE_LIST 0AC9: free_allocated_memory 0@ // Освобождаем память, больше не нужна. while true wait 0 if 0B3C: samp is_dialog_responded id 17 button 1@ list_item 3@ input_text 0 then 0AF8: samp add_message_to_chat "Была нажата кнопка %d" color -1 params 1@ if 1@ == 1 then 0AF8: samp add_message_to_chat "А именно: Уря" color -1 0AF8: samp add_message_to_chat "Элемент №%d" color -1 params 3@ if 3@ == 0 then 0AF8: samp add_message_to_chat "Это первый пункт" color -1 end if 3@ == 1 // Был выбран второй пункт then 0AF8: samp add_message_to_chat "Это второй пункт" color -1 end if 3@ == 2 // Был выбран третий пункт then 0AF8: samp add_message_to_chat "Это третий пункт" color -1 end else 0AF8: samp add_message_to_chat "А именно: Закрыть" color -1 end end end
{$CLEO}
const
DIALOG_STYLE_LIST = 2
end
0000:
repeat
wait 400
until 0AFA: is_samp_available // Ожидаем инициализации структур SAMP'а
0B34: samp register_client_command "primer" to_label @primer // регистрация команды
while true
wait 0
if 0B3C: samp is_dialog_responded id 17 button 1@ list_item 3@ input_text 0
then
0AF8: samp add_message_to_chat "Была нажата кнопка %d" color -1 params 1@
if
1@ == 1
then
0AF8: samp add_message_to_chat "А именно: Уря" color -1
0AF8: samp add_message_to_chat "Элемент №%d" color -1 params 3@
if 3@ == 0
then 0AF8: samp add_message_to_chat "Это первый пункт" color -1
end
if 3@ == 1 // Был выбран второй пункт
then 0AF8: samp add_message_to_chat "Это второй пункт" color -1
end
if 3@ == 2 // Был выбран третий пункт
then 0AF8: samp add_message_to_chat "Это третий пункт" color -1
end
else
0AF8: samp add_message_to_chat "А именно: Закрыть" color -1
end
end
end
:primer // метка команды должна быть после основного цикла скрипта
0AC8: 0@ = allocate_memory_size 64 // Выделяем память под список элементов(кол-во текста должно быть не больше 64 символов(пробелы и переходы на новую строку тоже равны 1 символу))
0ad3: format_stirng 0@ = "Первый пункт%cВторой пункт%cТретий пункт" 0xA 0xA // Создаем список, 0xA - означает переход на новую строку, а %c указывается в самой строке
0B3B: samp show_dialog id 17 caption "Третий диалог" text 0@ button_1 "Выбрать" button_2 "Закрыть" style DIALOG_STYLE_LIST
0AC9: free_allocated_memory 0@ // Освобождаем память, больше не нужна.
0B43: samp cmd_ret // обязательный опкод после каждой метки а команду
Спасибо, дружище.Код:{$CLEO} const DIALOG_STYLE_LIST = 2 end 0000: repeat wait 400 until 0AFA: is_samp_available // Ожидаем инициализации структур SAMP'а 0B34: samp register_client_command "primer" to_label @primer // регистрация команды while true wait 0 if 0B3C: samp is_dialog_responded id 17 button 1@ list_item 3@ input_text 0 then 0AF8: samp add_message_to_chat "Была нажата кнопка %d" color -1 params 1@ if 1@ == 1 then 0AF8: samp add_message_to_chat "А именно: Уря" color -1 0AF8: samp add_message_to_chat "Элемент №%d" color -1 params 3@ if 3@ == 0 then 0AF8: samp add_message_to_chat "Это первый пункт" color -1 end if 3@ == 1 // Был выбран второй пункт then 0AF8: samp add_message_to_chat "Это второй пункт" color -1 end if 3@ == 2 // Был выбран третий пункт then 0AF8: samp add_message_to_chat "Это третий пункт" color -1 end else 0AF8: samp add_message_to_chat "А именно: Закрыть" color -1 end end end :primer // метка команды должна быть после основного цикла скрипта 0AC8: 0@ = allocate_memory_size 64 // Выделяем память под список элементов(кол-во текста должно быть не больше 64 символов(пробелы и переходы на новую строку тоже равны 1 символу)) 0ad3: format_stirng 0@ = "Первый пункт%cВторой пункт%cТретий пункт" 0xA 0xA // Создаем список, 0xA - означает переход на новую строку, а %c указывается в самой строке 0B3B: samp show_dialog id 17 caption "Третий диалог" text 0@ button_1 "Выбрать" button_2 "Закрыть" style DIALOG_STYLE_LIST 0AC9: free_allocated_memory 0@ // Освобождаем память, больше не нужна. 0B43: samp cmd_ret // обязательный опкод после каждой метки а команду
{$CLEO .cs}
0000: NOP
:Obj
Wait 0
If Key_down 50
Then
For 0@ = 0 To 20000
If 1@ = SAMP.ObjectHandleByID(0@)
Then
2@ = Object.Model(1@)
Object.StorePos(1@, 3@, 4@, 5@)
Wait 1000
0AF1: write_int 2@ to_ini_file "My scripts\ObjectC\ObjectCoords.ini" section "Coord" key "Model ID"
0AF3: write_float 3@ to_ini_file "My scripts\ObjectC\ObjectCoords.ini" section "Coord" key "X"
0AF3: write_float 4@ to_ini_file "My scripts\ObjectC\ObjectCoords.ini" section "Coord" key "Y"
0AF3: write_float 5@ to_ini_file "My scripts\ObjectC\ObjectCoords.ini" section "Coord" key "Z"
End
End
End
Jump @Obj
Как задать переменной текст?
0AD3: 0@v = format "LoL"
Изменить название секции.Как сделать так, чтобы в *.ini файле не заменялись данные, а добавлялись новые?
Как сделать активацию скрипта на команду? например /dgun deagle
0B34: samp register_client_command "LoL" to_label @LoL
:LoL_Main
wait 0
if
0@ == 1
jf @LoL_Main
// Code
jump @LoL_Main
:LoL
0B12: 0@ = 0@ XOR 1
0B43: samp cmd_ret
{$CLEO .cs}
0000: NOP
:Obj
Wait 0
If Key_down 50
Then
0A9A: 6@ = openfile "My scripts\ObjectC\ObjectCoords.ini" mode "at"
For 0@ = 0 To 20000
If 1@ = SAMP.ObjectHandleByID(0@)
Then
2@ = Object.Model(1@)
Object.StorePos(1@, 3@, 4@, 5@)
Wait 100
0AD9: write_formatted_text "CreateObject(%i, %f, %f, %f)%c" in_file 6@ params 2@ 3@ 4@ 5@ 10
End
End
0A9B: closefile 6@
End
Jump @Obj
попробуй записывать значения не в .ini, а в обычный .txtА что за проблема в этом коде? Скрипт должен находить объекты в зоне стрима, и записывать их модели и координаты в .ini файл, но он записывает какие-то объекты которых нет рядом.
Вот код:
Код:{$CLEO .cs} 0000: NOP :Obj Wait 0 If Key_down 50 Then 0A9A: 6@ = openfile "My scripts\ObjectC\ObjectCoords.ini" mode "at" For 0@ = 0 To 20000 If 1@ = SAMP.ObjectHandleByID(0@) Then 2@ = Object.Model(1@) Object.StorePos(1@, 3@, 4@, 5@) Wait 100 0AD9: write_formatted_text "CreateObject(%i, %f, %f, %f)%c" in_file 6@ params 2@ 3@ 4@ 5@ 10 End End 0A9B: closefile 6@ End Jump @Obj
Используй опкод:А что за проблема в этом коде? Скрипт должен находить объекты в зоне стрима, и записывать их модели и координаты в .ini файл, но он записывает какие-то объекты которых нет рядом.
Вот код:
Код:{$CLEO .cs} 0000: NOP :Obj Wait 0 If Key_down 50 Then 0A9A: 6@ = openfile "My scripts\ObjectC\ObjectCoords.ini" mode "at" For 0@ = 0 To 20000 If 1@ = SAMP.ObjectHandleByID(0@) Then 2@ = Object.Model(1@) Object.StorePos(1@, 3@, 4@, 5@) Wait 100 0AD9: write_formatted_text "CreateObject(%i, %f, %f, %f)%c" in_file 6@ params 2@ 3@ 4@ 5@ 10 End End 0A9B: closefile 6@ End Jump @Obj
0AE3: 5@ = random_object_near_point 0@ 1@ 2@ in_radius 10.0 find_next 1 //IF and SET
{$CLEO .cs}
0000: NOP
:Obj
Wait 0
If Key_down 50
Then
0A9A: 6@ = openfile "My scripts\ObjectC\ObjectCoords.txt" mode "at"
For 0@ = 0 To 19995
If 1@ = SAMP.ObjectHandleByID(0@)
Then
If 03CA: object 1@ exists
Then
2@ = Object.Model(1@)
Object.StorePos(1@, 3@, 4@, 5@)
Wait 100
0AD9: write_formatted_text "CreateObject(%i, %f, %f, %f, 0, 0, 0, 0);%c" in_file 6@ params 2@ 3@ 4@ 5@ 10
End
End
End
0A9B: closefile 6@
End
Jump @Obj
Ты хочешь стилер объектов написать?Ну вот, сделал в .txt, вроде работает:
Но есть еще одна проблемка, теперь нужно все "0" кроме последней, заменить на угол разворота объекта по осям X Y Z. Кто может помочь?Код:{$CLEO .cs} 0000: NOP :Obj Wait 0 If Key_down 50 Then 0A9A: 6@ = openfile "My scripts\ObjectC\ObjectCoords.txt" mode "at" For 0@ = 0 To 19995 If 1@ = SAMP.ObjectHandleByID(0@) Then If 03CA: object 1@ exists Then 2@ = Object.Model(1@) Object.StorePos(1@, 3@, 4@, 5@) Wait 100 0AD9: write_formatted_text "CreateObject(%i, %f, %f, %f, 0, 0, 0, 0);%c" in_file 6@ params 2@ 3@ 4@ 5@ 10 End End End 0A9B: closefile 6@ End Jump @Obj