Jump to content

Help CMD!


AkenX
 Share

Recommended Posts

Am un mod pentru School Instructor iar in acesta am Auto-StopLicense, iar daca acesta e activat, cand vreau sa imi dau mie licentele primesc crash,  cum as putea rezolva asta?

 

:autostop
0BE5: raknet 31@ = get_hook_param PARAM_PACKETID
if 31@ == RPC_ScrClientMessage
then 
    0C11: memset destination 29@ value 0 size 256
    
    0BE5: raknet 31@ = get_hook_param PARAM_BITSTREAM
    0BE7: raknet 30@ = bit_stream_read 31@ type BS_TYPE_INT //color
    0BE7: raknet 30@ = bit_stream_read 31@ type BS_TYPE_INT //lenght
    0BE8: raknet bit_stream 31@ read_array 29@ size 30@ //string
    0C0D: struct 29@ offset 30@ size 1 = 0
    
    if or
    0C29: $NUL_STIRNG = stristr string1 29@ string2 "* You gave a Fishing License to"
    0C29: $NUL_STIRNG = stristr string1 29@ string2 "* You gave a Sailing License to"
    0C29: $NUL_STIRNG = stristr string1 29@ string2 "* You gave a Flying License to"
    0C29: $NUL_STIRNG = stristr string1 29@ string2 "* You gave a Materials License to"
    0C29: $NUL_STIRNG = stristr string1 29@ string2 "* You gave a Weapons License to"
    then
    0AF0: 11@ = get_int_from_ini_file "cleo\S.I. Helper.ini" section "STOPLESSON" key "Status"
    if 11@ == 1
    then
        0AC8: 32@ = allocate_memory_size 260
        0AF0: 32@ = get_int_from_ini_file "cleo\S.I. Helper.ini" section "CANDIDAT" key "CandidatID"
        say "/stoplesson %d" 32@
        0AC9: free_allocated_memory 32@
    end
    end
    
    if or
    0C29: $NUL_STIRNG = stristr string1 29@ string2 "* I-ai acordat Licenta de navigatie lui"
    0C29: $NUL_STIRNG = stristr string1 29@ string2 "* I-ai acordat Licenta de pescar lui"
    0C29: $NUL_STIRNG = stristr string1 29@ string2 "* I-ai acordat Licenta de materiale lui"
    0C29: $NUL_STIRNG = stristr string1 29@ string2 "* I-ai acordat Licenta de pilot lui"
    0C29: $NUL_STIRNG = stristr string1 29@ string2 "* I-ai acordat Permisul de port-arma lui"
    then
    0AF0: 11@ = get_int_from_ini_file "cleo\S.I. Helper.ini" section "STOPLESSON" key "Status"
    if 11@ == 1
    then
        0AC8: 32@ = allocate_memory_size 260
        0AF0: 32@ = get_int_from_ini_file "cleo\S.I. Helper.ini" section "CANDIDAT" key "CandidatID"
        say "/stoplesson %d" 32@
        0AC9: free_allocated_memory 32@
    end
    end
end
0BE0: raknet hook_ret true

Link to comment
Share on other sites

Mai am o problema la el, acest mod are 2 limbi 

Fiind: 

 

if 8@ == 1
then

....

end

 

if 8@ == 2
then

....

end

 

Nu pot face aceasta parte sa fie in a doua limbă

 

:autostopc
0AF0: 11@ = get_int_from_ini_file "cleo\S.I. Helper.ini" section "STOPLESSON" key "Status"          
if 11@ == 1
then
    chatmsg "{00ff00}[S.I Helper]: {7a9383}Auto-StopLesson a fost {ff0000}oprit!" -1
    0AF1: write_int 0 to_ini_file "CLEO\S.I. Helper.ini" section "STOPLESSON" key "Status"
else
    chatmsg "{00ff00}[S.I Helper]: {7a9383}Auto-StopLesson a fost {00e600}pornit!" -1
    0AF1: write_int 1 to_ini_file "CLEO\S.I. Helper.ini" section "STOPLESSON" key "Status"
end
SAMP.CmdRet()

Link to comment
Share on other sites

Mai am o problema

 

:ifish1
SAMP.IsCommandTyped(20@)
if 8@ == 1
then 0AF9: samp say_msg "/cw 1.Cu ce comandă pescuiesti?"
end
    
if 8@ == 2
then say "/cw 1.How you can fish?"
end
SAMP.CmdRet()

 

vreau ca sa fie la if 8@ == 1 , if 8@ == 2 dar nu stiu cum ca tot intampin probleme

else
    chatmsg "{00ff00}[S.I Helper] {00ff00}Prin intermediul comenzii [/fish] poti pescui" 
end 

Link to comment
Share on other sites

Posted (edited)

Daca dau licente altor playeri oricum primesc crash cand acestea o accepta

Edited by AkenX
Link to comment
Share on other sites

Nu pot face reconnectarea la server in 2 limbi si nu inteleg dece, la celelalte am putut doar pe final la astea nu pot

:reconnect
IF SAMP.IsCommandTyped(0@)
THEN
    0AC8: 1@ = allocate_memory_size 260
    0B39: samp get_current_server_address 1@ port 2@
    0B28: samp disconnect_with_reason 3@
    0B29: samp set_local_name 0@
    0B38: samp connect_to_server 1@ port 2@
    0AC9: free_allocated_memory 1@
ELSE
    chatmsg "{0066ff}Foloseste: {FFFFFF}/reconnect <YourName>" 0x0066ff
