Правила форума Гаранты форума
Размещение рекламы AMX-X компилятор

Здравствуйте, гость Вход | Регистрация

Наши новости:

14-дек
24-апр
10-апр
11-апр

> Правила раздела

Перед созданием новой темы убедитесь, не искал ли кто-нибудь подобный плагин до вас, для этого следует воспользоваться поиском.

Все вновь созданные темы, с названием типа "Помогите найти", "А что это за плагин", "Ищу плагин", "Нужен плагин", "Подскажите пожалуйста название плагина" - будут удалены.
При создании темы постарайтесь максимально понятно сформулировать её заголовок так, чтобы он соответствовал функциям плагина который Вы ищите. В том случае, если Вам не удается сформулировать мысль и правильно расписать всё в теме, воспользуйтесь графическим редактором, к примеру Paint, что бы примерно изобразить функции нужного Вам плагина.

Ищу плагин [кровь даже с бронёй]

Статус пользователя TheNega
сообщение 7.2.2014, 0:57
Сообщение #1


Стаж: 13 лет

Сообщений: 724
Благодарностей: 1396
Полезность: 1101

Может кому то попадался подобный плагин и существует ли вообще такой , в общем нужен плагин с помощью которого даже если у игрока фулл броня вместе с каской при убийстве в голову была кровь. Заранее спасибо за помощь.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Статус пользователя perfectblood0
сообщение 7.2.2014, 1:05
Сообщение #2
Стаж: 17 лет

Сообщений: 5065
Благодарностей: 2685
Полезность: 488

Вроде как gore ultimate не?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя TheNega
сообщение 7.2.2014, 1:11
Сообщение #3


Стаж: 13 лет

Сообщений: 724
Благодарностей: 1396
Полезность: 1101

perfectblood0, слишком много крови и мяса , перебор. Желательно стандарт убийство без брони только ещё и наоборот.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя 3JIou CKuH
сообщение 7.2.2014, 1:12
Сообщение #4
Стаж: 15 лет

Сообщений: 491
Благодарностей: 279
Полезность: 818

TheNega
Ultimate Gore, только он нагрузку создаёт, особенно когда больше 20 игроков на сервере...
Цитата
слишком много крови и мяса , перебор

Настраивается кварами.

Отредактировал: 3JIou CKuH, - 7.2.2014, 1:13
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 2 раз
   + Цитировать сообщение
Статус пользователя TheNega
сообщение 7.2.2014, 1:21
Сообщение #5


Стаж: 13 лет

Сообщений: 724
Благодарностей: 1396
Полезность: 1101

Попробую настроить так как мне надо , отпишусь , не закрывайте пока что =)
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя TheNega
сообщение 7.2.2014, 1:37
Сообщение #6


Стаж: 13 лет

Сообщений: 724
Благодарностей: 1396
Полезность: 1101

Оставил в общем только флаг:
a - Headshot blood

Но крови всё равно слишком много , возможно количество крови уменьшить?

Скрытый текст
Код:
#define GIBS_ENABLED

#include <amxmodx>
#include <amxmisc>
#include <fakemeta>
#include <dodconst>
#include <tfcconst>
#include <tsconst>

//Auto-load the correct module if not loaded
#pragma reqclass xstats
#if !defined AMXMODX_NOAUTOLOAD
#pragma defclasslib xstats csx
#pragma defclasslib xstats dodx
#pragma defclasslib xstats tfcx
#pragma defclasslib xstats tsx
#endif

#define MAX_PLAYERS 32
#define MAX_HOSTAGES 16

#define GORE_HEADSHOT (1<<0) // "a"
#define GORE_BLOOD (1<<1) // "b"
#define GORE_BLEEDING (1<<2) // "c"
#define GORE_GIB (1<<3) // "d"
#define GORE_EXTRA (1<<4) // "e"
#define GORE_EXTRA_HS (1<<5) // "f"
#define GORE_HOSTAGES (1<<6) // "g"

#define BLOOD_COLOR_RED 247
#define BLOOD_COLOR_YELLOW 195
#define BLOOD_STREAM_RED 70
#define BLOOD_STREAM_YELLOW 60

new gHealthIndex[MAX_PLAYERS+1]
new Float:hostage_hp[MAX_HOSTAGES], hostages[MAX_HOSTAGES], host_num

#if defined GIBS_ENABLED
new mdl_gib_flesh, mdl_gib_head, mdl_gib_legbone
new mdl_gib_lung, mdl_gib_meat, mdl_gib_spine
#endif

new spr_blood_drop, spr_blood_spray

#define BLOOD_SM_NUM 8
#define BLOOD_LG_NUM 2
new blood_small_red[BLOOD_SM_NUM], blood_large_red[BLOOD_LG_NUM]
//new blood_small_yellow[BLOOD_SM_NUM], blood_large_yellow[BLOOD_LG_NUM]

new mod_name[32], bool:body_hidden[33]
new pcvar_gore, pcvar_gore_exphp

//Offsets to place blood is more realistic hit location
new Offset[8][3] = {{0,0,10},{0,0,30},{0,0,16},{0,0,10},{4,4,16},{-4,-4,16},{4,4,-12},{-4,-4,-12}}

// #####################################################################
// ## Change which weapons cause GIB explosions on death HERE ##
// #####################################################################

public gib_wpncheck(iWeapon)
{
//This section is used for CS/CZ
if (cstrike_running()) {
switch (iWeapon) {
case CSW_P228 : return false
case CSW_SCOUT : return false
case CSW_HEGRENADE : return true
case CSW_XM1014 : return false
case CSW_C4 : return true
case CSW_MAC10 : return false
case CSW_AUG : return false
case CSW_SMOKEGRENADE : return true
case CSW_ELITE : return false
case CSW_FIVESEVEN : return false
case CSW_UMP45 : return false
case CSW_SG550 : return false
case CSW_GALIL : return false
case CSW_FAMAS : return false
case CSW_USP : return false
case CSW_GLOCK18 : return false
case CSW_AWP : return false
case CSW_MP5NAVY : return false
case CSW_M249 : return false
case CSW_M3 : return false
case CSW_M4A1 : return false
case CSW_TMP : return false
case CSW_G3SG1 : return false
case CSW_FLASHBANG : return true
case CSW_DEAGLE : return false
case CSW_SG552 : return false
case CSW_AK47 : return false
case CSW_KNIFE : return false
case CSW_P90 : return false
}
}
//This section is used for DoD
else if (equali(mod_name,"dod")) {
switch (iWeapon) {
case DODW_AMERKNIFE : return false
case DODW_GERKNIFE : return false
case DODW_COLT : return false
case DODW_LUGER : return false
case DODW_GARAND : return false
case DODW_SCOPED_KAR : return false
case DODW_THOMPSON : return false
case DODW_STG44 : return false
case DODW_SPRINGFIELD : return false
case DODW_KAR : return false
case DODW_BAR : return false
case DODW_MP40 : return false
case DODW_HANDGRENADE : return true
case DODW_STICKGRENADE : return true
case DODW_STICKGRENADE_EX : return true
case DODW_HANDGRENADE_EX : return true
case DODW_MG42 : return false
case DODW_30_CAL : return false
case DODW_SPADE : return false
case DODW_M1_CARBINE : return false
case DODW_MG34 : return false
case DODW_GREASEGUN : return false
case DODW_FG42 : return false
case DODW_K43 : return false
case DODW_ENFIELD : return false
case DODW_STEN : return false
case DODW_BREN : return false
case DODW_WEBLEY : return false
case DODW_BAZOOKA : return true
case DODW_PANZERSCHRECK : return false
case DODW_PIAT : return false
case DODW_SCOPED_FG42 : return false
case DODW_FOLDING_CARBINE : return false
case DODW_KAR_BAYONET : return false
case DODW_SCOPED_ENFIELD : return false
case DODW_MILLS_BOMB : return true
case DODW_BRITKNIFE : return false
case DODW_GARAND_BUTT : return false
case DODW_ENFIELD_BAYONET : return false
case DODW_MORTAR : return false
case DODW_K43_BUTT : return false
}
}
//This section is used for TFC
else if (equali(mod_name,"tfc")) {
switch (iWeapon) {
case TFC_WPN_NONE : return false
case TFC_WPN_TIMER : return false
case TFC_WPN_SENTRYGUN : return false
case TFC_WPN_MEDIKIT : return false
case TFC_WPN_SPANNER : return false
case TFC_WPN_AXE : return false
case TFC_WPN_SNIPERRIFLE : return false
case TFC_WPN_AUTORIFLE : return false
case TFC_WPN_SHOTGUN : return false
case TFC_WPN_SUPERSHOTGUN : return false
case TFC_WPN_NG : return false
case TFC_WPN_SUPERNG : return false
case TFC_WPN_GL : return false
case TFC_WPN_FLAMETHROWER : return false
case TFC_WPN_RPG : return true
case TFC_WPN_IC : return false
case TFC_WPN_FLAMES : return false
case TFC_WPN_AC : return false
case TFC_WPN_UNK18 : return false
case TFC_WPN_UNK19 : return false
case TFC_WPN_TRANQ : return false
case TFC_WPN_RAILGUN : return false
case TFC_WPN_PL : return false
case TFC_WPN_KNIFE : return false
case TFC_WPN_CALTROP : return false
case TFC_WPN_CONCUSSIONGRENADE : return true
case TFC_WPN_NORMALGRENADE : return true
case TFC_WPN_NAILGRENADE : return true
case TFC_WPN_MIRVGRENADE : return true
case TFC_WPN_NAPALMGRENADE : return true
case TFC_WPN_GASGRENADE : return false
case TFC_WPN_EMPGRENADE : return false
}

}
//This section is used for TS
else if (equali(mod_name,"ts")) {
switch (iWeapon) {
case TSW_GLOCK18 : return false
case TSW_UNK1 : return false
case TSW_UZI : return false
case TSW_M3 : return false
case TSW_M4A1 : return false
case TSW_MP5SD : return false
case TSW_MP5K : return false
case TSW_ABERETTAS : return false
case TSW_MK23 : return false
case TSW_AMK23 : return false
case TSW_USAS : return false
case TSW_DEAGLE : return false
case TSW_AK47 : return false
case TSW_57 : return false
case TSW_AUG : return false
case TSW_AUZI : return false
case TSW_TMP : return false
case TSW_M82A1 : return false
case TSW_MP7 : return false
case TSW_SPAS : return false
case TSW_GCOLTS : return false
case TSW_GLOCK20 : return false
case TSW_UMP : return false
case TSW_M61GRENADE : return true
case TSW_CKNIFE : return false
case TSW_MOSSBERG : return false
case TSW_M16A4 : return false
case TSW_MK1 : return false
case TSW_C4 : return true
case TSW_A57 : return false
case TSW_RBULL : return false
case TSW_M60E3 : return false
case TSW_SAWED_OFF : return true
case TSW_KATANA : return false
case TSW_SKNIFE : return false
case TSW_KUNG_FU : return false
case TSW_TKNIFE : return false
}
}
//This section is used for ESF
else if (equali(mod_name,"esf")) {
//Always do GIB explosions on ESF
return true
}
//This section is used for the "valve" mod
else if (equali(mod_name,"valve")) {
switch (iWeapon) {
case HLW_NONE : return false
case HLW_CROWBAR : return false
case HLW_GLOCK : return false
case HLW_PYTHON : return false
case HLW_MP5 : return false
case HLW_CHAINGUN : return false
case HLW_CROSSBOW : return false
case HLW_SHOTGUN : return false
case HLW_RPG : return true
case HLW_GAUSS : return false
case HLW_EGON : return false
case HLW_HORNETGUN : return false
case HLW_HANDGRENADE : return true
case HLW_TRIPMINE : return true
case HLW_SATCHEL : return true
case HLW_SNARK : return false
}
}

//Always false on Sven Co-op
return false
}

// #####################################################################
// ## DO NOT EDIT BELOW HERE ##
// #####################################################################

/************************************************************
* PLUGIN FUNCTIONS
************************************************************/

