Hali Kicseréltem pár hangot a chickenmod forrásában, de elakad a compiler
Kód: files/7886701/7886701.sma(1172) : error 033: array must be indexed (variable "nodmg")
ehhez már nem értek, valaki ki tudná javítani?
forráskód: [spoiler]Kód: #include <amxmodx> #include <amxmisc> #include <cstrike> #include <engine> #include <fakemeta> //---------------------------------------------------------------------------------------------- /* ACCESS LEVELS */ new ACCESS_MENU new ACCESS_SETTINGS
/* MENU FLAGS */ new MenuFlags[33] new MenuPFlags[33] new g_menuPlayers[33][32] new g_menuPlayersNum[33] new MenuGrv = 5 new MenuHP = 50 new MenuSpd = 40
/* CONFIG SETUP */ new Team3 new bool:ChickenTeam1 new bool:ChickenTeam2 new bool:ChickenTeam3 new bool:ChickenAll new bool:HealthProtect new bool:ChickenTalk new bool:ChickenTeamTalk new bool:ChickenSelf new bool:ChickenBomb new bool:ChickenGlow new bool:ChickenGrenades new ChickenHealth new ChickenGravity new ChickenSpeed new ChickenHP = 35
/* OTHER */ new feather new bool:cs_running new bool:UserFlags[33] new bool:CSound[33] new bool:FreezeTime new ChickName[33][32] new UserOldName[33][32] new bool:ChickenName new bomber new bool:nodmg[33] new gmsgSetFOV new ChickenVision = 135 new Float:cView[3] = {0.0, 0.0, 0.0} new Float:nView[3] = {0.0, 0.0, 17.0} //---------------------------------------------------------------------------------------------- public c_chicken(id, level, cid) { if(id != 0) { if(!cmd_access(id, level, cid, 2)) { return PLUGIN_HANDLED } } new arg[32] read_argv(1, arg, 31)
if(arg[0] == '@') { new users[32], inum, team = str_to_num(arg[1]) get_players(users, inum, "a")
if(team == 1 && ChickenTeam1 == false) { ChickenTeam1 = true for(new i = 0; i < inum; ++i) { if(get_user_team(users[i]) == 1) { chicken_user(users[i]) } set_hudmessage(255, 25, 255, 0.05, 0.65, 2, 0.1, 4.0, 0.02, 0.02, 10) show_hudmessage(0, "%L", LANG_PLAYER, "TEAM_T_TRANSF_INTO_CHICKENS") } if(get_cvar_num("amx_chicken_sfx")) { chicken_sound(0) } return PLUGIN_HANDLED } else if(team == 1 && ChickenTeam1) { console_print(id, "%L", id, "TEAM_T_ALREADY_CHICKENS") } else if(team == 2 && ChickenTeam2 == false) { ChickenTeam2 = true for(new i = 0; i < inum; ++i) { if(get_user_team(users[i]) == 2) { chicken_user(users[i]) } set_hudmessage(255, 25, 255, 0.05, 0.65, 2, 0.1, 4.0, 0.02, 0.02, 10) show_hudmessage(0, "%L", LANG_PLAYER, "TEAM_CT_TRANSF_INTO_CHICKENS") } if(get_cvar_num("amx_chicken_sfx")) { chicken_sound(0) } return PLUGIN_HANDLED } else if(team == 2 && ChickenTeam2) { console_print(id, "%L", id, "TEAM_CT_ALREADY_CHICKENS") } else if(team == 3 && cs_running && ChickenTeam3 == false) { new map[32] get_mapname(map, 31)
if(!contain(map, "as_")) { ChickenTeam3 = true chicken_user(Team3)
if(get_cvar_num("amx_chicken_sfx")) { emit_sound(Team3, CHAN_ITEM, "rr/rr0.wav", 1.0, ATTN_NORM, 0, PITCH_NORM) } } return PLUGIN_HANDLED } else if(team == 3 && cs_running && ChickenTeam3) { console_print(id, "%L", id, "VIP_ALREADY_CHICKEN") } else { console_print(id, cs_running ? ("%L", id, "USAGE_CH_WITH_VIP") : ("%L", id, "USAGE_CH_WITHOUT_VIP")) } return PLUGIN_HANDLED } else if(arg[0] == '*') { if(ChickenAll == false) { ChickenAll = true chicken_user(0) set_hudmessage(255, 25, 255, 0.05, 0.65, 2, 0.1, 4.0, 0.02, 0.02, 10) show_hudmessage(0, "%L", LANG_PLAYER, "EVERY1_TRANSF_INTO_CHICKENS")
if(get_cvar_num("amx_chicken_sfx")) { chicken_sound(0) } } else { console_print(id, "%L", id, "EVERY1_ALREADY_CHICKENS") } return PLUGIN_HANDLED } else { new user[32], player = cmd_target(id, arg, 7) get_user_name(player, user, 31)
if(!player) { return PLUGIN_HANDLED } if(UserFlags[player] == false) { chicken_user(player) set_hudmessage(255, 25, 255, 0.05, 0.65, 2, 0.1, 4.0, 0.02, 0.02, 10)
if(get_cvar_num("amx_chicken_sfx")) { emit_sound(player, CHAN_ITEM, "rr/rr0.wav", 1.0, ATTN_NORM, 0, PITCH_NORM) } show_hudmessage(0, "%L", LANG_PLAYER, "PL_TRANSF_INTO_CHICKEN", user) } else { console_print(id, "%L", id, "PL_ALREADY_CHICKEN", user) } } return PLUGIN_HANDLED } //---------------------------------------------------------------------------------------------- public c_unchicken(id, level, cid) { if(id != 0) { if(!cmd_access(id, level, cid, 2)) { return PLUGIN_HANDLED } } new arg[32] read_argv(1, arg, 31)
if(arg[0] == '@') { new users[32], inum, team = str_to_num(arg[1]) get_players(users, inum, "a")
if(team == 1 && ChickenTeam1) { ChickenTeam1 = false for(new i = 0; i < inum; ++i) { if(get_user_team(users[i]) == 1) { unchicken_user(users[i]) } set_hudmessage(255, 25, 255, 0.05, 0.65, 2, 0.1, 4.0, 0.02, 0.02, 10) show_hudmessage(0, "%L", LANG_PLAYER, "TEAM_T_REST_INTO_HUMANS") } if(get_cvar_num("amx_chicken_sfx")) { chicken_sound(5) } return PLUGIN_HANDLED } else if(team == 1 && ChickenTeam1 == false) { console_print(id, "%L", id, "TEAM_T_ALREADY_HUMANS") } else if(team == 2 && ChickenTeam2) { ChickenTeam2 = false for(new i = 0; i < inum; ++i) { if(get_user_team(users[i]) == 2) { unchicken_user(users[i]) } set_hudmessage(255, 25, 255, 0.05, 0.65, 2, 0.1, 4.0, 0.02, 0.02, 10) show_hudmessage(0, "%L", LANG_PLAYER, "TEAM_CT_REST_INTO_HUMANS") } if(get_cvar_num("amx_chicken_sfx")) { chicken_sound(5) } return PLUGIN_HANDLED } else if(team == 2 && ChickenTeam2 == false) { console_print(id, "%L", id, "TEAM_CT_ALREADY_HUMANS") } else if(team == 3 && cs_running && ChickenTeam3) { new map[32] get_mapname(map, 31)
if(!contain(map, "as_")) { ChickenTeam3 = false unchicken_user(Team3)
if(get_cvar_num("amx_chicken_sfx")) { emit_sound(Team3, CHAN_ITEM, "misc/cow.wav", 1.0, ATTN_NORM, 0, PITCH_NORM) } } return PLUGIN_HANDLED } else if(team == 3 && cs_running && ChickenTeam3 == false) { console_print(id, "%L", id, "VIP_ALREADY_HUMAN") } else { console_print(id, cs_running ? ("%L", id, "USAGE_UNCH_WITH_VIP") : ("%L", id, "USAGE_UNCH_WITHOUT_VIP")) } return PLUGIN_HANDLED } else if(arg[0] == '*') { if(ChickenAll == true) { ChickenAll = false unchicken_user(0) set_hudmessage(255, 25, 255, 0.05, 0.65, 2, 0.1, 4.0, 0.02, 0.02, 10) show_hudmessage(0, "%L", LANG_PLAYER, "EVERY1_REST_INTO_HUMANS")
if(get_cvar_num("amx_chicken_sfx")) { chicken_sound(5) } } else { console_print(id, "%L", id, "EVERY1_ALREADY_HUMANS") } return PLUGIN_HANDLED } else { new user[32], player = cmd_target(id, arg, 7) get_user_name(player, user, 31)
if(!player) { return PLUGIN_HANDLED } if(UserFlags[player]) { unchicken_user(player) set_hudmessage(255, 25, 255, 0.05, 0.65, 2, 0.1, 4.0, 0.02, 0.02, 10)
if(get_cvar_num("amx_chicken_sfx")) { emit_sound(player, CHAN_ITEM, "misc/cow.wav", 1.0, ATTN_NORM, 0, PITCH_NORM) } show_hudmessage(0, "%L", LANG_PLAYER, "PL_RESTORED_INTO_HUMAN", user) } else { console_print(id, "%L", id, "PL_ALREADY_HUMAN", user) } } return PLUGIN_HANDLED } //---------------------------------------------------------------------------------------------- /* SAY COMMAND CODE */ public chickensay(id) { if(is_user_bot(id)) { return PLUGIN_CONTINUE } new words[32] read_args(words, 31)
if(UserFlags[id]) { if(ChickenSelf) { if(equali(words, "^"/unchickenme^"")) { if(!is_user_alive(id)) { client_print(id, 3, "%L", id, "CANT_TURN_BACK_INTO_HUMAN") } else { unchicken_user(id) emit_sound(id, CHAN_ITEM, "misc/cow.wav", 1.0, ATTN_NORM, 0, PITCH_NORM) set_hudmessage(255, 25, 255, 0.05, 0.65, 2, 0.1, 4.0, 0.02, 0.02, 10) show_hudmessage(0, "%L", LANG_PLAYER, "REST_HUMAN_HIMSELF", UserOldName[id]) user_kill(id, 1) } return PLUGIN_HANDLED } } if(ChickenTalk && is_user_alive(id) && !is_user_bot(id)) { saying_match(id) return PLUGIN_HANDLED } } else if(equali(words, "^"/chickenme^"")) { if(ChickenSelf) { if(get_user_health(id) <= ChickenHP) { client_print(id, 3, "%L", id, "CANT_TURN_CHICKEN_LOW_HEALTH") return PLUGIN_HANDLED } if(!is_user_alive(id)) { client_print(id, 3, "%L", id, "CANT_TURN_CHICKEN_DEATH") return PLUGIN_HANDLED } else { chicken_user(id) emit_sound(id, CHAN_ITEM, "rr/rr0.wav", 1.0, ATTN_NORM, 0, PITCH_NORM) set_hudmessage(255, 25, 255, 0.05, 0.65, 2, 0.1, 4.0, 0.02, 0.02, 10) new user[33] get_user_name(id, user, 32) show_hudmessage(0, "%L", LANG_PLAYER, "TRANSF_HIMSELF_INTO_CHICKEN", user) return PLUGIN_HANDLED } } } return PLUGIN_CONTINUE } //---------------------------------------------------------------------------------------------- /* SAY_TEAM COMMAND CODE */ public chickenteamsay(id) { if(ChickenTeamTalk && UserFlags[id] && is_user_alive(id) && !is_user_bot(id)) { saying_match(id) return PLUGIN_HANDLED } return PLUGIN_CONTINUE } //---------------------------------------------------------------------------------------------- /* SAY/SAY_TEAM CHICKEN CODE */ saying_match(id) { new user[33], ChickenMsg = random(4) get_user_name(id, user, 32)
if(ChickenMsg == 0) { client_print(0, 3, "%s: buk buk", user) chicken_sound(1) } else if(ChickenMsg == 1) { client_print(0, 3, "%s: buk buk", user) chicken_sound(2) } else if(ChickenMsg == 2) { client_print(0, 3, "%s: buk buk", user) chicken_sound(3) } else { client_print(0, 3, "%s: buGAWK", user) chicken_sound(4) } return PLUGIN_HANDLED } //---------------------------------------------------------------------------------------------- /* SOUND SFX CODE */ chicken_sound(sndno) { if(!get_cvar_num("amx_chicken_sfx")) { return PLUGIN_HANDLED } new users[32], inum get_players(users, inum, "c")
for(new i = 0; i < inum; ++i) { switch(sndno) { case 0: client_cmd(users[i], "speak sound/rr/rr0") case 1: client_cmd(users[i], "speak sound/rr/rr1") case 2: client_cmd(users[i], "speak sound/rr/rr2") case 3: client_cmd(users[i], "speak sound/rr/rr3") case 4: client_cmd(users[i], "speak sound/rr/rr4") case 5: client_cmd(users[i], "speak sound/misc/cow") } } return PLUGIN_HANDLED } //---------------------------------------------------------------------------------------------- /* SHOW MENU CODE */ public amx_chick_menu(id, level, cid) { if(!cmd_access(id, level, cid, 1)) { return PLUGIN_HANDLED } MenuFlags[id] = 1 show_chickenmenu(id) return PLUGIN_HANDLED } //---------------------------------------------------------------------------------------------- show_chickenmenu(id) { new menuoption[10][64], smenu[64], menubody[512] new keys for(new z = 0; z < 10; ++z) menuoption[z][0] = 0 // clear string
switch(MenuFlags[id]) { case 1: /* Main Menu */ { format(smenu, 63, "%L", id, "MAIN_MENU") format(menuoption[0], 63, "1. %L^n", id, "PLAYERS_MENU") format(menuoption[1], 63, "2. %L^n", id, "TEAM_MENU")
if(id && get_user_flags(id) & ACCESS_SETTINGS != ACCESS_SETTINGS) {} else { format(menuoption[2], 63, "3. %L^n", id, "SETTINGS_MENU") keys |= (1<<2) } format(menuoption[9], 63, "^n0. %L", id, "EXIT") keys |= (1<<0)|(1<<1)|(1<<9)
format(menubody, 511, "%L", id, "CHICKENMOD_OPTIONS", smenu, menuoption[0], menuoption[1], menuoption[2], menuoption[3], menuoption[4], menuoption[5], menuoption[6], menuoption[7], menuoption[8], menuoption[9]) show_menu(id, keys, menubody, -1, "[ChickenMod]") } case 2: /* Players Menu */ { switch(MenuPFlags[id]) { default: { get_players(g_menuPlayers[id], g_menuPlayersNum[id]) new b = 0, i, user[32], menu = MenuPFlags[id], start = menu * 7
if(start >= g_menuPlayersNum[id]) { start = MenuPFlags[id] = 0 } new len = format(menubody, 511, "%L", id, "CHICKENMOD_PLAYERS", ++menu, (g_menuPlayersNum[id] / 7 + ((g_menuPlayersNum[id] % 7) ? 1 : 0))) new pkeys = (1<<8)|(1<<9), end = start + 7
if(end > g_menuPlayersNum[id]) { end = g_menuPlayersNum[id] } for(new a = start; a < end; ++a) { i = g_menuPlayers[id][a] get_user_name(i, user, 31) if(!is_user_alive(i)) { ++b len += format(menubody[len], 511 - len, "\d%d. %s\R%L^n\w", b, user, id, "DEAD") } else { pkeys |= (1<<b) len += format(menubody[len], 511 - len, "%d. %s\R\y%L^n\w", ++b, user, id, UserFlags[i] ? "CHICKEN" : "HUMAN") } } if(end != g_menuPlayersNum[id]) { len += format(menubody[len], 511 - len, "^n8. %L^n^n9. %L^n0. %L", id, "MORE", id, "BACK", id, "EXIT") pkeys |= (1<<7) } else { len += format(menubody[len], 511 - len, "^n9. %L^n0. %L", id, "BACK", id, "EXIT") } show_menu(id, pkeys, menubody, -1, "[ChickenMod]") } } } case 3: /* Team Menu */ { format(smenu, 63, "%L", id, "TEAM_MENU") format(menuoption[0], 63, "1. %L\R\y%L^n\w", id, "TERRORISTS", id, ChickenTeam1 ? "YES" : "NO") format(menuoption[1], 63, "2. %L\R\y%L^n\w", id, "COUNTER-TERRORISTS", id, ChickenTeam2 ? "YES" : "NO") format(menuoption[2], 63, "3. %L\R\y%L^n\w", id, "EVERYONE", id, ChickenAll ? "YES" : "NO")
new map[32] get_mapname(map, 31)
if(equali(map, "as_", 3)) // KWo - 20.11.2005 { format(menuoption[3], 63, "4. VIP\R\y%L^n\w", id, ChickenTeam3 ? "YES" : "NO") } format(menuoption[8], 63, "^n9. %L", id, "BACK") format(menuoption[9], 63, "^n0. %L", id, "EXIT") keys = (1<<0)|(1<<1)|(1<<2)|(1<<3)|(1<<8)|(1<<9)
format(menubody, 511, "%L", id, "CHICKENMOD_OPTIONS", smenu, menuoption[0], menuoption[1], menuoption[2], menuoption[3], menuoption[4], menuoption[5], menuoption[6], menuoption[7], menuoption[8], menuoption[9]) show_menu(id, keys, menubody, -1, "[ChickenMod]") } case 4: /* Setting Menu 1*/ { format(smenu, 63, "%L", id, "SETTINGS_MENU") format(menuoption[0], 63, "1. %L\R\y%L^n\w", id, "CHICKEN_BOMBING", id, ChickenBomb ? "ON" : "OFF") format(menuoption[1], 63, "2. %L\R\y%L^n\w", id, "CHICKEN_GRENADES", id, ChickenGrenades ? "ON" : "OFF") format(menuoption[2], 63, "3. %L\R\y%L^n\w", id, "CHICKEN_GLOWING", id, ChickenGlow ? "ON" : "OFF") format(menuoption[3], 63, "4. %L\R\y%L^n\w", id, "HEALTH_PROTECTION", id, HealthProtect ? "ON" : "OFF") format(menuoption[4], 63, "5. %L\R\y%L^n\w", id, "CHICKEN_NAMING", id, ChickenName ? "ON" : "OFF") format(menuoption[5], 63, "6. %L\R\y%L^n\w", id, "CHICKEN_SELF_ABILITY", id, ChickenSelf ? "ON" : "OFF") format(menuoption[6], 63, "7. %L\R\y%L^n^n\w", id, "CHICKEN_TALKING", id, ChickenTalk ? "ON" : "OFF") format(menuoption[7], 63, "8. %L^n^n", id, "MORE") format(menuoption[8], 63, "9. %L^n", id, "BACK") format(menuoption[9], 63, "0. %L", id, "EXIT") keys = (1<<0)|(1<<1)|(1<<2)|(1<<3)|(1<<4)|(1<<5)|(1<<6)|(1<<7)|(1<<8)|(1<<9)
format(menubody, 511, "%L", id, "CHICKENMOD_OPTIONS", smenu, menuoption[0], menuoption[1], menuoption[2], menuoption[3], menuoption[4], menuoption[5], menuoption[6], menuoption[7], menuoption[8], menuoption[9]) show_menu(id, keys, menubody, -1, "[ChickenMod]") } case 5: /* Setting Menu 2*/ { format(smenu, 63, "%L", id, "SETTINGS_MENU") format(menuoption[0], 63, "1. %L\R\y%L^n\w", id, "CHICKEN_TEAM_TALKING", id, ChickenTeamTalk ? "ON" : "OFF") format(menuoption[1], 63, ChickenSelf ? "2. %L\R\y%i^n\w" : "\d2. %L\R%i^n\w", id, "NOT_ALLOWED_CHICKEN", ChickenHP) format(menuoption[2], 63, "3. %L\R\y%i^n\w", id, "CHICKEN_HEALTH", ChickenHealth) format(menuoption[3], 63, "4. %L\R\y%i^n\w", id, "CHICKEN_GRAVITY", ChickenGravity) format(menuoption[4], 63, "5. %L\R\y%i^n\w", id, "CHICKEN_SPEED", ChickenSpeed) format(menuoption[5], 63, "6. %L\R\y%i^n\w", id, "CHICKEN_VISION", ChickenVision) format(menuoption[6], 63, "7. %L\R\y%L^n^n\w", id, "CHICKEN_SPEC_EFF", id, get_cvar_num("amx_chicken_sfx") ? "ON" : "OFF") format(menuoption[8], 63, "9. %L^n", id, "BACK") format(menuoption[9], 63, "0. %L", id, "EXIT") keys = (1<<0)|(1<<1)|(1<<2)|(1<<3)|(1<<4)|(1<<5)|(1<<6)|(1<<8)|(1<<9)
format(menubody, 511, "%L", id, "CHICKENMOD_OPTIONS", smenu, menuoption[0], menuoption[1], menuoption[2], menuoption[3], menuoption[4], menuoption[5], menuoption[6], menuoption[7], menuoption[8], menuoption[9]) show_menu(id, keys, menubody, -1, "[ChickenMod]") } } return PLUGIN_HANDLED } //---------------------------------------------------------------------------------------------- /* ACTION MENU CODE */ public action_chickenmenu(id, key) { if(MenuFlags[id] == 1) { switch(key) { case 0: MenuFlags[id] = 2 // PLAYERS MENU BUTTON (1) case 1: MenuFlags[id] = 3 // TEAM MENU BUTTON (2) case 2: MenuFlags[id] = 4 // SETTINGS MENU BUTTON (3) case 9: // EXIT BUTTON (0) { // Menu Fix (Popup) MenuFlags[id] = 0 return PLUGIN_HANDLED } } // Bypass Update System show_chickenmenu(id) return PLUGIN_HANDLED } else if(MenuFlags[id] == 2) { switch(key) { case 7: // MORE BUTTON (8) { ++MenuPFlags[id] // Bypass Update System show_chickenmenu(id) return PLUGIN_HANDLED } case 8: // BACK BUTTON (9) { if(MenuPFlags[id] > 0) { // Bypass Update System --MenuPFlags[id] show_chickenmenu(id) return PLUGIN_HANDLED } else { // Bypass Update System MenuFlags[id] = 1 show_chickenmenu(id) return PLUGIN_HANDLED } } case 9: // EXIT BUTTON (0) { // Menu Fix (Popup) MenuFlags[id] = 0 return PLUGIN_HANDLED } default: { new player = g_menuPlayers[id][MenuPFlags[id] * 7 + key] new user[33] get_user_name(player, user, 32)
if(UserFlags[player]) { unchicken_user(player) set_hudmessage(255, 25, 255, 0.05, 0.65, 2, 0.1, 4.0, 0.02, 0.02, 10)
if(get_cvar_num("amx_chicken_sfx")) { emit_sound(player, CHAN_ITEM, "misc/cow.wav", 1.0, ATTN_NORM, 0, PITCH_NORM) } show_hudmessage(0, "%L", LANG_PLAYER, "PL_RESTORED_INTO_HUMAN", user) } else { chicken_user(player) set_hudmessage(255, 25, 255, 0.05, 0.65, 2, 0.1, 4.0, 0.02, 0.02, 10)
if(get_cvar_num("amx_chicken_sfx")) { emit_sound(player, CHAN_ITEM, "rr/rr0.wav", 1.0, ATTN_NORM, 0, PITCH_NORM) } show_hudmessage(0, "%L", LANG_PLAYER, "PL_TRANSF_INTO_CHICKEN", user) } } } } else if(MenuFlags[id] == 3) { new users[32], inum get_players(users, inum, "a") switch(key) { case 0: { if(ChickenTeam1 == false) { ChickenTeam1 = true for(new i = 0; i < inum; ++i) { if(get_user_team(users[i]) == 1) { chicken_user(users[i]) } if(get_cvar_num("amx_chicken_sfx")) { chicken_sound(0) } set_hudmessage(255, 25, 255, 0.05, 0.65, 2, 0.1, 4.0, 0.02, 0.02, 10) show_hudmessage(0, "%L", LANG_PLAYER, "TEAM_T_TRANSF_INTO_CHICKENS") } } else { ChickenTeam1 = false for(new i = 0; i < inum; ++i) { if(get_user_team(users[i]) == 1) { unchicken_user(users[i]) } if(get_cvar_num("amx_chicken_sfx")) { chicken_sound(5) } set_hudmessage(255, 25, 255, 0.05, 0.65, 2, 0.1, 4.0, 0.02, 0.02, 10) show_hudmessage(0, "%L", LANG_PLAYER, "TEAM_T_REST_INTO_HUMANS") } } } case 1: { if(ChickenTeam2 == false) { ChickenTeam2 = true for(new i = 0; i < inum; ++i) { if(get_user_team(users[i]) == 2) { chicken_user(users[i]) } if(get_cvar_num("amx_chicken_sfx")) { chicken_sound(0) } set_hudmessage(255, 25, 255, 0.05, 0.65, 2, 0.1, 4.0, 0.02, 0.02, 10) show_hudmessage(0, "%L", LANG_PLAYER, "TEAM_CT_TRANSF_INTO_CHICKENS") } } else { ChickenTeam2 = false for(new i = 0; i < inum; ++i) { if(get_user_team(users[i]) == 2) { unchicken_user(users[i]) } if(get_cvar_num("amx_chicken_sfx")) { chicken_sound(5) } set_hudmessage(255, 25, 255, 0.05, 0.65, 2, 0.1, 4.0, 0.02, 0.02, 10) show_hudmessage(0, "%L", LANG_PLAYER, "TEAM_CT_REST_INTO_HUMANS") } } } case 2: { if(ChickenAll == false) { ChickenAll = true chicken_user(0)
if(get_cvar_num("amx_chicken_sfx")) { chicken_sound(0) } set_hudmessage(255, 25, 255, 0.05, 0.65, 2, 0.1, 4.0, 0.02, 0.02, 10) show_hudmessage(0, "%L", LANG_PLAYER, "EVERY1_TRANSF_INTO_CHICKENS") } else { ChickenAll = false unchicken_user(0)
if(get_cvar_num("amx_chicken_sfx")) { chicken_sound(5) } set_hudmessage(255, 25, 255, 0.05, 0.65, 2, 0.1, 4.0, 0.02, 0.02, 10) show_hudmessage(0, "%L", LANG_PLAYER, "EVERY1_REST_INTO_HUMANS") } } case 3: { if(cs_running) { new map[32] get_mapname(map, 31)
if(!contain(map, "as_")) { if(ChickenTeam3 == false) { ChickenTeam3 = true chicken_user(Team3)
if(get_cvar_num("amx_chicken_sfx")) { emit_sound(Team3, CHAN_ITEM, "rr/rr0.wav", 1.0, ATTN_NORM, 0, PITCH_NORM) } } else if(ChickenTeam3) { ChickenTeam3 = false unchicken_user(Team3)
if(get_cvar_num("amx_chicken_sfx")) { emit_sound(Team3, CHAN_ITEM, "misc/cow.wav", 1.0, ATTN_NORM, 0, PITCH_NORM) } } } } } case 8: // BACK BUTTON (9) { // Bypass Update System MenuFlags[id] = 1 show_chickenmenu(id) return PLUGIN_HANDLED } case 9: // EXIT BUTTON (0) { // Menu Fix (Popup) MenuFlags[id] = 0 return PLUGIN_HANDLED } } } else if(MenuFlags[id] == 4) { switch(key) { case 0: { ChickenBomb ? (ChickenBomb = false) : (ChickenBomb = true) } case 1: { ChickenGrenades ? (ChickenGrenades = false) : (ChickenGrenades = true) } case 2: { ChickenGlow ? (ChickenGlow = false) : (ChickenGlow = true) call_glow(0) } case 3: { HealthProtect ? (HealthProtect = false) : (HealthProtect = true) } case 4: { ChickenName ? (ChickenName = false) : (ChickenName = true) } case 5: { ChickenSelf ? (ChickenSelf = false) : (ChickenSelf = true) } case 6: { ChickenTalk ? (ChickenTalk = false) : (ChickenTalk = true) } case 7: // MORE BUTTON (8) { // Bypass Update System MenuFlags[id] = 5 show_chickenmenu(id) return PLUGIN_HANDLED } case 8: // BACK BUTTON (9) { // Bypass Update System MenuFlags[id] = 1 show_chickenmenu(id) return PLUGIN_HANDLED } case 9: // EXIT BUTTON (0) { // Menu Fix (Popup) MenuFlags[id] = 0 return PLUGIN_HANDLED } } } else if(MenuFlags[id] == 5) { switch(key) { case 0: { ChickenTeamTalk ? (ChickenTeamTalk = false) : (ChickenTeamTalk = true) } case 1: { if(!ChickenSelf) { // Bypass Update System show_chickenmenu(id) return PLUGIN_HANDLED } else if(ChickenHP + MenuGrv > 100 || ChickenHP > 100) { ChickenHP = 0 } else { ChickenHP += MenuGrv } } case 2: { new health = ChickenHealth
if(HealthProtect) { if(health + MenuHP > 255 || health > 255) { ChickenHealth = 1 } else { ChickenHealth = (health += MenuHP) } } else { ChickenHealth = (health += MenuHP) } } case 3: { new gravity = ChickenGravity
if(gravity + MenuGrv > 100 || gravity > 100) { ChickenGravity = 0 } else { ChickenGravity = (gravity += MenuGrv) } call_gravity(0) // Update all Chickens to new gravity setting } case 4: { new speed = ChickenSpeed
if(speed + MenuSpd > 400 || speed > 400) { ChickenSpeed = 0 } else { ChickenSpeed = (speed += MenuSpd) } call_speed(0) // Update all Chickens to new speed setting } case 5: { if(ChickenVision + MenuGrv > 255 || ChickenVision > 255) { ChickenVision = 0 } else { ChickenVision += MenuGrv } call_vision(0) // Update all Chickens to new vision setting } case 6: { set_cvar_num("amx_chicken_sfx", get_cvar_num("amx_chicken_sfx") ? 0 : 1) } case 8: // BACK BUTTON (9) { // Bypass Update System MenuFlags[id] = 4 show_chickenmenu(id) return PLUGIN_HANDLED } case 9: // EXIT BUTTON (0) { // Menu Fix (Popup) MenuFlags[id] = 0 return PLUGIN_HANDLED } } } update_menu() return PLUGIN_HANDLED } //---------------------------------------------------------------------------------------------- /* MENU UPDATER */ update_menu() { new admins[32], inum get_players(admins, inum) for(new i = 0; i < inum; ++i) { if(MenuFlags[admins[i]] > 1) { show_chickenmenu(admins[i]) } } } //---------------------------------------------------------------------------------------------- public get_weapon(id) { if(UserFlags[id]) { new ammo, clip, wid wid = get_user_weapon(id, clip, ammo) // 29 = Knife, 4 = HEGRENADE, 6 = C4 if(wid != 29 && (!ChickenGrenades || wid != 4) && (!ChickenBomb || wid != 6)) { engclient_cmd(id, "weapon_knife") entity_set_string(id, EV_SZ_viewmodel, "") entity_set_string(id, EV_SZ_weaponmodel, "") } if(wid == 4 || wid == 6) { entity_set_string(id, EV_SZ_viewmodel, "") entity_set_string(id, EV_SZ_weaponmodel, "") } if(!FreezeTime) { call_speed(id) } } } //---------------------------------------------------------------------------------------------- /* VIP DETECTION CODE */ public detect_vip(id) { Team3 = id if(ChickenTeam3 && UserFlags[id] == false) { chicken_user(id) } } //---------------------------------------------------------------------------------------------- /* BOMB DETECTION CODE */ public got_bomb(id) { if(UserFlags[id]) { bomber = id } else { bomber = 0 } } //---------------------------------------------------------------------------------------------- /* FIELD OF VIEW EVENT CODE */ public check_fov(id) { if(UserFlags[id]) { set_vision(id) } } //---------------------------------------------------------------------------------------------- /* RESETHUD EVENT CODE */ public chicken_update(id) { if(UserFlags[id]) { nodmg[id] = true call_glow(id) call_health(id) call_gravity(id) call_speed(id) call_vision(id) call_name(id) } new team = get_user_team(id)
if(ChickenTeam1) { if(1 == team && UserFlags[id] == false) { chicken_user(id) } } if(ChickenTeam2) { if(2 == team && UserFlags[id] == false) { chicken_user(id) } } if(ChickenAll) { if(0 > team && 5 < team) { if(UserFlags[id] == false) { chicken_user(id) } } } update_menu() } //---------------------------------------------------------------------------------------------- /* NEWROUND EVENT CODE */ public round_start() { FreezeTime = false set_task(0.01, "call_speed", 0) } //---------------------------------------------------------------------------------------------- /* ROUND END EVENT CODE */ public round_end() { FreezeTime = true }
public game_start() { FreezeTime = true } //---------------------------------------------------------------------------------------------- /* CONNECTION CODE */ public client_putinserver(id) { update_menu() } //---------------------------------------------------------------------------------------------- /* INFO CHANGE CODE */ public client_infochanged(id) { if(ChickenName && UserFlags[id] && !is_user_bot(id)) { new newname[33], oldname[33] get_user_info(id, "name", newname, 32) get_user_name(id, oldname, 32)
if(!equal(oldname, newname)) { set_user_info(id, "name", ChickName[id]) } } update_menu() } //---------------------------------------------------------------------------------------------- /* DAMAGE EVENT CODE */ public damage_event(id) { if(get_user_health(id) > 0 && UserFlags[id] && !nodmg) { new orig[3] get_user_origin(id, orig) create_gibs(id, orig, 5, 10, 5) } if(nodmg[id]) { nodmg[id] = false } } //--------------------------------------------------------------------------------------------- /* DEATH EVENT CODE */ public death_event(id) { update_menu() new vid = read_data(2) if(UserFlags[vid]) { set_rendering(vid, kRenderFxNone, 0, 0, 0, kRenderTransAdd, 0) new orig[3] get_user_origin(vid, orig) create_gibs(vid, orig, 5, 30, 30) } } //---------------------------------------------------------------------------------------------- /* DISCONNECT CODE */ public client_disconnect(id) { if(UserFlags[id]) { UserFlags[id] = false } if(MenuFlags[id] > 0) { MenuFlags[id] = 0 } update_menu() } //---------------------------------------------------------------------------------------------- /* END CODE */ public plugin_end() { unchicken_user(0) } //---------------------------------------------------------------------------------------------- public client_prethink(id) { new Float:pView[3] entity_get_vector(id, EV_VEC_view_ofs, pView) // Chicken View offset if(UserFlags[id] && is_user_alive(id)) { if(pView[2] != cView[2]) { entity_set_vector(id, EV_VEC_view_ofs, cView) } } } //---------------------------------------------------------------------------------------------- public emitsound(entity, channel, const sample[]) { //client_print(0, 3, "Entity ID = %d Sound = %s", entity, sample) if(entity > 32 || entity < 1) return FMRES_IGNORED if(equal(sample, "common/wpn_denyselect.wav")) return FMRES_SUPERCEDE // Using sound is annoying ;) if(sample[0] == 'w' && sample[1] == 'e' && sample[8] == 'k' && sample[9] == 'n' && UserFlags[entity]) { if(sample[14] == 'd') { return FMRES_SUPERCEDE } switch(sample[15]) { case 'l': //slash { if(!CSound[entity]) { new iPitch = random_num(100, 120) switch(random_num(0, 3)) { case 0: emit_sound(entity, CHAN_VOICE, "rr/rr1.wav", 1.0, ATTN_NORM, 0, iPitch) case 1: emit_sound(entity, CHAN_VOICE, "rr/rr2.wav", 1.0, ATTN_NORM, 0, iPitch) case 2: emit_sound(entity, CHAN_VOICE, "rr/rr3.wav", 1.0, ATTN_NORM, 0, iPitch) case 3: emit_sound(entity, CHAN_VOICE, "rr/rr4.wav", 1.0, ATTN_NORM, 0, iPitch) } CSound[entity] = true set_task(0.8, "reset_sound", entity) } return FMRES_SUPERCEDE } case 't': //stab { emit_sound(entity, CHAN_WEAPON, "weapons/knife_hit3.wav", 1.0, ATTN_NORM, 0, PITCH_NORM) return FMRES_SUPERCEDE } } switch(sample[17]) { case '2': { emit_sound(entity, CHAN_WEAPON, "weapons/knife_hit1.wav", 1.0, ATTN_NORM, 0, PITCH_NORM) return FMRES_SUPERCEDE } case '4': { emit_sound(entity, CHAN_WEAPON, "weapons/knife_hit3.wav", 1.0, ATTN_NORM, 0, PITCH_NORM) return FMRES_SUPERCEDE } case 'w': { return FMRES_SUPERCEDE //remove wallhit } } } // Remove death sounds and replace with killChicken if(sample[0] == 'p' && sample[3] == 'y' && sample[5] == 'r' && UserFlags[entity]) { switch(sample[7]) { case 'b': { new orig[3] get_user_origin(entity, orig) create_gibs(entity, orig, 5, 10, 5) return FMRES_SUPERCEDE } case 'd': { emit_sound(entity, CHAN_VOICE, "misc/killChicken.wav", 1.0, ATTN_NORM, 0, PITCH_NORM) return FMRES_SUPERCEDE } } } return FMRES_IGNORED } //---------------------------------------------------------------------------------------------- public reset_sound(id) { CSound[id] = false } //---------------------------------------------------------------------------------------------- public set_model(edict, const model[]) { if (!is_valid_ent(edict)) return FMRES_IGNORED
new id = entity_get_edict(edict, EV_ENT_owner) if(equal(model, "models/w_c4.mdl") && UserFlags[bomber]) { entity_set_model(edict, "models/w_goldenEgg.mdl") return FMRES_SUPERCEDE } if(equal(model, "models/w_hegrenade.mdl") && UserFlags[id]) { new Float:orig[3] entity_get_vector(id, EV_VEC_origin, orig) entity_set_model(edict, "models/w_easterEgg.mdl") entity_set_vector(edict, EV_VEC_velocity, Float:{0.0, 0.0, 0.0}) entity_set_origin(edict, orig) return FMRES_SUPERCEDE } return FMRES_IGNORED } //---------------------------------------------------------------------------------------------- /* PRECACHE CODE */ public plugin_precache() { // Models precache_model("models/player/chicken/chicken.mdl") precache_model("models/w_easterEgg.mdl") precache_model("models/w_goldenEgg.mdl") feather = precache_model("models/feather.mdl") // Sounds precache_sound("rr/rr0.wav") precache_sound("rr/rr1.wav") precache_sound("rr/rr2.wav") precache_sound("rr/rr3.wav") precache_sound("rr/rr4.wav") precache_sound("misc/cow.wav") precache_sound("misc/killChicken.wav") precache_sound("misc/knife_hit1.wav") precache_sound("misc/knife_hit3.wav") } //---------------------------------------------------------------------------------------------- /* INITIATION CODE */ public plugin_init() { cs_running = (is_running("cstrike") || is_running("czero")) ? true : false register_plugin("ChickenMod: Rebirth", "1.0a", "T(+)rget") register_dictionary("chicken.txt") new config[64] get_configsdir(config, 63) format(config, 63, "%s/chicken.cfg", config) loadcfg(config)
if(cs_running) { register_cvar("chicken_version", "1.0", FCVAR_SERVER|FCVAR_SPONLY) register_menucmd(register_menuid("[ChickenMod]"), 1023, "action_chickenmenu") register_event("Battery", "detect_vip", "b", "1=200") register_event("CurWeapon", "get_weapon", "b") gmsgSetFOV = get_user_msgid("SetFOV") register_event("SetFOV", "check_fov", "be", "1=90") register_event("Damage", "damage_event", "b") register_event("DeathMsg", "death_event", "a") register_event("ResetHUD", "chicken_update", "b") register_logevent("round_start", 2, "0=World triggered", "1=Round_Start") register_logevent("round_end", 2, "0=World triggered", "1=Round_End") register_event("TextMsg", "game_start", "a", "2=#Game_Commencing", "2=#Game_will_restart_in") register_event("BarTime", "got_bomb", "be", "1=3")
register_srvcmd("c_chicken", "c_chicken", ACCESS_MENU, "<authid, nick, #userid, @1/2/3 (1 = Terrorists, 2 = Counter-Terrorists, 3 = VIP) or * (all)>") register_srvcmd("c_unchicken", "c_unchicken", ACCESS_MENU, "<authid, nick, #userid, @1/2/3 (1 = Terrorists, 2 = Counter-Terrorists, 3 = VIP) or * (all)>")
register_clcmd("amx_chicken", "c_chicken", ACCESS_MENU, "<authid, nick, #userid, @1/2/3 (1 = Terrorists, 2 = Counter-Terrorists, 3 = VIP) or * (all)>") register_clcmd("amx_unchicken", "c_unchicken", ACCESS_MENU, "<authid, nick, #userid, @1/2/3 (1 = Terrorists, 2 = Counter-Terrorists, 3 = VIP) or * (all)>") register_clcmd("say /chickenmenu", "amx_chick_menu", ACCESS_MENU, "- [ChickenMod]: User Interface") register_clcmd("say", "chickensay") register_clcmd("say_team", "chickenteamsay") register_clcmd("say /chickenme", "chickensay", 0, "- chicken yourself") register_clcmd("say /unchickenme", "chickensay", 0, "- unchicken yourself") register_cvar("amx_chicken_sfx", "1")
format(config, 63, "exec %s", config) server_cmd(config)
register_forward(FM_SetModel, "set_model") register_forward(FM_EmitSound, "emitsound") register_forward(FM_TraceLine, "forward_traceline", 1) } else { log_message("ChickenMod:Rebirth - error: failed to load plugin (Counter-Strike Only)") } }
public plugin_modules() { require_module("cstrike") require_module("engine") require_module("fakemeta") } //---------------------------------------------------------------------------------------------- /* LOAD/READ CONFIG CODE */ loadcfg(filename[]) { if(file_exists(filename)) { new readdata[128], set[30], val[30], len for(new i = 0; i < 100 && read_file(filename, i, readdata, 127, len); ++i) { parse(readdata, set, 29, val, 29) if(equal(set, "ChickenVision")) { ChickenVision = str_to_num(val) } if(equal(set, "HealthProtect")) { if(!equal(val, "0")) { HealthProtect = true } } if(equal(set, "ChickenName")) { if(!equal(val, "0")) { ChickenName = true } } if(equal(set, "ChickenSelf")) { if(!equal(val, "0")) { ChickenSelf = true } } if(equal(set, "ChickenHP")) { ChickenHP = str_to_num(val) } if(equal(set, "ChickenTalk")) { if(!equal(val, "0")) { ChickenTalk = true } } if(equal(set, "ChickenTeamTalk")) { if(!equal(val, "0")) { ChickenTeamTalk = true } } if(equal(set, "ChickenBomb")) { if(!equal(val, "0")) { ChickenBomb = true } } if(equal(set, "ChickenGrenades")) { if(!equal(val, "0")) { ChickenGrenades = true } } if(equal(set, "ChickenGlow")) { if(!equal(val, "0")) { ChickenGlow = true } } if(equal(set, "ChickenHealth")) { if(HealthProtect) { if(str_to_num(val) > 255) { ChickenHealth = 255 } else { ChickenHealth = str_to_num(val) } } else { ChickenHealth = str_to_num(val) } } if(equal(set, "ChickenGravity")) { if(str_to_num(val) > 100) { ChickenGravity = 100 } else { ChickenGravity = str_to_num(val) } } if(equal(set, "ChickenSpeed")) { if(str_to_num(val) > 400) { ChickenSpeed = 400 } else { ChickenSpeed = str_to_num(val) } } if(equal(set, "MenuGrv")) { MenuGrv = str_to_num(val) } if(equal(set, "MenuHP")) { MenuHP = str_to_num(val) } if(equal(set, "MenuSpd")) { MenuSpd = str_to_num(val) } if(equal(set, "ACCESS_MENU")) { ACCESS_MENU = str_to_num(val) } if(equal(set, "ACCESS_SETTINGS")) { ACCESS_SETTINGS = str_to_num(val) } } } return PLUGIN_HANDLED } //---------------------------------------------------------------------------------------------- /* GENERIC CODE */ //---------------------------------------------------------------------------------------------- public create_gibs(id, vec[3], velocity, random, amount) { // gibs new Float:size[3] entity_get_vector(id, EV_VEC_size, size)
message_begin(MSG_PVS, SVC_TEMPENTITY, vec) write_byte(108) // TE_BREAKMODEL // position write_coord(vec[0]) write_coord(vec[1]) write_coord(vec[2]) // size write_coord(floatround(size[0])) write_coord(floatround(size[1])) write_coord(floatround(size[2])) // velocity write_coord(0) write_coord(0) write_coord(velocity) //10 // randomization write_byte(random) //30 // Model write_short(feather) //model id# // # of shards write_byte(amount) //30 // duration write_byte(300);// 15.0 seconds // flags write_byte(0x04) // BREAK_FLESH message_end() } //---------------------------------------------------------------------------------------------- /* CHICKEN CODE */ public chicken_user(id) { if(id == 0) { call_func("chicken_user") } else if(UserFlags[id] == false && is_user_alive(id)) { UserFlags[id] = true
if(get_cvar_num("amx_chicken_sfx")) { new origin[3] get_user_origin(id, origin) transform(origin) } if(!is_user_bot(id)) { new user[33] get_user_name(id, user, 32) copy(UserOldName[id], 32, user) format(ChickName[id], 32, "Chicken #%i", id)
if(ChickenName) { set_user_info(id, "name", ChickName[id]) } } call_glow(id) call_health(id) call_gravity(id) call_speed(id) call_vision(id) cs_set_user_model(id, "chicken") } return PLUGIN_HANDLED } //---------------------------------------------------------------------------------------------- /* UNCHICKEN CODE */ public unchicken_user(id) { if(id == 0) { call_func("unchicken_user") } else if(UserFlags[id] && is_user_alive(id)) { UserFlags[id] = false
if(get_cvar_num("amx_chicken_sfx")) { new origin[3] get_user_origin(id, origin) transform(origin) } if(ChickenName && !is_user_bot(id)) { set_user_info(id, "name", UserOldName[id]) } if(entity_get_float(id, EV_FL_health) > 100.0) { entity_set_float(id, EV_FL_health, 100.0) } entity_set_float(id, EV_FL_gravity, 1.0) entity_set_float(id, EV_FL_maxspeed, 240.0) set_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, 255) set_vision(id) entity_set_vector(id, EV_VEC_view_ofs, nView) cs_reset_user_model(id) } return PLUGIN_HANDLED } //---------------------------------------------------------------------------------------------- /* CALL CONTROLLER FOR ID 0 (All Players) */ public call_func(func[]) { new users[32], inum get_players(users, inum, "a") for(new i = 0; i < inum; ++i) { if(users[i] > 0) { set_task(0.01, func, users[i]) } } } //---------------------------------------------------------------------------------------------- public call_glow(id) { if(id == 0) { call_func("call_glow") } else if(UserFlags[id] && is_user_alive(id)) { set_rendering(id, kRenderFxGlowShell, (get_user_team(id) == 1 && ChickenGlow) ? 250 : 0, 0, (get_user_team(id) == 2 && ChickenGlow) ? 250 : 0, kRenderTransAlpha, 255) } } //---------------------------------------------------------------------------------------------- public call_health(id) { if(UserFlags[id] && is_user_alive(id)) { entity_set_float(id, EV_FL_health, float(ChickenHealth)) } } //---------------------------------------------------------------------------------------------- public call_gravity(id) { if(id == 0) { call_func("call_gravity") } else if(UserFlags[id] && is_user_alive(id)) { entity_set_float(id, EV_FL_gravity, float(ChickenGravity) / 100.0) } } //---------------------------------------------------------------------------------------------- public call_speed(id) { if(id == 0) { call_func("call_speed") } else if(UserFlags[id] && is_user_alive(id)) { entity_set_float(id, EV_FL_maxspeed, float(ChickenSpeed)) } } //---------------------------------------------------------------------------------------------- public call_vision(id) { if(id == 0) { call_func("call_vision") } else if(UserFlags[id] && is_user_alive(id)) { set_vision(id) } } //---------------------------------------------------------------------------------------------- public call_name(id) { if(id == 0) { call_func("call_name") } else if(ChickenName && UserFlags[id] && !is_user_bot(id)) { set_user_info(id, "name", ChickName[id]) } update_menu() } //---------------------------------------------------------------------------------------------- /* HITZONES DATA */ public forward_traceline(Float:v1[3], Float:v2[3], noMonsters, pentToSkip) { new entity1 = pentToSkip new entity2 = get_tr(TR_pHit) // victim new hitzone = (1<<get_tr(TR_iHitgroup))
if (!is_valid_ent(entity1) || !is_valid_ent(entity2)) { return FMRES_IGNORED } if (entity1 != entity2 && is_user_alive(entity1) && is_user_alive(entity2)) { if(UserFlags[entity2]) { if(hitzone != 64 && hitzone != 128) { set_tr(TR_flFraction,1.0) // KWo 19.11.2005 return FMRES_SUPERCEDE } } return FMRES_IGNORED } return FMRES_IGNORED }
//---------------------------------------------------------------------------------------------- /* VISION DATA */ public set_vision(id) { if(UserFlags[id]) { message_begin(MSG_ONE, gmsgSetFOV, {0,0,0}, id) write_byte(ChickenVision) message_end() engclient_cmd(id, "weapon_knife") entity_set_string(id, EV_SZ_viewmodel, "") entity_set_string(id, EV_SZ_weaponmodel, "") } else { message_begin(MSG_ONE, gmsgSetFOV, {0,0,0}, id) write_byte(90) // default_fov = 90 message_end() } } //---------------------------------------------------------------------------------------------- /* CHICKEN SFX */ public transform(vec[3]) { message_begin(MSG_PVS, SVC_TEMPENTITY, vec) write_byte(11) // TE_TELEPORT write_coord(vec[0]) write_coord(vec[1]) write_coord(vec[2]) message_end() }
[/spoiler]
|