Raised This Month: $ Target: $400
 0% 

Request: Player from same IP - Fade to Back


Post New Thread Reply   
 
Thread Tools Display Modes
Author Message
AllMassive
Senior Member
Join Date: Sep 2004
Location: /dev/urandom
Old 01-28-2006 , 22:38   Request: Player from same IP - Fade to Back
Reply With Quote #1

Hi

A Plugin which automatically detects players with same ip on both teams and fades their screen to black after their death.
I've found a Script like that: set camera spectator for same IP LAN players

I dont know if this script works, because there is no download/script available.
AllMassive is offline
Charming
BANNED
Join Date: Nov 2005
Location: Canada
Old 01-28-2006 , 23:36  
Reply With Quote #2

Yes there is a download since you dont like to scroll down and look here you go.

p.s Next time use ur search, and scroll down. ty + all you do is take this code and compile it in the compiler, www.amxmodx.org ^_~


Code:
/* AMX Mod X script * *PLUGIN CVARS: *------------------ *    amx.cfg> ftb_auto 1 // 0 - OFF, 1 - ON *    If ftb_auto is set to 1, this plugin automatically *    detects potential "ghosters" (by idential IP). * *    amx.cfg> ftb_mode 2 // 0 - OFF, 1 - A & B, 2 - A only *    A. It allows to spectate upon players from group/team *       only. Also first person only (mp_forcechasecam-like) *    B. It fades the screen after death while other *       players from group are alive (mp_fadetoblack-like) * *    amx.cfg> ftb_alpha "alpha" // 0-255 *    amx.cfg> ftb_color "red green blue" // 0-255 0-255 0-255 *    These cvars are for fun only. (It is color by default) * *    client console> setinfo ftb "red green blue" *    Also players may set color of the screen. * *    server console> ftb_debug 1 // 0 - OFF, 1 - ON *    Enable debug mode. *     *    immunity is "M" ..or custom level_A * * COMMANDS: * --------------- *    amx.cfg> ftb_addip "group name" "part of IP:Port/WONID" *    This command adds IP(s)/WONID to the specified group. * * EXAMPLE A: * ---------- *    ftb_auto 1 *    ftb_mode 2 * *    ftb_addip "LAN A"  "192.168.10." * *    ftb_addip "club A" "192.168.20.10:" *    ftb_addip "club A" "192.168.20.11:" *    ftb_addip "club A" "192.168.20.12:" * * EXAMPLE B: * ---------- *    ftb_auto 0 *    ftb_mode 1 * *    ftb_addip "LAN A"  "192.168.10." * *    ftb_addip "club A" "192.168.20.10:" *    ftb_addip "club A" "192.168.20.11:" *    ftb_addip "club A" "192.168.20.12:" * *    ftb_addip "club B" "192.168.30.10:" *    ftb_addip "club C" "192.168.40.10:" *    ftb_addip "club D" "192.168.50.10:" */ #include <amxmodx> #include <amxmisc> #define IMMUNITY_LEVEL ADMIN_LEVEL_A #define ON  1 #define OFF 0 #define MAXREC  32 #define MAXLEN  24 #define DBGLEN  64 #define NAMELEN 32 #define DELTA_DELAY 0 #define DEATH_DELAY 3 new vers[] = "1.7.0" new logfile[] = "ftb.log" new gmsgFade new plugin_mode = 1 new debug = 0 new ip_num = 0 new ip_table[MAXREC][MAXLEN] new ip_alias[MAXREC][MAXLEN] new ips[33][MAXLEN] new state[33] new smode[33] new dtime[33] new bool:joinmenu[33] new bool:immunity[33] new bool:forceftb[33] new direction[33] new color[33][3], fadealpha new amxftb_prminfo[] = "<immunity/auto> <authid, nick or #userid>" public debug_info(id, msg[]) {   if(debug) {     if (id) {       log_to_file(logfile, "#%02u %s", id, msg)      } else {       log_to_file(logfile, "--- %s", msg)      }     client_print(id, print_console, "[FTB] %s", msg)   } } public screenfade_event(id) {     debug_info(id, "Event:  ScreenFade")     if (state[id] == 3) {       new tmp[2]; tmp[0] = id       screen_fade(tmp)     }     return PLUGIN_HANDLED } public screen_fade(index[]) {     new id = index[0], ftime = 4096, fhold = 1024, flags = 0     switch (state[id]) {     case 1: {         state[id] = 2         set_task(1.0, "screen_fade", 0, index, 2)         flags = 1     }     case 2, 3: {         state[id] = 3         ftime = 1         fhold = 1         flags = 4     }     case 4: {         state[id] = 0         flags = 2     }     }     if (flags && !is_user_alive(id)) {     debug_info(id, "Plugin: ScreenFade")     message_begin(MSG_ONE, gmsgFade, {0,0,0}, id)     write_short(ftime)     write_short(fhold)     write_short(flags)     write_byte(color[id][0])     write_byte(color[id][1])     write_byte(color[id][2])     write_byte(fadealpha)     message_end()     } } public fade_to_black(id, value, delay) {     debug_info(id, (value == ON) ? "fadetoblack on" : "fadetoblack off")     if ( ( (state[id] == 0 && value ==  ON) && !immunity[id]) ||        (state[id] == 3 && value == OFF) ) {     new tmp[2]; tmp[0] = id     state[id]++     set_task(delay + 0.1, "screen_fade", 0, tmp, 2)     } else if (value == OFF) {     state[id] = 0     }     return PLUGIN_CONTINUE } public set_specmode(index[]) {     new id = index[0]     if (!immunity[id]) {     switch (plugin_mode) {         case 1:         if (state[id] > 2) {                 dtime[id] = 1             client_cmd(id, "spec_mode 4;spec_menu 1;follownext 1")         } else if (state[id] > 0) {             set_task(1.0, "set_specmode", 0, index, 2)         }         case 2:             if (smode[id]) {                 dtime[id] = 1             client_cmd(id, "spec_mode 4;spec_menu 1;follownext 1")         }     }     } } public check(id, exec_cmd, delay) {     if (plugin_mode == 0 || get_cvar_num("mp_fadetoblack"))     return PLUGIN_CONTINUE     new pnum, target, t = 0, ct = 0, others = 0     new players[32]     new sameip_cnt = 0     new sameip_ids[32]     new usrip[MAXLEN]     usrip = ips[id]     get_players(players, pnum);     for(new i = 0; i < pnum; i++) {     target = players[i]     if (id != target) {         if (equal(usrip, ips[target])) {         sameip_ids[sameip_cnt++] = target         if (is_user_alive(target)) {             switch (get_user_team(target)) {             case 1: t++             case 2: ct++             }         }         } else if (is_user_alive(target)) {         others++         }     }     }     if (sameip_cnt) {     new tmp[2]; tmp[0] = id     new flag     if (plugin_mode == 1) {         flag = (t == 0 && ct == 0) || others == 0         if (flag) {         for(new i = 0; i < sameip_cnt; i++)             fade_to_black(sameip_ids[i], OFF, DELTA_DELAY)         }         if (exec_cmd) {         fade_to_black(id, flag ? OFF : ON, flag ? DELTA_DELAY : delay)         }     }     if (ct == 0) {         flag = (t == 0) ? 0 : 2     } else {         flag = (t == 0) ? 3 : 1     }     smode[id] = flag = others ? flag : 0     for(new i = 0; i < sameip_cnt; i++) {         smode[sameip_ids[i]] = flag     }         if (exec_cmd && flag) {             set_task(DEATH_DELAY + 0.1, "set_specmode", 0, tmp, 2)     }     }     return PLUGIN_CONTINUE } public update_colors(id) {     new setinfo[16]     get_user_info(id, "ftb", setinfo, 15)     if (!equal(setinfo, "")) {     new r[4], g[4], b[4]     parse(setinfo, r, 3, g, 3, b, 3)     color[id][0] = str_to_num(r) % 256     color[id][1] = str_to_num(g) % 256     color[id][2] = str_to_num(b) % 256     } else {     color[id][0] = color[0][0]     color[id][1] = color[0][1]     color[id][2] = color[0][2]     } } public client_connect(id) {     debug_info(id, "client_connect")     return PLUGIN_CONTINUE } public client_putinserver(id) {     debug_info(id, "client_putinserver")     new user_immunity = get_user_flags(id) & IMMUNITY_LEVEL     new alias[MAXLEN]     new usrip[MAXLEN]     new wonid[MAXLEN]     new a = get_cvar_num("ftb_auto")     get_user_ip(id, alias, MAXLEN-1, a)     get_user_ip(id, usrip, MAXLEN-1, 0)     get_user_authid(id, wonid, MAXLEN-1)     for(new i = 0; i < ip_num; i++) {     if (contain(usrip, ip_table[i]) != -1 || equal(wonid, ip_table[i])) {         alias = ip_alias[i]         break     }     }     ips[id] = alias     joinmenu[id] = true     immunity[id] = (user_immunity || is_user_bot(id)) ? true : false     forceftb[id] = false     direction[id] = 0     update_colors(id)     return PLUGIN_CONTINUE } public reset(id) {     debug_info(id, "ResetHUD")     state[id] = 0     smode[id] = 0     dtime[id] = 0     return PLUGIN_CONTINUE } public death() {     new id = read_data(2)     debug_info(id, "DeathMsg")     update_colors(id)     check(id, ON, DEATH_DELAY)     return PLUGIN_CONTINUE } public client_disconnect(id) {     debug_info(id, "client_disconnect")     check(id, OFF, DELTA_DELAY)     state[id] = 0     smode[id] = 0     dtime[id] = 0     return PLUGIN_CONTINUE } public status(id) {     new target = read_data(2)     if (plugin_mode && dtime[id] && target) {     new flag = 1     switch (smode[id]) {         case 0: flag = 1         case 1: flag = equal(ips[id], ips[target])         case 2: flag = get_user_team(target) == 1         case 3: flag = get_user_team(target) == 2     }     switch (plugin_mode) {         case 1, 2: if (!flag) client_cmd(id, "follownext %i", direction[id])     }     }     return PLUGIN_CONTINUE } public chooseteam(id) {     debug_info(id, "ClientCmd: chooseteam")     joinmenu[id] = true     return PLUGIN_CONTINUE } public allow_spec(id) {     if (joinmenu[id] && !is_user_alive(id)) {     new arg[16], value     read_argv(1, arg, 15)     value = str_to_num(arg)     debug_info(id, "ClientCmd: jointeam")     switch (value) {         case 1, 2, 5: check(id, ON, DEATH_DELAY)         case 6:         {         new pnum, count = 0         new players[32]         get_players(players, pnum);         for(new i = 0; i < pnum; i++) {             if (equal(ips[id], ips[players[i]])) {             count++             if (count > 1) break             }           }         if (count > 1 && !immunity[id]) {             client_cmd(id, "chooseteam")             client_print(id, print_chat, "[FTB] Spectator has been disabled!")             return PLUGIN_HANDLED         }         }     }     }     joinmenu[id] = false     return PLUGIN_CONTINUE } public spec_menu(id) {     new arg[16]     read_argv(1, arg, 15)     if (smode[id] && dtime[id] && !equal(arg, "4"))     return PLUGIN_HANDLED     return PLUGIN_CONTINUE } public spec_mode(id) {     if (smode[id] && dtime[id])     client_cmd(id, "spec_mode 4")     return PLUGIN_CONTINUE } public follownext(id) {     new arg[16]     read_argv(1, arg, 15)     direction[id] = str_to_num(arg)     return PLUGIN_CONTINUE } public round_time(id) {     new Float:rtime = get_cvar_float("mp_roundtime") * 60.0     debug = get_cvar_num("ftb_debug")     if (rtime == read_data(1)) {     new setinfo[16], r[4], g[4], b[4]     get_cvar_string("ftb_color", setinfo, 15)     parse(setinfo, r, 3, g, 3, b, 3)     color[0][0] = str_to_num(r) % 256     color[0][1] = str_to_num(g) % 256     color[0][2] = str_to_num(b) % 256     fadealpha   = get_cvar_num("ftb_alpha") % 256     plugin_mode = get_cvar_num("ftb_mode")     if (debug) {       new pnum, players[32]       new dbg[DBGLEN], name[NAMELEN]       debug_info(0, "------------------------------------------------------------")       format(dbg, DBGLEN-1, "Round Begin (plugin version: %s, mode: %u, alpha: %u)",             vers, plugin_mode, fadealpha)       debug_info(0, dbg)       get_players(players, pnum);       for(new i = 0; i < pnum; i++) {         get_user_name(players[i], name, NAMELEN-1)         format(dbg, DBGLEN-1, "Player: %s, Alias: %s", name, ips[players[i]])         debug_info(players[i], dbg)       }     }     }     return PLUGIN_CONTINUE } public end_round(id) {     new players[32], pnum     debug_info(0, "Round End")     get_players(players, pnum, "bc")     for(new i = 0; i < pnum; i++) {     dtime[id] = 0     smode[id] = 0     fade_to_black(players[i], OFF, DELTA_DELAY)     }     return PLUGIN_CONTINUE } public ftb_addip() {     if (read_argc() != 3) {     server_print("Usage: ftb_addip <alias> <IP/WONID>")     return PLUGIN_HANDLED     } else if (ip_num >= MAXREC) {     server_print("[FTB] The internal data structure is full.")     return PLUGIN_HANDLED     } else {     new usrip[MAXLEN], alias[MAXLEN]     read_argv(1, alias, MAXLEN-1)     read_argv(2, usrip, MAXLEN-1)     for(new i = 0; i < ip_num; i++) {         if (equal(usrip, ip_table[i])) {         server_print("[FTB] The IP/WONID %s is already existed.", usrip)         return PLUGIN_HANDLED         }     }     ip_table[ip_num] = usrip     ip_alias[ip_num] = alias     ip_num++     server_print("[FTB] The IP/WONID %s (%s) has been added!", usrip, alias)     }     return PLUGIN_CONTINUE } public amx_ftb(id, level, cid) {     if(!cmd_access(id, level, cid, 2)) return PLUGIN_HANDLED     new target     new arg1[NAMELEN], arg2[NAMELEN]     new name[NAMELEN], target_name[NAMELEN]     read_argv(1, arg1, NAMELEN-1)     read_argv(2, arg2, NAMELEN-1)     target = cmd_target(id, arg2, 5)     if(!target) return PLUGIN_HANDLED     if (equal(arg1, "immunity")) {       debug_info(target, "amx_ftb: Immunity on")       immunity[target] = true       forceftb[target] = false       if (!is_user_alive(target))         fade_to_black(target, OFF, DELTA_DELAY)     } else if (equal(arg1, "force")) {       debug_info(target, "amx_ftb: ForceFTB on")       immunity[target] = false       forceftb[target] = true       if (!is_user_alive(target))         fade_to_black(target, ON,  DELTA_DELAY)     } else if (equal(arg1, "auto")) {       debug_info(target, "amx_ftb: Default mode")       immunity[target] = false       forceftb[target] = false     } else {       console_print(id, "Usage: amx_ftb %s", amxftb_prminfo)       return PLUGIN_HANDLED     }     get_user_name(id, name, NAMELEN-1)     get_user_name(target, target_name, NAMELEN-1)     switch(get_cvar_num("amx_show_activity")) {       case 1: client_print(0, 3, "ADMIN: ftb'ed %s", target_name)       case 2: client_print(0, 3, "ADMIN %s: ftb'ed %s", name, target_name)     }     console_print(id, "Client ^"%s^" ftb'ed", target_name)     return PLUGIN_HANDLED } public plugin_init() {     gmsgFade = get_user_msgid("ScreenFade")     register_plugin("Auto-FTB", vers, "beast")     register_concmd("amx_ftb", "amx_ftb", ADMIN_KICK, amxftb_prminfo)     register_srvcmd("ftb_addip", "ftb_addip")     register_clcmd("chooseteam", "chooseteam")     register_clcmd("menuselect", "allow_spec")     register_clcmd("jointeam",   "allow_spec")     register_clcmd("follownext", "follownext")     register_clcmd("specmode", "spec_menu")     register_event("StatusValue", "status", "bd", "1=2")     register_event("RoundTime", "round_time", "bc")     register_event("TextMsg", "spec_mode", "bd", "2&Spec_Mode")     register_event("ResetHUD", "reset", "b")     register_event("DeathMsg", "death", "a")     register_event("SendAudio", "end_round","a", "2=%!MRAD_terwin", "2=%!MRAD_ctwin")     register_event("ScreenFade", "screenfade_event", "b")     register_cvar("autoftb_version", vers, FCVAR_SERVER)     register_cvar("amx_show_activity","2")     register_cvar("ftb_auto", "1")     register_cvar("ftb_mode", "1")     register_cvar("ftb_color", "0 0 0")     register_cvar("ftb_alpha", "255")     register_cvar("ftb_debug", "0")     return PLUGIN_CONTINUE }
Charming is offline
Send a message via ICQ to Charming Send a message via AIM to Charming Send a message via MSN to Charming Send a message via Yahoo to Charming
Old 12-25-2010, 08:40
C63
This message has been deleted by Exolent[jNr]. Reason: Delete.
AllMassive
Senior Member
Join Date: Sep 2004
Location: /dev/urandom
Old 01-29-2006 , 07:21  
Reply With Quote #4

Hmhm

Yesterday night those downloads were not available - strange.

Code:
OMMANDS: * --------------- *    amx.cfg> ftb_addip "group name" "part of IP:Port/WONID" *    This command adds IP(s)/WONID to the specified group.

So this does work with steam-id's ?
AllMassive is offline
Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -4. The time now is 07:24.


Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Theme made by Freecode