END
SAMP.CmdRet()

Link to comment
Share on other sites

On 1/7/2024 at 10:38 PM, AkenX said:

Am un mod pentru School Instructor iar in acesta am Auto-StopLicense, iar daca acesta e activat, cand vreau sa imi dau mie licentele primesc crash,  cum as putea rezolva asta?

 

:autostop
0BE5: raknet 31@ = get_hook_param PARAM_PACKETID
if 31@ == RPC_ScrClientMessage
then 
    0C11: memset destination 29@ value 0 size 256
    
    0BE5: raknet 31@ = get_hook_param PARAM_BITSTREAM
    0BE7: raknet 30@ = bit_stream_read 31@ type BS_TYPE_INT //color
    0BE7: raknet 30@ = bit_stream_read 31@ type BS_TYPE_INT //lenght
    0BE8: raknet bit_stream 31@ read_array 29@ size 30@ //string
    0C0D: struct 29@ offset 30@ size 1 = 0
    
    if or
    0C29: $NUL_STIRNG = stristr string1 29@ string2 "* You gave a Fishing License to"
    0C29: $NUL_STIRNG = stristr string1 29@ string2 "* You gave a Sailing License to"
    0C29: $NUL_STIRNG = stristr string1 29@ string2 "* You gave a Flying License to"
    0C29: $NUL_STIRNG = stristr string1 29@ string2 "* You gave a Materials License to"
    0C29: $NUL_STIRNG = stristr string1 29@ string2 "* You gave a Weapons License to"
    then
    0AF0: 11@ = get_int_from_ini_file "cleo\S.I. Helper.ini" section "STOPLESSON" key "Status"
    if 11@ == 1
    then
        0AC8: 32@ = allocate_memory_size 260
        0AF0: 32@ = get_int_from_ini_file "cleo\S.I. Helper.ini" section "CANDIDAT" key "CandidatID"
        say "/stoplesson %d" 32@
        0AC9: free_allocated_memory 32@
    end
    end
    
    if or
    0C29: $NUL_STIRNG = stristr string1 29@ string2 "* I-ai acordat Licenta de navigatie lui"
    0C29: $NUL_STIRNG = stristr string1 29@ string2 "* I-ai acordat Licenta de pescar lui"
    0C29: $NUL_STIRNG = stristr string1 29@ string2 "* I-ai acordat Licenta de materiale lui"
    0C29: $NUL_STIRNG = stristr string1 29@ string2 "* I-ai acordat Licenta de pilot lui"
    0C29: $NUL_STIRNG = stristr string1 29@ string2 "* I-ai acordat Permisul de port-arma lui"
    then
    0AF0: 11@ = get_int_from_ini_file "cleo\S.I. Helper.ini" section "STOPLESSON" key "Status"
    if 11@ == 1
    then
        0AC8: 32@ = allocate_memory_size 260
        0AF0: 32@ = get_int_from_ini_file "cleo\S.I. Helper.ini" section "CANDIDAT" key "CandidatID"
        say "/stoplesson %d" 32@
        0AC9: free_allocated_memory 32@
    end
    end
end
0BE0: raknet hook_ret true

:autostop
0BE5: raknet 31@ = get_hook_param PARAM_PACKETID
if 31@ == RPC_ScrClientMessage
then 
    0C11: memset destination 29@ value 0 size 256
    
    0BE5: raknet 31@ = get_hook_param PARAM_BITSTREAM
    0BE7: raknet 30@ = bit_stream_read 31@ type BS_TYPE_INT //color
    0BE7: raknet 30@ = bit_stream_read 31@ type BS_TYPE_INT //lenght
    0BE8: raknet bit_stream 31@ read_array 29@ size 30@ //string
    0C0D: struct 29@ offset 30@ size 1 = 0
    
    if or
    	0C29: $NUL_STIRNG = stristr string1 29@ string2 "* You gave a Fishing License to"
    	0C29: $NUL_STIRNG = stristr string1 29@ string2 "* You gave a Sailing License to"
   		0C29: $NUL_STIRNG = stristr string1 29@ string2 "* You gave a Flying License to"
    	0C29: $NUL_STIRNG = stristr string1 29@ string2 "* You gave a Materials License to"
    	0C29: $NUL_STIRNG = stristr string1 29@ string2 "* You gave a Weapons License to"
    then
   		0AF0: 11@ = get_int_from_ini_file "cleo\SI_Helper.ini" section "STOPLESSON" key "Status"
    	if 11@ == 1
    	then
        	0AF0: 0@ = get_int_from_ini_file "cleo\SI_Helper.ini" section "CANDIDAT" key "CandidatID"
			if 0B23:  samp is_player_connected 0@
			then say "/stoplesson %d" 0@
        	end
    	end
    end
    
    if or
    	0C29: $NUL_STIRNG = stristr string1 29@ string2 "* I-ai acordat Licenta de navigatie lui"
    	0C29: $NUL_STIRNG = stristr string1 29@ string2 "* I-ai acordat Licenta de pescar lui"
    	0C29: $NUL_STIRNG = stristr string1 29@ string2 "* I-ai acordat Licenta de materiale lui"
    	0C29: $NUL_STIRNG = stristr string1 29@ string2 "* I-ai acordat Licenta de pilot lui"
    	0C29: $NUL_STIRNG = stristr string1 29@ string2 "* I-ai acordat Permisul de port-arma lui"
    then
		0AF0: 11@ = get_int_from_ini_file "cleo\SI_Helper.ini" section "STOPLESSON" key "Status"
    	if 11@ == 1
    	then
        	0AF0: 0@ = get_int_from_ini_file "cleo\SI_Helper.ini" section "CANDIDAT" key "CandidatID"
			if 0B23:  samp is_player_connected 0@
			then say "/stoplesson %d" 0@
        	end
    	end
    end
end
0BE0: raknet hook_ret true

Redenumeste fisierul "S.I. Helper.ini" in "SI_Helper"

 

On 1/7/2024 at 11:35 PM, AkenX said:

Mai am o problema la el, acest mod are 2 limbi 

Fiind: 

 

if 8@ == 1
then

....

end

 

if 8@ == 2
then

....

end

 

Nu pot face aceasta parte sa fie in a doua limbă

 

:autostopc
0AF0: 11@ = get_int_from_ini_file "cleo\S.I. Helper.ini" section "STOPLESSON" key "Status"          
if 11@ == 1
then
    chatmsg "{00ff00}[S.I Helper]: {7a9383}Auto-StopLesson a fost {ff0000}oprit!" -1
    0AF1: write_int 0 to_ini_file "CLEO\S.I. Helper.ini" section "STOPLESSON" key "Status"
else
    chatmsg "{00ff00}[S.I Helper]: {7a9383}Auto-StopLesson a fost {00e600}pornit!" -1
    0AF1: write_int 1 to_ini_file "CLEO\S.I. Helper.ini" section "STOPLESSON" key "Status"
end
SAMP.CmdRet()

:autostopc
0AF0: 11@ = get_int_from_ini_file "cleo\S.I. Helper.ini" section "STOPLESSON" key "Status"          
if 11@ == 1
then
    if 8@ == 1
	then chatmsg "{00ff00}[S.I Helper]: {7a9383}Auto-StopLesson a fost {ff0000}oprit!" -1
	else chatmsg "{00ff00}[S.I Helper]: {7a9383}Auto-StopLesson has been {ff0000}turned off!" -1
	end
    0AF1: write_int 0 to_ini_file "CLEO\S.I. Helper.ini" section "STOPLESSON" key "Status"
else
    if 8@ == 1
	then chatmsg "{00ff00}[S.I Helper]: {7a9383}Auto-StopLesson a fost {00e600}pornit!" -1
	else chatmsg "{00ff00}[S.I Helper]: {7a9383}Auto-StopLesson has been {00e600}turned on!" -1
	end
    0AF1: write_int 1 to_ini_file "CLEO\S.I. Helper.ini" section "STOPLESSON" key "Status"
end
SAMP.CmdRet()

Aici poti inversa oridinea mesajelor, primul romana, al doilea engleza sau invers in functie de cum e corect sa fie.

 

 

23 hours ago, AkenX said:

Mai am o problema

 

:ifish1
SAMP.IsCommandTyped(20@)
if 8@ == 1
then 0AF9: samp say_msg "/cw 1.Cu ce comandă pescuiesti?"
end
    
if 8@ == 2
then say "/cw 1.How you can fish?"
end
SAMP.CmdRet()

 

vreau ca sa fie la if 8@ == 1 , if 8@ == 2 dar nu stiu cum ca tot intampin probleme

else
    chatmsg "{00ff00}[S.I Helper] {00ff00}Prin intermediul comenzii [/fish] poti pescui" 
end 

:ifish1
SAMP.IsCommandTyped(20@)
if 8@ == 1
then 0AF9: samp say_msg "/cw 1.Cu ce comandă pescuiesti?"
end
    
if 8@ == 2
then say "/cw 1.How you can fish?"
end

chatmsg "{00ff00}[S.I Helper] {00ff00}Prin intermediul comenzii [/fish] poti pescui"
SAMP.CmdRet()

 

 

8 hours ago, AkenX said:

Nu pot face reconnectarea la server in 2 limbi si nu inteleg dece, la celelalte am putut doar pe final la astea nu pot

:reconnect
IF SAMP.IsCommandTyped(0@)
THEN
    0AC8: 1@ = allocate_memory_size 260
    0B39: samp get_current_server_address 1@ port 2@
    0B28: samp disconnect_with_reason 3@
    0B29: samp set_local_name 0@
    0B38: samp connect_to_server 1@ port 2@
    0AC9: free_allocated_memory 1@
ELSE
    chatmsg "{0066ff}Foloseste: {FFFFFF}/reconnect <YourName>" 0x0066ff
END
SAMP.CmdRet()

Nu inteleg exact la ce anume te referi aici, pentru ce ai nevoie in 2 limbi si unde anume vrei sa fie limba a doua ?

Link to comment
Share on other sites

if 8@ == 1 este limba romană ca sa intelegi, iar if 8@ == 2 este limba engleză, acest reconnect vreau ca

chatmsg "{0066ff}Foloseste: {FFFFFF}/reconnect <NumeleTău>" 0x0066ff

sa fie si pentru limba engleză dar separat 

Link to comment
Share on other sites

Posted (edited)
:ifish1
SAMP.IsCommandTyped(20@)
if 8@ == 1
then 0AF9: samp say_msg "/cw 1.Cu ce comandă pescuiesti?"
end
    
if 8@ == 2
then say "/cw 1.How you can fish?"
end

chatmsg "{00ff00}[S.I Helper] {00ff00}Prin intermediul comenzii [/fish] poti pescui"
SAMP.CmdRet()

