Hun3Doara.3XForum.Ro
Forumul Hunedoarei
|
Lista Forumurilor Pe Tematici
|
Hun3Doara.3XForum.Ro | Inregistrare | Login
POZE HUN3DOARA.3XFORUM.RO
Nu sunteti logat.
|
Nou pe simpatie: alexxandra Profile
 | Femeie 24 ani Timis cauta Barbat 26 - 59 ani |
|
s1nK
Moderator
 Inregistrat: acum 19 ani
Postari: 112
|
|
Ei bine sa zicem ca vrei ca atunci cand intra un jucator pe server cu numele "empty" sa primeasca kick . Iti voi explica mai departe cum se face Deci trebuie sa citesti ce ti-am zis mai sus . Sper ca ai inteleg ca actiunile asupra unui jucator care se conecteaza pe server se face intr-un public cu numele de public client_connect Deci pana acuma ai asa:
Code:
public client_connect(id) |
Sa nu uiti acoladele la inceput si sfarsit . Ai asa:
Code:
public client_connect(id)
{
} |
Ei bine acuma problema este cui trebuie sa executi actiunea . Trebuie sa declari o variabila . Asta se face asa :
Acuma : new este o functie de amxmodx pe care nu trebuie sa-ti dau explicatie la ce foloseste name este numele variabilei . in [] am pus 32, asta inseamna ca "name" poate sa inregistreze 32 de nume diferite Mai departe trebuie sa citesti numele jucatorului . Uite cum
Code:
get_user_name(index,numele variabilei,31 ) |
index reprezinta basically cui sa faci actiunea ; sus la public ai pus intre paranteze id deci va fi index inlocuit cu id numele variabile : mai sus ai pus new name, deci numele variabilei va fi inlocuit cu name si apoi vine 31 Totul arata asa:
Code:
get_user_name(id,name,31) |
Tot code-ul pana acuma arata asa
Code:
public client_connect(id)
{
new name[32]
get_user_name(id,name,31)
} |
Mai departe trebuie sa punem o conditie, daca numele jucatorului care se conecteaza este "empty" acesta trebuie sa primeasca kick Si punem asa :
Code:
if(equal(name, "empty")) |
if = daca equal = egal cu In paranteza am pus name, Player ; ei bine mai sus am citit numele jucatorului prin get_user_name si variabila a fost name deci acum in conditie trebuie sa citeasca ce am declarat empty reprezinta numele interzis Mai departe trebuie sa punem in plugin ce sa se intample cu cel care are numele empty cand se conecteaza Trebuie sa adaugam o functie pe care sa o executa serverul Cred ca stiti foarte bine ca daca aveti un server prin new game fara moduri, ca sa dati kick la un jucator folosesti kick name sau #userid Ei bine este mai simplu sa folosim acuma userid Pe serverul normal foloseai intai in consola : users si apoi vedeai ce userid avea fisiecare si foloseai kick #15 de ex Ei bine la noi in plugin trebuie sa facem acelasi lucru Ca sa primeasca kick cum am mai zis trebuie ca serverul sa faca asa Si se face asa:
Code:
server_cmd("comanda si cui sa o faca") |
Desigur trebuie sa adaugi in plugin sa citeasca si userid ; no sa mai adaug un new userid si mai departe ; o sa simplific lucrurile
Code:
server_cmd("kick #%d" , get_user_userid(id)) |
server_cmd stiti ce face ca tocmai v-am spus kick stiti # reprezinta codul pentru userid ; stiti voi ca la server normal :kick #15 . Tocmai v-am spus mai sus Ei bine ce este cu acel "%s" ? %s reprezinta un fel de index, este o prescurtare pentru ceva care ai declarat in plugin deci comanda se executa intre "" si apoi am pus , get_user_userid(id) get_user_userid reprezinta cui sa ii citeasca userid-u si (id) reprezinta indexu dintre paranteze de la public Pana Acuma aveti asa:
Code:
public client_connect(id)
{
new name[32]
get_user_name(id,name,31)
if(equal(name, "empty"))
server_cmd("kick #%d" , get_user_userid(id)) |
Ami departe trebuie sa adagam si un return ca pluginul sa poata face actiunea cum trebuie In cazul nostrum avem nevoie de un return PLUGIN_CONTINUE si o sa arate asa:
Code:
public client_connect(id)
{
new name[32]
get_user_name(id,name,31)
if(equal(name, "empty"))
server_cmd("kick #%d" , get_user_userid(id))
return PLUGIN_CONTINUE
} |
Cam atat, acum cand cineva intra pe server cu numele "empty" va primi kick Sper sa va ajute...cam complicat dar merita
_______________________________________ aGen.GamesNet.Ro xG.Cstrik3.Ro
|
|
| pus acum 19 ani |
|