Page 1 of 1

engclient_cmd

Posted: 2012 Jul 29 23:39
by GhostMan
Kaip šitą komandą reikia tinkamai naudot, norint išskirtiniais atvėjais prievarda žaidėjus laikyti su knife?

Dabar esu padaręs taip

Code: Select all

register_event("CurWeapon", "EventCurWeapon", "be", "1=1"); 

Code: Select all

public EventCurWeapon(id){    if(!dayison)        return PLUGIN_HANDLED;     if(specialday[20] == DAY_CATCH || specialday[20] == DAY_GRAV || specialday[20] == DAY_SPEED)    {        engclient_cmd(id, "weapon_knife");    }    else if((specialday[20] == DAY_HNS || specialday[20] == DAY_ZOMBIE || g_BoxStarted) && cs_get_user_team(id) == CS_TEAM_T)    {        engclient_cmd(id, "weapon_knife");    }    else if(specialday[20] == DAY_INVIS && cs_get_user_team(id) == CS_TEAM_CT)    {        engclient_cmd(id, "weapon_knife");    }    return PLUGIN_HANDLED;}  
Bet gal turėtų būt kaip nors taip?

Code: Select all

public EventCurWeapon(id){    if(!dayison)        return PLUGIN_HANDLED;     new players[32], num, tid;    get_players(players, num, "a");            for(new i = 0; i < num; i++)    {                tid = players[i]                if(specialday[20] == DAY_CATCH || specialday[20] == DAY_GRAV || specialday[20] == DAY_SPEED)            engclient_cmd(tid, "weapon_knife");            switch(cs_get_user_team(tid))        {            case CS_TEAM_T:            {                if(specialday[20] == DAY_HNS || specialday[20] == DAY_ZOMBIE || g_BoxStarted)                    engclient_cmd(tid, "weapon_knife");            }                        case CS_TEAM_CT:            {                if(specialday[20] == DAY_INVIS)                    engclient_cmd(tid, "weapon_knife");            }        }    }    return PLUGIN_HANDLED;}  
Bet tai curweapon evente naudot get_players, for cikla, nemanau, kad labai gerai.

Man būna kartais pluginas gryba užpjauna ir leidžia užsidėti kitus ginklus, kai to daryti turėtų būti negalima. Tai nežinau kolkas dėl ko, arba su kintamuoju specialday bėdos yra, nepriskiriama reikiama reikšmė arba šita engclient_cmd blogai naudoju.

Re: engclient_cmd

Posted: 2012 Jul 30 10:48
by InvIs

Code: Select all

switch(specialday[20]){  case DAY_CATCH:  {    engclient_cmd(id, "weapon_knife");  }  case DAY_GRAV:  {    engclient_cmd(id, "weapon_knife");  }  case DAY_SPEED:  {    engclient_cmd(id, "weapon_knife");  }  case DAY_HNS:  {    engclient_cmd(id, "weapon_knife");  }  case DAY_ZOMBIE:  {    engclient_cmd(id, "weapon_knife");  }  case DAY_INVIS:  {    if(get_user_team(id) == 2)    {      engclient_cmd(id, "weapon_knife");    }  }}if(g_BoxStarted && get_user_team(id) == 1){  engclient_cmd(id, "weapon_knife");}

Parodžiau, kaip daryčiau aš. Nežinau ar gerai.

Re: engclient_cmd

Posted: 2012 Jul 30 11:02
by psychical
Bent patikrintumėt ar ginklas ne "knife" ... :|

Re: engclient_cmd

Posted: 2012 Jul 30 12:19
by InvIs
Taigi current weapon event'as. Kam papildomai tikrinti? Ne for ciklas, kad kas mili sekundes keistų į knife.

Re: engclient_cmd

Posted: 2012 Jul 30 13:05
by aaarnas

Code: Select all

switch(specialday[20]){  case DAY_CATCH, DAY_GRAV, DAY_SPEED, DAY_HNS:  {    engclient_cmd(id, "weapon_knife");  }  case DAY_INVIS:  {    if(get_user_team(id) == 2)    {      engclient_cmd(id, "weapon_knife");    }  }}if(g_BoxStarted && get_user_team(id) == 1){  engclient_cmd(id, "weapon_knife");}