Преработка на deathballs

В този раздел можете да подавате всякакви заявки за намиране, изработка или преработка на плъгини/модове.
Заключено
Аватар
Marinovv
Извън линия
Потребител
Потребител
Мнения: 419
Регистриран на: 19 Сеп 2017, 10:01
Местоположение: Bulgaria
Се отблагодари: 287 пъти
Получена благодарност: 8 пъти
Обратна връзка:

Преработка на deathballs

Мнение от Marinovv » 04 Май 2021, 12:01

Хей всички! Може ли това да бъде направено само за админи с флаг b.

Код за потвърждение: Избери целия код

#include <amxmodx>
#include <hamsandwich>

#define USE_NODRAW_EFFECT // comment out this line, if you don't want use nodraw effect for victim model

#if defined USE_NODRAW_EFFECT
	#include <engine>
#endif

#pragma semicolon 1

new const SPRITELIST[][] = {
	"sprites/kf/b.spr",
	"sprites/kf/g.spr",
	"sprites/kf/r.spr",
	"sprites/kf/y.spr"
};

new g_pSprites[sizeof SPRITELIST];

public plugin_precache() {
	for(new i; i < sizeof SPRITELIST; i++) {
		g_pSprites[i] = precache_model(SPRITELIST[i]);
	}
}

public plugin_init() {
	register_plugin("DeathBalls Effect", "0.2", "Subb98");
	RegisterHam(Ham_Killed, "player", "HamKilledPost", 1);
	#if defined USE_NODRAW_EFFECT
	set_msg_block(get_user_msgid("ClCorpse"), BLOCK_SET);
	#endif
}

public HamKilledPost(const pVictim, const pAttacker) {
	if(pAttacker && pVictim != pAttacker) {
		new iOrigin[3];
		get_user_origin(pVictim, iOrigin);
		#if defined USE_NODRAW_EFFECT
		entity_set_int(pVictim, EV_INT_effects, entity_get_int(pVictim, EV_INT_effects) | EF_NODRAW);
		#endif
		for(new i; i < sizeof g_pSprites; i++) {
			SendMessageSpriteTrail(iOrigin, g_pSprites[i]);
		}
	}
}

SendMessageSpriteTrail(const iOrigin[3], const pSprite) {
	message_begin(MSG_BROADCAST, SVC_TEMPENTITY);
	write_byte(TE_SPRITETRAIL);
	write_coord(iOrigin[0]); // startposition.x
	write_coord(iOrigin[1]); // startposition.y
	write_coord(iOrigin[2]); // startposition.z
	write_coord(iOrigin[0]); // endposition.x
	write_coord(iOrigin[1]); // endposition.y
	write_coord(iOrigin[2] + 10); // endposition.z
	write_short(pSprite); // sprite index
	write_byte(20); // count
	write_byte(20); // life in 0.1's
	write_byte(2); // scale in 0.1's
	write_byte(25); // velocity along vector in 10's
	write_byte(20); // randomness of velocity in 10's
	message_end();
}
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ ansicpg1251\\ deff0\\ deflang1026{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ f0\\ fs16 \n\\ par }
*/
► Покажи скъсения текст
Помагам на не бедни или богати, помагам на хората!

Аватар
Invius
Извън линия
Модератор
Модератор
Мнения: 1541
Регистриран на: 27 Ное 2016, 17:47
Местоположение: Invius.eu
Се отблагодари: 107 пъти
Получена благодарност: 249 пъти
Обратна връзка:

Преработка на deathballs

Мнение от Invius » 04 Май 2021, 14:03

Код за потвърждение: Избери целия код

#include <amxmodx>
#include <hamsandwich>

#define USE_NODRAW_EFFECT // comment out this line, if you don't want use nodraw effect for victim model

#if defined USE_NODRAW_EFFECT
	#include <engine>
#endif

#pragma semicolon 1

new const SPRITELIST[][] = {
	"sprites/kf/b.spr",
	"sprites/kf/g.spr",
	"sprites/kf/r.spr",
	"sprites/kf/y.spr"
};

new g_pSprites[sizeof SPRITELIST];

public plugin_precache() {
	for(new i; i < sizeof SPRITELIST; i++) {
		g_pSprites[i] = precache_model(SPRITELIST[i]);
	}
}

public plugin_init() {
	register_plugin("DeathBalls Effect", "0.2", "Subb98");
	RegisterHam(Ham_Killed, "player", "HamKilledPost", 1);
	#if defined USE_NODRAW_EFFECT
	set_msg_block(get_user_msgid("ClCorpse"), BLOCK_SET);
	#endif
}

public HamKilledPost(const pVictim, const pAttacker) {
	if(pAttacker && pVictim != pAttacker && get_user_flags(pVictim) & ADMIN_RESERVATION) {
		new iOrigin[3];
		get_user_origin(pVictim, iOrigin);
		#if defined USE_NODRAW_EFFECT
		entity_set_int(pVictim, EV_INT_effects, entity_get_int(pVictim, EV_INT_effects) | EF_NODRAW);
		#endif
		for(new i; i < sizeof g_pSprites; i++) {
			SendMessageSpriteTrail(iOrigin, g_pSprites[i]);
		}
	}
}

SendMessageSpriteTrail(const iOrigin[3], const pSprite) {
	message_begin(MSG_BROADCAST, SVC_TEMPENTITY);
	write_byte(TE_SPRITETRAIL);
	write_coord(iOrigin[0]); // startposition.x
	write_coord(iOrigin[1]); // startposition.y
	write_coord(iOrigin[2]); // startposition.z
	write_coord(iOrigin[0]); // endposition.x
	write_coord(iOrigin[1]); // endposition.y
	write_coord(iOrigin[2] + 10); // endposition.z
	write_short(pSprite); // sprite index
	write_byte(20); // count
	write_byte(20); // life in 0.1's
	write_byte(2); // scale in 0.1's
	write_byte(25); // velocity along vector in 10's
	write_byte(20); // randomness of velocity in 10's
	message_end();
}
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ ansicpg1251\\ deff0\\ deflang1026{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ f0\\ fs16 \n\\ par }
*/

Заключено
  • Подобни теми
    Отговори
    Преглеждания
     Последно мнение

Обратно към “Заявки за плъгини”

Кой е на линия

Потребители разглеждащи този форум: dementedclown и 8 госта