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

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

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

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

> Информационная доска

Данный раздел предназначен для обсуждения, а также решения технических проблем связанных с серверной частью. Обсуждения касательно игровых клиентов ведутся здесь.

1. Во время создания новой темы аккуратно оформляйте её, не допускайте грамматических ошибок.
2. Описывая проблему старайтесь, как можно больше рассказать о ней, а так же о действиях с сервером после которых она возникла, по возможности подкрепите информацию логами.
3. Если вопрос касается проблемы в работе сервера, то обязательно прикрепляйте список плагинов (введите в консоли сервера: meta list и amxx plugins), настройки server.cfg, логи. Так же указывайте операционную систему, версию HLDS (введите к консоли сервера: version) и где хостится сервер.

Длинную информацию скрывайте под спойлер.
2 страниц V   1 2

Подствольник к M4a1 2 и M203

, Подствольник к M4a1 2 и m203
Статус пользователя Rex08
сообщение 25.7.2008, 9:45
Сообщение #1
Стаж: 17 лет

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

Извеняюсь за ещё одну тему , но ту закрыли .
У меня проблемма . m4 без подствольника .
а когда я пытаюсь писать say /buyswm4 , то пишет but time is over .

А ещё поставил m203 с подствольной гранатой , но когда пытаюсь стельнуть ( нажимаю на правую кнопку ) , то пишет то , что на скриншоте Прикрепленное изображение
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Статус пользователя yah0oo
сообщение 25.7.2008, 9:50
Сообщение #2


Стаж: 18 лет

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

Цитата(Rex08 @ 25.7.2008, 10:45) *
Извеняюсь за ещё одну тему , но ту закрыли .
У меня проблемма . m4 без подствольника .
а когда я пытаюсь писать say /buyswm4 , то пишет but time is over .

А ещё поставил m203 с подствольной гранатой , но когда пытаюсь стельнуть ( нажимаю на правую кнопку ) , то пишет то , что на скриншоте Прикрепленное изображение


Пишет что для этого оружия нельзя гранаты , либо они у тебя закончились, или их даже нет =)

Отредактировал: yah0oo, - 25.7.2008, 9:51
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Rex08
сообщение 25.7.2008, 10:09
Сообщение #3
Стаж: 17 лет

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

Может я не понял , что делать . Я дам ссылки откуда я это брал посмотри плиз и подскажи если ожкшь
http://forums.alliedmods.net/showthread.php?p=66556

http://forums.alliedmods.net/showthread.php?p=438436
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя yah0oo
сообщение 25.7.2008, 10:29
Сообщение #4


Стаж: 18 лет

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

Цитата(Rex08 @ 25.7.2008, 11:09) *
Может я не понял , что делать . Я дам ссылки откуда я это брал посмотри плиз и подскажи если ожкшь
http://forums.alliedmods.net/showthread.php?p=66556

http://forums.alliedmods.net/showthread.php?p=438436


4.Fire grenade:

press "+attack2" key to launch grenade

---
Нажми на вторую атаку что-бы кинуть гранату =\

++
Если не кидается то посмотри конфиг сеье , возможно у тебя они отключены
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Rex08
сообщение 25.7.2008, 10:49
Сообщение #5
Стаж: 17 лет

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

/*/// Mp5+M203 Launcher - by PaintLancer
/////////////////////////////
Resources used
- Thantik - HE-conc for knockback
- Asskickr - Grentrail
- EKS - sprite - doing hud sprites
Directions
Players buy normal mp5 and buy grenades for it through buying
normal HE grenades

1.9 - Fixed kill given to killed
- Raised start origin of nade fired so it more the actual height of the gun

*/


#include <amxmodx>
#include <fakemeta>
#include <engine>
#include <cstrike>

new g_mp5[33]
new g_m203_loaded[33]
new g_ammo[33]
new g_lastweap[33]
new g_buyzone[33]

new gmsgDeathMsg
new gMsgID

//sprites
new m_iTrail
new xplode

#define ICON_HIDE 0
#define ICON_SHOW 1
#define TE_BEAMFOLLOW 22
#define set_user_frags

public plugin_init()
{
register_plugin("Mp5 Mod","1.9","PaintLancer")

register_event("DeathMsg","player_die","a")
register_event("CurWeapon","handle_gun","be","1=1")
register_event("StatusIcon","Buy_Icon","be","2=buyzone")

//handle buying nades
register_menucmd(-34,(1<<3),"BuyNade")
register_clcmd("hegren", "BuyNade")

//handle when player presses attack2
register_forward(FM_PlayerPreThink, "forward_playerprethink")
// handle world model
register_forward(FM_SetModel, "forward_setmodel")

//cvars
register_cvar("amx_m203cost","100") //cost for nade
register_cvar("amx_m203ammo","9") //ammo limit for backpack
register_cvar("amx_crazynade","0") //makes nades bounce off all walls with perfect elasticity until it hits an entity or player...can get crazy
register_cvar("amx_m203conc","10.0") //force of knockback
register_cvar("amx_m203trail","1") //nade trails
register_cvar("amx_m203rad","200") //radius of dmg
register_cvar("amx_m203dmg","75") //dmg

gmsgDeathMsg = get_user_msgid("DeathMsg")
gMsgID = get_user_msgid("StatusIcon")

return PLUGIN_CONTINUE
}

public player_die(id)
{
if(g_mp5[id])
ammo_hud(id,0)
g_ammo[id] = 0

return PLUGIN_CONTINUE
}

public BuyNade(id)
{
new money = cs_get_user_money(id)

if(g_mp5[id] && g_ammo[id] < get_cvar_num("amx_m203ammo") && money >= get_cvar_num("amx_m203cost") && g_buyzone[id])
{
ammo_hud(id,0)
g_ammo[id]++
ammo_hud(id,1)
client_print(id, print_center, "You bought a grenade for your M203 Launcher %d/%d", g_ammo[id], get_cvar_num("amx_m203ammo"))

cs_set_user_money(id, money - get_cvar_num("amx_m203cost"))
return PLUGIN_HANDLED
}
return PLUGIN_CONTINUE
}

public forward_setmodel(entity, model[])
{
if (!is_valid_ent(entity))
{
return FMRES_IGNORED
}

if (equal(model, "models/w_mp5.mdl"))
{
new classname[11]
entity_get_string(entity, EV_SZ_classname, classname, 10)

//client_print(0, print_chat, "Model: %s Classname: %s", model, classname)

if (equal(classname, "weaponbox"))
{
//client_print(0, print_chat, "Setting model")

entity_set_model(entity, "models/w_mp5m203.mdl")

return FMRES_SUPERCEDE
}
}

return FMRES_IGNORED
}

public forward_playerprethink(id)
{
if(is_user_alive(id))
{
if (entity_get_int(id, EV_INT_button) & IN_ATTACK2)
{
launch_nade(id)
return FMRES_IGNORED
}
}
return FMRES_IGNORED
}

public handle_gun(id)
{
new clip, ammo
new weap = get_user_weapon(id,clip,ammo)

if(weap == CSW_MP5NAVY && g_lastweap[id] != weap)
{
ammo_hud(id,1)
//client_print(id, print_chat, "Setting Model")
entity_set_string(id, EV_SZ_viewmodel, "models/v_mp5m203.mdl")
entity_set_string(id, EV_SZ_weaponmodel, "models/p_mp5m203.mdl")
g_mp5[id] = 1
}
else if(weap != CSW_MP5NAVY)
{
ammo_hud(id,0)
g_mp5[id] = 0
}
g_lastweap[id] = weap

return PLUGIN_HANDLED
}

public launch_nade(id)
{
if(g_mp5[id] == 0 || g_m203_loaded[id] == 0 || !(is_user_alive(id)))
return PLUGIN_CONTINUE

if(g_ammo[id] == 0)
{
client_print(id, print_center, "You are out of m203 grenades!")
return PLUGIN_CONTINUE
}

entity_set_int(id, EV_INT_weaponanim, 3)

new Float: Origin[3], Float: Velocity[3], Float: vAngle[3], Ent

entity_get_vector(id, EV_VEC_origin , Origin)
entity_get_vector(id, EV_VEC_v_angle, vAngle)

//client_print(id, print_center, "Origin: %f-%f-%f", Origin[0], Origin[1], Origin[2])
//client_print(id, print_center, "vAngle: %f-%f-%f", vAngle[0], vAngle[1], vAngle[2])

Origin[2] = Origin[2] + 10

Ent = create_entity("info_target")

if (!Ent) return PLUGIN_HANDLED

entity_set_string(Ent, EV_SZ_classname, "m203_nade")
entity_set_model(Ent, "models/grenade.mdl")

new Float:MinBox[3] = {-1.0, -1.0, -1.0}
new Float:MaxBox[3] = {1.0, 1.0, 1.0}
entity_set_vector(Ent, EV_VEC_mins, MinBox)
entity_set_vector(Ent, EV_VEC_maxs, MaxBox)

entity_set_origin(Ent, Origin)
entity_set_vector(Ent, EV_VEC_angles, vAngle)

entity_set_int(Ent, EV_INT_effects, 2)
entity_set_int(Ent, EV_INT_solid, 1)
entity_set_int(Ent, EV_INT_movetype, 10)
entity_set_edict(Ent, EV_ENT_owner, id)

VelocityByAim(id, 2000 , Velocity)
entity_set_vector(Ent, EV_VEC_velocity ,Velocity)

emit_sound(id,CHAN_VOICE,"misc/throw.wav", 1.0, ATTN_NORM, 0, PITCH_NORM)

g_m203_loaded[id] = 0

ammo_hud(id,0)
g_ammo[id]--
ammo_hud(id,1)

new parm[1]
parm[0] = Ent

if(get_cvar_num("amx_m203trail"))
set_task(0.2, "grentrail",id,parm,1)

parm[0] = id
set_task(2.0, "m203_reload",id+9910,parm,1)

return PLUGIN_CONTINUE
}

public m203_reload(parm[])
{
g_m203_loaded[parm[0]] = 1
}