am nevoie ca chatmsg "{00ff00}[S.I Helper] {00ff00}Prin intermediul comenzii [/fish] poti pescui" sa fie unul separat pentru limba engleză

Edited by AkenX
Link to comment
Share on other sites

Posted (edited)

:lvl50
SAMP.IsCommandTyped(20@)
if
0AD4: 20@ = scan_string 20@ format "%d" 21@
then
    0B36: samp 1@ = get_player_nickname 21@
    
    if 8@ == 1
    then say "/f %s (%d) urmează să primească toate licentele. [Nivel 50+]" 1@ 21@
    end
    
    if 8@ == 2
    then say "/f %s (%d) is going to recieve all licenses. [Nivel 50+]" 1@ 21@
    end
    
else
    chatmsg "{00ff00}[S.I Helper] {7a9383}Syntax: {00bfff}[/lvl50 <ID>]" -1
end
SAMP.CmdRet()

 

Exemplu: Eu anunt pe /f  X la mine pentru toate licentele. [Nivel 50+] - sa anunte asa cum este 

                                         X la mine pentru licenta de Sailing . [Nivel 50+] - să detecteze ca e doar o licentă si să anunte X urmează să primească  licenta. [Nivel 50+]

                                         X la mine pentru licenta de Sailing, Flying . [Nivel 50+] - să detecteze ca sunt doua sau mai multe licente si să anunte X urmează să primească licentele. [Nivel 50+] 

si pentru limba engleza tot sa anunte asa te rog

Edited by AkenX
Link to comment
Share on other sites

:rep
SAMP.IsCommandTyped(20@)
say "/refill"
say "/repair"
SAMP.CmdRet

 

Cand folosesc /rep, sa detecteze daca am job-ul Mecanic , dar daca nu il am sa se dea /swapjob si după să se dea /refill si /repair.

 

Daca ai putea face un Tabel din 3 rubrici să se deschidă prin comanda /setsi,

Los Santos School Instructor

Las Venturas School Instructor

San Fierro School Instructor

Iar daca setezi ex: Los Santos School Instructor

cand dau /adsi Să se dea /ad cu factiunea resprectivă care am ales-o că recrutează membrii etc, eu voi completa spatiile cu text-ul sau daca vrei tu :)), /esi sa scrie pe /e factiunea resprectivă care am ales-o că recrutează membrii etc , si pe wt

 

:setsi
SAMP.IsCommandTyped(0@)
if 8@ == 1
then
0AC6: 17@ = label @SI_altele offset 
SAMP.ShowDialog(7777, " ", 17@, "{ff0000}EXIT", "", 0)
end

if 8@ == 2
then
0AC6: 17@ = label @SI_altele_eng
end               
SAMP.ShowDialog(7778, " ", 17@, "{ff0000}EXIT", "", 0)
SAMP.CmdRet()

 

daca ai putea face in acest tabel ar fi super!

 

 

Cand mă loghez si modul e setat in limba romana chatmsg-ul să fie in limba setată

 

wait 1500

chatmsg "{00ff00}[S.I Helper]: {7a9383}Mod de {0066ff}AkenX {7a9383}pentru {00ff00}School Instructor {7a9383}s-a încărcat." -1
chatmsg "{00ff00}[S.I Helper]: {7a9383}Foloseste {0066ff}[/sih]{7a9383}." -1

 

Iar daca e in limba engleză să fie 

 

chatmsg "{00ff00}[S.I Helper]: {7a9383}Mod by {0066ff}AkenX {7a9383}for {00ff00}School Instructor {7a9383}has loaded." -1
chatmsg "{00ff00}[S.I Helper]: {7a9383}Use {0066ff}[/sih]{7a9383}." -1

 

Inca ceva dacă ai putea face și Anuntul pentru fvr in limba engleză ti-as multumi cu orice

 

if 12@ == 1
then
say "/f Dau FVR în 5 secunde."
wait 5000
say "/fvr"
12@ = 0
end

 

jump @repeat

 

  :afvr
12@ = 1
SAMP.CmdRet()

 

iar daca cinvea scrie pe /f : nu da fvr, asteaptă, diferite mesaje de genu ce să nu dau fvr script-ul pentru fvr să se oprească

 

Daca ma poti ajuta cu toate astea te voi pune in credits , acest cmd v-a ajunge pe mana multor membrii din SI , pe viitor m-as gandi sa ii fac si script pentru test log iar mod-ul va fi cu full options :))

 

 

Link to comment
Share on other sites

On 1/9/2024 at 12:19 AM, AkenX said:
if 8@ == 1 este limba romană ca sa intelegi, iar if 8@ == 2 este limba engleză, acest reconnect vreau ca

chatmsg "{0066ff}Foloseste: {FFFFFF}/reconnect <NumeleTău>" 0x0066ff

sa fie si pentru limba engleză dar separat 

:reconnect
IF SAMP.IsCommandTyped(0@)
THEN
    0AC8: 1@ = allocate_memory_size 260
    0B39: samp get_current_server_address 1@ port 2@
    0B28: samp disconnect_with_reason 3@
    0B29: samp set_local_name 0@
    0B38: samp connect_to_server 1@ port 2@
    0AC9: free_allocated_memory 1@
ELSE
    if 8@ == 1
	then chatmsg "{0066ff}Foloseste: {FFFFFF}/reconnect <NumeleTau>" 0x0066ff
    end
    if 8@ == 2
    then chatmsg "{0066ff}Use: {FFFFFF}/reconnect <YourName>" 0x0066ff
   	end
END
SAMP.CmdRet()

Dacă la asta te referi

 

On 1/9/2024 at 12:29 AM, AkenX said:
:ifish1
SAMP.IsCommandTyped(20@)
if 8@ == 1
then 0AF9: samp say_msg "/cw 1.Cu ce comandă pescuiesti?"
end
    
if 8@ == 2
then say "/cw 1.How you can fish?"
end

chatmsg "{00ff00}[S.I Helper] {00ff00}Prin intermediul comenzii [/fish] poti pescui"
SAMP.CmdRet()

am nevoie ca chatmsg "{00ff00}[S.I Helper] {00ff00}Prin intermediul comenzii [/fish] poti pescui" sa fie unul separat pentru limba engleză

:ifish1
SAMP.IsCommandTyped(20@)
if 8@ == 1
then 
	0AF9: samp say_msg "/cw 1.Cu ce comandă pescuiesti?
	chatmsg "{00ff00}[S.I Helper] {00ff00}Prin intermediul comenzii [/fish] poti pescui" -1
end
    
if 8@ == 2
then 
	say "/cw 1.How you can fish?"
	chatmsg "{00ff00}[S.I Helper] {00ff00}With [/fish] command you can fish." -1
end
SAMP.CmdRet()

 

 

On 1/9/2024 at 12:41 AM, AkenX said:

:lvl50
SAMP.IsCommandTyped(20@)
if
0AD4: 20@ = scan_string 20@ format "%d" 21@
then
    0B36: samp 1@ = get_player_nickname 21@
    
    if 8@ == 1
    then say "/f %s (%d) urmează să primească toate licentele. [Nivel 50+]" 1@ 21@
    end
    
    if 8@ == 2
    then say "/f %s (%d) is going to recieve all licenses. [Nivel 50+]" 1@ 21@
    end
    
else
    chatmsg "{00ff00}[S.I Helper] {7a9383}Syntax: {00bfff}[/lvl50 <ID>]" -1
end
SAMP.CmdRet()

 

Exemplu: Eu anunt pe /f  X la mine pentru toate licentele. [Nivel 50+] - sa anunte asa cum este 

                                         X la mine pentru licenta de Sailing . [Nivel 50+] - să detecteze ca e doar o licentă si să anunte X urmează să primească  licenta. [Nivel 50+]

                                         X la mine pentru licenta de Sailing, Flying . [Nivel 50+] - să detecteze ca sunt doua sau mai multe licente si să anunte X urmează să primească licentele. [Nivel 50+] 

si pentru limba engleza tot sa anunte asa te rog

Nu prea poti face lucrul asta, e destul de complicata detectia si s-ar baza ca fiecare licenta sa aibe un ID si in functie de cate id-uri introduci in sintaxa comenzii atatea licentele sa apara si fiecare licenta sa aibe un id stabilit pentru a aparea, e mai complicat de realizat.

 

On 1/9/2024 at 1:25 AM, AkenX said:

Cand folosesc /rep, sa detecteze daca am job-ul Mecanic , dar daca nu il am sa se dea /swapjob si după să se dea /refill si /repair.

:rep
SAMP.IsCommandTyped(20@)
69@ = TRUE
say "/refill"
say "/repair"
SAMP.CmdRet

Inlocuieste 69@ cu o variabila pe care o ai libera si neutilizata

 

if 69@ == TRUE
then
	0AC8: 0@ = allocate_memory_size 260
	0B75: samp get_chat_string 99 text_to 0@ prefix_to 0 color_to 0 prefix_color_to 0
	if or
		0C29: 33@ = stristr string1 0@ string2 "Nu esti Mecanic."
		0C29: 33@ = stristr string1 0@ string2 "You are not a Mechanic"
	then say "/switchjob
	end
	0AC9: free_allocated_memory 0@
	69@ = FALSE
end

Treaba asta o pui dupa acel :repeat si de asemenea inlocuieste 69@ cu aceiasi variabila folosita mai sus in comanda

 

 

On 1/9/2024 at 1:25 AM, AkenX said:

Daca ai putea face un Tabel din 3 rubrici să se deschidă prin comanda /setsi,

:setsi
alloc 0@ 128
format 0@ "Los Santos School Instructors%cLas Venturas School Instructors%cSan Fierros School Instructors" 10 10
SAMP.ShowDialog(4444, " ", 0@, "EXIT", "", 2)
free 0@
SAMP.CmdRet()

 

if SAMP.DialogRespond(4444, 1@, 2@, 0)
then
	if 1@ == 1
	then 
		if 2@ == 0
		then
			0AF1: write_int 1 to_ini_file "cleo\S.I_Helper.ini" section "Faction" key "Value"
			chatmsg "Ai ales LSSI." -1
		end

		if 2@ == 1
		then 
			0AF1: write_int 2 to_ini_file "cleo\S.I_Helper.ini" section "Faction" key "Value"
			chatmsg "Ai ales LVSI." -1
		end

		if 2@ ==2
		then
			0AF1: write_int 3 to_ini_file "cleo\S.I_Helper.ini" section "Faction" key "Value"
			chatmsg "Ai ales SFSI." -1
		end
	else SAMP.CloseDialog(0)
	end
end

Asta o pui tot dupa :repeat

 

Pentru a detecta factiunea de vei folosi de valoarea care se salveaza in fisier, adica o vei citi din el de fiecare data cand vrei sa faci diferenta intre SI-uri cu

0AF0: 0@ = get_int_from_ini_file "cleo\S.I_Helper.ini" section "Faction" key "Value"

