Rabu, 21 September 2016

2.Sanny Builder - EDITOR

Editor

Fungsi utama dapat ditemukan sebagai tombol icon di menu bar

1. Decompile: Sanny membuka file naskah dengan ekstensi 
 .CS.CM atau .SCM

2. Compile:  sanny mengkompilasi secara default untuk [Name]main.SCM 
Sanny compiles automaticly ke file Cleoscript, jika skrip memiliki Cleo-Direktive sebagai entri

{$CLEO .cs} = Cleo-Direktive, akan compiled ke Name.CS
{$CLEO .cm} = Cleo-Direktive, akan compiled ke Name.CM

3.








ALAT YANG BERGUNA

Pilih ALAT pada menu, maka IDE Tools >> Coords Manajer
untuk membaca x,y,z koordinat dan z-sudut posisi pemain saat ini jika permainan berjalan

Pilih ALAT pada menu, maka IDE Tools >> Opcode Cari
untuk mencari opcodes
ketik kata kunci untuk menemukan codeline yang meliputi kata ini
atau ketik opcode untuk menemukan description
temuan selalu ada garis main.scm asli
Alat pencarian opcode mengharuskan untuk menciptakan opcode.txt di Sanny Builder 3 \ data folder \ sa
Memuat decompile asli utama ke builder sanny kemudian pilih ALAT pada menu sanny, maka: membuat opcodes.txt















nomor baris
Pilih ALAT, maka opsi
di menu pilihan EDITOR Anda dapat menemukan fitur untuk mengganti nomor Baris / di
Nomor baris adalah bagian dari editor, bukan dari script

Bantuan sanny builder
Pilih HELP pada menu, kemudian Konten untuk menemukan informasi,
seperti seperti nomor key_press, nomor senjata, bodyparts dll ..











____________________________________________________________________________
____________________________________________________________________________


Pilihan: pandangan yang berbeda dari kode decompiled

Pilih ALAT, maka opsi
dalam pilihan menu GENERAL Anda dapat menemukan fitur untuk beralih antara 2 cara untuk mengurai

baik decompile dengan menulis opcodes
atau decompiling tanpa opcodes







1. Menulis OpcodesSemua entri ditampilkan dengan opcodes mereka
Opcodes adalah kode program nyata dari fungsi script
dan dengan menunjukkan mereka adalah seperti melihat nama perintah
Script dengan opcodes:
CODE
:CARSL_6439
00D6: if
00E1:   player 0 pressed_key 16
004D: jump_if_false @CARSL_6535
010B: 5@ = player $PLAYER_CHAR money
00D6: if
002D:   5@ >= 14@ // (int)
004D: jump_if_false @CARSL_6512
0012: 14@ *= -1
0109: player $PLAYER_CHAR money += 14@
0002: jump @CARSL_6700

2. Tanpa Opcodes
Script ini lebih ramping, mungkin lebih jelas (tapi tidak bagi saya)
terutama  004D: jump_if_false sekarang akan jf
Tapi tidak semua opcodes yang menghilang. Banyak kode harus digunakan lebih lanjut dengan menerapkan opcodes mereka.
Script tanpa opcodes:

CODE
:CARSL_6439
if
00E1:   player 0 pressed_key 16
jf @CARSL_6535
5@ = Player.Money($PLAYER_CHAR)
if
002D:   5@ >= 14@ // (int)
jf @CARSL_6512
14@ *= -1
Player.Money($PLAYER_CHAR) += 14@
jump @CARSL_6700

Dengan menyusun tidak masalah jika Anda menggunakan kode dengan opcodes atau tanpa opcodes
Anda dapat menggabungkan segala sesuatu dan sanny kompilasi juga,
asalkan kode ini benar dan codelines yang meliputi opcodes oleh mengurai tanpa opcodes
harus digunakan lebih lanjut dengan menggunakan opcodes

Sebuah fitur khusus oleh decompiling tanpa opcodes adalah menerjemahkan perintah berdasarkan opcode ke
Kelas dan Kata Kunci

Untuk beberapa kode dapat digunakan CLASSES
Baca lebih lanjut tentang kelas di Sanny Builder-HELP tema: Coding >> Kelas

Kode ini dengan decompiling dengan tulisan opcodes
00AB: put_car 22@ at -1577.942 52.6333 40.0 

akan ditampilkan oleh decompiling dengan tanpa opcodes dalam jenis:

Car.PutAt22@ , -1577.942, 52.6333, 40.0) 

arti dari kode didefinisikan oleh entri kelas

CAR = class-nama
Putat = kelas-anggota
nama dan anggota digabungkan dengan sebuah titik di tengah
22@ = kelas-pemilik
kelas-pemilik dan parameter ditempatkan dalam kurung dan dipisahkan dengan tanda koma
(Parameter = informasi yang dibutuhkan untuk perintah)

Sanny memungkinkan untuk menggunakan beberapa KEYWORDS bukan menggunakan opcodes

Opcode = Keyword
_____________
0001: = wait
00d6: = if
004d: = else_jump
004d: = jf
0002: = jump
0051: = return
0050: = gosub
016a: = fade
01B6: = set_weather
03a4: = thread
04BB: = select_interior
0417: = start_mission
00d8: = mission_cleanup
0317: = increment_mission_attempts


Instead writing
004D: jump_if_false @MAIN_6
can be written
jf @MAIN_6
or
else_jump @MAIN_6
you also can merge it
004D: jf @MAIN_6


____________________________________________________________________________
____________________________________________________________________________
< LAYAR UTAMA >< 1 ><3

Tidak ada komentar: