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

https://discord.gg/43gGDQe6tS

Salınım oyunu

Eklenti sorunlarınız ve özel eklenti istekleriniz

Moderatör: Moderatörler


Konu Sahibi
MrFoTo
Mesajlar: 298
Kayıt: Çrş Ara 26, 2018 3:46 pm

Salınım oyunu

Mesaj gönderen MrFoTo »

Kod: Tümünü seç


#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <fakemeta>
#include <fun>

#define PLUGIN "[JailBreak] Sarkac Oyunu"
#define VERSION "1.0"
#define AUTHOR "Fatih ~ EjderYa"

new OyunDurumu , OyunIcinde[33]

public plugin_init() {
	register_plugin(PLUGIN, VERSION, AUTHOR)
	
	register_event("HLTV", "Yeni_Tur_Basladi", "a", "1=0", "2=0")
	register_clcmd("say /sarkac","Sarkac_Baslangic_Kontrolu")
	register_clcmd("say .sarkac","Sarkac_Baslangic_Kontrolu")
	
}

public Oyundisi_oyuncu_kontrolu(){
	if ( OyunDurumu == 1 ){
		new Oyuncular[32],T_Oyuncular
		get_players(Oyuncular,T_Oyuncular,"ae","TERRORIST")
		for ( new i ; i < T_Oyuncular ; i++ ) if ( OyunIcinde[Oyuncular[i]] != 1 ) Oyuncuyu_Oyuna_Ekle(Oyuncular[i])
		set_task(5.0,"Oyundisi_oyuncu_kontrolu")
	}
}
public Oyuncuyu_Oyuna_Ekle(id){
	
	OyunIcinde[id] = 1
	set_user_health(id,random_num(90,125))
	set_task(float(id)/10.0,"Sarkac_Islemleri",id)
	
}
public Oyunu_Baslat(){
	
	set_cvar_num("sv_gravity",800)
	OyunDurumu = 1
	new Oyuncular[32],T_Oyuncular
	get_players(Oyuncular,T_Oyuncular,"ae","TERRORIST")
	for ( new i ; i < T_Oyuncular ; i++ ) Oyuncuyu_Oyuna_Ekle(Oyuncular[i])
	Oyundisi_oyuncu_kontrolu()
}
public Sarkac_Baslangic_Kontrolu(id){
	
	if( cs_get_user_team(id) == CS_TEAM_CT ){
		
		if( OyunDurumu != 0 ) client_print_color(0,print_team_default,"^3Sarkac Oyunu Zaten ^4ACIK")
		else
		{
			
			new Isim[36]
			get_user_name(id,Isim,charsmax(Isim))
			client_print_color(0,print_team_default,"^4%s ^3Isimli Gardiyan ^4Sarkac Oyunu^3nu Baslattti.",Isim)
			Oyunu_Baslat()
			
		}
	}
	else client_print_color(0,print_team_default,"^4Sarkac Oyunu^3nu Baslatabilmek Icin ^4Gardiyan ^3Olmalisiniz.")
	
	
}


public Yeni_Tur_Basladi() Sifirla(0)
public Sifirla(id){
	
	if( id == 0 ){
		
		OyunDurumu = 0
		new Oyuncular[32],Numara
		get_players(Oyuncular,Numara)
		
		for ( new i ; i < Numara ; i++ ) OyunIcinde[Oyuncular[i]] = 0
		
		
		
	}
	
	else
	{
		set_user_health(id,100)
		set_pev(id,pev_gravity,1.0)
		set_user_godmode(id,0)
		Renk_Ver(id,0,0,0,255)
	}
	
}
public Sarkac_Islemleri(id){
	
	if ( OyunDurumu != 1 )
		return PLUGIN_HANDLED
	
	new Oyuncular[32],T_Oyuncular
	get_players(Oyuncular,T_Oyuncular,"ae","TERRORIST")
	
	if ( T_Oyuncular == 1 && is_user_alive(id) ) Kazandi(id) , set_task(1.0,"Kazandi",id) , set_task(7.0,"Sifirla",id) , Sifirla(0)
	else if ( is_user_alive(id) ){
		
		new Float:HIZ[3]
		pev(id,pev_velocity,HIZ)
		
		if ( floatabs(HIZ[2]) >= random_float(1000.0,500.0) ){
			
			if ( random_num( 0,1 ) == random_num( 0,1 ) ) set_pev(id,pev_velocity,	{0.0,0.0,0.0})
			
		}
		else 	if ( HIZ[2] == 0 ){
			
			if ( Duvar_Ici(id,-1.0) && !Duvar_Ici(id,1.0) ){
				
				new Float:Konum[3]
				pev(id,pev_origin,Konum)
				Konum[2] += 1
				set_pev(id,pev_origin,Konum)
				set_pev(id,pev_velocity,	{0.0,0.0,300.0})
				
			}
		}
		
		new Float:Cekim
		pev(id,pev_gravity,Cekim)
		
		if ( random_num( 0,5 ) == random_num( 0,5 ) ){
		
			if ( Yerden_Yukseklik(id) > 750 )	Cekim = random_float(0.0,5.0)
			{
		
			if ( random_num(0,6) == random_num(0,5) ) set_pev(id,pev_velocity,	{0.0,0.0,-555.0})
			else					Cekim = random_float(-3.0,5.0)
		
		}
		}
		else
			Cekim = random_float(-1.0,1.0)
		
		if ( random_num( 0,3 ) == random_num( 0,3 ) ) set_user_health(id,get_user_health(id) + random_num(-4,1))
		
		set_pev(id,pev_gravity,Cekim)
		set_task(random_float(0.2,0.4),"Sarkac_Islemleri",id)
		
	}
	
	return PLUGIN_HANDLED
}
public Kazandi(id){
	
	set_pev(id,pev_gravity,0.2)
	set_pev(id,pev_velocity,{0.0,0.0,0.0})
	set_user_godmode(id,1)
	Renk_Ver(id,20,200,20,200)
	ekrani_parlat(id)
	
	
	
}
stock ekrani_parlat(id){
	
	new ScreenFade = get_user_msgid("ScreenFade")
	const UnitSecond = (1<<12)
	message_begin(MSG_ONE_UNRELIABLE, ScreenFade, _, id)
	write_short(UnitSecond*5)
	write_short(UnitSecond*0)
	write_short(0x0000)
	write_byte(0)
	write_byte(255)
	write_byte(0)
	write_byte(180)
	message_end()
	
	
	
}
stock Renk_Ver(id,KIRMIZI,YESIL,MAVI,SAYDAMLIK) set_user_rendering(id,kRenderFxGlowShell,KIRMIZI,YESIL,MAVI,kRenderNormal,SAYDAMLIK)
stock Duvar_Ici(Id,Float:Sayi)
{
	static Float:Origin[3]
	pev(Id, pev_origin, Origin)
	Origin[2] += Sayi
	engfunc(EngFunc_TraceHull, Origin, Origin, IGNORE_MONSTERS, pev(Id, pev_flags) & FL_DUCKING ? HULL_HEAD : HULL_HUMAN, 0, 0)
	if (get_tr2(0, TR_StartSolid))
		return true
	return false
}

stock Yerden_Yukseklik(Id)
{
	
	new Yukseklik , Durum
	
	for ( new i ; Durum != 1; i++){
		static Float:Origin[3]
		pev(Id, pev_origin, Origin)
		Origin[2] -= i*10.0
		engfunc(EngFunc_TraceHull, Origin, Origin, IGNORE_MONSTERS, pev(Id, pev_flags) & FL_DUCKING ? HULL_HEAD : HULL_HUMAN, 0, 0)
		if (get_tr2(0, TR_StartSolid))
			Durum = 1 , Yukseklik = i * 10
	}

	return Yukseklik
}

@Fatih ~ EjderYa Dostum merhaba size ait bu plugin sona kalan oyuncu sayısını biz kendimiz belirleyebilrimiyiz oyunu başlattığımız zaman sol üste messagemod şeklinde kalan oyuncuyu belırleyelım kanka teşekkürler

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

Fatih ~ EjderYa
Mesajlar: 2896
Kayıt: Prş Mar 16, 2017 5:05 pm
Konum: İstanbul
İletişim:

Salınım oyunu

Mesaj gönderen Fatih ~ EjderYa »

Şimdi dışarıdayım. Eve geçince eklentiyi güncellerim.

Link:
Linklerini gizle
Linki Kopyala

Konu Sahibi
MrFoTo
Mesajlar: 298
Kayıt: Çrş Ara 26, 2018 3:46 pm

Salınım oyunu

Mesaj gönderen MrFoTo »

Bugün mümkün ise yapabilirmisin

Link:
Linklerini gizle
Linki Kopyala

Konu Sahibi
MrFoTo
Mesajlar: 298
Kayıt: Çrş Ara 26, 2018 3:46 pm

Salınım oyunu

Mesaj gönderen MrFoTo »

Yarın hallolur inşallah @Fatih ~ EjderYa

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

Fatih ~ EjderYa
Mesajlar: 2896
Kayıt: Prş Mar 16, 2017 5:05 pm
Konum: İstanbul
İletişim:

Salınım oyunu

Mesaj gönderen Fatih ~ EjderYa »


Link:
Linklerini gizle
Linki Kopyala
Cevapla