if 0@ == 0
then
	LSSI...
end

if 0@ == 1
then
	LVSI...
end

if 0@ == 2
then
	SFSI...
end
On 1/9/2024 at 1:25 AM, AkenX said:

Cand mă loghez si modul e setat in limba romana chatmsg-ul să fie in limba setată

wait 1500

0AF0: 0@ = get_int_from_ini_file "cleo\S.I_Helper.ini" section "X" key "Y"
if 8@ == 1
then
	chatmsg "{00ff00}[S.I Helper]: {7a9383}Mod de {0066ff}AkenX {7a9383}pentru {00ff00}School Instructor {7a9383}s-a încărcat." -1
    chatmsg "{00ff00}[S.I Helper]: {7a9383}Foloseste {0066ff}[/sih]{7a9383}." -1
end
if 8@ == 2
then
	chatmsg "{00ff00}[S.I Helper]: {7a9383}Mod by {0066ff}AkenX {7a9383}for {00ff00}School Instructor {7a9383}has loaded." -1
	chatmsg "{00ff00}[S.I Helper]: {7a9383}Use {0066ff}[/sih]{7a9383}." -1
end

Inlocuieste X si Y cu numele sectiunii si numele cheiei care tine acea valoare pentru limba modului

 

 

On 1/9/2024 at 1:25 AM, AkenX said:

Inca ceva dacă ai putea face și Anuntul pentru fvr in limba engleză ti-as multumi cu orice

if 12@ == 1
then
	if 8@ == 1
	then say "/f Dau FVR în 5 secunde."
	end
	if 8@ == 2
	then say "/f I give an FVR in 5 seconds."
	end
	wait 5000
	if 12@ == 1
	then say "/fvr"
	end
	12@ = 0
end

 

On 1/9/2024 at 1:25 AM, AkenX said:

iar daca cinvea scrie pe /f : nu da fvr, asteaptă, diferite mesaje de genu ce să nu dau fvr script-ul pentru fvr să se oprească

Nu poti automat treaba asta, tot printr-o comanda prin care sa setezi 12@ pe 0, deoarece ti-am facut eu adaptarea necesare mai sus astfel incat dupa cele 5 secunde de asteptare de la anunt sa mai verifice odata daca FVR-ul nu a fost cumva oprit din alta sursa.

 

:sfvr
12@ = 0
chatmsg "FVR oprit" -1
SAMP.CmdRet

 

Link to comment
Share on other sites

Script-ul pentru /switchjob nu functioneaza, 

 

Vreau sa adaug un copy-chat in mod iar daca script-ul copy-chatului este mai sus de: 

:repeat   
wait 0
0AF0: 8@ = get_int_from_ini_file "CLEO\S.I. Helper.ini" section "LIMBA" key "Language"
if 0B3C: samp is_dialog_responded id 8019 button 2@ list_item 3@ input_text 0
then
if 0AB0: is_key_pressed 27 
then
0B47: samp close_current_dialog_with_button 1@ 
else if 0039: 2@ == 1 
then 
if 3@ == 0
then
0AF1: write_int 1 to_ini_file "CLEO\S.I. Helper.ini" section "LIMBA" key "Language"
chatmsg "{00ff00}[S.I Helper]: {7a9383}Limba {002B7F}ro{FFFF00}mâ{CE1126}nă {7a9383}a fost setată!" -1
end
if 3@ == 1
then
0AF1: write_int 2 to_ini_file "CLEO\S.I. Helper.ini" section "LIMBA" key "Language"
chatmsg "{00ff00}[S.I Helper]: {7a9383}The {008080}english {7a9383}language has been set!" -1
end
if 3@ == 2
then
end
end
end
end

 

Acesta functioneaza dar daca e mai jos de :repeat nu functioneaza ai putea sa ma ajuti?

 

//0b34: "copy" @rr

if 0AAB:   file_exists "CLEO\copytext.cs"
then
    chatmsg "{27AE60}[CopyText_K] {FF5733}S-a gãsit un script copytext.cs vechi, vã rugãm sã-l stergeti." -1
    0A93: end_custom_thread
end

 

0BE3: raknet setup_incoming_rpc_hook @chatline
2@ = 100
alloc 0@ 256
alloc 1@ 256

while true
wait 0

if SAMP.ChatInputOpened()
then
                    
    if key_down 18
    then
    
        if key_down 37
        then
            if 2@ > 1
            then
                4@ = 1
                2@ -= 1
                0C11: memset destination 0@ value 0 size 256
                SAMP.GetChatString(2@, 0@, 0, 0 ,0)
               
                0C11: memset destination 1@ value 0 size 256      
                0ab1: call @dl_color 2 0@ 1@ | 1@
                SAMP.SetChatInputText(1@)
                
                repeat
                wait 0
                until not key_down 37
            end
        end
        
        if key_down 39
        then
            if 2@ < 99
            then
                2@ += 1 
                0C11: memset destination 0@ value 0 size 256
                SAMP.GetChatString(2@, 0@, 0, 0 ,0)

                0C11: memset destination 1@ value 0 size 256
                
                0ab1: call @dl_color 2 0@ 1@ | 1@
                SAMP.SetChatInputText(1@)
                repeat
                wait 0
                until not key_down 39
            end
        end
        
    end
    
else
    2@ = 100
    4@ = 0
end

END

:rr
0A92: create_custom_thread "copytext_k.cs"
0A93: end_custom_thread
SAMP.CmdRet()

:dl_color {0@ - chat string | 1@ - buffer}
0C17: 31@ = strlen 0@
0085: 29@ = 0@
alloc 27@ 2
30@ = 0
while 803b: not 30@ == 31@
    0A8D: 28@ = read_memory 29@ size 1 virtual_protect 1

    if 28@ == 123
    then
        29@ += 7
        0A8D: 28@ = read_memory 29@ size 1 virtual_protect 1
        if not 28@ == 125
        then
            29@ -= 7  
        else
            29@ += 1
            0A8D: 28@ = read_memory 29@ size 1 virtual_protect 1 
            30@ += 8   
        end
    end
    0C11: memset destination 27@ value 0 size 2
    0a8c: write_memory 27@ size 1 value 28@ virtual protect 1
    0C15: strcat destination 1@ source 27@       
    29@ += 1 
    30@ += 1
end
free 27@
ret 1 1@

:chatline
0BE5: raknet 31@ = get_hook_param PARAM_PACKETID
if 31@ == RPC_SCRClientMessage
then
    if 4@ == 1
    then
        2@ -= 1
    end
end
0BE0: raknet hook_ret true

 

As vrea sa termin acuma mod-ul si daca ma poti ajuta sa creezi un script legat de test log

in .ini am aceste texte: 

[CANDIDAT]
CandidatName=
CandidatID=

 

[STOPLESSON]
Status=1

 

[LIMBA]
Language=1

 

Dupa aceste texte as vrea sa fie sectiunile

[Regulament Test 1]
Rand1=" "
Rand2=" "
Rand3=" "
Rand4=" "
Rand5=" "

 

cand dai /trule sa se afiseze tot ce ai scris intre " "

 

EN:

 

[Test Rules 1]
Row1=" "
Row2=" "
Row3=" "
Row4=" "
Row5=" "

 

iar intrebarile sa fie cu /t1 - /t15

 

[Intrebare1]
Rand1=" "
Rand2=" "
Raspuns=" "

 

[Question1]
Row1=" "
Row2=" "
Answer=" "

 

[Intrebare2]
Rand1=" "
Rand2=" "
Raspuns=" "

 

[Question2]
Row1=" "
Row2=" "
Answer=" "

 

[Intrebare3]
Rand1=" "
Rand2=" "
Raspuns=" "

 

[Question3]
Row1=" "
Row2=" "
Answer=" "

 

[Intrebare4]
Rand1=" "
Rand2=" "
Raspuns=" "

 

[Question4]
Row1=" "
Row2=" "
Answer=" "

 

[Intrebare5]
Rand1=" "
Rand2=" "
Raspuns=" "

 

[Question5]
Row1=" "
Row2=" "
Answer=" "

 

[Intrebare6]
Rand1=" "
Rand2=" "
Raspuns=" "

 

[Question6]
Row1=" "
Row2=" "
Answer=" "

 

[Intrebare7]
Rand1=" "
Rand2=" "
Raspuns=" "

 

[Question7]
Row1=" "
Row2=" "
Answer=" "

 

[Intrebare8]
Rand1=" "
Rand2=" "
Raspuns=" "

 

[Question8]
Row1=" "
Row2=" "
Answer=" "

 

[Intrebare9]
Rand1=" "
Rand2=" "
Raspuns=" "

 

[Question9]
Row1=" "
Row2=" "
Answer=" "

 

[Intrebare10]
Rand1=" "
Rand2=" "
Raspuns=" "

 

[Question10]
Row1=" "
Row2=" "
Answer=" "

 

[Intrebare11]
Rand1=" "
Rand2=" "
Raspuns=" "

 

[Question11]
Row1=" "
Row2=" "
Answer=" "

 

[Intrebare12]
Rand1=" "
Rand2=" "
Raspuns=" "

 

[Question12]
Row1=" "
Row2=" "
Answer=" "

 

[Intrebare13]
Rand1=" "
Rand2=" "
Raspuns=" "

 

[Question13]
Row1=" "
Row2=" "
Answer=" "

 

[Intrebare14]
Rand1=" "
Rand2=" "
Raspuns=" "

 

[Question14]
Row1=" "
Row2=" "
Answer=" "

 

[Intrebare15]
Rand1=" "
Rand2=" "
Raspuns=" "

 

Raspuns=" " sau Answer=" " să fie chatmsg vizibil doar pentru cel ce detine modul


Respect!

Link to comment
Share on other sites

5 hours ago, AkenX said:

Acesta functioneaza dar daca e mai jos de :repeat nu functioneaza ai putea sa ma ajuti?

Nu functioneaza pentru ca functiile din scriptul respectiv functioneaza doar in bucla, de aceea trebuie sa fie acolo

 

6 hours ago, AkenX said:

cand dai /trule sa se afiseze tot ce ai scris intre " "

:trule
if 69@ == FALSE
then 69@ = TRUE
end
SAMP.CmdRet
if 69@ == TRUE
then
	alloc 0@ 256
	if 8@ == 0
	then 0AF4: 0@ = read_string_from_ini_file "cleo\S.I_Helper.ini" section "RegulamentTest1" key "Rand1"
	else 0AF4: 0@ = read_string_from_ini_file "cleo\S.I_Helper.ini" section "TestRules1" key "Row1"
	end
	say "/cw 1. %s" 0@
	wait 2000

	if 8@ == 0
	then 0AF4: 0@ = read_string_from_ini_file "cleo\S.I_Helper.ini" section "RegulamentTest1" key "Rand2"
	else 0AF4: 0@ = read_string_from_ini_file "cleo\S.I_Helper.ini" section "TestRules1" key "Row2"
	end
	say "/cw 2. %s" 0@
	wait 2000

	if 8@ == 0
	then 0AF4: 0@ = read_string_from_ini_file "cleo\S.I_Helper.ini" section "RegulamentTest1" key "Rand3"
	else 0AF4: 0@ = read_string_from_ini_file "cleo\S.I_Helper.ini" section "TestRules1" key "Row3"
	end
	say "/cw 3. %s" 0@
	wait 2000

	if 8@ == 0
	then 0AF4: 0@ = read_string_from_ini_file "cleo\S.I_Helper.ini" section "RegulamentTest1" key "Rand4"
	else 0AF4: 0@ = read_string_from_ini_file "cleo\S.I_Helper.ini" section "TestRules1" key "Row4"
	end
	say "/cw 4. %s" 0@
	wait 2000

	if 8@ == 0
	then 0AF4: 0@ = read_string_from_ini_file "cleo\S.I_Helper.ini" section "RegulamentTest1" key "Rand5"
	else 0AF4: 0@ = read_string_from_ini_file "cleo\S.I_Helper.ini" section "TestRules1" key "Row5"
	end
	say "/cw 5. %s" 0@
	
	free 0@
	69@ = FALSE
end

Inlocuieste 69@ cu o variabila pe care o ai libera. Ce e in al doilea chenar pui dupa :repeat, ce in primul pui dupa ultima comanda. Modifica din Regulament Test 1 si Test Rules 1 sa fie legat

 

 

Pentru partea de intrebari si raspunsuri te las pe tine sa iti pui imaginea la creatie dupa exemplul urmator tu urmand sa faci restul de 14 comenzi

:t1
alloc 0@ 256
0C11: memset destination 0@ value 0 size 256
alloc 1@ 256
0C11: memset destination 1@ value 0 size 256
alloc 2@ 256
0C11: memset destination 2@ value 0 size 256

if 8@ == 0
then 
	0AF4: 0@ = read_string_from_ini_file "cleo\S.I_Helper.ini" section "Intrebare1" key "Rand1"
	0AF4: 1@ = read_string_from_ini_file "cleo\S.I_Helper.ini" section "Intrebare1" key "Rand2
	0AF4: 2@ = read_string_from_ini_file "cleo\S.I_Helper.ini" section "Intrebare1" key "Raspuns"
else 
	0AF4: 0@ = read_string_from_ini_file "cleo\S.I_Helper.ini" section "Question1" key "Row1"
	0AF4: 1@ = read_string_from_ini_file "cleo\S.I_Helper.ini" section "Question1" key "Row1"
	0AF4: 2@ = read_string_from_ini_file "cleo\S.I_Helper.ini" section "Question1" key "Answer"
end

0C17: 3@ = strlen 0@
if 3@ > 0
then say "/cw 1. %s" 0@
end

0C17: 3@ = strlen 1@
if 3@ > 0
then say "/cw %s" 1@
end

0C17: 3@ = strlen 2@
if 3@ > 0
then chatmsg "R: %s" -1 2@
else 
	if 8@ == 0
	then chatmsg "Raspunsul la intrebarea 1 nu e setat." -1
	else chatmsg "Answer for question 1 is not set." -1
	end
end

free 0@
free 1@
free 2@
SAMP.CmdRet

 

Link to comment
Share on other sites

Ms mult, dar nu inteleg de ce nu functioneaza nici /trule - /t1, text-ul pe /trules nu este afisat deloc, dar cand folosesc /t1 mi-se afiseaza R: care eu l-am setat sa imi arate un raspuns si intrebarea nu este afisata apare doar /cw 1.

Edited by AkenX
Link to comment
Share on other sites

5 hours ago, AkenX said:

Ms mult, dar nu inteleg de ce nu functioneaza nici /trule - /t1, text-ul pe /trules nu este afisat deloc, dar cand folosesc /t1 mi-se afiseaza R: care eu l-am setat sa imi arate un raspuns si intrebarea nu este afisata apare doar /cw 1.

Daca nu functioneaza /t1 inseamna ca ceva nu e corect, fie numele fisierului .ini, fie numele sectiunii, fie numele cheiei de indenficare

Link to comment
Share on other sites

/t1 am rezolvat, dar /trule tot nu merge si am incercat diferite metode si tot nu il pot rezolva

Edited by AkenX
Link to comment
Share on other sites

On 1/13/2024 at 4:39 PM, AkenX said:

/t1 am rezolvat, dar /trule tot nu merge si am incercat diferite metode si tot nu il pot rezolva

Partea cu afisarea mesajelor pe /cw ai facut-o imediat dupa :repeat ?

Link to comment
Share on other sites

Am vb cu Stoony ( Liderul Los Santos School Instructor ) si mi-a zis ca sa iti dau cmd-ul sa il verifici de virusi si dupa daca e curat sa ii trimiti un mesaj, iar tot o data rezolvi si problema: [nu ai voie sa distribui moduri din afara sectiunii de moduri]

+ daca mai are erori prin el sa le rezolvi te rog!

Edited by Madalin
Link to comment
Share on other sites

Programatorul nu e pus să verifice CMD-urile de keyloggere/viruși la cerere. Doar membrii cu un grad pe comunitate pot posta moduri (Donator, VIP, Admin, Moderator, etc.), poți vorbi cu Stoony să-l încarce și îl va verifica un membru Mods Team.

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.