- 1
- 0
So, I want to create a CLEO script to make weapon training easier. The purpose of the code is to help lock onto the target objects—specifically, objects with IDs 3018–3024—and automatically aim at the closest object with that ID. The objects do not m
please help me, im using SB4, and always error when i tried to compile .
{$CLEO .cs}
nop
:MAIN
wait 0
// Pastikan player aktif/hidup
if
0256: $PLAYER_CHAR
jf @Main
// Jika sedang mengemudi, abaikan auto-aim
if
00DF: $PLAYER_ACTOR
then
jump @Main
end
// Cek apakah pemain menahan tombol Aim (RMB / Klik Kanan)
if
00E1: 0 2
then
0@ = 9999.0 // Inisialisasi jarak terdekat
1@ = -1 // Inisialisasi handle object terpilih
// Iterasi pemeriksaan untuk model ID 3018 hingga 3024
2@ = 3018
gosub @FIND_MODEL
2@ = 3019
gosub @FIND_MODEL
2@ = 3020
gosub @FIND_MODEL
2@ = 3021
gosub @FIND_MODEL
2@ = 3022
gosub @FIND_MODEL
2@ = 3023
gosub @FIND_MODEL
2@ = 3024
gosub @FIND_MODEL
// Jika objek target terdekat ditemukan
if
1@ <> -1
then
// Ambil koordinat objek (X, Y, Z)
04D4: 1@ 3@ 4@ 5@
// Naikkan koordinat Z sedikit agar bidikan tepat di tengah sasaran
5@ += 0.35
// Arahkan kamera langsung ke titik sasaran
070D: 3@ 4@ 5@ 2 2
end
end
jump @Main
// --- SUBROUTINE: PENCARIAN OBJEK TERDEKAT ---
:FIND_MODEL
for 6@ = 0 to 2000
if
03CA: 6@ // Cek apakah ID handle object ada
then
01F5: 6@ 7@ // Ambil Model ID dari objek
if
7@ == 2@ // Jika Model ID cocok dengan yang dicari
then
04D4: 6@ 8@ 9@ 10@ // Koordinat Objek
00A0: $PLAYER_ACTOR 11@ 12@ 13@ // Koordinat Player
// Hitung jarak 3D antara Player dan Objek
0509: 11@ 12@ 13@ 8@ 9@ 10@ 14@
// Jika jaraknya lebih dekat dari objek sebelumnya
if
0025: 14@ < 0@
then
0@ = 14@
1@ = 6@
end
end
end
end
return
please help me, im using SB4, and always error when i tried to compile .
{$CLEO .cs}
nop
:MAIN
wait 0
// Pastikan player aktif/hidup
if
0256: $PLAYER_CHAR
jf @Main
// Jika sedang mengemudi, abaikan auto-aim
if
00DF: $PLAYER_ACTOR
then
jump @Main
end
// Cek apakah pemain menahan tombol Aim (RMB / Klik Kanan)
if
00E1: 0 2
then
0@ = 9999.0 // Inisialisasi jarak terdekat
1@ = -1 // Inisialisasi handle object terpilih
// Iterasi pemeriksaan untuk model ID 3018 hingga 3024
2@ = 3018
gosub @FIND_MODEL
2@ = 3019
gosub @FIND_MODEL
2@ = 3020
gosub @FIND_MODEL
2@ = 3021
gosub @FIND_MODEL
2@ = 3022
gosub @FIND_MODEL
2@ = 3023
gosub @FIND_MODEL
2@ = 3024
gosub @FIND_MODEL
// Jika objek target terdekat ditemukan
if
1@ <> -1
then
// Ambil koordinat objek (X, Y, Z)
04D4: 1@ 3@ 4@ 5@
// Naikkan koordinat Z sedikit agar bidikan tepat di tengah sasaran
5@ += 0.35
// Arahkan kamera langsung ke titik sasaran
070D: 3@ 4@ 5@ 2 2
end
end
jump @Main
// --- SUBROUTINE: PENCARIAN OBJEK TERDEKAT ---
:FIND_MODEL
for 6@ = 0 to 2000
if
03CA: 6@ // Cek apakah ID handle object ada
then
01F5: 6@ 7@ // Ambil Model ID dari objek
if
7@ == 2@ // Jika Model ID cocok dengan yang dicari
then
04D4: 6@ 8@ 9@ 10@ // Koordinat Objek
00A0: $PLAYER_ACTOR 11@ 12@ 13@ // Koordinat Player
// Hitung jarak 3D antara Player dan Objek
0509: 11@ 12@ 13@ 8@ 9@ 10@ 14@
// Jika jaraknya lebih dekat dari objek sebelumnya
if
0025: 14@ < 0@
then
0@ = 14@
1@ = 6@
end
end
end
end
return