public plugin_init()
{
register_plugin("Ultimate Gore","1.6","JTP10181")

get_modname(mod_name,31)

if (cstrike_running()) {
register_logevent("event_roundstart", 2, "1=Round_Start")
register_event("TextMsg","event_host_damage","b","2=#Injured_Hostage")
register_event("TextMsg","event_host_killed","b","2=#Killed_Hostage")
register_message(122, "event_ClCorpse") //ClCorpse
}
else if (equali(mod_name,"dod")) {
register_message(126, "event_ClCorpse") //ClCorpse
}
else if (equali(mod_name,"esf")) {
register_event("DeathMsg","event_death","a")
register_event("Health","event_damage","b")
}
else if (equali(mod_name,"svencoop")) {
register_event("Damage","event_damage","b","2!0")
}
else if (equali(mod_name,"valve") || equali(mod_name,"ns")) {
register_event("DeathMsg","event_death","a")
register_event("Damage","event_damage","b","2!0")
}

register_event("ResetHUD","event_respawn","b")

pcvar_gore = register_cvar("amx_gore","abcd")
pcvar_gore_exphp = register_cvar("amx_gore_exphp","160")
set_task(1.5,"event_blood",100,"",0,"b")

// Blood decals
if (equali(mod_name,"cstrike")) {
blood_large_red = {204,205}
blood_small_red = {190,191,192,193,194,195,196,197}
}
else if (equali(mod_name,"czero")) {
blood_large_red = {216,217}
blood_small_red = {202,203,204,205,206,207,208,209}
}
else if (equali(mod_name,"dod")) {
blood_large_red = {217,218}
blood_small_red = {203,204,205,206,207,208,209,210}
}
else if (equali(mod_name,"tfc")) {
blood_large_red = {208,209}
blood_small_red = {194,195,196,197,198,199,200,201}
}
else if (equali(mod_name,"ts")) {
blood_large_red = {218,219}
blood_small_red = {204,205,206,207,208,209,210,211}
}
else if (equali(mod_name,"svencoop")) {
blood_large_red = {210,211}
blood_small_red = {196,197,198,199,200,201,202,203}
}
//"valve" mod and others that use its decals.wad (ESF, NS)
else {
blood_large_red = {19,20}
blood_small_red = {27,28,29,30,31,32,33,34}
}

//Setup jtp10181 CVAR
new cvarString[256], shortName[16]
copy(shortName,15,"gore")

register_cvar("jtp10181","",FCVAR_SERVER|FCVAR_SPONLY)
get_cvar_string("jtp10181",cvarString,255)

if (strlen(cvarString) == 0) {
formatex(cvarString,255,shortName)
set_cvar_string("jtp10181",cvarString)
}
else if (contain(cvarString,shortName) == -1) {
format(cvarString,255,"%s,%s",cvarString, shortName)
set_cvar_string("jtp10181",cvarString)
}
}

public plugin_natives()
{
set_module_filter("module_filter")
set_native_filter("native_filter")
}

public module_filter(const module[])
{
if (equali(module, "xstats")) {
if (cstrike_running()) return PLUGIN_CONTINUE
if (equali(mod_name,"dod")) return PLUGIN_CONTINUE
if (equali(mod_name,"tfc")) return PLUGIN_CONTINUE
if (equali(mod_name,"ts")) return PLUGIN_CONTINUE

return PLUGIN_HANDLED
}
return PLUGIN_CONTINUE
}

public native_filter(const name[], index, trap)
{
if (!trap) return PLUGIN_HANDLED

return PLUGIN_CONTINUE
}

public plugin_precache()
{
spr_blood_drop = precache_model("sprites/blood.spr")
spr_blood_spray = precache_model("sprites/bloodspray.spr")

#if defined GIBS_ENABLED
mdl_gib_flesh = precache_model("models/Fleshgibs.mdl")
mdl_gib_meat = precache_model("models/GIB_B_Gib.mdl")
mdl_gib_head = precache_model("models/GIB_Skull.mdl")

if (!equali(mod_name,"dod")) {
mdl_gib_spine = precache_model("models/GIB_B_Bone.mdl")
mdl_gib_lung = precache_model("models/GIB_Lung.mdl")
mdl_gib_legbone = precache_model("models/GIB_Legbone.mdl")
}
#endif
}

public plugin_cfg()
{
if (!cstrike_running()) return

new iEnt = -1
host_num = 0
while ((iEnt = engfunc(EngFunc_FindEntityByString, iEnt, "classname", "hostage_entity")) != 0) {
hostages[host_num++] = iEnt
if (host_num >= MAX_HOSTAGES) break
}
}

//Custom function to get origin with FM and return it as an integer
public get_origin_int(index, origin[3])
{
new Float:FVec[3]

pev(index,pev_origin,FVec)

origin[0] = floatround(FVec[0])
origin[1] = floatround(FVec[1])
origin[2] = floatround(FVec[2])

return 1
}

/************************************************************
* EVENTS
************************************************************/

//For "valve", ESF, NS, SvenCoop
public event_damage(iVictim)
{
if (iVictim <= 0 || iVictim > MAX_PLAYERS) return

new iWeapon, iHitPlace, iAgressor
iAgressor = get_user_attacker(iVictim,iWeapon,iHitPlace)

//Sven Co-op does not seem to send Death messages so we will do this
if (equali(mod_name,"svencoop")) {
if (get_user_health(iVictim) <=0) {
process_death(iAgressor, iVictim, iWeapon, iHitPlace)
return
}
}

process_damage(iAgressor, iVictim, iHitPlace)
}

//Forward for CS/CZ, DoD, TFC, TS
public client_damage(attacker,victim,damage,wpnindex,hitplace)
{
if (victim <= 0 || victim > MAX_PLAYERS) return
process_damage(attacker, victim, hitplace)
}

//This will process the damage info for all mods
process_damage(iAgressor, iVictim, iHitPlace)
{
new iFlags = get_gore_flags()

//Don't want to do this if the player just died
new vHealth = get_user_health(iVictim)
if (vHealth <= 0 || vHealth >= gHealthIndex[iVictim]) return

//server_print("************************* DAMAGE: %d %d %d %d", iVictim, iAgressor, vHealth, iHitPlace)

gHealthIndex[iVictim] = vHealth

//Check to make sure its a valid entity
if (!pev_valid(iAgressor)) {
iAgressor = iVictim
iHitPlace = 0
}

//Crash/error check
if (!is_user_connected(iVictim)) return
if (iHitPlace < 0 || iHitPlace > 7) iHitPlace = 0

if (iFlags&GORE_BLOOD) {
new iOrigin[3], iOrigin2[3]
get_origin_int(iVictim,iOrigin)
get_origin_int(iAgressor,iOrigin2)

fx_blood(iOrigin,iOrigin2,iHitPlace)
fx_blood_small(iOrigin,8)
if (iFlags&GORE_EXTRA) {
fx_blood(iOrigin,iOrigin2,iHitPlace)
fx_blood(iOrigin,iOrigin2,iHitPlace)
fx_blood(iOrigin,iOrigin2,iHitPlace)
fx_blood_small(iOrigin,4)
}
}
}

