Discord sunucumuz açılmıştır, hepinizi bekleriz

https://discord.gg/43gGDQe6tS

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

Eklenti sorunlarınız ve özel eklenti istekleriniz

Moderatör: Moderatörler

Kullanıcı avatarı

Konu Sahibi
mr1mr2
Mesajlar: 519
Kayıt: Çrş Oca 24, 2018 1:04 pm
Konum: Ankara
İletişim:

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

Mesaj 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 }
*/

Link:
Linklerini gizle
Linki Kopyala
Kullanıcı avatarı

bestcore
Mesajlar: 1625
Kayıt: Cmt Eyl 30, 2017 12:44 pm
Konum: Samsun

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

Mesaj 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();
}

Link:
Linklerini gizle
Linki Kopyala
Kullanıcı avatarı

Konu Sahibi
mr1mr2
Mesajlar: 519
Kayıt: Çrş Oca 24, 2018 1:04 pm
Konum: Ankara
İletişim:

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

Mesaj gönderen mr1mr2 »

sureli_exp_oto.sma(18) : error 017: undefined symbol "client_print_color"

Link:
Linklerini gizle
Linki Kopyala
Kullanıcı avatarı

bestcore
Mesajlar: 1625
Kayıt: Cmt Eyl 30, 2017 12:44 pm
Konum: Samsun

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

Mesaj gönderen bestcore »

Sunucunuz csduragindan değil mi ? Değil ise client_print_color yerine renkli yazi kullanabilirsiniz.

Link:
Linklerini gizle
Linki Kopyala
Kullanıcı avatarı

Konu Sahibi
mr1mr2
Mesajlar: 519
Kayıt: Çrş Oca 24, 2018 1:04 pm
Konum: Ankara
İletişim:

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

Mesaj gönderen mr1mr2 »

csd zatende hallettim eskini senin yaptıgın gibi 5le çarpmayıp direk 300 yazdım duzeldi

Link:
Linklerini gizle
Linki Kopyala
Cevapla