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

https://discord.gg/43gGDQe6tS

Spr veya mdl gösterme hk.

Oyunda karşılaştığınız hatalar , oyun hakkında genel bilgiler

Moderatör: Moderatörler

Kullanıcı avatarı

Konu Sahibi
bilalgecer47
Mesajlar: 729
Kayıt: Çrş Ağu 22, 2018 9:20 pm

Spr veya mdl gösterme hk.

Mesaj gönderen bilalgecer47 »

Oyuncu ekranında 5-6saniyelik bi spr göstermek istiyorum bunu nasıl yapabilirim?
Colditz'in level sistemini inceledim çıkarmaya çalıştım ancak çalışmadı.Txt dosyası falan yapmamız gerekiyomu.Sadece Spr'm var.
Mdl'de olabilir ancak mdl haline getirmem zor.

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

Yek'-ta
Mesajlar: 9625
Kayıt: Cmt Eyl 12, 2015 12:40 pm
İletişim:

Spr veya mdl gösterme hk.

Mesaj gönderen Yek'-ta »

eklentiler-pluginler/yektas-combo-sprit ... ml#p242567
txt yapman lazım, ya da entity oluşturup oyuncunun gözünün önüne anlık hareket vereceksin. Spriteı ya da modeli orada minimalize edip göstereceksin. O da bu oluyor; https://forums.alliedmods.net/showthread.php?t=159584

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

Konu Sahibi
bilalgecer47
Mesajlar: 729
Kayıt: Çrş Ağu 22, 2018 9:20 pm

Spr veya mdl gösterme hk.

Mesaj gönderen bilalgecer47 »

Yek'-ta yazdı: Çrş Şub 17, 2021 10:43 pm eklentiler-pluginler/yektas-combo-sprit ... ml#p242567
txt yapman lazım, ya da entity oluşturup oyuncunun gözünün önüne anlık hareket vereceksin. Spriteı ya da modeli orada minimalize edip göstereceksin. O da bu oluyor; https://forums.alliedmods.net/showthread.php?t=159584
Txt dosyasına ne yazmamız gerekiyor.Baya stock eklemek gerekiyo eklentiye anladığım kadarıyla.Şuanlık askıda.

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

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

Spr veya mdl gösterme hk.

Mesaj gönderen Colditz »

Stock ile alakası yok. Oyuncuya Weaponlish, Ammo ve CurWeapon mesajlarını göndereceksin ve spr gösterirken fov unu 89 yapıp 90 yapacaksın. Txt dosyasına sprite dosyasının ismini ve sprite ın koordinatlarını gireceksin.

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

Konu Sahibi
bilalgecer47
Mesajlar: 729
Kayıt: Çrş Ağu 22, 2018 9:20 pm

Spr veya mdl gösterme hk.

Mesaj gönderen bilalgecer47 »

Colditz yazdı: Prş Şub 18, 2021 12:01 am Stock ile alakası yok. Oyuncuya Weaponlish, Ammo ve CurWeapon mesajlarını göndereceksin ve spr gösterirken fov unu 89 yapıp 90 yapacaksın. Txt dosyasına sprite dosyasının ismini ve sprite ın koordinatlarını gireceksin.

Kod: Tümünü seç

#pragma semicolon 1

#include <amxmodx>
#include <reapi>
#include <nvault>
new pMsgIds[4],bool:g_PlayerRankedUp[MAX_CLIENTS + 1];
public plugin_init() {
	register_plugin("Advanced Rank System", "0.0.1", "PurposeLess");
	register_clcmd("say /test","@test");
	register_event("CurWeapon", "@Event_CurWeapon", "be", "1=1");
	pMsgIds[0] = get_user_msgid("WeaponList");
	pMsgIds[1] = get_user_msgid("SetFOV");
	pMsgIds[2] = get_user_msgid("CurWeapon");
	pMsgIds[3] = get_user_msgid("HideWeapon");
}
public plugin_precache() {

		precache_generic(fmt("sprites/deneme/deneme.txt"));
		precache_generic(fmt("sprites/deneme/deneme.spr"));

}
const TaskId_ARS = 1337;
@test(pPlayer){
		Show_Rank_Event(pPlayer);
		remove_task(pPlayer + TaskId_ARS);
		g_PlayerRankedUp[pPlayer] = true;
		set_task(5.0, "@Clear_Rank_Event", pPlayer + TaskId_ARS);
}
@Event_CurWeapon(const pPlayer) {
	if(!g_PlayerRankedUp[pPlayer] || get_member(pPlayer, m_iFOV) != 90) {
		return;
	}

	Show_Rank_Event(pPlayer);
}
Show_Rank_Event(const pPlayer) {
	new ammo, weapon = get_user_weapon(pPlayer, ammo);

	switch(weapon) {
		case CSW_P228: SetMessage_WeaponList(pPlayer, 9, 52);
		case CSW_HEGRENADE: SetMessage_WeaponList(pPlayer, 12, 1);
		case CSW_XM1014: SetMessage_WeaponList(pPlayer, 5, 32);
		case CSW_C4: SetMessage_WeaponList(pPlayer, 14, 1);
		case CSW_MAC10: SetMessage_WeaponList(pPlayer, 6, 100);
		case CSW_AUG: SetMessage_WeaponList(pPlayer, 4, 90);
		case CSW_SMOKEGRENADE: SetMessage_WeaponList(pPlayer, 13, 1);
		case CSW_ELITE: SetMessage_WeaponList(pPlayer, 10, 120);
		case CSW_FIVESEVEN: SetMessage_WeaponList(pPlayer, 7, 100);
		case CSW_UMP45: SetMessage_WeaponList(pPlayer, 6, 100);
		case CSW_GALIL: SetMessage_WeaponList(pPlayer, 4, 90);
		case CSW_FAMAS: SetMessage_WeaponList(pPlayer, 4, 90);
		case CSW_USP: SetMessage_WeaponList(pPlayer, 6, 100);
		case CSW_GLOCK18: SetMessage_WeaponList(pPlayer, 10, 120);
		case CSW_MP5NAVY: SetMessage_WeaponList(pPlayer, 10, 120);
		case CSW_M249: SetMessage_WeaponList(pPlayer, 3, 200);
		case CSW_M3: SetMessage_WeaponList(pPlayer, 5, 32);
		case CSW_M4A1: SetMessage_WeaponList(pPlayer, 4, 90);
		case CSW_TMP: SetMessage_WeaponList(pPlayer, 10, 120);
		case CSW_FLASHBANG: SetMessage_WeaponList(pPlayer, 11, 2);
		case CSW_DEAGLE: SetMessage_WeaponList(pPlayer, 8, 35);
		case CSW_SG552: SetMessage_WeaponList(pPlayer, 4, 90);
		case CSW_AK47: SetMessage_WeaponList(pPlayer, 2, 90);
		case CSW_KNIFE: SetMessage_WeaponList(pPlayer, -1, -1);
		case CSW_P90: SetMessage_WeaponList(pPlayer, 7, 100);
		case CSW_SCOUT: SetMessage_WeaponList(pPlayer, 2, 90);
		case CSW_SG550: SetMessage_WeaponList(pPlayer, 4, 90);
		case CSW_AWP: SetMessage_WeaponList(pPlayer, 1, 30);
		case CSW_G3SG1: SetMessage_WeaponList(pPlayer, 2, 90);
		default: return;
	}

	SetMessage_SetFOV(pPlayer, 89);
	SetMessage_CurWeapon(pPlayer, ammo);
	SetMessage_SetFOV(pPlayer, 90);
}

@Clear_Rank_Event(TaskId) {
	new pPlayer = TaskId - TaskId_ARS;
	SetMessage_HideWeapon(pPlayer);
	g_PlayerRankedUp[pPlayer] = false;
}

SetMessage_WeaponList(const pPlayer, const pAmmoId, const pAmmoMaxAmount) {
	message_begin(MSG_ONE, pMsgIds[0], .player = pPlayer); {
		write_string(fmt("deneme/deneme"));
		write_byte(pAmmoId);
		write_byte(pAmmoMaxAmount);
		write_byte(-1);
		write_byte(-1);
		write_byte(0);
		write_byte(11);
		write_byte(2);
		write_byte(0);
	}
	message_end();
}

SetMessage_SetFOV(const pPlayer, const FOV) {
	message_begin(MSG_ONE, pMsgIds[1], .player = pPlayer); {
		write_byte(FOV);
	}
	message_end();
}

SetMessage_CurWeapon(const pPlayer, const ammo) {
	message_begin(MSG_ONE, pMsgIds[2], .player = pPlayer); {
		write_byte(1);
		write_byte(2);
		write_byte(ammo);
	}
	message_end();
}

SetMessage_HideWeapon(const pPlayer) {
	message_begin(MSG_ONE, pMsgIds[3], .player = pPlayer);
	write_byte(0);
	message_end();
}
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1055\\ f0\\ fs16 \n\\ par }
*/
Bu haliyle çalışıyo cıkarılması gereken bi kısım varmı ona göre ekliyicem?

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

Konu Sahibi
bilalgecer47
Mesajlar: 729
Kayıt: Çrş Ağu 22, 2018 9:20 pm

Spr veya mdl gösterme hk.

Mesaj gönderen bilalgecer47 »

bilalgecer47 yazdı: Prş Şub 18, 2021 1:07 am
Colditz yazdı: Prş Şub 18, 2021 12:01 am Stock ile alakası yok. Oyuncuya Weaponlish, Ammo ve CurWeapon mesajlarını göndereceksin ve spr gösterirken fov unu 89 yapıp 90 yapacaksın. Txt dosyasına sprite dosyasının ismini ve sprite ın koordinatlarını gireceksin.

Kod: Tümünü seç

#pragma semicolon 1

#include <amxmodx>
#include <reapi>
#include <nvault>
new pMsgIds[4],bool:g_PlayerRankedUp[MAX_CLIENTS + 1];
public plugin_init() {
	register_plugin("Advanced Rank System", "0.0.1", "PurposeLess");
	register_clcmd("say /test","@test");
	register_event("CurWeapon", "@Event_CurWeapon", "be", "1=1");
	pMsgIds[0] = get_user_msgid("WeaponList");
	pMsgIds[1] = get_user_msgid("SetFOV");
	pMsgIds[2] = get_user_msgid("CurWeapon");
	pMsgIds[3] = get_user_msgid("HideWeapon");
}
public plugin_precache() {

		precache_generic(fmt("sprites/deneme/deneme.txt"));
		precache_generic(fmt("sprites/deneme/deneme.spr"));

}
const TaskId_ARS = 1337;
@test(pPlayer){
		Show_Rank_Event(pPlayer);
		remove_task(pPlayer + TaskId_ARS);
		g_PlayerRankedUp[pPlayer] = true;
		set_task(5.0, "@Clear_Rank_Event", pPlayer + TaskId_ARS);
}
@Event_CurWeapon(const pPlayer) {
	if(!g_PlayerRankedUp[pPlayer] || get_member(pPlayer, m_iFOV) != 90) {
		return;
	}

	Show_Rank_Event(pPlayer);
}
Show_Rank_Event(const pPlayer) {
	new ammo, weapon = get_user_weapon(pPlayer, ammo);

	switch(weapon) {
		case CSW_P228: SetMessage_WeaponList(pPlayer, 9, 52);
		case CSW_HEGRENADE: SetMessage_WeaponList(pPlayer, 12, 1);
		case CSW_XM1014: SetMessage_WeaponList(pPlayer, 5, 32);
		case CSW_C4: SetMessage_WeaponList(pPlayer, 14, 1);
		case CSW_MAC10: SetMessage_WeaponList(pPlayer, 6, 100);
		case CSW_AUG: SetMessage_WeaponList(pPlayer, 4, 90);
		case CSW_SMOKEGRENADE: SetMessage_WeaponList(pPlayer, 13, 1);
		case CSW_ELITE: SetMessage_WeaponList(pPlayer, 10, 120);
		case CSW_FIVESEVEN: SetMessage_WeaponList(pPlayer, 7, 100);
		case CSW_UMP45: SetMessage_WeaponList(pPlayer, 6, 100);
		case CSW_GALIL: SetMessage_WeaponList(pPlayer, 4, 90);
		case CSW_FAMAS: SetMessage_WeaponList(pPlayer, 4, 90);
		case CSW_USP: SetMessage_WeaponList(pPlayer, 6, 100);
		case CSW_GLOCK18: SetMessage_WeaponList(pPlayer, 10, 120);
		case CSW_MP5NAVY: SetMessage_WeaponList(pPlayer, 10, 120);
		case CSW_M249: SetMessage_WeaponList(pPlayer, 3, 200);
		case CSW_M3: SetMessage_WeaponList(pPlayer, 5, 32);
		case CSW_M4A1: SetMessage_WeaponList(pPlayer, 4, 90);
		case CSW_TMP: SetMessage_WeaponList(pPlayer, 10, 120);
		case CSW_FLASHBANG: SetMessage_WeaponList(pPlayer, 11, 2);
		case CSW_DEAGLE: SetMessage_WeaponList(pPlayer, 8, 35);
		case CSW_SG552: SetMessage_WeaponList(pPlayer, 4, 90);
		case CSW_AK47: SetMessage_WeaponList(pPlayer, 2, 90);
		case CSW_KNIFE: SetMessage_WeaponList(pPlayer, -1, -1);
		case CSW_P90: SetMessage_WeaponList(pPlayer, 7, 100);
		case CSW_SCOUT: SetMessage_WeaponList(pPlayer, 2, 90);
		case CSW_SG550: SetMessage_WeaponList(pPlayer, 4, 90);
		case CSW_AWP: SetMessage_WeaponList(pPlayer, 1, 30);
		case CSW_G3SG1: SetMessage_WeaponList(pPlayer, 2, 90);
		default: return;
	}

	SetMessage_SetFOV(pPlayer, 89);
	SetMessage_CurWeapon(pPlayer, ammo);
	SetMessage_SetFOV(pPlayer, 90);
}