//Hostage Event for CS/CZ
public event_host_damage(iAgressor)
{
new Float:vHeatlh, iVictim, iHitPlace = 0
new iFlags = get_gore_flags()
new hostid, Float:hosthp

if (!(iFlags&GORE_HOSTAGES)) return

//Find what hostage was injured
for (new x = 0; x < host_num; x++) {
hostid = hostages[x]
hosthp = hostage_hp[x]

if (!pev_valid(hostid)) continue
if (hosthp <= 0.0) continue
pev(hostid, pev_health, vHeatlh)

if (vHeatlh > 0.0 && vHeatlh < hosthp) {
iVictim = hostid
}

hosthp = vHeatlh
}

//No valid hostage entity found
if (iVictim <= 0) return

//Check to make sure its a player
if (!is_user_connected(iAgressor)) {
iAgressor = iVictim
}

if (iFlags&GORE_BLOOD) {
new iOrigin[3], iOrigin2[3]

get_origin_int(iVictim, iOrigin)
get_origin_int(iAgressor, iOrigin2)

//Add height to Hostage origin
iOrigin[2] += 36

fx_blood(iOrigin,iOrigin2,iHitPlace)
fx_blood_small(iOrigin,8)
if (iFlags&GORE_EXTRA) {
fx_blood(iOrigin,iOrigin2,iHitPlace)
fx_blood(iOrigin,iOrigin2,iHitPlace)
fx_blood(iOrigin,iOrigin2,iHitPlace)
fx_blood_small(iOrigin,4)
}
}
}

//For "valve", ESF, NS
public event_death()
{
new iVictim = read_data(2)
new iWeapon, iHitPlace

if (iVictim <= 0 || iVictim > MAX_PLAYERS) return
new iAgressor = get_user_attacker(iVictim,iWeapon,iHitPlace)

process_death(iAgressor, iVictim, iWeapon, iHitPlace)
}

//Forward for CS/CZ, DoD, TFC, TS
public client_death(killer,victim,wpnindex,hitplace)
{
if (victim <= 0 || victim > MAX_PLAYERS) return
process_death(killer, victim, wpnindex, hitplace)
}

//This will process the death info for all mods
process_death(iAgressor, iVictim, iWeapon, iHitPlace)
{
//server_print("************************* DEATH: %d %d %d %d", iVictim, iAgressor, iWeapon, iHitPlace)

new iOrigin[3], iOrigin2[3]
new iFlags = get_gore_flags()

//Check to make sure its a valid entity
if (!pev_valid(iAgressor)) {
iAgressor = iVictim
iWeapon = 0
iHitPlace = 0
}

if (!is_user_connected(iVictim)) return

get_origin_int(iVictim, iOrigin)
get_origin_int(iAgressor, iOrigin2)

if (iFlags&GORE_HEADSHOT && iHitPlace == HIT_HEAD) {
fx_headshot(iOrigin)
}

#if defined GIBS_ENABLED
if (iFlags&GORE_GIB && (gib_wpncheck(iWeapon) || gHealthIndex[iVictim] - get_user_health(iVictim) >= get_pcvar_num(pcvar_gore_exphp))) {

// Effects
fx_invisible(iVictim)
body_hidden[iVictim] = true

fx_gib_explode(iOrigin,iOrigin2)
fx_blood_large(iOrigin,4)
fx_blood_small(iOrigin,4)
}
#endif

fx_blood_small(iOrigin,8)

if (iFlags&GORE_EXTRA && !equali(mod_name,"dod")) {
fx_extra_blood(iOrigin)
fx_blood_large(iOrigin,2)
fx_blood_small(iOrigin,4)
}
}

//Hostage Event for CS/CZ
public event_host_killed(iAgressor)
{
new Float:vHeatlh, HP_Loss, iVictim, iWeapon = 0, clip, ammo
new iFlags = get_gore_flags()
new hostid, Float:hosthp

if (!(iFlags&GORE_HOSTAGES)) return

//Find what hostage was killed
for (new x = 0; x < host_num; x++) {
hostid = hostages[x]
hosthp = hostage_hp[x]

if (!pev_valid(hostid)) continue
if (hosthp <= 0.0) continue

pev(hostid, pev_health, vHeatlh)

if (vHeatlh <= 0.0 && vHeatlh < hosthp) {
iVictim = hostid
HP_Loss = floatround(hosthp - vHeatlh)
}

hosthp = vHeatlh
}

//No valid hostage entity found
if (iVictim <= 0) return

//Check to make sure its a player
if (is_user_alive(iAgressor)) {
iWeapon = get_user_weapon(iAgressor,clip,ammo)
}
else {
iAgressor = iVictim
}

new iOrigin[3], iOrigin2[3]

get_origin_int(iVictim, iOrigin)
get_origin_int(iAgressor, iOrigin2)

//Add height to Hostage origin
iOrigin[2] += 36

#if defined GIBS_ENABLED
if (iFlags&GORE_GIB && (gib_wpncheck(iWeapon) || HP_Loss >= floatround(get_pcvar_float(pcvar_gore_exphp) * 0.6))) {

// Effects
fx_invisible(iVictim)
fx_gib_explode(iOrigin,iOrigin2)
fx_blood_large(iOrigin,4)
fx_blood_small(iOrigin,4)
}
#endif

fx_blood_small(iOrigin,8)
if (iFlags&GORE_EXTRA) {
fx_extra_blood(iOrigin)
fx_blood_large(iOrigin,2)
fx_blood_small(iOrigin,4)
}
}

public event_blood()
{
new iFlags = get_gore_flags()
if (!(iFlags&GORE_BLEEDING)) return

new iPlayer, iPlayers[MAX_PLAYERS], iNumPlayers, iOrigin[3]
get_players(iPlayers,iNumPlayers,"a")
for (new i = 0; i < iNumPlayers; i++) {
iPlayer = iPlayers[i]
gHealthIndex[iPlayer] = get_user_health(iPlayer)
if (gHealthIndex[iPlayer] < 20) {
get_origin_int(iPlayer, iOrigin)
fx_bleed(iOrigin)
fx_blood_small(iOrigin,3)
}
}

if (!(iFlags&GORE_HOSTAGES)) return

//Hostage Bleeding
if (cstrike_running()) {
new iOrigin[3], hostid, Float:hosthp
for (new x = 0; x < host_num; x++) {
hostid = hostages[x]
hosthp = hostage_hp[x]
if (!pev_valid(hostid)) continue
pev(hostid, pev_health, hosthp)
if (hosthp > 0.0 && hosthp < 20.0) {
get_origin_int(hostid, iOrigin)
iOrigin[2] += 36.0
fx_bleed(iOrigin)
fx_blood_small(iOrigin,3)
}
}
}
}

public event_respawn(id)
{
if (is_user_alive(id)) {
//Reset body_hidden flag
body_hidden[id] = false
//Restore model visibility
set_pev(id, pev_rendermode, kRenderNormal)
//Save clients current Health
gHealthIndex[id] = get_user_health(id)
}
}

public event_roundstart(id)
{
set_task(0.1,"roundstart_delay",100)
}

public roundstart_delay()
{
for ( new id = 1; id <= MAX_PLAYERS; id++ ) {
if (is_user_alive(id)) {
//Reset body_hidden flag
body_hidden[id] = false
//Save clients current Health
gHealthIndex[id] = get_user_health(id)
}
}

if (cstrike_running()) {
new hostid
for (new x = 0; x < host_num; x++) {
hostid = hostages[x]
if (!pev_valid(hostid)) continue
set_pev(hostid, pev_rendermode, kRenderNormal)
pev(hostid, pev_health, hostage_hp[x])
}
}
}

//Hides Corpses in CS / DoD
public event_ClCorpse()
{
//If there is not 12 args something is wrong
if (get_msg_args() != 12) return PLUGIN_CONTINUE

//Arg 12 is the player id the corpse is for
new id = get_msg_arg_int(12)

//If the corpse should be hidden block this message
if (body_hidden[id]) return PLUGIN_HANDLED

return PLUGIN_CONTINUE
}

public get_gore_flags()
{
new sFlags[24]
get_pcvar_string(pcvar_gore,sFlags,23)
return read_flags(sFlags)
}

/************************************************************
* FX FUNCTIONS
************************************************************/

fx_invisible(id)
{
set_pev(id, pev_renderfx, kRenderFxNone)
set_pev(id, pev_rendermode, kRenderTransAlpha)
set_pev(id, pev_renderamt, 0.0)
}

fx_blood(origin[3],origin2[3],HitPlace)
{
//Crash Checks
if (HitPlace < 0 || HitPlace > 7) HitPlace = 0
new rDistance = get_distance(origin,origin2) ? get_distance(origin,origin2) : 1

new rX = ((origin[0]-origin2[0]) * 300) / rDistance
new rY = ((origin[1]-origin2[1]) * 300) / rDistance
new rZ = ((origin[2]-origin2[2]) * 300) / rDistance

message_begin(MSG_BROADCAST,SVC_TEMPENTITY)
write_byte(TE_BLOODSTREAM)
write_coord(origin[0]+Offset[HitPlace][0])
write_coord(origin[1]+Offset[HitPlace][1])
write_coord(origin[2]+Offset[HitPlace][2])
write_coord(rX) // x
write_coord(rY) // y
write_coord(rZ) // z
write_byte(BLOOD_STREAM_RED) // color
write_byte(random_num(100,200)) // speed
message_end()
}

fx_bleed(origin[3])
{
// Blood spray
message_begin(MSG_BROADCAST,SVC_TEMPENTITY)
write_byte(TE_BLOODSTREAM)
write_coord(origin[0])
write_coord(origin[1])
write_coord(origin[2]+10)
write_coord(random_num(-360,360)) // x
write_coord(random_num(-360,360)) // y
write_coord(-10) // z
write_byte(BLOOD_STREAM_RED) // color
write_byte(random_num(50,100)) // speed
message_end()
}

fx_blood_small(origin[3],num)
{
if (equali(mod_name,"esf")) return

// Write Small splash decal
for (new j = 0; j < num; j++) {
message_begin(MSG_BROADCAST,SVC_TEMPENTITY)
write_byte(TE_WORLDDECAL)
write_coord(origin[0]+random_num(-100,100))
write_coord(origin[1]+random_num(-100,100))
write_coord(origin[2]-36)
write_byte(blood_small_red[random_num(0,BLOOD_SM_NUM - 1)]) // index
message_end()
}
}

fx_blood_large(origin[3],num)
{
if (equali(mod_name,"esf")) return

// Write Large splash decal
for (new i = 0; i < num; i++) {
message_begin(MSG_BROADCAST,SVC_TEMPENTITY)
write_byte(TE_WORLDDECAL)
write_coord(origin[0]+random_num(-50,50))
write_coord(origin[1]+random_num(-50,50))
write_coord(origin[2]-36)
write_byte(blood_large_red[random_num(0,BLOOD_LG_NUM - 1)]) // index
message_end()
}
}

