AlliedModders

AlliedModders (https://forums.alliedmods.net/index.php)
-   Scripting Help (https://forums.alliedmods.net/forumdisplay.php?f=11)
-   -   Hide N seek error (https://forums.alliedmods.net/showthread.php?t=64509)

ajzk 12-17-2007 14:24

Hide N seek error
 
When I try to comple this...
PHP Code:

/*
 *  Comments: 
 *      Hide N Seek has a Tournament and Public mode.
 *
 *            --Public Mode--
 *            When activated, it begins rounds of Hide N Seek, when round begins, CTs will be blinded 
 *            and a counter will appear, counting down.  When timer is up, CTs (Seekers) , must find and kill hiders,
 *            they will have 3.5 minutes to kill Terrorists (Hiders).  CT's begin with a knife and nightvision.
 *            Terrorists begin with 2 flashbangs, 1 smoke, and Armor. 2 Types of Public mode available.
 *            pub_type 1 - 3 rounds per side, then it swaps teams.
 *            pub_type 2 - Teams swap sides when CT's (Seekers) win.
 *
 *            -Tournament mode--
 *            It requires teams to be named by Captain or Clan Tag.  Then match can begin with
 *            amx_begin.  First round is a Knife Only Round, winner will be Hiders first.  After that, results in a 
 *            best of 6 rounds.  If teams tie, it will continue into overtime, until one team wins.  
 *            Then match will end, and server will go back to normal.  
 *    
 *     Commands: 
 *        amx_pub        - Begins public version of Hide_N_Seek, playing default pub_type 2.        
 *        amx_team    - amx_team <1|2> <"Team Name"> - Defines team 1 and team 2, with a team name, or captain.
 *        amx_begin    - Begins Tournament version of Hide_N_Seek, requires team 1 and team 2 to be named.
 *
 *    CVARs:
 *        hide_n_seek            - Defines which type of mode is being played (Do not change, use commands.)
 *        pub_type            - 1 = 3 rounds per side.   2 = Teams swap sides when CTs (Seekers) win.
 *        hide_n_seek_timer   - Time Terrorists (Hiders) have to hide, must be less than 15.
 *
 *  Version :     1.0
 *    Requires:    AMXX 1.01 or 1.5
 *
 *    Author:        OneEyed
 *    Date:        08-21-2005
 *    Email:        [email protected]
 *    IRC:        #zT (gamesurge.net) 
 *
 *     Tested :
 *    Hide N Seek plugin was tested on a win32/linux machine.
 *   
 */
#include <amxmodx>
#include <amxmisc>
#include <engine>
#include <fakemeta>
#include <fun>
#include <cstrike>

#define MESSAGE_DELAY 4
#define ARMORTYPE_OFFSET 112
#define TEAM_ONE 1
#define TEAM_TWO 2

new weap[34][] = {
  
"usp""glock""deagle""p228""elites""fn57""m3""xm1014""mp5""tmp""p90""mac10""ump45",
  
"ak47""galil""famas""sg552""m4a1""aug""scout""awp""g3sg1""sg550""m249""vest""vesthelm",
  
"flash""hegren""sgren""defuser""nvgs""shield""primammo""secammo" 
}
new 
weap2[34][] = {
      
"km45""9x19mm""nighthawk""228compact""elites""fiveseven""12gauge""autoshotgun""smg""mp",
      
"c90""mac10""ump45""cv47""defender""clarion""krieg552""m4a1""bullpup""scout""magnum",
      
"d3au1""krieg550""m249""vest""vesthelm""flash""hegren""sgren""defuser""nvgs""shield",
      
"primammo""secammo"
}

new 
one[] = "Objective: Hide and avoid CT / (Seekers) until round ends."
new two[] = "Objective: Find and kill Terrorists / (Hiders) before round ends."

new countername[16][] = {"zero","one","two","three","four","five","six","seven","eight","nine","ten"}

new 
round = -1maxplayerstimerneeded 6overtime
new Float:msgdelay[33], g_message[256]
new 
team1n[33], team2n[33]
new 
gmsgScreenFadefakeEntscoreBscore[3], randed[64]

//------------------------------------------------------------------------------------------------------------
public plugin_init() {
    
register_plugin("Hide n Seek""1.0""OneEyed")
    
    if(!
cvar_exists("hide_n_seek"))
        
register_cvar("hide_n_seek","0")
    if(!
cvar_exists("pub_type"))
        
register_cvar("pub_type","2")
    if(!
cvar_exists("hide_n_seek_timer"))
        
register_cvar("hide_n_seek_timer","10")    
        
    
register_concmd("amx_begin""startSeek",     ADMIN_SLAY,    "Starts Hide n Seek for Tournament")
    
register_concmd("amx_pub",     "startPubSeek"ADMIN_SLAY,    "Starts Hide n Seek for Pub")
    
register_concmd("amx_team",  "setTeamName",     ADMIN_SLAY,    "<team # 1|2> <^"name^"> - Sets specific team name.")
    
    
register_logevent("StartRound",2,"0=World triggered""1=Round_Start")
    
register_logevent("EndRound"  ,2,"0=World triggered""1=Round_Draw""1=Round_End")
    
    
register_event("CurWeapon""Switched""be")
    
register_event"ResetHUD""resetHud""be" )
    
    
round 1
    timer 
get_cvar_num("hide_n_seek_timer")
    
overtime 3
    gmsgScreenFade 
get_user_msgid("ScreenFade")
    
maxplayers get_maxplayers()
    
    
//FakeEnt Thinking, (handles better with engine)
    
fakeEnt create_entity("info_target")
    
entity_set_string(fakeEnt,EV_SZ_classname,"serverFrame")
    
register_think("serverFrame","server_fakeFrame")
    
    
//Scoreboard thinking
    
scoreB create_entity("info_target")
    
entity_set_string(scoreB,EV_SZ_classname,"scoreBoard")
    
register_think("scoreBoard","displayScoreBoard")
}
//------------------------------------------------------------------------------------------------------------
public plugin_modules(){
    
require_module("engine")
    
require_module("fakemeta")
    
require_module("fun")
    
require_module("cstrike")
}
//------------------------------------------------------------------------------------------------------------
//Extreme hack to make sure no one has weapons they arent suppose to!
public Switched(id) {
    if(
get_cvar_num("hide_n_seek") > 0) {
        new 
weaponclipammo
        weapon 
get_user_weapon(id,clip,ammo)
        if(
weapon != CSW_KNIFE && weapon != CSW_FLASHBANG && weapon != CSW_SMOKEGRENADE)
        {
            if(
get_cvar_num("hide_n_seek") == 1) {
                if(
round == 0) { // Knife Round Stuff
                    
if(is_user_alive(id))
                        
set_task(1.0,"stripAndGiveKnife",id,"",_,"a",0)
                }
                if(
round == 1) {    // Begin Round 1 stuff
                    
if(get_user_team(id) == 1)
                        
set_task(1.0,"HiderItems",id,"",_,"a",0)
                    if(
get_user_team(id) == 2)
                        
set_task(1.0,"SeekerItems",id,"",_,"a",0)
                }
            }
            if(
get_cvar_num("hide_n_seek") == 2) {
                if(
round >= 1) {    // Begin Round 1 stuff
                    
if(get_user_team(id) == 1)
                        
set_task(1.0,"HiderItems",id,"",_,"a",0)
                    if(
get_user_team(id) == 2)
                        
set_task(1.0,"SeekerItems",id,"",_,"a",0)
                }
            }
            return 
PLUGIN_HANDLED    
        
}
    }
    return 
PLUGIN_CONTINUE
}
//------------------------------------------------------------------------------------------------------------
public resetHud(id) {
    if(
is_user_alive(id) && get_cvar_num("hide_n_seek") > 0) {
        
cs_set_user_money(id0)
        new 
args[1]
        
args[0] = id
        set_task
(5.0,"modelCheck",1234,args,1,"a",0)
    }
}
//------------------------------------------------------------------------------------------------------------
public modelCheck(args[]) {
    new 
id args[0]
    if(!
is_user_alive(id)) return PLUGIN_HANDLED
    
new mod[32]
    
cs_get_user_model(id,mod,31)
    if(
get_user_team(id) == 1) {
        if(
equali("urban",mod) || equali("gsg9",mod) || equali("sas",mod) || equali("gign",mod)) {
            switch(
random_num(0,3)) {
                case 
0cs_set_user_model(id"terror")
                case 
1cs_set_user_model(id"leet")
                case 
2cs_set_user_model(id"arctic")
                case 
3cs_set_user_model(id"guerilla")
            }
        }
    }
    else if(
get_user_team(id) == 2) {
        if(
equali("terror",mod) || equali("leet",mod) || equali("arctic",mod) || equali("guerilla",mod)) {
            switch(
random_num(0,3)) {
                case 
0cs_set_user_model(id"urban")
                case 
1cs_set_user_model(id"gsg9")
                case 
2cs_set_user_model(id"sas")
                case 
3cs_set_user_model(id"gign")
            }
        }
    }
    return 
PLUGIN_HANDLED    
}
//------------------------------------------------------------------------------------------------------------    
public setTeamName(id,level,cid) {
    if (!
cmd_access(id,level,cid,2))
        return 
PLUGIN_HANDLED
    
new teamnum[2], teamnumm
    read_argv
(1,teamnum,1)
    if(!
isdigit(teamnum[0])) {
        
client_print(id,print_chat,"[HideNSeek] Team # is not valid.")
        return 
PLUGIN_HANDLED
    
}
    
teamnumm str_to_num(teamnum)
    switch(
teamnumm) {
        case 
1:    {
            
read_argv(2,team1n,32)
            
client_print(0,print_chat,"Team 1 is named %s",team2n)
        }
        case 
2:    {
            
read_argv(2,team2n,32)
            
client_print(0,print_chat,"Team 2 is named %s",team1n)    
        }
    }
    return 
PLUGIN_HANDLED
}
//------------------------------------------------------------------------------------------------------------
public startPubSeek(id,level,cid) {
    if (!
cmd_access(id,level,cid,0))
        return 
PLUGIN_HANDLED
    server_cmd
("sv_restart 1")
    
server_cmd("sv_gravity 800")
    
server_cmd("mp_freezetime 0")
    
server_cmd("mp_roundtime 3.5")
    
set_cvar_num("hide_n_seek",2)
    
round 1
    timer 
get_cvar_num("hide_n_seek_timer")
    
overtime 3
    
return PLUGIN_HANDLED
}
//------------------------------------------------------------------------------------------------------------
public startSeek(id,level,cid) {
    if (!
cmd_access(id,level,cid,0))
        return 
PLUGIN_HANDLED
    
if (!team1n[0] || !team2n[0]) {
        
client_print(id,print_chat,"[HideNSeek] Cannot start until both teams are named. ^n[HideNSeek] amx_team <#> <^"clan tag^"> - To specify team name")
        return 
PLUGIN_HANDLED
    
}
    
server_cmd("sv_restart 1")
    
server_cmd("sv_gravity 800")
    
server_cmd("mp_freezetime 0")
    
server_cmd("mp_roundtime 3.5")
    
set_cvar_num("hide_n_seek",1)
    
round 0
    timer 
get_cvar_num("hide_n_seek_timer")
    
overtime 0
    needed 
6
    score
[1] = 0
    score
[2] = 0
    
return PLUGIN_HANDLED
}
//------------------------------------------------------------------------------------------------------------
public server_fakeFrame(entid){
    if(
get_cvar_num("hide_n_seek") >= && round >= 1) {
        if(
timer 0) {
            
set_hudmessage(25500, -1.00.6001.01.00.20.14)
            
show_hudmessage(0,"[Hiders] have %i seconds to hide...",timer)
            
client_cmd(0,"spk vox/%s.wav",countername[timer])
            for(new 
b=1;b<=maxplayers;b++)
                if(
get_user_team(b) == && is_user_alive(b)) {
                    
doFlash(b15)
                    
entity_set_float(b,EV_FL_maxspeed,-200.0)
                }
        }
        if(
timer == 0) {
            for(new 
b=1;b<=maxplayers;b++) {
                if(
get_user_team(b) == && is_user_alive(b)) {
                    
doFlash(b0)
                    
entity_set_float(b,EV_FL_maxspeed,250.0)
                }
            }
            
set_hudmessage(25500, -1.00.6001.06.00.20.14)
            
show_hudmessage(0,"TIME IS UP,RUN BITCH RUN!",timer)
            return 
PLUGIN_HANDLED
        
}
        if(
timer 0) {
            for(new 
b=1;b<=maxplayers;b++)
                if(
get_user_team(b) == && is_user_alive(b)) {
                    
doFlash(b0)
                    
entity_set_float(b,EV_FL_maxspeed,250.0)
                }
            return 
PLUGIN_HANDLED
        
}
        
timer--
        
entity_set_float(entid,EV_FL_nextthink,halflife_time() + 1.0)
    }
    return 
PLUGIN_HANDLED
}
//------------------------------------------------------------------------------------------------------------
public displayScoreBoard(entid) {
    if(
get_cvar_num("hide_n_seek") == && round == 0) {
        new 
board[256]
        
format(board,255,"Team %s    vs.    Team %s ",team1n,team2n)
        
set_hudmessage(02550, -1.00.000.251.00.10.13)
        
show_hudmessage(0,"^n%s",board)    
    }
    if(
get_cvar_num("hide_n_seek") == && round == 1) {
        new 
board[256]
        
format(board,255,"%s score: %i   |   %s score: %i",team1n,score[1],team2n,score[2])
        for(new 
x=1;x<=maxplayers;x++)
            if(
is_user_connected(x))
                if(
get_user_team(x) == && is_user_connected(x)) {
                    
set_hudmessage(02550, -1.00.000.251.00.10.13)
                    
show_hudmessage(x,"%s^n%s^nBest of %i wins",one,board,needed)
                }
                else if(
get_user_team(x) == && is_user_connected(x)) {
                    
set_hudmessage(02550, -1.00.000.251.00.10.13)
                    
show_hudmessage(x,"%s^n%s^nBest of %i wins",two,board,needed)
                }
                else {
                    
set_hudmessage(02550, -1.00.000.251.00.10.13)
                    
show_hudmessage(x,"^n%s^nBest of %i wins",board,needed)
                }
    }
    if(
get_cvar_num("hide_n_seek") == && round >= 1) {
        for(new 
x=1;x<=maxplayers;x++)
            if(
is_user_connected(x))
                if(
get_user_team(x) == && is_user_connected(x)) {
                    
set_hudmessage(02550, -1.00.000.251.00.10.13)
                    
show_hudmessage(x,"%s",one)
                }
                else if(
get_user_team(x) == && is_user_connected(x)) {
                    
set_hudmessage(02550, -1.00.000.251.00.10.13)
                    
show_hudmessage(x,"%s",two)
                }
    }
    
entity_set_float(entid,EV_FL_nextthink,halflife_time() + 0.25)
    return 
PLUGIN_HANDLED
}
//------------------------------------------------------------------------------------------------------------
public EndRound() {
    
//Check to make sure theres a person in both teams
    
new tc
    
for(new x=1;x<=maxplayers;x++) {
        if(!
is_user_connected(x)) continue
        if(
get_user_team(x) == 1
            
1
        
if(get_user_team(x) == 2
            
1
    
}
    if(
== && == 1) {
        if(
get_cvar_num("hide_n_seek") == 1) {
            
timer = -1
            
new choose_win
            format
(g_message,255,"")
            if(
round == 0) {
                
format(randed,63,"")
                
choose_win getRoundWinner()//(teamn)
                
                //Do this down here, (Because of randoming)
                
switch(choose_win) {
                    case 
1format(g_message,255,"%s^n%s won, they will become [Hiders] first.",randed,team1n)
                    case 
2format(g_message,255,"%s^n%s won, they will become [Hiders] first.",randed,team2n)
                }
                
                new 
bool:check check_team(choose_win)
                if(!
checkswap()
                
round 1
            
}
            else if(
round == 1) {
                
choose_win getRoundWinner()//(teamn)
                
switch(choose_win) {
                    case 
1:    score[TEAM_ONE]++
                    case 
2score[TEAM_TWO]++
                }
                new 
total score[1] + score[2]
                if(
total == 3) {
                    
format(g_message,255,"3 rounds over, switching teams.")
                    
swap()
                }
                if(
total 3) {
                    new 
winner
                    
new Float:teamonepct float(score[1]) / float(needed)
                    new 
Float:teamtwopct float(score[2]) / float(needed)
                
                    
//Total of Scores reached needed amount, check for win/tie 
                    
if ( total >= needed || teamonepct 0.5 || teamtwopct 0.5 )
                        
winner = ( score[1] > score[2] ) ? 2
                    
if(total == needed && score[1] == score[2]) {
                        
winner 3
                        overtime
++
                        if(
needed == 6)
                            
needed += 4
                        
else if(needed >= 10)
                            
needed += 2
                    
}
                    new 
roundsneeded = (overtime == 1) ? 1
                    
if(winner != 0) {
                        switch(
winner) {
                            case 
1format(g_message,255,"Team %s WINS, CONGRATULATIONS",team1n)
                            case 
2format(g_message,255,"Team %s WINS, CONGRATULATIONS",team2n)
                            case 
3format(g_message,255,"We have a TIE, moving into OVERTIME %i.^nGoing %i more rounds per side.",overtime,roundsneeded
                        }
                    }
                    if(
total == (needed-roundsneeded) && needed 6) {
                        
format(g_message,255,"%i rounds of overtime completed.^n%i more needed, Switching Teams....",roundsneeded,roundsneeded)
                        
swap()
                    }
                    if(
winner == || winner == 2)
                        
set_cvar_num("hide_n_seek",0)
                }
            }
            
set_task(0.5,"displayHud",12345,"",_,"a",6
        }
        if(
get_cvar_num("hide_n_seek") == 2) {
            
timer = -1
            
            format
(randed,63,"")
            
            new 
terr
            
for(new x=1;x<=maxplayers;x++) {
                if(
is_user_alive(x) && get_user_team(x) == 1)
                    
terr 1
            
}
            
            if(
terr)
                
format(randed,32,"Terrorists Win")
            else {
                if(
get_cvar_num("pub_type") == 2) {
                    
swap()
                    
format(randed,32,"CTs Win^nSwitching Teams...")
                }
                else
                    
format(randed,32,"CTs Win")
            }
    
                
            if(
round == overtime && get_cvar_num("pub_type") == 1) {
                
overtime += 3
                format
(g_message,255,"%s^nRound %i Completed^n3 rounds completed, switching teams.",randed,round)
                
swap()
            }
            else 
                
format(g_message,255,"%s^nROUND %i Completed",randed,round)
                
            
round++
            
//client_print(0,print_chat,"%s
            
set_task(0.5,"displayHud",12345,"",_,"a",6
        }
    }
}
//------------------------------------------------------------------------------------------------------------
public displayHud() {
    
set_hudmessage(25500, -1.00.5001.05.00.10.14)
    
show_hudmessage(0,"%s",g_message)
}
//------------------------------------------------------------------------------------------------------------
public bool:check_team(c_win) {
    new 
tt[33]
    switch(
c_win) {
        case 
1copy(tt,32,team1n)
        case 
2copy(tt,32,team2n)
    }
    for(new 
1<= maxplayersi++) {
        if(
is_user_connected(i) && get_user_team(i) == 1) {
            new 
pn[32]
            
get_user_name(i,pn,31)
            if(
containi(pn,tt) > -1) {
                return 
true
            
}
        }
    }
    return 
false
}
//------------------------------------------------------------------------------------------------------------
public getRoundWinner() {
    
//Some serious wierd bugs trying to find winner of round
    //So used this hax0r version
    
new terr
    
for(new x=1;x<=maxplayers;x++)
        if(
is_user_alive(x) && get_user_team(x) == 1)
            
terr 1

    
if(terr) {
        
client_print(0,print_chat,"Terrorists win")
        for(new 
1<= maxplayersi++)
            if(
is_user_connected(i) && get_user_team(i) == 1) {
                new 
pn[32]
                
get_user_name(i,pn,31)
                if(
containi(pn,team1n) > -1)
                    return 
1
                
else if(containi(pn,team2n) > -1)
                    return 
2
            
}
    }
    else {
        
client_print(0,print_chat,"CT win")
        for(new 
1<= maxplayersi++)
            if(
is_user_connected(i) && get_user_team(i) == 2) {
                new 
pn[32]
                
get_user_name(i,pn,31)
                if(
containi(pn,team1n) > -1)
                    return 
1
                
else if(containi(pn,team2n) > -1)
                    return 
2
            
}
    }
    return 
0
}
//------------------------------------------------------------------------------------------------------------
public StartRound() {
    new 
tc
    
for(new x=1;x<=maxplayers;x++) {
        if(!
is_user_connected(x)) continue
        if(
get_user_team(x) == 11
        
if(get_user_team(x) == 21
    
}
    
//Give team weapons on start round, and begin rounds
    
if(== && == 1) { 
        if(
get_cvar_num("hide_n_seek") == 1) {
            if(
round == 0) { // Knife Round Stuff
                    
format(g_message,255,"Knife Round^nWinning Team will become [Hiders] first.")
                    for(new 
a=1;a<=maxplayers;a++) {
                        if(
is_user_alive(a))
                            
set_task(1.5,"stripAndGiveKnife",a
                    }
                    
set_hudmessage(25500, -1.00.501.07.00.10.14)
                    
show_hudmessage(0,"%s",g_message)
                    
entity_set_float(scoreB,EV_FL_nextthink,halflife_time() + 0.01)
            }
            if(
round == 1) {    // Begin Round 1 stuff
                
timer get_cvar_num("hide_n_seek_timer")
                
entity_set_float(fakeEnt,EV_FL_nextthink,halflife_time() + 0.01)
                for(new 
a=1;a<=maxplayers;a++) {
                    if(
get_user_team(a) == && is_user_alive(a))
                        
set_task(1.5,"HiderItems",a
                    if(
get_user_team(a) == && is_user_alive(a))
                        
set_task(1.5,"SeekerItems",a)
                }
            }
        }
        if(
get_cvar_num("hide_n_seek") == 2) {
            if(
round >= 1) {    // Begin Round 1 stuff
                
timer get_cvar_num("hide_n_seek_timer")
                
entity_set_float(fakeEnt,EV_FL_nextthink,halflife_time() + 0.01)
                for(new 
a=1;a<=maxplayers;a++) {
                    if(
get_user_team(a) == && is_user_alive(a))
                        
set_task(1.5,"HiderItems",a
                    if(
get_user_team(a) == && is_user_alive(a))
                        
set_task(1.5,"SeekerItems",a)
                }
            }
        }
    }
}
//------------------------------------------------------------------------------------------------------------
//Make sure people don't cheat
public client_command(id) {
    if(!
get_cvar_num("hide_n_seek")) return PLUGIN_CONTINUE
    
new arg[13]
    
read_argv0arg 12 )
    for(new 
a=1;a<34;a++)
        if ( 
equalweap] , arg  ) ||  equalweap2] , arg  ) || equal("buy",arg) || equal("autobuy",arg)) {
            if ((
get_gametime() - msgdelay[id]) > MESSAGE_DELAY) {
                
client_print(id,print_chat,"You cannot buy, when -Hide N Seek- is activated.^n")
                
msgdelay[id] = get_gametime()
            }
            return 
PLUGIN_HANDLED
        
}
    if( 
equal("chooseteam",arg) && get_cvar_num("hide_n_seek") == && (get_user_team(id) == || get_user_team(id) == 2) ) {
        if ((
get_gametime() - msgdelay[id]) > MESSAGE_DELAY) {
            
client_print(id,print_chat,"You cannot change teams, when -Hide N Seek- is activated.^n")
            
msgdelay[id] = get_gametime()
        }
        return 
PLUGIN_HANDLED
    
}
    return 
PLUGIN_CONTINUE
}
//------------------------------------------------------------------------------------------------------------
//Make sure people don't kill themselves
public client_kill(id) {
    if(
get_cvar_num("hide_n_seek") > 0) {
        if ((
get_gametime() - msgdelay[id]) > MESSAGE_DELAY) {
            
client_print(id,print_chat,"You cannot kill yourself, when -Hide N Seek- is activated.^n")
            
msgdelay[id] = get_gametime()
        }
        return 
PLUGIN_HANDLED
    
}
    return 
PLUGIN_CONTINUE
}
//------------------------------------------------------------------------------------------------------------
public stripAndGiveKnife(id) {
    
strip_user_weapons(id)
    
give_item(id"weapon_knife")
}
//------------------------------------------------------------------------------------------------------------
public SeekerItems(id) {
    
strip_user_weapons(id)
    
give_item(id"weapon_knife")
    
cs_set_user_nvg(id)
}
//------------------------------------------------------------------------------------------------------------
public HiderItems(id) {
 
strip_user_weapons(id)
 
give_item(id"weapon_flashbang")
 
cs_set_user_bpammo(idCSW_FLASHBANG3);
 
give_item(id"weapon_smokegrenade")
 
csset_user_armor(id100.02)
 
cs_set_user_nvg(id0)

}
//------------------------------------------------------------------------------------------------------------
public csset_user_armor(idFloat:amounttype) {
    
entity_set_float(id,EV_FL_armorvalueamount)
    
set_pdata_int(id,ARMORTYPE_OFFSET,type)    
}
//------------------------------------------------------------------------------------------------------------
stock doFlash(idamt) {
    
message_begin(MSG_ONE,gmsgScreenFade,{0,0,0},id)
    
write_short1<<amt // fade lasts this long duration
    
write_short1<<amt // fade lasts this long hold time
    
write_short1<<12 // fade type (in / out)
    
write_byte// fade red
    
write_byte// fade green
    
write_byte// fade blue
    
write_byte255 // fade alpha
    
message_end()
}
//------------------------------------------------------------------------------------------------------------
public swap() {
    new 
team[16]
    for(new 
i=1;i<=maxplayers;i++)
        if(
is_user_connected(i)) {
            
get_user_team(i,team,15)
            if(
equal(team,"CT")) {
                
cs_set_user_team(iCS_TEAM_T)
                
select_model(i,1)
            }
            if(
equal(team,"TERRORIST")) {
                
cs_set_user_team(iCS_TEAM_CT)
                
select_model(i,2)
            }
        }
    return 
PLUGIN_CONTINUE
}
//------------------------------------------------------------------------------------------------------------
public select_model(id,team) {
    new 
rand random_num(0,3)
    switch(
team) {
        case 
2: {
            switch(
rand) {
              case 
0cs_set_user_model(id"urban")
              case 
1cs_set_user_model(id"gsg9")
              case 
2cs_set_user_model(id"sas")
              case 
3cs_set_user_model(id"gign")
           }
        }
        case 
1: {
            switch(
rand) {
                case 
0cs_set_user_model(id"terror")
                case 
1cs_set_user_model(id"leet")
                case 
2cs_set_user_model(id"arctic")
                case 
3cs_set_user_model(id"guerilla")
            }
        }
    }
    
client_cmd(id,"wait; wait; slot10")
    return 
PLUGIN_CONTINUE
}
//------------------------------------------------------------------------------------------------------------ 

I get this problems????

PHP Code:

/home/groups/amxmodx/tmp3/textqMCh2V.sma(68) : error 052multi-dimensional arrays must be fully initialized

1 Error
.
Could not locate output file /home/groups/amxmodx/public_html/websc3/textqMCh2V.amx (compile failed). 

Anyone know why? :S

mordi 12-18-2007 12:53

Re: Hide N seek error
 
change this ( line 78 ):


new countername[16][] = {"zero","one","two","three","four","five","six","seven","eight","nine","ten"}


to this:


new countername[11][] = {"zero","one","two","three","four","five","six","seven","eight","nine","ten"}


hugz` 12-18-2007 17:22

Re: Hide N seek error
 
Problem is in line 68 I think..

Cider0 12-20-2007 07:55

Re: Hide N seek error
 
Quote:

Originally Posted by mordi (Post 564614)
change this ( line 78 ):


new countername[16][] = {"zero","one","two","three","four","five","six","seven","eight","nine","ten"}


to this:


new countername[11][] = {"zero","one","two","three","four","five","six","seven","eight","nine","ten"}


it is that you need to change and it is on line 68 ^^:up:

:wink:hope i helped you:wink:

hugz` 12-20-2007 15:20

Re: Hide N seek error
 
Quote:

/*
* Comments:
* Hide N Seek has a Tournament and Public mode.
*
* --Public Mode--
* When activated, it begins rounds of Hide N Seek, when round begins, CTs will be blinded
* and a counter will appear, counting down. When timer is up, CTs (Seekers) , must find and kill hiders,
* they will have 3.5 minutes to kill Terrorists (Hiders). CT's begin with a knife and nightvision.
* Terrorists begin with 2 flashbangs, 1 smoke, and Armor. 2 Types of Public mode available.
* pub_type 1 - 3 rounds per side, then it swaps teams.
* pub_type 2 - Teams swap sides when CT's (Seekers) win.
*
* -Tournament mode--
* It requires teams to be named by Captain or Clan Tag. Then match can begin with
* amx_begin. First round is a Knife Only Round, winner will be Hiders first. After that, results in a
* best of 6 rounds. If teams tie, it will continue into overtime, until one team wins.
* Then match will end, and server will go back to normal.
*
* Commands:
* amx_pub - Begins public version of Hide_N_Seek, playing default pub_type 2.
* amx_team - amx_team <1|2> <"Team Name"> - Defines team 1 and team 2, with a team name, or captain.
* amx_begin - Begins Tournament version of Hide_N_Seek, requires team 1 and team 2 to be named.
*
* CVARs:
* hide_n_seek - Defines which type of mode is being played (Do not change, use commands.)
* pub_type - 1 = 3 rounds per side. 2 = Teams swap sides when CTs (Seekers) win.
* hide_n_seek_timer - Time Terrorists (Hiders) have to hide, must be less than 15.
*
* Version : 1.0
* Requires: AMXX 1.01 or 1.5
*
* Author: OneEyed
* Date: 08-21-2005
* Email: [email protected]
* IRC: #zT (gamesurge.net)
*
* Tested :
* Hide N Seek plugin was tested on a win32/linux machine.
*
*/
#include <amxmodx>
#include <amxmisc>
#include <engine>
#include <fakemeta>
#include <fun>
#include <cstrike>

#define MESSAGE_DELAY 4
#define ARMORTYPE_OFFSET 112
#define TEAM_ONE 1
#define TEAM_TWO 2

new weap[34][] = {
"usp", "glock", "deagle", "p228", "elites", "fn57", "m3", "xm1014", "mp5", "tmp", "p90", "mac10", "ump45",
"ak47", "galil", "famas", "sg552", "m4a1", "aug", "scout", "awp", "g3sg1", "sg550", "m249", "vest", "vesthelm",
"flash", "hegren", "sgren", "defuser", "nvgs", "shield", "primammo", "secammo"
}
new weap2[34][] = {
"km45", "9x19mm", "nighthawk", "228compact", "elites", "fiveseven", "12gauge", "autoshotgun", "smg", "mp",
"c90", "mac10", "ump45", "cv47", "defender", "clarion", "krieg552", "m4a1", "bullpup", "scout", "magnum",
"d3au1", "krieg550", "m249", "vest", "vesthelm", "flash", "hegren", "sgren", "defuser", "nvgs", "shield",
"primammo", "secammo"
}

new one[] = "Objective: Hide and avoid CT / (Seekers) until round ends."
new two[] = "Objective: Find and kill Terrorists / (Hiders) before round ends."

new countername[11][] = {"zero","one","two","three","four","five","si x","seven","eight","nine","ten"}

new round = -1, maxplayers, timer, needed = 6, overtime
new Float:msgdelay[33], g_message[256]
new team1n[33], team2n[33]
new gmsgScreenFade, fakeEnt, scoreB, score[3], randed[64]

//------------------------------------------------------------------------------------------------------------
public plugin_init() {
register_plugin("Hide n Seek", "1.0", "OneEyed")

if(!cvar_exists("hide_n_seek"))
register_cvar("hide_n_seek","0")
if(!cvar_exists("pub_type"))
register_cvar("pub_type","2")
if(!cvar_exists("hide_n_seek_timer"))
register_cvar("hide_n_seek_timer","10")

register_concmd("amx_begin", "startSeek", ADMIN_SLAY, "Starts Hide n Seek for Tournament")
register_concmd("amx_pub", "startPubSeek", ADMIN_SLAY, "Starts Hide n Seek for Pub")
register_concmd("amx_team", "setTeamName", ADMIN_SLAY, "<team # 1|2> <^"name^"> - Sets specific team name.")

register_logevent("StartRound",2,"0=World triggered", "1=Round_Start")
register_logevent("EndRound" ,2,"0=World triggered", "1=Round_Draw", "1=Round_End")

register_event("CurWeapon", "Switched", "be")
register_event( "ResetHUD", "resetHud", "be" )

round = 1
timer = get_cvar_num("hide_n_seek_timer")
overtime = 3
gmsgScreenFade = get_user_msgid("ScreenFade")
maxplayers = get_maxplayers()

//FakeEnt Thinking, (handles better with engine)
fakeEnt = create_entity("info_target")
entity_set_string(fakeEnt,EV_SZ_classname,"se rverFrame")
register_think("serverFrame","server_fakeFram e")

//Scoreboard thinking
scoreB = create_entity("info_target")
entity_set_string(scoreB,EV_SZ_classname,"sco reBoard")
register_think("scoreBoard","displayScoreBoar d")
}
//------------------------------------------------------------------------------------------------------------
public plugin_modules(){
require_module("engine")
require_module("fakemeta")
require_module("fun")
require_module("cstrike")
}
//------------------------------------------------------------------------------------------------------------
//Extreme hack to make sure no one has weapons they arent suppose to!
public Switched(id) {
if(get_cvar_num("hide_n_seek") > 0) {
new weapon, clip, ammo
weapon = get_user_weapon(id,clip,ammo)
if(weapon != CSW_KNIFE && weapon != CSW_FLASHBANG && weapon != CSW_SMOKEGRENADE)
{
if(get_cvar_num("hide_n_seek") == 1) {
if(round == 0) { // Knife Round Stuff
if(is_user_alive(id))
set_task(1.0,"stripAndGiveKnife",id,"",_,"a", 0)
}
if(round == 1) { // Begin Round 1 stuff
if(get_user_team(id) == 1)
set_task(1.0,"HiderItems",id,"",_,"a",0)
if(get_user_team(id) == 2)
set_task(1.0,"SeekerItems",id,"",_,"a",0)
}
}
if(get_cvar_num("hide_n_seek") == 2) {
if(round >= 1) { // Begin Round 1 stuff
if(get_user_team(id) == 1)
set_task(1.0,"HiderItems",id,"",_,"a",0)
if(get_user_team(id) == 2)
set_task(1.0,"SeekerItems",id,"",_,"a",0)
}
}
return PLUGIN_HANDLED
}
}
return PLUGIN_CONTINUE
}
//------------------------------------------------------------------------------------------------------------
public resetHud(id) {
if(is_user_alive(id) && get_cvar_num("hide_n_seek") > 0) {
cs_set_user_money(id, 0)
new args[1]
args[0] = id
set_task(5.0,"modelCheck",1234,args,1,"a",0)
}
}
//------------------------------------------------------------------------------------------------------------
public modelCheck(args[]) {
new id = args[0]
if(!is_user_alive(id)) return PLUGIN_HANDLED
new mod[32]
cs_get_user_model(id,mod,31)
if(get_user_team(id) == 1) {
if(equali("urban",mod) || equali("gsg9",mod) || equali("sas",mod) || equali("gign",mod)) {
switch(random_num(0,3)) {
case 0: cs_set_user_model(id, "terror")
case 1: cs_set_user_model(id, "leet")
case 2: cs_set_user_model(id, "arctic")
case 3: cs_set_user_model(id, "guerilla")
}
}
}
else if(get_user_team(id) == 2) {
if(equali("terror",mod) || equali("leet",mod) || equali("arctic",mod) || equali("guerilla",mod)) {
switch(random_num(0,3)) {
case 0: cs_set_user_model(id, "urban")
case 1: cs_set_user_model(id, "gsg9")
case 2: cs_set_user_model(id, "sas")
case 3: cs_set_user_model(id, "gign")
}
}
}
return PLUGIN_HANDLED
}
//------------------------------------------------------------------------------------------------------------
public setTeamName(id,level,cid) {
if (!cmd_access(id,level,cid,2))
return PLUGIN_HANDLED
new teamnum[2], teamnumm
read_argv(1,teamnum,1)
if(!isdigit(teamnum[0])) {
client_print(id,print_chat,"[HideNSeek] Team # is not valid.")
return PLUGIN_HANDLED
}
teamnumm = str_to_num(teamnum)
switch(teamnumm) {
case 1: {
read_argv(2,team1n,32)
client_print(0,print_chat,"Team 1 is named %s",team2n)
}
case 2: {
read_argv(2,team2n,32)
client_print(0,print_chat,"Team 2 is named %s",team1n)
}
}
return PLUGIN_HANDLED
}
//------------------------------------------------------------------------------------------------------------
public startPubSeek(id,level,cid) {
if (!cmd_access(id,level,cid,0))
return PLUGIN_HANDLED
server_cmd("sv_restart 1")
server_cmd("sv_gravity 800")
server_cmd("mp_freezetime 0")
server_cmd("mp_roundtime 3.5")
set_cvar_num("hide_n_seek",2)
round = 1
timer = get_cvar_num("hide_n_seek_timer")
overtime = 3
return PLUGIN_HANDLED
}
//------------------------------------------------------------------------------------------------------------
public startSeek(id,level,cid) {
if (!cmd_access(id,level,cid,0))
return PLUGIN_HANDLED
if (!team1n[0] || !team2n[0]) {
client_print(id,print_chat,"[HideNSeek] Cannot start until both teams are named. ^n[HideNSeek] amx_team <#> <^"clan tag^"> - To specify team name")
return PLUGIN_HANDLED
}
server_cmd("sv_restart 1")
server_cmd("sv_gravity 800")
server_cmd("mp_freezetime 0")
server_cmd("mp_roundtime 3.5")
set_cvar_num("hide_n_seek",1)
round = 0
timer = get_cvar_num("hide_n_seek_timer")
overtime = 0
needed = 6
score[1] = 0
score[2] = 0
return PLUGIN_HANDLED
}
//------------------------------------------------------------------------------------------------------------
public server_fakeFrame(entid){
if(get_cvar_num("hide_n_seek") >= 1 && round >= 1) {
if(timer > 0) {
set_hudmessage(255, 0, 0, -1.0, 0.60, 0, 1.0, 1.0, 0.2, 0.1, 4)
show_hudmessage(0,"[Hiders] have %i seconds to hide...",timer)
client_cmd(0,"spk vox/%s.wav",countername[timer])
for(new b=1;b<=maxplayers;b++)
if(get_user_team(b) == 2 && is_user_alive(b)) {
doFlash(b, 15)
entity_set_float(b,EV_FL_maxspeed,-200.0)
}
}
if(timer == 0) {
for(new b=1;b<=maxplayers;b++) {
if(get_user_team(b) == 2 && is_user_alive(b)) {
doFlash(b, 0)
entity_set_float(b,EV_FL_maxspeed,250.0)
}
}
set_hudmessage(255, 0, 0, -1.0, 0.60, 0, 1.0, 6.0, 0.2, 0.1, 4)
show_hudmessage(0,"TIME IS UP,RUN BITCH RUN!",timer)
return PLUGIN_HANDLED
}
if(timer < 0) {
for(new b=1;b<=maxplayers;b++)
if(get_user_team(b) == 2 && is_user_alive(b)) {
doFlash(b, 0)
entity_set_float(b,EV_FL_maxspeed,250.0)
}
return PLUGIN_HANDLED
}
timer--
entity_set_float(entid,EV_FL_nextthink,halfli fe_time() + 1.0)
}
return PLUGIN_HANDLED
}
//------------------------------------------------------------------------------------------------------------
public displayScoreBoard(entid) {
if(get_cvar_num("hide_n_seek") == 1 && round == 0) {
new board[256]
format(board,255,"Team %s vs. Team %s ",team1n,team2n)
set_hudmessage(0, 255, 0, -1.0, 0.0, 0, 0.25, 1.0, 0.1, 0.1, 3)
show_hudmessage(0,"^n%s",board)
}
if(get_cvar_num("hide_n_seek") == 1 && round == 1) {
new board[256]
format(board,255,"%s score: %i | %s score: %i",team1n,score[1],team2n,score[2])
for(new x=1;x<=maxplayers;x++)
if(is_user_connected(x))
if(get_user_team(x) == 1 && is_user_connected(x)) {
set_hudmessage(0, 255, 0, -1.0, 0.0, 0, 0.25, 1.0, 0.1, 0.1, 3)
show_hudmessage(x,"%s^n%s^nBest of %i wins",one,board,needed)
}
else if(get_user_team(x) == 2 && is_user_connected(x)) {
set_hudmessage(0, 255, 0, -1.0, 0.0, 0, 0.25, 1.0, 0.1, 0.1, 3)
show_hudmessage(x,"%s^n%s^nBest of %i wins",two,board,needed)
}
else {
set_hudmessage(0, 255, 0, -1.0, 0.0, 0, 0.25, 1.0, 0.1, 0.1, 3)
show_hudmessage(x,"^n%s^nBest of %i wins",board,needed)
}
}
if(get_cvar_num("hide_n_seek") == 2 && round >= 1) {
for(new x=1;x<=maxplayers;x++)
if(is_user_connected(x))
if(get_user_team(x) == 1 && is_user_connected(x)) {
set_hudmessage(0, 255, 0, -1.0, 0.0, 0, 0.25, 1.0, 0.1, 0.1, 3)
show_hudmessage(x,"%s",one)
}
else if(get_user_team(x) == 2 && is_user_connected(x)) {
set_hudmessage(0, 255, 0, -1.0, 0.0, 0, 0.25, 1.0, 0.1, 0.1, 3)
show_hudmessage(x,"%s",two)
}
}
entity_set_float(entid,EV_FL_nextthink,halfli fe_time() + 0.25)
return PLUGIN_HANDLED
}
//------------------------------------------------------------------------------------------------------------
public EndRound() {
//Check to make sure theres a person in both teams
new t, c
for(new x=1;x<=maxplayers;x++) {
if(!is_user_connected(x)) continue
if(get_user_team(x) == 1)
t = 1
if(get_user_team(x) == 2)
c = 1
}
if(c == 1 && t == 1) {
if(get_cvar_num("hide_n_seek") == 1) {
timer = -1
new choose_win
format(g_message,255,"")
if(round == 0) {
format(randed,63,"")
choose_win = getRoundWinner()//(teamn)

//Do this down here, (Because of randoming)
switch(choose_win) {
case 1: format(g_message,255,"%s^n%s won, they will become [Hiders] first.",randed,team1n)
case 2: format(g_message,255,"%s^n%s won, they will become [Hiders] first.",randed,team2n)
}

new bool:check = check_team(choose_win)
if(!check) swap()
round = 1
}
else if(round == 1) {
choose_win = getRoundWinner()//(teamn)
switch(choose_win) {
case 1: score[TEAM_ONE]++
case 2: score[TEAM_TWO]++
}
new total = score[1] + score[2]
if(total == 3) {
format(g_message,255,"3 rounds over, switching teams.")
swap()
}
if(total > 3) {
new winner
new Float:teamonepct = float(score[1]) / float(needed)
new Float:teamtwopct = float(score[2]) / float(needed)

//Total of Scores reached needed amount, check for win/tie
if ( total >= needed || teamonepct > 0.5 || teamtwopct > 0.5 )
winner = ( score[1] > score[2] ) ? 1 : 2
if(total == needed && score[1] == score[2]) {
winner = 3
overtime++
if(needed == 6)
needed += 4
else if(needed >= 10)
needed += 2
}
new roundsneeded = (overtime == 1) ? 2 : 1
if(winner != 0) {
switch(winner) {
case 1: format(g_message,255,"Team %s WINS, CONGRATULATIONS",team1n)
case 2: format(g_message,255,"Team %s WINS, CONGRATULATIONS",team2n)
case 3: format(g_message,255,"We have a TIE, moving into OVERTIME %i.^nGoing %i more rounds per side.",overtime,roundsneeded)
}
}
if(total == (needed-roundsneeded) && needed > 6) {
format(g_message,255,"%i rounds of overtime completed.^n%i more needed, Switching Teams....",roundsneeded,roundsneeded)
swap()
}
if(winner == 1 || winner == 2)
set_cvar_num("hide_n_seek",0)
}
}
set_task(0.5,"displayHud",12345,"",_,"a",6)
}
if(get_cvar_num("hide_n_seek") == 2) {
timer = -1

format(randed,63,"")

new terr
for(new x=1;x<=maxplayers;x++) {
if(is_user_alive(x) && get_user_team(x) == 1)
terr = 1
}

if(terr)
format(randed,32,"Terrorists Win")
else {
if(get_cvar_num("pub_type") == 2) {
swap()
format(randed,32,"CTs Win^nSwitching Teams...")
}
else
format(randed,32,"CTs Win")
}


if(round == overtime && get_cvar_num("pub_type") == 1) {
overtime += 3
format(g_message,255,"%s^nRound %i Completed^n3 rounds completed, switching teams.",randed,round)
swap()
}
else
format(g_message,255,"%s^nROUND %i Completed",randed,round)

round++
//client_print(0,print_chat,"%s
set_task(0.5,"displayHud",12345,"",_,"a",6)
}
}
}
//------------------------------------------------------------------------------------------------------------
public displayHud() {
set_hudmessage(255, 0, 0, -1.0, 0.50, 0, 1.0, 5.0, 0.1, 0.1, 4)
show_hudmessage(0,"%s",g_message)
}
//------------------------------------------------------------------------------------------------------------
public bool:check_team(c_win) {
new tt[33]
switch(c_win) {
case 1: copy(tt,32,team1n)
case 2: copy(tt,32,team2n)
}
for(new i = 1; i <= maxplayers; i++) {
if(is_user_connected(i) && get_user_team(i) == 1) {
new pn[32]
get_user_name(i,pn,31)
if(containi(pn,tt) > -1) {
return true
}
}
}
return false
}
//------------------------------------------------------------------------------------------------------------
public getRoundWinner() {
//Some serious wierd bugs trying to find winner of round
//So used this hax0r version
new terr
for(new x=1;x<=maxplayers;x++)
if(is_user_alive(x) && get_user_team(x) == 1)
terr = 1

if(terr) {
client_print(0,print_chat,"Terrorists win")
for(new i = 1; i <= maxplayers; i++)
if(is_user_connected(i) && get_user_team(i) == 1) {
new pn[32]
get_user_name(i,pn,31)
if(containi(pn,team1n) > -1)
return 1
else if(containi(pn,team2n) > -1)
return 2
}
}
else {
client_print(0,print_chat,"CT win")
for(new i = 1; i <= maxplayers; i++)
if(is_user_connected(i) && get_user_team(i) == 2) {
new pn[32]
get_user_name(i,pn,31)
if(containi(pn,team1n) > -1)
return 1
else if(containi(pn,team2n) > -1)
return 2
}
}
return 0
}
//------------------------------------------------------------------------------------------------------------
public StartRound() {
new t, c
for(new x=1;x<=maxplayers;x++) {
if(!is_user_connected(x)) continue
if(get_user_team(x) == 1) t = 1
if(get_user_team(x) == 2) c = 1
}
//Give team weapons on start round, and begin rounds
if(c == 1 && t == 1) {
if(get_cvar_num("hide_n_seek") == 1) {
if(round == 0) { // Knife Round Stuff
format(g_message,255,"Knife Round^nWinning Team will become [Hiders] first.")
for(new a=1;a<=maxplayers;a++) {
if(is_user_alive(a))
set_task(1.5,"stripAndGiveKnife",a)
}
set_hudmessage(255, 0, 0, -1.0, 0.5, 0, 1.0, 7.0, 0.1, 0.1, 4)
show_hudmessage(0,"%s",g_message)
entity_set_float(scoreB,EV_FL_nextthink,halfl ife_time() + 0.01)
}
if(round == 1) { // Begin Round 1 stuff
timer = get_cvar_num("hide_n_seek_timer")
entity_set_float(fakeEnt,EV_FL_nextthink,half life_time() + 0.01)
for(new a=1;a<=maxplayers;a++) {
if(get_user_team(a) == 1 && is_user_alive(a))
set_task(1.5,"HiderItems",a)
if(get_user_team(a) == 2 && is_user_alive(a))
set_task(1.5,"SeekerItems",a)
}
}
}
if(get_cvar_num("hide_n_seek") == 2) {
if(round >= 1) { // Begin Round 1 stuff
timer = get_cvar_num("hide_n_seek_timer")
entity_set_float(fakeEnt,EV_FL_nextthink,half life_time() + 0.01)
for(new a=1;a<=maxplayers;a++) {
if(get_user_team(a) == 1 && is_user_alive(a))
set_task(1.5,"HiderItems",a)
if(get_user_team(a) == 2 && is_user_alive(a))
set_task(1.5,"SeekerItems",a)
}
}
}
}
}
//------------------------------------------------------------------------------------------------------------
//Make sure people don't cheat
public client_command(id) {
if(!get_cvar_num("hide_n_seek")) return PLUGIN_CONTINUE
new arg[13]
read_argv( 0, arg , 12 )
for(new a=1;a<34;a++)
if ( equal( weap[ a ] , arg ) || equal( weap2[ a ] , arg ) || equal("buy",arg) || equal("autobuy",arg)) {
if ((get_gametime() - msgdelay[id]) > MESSAGE_DELAY) {
client_print(id,print_chat,"You cannot buy, when -Hide N Seek- is activated.^n")
msgdelay[id] = get_gametime()
}
return PLUGIN_HANDLED
}
if( equal("chooseteam",arg) && get_cvar_num("hide_n_seek") == 1 && (get_user_team(id) == 1 || get_user_team(id) == 2) ) {
if ((get_gametime() - msgdelay[id]) > MESSAGE_DELAY) {
client_print(id,print_chat,"You cannot change teams, when -Hide N Seek- is activated.^n")
msgdelay[id] = get_gametime()
}
return PLUGIN_HANDLED
}
return PLUGIN_CONTINUE
}
//------------------------------------------------------------------------------------------------------------
//Make sure people don't kill themselves
public client_kill(id) {
if(get_cvar_num("hide_n_seek") > 0) {
if ((get_gametime() - msgdelay[id]) > MESSAGE_DELAY) {
client_print(id,print_chat,"You cannot kill yourself, when -Hide N Seek- is activated.^n")
msgdelay[id] = get_gametime()
}
return PLUGIN_HANDLED
}
return PLUGIN_CONTINUE
}
//------------------------------------------------------------------------------------------------------------
public stripAndGiveKnife(id) {
strip_user_weapons(id)
give_item(id, "weapon_knife")
}
//------------------------------------------------------------------------------------------------------------
public SeekerItems(id) {
strip_user_weapons(id)
give_item(id, "weapon_knife")
cs_set_user_nvg(id)
}
//------------------------------------------------------------------------------------------------------------
public HiderItems(id) {
strip_user_weapons(id)
give_item(id, "weapon_flashbang")
cs_set_user_bpammo(id, CSW_FLASHBANG, 3);
give_item(id, "weapon_smokegrenade")
csset_user_armor(id, 100.0, 2)
cs_set_user_nvg(id, 0)

}
//------------------------------------------------------------------------------------------------------------
public csset_user_armor(id, Float:amount, type) {
entity_set_float(id,EV_FL_armorvalue, amount)
set_pdata_int(id,ARMORTYPE_OFFSET,type)
}
//------------------------------------------------------------------------------------------------------------
stock doFlash(id, amt) {
message_begin(MSG_ONE,gmsgScreenFade,{0,0,0}, id)
write_short( 1<<amt ) // fade lasts this long duration
write_short( 1<<amt ) // fade lasts this long hold time
write_short( 1<<12 ) // fade type (in / out)
write_byte( 0 ) // fade red
write_byte( 0 ) // fade green
write_byte( 0 ) // fade blue
write_byte( 255 ) // fade alpha
message_end()
}
//------------------------------------------------------------------------------------------------------------
public swap() {
new team[16]
for(new i=1;i<=maxplayers;i++)
if(is_user_connected(i)) {
get_user_team(i,team,15)
if(equal(team,"CT")) {
cs_set_user_team(i, CS_TEAM_T)
select_model(i,1)
}
if(equal(team,"TERRORIST")) {
cs_set_user_team(i, CS_TEAM_CT)
select_model(i,2)
}
}
return PLUGIN_CONTINUE
}
//------------------------------------------------------------------------------------------------------------
public select_model(id,team) {
new rand = random_num(0,3)
switch(team) {
case 2: {
switch(rand) {
case 0: cs_set_user_model(id, "urban")
case 1: cs_set_user_model(id, "gsg9")
case 2: cs_set_user_model(id, "sas")
case 3: cs_set_user_model(id, "gign")
}
}
case 1: {
switch(rand) {
case 0: cs_set_user_model(id, "terror")
case 1: cs_set_user_model(id, "leet")
case 2: cs_set_user_model(id, "arctic")
case 3: cs_set_user_model(id, "guerilla")
}
}
}
client_cmd(id,"wait; wait; slot10")
return PLUGIN_CONTINUE
}
//------------------------------------------------------------------------------------------------------------

Cider0 12-22-2007 23:12

Re: Hide N seek error
 
yupp yupp :)


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

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