În acest tutorial ve-ţi vedea cum se face un meniu de cstrike prin
comenzi în chat sau consola !
Vă
voi spune în cel mai simplu mod ,
respectiv făcut cu amxx studio menu
generator . După aceea vă ve-ţi
creea meniurile singuri !
Prima data intrăm în Amxx Studio .
Dăm
sus la Generators -> Menu Generator .
Alegem a 3-a
variantă -> " Simple Menu " apoi dăm next !
Ne va arata o
fereastră în care ne contruim propriul nostru meniu !
Şi zicem
Quote:
1.
Dă restart la server
Dar eu vreau 1 colorat şi dă restart la
server cu alb .. cum fac ?
Simplu !
Prima metodă , dar sunt
posibile greşeli !
Selctăm 1. cu click 2 şi dăm sus pe Roşu .
A
doua metodă : Uitaţi urmatoarele coduri care le puneţi în show_menu :
/w
= white = alb
/y = yellow = galben
/r = red = rosu
/d = d gray
= gri
Deci eu am scris :
Quote:
1. Da restart
la server ! ( admin only )
2. Salveaza planeta ! Omoarate !
3.
IESI DIN MENIU
Dăm apoi next .
Ne va apărea :
1.
Fiind
Handled Keys . Ce sunt astea ? Sunt butoanele meniului 123 sunt 3
butoane.
Deci sunt urmate de cifre consecutive ultima fiind numărul de
butoane
!
2. Menu Name - este titlul meniului pe care l-am creeat . Eu
i-am pus numele de Simple menu !
3.
Add comment = adaugă
comentarii la meniu
Noi îl bifăm deşi vă voi explica eu .
Register
in plugin_int - înregistrează meniul în Quote:
public plugin_int
Îl
bifăm dacă avem nevoie doar de un simplu register_clcmd .
Apoi dăm
generate !
Ce observăm ?
- Ne-a apărut între #define -uri
Quote:
#define
KeysSimple Menu (1<<0)|(1<<1)|(1<<2) // Keys: 123
Sunt
butoanele meniului ! ( Respectiv 3 )
Dacă vrem patru :
Quote:
#define
KeysSimpleMenu (1<<0)|(1<<1)|(1<<2)|(1<<3)
Atentie
! 0 este primul buton !
- Ne-a înregistat meniul în plugin_int !
Quote:
register_menucmd(register_menuid("Simple
Menu"), KeysSimpleMenu, "PressedSimpleMenu")
Explicat :
Quote:
register_menucmd(register_menuid("Titlul
meniului"), , Ce aveam noi in define de mai sus "Publicul")
De
asemenea ne-a apărut un public ??
Quote:
public
ShowSimpleMenu(id)
Este publicul register_clcmd-ului !
Ne
ducem din nou în plugin_int şi adăugăm
Quote:
register_clcmd("comanda","publicul")
Deci
eu adaug :
Quote:
register_clcmd("say
/simplemenu","simplemenu")
Şi modific numele publicului
Quote:
public
ShowSimpleMenu(id)
în
Quote:
public simplemenu(id)
-
Ne-a mai apărut în acest public Quote:
show_menu(id,
KeysSimpleMenu,
" \r[/color]1. D\wa restart la server ! \d( admin only
) ^n\r2.
S\walveaza planeta ! Omoarate ! ^n\r3. \wIESI \yDIN MENIU ^n",
-1,
"Simple Menu") // Display menu[/color]
Ei bine v-am zis că a
greşit Amxx Studio ?
V-am spus codurile mai sus uitaţi-vă !
După
ce ne-am corectat :
Quote:
show_menu(id,
KeysSimpleMenu,"\r1.
\wDa restart la server ! \d( admin only ) ^n\r2.
\wSalveaza planeta !
Omoarate ! ^n\r3. \wIESI \yDIN MENIU ^n", -1,
"Simple Menu") //
Display menu[/color]
La mod general era :
Quote:
show_menu(id,
Ce aveam noi în define, "PRIMUL BUTON ^n AL DOILEA BUTON ^nAL 3-lea
BUTON ^n", -1, "Simple Menu") // Display menu
Ce face ^n ?
Ca
un fel de Enter în word ! Aliniat nou !
- Ne-a apărut Quote:
public
PressedSimpleMenu(id, key) {
La modul general :
Quote:
public
ce aveam noi în publicul din plugin_int (respectiv din register_menu)
(id, key) {
Quote:
switch (key) {
case 0: { //
cazul 1
}
case 1: { // cazul 2
}
case 2: { // cazul 3
}
}
}
Deci
Code:
case
0: { // 1
if(!is_user_admin) return PLUGIN_HANDLED; // numai adminii
au acces la aceasta comanda
server_cmd("sv_restart 1") // se da
restart intr-o secunda
}
case 1: { // 2
client_cmd(id,"kill")
// jucatorul care alege aceasta optiune se
omoara ; nu avem nevoie
de if-uri pentru ca comanda kill se poate
executa doar cand esti viu
Wink
}
case 2: { // 3
return PLUGIN_HANDLED // ca meniul sa se
inchida folosim return PLUGIN_HANDLED
}
}
}
Sper
că aţi înţeles !
HF & GL ~~
comenzi în chat sau consola !
Vă
voi spune în cel mai simplu mod ,
respectiv făcut cu amxx studio menu
generator . După aceea vă ve-ţi
creea meniurile singuri !
Prima data intrăm în Amxx Studio .
Dăm
sus la Generators -> Menu Generator .
Alegem a 3-a
variantă -> " Simple Menu " apoi dăm next !
Ne va arata o
fereastră în care ne contruim propriul nostru meniu !
Şi zicem
Quote:
1.
Dă restart la server
Dar eu vreau 1 colorat şi dă restart la
server cu alb .. cum fac ?
Simplu !
Prima metodă , dar sunt
posibile greşeli !
Selctăm 1. cu click 2 şi dăm sus pe Roşu .
A
doua metodă : Uitaţi urmatoarele coduri care le puneţi în show_menu :
/w
= white = alb
/y = yellow = galben
/r = red = rosu
/d = d gray
= gri
Deci eu am scris :
Quote:
1. Da restart
la server ! ( admin only )
2. Salveaza planeta ! Omoarate !
3.
IESI DIN MENIU
Dăm apoi next .
Ne va apărea :
1.
Fiind
Handled Keys . Ce sunt astea ? Sunt butoanele meniului 123 sunt 3
butoane.
Deci sunt urmate de cifre consecutive ultima fiind numărul de
butoane
!
2. Menu Name - este titlul meniului pe care l-am creeat . Eu
i-am pus numele de Simple menu !
3.
Add comment = adaugă
comentarii la meniu
Noi îl bifăm deşi vă voi explica eu .
Register
in plugin_int - înregistrează meniul în Quote:
public plugin_int
Îl
bifăm dacă avem nevoie doar de un simplu register_clcmd .
Apoi dăm
generate !
Ce observăm ?
- Ne-a apărut între #define -uri
Quote:
#define
KeysSimple Menu (1<<0)|(1<<1)|(1<<2) // Keys: 123
Sunt
butoanele meniului ! ( Respectiv 3 )
Dacă vrem patru :
Quote:
#define
KeysSimpleMenu (1<<0)|(1<<1)|(1<<2)|(1<<3)
Atentie
! 0 este primul buton !
- Ne-a înregistat meniul în plugin_int !
Quote:
register_menucmd(register_menuid("Simple
Menu"), KeysSimpleMenu, "PressedSimpleMenu")
Explicat :
Quote:
register_menucmd(register_menuid("Titlul
meniului"), , Ce aveam noi in define de mai sus "Publicul")
De
asemenea ne-a apărut un public ??
Quote:
public
ShowSimpleMenu(id)
Este publicul register_clcmd-ului !
Ne
ducem din nou în plugin_int şi adăugăm
Quote:
register_clcmd("comanda","publicul")
Deci
eu adaug :
Quote:
register_clcmd("say
/simplemenu","simplemenu")
Şi modific numele publicului
Quote:
public
ShowSimpleMenu(id)
în
Quote:
public simplemenu(id)
-
Ne-a mai apărut în acest public Quote:
show_menu(id,
KeysSimpleMenu,
" \r[/color]1. D\wa restart la server ! \d( admin only
) ^n\r2.
S\walveaza planeta ! Omoarate ! ^n\r3. \wIESI \yDIN MENIU ^n",
-1,
"Simple Menu") // Display menu[/color]
Ei bine v-am zis că a
greşit Amxx Studio ?
V-am spus codurile mai sus uitaţi-vă !
După
ce ne-am corectat :
Quote:
show_menu(id,
KeysSimpleMenu,"\r1.
\wDa restart la server ! \d( admin only ) ^n\r2.
\wSalveaza planeta !
Omoarate ! ^n\r3. \wIESI \yDIN MENIU ^n", -1,
"Simple Menu") //
Display menu[/color]
La mod general era :
Quote:
show_menu(id,
Ce aveam noi în define, "PRIMUL BUTON ^n AL DOILEA BUTON ^nAL 3-lea
BUTON ^n", -1, "Simple Menu") // Display menu
Ce face ^n ?
Ca
un fel de Enter în word ! Aliniat nou !
- Ne-a apărut Quote:
public
PressedSimpleMenu(id, key) {
La modul general :
Quote:
public
ce aveam noi în publicul din plugin_int (respectiv din register_menu)
(id, key) {
Quote:
switch (key) {
case 0: { //
cazul 1
}
case 1: { // cazul 2
}
case 2: { // cazul 3
}
}
}
Deci
Code:
case
0: { // 1
if(!is_user_admin) return PLUGIN_HANDLED; // numai adminii
au acces la aceasta comanda
server_cmd("sv_restart 1") // se da
restart intr-o secunda
}
case 1: { // 2
client_cmd(id,"kill")
// jucatorul care alege aceasta optiune se
omoara ; nu avem nevoie
de if-uri pentru ca comanda kill se poate
executa doar cand esti viu
Wink
}
case 2: { // 3
return PLUGIN_HANDLED // ca meniul sa se
inchida folosim return PLUGIN_HANDLED
}
}
}
Sper
că aţi înţeles !
HF & GL ~~