@Clear_Rank_Event(TaskId) {
	new pPlayer = TaskId - TaskId_ARS;
	SetMessage_HideWeapon(pPlayer);
	g_PlayerRankedUp[pPlayer] = false;
}

SetMessage_WeaponList(const pPlayer, const pAmmoId, const pAmmoMaxAmount) {
	message_begin(MSG_ONE, pMsgIds[0], .player = pPlayer); {
		write_string(fmt("deneme/deneme"));
		write_byte(pAmmoId);
		write_byte(pAmmoMaxAmount);
		write_byte(-1);
		write_byte(-1);
		write_byte(0);
		write_byte(11);
		write_byte(2);
		write_byte(0);
	}
	message_end();
}

SetMessage_SetFOV(const pPlayer, const FOV) {
	message_begin(MSG_ONE, pMsgIds[1], .player = pPlayer); {
		write_byte(FOV);
	}
	message_end();
}

SetMessage_CurWeapon(const pPlayer, const ammo) {
	message_begin(MSG_ONE, pMsgIds[2], .player = pPlayer); {
		write_byte(1);
		write_byte(2);
		write_byte(ammo);
	}
	message_end();
}

SetMessage_HideWeapon(const pPlayer) {
	message_begin(MSG_ONE, pMsgIds[3], .player = pPlayer);
	write_byte(0);
	message_end();
}
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1055\\ f0\\ fs16 \n\\ par }
*/
Bu haliyle çalışıyo cıkarılması gereken bi kısım varmı ona göre ekliyicem?
Güncel

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

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

Spr veya mdl gösterme hk.

Mesaj gönderen Colditz »

Weaponlist bölümündeki caseleri kısaltmalısın. Ben zamanında öyle kodlamıştım, daha kolay hâli varmış. @Yek'-ta'nın attığı eklentiden bakabilirsin daha basit hâlini, öte yandan böyle kullanırsan da pek sıkıntı olmaz. Güzel şu an.

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

Konu Sahibi
bilalgecer47
Mesajlar: 729
Kayıt: Çrş Ağu 22, 2018 9:20 pm

Spr veya mdl gösterme hk.

Mesaj gönderen bilalgecer47 »

Colditz yazdı: Prş Şub 18, 2021 3:26 pm Weaponlist bölümündeki caseleri kısaltmalısın. Ben zamanında öyle kodlamıştım, daha kolay hâli varmış. @Yek'-ta'nın attığı eklentiden bakabilirsin daha basit hâlini, öte yandan böyle kullanırsan da pek sıkıntı olmaz. Güzel şu an.

Kod: Tümünü seç

const TaskId_ARS = 1337;
Bu koda gerek varmı?

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

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

Spr veya mdl gösterme hk.

Mesaj gönderen Colditz »

Gösterdiğin spryi bir süre sonra kaldırman gerekiyorsa task kullanmalısın. Attığın komutta da 5 saniye sonra kaldırıyor. TaskId deki olay set_task ın değerini ayarlıyor ona göre remove_task yaptığında o değeri giriyorsun. Bütün TaskId yazan yere aynı sayıyı yazsan da fark etmez.

Link:
Linklerini gizle
Linki Kopyala
Cevapla