public vexd_pfntouch(pToucher, pTouched)
{
new szClassName[32]

if ( pToucher > 0)
{
entity_get_string(pToucher, EV_SZ_classname, szClassName, 31)
}
if(equal(szClassName, "m203_nade"))
{
if(!pTouched && get_cvar_num("amx_crazynade"))
return

new damradius = get_cvar_num("amx_m203rad")//200
new maxdamage = get_cvar_num("amx_m203dmg")//70

new tkill = 0
new Float:fl_vExplodeAt[3]
entity_get_vector(pToucher, EV_VEC_origin, fl_vExplodeAt)
new vExplodeAt[3]
vExplodeAt[0] = floatround(fl_vExplodeAt[0])
vExplodeAt[1] = floatround(fl_vExplodeAt[1])
vExplodeAt[2] = floatround(fl_vExplodeAt[2])
new oid = entity_get_edict(pToucher, EV_ENT_owner)
new origin[3],dist,i,Float:dRatio,damage

for ( i = 0; i < 32; i++)
{
if((is_user_alive(i)))
{
get_user_origin(i,origin)
dist = get_distance(origin,vExplodeAt)
if (dist <= damradius)
{
dRatio = floatdiv(float(dist),float(damradius))
damage = maxdamage - floatround(floatmul(float(maxdamage),dRatio))

set_velocity_from_origin(i, fl_vExplodeAt, get_cvar_float("amx_m203conc")*damage) // ThantiK's he-conc function - tried getting it to recognize m203 nades but failed so imported function

if(cvar_exists("mp_friendlyfire"))
{
if(i == oid)
do_victim(i, oid, damage, 2)
else if( get_cvar_num("mp_friendlyfire"))
{
if(get_user_team(i) == get_user_team(oid)) tkill = 1
do_victim(i,oid,damage,tkill)
}
else
{
if(get_user_team(i) != get_user_team(oid))
{
do_victim(i,oid,damage,0)
}
}
}
else if(i == oid)
do_victim(i, oid, damage, 2)
else
do_victim(i,oid,damage,0)
}
}
}

message_begin(MSG_BROADCAST, SVC_TEMPENTITY)
write_byte(17)
write_coord(vExplodeAt[0])
write_coord(vExplodeAt[1])
write_coord(vExplodeAt[2] + 60)
write_short(xplode)
write_byte(20)
write_byte(200)
message_end()

emit_sound(pToucher, CHAN_WEAPON, "misc/grenadexplode.wav", VOL_NORM, ATTN_NORM, 0, PITCH_NORM)

remove_entity(pToucher)
}
}

do_victim(victim,attacker,damage,tk)
{
new namek[32],namev[32],authida[35],authidv[35],teama[32],teamv[32]
get_user_name(victim,namev,31)
get_user_name(attacker,namek,31)
get_user_authid(victim,authidv,34)
get_user_authid(attacker,authida,34)
get_user_team(victim,teamv,31)
get_user_team(attacker,teama,31)

new Float:fl_dmg = float(damage)

if(damage >= get_user_health(victim))
{
set_msg_block(gmsgDeathMsg,BLOCK_SET)
fakedamage(victim, "grenade", fl_dmg, DMG_BLAST) //user_kill(victim,1)
set_msg_block(gmsgDeathMsg,BLOCK_NOT)

if(is_user_alive(victim)) //some cases where damage is messed with WC3? then return
return

message_begin(MSG_ALL, get_user_msgid("DeathMsg"), {0,0,0}, 0)
write_byte(attacker)
write_byte(victim)
write_byte(0)
write_string("grenade")
message_end()

if(tk == 1)
{
client_print(attacker,print_center,"You killed a teammate")
set_user_frags(attacker,get_user_frags(attacker) - 1 )
set_user_frags(victim, get_user_frags(victim) + 1)
log_message("^"%s<%d><%s><%s>^" killed ^"%s<%d><%s><%s>^" with ^"grenade^"",
namek,get_user_userid(attacker),authida,teama,namev,get_user_userid(victim),auth
idv,teamv)
}
else if(tk == 2)
{
log_message("^"%s<%d><%s><%s>^" killed self with ^"grenade^"",
namek,get_user_userid(attacker),authida,teama)
}
else
{
new money = cs_get_user_money(attacker)
cs_set_user_money(attacker, money + 300) // award for kill

set_user_frags(attacker,get_user_frags(attacker) + 1 )
//set_user_frags(attacker,get_user_frags(victim) + 1 )
log_message("^"%s<%d><%s><%s>^" killed ^"%s<%d><%s><%s>^" with ^"grenade^"",
namek,get_user_userid(attacker),authida,teama,namev,get_user_userid(victim),auth
idv,teamv)
}
}
else
{
fakedamage(victim, "grenade", fl_dmg, DMG_BLAST) //set_user_health(victim,get_user_health(victim) - damage )

if(tk == 1)
{
client_print(0,print_chat,"%s attacked a teammate",namek)
}
}
}

public client_connect(id)
{
g_mp5[id] = 0
g_m203_loaded[id] = 1
g_ammo[id] = 0
}

public Buy_Icon(id)
{
if (read_data(1))
{
g_buyzone[id] = true
}
else
{
g_buyzone[id] = false
}
return PLUGIN_CONTINUE
}

ammo_hud(id, sw)
{
new s_sprite[33]
format(s_sprite,32,"number_%d",g_ammo[id])

if(sw)
{
message_begin( MSG_ONE, gMsgID, {0,0,0}, id )
write_byte( ICON_SHOW ) // status
write_string( s_sprite ) // sprite name
write_byte( 0 ) // red
write_byte( 160 ) // green
write_byte( 0 ) // blue
message_end()
}
else
{
message_begin( MSG_ONE, gMsgID, {0,0,0}, id )
write_byte( ICON_HIDE ) // status
write_string( s_sprite ) // sprite name
write_byte( 0 ) // red
write_byte( 160 ) // green
write_byte( 0 ) // blue
message_end()
}
}

/////////////////////
//Thantik's he-conc functions
stock get_velocity_from_origin( ent, Float:fOrigin[3], Float:fSpeed, Float:fVelocity[3] )
{
new Float:fEntOrigin[3];
entity_get_vector( ent, EV_VEC_origin, fEntOrigin );

// Velocity = Distance / Time

new Float:fDistance[3];
fDistance[0] = fEntOrigin[0] - fOrigin[0];
fDistance[1] = fEntOrigin[1] - fOrigin[1];
fDistance[2] = fEntOrigin[2] - fOrigin[2];

new Float:fTime = ( vector_distance( fEntOrigin,fOrigin ) / fSpeed );

fVelocity[0] = fDistance[0] / fTime;
fVelocity[1] = fDistance[1] / fTime;
fVelocity[2] = fDistance[2] / fTime;

return ( fVelocity[0] && fVelocity[1] && fVelocity[2] );
}


// Sets velocity of an entity (ent) away from origin with speed (speed)

stock set_velocity_from_origin( ent, Float:fOrigin[3], Float:fSpeed )
{
new Float:fVelocity[3];
get_velocity_from_origin( ent, fOrigin, fSpeed, fVelocity )

entity_set_vector( ent, EV_VEC_velocity, fVelocity );

return ( 1 );
}

public grentrail(parm[])
{
new gid = parm[0]

if (gid)
{
message_begin( MSG_BROADCAST, SVC_TEMPENTITY )
write_byte( TE_BEAMFOLLOW )
write_short(gid) // entity
write_short(m_iTrail) // model
write_byte( 10 ) // life
write_byte( 5 ) // width
write_byte( 255 ) // r, g, b
write_byte( 255 ) // r, g, b
write_byte( 255 ) // r, g, b
write_byte( 100 ) // brightness

message_end() // move PHS/PVS data sending into here (SEND_ALL, SEND_PVS, SEND_PHS)
}
}

public plugin_precache()
{
precache_model("models/v_mp5m203.mdl")
precache_model("models/p_mp5m203.mdl")
precache_model("models/w_mp5m203.mdl")
precache_model("models/grenade.mdl")
precache_sound("misc/throw.wav")
precache_sound("misc/grenadexplode.wav")

m_iTrail = precache_model("sprites/smoke.spr")
xplode = precache_model("sprites/zerogxplode3.spr")
}

Вот такой у меня конфиг

Отредактировал: Rex08, - 25.7.2008, 10:52
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Mr.Dmitry
сообщение 25.7.2008, 11:39
Сообщение #6


Стаж: 19 лет

Сообщений: 3992
Благодарностей: 853
Полезность: 463

Цитата(Rex08 @ 25.7.2008, 10:49) *
/*/// Mp5+M203 Launcher - by PaintLancer
/////////////////////////////
Resources used
- Thantik - HE-conc for knockback
- Asskickr - Grentrail
- EKS - sprite - doing hud sprites
Directions
Players buy normal mp5 and buy grenades for it through buying
normal HE grenades

1.9 - Fixed kill given to killed
- Raised start origin of nade fired so it more the actual height of the gun

*/
#include <amxmodx>
#include <fakemeta>
#include <engine>
#include <cstrike>

new g_mp5[33]
new g_m203_loaded[33]
new g_ammo[33]
new g_lastweap[33]
new g_buyzone[33]

new gmsgDeathMsg
new gMsgID

//sprites
new m_iTrail
new xplode

#define ICON_HIDE 0
#define ICON_SHOW 1
#define TE_BEAMFOLLOW 22
#define set_user_frags

public plugin_init()
{
register_plugin("Mp5 Mod","1.9","PaintLancer")

register_event("DeathMsg","player_die","a")
register_event("CurWeapon","handle_gun","be","1=1")
register_event("StatusIcon","Buy_Icon","be","2=buyzone")

//handle buying nades
register_menucmd(-34,(1<<3),"BuyNade")
register_clcmd("hegren", "BuyNade")

//handle when player presses attack2
register_forward(FM_PlayerPreThink, "forward_playerprethink")
// handle world model
register_forward(FM_SetModel, "forward_setmodel")

//cvars
register_cvar("amx_m203cost","100") //cost for nade
register_cvar("amx_m203ammo","9") //ammo limit for backpack
register_cvar("amx_crazynade","0") //makes nades bounce off all walls with perfect elasticity until it hits an entity or player...can get crazy
register_cvar("amx_m203conc","10.0") //force of knockback
register_cvar("amx_m203trail","1") //nade trails
register_cvar("amx_m203rad","200") //radius of dmg
register_cvar("amx_m203dmg","75") //dmg

gmsgDeathMsg = get_user_msgid("DeathMsg")
gMsgID = get_user_msgid("StatusIcon")

return PLUGIN_CONTINUE
}

public player_die(id)
{
if(g_mp5[id])
ammo_hud(id,0)
g_ammo[id] = 0

return PLUGIN_CONTINUE
}

public BuyNade(id)
{
new money = cs_get_user_money(id)

if(g_mp5[id] && g_ammo[id] < get_cvar_num("amx_m203ammo") && money >= get_cvar_num("amx_m203cost") && g_buyzone[id])
{
ammo_hud(id,0)
g_ammo[id]++
ammo_hud(id,1)
client_print(id, print_center, "You bought a grenade for your M203 Launcher %d/%d", g_ammo[id], get_cvar_num("amx_m203ammo"))

cs_set_user_money(id, money - get_cvar_num("amx_m203cost"))
return PLUGIN_HANDLED
}
return PLUGIN_CONTINUE
}

public forward_setmodel(entity, model[])
{
if (!is_valid_ent(entity))
{
return FMRES_IGNORED
}

if (equal(model, "models/w_mp5.mdl"))
{
new classname[11]
entity_get_string(entity, EV_SZ_classname, classname, 10)

//client_print(0, print_chat, "Model: %s Classname: %s", model, classname)

if (equal(classname, "weaponbox"))
{
//client_print(0, print_chat, "Setting model")

entity_set_model(entity, "models/w_mp5m203.mdl")

return FMRES_SUPERCEDE
}
}

return FMRES_IGNORED
}

public forward_playerprethink(id)
{
if(is_user_alive(id))
{
if (entity_get_int(id, EV_INT_button) & IN_ATTACK2)
{
launch_nade(id)
return FMRES_IGNORED
}
}
return FMRES_IGNORED
}

public handle_gun(id)
{
new clip, ammo
new weap = get_user_weapon(id,clip,ammo)

if(weap == CSW_MP5NAVY && g_lastweap[id] != weap)
{
ammo_hud(id,1)
//client_print(id, print_chat, "Setting Model")
entity_set_string(id, EV_SZ_viewmodel, "models/v_mp5m203.mdl")
entity_set_string(id, EV_SZ_weaponmodel, "models/p_mp5m203.mdl")
g_mp5[id] = 1
}
else if(weap != CSW_MP5NAVY)
{
ammo_hud(id,0)
g_mp5[id] = 0
}
g_lastweap[id] = weap

return PLUGIN_HANDLED
}

public launch_nade(id)
{
if(g_mp5[id] == 0 || g_m203_loaded[id] == 0 || !(is_user_alive(id)))
return PLUGIN_CONTINUE

if(g_ammo[id] == 0)
{
client_print(id, print_center, "You are out of m203 grenades!")
return PLUGIN_CONTINUE
}

entity_set_int(id, EV_INT_weaponanim, 3)

new Float: Origin[3], Float: Velocity[3], Float: vAngle[3], Ent

entity_get_vector(id, EV_VEC_origin , Origin)
entity_get_vector(id, EV_VEC_v_angle, vAngle)

//client_print(id, print_center, "Origin: %f-%f-%f", Origin[0], Origin[1], Origin[2])
//client_print(id, print_center, "vAngle: %f-%f-%f", vAngle[0], vAngle[1], vAngle[2])

Origin[2] = Origin[2] + 10

Ent = create_entity("info_target")

if (!Ent) return PLUGIN_HANDLED

entity_set_string(Ent, EV_SZ_classname, "m203_nade")
entity_set_model(Ent, "models/grenade.mdl")

new Float:MinBox[3] = {-1.0, -1.0, -1.0}
new Float:MaxBox[3] = {1.0, 1.0, 1.0}
entity_set_vector(Ent, EV_VEC_mins, MinBox)
entity_set_vector(Ent, EV_VEC_maxs, MaxBox)

entity_set_origin(Ent, Origin)
entity_set_vector(Ent, EV_VEC_angles, vAngle)

entity_set_int(Ent, EV_INT_effects, 2)
entity_set_int(Ent, EV_INT_solid, 1)
entity_set_int(Ent, EV_INT_movetype, 10)
entity_set_edict(Ent, EV_ENT_owner, id)

VelocityByAim(id, 2000 , Velocity)
entity_set_vector(Ent, EV_VEC_velocity ,Velocity)

emit_sound(id,CHAN_VOICE,"misc/throw.wav", 1.0, ATTN_NORM, 0, PITCH_NORM)

g_m203_loaded[id] = 0

ammo_hud(id,0)
g_ammo[id]--
ammo_hud(id,1)

new parm[1]
parm[0] = Ent

if(get_cvar_num("amx_m203trail"))
set_task(0.2, "grentrail",id,parm,1)

parm[0] = id
set_task(2.0, "m203_reload",id+9910,parm,1)

return PLUGIN_CONTINUE
}

public m203_reload(parm[])
{
g_m203_loaded[parm[0]] = 1
}

public vexd_pfntouch(pToucher, pTouched)
{
new szClassName[32]

if ( pToucher > 0)
{
entity_get_string(pToucher, EV_SZ_classname, szClassName, 31)
}
if(equal(szClassName, "m203_nade"))
{
if(!pTouched && get_cvar_num("amx_crazynade"))
return

new damradius = get_cvar_num("amx_m203rad")//200
new maxdamage = get_cvar_num("amx_m203dmg")//70

new tkill = 0
new Float:fl_vExplodeAt[3]
entity_get_vector(pToucher, EV_VEC_origin, fl_vExplodeAt)
new vExplodeAt[3]
vExplodeAt[0] = floatround(fl_vExplodeAt[0])
vExplodeAt[1] = floatround(fl_vExplodeAt[1])
vExplodeAt[2] = floatround(fl_vExplodeAt[2])
new oid = entity_get_edict(pToucher, EV_ENT_owner)
new origin[3],dist,i,Float:dRatio,damage

for ( i = 0; i < 32; i++)
{
if((is_user_alive(i)))
{
get_user_origin(i,origin)
dist = get_distance(origin,vExplodeAt)
if (dist <= damradius)
{
dRatio = floatdiv(float(dist),float(damradius))
damage = maxdamage - floatround(floatmul(float(maxdamage),dRatio))

set_velocity_from_origin(i, fl_vExplodeAt, get_cvar_float("amx_m203conc")*damage) // ThantiK's he-conc function - tried getting it to recognize m203 nades but failed so imported function

if(cvar_exists("mp_friendlyfire"))
{
if(i == oid)
do_victim(i, oid, damage, 2)
else if( get_cvar_num("mp_friendlyfire"))
{
if(get_user_team(i) == get_user_team(oid)) tkill = 1
do_victim(i,oid,damage,tkill)
}
else
{
if(get_user_team(i) != get_user_team(oid))
{
do_victim(i,oid,damage,0)
}
}
}
else if(i == oid)
do_victim(i, oid, damage, 2)
else
do_victim(i,oid,damage,0)
}
}
}

message_begin(MSG_BROADCAST, SVC_TEMPENTITY)
write_byte(17)
write_coord(vExplodeAt[0])
write_coord(vExplodeAt[1])
write_coord(vExplodeAt[2] + 60)
write_short(xplode)
write_byte(20)
write_byte(200)
message_end()

emit_sound(pToucher, CHAN_WEAPON, "misc/grenadexplode.wav", VOL_NORM, ATTN_NORM, 0, PITCH_NORM)

remove_entity(pToucher)
}
}

do_victim(victim,attacker,damage,tk)
{
new namek[32],namev[32],authida[35],authidv[35],teama[32],teamv[32]
get_user_name(victim,namev,31)
get_user_name(attacker,namek,31)
get_user_authid(victim,authidv,34)
get_user_authid(attacker,authida,34)
get_user_team(victim,teamv,31)
get_user_team(attacker,teama,31)

new Float:fl_dmg = float(damage)

if(damage >= get_user_health(victim))
{
set_msg_block(gmsgDeathMsg,BLOCK_SET)
fakedamage(victim, "grenade", fl_dmg, DMG_BLAST) //user_kill(victim,1)
set_msg_block(gmsgDeathMsg,BLOCK_NOT)

if(is_user_alive(victim)) //some cases where damage is messed with WC3? then return
return

message_begin(MSG_ALL, get_user_msgid("DeathMsg"), {0,0,0}, 0)
write_byte(attacker)
write_byte(victim)
write_byte(0)
write_string("grenade")
message_end()

if(tk == 1)
{
client_print(attacker,print_center,"You killed a teammate")
set_user_frags(attacker,get_user_frags(attacker) - 1 )
set_user_frags(victim, get_user_frags(victim) + 1)
log_message("^"%s<%d><%s><%s>^" killed ^"%s<%d><%s><%s>^" with ^"grenade^"",
namek,get_user_userid(attacker),authida,teama,namev,get_user_userid(victim),auth
idv,teamv)
}
else if(tk == 2)
{
log_message("^"%s<%d><%s><%s>^" killed self with ^"grenade^"",
namek,get_user_userid(attacker),authida,teama)
}
else
{
new money = cs_get_user_money(attacker)
cs_set_user_money(attacker, money + 300) // award for kill

set_user_frags(attacker,get_user_frags(attacker) + 1 )
//set_user_frags(attacker,get_user_frags(victim) + 1 )
log_message("^"%s<%d><%s><%s>^" killed ^"%s<%d><%s><%s>^" with ^"grenade^"",
namek,get_user_userid(attacker),authida,teama,namev,get_user_userid(victim),auth
idv,teamv)
}
}
else
{
fakedamage(victim, "grenade", fl_dmg, DMG_BLAST) //set_user_health(victim,get_user_health(victim) - damage )

if(tk == 1)
{
client_print(0,print_chat,"%s attacked a teammate",namek)
}
}
}

public client_connect(id)
{
g_mp5[id] = 0
g_m203_loaded[id] = 1
g_ammo[id] = 0
}

public Buy_Icon(id)
{
if (read_data(1))
{
g_buyzone[id] = true
}
else
{
g_buyzone[id] = false
}
return PLUGIN_CONTINUE
}

ammo_hud(id, sw)
{
new s_sprite[33]
format(s_sprite,32,"number_%d",g_ammo[id])

if(sw)
{
message_begin( MSG_ONE, gMsgID, {0,0,0}, id )
write_byte( ICON_SHOW ) // status
write_string( s_sprite ) // sprite name
write_byte( 0 ) // red
write_byte( 160 ) // green
write_byte( 0 ) // blue
message_end()
}
else
{
message_begin( MSG_ONE, gMsgID, {0,0,0}, id )
write_byte( ICON_HIDE ) // status
write_string( s_sprite ) // sprite name
write_byte( 0 ) // red
write_byte( 160 ) // green
write_byte( 0 ) // blue
message_end()
}
}