#if defined GIBS_ENABLED
fx_gib_explode(origin[3],origin2[3])
{
new flesh[2]
flesh[0] = mdl_gib_flesh
flesh[1] = mdl_gib_meat
new mult, gibtime = 400 //40 seconds

if (equali(mod_name,"esf")) mult = 400
else if (equali(mod_name,"ts")) mult = 140
else mult = 80

new rDistance = get_distance(origin,origin2) ? get_distance(origin,origin2) : 1
new rX = ((origin[0]-origin2[0]) * mult) / rDistance
new rY = ((origin[1]-origin2[1]) * mult) / rDistance
new rZ = ((origin[2]-origin2[2]) * mult) / rDistance
new rXm = rX >= 0 ? 1 : -1
new rYm = rY >= 0 ? 1 : -1
new rZm = rZ >= 0 ? 1 : -1

// Gib explosions

// Head
message_begin(MSG_BROADCAST,SVC_TEMPENTITY)
write_byte(TE_MODEL)
write_coord(origin[0])
write_coord(origin[1])
write_coord(origin[2]+40)
write_coord(rX + (rXm * random_num(0,80)))
write_coord(rY + (rYm * random_num(0,80)))
write_coord(rZ + (rZm * random_num(80,200)))
write_angle(random_num(0,360))
write_short(mdl_gib_head)
write_byte(0) // bounce
write_byte(gibtime) // life
message_end()

// Parts
for(new i = 0; i < 4; i++) {
message_begin(MSG_BROADCAST,SVC_TEMPENTITY)
write_byte(TE_MODEL)
write_coord(origin[0])
write_coord(origin[1])
write_coord(origin[2])
write_coord(rX + (rXm * random_num(0,80)))
write_coord(rY + (rYm * random_num(0,80)))
write_coord(rZ + (rZm * random_num(80,200)))
write_angle(random_num(0,360))
write_short(flesh[random_num(0,1)])
write_byte(0) // bounce
write_byte(gibtime) // life
message_end()
}

if (!equali(mod_name,"dod")) {

// Spine
message_begin(MSG_BROADCAST,SVC_TEMPENTITY)
write_byte(TE_MODEL)
write_coord(origin[0])
write_coord(origin[1])
write_coord(origin[2]+30)
write_coord(rX + (rXm * random_num(0,80)))
write_coord(rY + (rYm * random_num(0,80)))
write_coord(rZ + (rZm * random_num(80,200)))
write_angle(random_num(0,360))
write_short(mdl_gib_spine)
write_byte(0) // bounce
write_byte(gibtime) // life
message_end()

// Lung
for(new i = 0; i <= 1; i++) {
message_begin(MSG_BROADCAST,SVC_TEMPENTITY)
write_byte(TE_MODEL)
write_coord(origin[0])
write_coord(origin[1])
write_coord(origin[2]+10)
write_coord(rX + (rXm * random_num(0,80)))
write_coord(rY + (rYm * random_num(0,80)))
write_coord(rZ + (rZm * random_num(80,200)))
write_angle(random_num(0,360))
write_short(mdl_gib_lung)
write_byte(0) // bounce
write_byte(gibtime) // life
message_end()
}

//Legs
for(new i = 0; i <= 1; i++) {
message_begin(MSG_BROADCAST,SVC_TEMPENTITY)
write_byte(TE_MODEL)
write_coord(origin[0])
write_coord(origin[1])
write_coord(origin[2]-10)
write_coord(rX + (rXm * random_num(0,80)))
write_coord(rY + (rYm * random_num(0,80)))
write_coord(rZ + (rZm * random_num(80,200)))
write_angle(random_num(0,360))
write_short(mdl_gib_legbone)
write_byte(0) // bounce
write_byte(gibtime) // life
message_end()
}
}

message_begin(MSG_BROADCAST,SVC_TEMPENTITY)
write_byte(TE_BLOODSPRITE)
write_coord(origin[0])
write_coord(origin[1])
write_coord(origin[2]+20)
write_short(spr_blood_spray)
write_short(spr_blood_drop)
write_byte(BLOOD_COLOR_RED) // color index
write_byte(10) // size
message_end()
}
#endif

fx_extra_blood(origin[3])
{
new x, y, z

for(new i = 0; i < 3; i++) {
x = random_num(-15,15)
y = random_num(-15,15)
z = random_num(-20,25)
for(new j = 0; j < 2; j++) {
message_begin(MSG_BROADCAST,SVC_TEMPENTITY)
write_byte(TE_BLOODSPRITE)
write_coord(origin[0]+(x*j))
write_coord(origin[1]+(y*j))
write_coord(origin[2]+(z*j))
write_short(spr_blood_spray)
write_short(spr_blood_drop)
write_byte(BLOOD_COLOR_RED) // color index
write_byte(15) // size
message_end()
}
}
}

fx_headshot(origin[3])
{
new iFlags = get_gore_flags()

new Sprays = 1

if (iFlags&GORE_EXTRA || iFlags&GORE_EXTRA_HS) {
if (equali(mod_name,"dod")) Sprays = 4
else Sprays = 8
}

message_begin(MSG_BROADCAST,SVC_TEMPENTITY)
write_byte(TE_BLOODSPRITE)
write_coord(origin[0])
write_coord(origin[1])
write_coord(origin[2]+40)
write_short(spr_blood_spray)
write_short(spr_blood_drop)
write_byte(BLOOD_COLOR_RED) // color index
write_byte(15) // size
message_end()

// Blood sprays
for (new i = 0; i < Sprays; i++) {
message_begin(MSG_BROADCAST,SVC_TEMPENTITY)
write_byte(TE_BLOODSTREAM)
write_coord(origin[0])
write_coord(origin[1])
write_coord(origin[2]+40)
write_coord(random_num(-30,30)) // x
write_coord(random_num(-30,30)) // y
write_coord(random_num(80,300)) // z
write_byte(BLOOD_STREAM_RED) // color
write_byte(random_num(100,200)) // speed
message_end()
}
}


Отредактировал: TheNega, - 7.2.2014, 1:40
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя csnet
сообщение 7.2.2014, 8:31
Сообщение #7
Стаж: 12 лет

Сообщений: 4808
Благодарностей: 3849
Полезность: 690

не тестировал


Код:
 #include <amxmodx>
#include <fakemeta>
#include <hamsandwich>


#define PLUGIN "Hs blood"
#define VERSION "1.0"
#define AUTHOR "csp.admin"

new const spr_blood[] = "sprites/blood.spr"
new g_sprBlood

const m_LastHitGroup = 75;
#define IsHs(%0) ( !!( get_pdata_int( %0, m_LastHitGroup ) == HIT_HEAD ) )

public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
RegisterHam(Ham_Killed,"player","killed", 1)
}


public plugin_precache() g_sprBlood = precache_model(spr_blood)

public killed(bot , 4it) {

if(!is_user_alive(4it)) return HAM_IGNORED
if(IsHs(bot)) make_blood(bot,30)

return HAM_IGNORED
}





stock make_blood(id, scale)
{
new Float:iVictimOrigin[3]
pev(id, pev_origin, iVictimOrigin)

message_begin(MSG_BROADCAST, SVC_TEMPENTITY)
write_byte(115)
write_coord(floatround(iVictimOrigin[0]+random_num(-20,20)))
write_coord(floatround(iVictimOrigin[1]+random_num(-20,20)))
write_coord(floatround(iVictimOrigin[2]+random_num(-20,20)))
write_short(g_sprBlood)
write_short(g_sprBlood)
write_byte(248)
write_byte(scale)
message_end()
}


//upd fixed blood sprite

колво крови // make_blood(bot,30)

ставь от 5 до ... настроишь как удобно

Отредактировал: csnet, - 7.2.2014, 8:54


go v cs:go
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 3 раз
   + Цитировать сообщение
eckoecko
сообщение 7.2.2014, 10:31
Сообщение #8
Стаж: 14 лет

