Whatta? Az egész addolás valami kavalkád, nem is érdemes többet belőle kiemelni
- get_time("addons/kik_addoltak.log", filename, 99) 
Return fölösleg
- public halal() { 
-   
- 	new attacker = read_data(1) 
- 	new victim = read_data(2) 
-   
- 	if(attacker == victim) 
- 		return PLUGIN_HANDLED 
-   
- 	pont[attacker] ++ 
-   
- 	return PLUGIN_HANDLED 
- } 
Nem kell mindennek új tömb, 1 és konstans
- new v_awp1[] = "models/assimovok/assimovkek.mdl" 
- new v_awp2[] = "models/assimovok/assimovfekete.mdl" 
- new v_awp3[] = "models/assimovok/assimovsarga.mdl" 
- new v_awp4[] = "models/assimovok/assimovpiros.mdl" 
szerver indexén fut , aztán játékos index? meg még return?
- set_task(15.0, "AWPmessage", 0, _, _, "b") 
-   
- public AWPmessage(id) {  
-   
- 	ColorChat(0, GREEN, "[Információ] ^1Hogy megtekintsd az Asiimov AWP-ket írd be /awp!") 
- 	return PLUGIN_HANDLED; 
- } 
Mentésnél,betöltésnél returnozás kiemelten probléma (de hát ugye deroid régi pluginjaiból könnyű copy-paste, ugye így terjed a hülyeség)
- public mentes(id)  
- { 
- 	new vaultkey[64],vaultdata[256], name[32] 
- 	get_user_name(id, name, 31) 
- 	format(vaultkey,63,"%s-AWPSKINEK", name) 
- 	format(vaultdata,255,"%d", pont[id]) 
- 	nvault_set(vault,vaultkey,vaultdata) 
- 	return PLUGIN_CONTINUE 
- } 
- public betoltes(id)  
- {  
- 	new vaultkey[64],vaultdata[256], name[32] 
- 	get_user_name(id, name, 31) 
- 	format(vaultkey,63,"%s-AWPSKINEK", name) 
- 	nvault_get(vault,vaultkey,vaultdata,255) 
- 	pont[id] = str_to_num(vaultdata) 
- 	return PLUGIN_CONTINUE; 
- } 
Prefixet többször használod,de definiáltad konstans helyett.
- #define PREFIX "[Szerver]"// itt birod alitani a szervered Prefixedet 
Sokszor nem is használod, mikor %s van
- ColorChat(id, BLUE, "^1%s ^4==> ^3Te mint tulajdonos addoltál magadnak!") 
- } 
- else 
- { 
- ColorChat(id, RED, "^1%s^4==> ^3Neked nincs jogosultságod!") 
Felesleges if-ek, de nem gáz annyira, csak ha már itt járok tanuljatok belőle:
- if(pont[id] < 50)//50 pont 
- 	{ 
- 		formatex(szText, charsmax(szText), "\r[Szerver] \yKék Assimov \r| \y[%d/50]",pont[id]) 
- 		menu_additem(menu, szText, "1", 0) 
- 	} 
- 	else 
- 	menu_additem(menu, "\r[Szerver] \dKék Assimov \r| \y[Feloldva]", "1", 0) 
A helyesírásba is belekötnék, mint nyelvtan náci vagyok. Általános iskola 2. osztály óta helyesen írok.
- ColorChat(id, GREEN, "%s ^1Sikeresen Kivárasztodtad", PREFIX) 
- 			} 
-   
- 			else ColorChat(id, GREEN, "%s ^1Tul Kevés pontod van",PREFIX) 
Fegyverváltásnál a fegyvert ha ugyanaz minek ellenőrizzük 100x???
- public fegyvervaltas(id) { 
- 	new weapon = get_user_weapon(id) 
-   
- 	//awp 
- 	if(awp[id] == 1 && weapon == CSW_AWP) 
- 	{ 
- 		set_pev(id, pev_viewmodel2, v_awp1) 
- 	} 
- 	if(awp[id] == 2 && weapon == CSW_AWP) 
- 	{ 
- 		set_pev(id, pev_viewmodel2, v_awp2) 
- 	} 
- 	if(awp[id] == 3 && weapon == CSW_AWP) 
- 	{ 
- 		set_pev(id, pev_viewmodel2, v_awp3) 
- 	} 
- 	if(awp[id] == 4 && weapon == CSW_AWP) 
- 	{ 
- 		set_pev(id, pev_viewmodel2, v_awp4) 
- 	} 
- } 
Ehhez gyors bemutató, mert mindenki összevissza if-ezik sajnos: (persze a v_awp1 stb. dolgoknak nem külön tömbbe kéne lenni,mint mondtam.)
- public fegyvervaltas(id) { 
- 	new weapon = get_user_weapon(id) 
- 	if(weapon == CSW_AWP) { 
- 		switch(awp[id]) { 
- 			case 1: set_pev(id, pev_viewmodel2, v_awp1) 
- 			case 2: set_pev(id, pev_viewmodel2, v_awp2) 
- 			case 3: set_pev(id, pev_viewmodel2, v_awp3) 
- 			case 4: set_pev(id, pev_viewmodel2, v_awp4) 
- 		} 
- 	} 
- } 
Inkább authorizednél ellenőrizzünk:
- public client_connect(id) 
- { 
- 	betoltes(id) 
- }