1. sayfa (Toplam 1 sayfa)

Dakikalı eklenti zamanı karıştırıyor.

Gönderilme zamanı: Cmt Mar 20, 2021 11:11 pm
gönderen mr1mr2
Eklentinin mantığı "5 Dakikada bir oto xp verme" sunucuda "dinamik time eklentisi" ni kullanıyoruz. dakikayı şaşırıyor ve 1 dakikada 3 dakikada felan kafasına göre veriyor diyebilirim bunu düzeltebilirmisiniz.

Kod: Tümünü seç

/* Sublime AMXX Editor v3.2 */

#include <amxmodx>
native get_user_xp(iPlayer);
native set_user_xp(iPlayer, iAmmount);
new iCvar;
public plugin_init() { 
	iCvar = register_cvar("Sureli_Exp_Verme","1")
}
public client_putinserver(iPlayer) {
	if(get_pcvar_num(iCvar) == 1)
		set_task(60.0*5,"@GiveExp",iPlayer+665887);
}
@GiveExp(const iTaskID) {
	new iTaskPlayer = iTaskID - 665887;
	if(is_user_connected(iTaskPlayer) && get_pcvar_num(iCvar) == 1) {
		set_user_xp(iTaskPlayer,get_user_xp(iTaskPlayer) + 250);
		renkli_yazi(iTaskPlayer,"!t5 Dakika !nOnline kalarak !t250 EXP !nKazandin.!")
		set_task(60.0*5,"@GiveExp",iTaskPlayer+665887);
	}
}
stock renkli_yazi(const id, const input[], any:...)
{
	new count = 1, players[32]
	static msg[191]
	vformat(msg, sizeof(msg) - 1, input, 3)
	
	replace_all(msg, 190, "!n", "^x01")
	replace_all(msg, 190, "!g", "^x04")
	replace_all(msg, 190, "!t", "^x03")
	
	if(id) players[0] = id; else get_players(players, count, "ch")
	for(new i = 0; i < count; i++)
	{
		if(is_user_connected(players[i]))
		{
			message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i])
			write_byte(players[i])
			write_string(msg)
			message_end()
		}
	}
}
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ ansicpg1254\\ deff0\\ deflang1055{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ f0\\ fs16 \n\\ par }
*/

Dakikalı eklenti zamanı karıştırıyor.

Gönderilme zamanı: Pzr Mar 21, 2021 10:58 am
gönderen bestcore
Şöyle dener misin ? Oyuncu çıkınca task'ı sıfırlamadıgından veya saniyeyi çarpma cinsinden yazdıgındanda olabilir emin değilim, bu arada renkli_yazi stockunu kaldırdım.
Buyur;

Kod: Tümünü seç

/* Sublime AMXX Editor v3.2 */

#include <amxmodx>
native get_user_xp(iPlayer);
native set_user_xp(iPlayer, iAmmount);
new iCvar;
public plugin_init() { 
	iCvar = register_cvar("Sureli_Exp_Verme","1")
}
public client_putinserver(iPlayer) {
	if(get_pcvar_num(iCvar) == 1)
		set_task(300.0,"@GiveExp",iPlayer+665887);
}
@GiveExp(const iTaskID) {
	new iTaskPlayer = iTaskID - 665887;
	if(is_user_connected(iTaskPlayer) && get_pcvar_num(iCvar) == 1) {
		set_user_xp(iTaskPlayer,get_user_xp(iTaskPlayer) + 250);
		client_print_color(iTaskPlayer, iTaskPlayer, "^4Sunucuda^1 5 DK^3 oynadigin icin^4 250 XP^3 kazandin.");
		set_task(300.0,"@GiveExp",iTaskPlayer+665887);
	}
}
public client_disconnected(id){
	remove_task();
}

Dakikalı eklenti zamanı karıştırıyor.

Gönderilme zamanı: Pzr Mar 21, 2021 2:23 pm
gönderen mr1mr2
sureli_exp_oto.sma(18) : error 017: undefined symbol "client_print_color"

Dakikalı eklenti zamanı karıştırıyor.

Gönderilme zamanı: Pzr Mar 21, 2021 3:02 pm
gönderen bestcore
Sunucunuz csduragindan değil mi ? Değil ise client_print_color yerine renkli yazi kullanabilirsiniz.

Dakikalı eklenti zamanı karıştırıyor.

Gönderilme zamanı: Pzr Mar 21, 2021 3:16 pm
gönderen mr1mr2
csd zatende hallettim eskini senin yaptıgın gibi 5le çarpmayıp direk 300 yazdım duzeldi