Сообщений: 1705
Благодарностей: 266
Полезность: 0

Цитата(csnet @ 7.2.2014, 9:31) *
не тестировал


Код:
 #include <amxmodx>
#include <fakemeta>
#include <hamsandwich>


#define PLUGIN "Hs blood"
#define VERSION "1.0"
#define AUTHOR "csp.admin"

new const spr_blood[] = "sprites/blood.spr"
new g_sprBlood

const m_LastHitGroup = 75;
#define IsHs(%0) ( !!( get_pdata_int( %0, m_LastHitGroup ) == HIT_HEAD ) )

public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
RegisterHam(Ham_Killed,"player","killed", 1)
}


public plugin_precache() g_sprBlood = precache_model(spr_blood)

public killed(bot , 4it) {

if(!is_user_alive(4it)) return HAM_IGNORED
if(IsHs(bot)) make_blood(bot,30)

return HAM_IGNORED
}





stock make_blood(id, scale)
{
new Float:iVictimOrigin[3]
pev(id, pev_origin, iVictimOrigin)

message_begin(MSG_BROADCAST, SVC_TEMPENTITY)
write_byte(115)
write_coord(floatround(iVictimOrigin[0]+random_num(-20,20)))
write_coord(floatround(iVictimOrigin[1]+random_num(-20,20)))
write_coord(floatround(iVictimOrigin[2]+random_num(-20,20)))
write_short(g_sprBlood)
write_short(g_sprBlood)
write_byte(248)
write_byte(scale)
message_end()
}


//upd fixed blood sprite

колво крови // make_blood(bot,30)

ставь от 5 до ... настроишь как удобно

Нагрузка большая?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя s7kam
сообщение 7.2.2014, 10:58
Сообщение #9


Стаж: 15 лет

Сообщений: 128
Благодарностей: 38
Полезность: 234

очень простой плагин крови может по дойдет
Скрытый текст

Код:
#include <amxmodx>
#include <amxmisc>
//
#define PLUGIN "many blood"
#define VERSION "1"
#define AUTHOR "Arctic"
//
new blood_drop
new blood_spray
//
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
register_event("Damage","dmg_blood","b","2!0","3=0","4!0")
register_event("DeathMsg","death_blood","a")
}

public plugin_precache()
{
blood_drop = precache_model("sprites/blood.spr")
blood_spray = precache_model("sprites/bloodspray.spr")
}

public dmg_blood()
{
new id=read_data(0)
if(is_user_alive(id))
{
new origin[3]
get_user_origin(id,origin)
fx_blood_red(origin)
fx_blood_small_red(origin,3)
fx_blood_large_red(origin,7)
}
}

public fx_blood_red(origin[3]) //hit blood human
{
message_begin(MSG_BROADCAST,SVC_TEMPENTITY)
write_byte(115) //TE_BLOODSPRITE in const.h
write_coord(origin[0]+random_num(-20,20))
write_coord(origin[1]+random_num(-20,20))
write_coord(origin[2]+random_num(-20,20))
write_short(blood_spray)
write_short(blood_drop)
write_byte(248) // color index
write_byte(15) // size
message_end()
}

static fx_blood_small_red(origin[3],num) //red blood decals [small]
{
// Blood decals
static const blood_small[7] = {190,191,192,193,194,195,197}
// Small splash
for (new j = 0; j < num; j++) {
message_begin(MSG_BROADCAST,SVC_TEMPENTITY)
write_byte(116) //TE_WORLDDECAL from const.h
write_coord(origin[0]+random_num(-100,100))
write_coord(origin[1]+random_num(-100,100))
write_coord(origin[2]-36)
write_byte(blood_small[random_num(0,6)]) // index
message_end()
}
}

static fx_blood_large_red(origin[3],num) //red blood decals [ big]
{
// Blood decals
static const blood_large[2] = {204,205}

// Large splash
for (new i = 0; i < num; i++) {
message_begin(MSG_BROADCAST,SVC_TEMPENTITY)
write_byte(116) //TE_WORLDDECAL from const.h
write_coord(origin[0]+random_num(-50,50))
write_coord(origin[1]+random_num(-50,50))
write_coord(origin[2]-36)
write_byte(blood_large[random_num(0,1)]) // index
message_end()
}
}

public fx_headshot_red(origin[3])
{
// Blood spray, 5 times
for (new i = 0; i < 5; i++) {
message_begin(MSG_BROADCAST,SVC_TEMPENTITY)
write_byte(101)
write_coord(origin[0])
write_coord(origin[1])
write_coord(origin[2]+30)
write_coord(random_num(-20,20)) // x
write_coord(random_num(-20,20)) // y
write_coord(random_num(50,300)) // z
write_byte(70) // color
write_byte(random_num(100,200)) // speed
message_end()
}
}

public death_blood()
{
new iOrigin[3]
new sWeapon[32]
new id = read_data(2)
new iHeadshot = read_data(3)

read_data(4,sWeapon,31)

if (iHeadshot)
{
get_user_origin(id,iOrigin)
fx_headshot_red(iOrigin)
fx_blood_large_red(iOrigin,2)
fx_blood_small_red(iOrigin,5)
}
fx_blood_small_red(iOrigin,12)
fx_blood_large_red(iOrigin,5)
}


Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
eckoecko
сообщение 7.2.2014, 11:02
Сообщение #10
Стаж: 14 лет

Сообщений: 1705
Благодарностей: 266
Полезность: 0

Цитата(s7kam @ 7.2.2014, 11:58) *
очень простой плагин крови может по дойдет
Скрытый текст

Код:
#include <amxmodx>
#include <amxmisc>
//
#define PLUGIN "many blood"
#define VERSION "1"
#define AUTHOR "Arctic"
//
new blood_drop
new blood_spray
//
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
register_event("Damage","dmg_blood","b","2!0","3=0","4!0")
register_event("DeathMsg","death_blood","a")
}

public plugin_precache()
{
blood_drop = precache_model("sprites/blood.spr")
blood_spray = precache_model("sprites/bloodspray.spr")
}

public dmg_blood()
{
new id=read_data(0)
if(is_user_alive(id))
{
new origin[3]
get_user_origin(id,origin)
fx_blood_red(origin)
fx_blood_small_red(origin,3)
fx_blood_large_red(origin,7)
}
}

