Kid_Bandes
C O N T R A
- 24/10/09
- 1,969
- 250
Skin CSS, tay CSS 

Follow along with the video below to see how to install our site as a web app on your home screen.
Note: This feature may not be available in some browsers.

KeThanBi: Anh em xem qua thử rồi nhận xét ^^,thiếu mỗi bay cái mũ ra .À tiện cho hỏi là có cách nào thêm bone vào nhân vật mà ko bị lỗi ko
[video]nt7wnZezktk[/video]
[spoil][video]nt7wnZezktk[/video][/spoil]Oài lâu rùi ko lên diễn đàn nhiều skin mới wa ^^. Mọi người cho hỏi có cách nào thêm 1 bone nữa vào trong skin nhân vật mặc định của cs ko nhỉ chả là mình đang làm ani headshot của cf cho các nhân vật cf trên nền bone cs mà ko thêm dc bone vào cho cái mũ nó bay ra dc. Mình làm cũng tưong đối rùi các bạn có thể coi video

GtransАвторы оригинальной модели -
EXON,
Модель из Counter-Strike Online
The authors of the original model -
EXON,
Model of Counter-Strike Online



@Kethanbi: cái anim hình như chưa mượt lắm bác nhỉ
@tulucky: khi nào rảnh bác lên yahoo nhé, em share cho bác con char RED TEAM SA default![]()

có sma cái effect killer như video của tulucky ko các bạn ?
#include <amxmodx>
#include <fakemeta>
#include <nst_player>
#include <nst_zombie>
#include <nst_wpn>
#define PLUGIN "Effects Killer"
#define VERSION "3.0"
#define AUTHOR "NST"
#define LEVELS 8
new kills[33], Float:timekill[33], revenge[33], oneshot[33]
new iconstatus, g_firstkill, g_lastkill
new g_FM_Running
new cvar_time_kill, cvar_type, cvar_time_show
new fade_time[33], color[33], sprbe[33][3]
new const sound_combo[][] =
{
"vox/kill/%s/kill_1_%s.wav",
"vox/kill/%s/kill_2_%s.wav",
"vox/kill/%s/kill_3_%s.wav",
"vox/kill/%s/kill_4_%s.wav",
"vox/kill/%s/kill_5_%s.wav",
"vox/kill/%s/kill_6_%s.wav",
"vox/kill/%s/kill_7_%s.wav",
"vox/kill/%s/kill_8_%s.wav",
"vox/kill/%s/revenge_%s.wav",
"vox/kill/%s/headshot_%s.wav",
"vox/kill/%s/knife_%s.wav",
"vox/kill/%s/grenade_%s.wav"
}
enum(+= 100)
{
TASK_HIDESPR = 2000,
TASK_FADEHUD,
}
#define ID_HIDESPR (taskid - TASK_HIDESPR)
#define ID_FADEHUD (taskid - TASK_FADEHUD)
enum
{
HUD_SOUND = 1,
HUD_MSGTEXT,
HUD_SPRNAME
}
enum
{
KILL_1 = 1,
KILL_2,
KILL_3,
KILL_4,
KILL_5,
KILL_6,
KILL_7,
KILL_8,
KILL_FIRST,
C4_DEFUSE,
C4_SET
}
enum
{
KILL_NONE = 51,
KILL_HEGRENADE,
KILL_HEADSHOT,
KILL_KNIFE,
KILL_LAST,
KILL_REVENGE,
WALLSHOT,
WALLSHOT_HEADSHOT,
ONESHOT_2KILL,
ONESHOT_3KILL
}
public plugin_precache()
{
for (new i = 1; i <= 2; i++)
{
new sex[32]
if (i == 1) sex = "woman"
else sex = "man"
for (new e = 0; e <= 11; e++)
{
new sound_ct[100], sound_t[100], team_ct[32] = "ct", team_t[32] = "t"
format(sound_ct, 99, sound_combo[e], sex, team_ct)
format(sound_t, 99, sound_combo[e], sex, team_t)
}
}
}
public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR)
register_event("HLTV", "event_round_start", "a", "1=0", "2=0")
register_event("DeathMsg", "event_DeathMsg", "a")
cvar_time_kill = register_cvar("nst_ek_time_kill","3")
cvar_type = register_cvar("nst_ek_type","1")
cvar_time_show = register_cvar("nst_ek_time_show","2.0")
iconstatus = get_user_msgid("StatusIcon")
g_FM_Running = is_module_loaded("FakeMeta")
}
public event_round_start()
{
new reset_value[33]
g_firstkill = 1
kills = reset_value
revenge = reset_value
oneshot = reset_value
}
public event_DeathMsg()
{
// Get event data
static killer, headshot, weapon[32], wpnindex, victim
killer = read_data(1)
victim = read_data(2)
headshot = read_data(3)
read_data(4, weapon, charsmax(weapon))
if (equali(weapon, "grenade")) format(weapon, charsmax(weapon), "hegrenade")
format(weapon, charsmax(weapon), "weapon_%s", weapon)
wpnindex = get_weaponid(weapon)
sprbe[killer][1] = 0
sprbe[killer][2] = 0
// Check if user connected, kill himself, teamkill, alive
if (!is_user_connected(killer) || !is_user_connected(victim) || killer==victim || !is_user_alive(killer) || is_user_bot(killer)) return;
if (get_user_team(killer)==get_user_team(victim)) return;
// Reset kills of victim
kills[victim] = 0
// Set revenge of victim
revenge[victim] = killer
// Check multikill
new Float:timeleft = get_gametime()-timekill[killer]
if (timeleft <= get_pcvar_float(cvar_time_kill)) kills[killer] += 1
else kills[killer] = 1
if (kills[killer]>LEVELS) kills[killer] = 1
timekill[killer] = get_gametime()
// Check if user got last kill
new players_ct[32], players_t[32], ict, ite
get_players(players_ct,ict,"ae","CT")
get_players(players_t,ite,"ae","TERRORIST")
if (ict == 0 || ite == 0) g_lastkill = 1
// Check revenge
new g_revenge
if (victim == revenge[killer])
{
g_revenge = 1
revenge[killer] = 0
}
// check sound at headshot, wallhead, he, knife
if (g_firstkill)
{
g_firstkill = 0
show_hud(killer, KILL_FIRST)
if(kills[killer] != 1) show_hud(killer, KILL_NONE)
sprbe[killer][2] = KILL_FIRST
}
else if (g_lastkill)
{
g_lastkill = 0
show_hud(killer, KILL_LAST)
if(kills[killer] != 1) show_hud(killer, KILL_NONE)
sprbe[killer][2] = KILL_LAST
}
else if (g_revenge)
{
play_sound(killer, KILL_REVENGE)
show_hud(killer, KILL_REVENGE)
if(kills[killer] != 1) show_hud(killer, KILL_NONE)
sprbe[killer][2] = KILL_REVENGE
}
if(kills[killer] == 1)
{
if((wpnindex != CSW_KNIFE) && (wpnindex != CSW_HEGRENADE) && !can_see_fm(killer, victim))
{
if (headshot)
{
play_sound(killer, KILL_HEADSHOT)
show_hud(killer, WALLSHOT_HEADSHOT)
sprbe[killer][1] = WALLSHOT_HEADSHOT
}
else
{
show_hud(killer, WALLSHOT)
play_sound(killer, KILL_1)
sprbe[killer][1] = WALLSHOT
}
}
else if (headshot && wpnindex)
{
play_sound(killer, KILL_HEADSHOT)
show_hud(killer, KILL_HEADSHOT)
sprbe[killer][1] = KILL_HEADSHOT
}
else if (wpnindex == CSW_KNIFE)
{
play_sound(killer, KILL_KNIFE)
show_hud(killer, KILL_KNIFE)
sprbe[killer][1] = KILL_KNIFE
}
else if (wpnindex == CSW_HEGRENADE)
{
play_sound(killer, KILL_HEGRENADE)
show_hud(killer, KILL_HEGRENADE)
sprbe[killer][1] = KILL_HEGRENADE
}
else
{
show_hud(killer, KILL_1)
show_hud(killer, KILL_NONE)
play_sound(killer, KILL_1)
sprbe[killer][1] = KILL_1
}
}
else
{
show_hud(killer, kills[killer])
play_sound(killer, kills[killer])
show_hud(killer, KILL_NONE)
sprbe[killer][1] = kills[killer]
}
// Set fading
fade_time[killer] = floatround(255/(10*(get_pcvar_float(cvar_time_show))))
color[killer] = 255
}
public bomb_defused(id)
{
show_hud(id, C4_DEFUSE)
play_sound(id, C4_DEFUSE)
}
public bomb_planted(id)
{
show_hud(id, C4_SET)
play_sound(id, C4_SET)
}
// #################### SHOW HUD ####################
show_hud(id, idhud)
{
if (!is_user_connected(id)) return;
new type_cvar = get_pcvar_num(cvar_type)
if (type_cvar == 1) show_spr(id, idhud)
else if (type_cvar == 2) show_msg(id, idhud)
}
play_sound(id, idhud)
{
if (!is_user_connected(id)) return;
new sound[64], team[32], sex[32], cs_team
if (nst_get_mod_runing()==NST_MOD_ZB3) cs_team = nst_get_user_team(id)
else cs_team = get_user_team(id)
if (cs_team==1) team = "T"
else team = "CT"
if (get_user_sex(id) == 2) sex = "woman"
else sex = "man"
format(sound, charsmax(sound), "%s", get_hud_data(idhud, HUD_SOUND))
format(sound, charsmax(sound), sound, sex, team)
PlaySound(id, sound)
}
show_msg(id, idhud)
{
new msg[64]
format(msg, charsmax(msg), "%s", get_hud_data(idhud, HUD_MSGTEXT))
set_hudmessage(0, 204, 0, -1.0, 0.65, 1, 0.02, 3.0, 0.3, 0.3, 2)
show_hudmessage(id, msg)
}
show_spr(id, idspr)
{
if(!sprbe[id][1] || !sprbe[id][2])
{
hide_spr(id, 1)
hide_spr(id, 2)
}
else if (idspr >= KILL_NONE)
{
hide_spr(id, 2)
}
else
{
hide_spr(id, 1)
}
spr_action(id, idspr, 1)
if (task_exists(id+TASK_FADEHUD)) remove_task(id+TASK_FADEHUD)
set_task(0.1, "task_fadehud", id+TASK_FADEHUD, _, _, "b")
//if (task_exists(id+TASK_HIDESPR)) remove_task(id+TASK_HIDESPR)
//set_task(get_pcvar_float(cvar_time_show), "task_hidehud", id+TASK_HIDESPR)
}
public task_fadehud(taskid)
{
color[ID_FADEHUD] -= fade_time[ID_FADEHUD]
if(color[ID_FADEHUD] >= 0)
{
spr_fade(sprbe[ID_FADEHUD][2], color[ID_FADEHUD], 1, ID_FADEHUD)
spr_fade(sprbe[ID_FADEHUD][1], color[ID_FADEHUD], 1, ID_FADEHUD)
}
else
{
sprbe[ID_FADEHUD][1] = 0
sprbe[ID_FADEHUD][2] = 0
hide_spr(ID_FADEHUD, 1)
hide_spr(ID_FADEHUD, 2)
remove_task(taskid)
}
}
spr_fade(sprid, rgb, status, id)
{
new sprname[64]
format(sprname, charsmax(sprname), "%s", get_hud_data(sprid, HUD_SPRNAME))
message_begin(MSG_ONE,iconstatus,{0,0,0},id)
write_byte(status) // status (0=hide, 1=show, 2=flash)
write_string(sprname) // sprite name
write_byte(rgb) // red
write_byte(rgb) // green
write_byte(rgb) // blue
message_end()
}
public task_hidehud(taskid)
{
new id = ID_HIDESPR
hide_spr(id, 2)
hide_spr(id, 1)
}
hide_spr(id, idspr)
{
if (idspr == 1)
{
for (new i = KILL_1; i <= C4_SET; i++)
{
spr_action(id, i, 0)
}
}
else if (idspr == 2)
{
for (new i = KILL_NONE; i <= ONESHOT_3KILL; i++)
{
spr_action(id, i, 0)
}
}
}
spr_action(id, spr, run)
{
new sprname[64]
format(sprname, charsmax(sprname), "%s", get_hud_data(spr, HUD_SPRNAME))
message_begin(MSG_ONE,iconstatus,{0,0,0},id)
write_byte(run) // status (0=hide, 1=show, 2=flash)
write_string(sprname) // sprite name
message_end()
}
get_hud_data(idhud, type)
{
new value[64], sprname[33], sound[64], msgtext[32]
switch (idhud)
{
case KILL_1:
{
sprname = "kill_1"
sound = "vox/kill/%s/kill_1_%s"
msgtext = "1 KILL"
}
case KILL_2:
{
sprname = "kill_2"
sound = "vox/kill/%s/kill_2_%s"
msgtext = "2 KILL"
}
case KILL_3:
{
sprname = "kill_3"
sound = "vox/kill/%s/kill_3_%s"
msgtext = "3 KILL"
}
case KILL_4:
{
sprname = "kill_4"
sound = "vox/kill/%s/kill_4_%s"
msgtext = "4 KILL"
}
case KILL_5:
{
sprname = "kill_5"
sound = "vox/kill/%s/kill_5_%s"
msgtext = "5 KILL"
}
case KILL_6:
{
sprname = "kill_6"
sound = "vox/kill/%s/kill_6_%s"
msgtext = "6 KILL"
}
case KILL_7:
{
sprname = "kill_7"
sound = "vox/kill/%s/kill_7_%s"
msgtext = "7 KILL"
}
case KILL_8:
{
sprname = "kill_8"
sound = "vox/kill/%s/kill_8_%s"
msgtext = "8 KILL"
}
case KILL_FIRST:
{
sprname = "kill_first"
msgtext = "FIRST KILL"
}
case C4_DEFUSE:
{
sprname = "c4_defuse"
sound = "vox/kill/c4_defuse"
}
case C4_SET:
{
sprname = "c4_set"
sound = "vox/kill/c4_set"
}
case KILL_NONE:
{
sprname = "kill_none"
}
case KILL_HEGRENADE:
{
sprname = "kill_he"
sound = "vox/kill/%s/grenade_%s"
msgtext = "GRENADE KILL"
}
case KILL_HEADSHOT:
{
sprname = "kill_headshot"
sound = "vox/kill/%s/headshot_%s"
msgtext = "HEADSHOT"
}
case KILL_KNIFE:
{
sprname = "kill_knife"
sound = "vox/kill/%s/knife_%s"
msgtext = "KNIFE KILL"
}
case KILL_LAST:
{
sprname = "kill_last"
}
case KILL_REVENGE:
{
sprname = "kill_revenge"
sound = "vox/kill/%s/revenge_%s"
msgtext = "REVENGE"
}
case WALLSHOT:
{
sprname = "wall_shot"
msgtext = "WALLSHOOT"
}
case WALLSHOT_HEADSHOT:
{
sprname = "wall_shot_hs"
msgtext = "WALLSHOOT HEADSHOT"
}
case ONESHOT_2KILL:
{
sprname = "1shot_2kill"
msgtext = "ONE SHOT 2 KILL"
}
case ONESHOT_3KILL:
{
sprname = "1shot_3kill"
msgtext = "ONE SHOT MULTIKILL"
}
}
if (type==HUD_SOUND) format(value, charsmax(value), "%s", sound)
else if (type==HUD_MSGTEXT) format(value, charsmax(value), "%s", msgtext)
else if (type==HUD_SPRNAME) format(value, charsmax(value), "%s", sprname)
return value;
}
get_user_sex(id)
{
new mod_runing, sex
mod_runing = nst_get_mod_runing()
if ( (mod_runing == NST_MOD_ZB3 || mod_runing == NST_MOD_ZBU || mod_runing == NST_MOD_ZBS) && nst_zb_get_user_zombie(id) )
{
sex = nst_zb_get_user_sex(id)
}
else
{
sex = nst_get_user_sex(id)
}
return sex;
}
// Plays a sound on clients
PlaySound(id, const sound[])
{
if (equal(sound[strlen(sound)-4], ".mp3"))
client_cmd(id, "mp3 play ^"sound/%s^"", sound)
else
client_cmd(id, "spk ^"%s^"", sound)
}
bool:can_see_fm(entindex1, entindex2)
{
if ((!g_FM_Running) || !entindex1 || !entindex2)
return false
// new ent1, ent2
if (pev_valid(entindex1) && pev_valid(entindex1))
{
new flags = pev(entindex1, pev_flags)
if (flags & EF_NODRAW || flags & FL_NOTARGET)
{
return false
}
new Float:lookerOrig[3]
new Float:targetBaseOrig[3]
new Float:targetOrig[3]
new Float:temp[3]
pev(entindex1, pev_origin, lookerOrig)
pev(entindex1, pev_view_ofs, temp)
lookerOrig[0] += temp[0]
lookerOrig[1] += temp[1]
lookerOrig[2] += temp[2]
pev(entindex2, pev_origin, targetBaseOrig)
pev(entindex2, pev_view_ofs, temp)
targetOrig[0] = targetBaseOrig [0] + temp[0]
targetOrig[1] = targetBaseOrig [1] + temp[1]
targetOrig[2] = targetBaseOrig [2] + temp[2]
engfunc(EngFunc_TraceLine, lookerOrig, targetOrig, 0, entindex1, 0) // checks the had of seen player
if (get_tr2(0, TraceResult:TR_InOpen) && get_tr2(0, TraceResult:TR_InWater))
{
return false
}
else
{
new Float:flFraction
get_tr2(0, TraceResult:TR_flFraction, flFraction)
if (flFraction == 1.0 || (get_tr2(0, TraceResult:TR_pHit) == entindex2))
{
return true
}
else
{
targetOrig[0] = targetBaseOrig [0]
targetOrig[1] = targetBaseOrig [1]
targetOrig[2] = targetBaseOrig [2]
engfunc(EngFunc_TraceLine, lookerOrig, targetOrig, 0, entindex1, 0) // checks the body of seen player
get_tr2(0, TraceResult:TR_flFraction, flFraction)
if (flFraction == 1.0 || (get_tr2(0, TraceResult:TR_pHit) == entindex2))
{
return true
}
else
{
targetOrig[0] = targetBaseOrig [0]
targetOrig[1] = targetBaseOrig [1]
targetOrig[2] = targetBaseOrig [2] - 17.0
engfunc(EngFunc_TraceLine, lookerOrig, targetOrig, 0, entindex1, 0) // checks the legs of seen player
get_tr2(0, TraceResult:TR_flFraction, flFraction)
if (flFraction == 1.0 || (get_tr2(0, TraceResult:TR_pHit) == entindex2))
{
return true
}
}
}
}
}
return false
}
@Kethanbi: cái anim hình như chưa mượt lắm bác nhỉ
@tulucky: khi nào rảnh bác lên yahoo nhé, em share cho bác con char RED TEAM SA default![]()
chỉ sợ trật hết xương nó thui . 
ai có thằng N22 cho mình cái link đi bữa trước mình vứt đâu mất rồi Thank nha + Rép

hàng mật![]()