Page 1 of 1

Ar imanoma kaip nors lengviau?

Posted: 2011 May 11 17:28
by psychical

Code: Select all

 /*===============================*//*===========GUNSMENU============*//*===============================*/ public gunsmenu22(id){    if(is_user_alive(id))    {        new gmenu = menu_create("\w~:\rG\wuns \rM\wenu:~" , "gunmenu22");        menu_additem(gmenu ,"M4A1 + M3", "1" , 0);        menu_additem(gmenu ,"M4A1 + AK47", "2" , 0);        menu_additem(gmenu ,"M4A1 + AWP", "3" , 0);        menu_additem(gmenu ,"AK47 + AWP", "4" , 0);        menu_additem(gmenu ,"AK47 + M3", "5" , 0);        menu_additem(gmenu ,"AWP + M3", "6" , 0);            menu_setprop(gmenu , MPROP_EXIT , MEXIT_ALL);                menu_display(id , gmenu , 0);    }    return PLUGIN_CONTINUE} public gunmenu22(id, gmenu, item){   if (item == MENU_EXIT)   {      menu_destroy(gmenu)      return PLUGIN_HANDLED   }    new data[6], iName[64]   new access, callback   menu_item_getinfo(gmenu, item, access, data, 5, iName, 63, callback)      new key = str_to_num(data)      switch(key)   {        case 1:        {            give_item(id, "weapon_m4a1");            give_item(id, "weapon_m3");            give_item(id, "weapon_deagle");            give_item(id, "weapon_knife");            cs_set_user_bpammo(id, CSW_DEAGLE, 255);             cs_set_user_bpammo(id, CSW_M4A1, 255);             cs_set_user_bpammo(id, CSW_M3, 255);         }        case 2:        {            give_item(id, "weapon_m4a1");            give_item(id, "weapon_ak47");            give_item(id, "weapon_deagle");            give_item(id, "weapon_knife");            cs_set_user_bpammo(id, CSW_DEAGLE, 255);             cs_set_user_bpammo(id, CSW_M4A1, 255);             cs_set_user_bpammo(id, CSW_AK47, 255);         }        case 3:        {            give_item(id, "weapon_m4a1");            give_item(id, "weapon_awp");            give_item(id, "weapon_deagle");            give_item(id, "weapon_knife");            cs_set_user_bpammo(id, CSW_DEAGLE, 255);             cs_set_user_bpammo(id, CSW_M4A1, 255);             cs_set_user_bpammo(id, CSW_AWP, 255);         }        case 4:        {            give_item(id, "weapon_ak47");            give_item(id, "weapon_awp");            give_item(id, "weapon_deagle");            give_item(id, "weapon_knife");            cs_set_user_bpammo(id, CSW_DEAGLE, 255);            cs_set_user_bpammo(id, CSW_AK47, 255);             cs_set_user_bpammo(id, CSW_AWP, 255);         }        case 5:        {            give_item(id, "weapon_ak47");            give_item(id, "weapon_m3");            give_item(id, "weapon_deagle");            give_item(id, "weapon_knife");            cs_set_user_bpammo(id, CSW_DEAGLE, 255);            cs_set_user_bpammo(id, CSW_M3, 255);             cs_set_user_bpammo(id, CSW_AK47, 255);         }        case 6:        {            give_item(id, "weapon_awp");             give_item(id, "weapon_m3");             give_item(id, "weapon_deagle");            give_item(id, "weapon_knife");            cs_set_user_bpammo(id, CSW_DEAGLE, 255);             cs_set_user_bpammo(id, CSW_M3, 255);             cs_set_user_bpammo(id, CSW_AWP, 255);         }    }   menu_destroy(gmenu)   return PLUGIN_HANDLED; } 
Ar imanoma padaryti kaip nors lengviau? Ta prasme per kad nereiketu kekvieno gun irasineti atskirai i nauja case?

Re: Ar imanoma kaip nors lengviau?

Posted: 2011 May 11 17:48
by hleV
Deagle ir jo kulkų davimą gali iškelt už case (), kadangi juos duodi betkokiu atveju.
Šiuo atveju vietoje meniu "info" įrašo ("1", "2" ir t.t.) gavimo gali tiesiog tikrint item, tik jis prasidės nuo 0, o ne 1.

Code: Select all

switch (item){        case 0: // ...

Re: Ar imanoma kaip nors lengviau?

Posted: 2011 May 11 17:59
by psychical

Code: Select all

public gunmenu22(id, gmenu, item){   if (item == MENU_EXIT)   {      menu_destroy(gmenu)      return PLUGIN_HANDLED   }    new data[6], iName[64]   new access, callback   menu_item_getinfo(gmenu, item, access, data, 5, iName, 63, callback)      new key = str_to_num(data)      switch(key)   {        case 1:
tai ko is sito nereik? Ar tiks taip:

Code: Select all

public gunmenu22(id, gmenu, item){   if (item == MENU_EXIT)   {      menu_destroy(gmenu)      return PLUGIN_HANDLED   }      switch(item)   {        case 1:

Re: Ar imanoma kaip nors lengviau?

Posted: 2011 May 11 18:01
by hleV
Tiks, tik visus case skaičius: sumažink vienetu.

Re: Ar imanoma kaip nors lengviau?

Posted: 2011 May 11 18:10
by psychical
k, dekui.

Dar 1 klausimelis:

Code: Select all

#include <amxmodx>#include <amxmisc>#include <hamsandwich>#include <cstrike>#include <fakemeta>#include <fun> new A[] = "models/player/rez_ctt/rez_ctt.mdl"new B[] = "models/player/rez_t2/rez_t2.mdl" public plugin_init() {       register_plugin("CS modeliai", "2.9", "rez.lt")        RegisterHam(Ham_Spawn, "player", "client_spawn", 1)    register_forward(FM_SetClientKeyValue, "fw_SetClientKeyValue")} public plugin_precache() {       precache_model(A)    precache_model(B)     return PLUGIN_CONTINUE} public client_spawn(id){       if (!is_user_alive(id))        return     if(get_user_team(id) == 2)    {        cs_set_user_model(id, "rez_ctt")    }    else    {        cs_set_user_model(id, "rez_t2")    }} public fw_SetClientKeyValue(id, const infobuffer[], const key[]){    // Block CS model changes    if (key[0] == 'm' && key[1] == 'o' && key[2] == 'd' && key[3] == 'e' && key[4] == 'l')        return FMRES_SUPERCEDE;       return FMRES_IGNORED;}
Kas cia blogai? Neblokuoja modelio keitimosi per konsole...