/////////////////////
//Thantik's he-conc functions
stock get_velocity_from_origin( ent, Float:fOrigin[3], Float:fSpeed, Float:fVelocity[3] )
{
new Float:fEntOrigin[3];
entity_get_vector( ent, EV_VEC_origin, fEntOrigin );

// Velocity = Distance / Time

new Float:fDistance[3];
fDistance[0] = fEntOrigin[0] - fOrigin[0];
fDistance[1] = fEntOrigin[1] - fOrigin[1];
fDistance[2] = fEntOrigin[2] - fOrigin[2];

new Float:fTime = ( vector_distance( fEntOrigin,fOrigin ) / fSpeed );

fVelocity[0] = fDistance[0] / fTime;
fVelocity[1] = fDistance[1] / fTime;
fVelocity[2] = fDistance[2] / fTime;

return ( fVelocity[0] && fVelocity[1] && fVelocity[2] );
}
// Sets velocity of an entity (ent) away from origin with speed (speed)

stock set_velocity_from_origin( ent, Float:fOrigin[3], Float:fSpeed )
{
new Float:fVelocity[3];
get_velocity_from_origin( ent, fOrigin, fSpeed, fVelocity )

entity_set_vector( ent, EV_VEC_velocity, fVelocity );

return ( 1 );
}

public grentrail(parm[])
{
new gid = parm[0]

if (gid)
{
message_begin( MSG_BROADCAST, SVC_TEMPENTITY )
write_byte( TE_BEAMFOLLOW )
write_short(gid) // entity
write_short(m_iTrail) // model
write_byte( 10 ) // life
write_byte( 5 ) // width
write_byte( 255 ) // r, g, b
write_byte( 255 ) // r, g, b
write_byte( 255 ) // r, g, b
write_byte( 100 ) // brightness

message_end() // move PHS/PVS data sending into here (SEND_ALL, SEND_PVS, SEND_PHS)
}
}

public plugin_precache()
{
precache_model("models/v_mp5m203.mdl")
precache_model("models/p_mp5m203.mdl")
precache_model("models/w_mp5m203.mdl")
precache_model("models/grenade.mdl")
precache_sound("misc/throw.wav")
precache_sound("misc/grenadexplode.wav")

m_iTrail = precache_model("sprites/smoke.spr")
xplode = precache_model("sprites/zerogxplode3.spr")
}

Вот такой у меня конфиг

Какойже это конфиг??? :biggrin:
Это ты привел нам код плагина.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Rex08
сообщение 25.7.2008, 12:13
Сообщение #7
Стаж: 17 лет

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

ГГ СОРИ .
А НУЖЕН ФАЙЛ server ИЛИ именно config ?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя yah0oo
сообщение 25.7.2008, 12:25
Сообщение #8


Стаж: 18 лет

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

Цитата(Rex08 @ 25.7.2008, 13:13) *
ГГ СОРИ .
А НУЖЕН ФАЙЛ server ИЛИ именно config ?

ну ты сам подумай для чего нам твой config.cfg ? лучше kонечно server =)
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Rex08
сообщение 25.7.2008, 14:03
Сообщение #9
Стаж: 17 лет

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

hostname " CS 1.6 Rex Server"
log on
mp_logdetail 3
mp_logmessages 1
mp_logecho 1
mp_logfile 1
mp_autokick 0
mp_autocrosshair 0
mp_autoteambalance 0
mp_buytime 0.25
mp_consistency 1
mp_c4timer 35
mp_fadetoblack 0
mp_flashlight 1
mp_forcechasecam 1
mp_forcecamera 2
mp_footsteps 1
mp_freezetime 5
mp_friendlyfire 1
mp_hostagepenalty 0
mp_limitteams 2
mp_maxrounds 0
mp_playerid 1
mp_roundtime 1.75
mp_timelimit 20
mp_tkpunish 0
mp_startmoney 800
sv_aim 0
sv_airaccelerate 10
sv_airmove 1
sv_allowdownload 1
sv_allowupload 0
sv_alltalk 0
sv_cheats 0
sv_clienttrace 1
sv_clipmode 0
sv_friction 4
sv_gravity 800
sv_lan_rate 25000
sv_maxrate 25000
sv_maxspeed 320
sv_maxunlag 0.5
sv_maxupdaterate 101
sv_minupdaterate 40
sv_minrate 25000
sv_proxies 1
sv_send_logos 1
sv_send_resources 1
sv_stepsize 18
sv_stopspeed 75
sv_unlag 1
sv_voiceenable 1
sv_unlagsamples 1
sv_unlagpush 0
sys_ticrate 10000
allow_spectators 1
decalfrequency 60
edgefriction 2
host_framerate 0
ex_interp 0.01
rcon_password "pass"
sv_rcon_banpenalty 60
sv_rcon_maxfailures 5
sv_rcon_minfailures 5
sv_rcon_minfailuretime 30
amx_hpk_ping 150
sv_contact
sv_region 3
exec listip.cfg
exec banned.cfg
booster_show_connmsg 1
booster_autofps 1000
booster_minsleepms 5
booster_force_systicrate 0
booster_cpu_enabled 0
booster_cpu_spikemax 3
booster_cpu_spikelevel 75
booster_cpu_floor 50
booster_cpu_mminc 2
booster_cpu_quiettime 300
booster_cpu_mmmin 3
booster_cpu_mmmax 8
booster_lite_mode 3
booster_lite_extra_sleep_frequency 0
ip "10.10.210.87"
sxei_internal_ip "10.10.210.87"
sxei_required 1
sxei_srv_upg 1

Вот это мой конфиг . Если честно то с m4 можно и не возится , так как у ментов будет граната в m4 а у теров в ак 47 нет )) . Я хотел бы по больше узнать о этом оружии чего оно не работает и пишет You are out m203 granades! как на скрине : https://c-s.net.ua/forum/uploads/post-30245...71840_thumb.jpg
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя yah0oo
сообщение 25.7.2008, 14:07
Сообщение #10


Стаж: 18 лет

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

Цитата(Rex08 @ 25.7.2008, 15:03) *
Я хотел бы по больше узнать о этом оружии чего оно не работает и пишет You are out m203 granades! как на скрине : https://c-s.net.ua/forum/uploads/post-30245...71840_thumb.jpg


Нельзя ли ещё меньше скрин ?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Rex08
сообщение 25.7.2008, 14:28
Сообщение #11
Стаж: 17 лет

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

ой сори , этот скрин с 1 поста , глянь в первом посту
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя yah0oo
сообщение 25.7.2008, 14:44
Сообщение #12


Стаж: 18 лет

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

Цитата(Rex08 @ 25.7.2008, 15:28) *
ой сори , этот скрин с 1 поста , глянь в первом посту


Через переводчик слабо перевести что эта надпись значит ?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Rex08
сообщение 25.7.2008, 14:58
Сообщение #13
Стаж: 17 лет

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

да не слабо , я знаю , что нет гранат , но где их брать
слеповые , HE , дымовые не подходят
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Rex08
сообщение 25.7.2008, 17:16
Сообщение #14
Стаж: 17 лет

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

Я так понял , что меня никто не понимает и решил выложить демку .
Режиссер я boast.gif , в главных ролях , тоже я boast.gif
Прикрепленный файл  demo.rar ( 138,29 килобайт ) Кол-во скачиваний: 9
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя yah0oo
сообщение 25.7.2008, 17:51
Сообщение #15


Стаж: 18 лет

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

Цитата(Rex08 @ 25.7.2008, 18:16) *
Я так понял , что меня никто не понимает и решил выложить демку .
Режиссер я boast.gif , в главных ролях , тоже я boast.gif
Прикрепленный файл  demo.rar ( 138,29 килобайт ) Кол-во скачиваний: 9

А я так понял что ты не знал что у нас нету твоих моделей от мода =\
Запомни если ты снимаешь демку через CS , то когда мы просматриваем у нас должны быть теже модели и мапы !
Так что мой тебе совет юзай хотябы FRAPS =( программка плохая но всё-же ...
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя Rex08
сообщение 25.7.2008, 19:07
Сообщение #16
Стаж: 17 лет

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

ой забыл )
Fraps - это проглот , меньше 30 секунд записи у меня заняло 290 мб . Но я урезал в Windows Movie Maker
вот видео записаное через fraps
Прикрепленный файл  demo.rar ( 138,29 килобайт ) Кол-во скачиваний: 9
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя yah0oo
сообщение 25.7.2008, 20:01
Сообщение #17


Стаж: 18 лет

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

Цитата(Rex08 @ 25.7.2008, 20:07) *
ой забыл )
Fraps - это проглот , меньше 30 секунд записи у меня заняло 290 мб . Но я урезал в Windows Movie Maker
вот видео записаное через fraps
Прикрепленный файл  demo.rar ( 138,29 килобайт ) Кол-во скачиваний: 9

Ты бы хоть смотрел что кидаешь ... fraps пишет в формате WAV , и + ты делал видео в Мувимекере и он не как не может сохранить в формате .DEM ! Формат должен быть WAV или чёто такое =) но не DEM
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Rex08
сообщение 25.7.2008, 20:54
Сообщение #18
Стаж: 17 лет

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

блин да что ж за день сёдня такой я не тот файл залил

Вот залил нормальную демку с frapsa , я её через Windows Movie Maker , так что за качество извените boast.gif

[attachment=5139:attachment]

Отредактировал: Rex08, - 25.7.2008, 21:08
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя yah0oo
сообщение 25.7.2008, 21:40
Сообщение #19


Стаж: 18 лет

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

Цитата(Rex08 @ 25.7.2008, 22:06) *
Вот залил нормальную демку с frapsa , я её через Windows Movie Maker , так что за качество извените boast.gif


Ну посмотрел .. только не понял что ты хотел сказать этим видео !
Объясни по русски что надо rofl.gif
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Rex08
сообщение 26.7.2008, 9:17
Сообщение #20
Стаж: 17 лет

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

блин я так старался , lаже сценарий написал ))
вообщем нужно чтоб гранат было не 0 в хаке , а 2 или 3 штуки изначально , и ещё забыл сказать у меня csdm

Отредактировал: Rex08, - 26.7.2008, 9:18
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
2 страниц V   1 2
 
Тема закрытаНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: