Вопросы по CLEO-скриптингу

itsLegend

Фонд борьбы за жуков 🐞
Администратор
2,696
1,460
Имеются заранее известные координаты, как выбрать самую близкую к Актеру?

Сохраняй дистанцию(от актера до этих координат). Самую маленькую дистанцию сохраняй, вместе с координатами.
Код:
Actor.StorePos($PLAYER_ACTOR, 1@, 2@, 3@)
 
6@ = 1000.0 // Max. distance
7@ = 0.0
8@ = 0.0
9@ = 0.0
 
for 4@ = 250.0 downto 15.0 step 5.0
    0208: 5@ = random_float_in_ranges 0.0 4@
    005B: 5@ += 1@
    050A: 10@ = distance_between_XYZ 1@ 2@ 3@ and_XYZ 5@ 2@ 3@
    if 8025: 10@ < 6@
    then
        0087: 6@ = 10@ // Unset max. distance
        0087: 7@ = 5@ // Save Pos
        0087: 8@ = 2@ // ...
        0087: 9@ = 3@ // ...
    end
end
 
0AF8: add_message_to_chat "Nearest position: %.2f %.2f %.2f / Distance: %.1f" color -1 params 7@ 8@ 9@ 6@
 

fiendshadow

3LFhocV726q7pKWWky2vv3W38Dm9sGJV86
Проверенный
455
121

kemperrr

Известный
104
2
Код:
{$CLEO .cs}
 
//-------------MAIN---------------
if
not 31@ = SAMP.Base()
else_jump @Noname_25
end_thread
jump @Noname_45
 
:Noname_25
  not SAMP.Available
else_jump @Noname_45
wait 100
jump @Noname_25
 
:Noname_45
  not SAMP.IsLocalPlayerSpawned
else_jump @Noname_65
wait 0
jump @Noname_45
 
:Noname_65
0ac8: alloc 1@ 512
0ac8: alloc 2@ 512
3@ = Render.CreateFont("Tahoma", 12, 12)
5@ = Render.FontDrawHeight(3@)
 
:Noname_106
wait 0
4@ = 500
0@ = 0
 
:Noname_125
if
0C5D: samp textdraw 0@ is_exists
else_jump @Noname_198
0C5A: samp textdraw 0@ get_string_to 1@
0ad3: sprintf 2@ "tID: %d | %s" 0@ 1@
Render.DrawText(3@, 2@, 10, 4@, -1)
005A: 4@ += 5@ // (int)
 
:Noname_198
0@ += 1
  0@ > 2304
else_jump @Noname_125
jump @Noname_106

Парси этим

Вместо ID буква D , и текст не пишет , регистр может ? http://i.imgur.com/ZnM0Ltm.png
 

1337coder

Новичок
27
0
Спасибо, уже научился )

Есть вопрос, какой код. Чтобы при входе в игру в чате выходило. Например "[*****] Автор: *****. Деакцивация/Активация "*"

PHP:
0af8: "[*****] Автор: *****. Деакцивация/Активация /"\*/"\ "-1 // -1 цвет сообщения(белый) /"\ чтобы " показывали вроде так, если не показывает, то ищи, я ночью видел %c так еще.. опкод SF
 

yxTbl

Фуфел
339
249
PHP:
0af8: "[*****] Автор: *****. Деакцивация/Активация /"\*/"\ "-1 // -1 цвет сообщения(белый) /"\ чтобы " показывали вроде так, если не показывает, то ищи, я ночью видел %c так еще.. опкод SF
Не не пашет :(
Лан, есть ещё 1 вопрос. Какой код, чтобы ТПшиться по координатам?
И другой код, промежуток ТП. Ну время, через которое будет совершенно каждое телепортирование.
 

hnnssy

Известный
Друг
2,684
2,750
Не не пашет :(
Лан, есть ещё 1 вопрос. Какой код, чтобы ТПшиться по координатам?
И другой код, промежуток ТП. Ну время, через которое будет совершенно каждое телепортирование.
00A1: put_actor $PLAYER_ACTOR at 1@ 2@ 3@
wait 1000 // тут задержка
00A1: put_actor $PLAYER_ACTOR at 1@ 2@ 3@
 

XyJluraH_J

Потрачен
116
26
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
А активацию и деакцивацию как делать?

Пример

PHP:
{$CLEO}
thread "bot"
if not 0@ = SAMP.Base()
then 0A93: end_custom_thread
end
while not SAMP.Available()
wait 100
end
 
0b34: samp register_client_command "on" to_label @on
0b34: samp register_client_command "off" to_label @off
while true
wait 0
if 30@ == 1
then
 
КОД
 
end
end
 
:on
30@ = 1
Samp.CmdRet()
 
:off
30@ = 0
Samp.CmdRet()
 
КОД
 
  • Нравится
Реакции: mah0n и yxTbl

kemperrr

Известный
104
2
Данный код почему то не пашет :( В чем проблемка?
PHP:
// This file was decompiled using SASCM.ini published by GTAG (http://gtag.gtagaming.com/opcode-database) on 14.6.2013
{$CLEO .cs}
 
//-------------MAIN---------------
wait 2000
0B34: samp register_client_command "blod" to_label @Noname_218
 
:Noname_54
wait 0
if
  0@ == 1 
jf @Noname_211
if
0C5A: samp textdraw 2264 get_string_to "Press Y"
jf @Noname_157
0DBF:  emul_key_press 89 is_up 1
wait 500
0DBF:  emul_key_press 89 is_up 0
 
:Noname_157
if
0C5A: samp textdraw 2264 get_string_to "Press N"
jf @Noname_206
0DBF:  emul_key_press 78 is_up 1
wait 500
0DBF:  emul_key_press 78 is_up 0
 
:Noname_206
wait 1000
 
:Noname_211
goto @Noname_54
 
:Noname_218
if
  0@ == 0
jf @Noname_280
chatmsg "Включил" 393127
goto @Noname_319
 
:Noname_280
chatmsg "ВИКЛЮЧИЛ?!" 393127
 
:Noname_319
0B12: 0@ = 0@ XOR 1
SAMP.CmdRet
 
  • Нравится
Реакции: XyJluraH_J

MISTER_GONWIK

Всефорумный гонщик
Всефорумный модератор
1,260
1,740
Данный код почему то не пашет :( В чем проблемка?
PHP:
// This file was decompiled using SASCM.ini published by GTAG (http://gtag.gtagaming.com/opcode-database) on 14.6.2013
{$CLEO .cs}
 
//-------------MAIN---------------
wait 2000
0B34: samp register_client_command "blod" to_label @Noname_218
 
:Noname_54
wait 0
if
  0@ == 1 
jf @Noname_211
if
0C5A: samp textdraw 2264 get_string_to "Press Y"
jf @Noname_157
0DBF:  emul_key_press 89 is_up 1
wait 500
0DBF:  emul_key_press 89 is_up 0
 
:Noname_157
if
0C5A: samp textdraw 2264 get_string_to "Press N"
jf @Noname_206
0DBF:  emul_key_press 78 is_up 1
wait 500
0DBF:  emul_key_press 78 is_up 0
 
:Noname_206
wait 1000
 
:Noname_211
goto @Noname_54
 
:Noname_218
if
  0@ == 0
jf @Noname_280
chatmsg "Включил" 393127
goto @Noname_319
 
:Noname_280
chatmsg "ВИКЛЮЧИЛ?!" 393127
 
:Noname_319
0B12: 0@ = 0@ XOR 1
SAMP.CmdRet
Ну так то в условии у тебя опкод получения текста из текстдрава, а не сравнение..