public fx_blood_red(origin[3]) //hit blood human
{
message_begin(MSG_BROADCAST,SVC_TEMPENTITY)
write_byte(115) //TE_BLOODSPRITE in const.h
write_coord(origin[0]+random_num(-20,20))
write_coord(origin[1]+random_num(-20,20))
write_coord(origin[2]+random_num(-20,20))
write_short(blood_spray)
write_short(blood_drop)
write_byte(248) // color index
write_byte(15) // size
message_end()
}

static fx_blood_small_red(origin[3],num) //red blood decals [small]
{
// Blood decals
static const blood_small[7] = {190,191,192,193,194,195,197}
// Small splash
for (new j = 0; j < num; j++) {
message_begin(MSG_BROADCAST,SVC_TEMPENTITY)
write_byte(116) //TE_WORLDDECAL from const.h
write_coord(origin[0]+random_num(-100,100))
write_coord(origin[1]+random_num(-100,100))
write_coord(origin[2]-36)
write_byte(blood_small[random_num(0,6)]) // index
message_end()
}
}

static fx_blood_large_red(origin[3],num) //red blood decals [ big]
{
// Blood decals
static const blood_large[2] = {204,205}

// Large splash
for (new i = 0; i < num; i++) {
message_begin(MSG_BROADCAST,SVC_TEMPENTITY)
write_byte(116) //TE_WORLDDECAL from const.h
write_coord(origin[0]+random_num(-50,50))
write_coord(origin[1]+random_num(-50,50))
write_coord(origin[2]-36)
write_byte(blood_large[random_num(0,1)]) // index
message_end()
}
}

public fx_headshot_red(origin[3])
{
// Blood spray, 5 times
for (new i = 0; i < 5; i++) {
message_begin(MSG_BROADCAST,SVC_TEMPENTITY)
write_byte(101)
write_coord(origin[0])
write_coord(origin[1])
write_coord(origin[2]+30)
write_coord(random_num(-20,20)) // x
write_coord(random_num(-20,20)) // y
write_coord(random_num(50,300)) // z
write_byte(70) // color
write_byte(random_num(100,200)) // speed
message_end()
}
}

public death_blood()
{
new iOrigin[3]
new sWeapon[32]
new id = read_data(2)
new iHeadshot = read_data(3)

read_data(4,sWeapon,31)

if (iHeadshot)
{
get_user_origin(id,iOrigin)
fx_headshot_red(iOrigin)
fx_blood_large_red(iOrigin,2)
fx_blood_small_red(iOrigin,5)
}
fx_blood_small_red(iOrigin,12)
fx_blood_large_red(iOrigin,5)
}



Нагрузка?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя s7kam
сообщение 7.2.2014, 11:19
Сообщение #11


Стаж: 15 лет

Сообщений: 128
Благодарностей: 38
Полезность: 234

Цитата(eckoecko @ 7.2.2014, 13:02) *
Нагрузка?



100
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя cstriker
сообщение 7.2.2014, 11:26
Сообщение #12


Иконка группы

Стаж: 13 лет

Сообщений: 1233
Благодарностей: 586
Полезность: 869

Скрытый текст
Цитата
Нагрузка большая?

Это даже как-то смешно читать
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
eckoecko
сообщение 7.2.2014, 13:02
Сообщение #13
Стаж: 14 лет

Сообщений: 1705
Благодарностей: 266
Полезность: 0

Цитата(Wellon @ 7.2.2014, 12:26) *
Скрытый текст

Это даже как-то смешно читать

Молодец.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя TheNega
сообщение 8.2.2014, 15:26
Сообщение #14


Стаж: 13 лет

Сообщений: 724
Благодарностей: 1396
Полезность: 1101

Цитата(csnet @ 7.2.2014, 9:31) *
не тестировал


Скрытый текст
Код:
 #include <amxmodx>
#include <fakemeta>
#include <hamsandwich>


#define PLUGIN "Hs blood"
#define VERSION "1.0"
#define AUTHOR "csp.admin"

new const spr_blood[] = "sprites/blood.spr"
new g_sprBlood

const m_LastHitGroup = 75;
#define IsHs(%0) ( !!( get_pdata_int( %0, m_LastHitGroup ) == HIT_HEAD ) )

public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
RegisterHam(Ham_Killed,"player","killed", 1)
}


public plugin_precache() g_sprBlood = precache_model(spr_blood)

public killed(bot , 4it) {

if(!is_user_alive(4it)) return HAM_IGNORED
if(IsHs(bot)) make_blood(bot,30)

return HAM_IGNORED
}





stock make_blood(id, scale)
{
new Float:iVictimOrigin[3]
pev(id, pev_origin, iVictimOrigin)

message_begin(MSG_BROADCAST, SVC_TEMPENTITY)
write_byte(115)
write_coord(floatround(iVictimOrigin[0]+random_num(-20,20)))
write_coord(floatround(iVictimOrigin[1]+random_num(-20,20)))
write_coord(floatround(iVictimOrigin[2]+random_num(-20,20)))
write_short(g_sprBlood)
write_short(g_sprBlood)
write_byte(248)
write_byte(scale)
message_end()
}


//upd fixed blood sprite

колво крови // make_blood(bot,30)

ставь от 5 до ... настроишь как удобно


Ошибки при компиляции:


Отредактировал: TheNega, - 8.2.2014, 15:29
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
eckoecko
сообщение 8.2.2014, 15:31
Сообщение #15
Стаж: 14 лет

Сообщений: 1705
Благодарностей: 266
Полезность: 0

TheNega, в исходнике 4it на chit замени

Отредактировал: eckoecko, - 8.2.2014, 15:32
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя TheNega
сообщение 8.2.2014, 15:41
Сообщение #16


Стаж: 13 лет

Сообщений: 724
Благодарностей: 1396
Полезность: 1101

csnet, всё , отлично , хорошая замена Ultimate Gore.
eckoecko, исправил , нормально скомпилировался , работает на ура.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
eckoecko
сообщение 8.2.2014, 16:06
Сообщение #17
Стаж: 14 лет

Сообщений: 1705
Благодарностей: 266
Полезность: 0

TheNega, диествительный хороший плагин
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя csnet
сообщение 8.2.2014, 16:24
Сообщение #18
Стаж: 12 лет

Сообщений: 4808
Благодарностей: 3849
Полезность: 690

нагрузки там нет. так как вызывает только в момент убийства

Отредактировал: csnet, - 8.2.2014, 16:24


go v cs:go
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
  Ответить в данную темуНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: