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

https://discord.gg/43gGDQe6tS

Eklentinin reapi karşılığı

Eklenti sorunlarınız ve özel eklenti istekleriniz

Moderatör: Moderatörler


Konu Sahibi
1000DAYS
Mesajlar: 325
Kayıt: Pzt Ara 14, 2020 8:34 pm

Eklentinin reapi karşılığı

Mesaj gönderen 1000DAYS »

Merhaba, altta vermiş olduğum eklentinin reapi kütüphanesine çevrilmiş hali lazım. Farklı bir eklentime ekleyeceğim. 1 public için koskoca kütüphaneyi tanıtmak istemiyorum.

Kod: Tümünü seç

#include <amxmodx>
#include <fakemeta>

new last_stand[33],Float:duck_start_time[33],Float:last_origin[33][3]

public plugin_init() {
	register_forward(FM_CmdStart, "pfw_CmdStart", 1)
}
public pfw_CmdStart(id, pUC, seed)
{
	new iButtons = get_uc(pUC, UC_Buttons)
	if(iButtons & IN_DUCK)
	{
		if(last_stand[id])
		{
			pev(id,pev_origin,last_origin[id])
			
			duck_start_time[id] = get_gametime()	
			last_stand[id] = false;
		}
	}
	else
	{
		if(!last_stand[id])
		{
			new Float:fGameTime = get_gametime()
			if((fGameTime-duck_start_time[id])<0.02)
			{
				engfunc(EngFunc_SetOrigin, id, last_origin[id])
				set_pev(id, pev_bInDuck, false);
			}
		}
		last_stand[id] = true;
	}
}  

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

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

Eklentinin reapi karşılığı

Mesaj gönderen bestcore »

Oyuncu eğilince işlem yapacaksan şunu kullanabilirsin, RG_CBasePlayer_Duck. Bununla birlikte fakemetadaki komutların aynısı reapide var;

Kod: Tümünü seç

pev(id,pev_origin... -> get_entvar(id, var_origin...
set_pev(id, pev_bInDuck, false); -> set_entvar(id, var_bInDuck, false);
engfunc(EngFunc_SetOrigin... -> set_entvar(id var_origin...
Eğer eğilip kalkmayı algılatmak istiyorsan post-pre think kullanabilirsin fakat bunu kullanırken dikkatli olmalısın, yanlış bir kodda cpu'yu fena şekilde yer.
Programı kaldırdım onun için düzenleme yapamıyorum, yapacak arkadaşlara yardımcı olur bu kodlar.

Link:
Linklerini gizle
Linki Kopyala

Konu Sahibi
1000DAYS
Mesajlar: 325
Kayıt: Pzt Ara 14, 2020 8:34 pm

Eklentinin reapi karşılığı

Mesaj gönderen 1000DAYS »

Yapabilecek biri var ise çok sevinirim. Teşekkürler

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

Colditz
Mesajlar: 2574
Kayıt: Çrş Ağu 23, 2017 9:17 pm

Eklentinin reapi karşılığı

Mesaj gönderen Colditz »

Hızlı duck yapmayı mı engelliyor bu tam olarak?

Link:
Linklerini gizle
Linki Kopyala

Konu Sahibi
1000DAYS
Mesajlar: 325
Kayıt: Pzt Ara 14, 2020 8:34 pm

Eklentinin reapi karşılığı

Mesaj gönderen 1000DAYS »

Evet. O işe yarıyor.

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

orucoglukayra
Mesajlar: 209
Kayıt: Pzr Haz 09, 2019 2:48 pm
İletişim:

Eklentinin reapi karşılığı

Mesaj gönderen orucoglukayra »

Bu şekilde dönüştürdüm fakat işlevinin aynı kalacağından emin değilim.Kütüphaneyi tanıtmanda bence bir sıkıntı olmaz.Ama böyle deneyebilirsin ;

Kod: Tümünü seç

#include <amxmodx>
#include <reapi>

new last_stand[MAX_CLIENTS+1],Float:duck_start_time[MAX_CLIENTS+1],Float:last_origin[MAX_CLIENTS+1][3]

public plugin_init() 
{
	RegisterHookChain(RG_CBasePlayer_Duck, "CBasePlayer_Duck", .post = true);
}

public CBasePlayer_Duck(const id)
{
	if(last_stand[id])
	{
		get_entvar(id, var_origin, last_origin[id]);
		
		duck_start_time[id] = get_gametime();
		last_stand[id] = false;
	}
	else
	{
		if(!last_stand[id])
		{
			new Float:fGameTime = get_gametime()
			if((fGameTime - duck_start_time[id]) < 0.02)
			{
				set_entvar(id, var_origin, last_origin[id]);
				set_entvar(id, var_bInDuck, false);
			}
		}
		last_stand[id] = true;
	}
}

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

seypa
Mesajlar: 1389
Kayıt: Cmt Ağu 13, 2016 12:49 pm
Konum: Pendik/İstanbul
İletişim:

Eklentinin reapi karşılığı

Mesaj gönderen seypa »

yormayın kendinizi

Kod: Tümünü seç

mp_unduck_method 1

Link:
Linklerini gizle
Linki Kopyala

quadfor77
Mesajlar: 26
Kayıt: Cum Mar 06, 2020 3:53 am

Eklentinin reapi karşılığı

Mesaj gönderen quadfor77 »

seypa yazdı: Cum Eki 15, 2021 8:11 pm yormayın kendinizi

Kod: Tümünü seç

mp_unduck_method 1
Bu kod double duck da engelliyor o yüzden işe yaramaz, arkadaşın paylaştığı kod sadece scroll ducku engelliyor.

Link:
Linklerini gizle
Linki Kopyala
Cevapla