Securizare mod XP

Tutoriale scripting, cod si portiuni de cod.

Moderators: Moderatori ajutatori, Moderatori, Echipa eXtreamCS.com

LordOfNothing
Membru, skill +1
Membru, skill +1
Posts: 387
Joined: 19 Jul 2013, 15:51
Detinator Steam: Nu
Reputatie: Restrictie PM
Has thanked: 11 times
Been thanked: 35 times

16 May 2014, 09:30

Code: Select all

public fwClientUserInfoChanged(id,buffer) //indexul nostru este id{
   
   if (!is_user_connected(id)) { //daca nu este conectat returnam FMRES_IGNORED
      return FMRES_IGNORED;
   }
   
   static val[32]//variabila statica val(vector) cu 32 de pozitii
   static name[32]//variabila statica name(vector) cu 32 de pozitii.
   get_user_name(id, name, 31) //detectam numele jucatorului
   engfunc(EngFunc_InfoKeyValue, buffer, "name", val, sizeof val- 1)
   
   if (equal(val, name)) {
      return FMRES_IGNORED
   }
   engfunc(EngFunc_SetClientKeyValue, id, buffer, "name", name) //ii setam vechiul nume
   console_print(id,"Name change is disabled on this server.")//ii scriem un mesaj de avertizare.
   
   return PLUGIN_HANDLED
}
Nar fi mai bine , cand isi schimba numele, ii dai XP, LEVEL 0 si dupaia faci un set_task de 0.75 secunde cu functia "LoadData" ( daca asa se numeste functia de incarcare a datelor )

Code: Select all

1.Faceti un bool g_XPLoaded[ 33 ] caruia ii setati valoarea false atunci cand un jucator intra pe server
2.Atunci cand primeste spawn, daca valoarea lui g_XPLoaded este falsa, atunci se incarca datele din nvault si se schimba valoarea variabilei in true.
3.La deconectarea jucatorului, datele se vor salva doar daca valoarea lui g_XPLoaded este adevarata, altfel exista riscul sa fie suprascrise aiurea datele.
Kronos ceva gen:

Code: Select all

new bool:g_XPLOAD[33];

public client_putinserver( id )
{
	g_XPLOAD[ id ] = false;
}

public event_spawn( id )
{
	if( !g_XPLOAD [ id ] )
	{
		LoadData( id );
		g_XPLOAD [ id ] = true;
	}
}

public client_disconnect( id )
{
	if( g_XPLOAD[ id ] )
	{
		SaveData( id );
	}
}
Hamlet:

Nu ai mentionat nimic in tutorialul tau despre plugin_end, nvault cloase :[]
Post Reply

Return to “Scripting”

  • Information
  • Who is online

    Users browsing this forum: No registered users and 9 guests