| Дата поста: |
В теме: |
За сообщение: |
Спасибо сказали: |
| 4.11.2015, 12:03 |
Не появляется gold awp csdm
|
Код:
give_item(id, "weapon_deagle") >> Код:
give_item(id, "weapon_awp") |
amax |
| 16.9.2015, 14:29 |
vip_system
|
NeMirofff, с работы вечером приеду помогу, если никто не опередит  Пару кваров выносить в cfg лишнее думаю, в исходнике настроишь под себя через дефайны Блокировка карт есть в исходнике Код:
new iMap_Name[32], iMap_Prefix[][] = { "awp_", "aim_", "35hp", "fy_" }; здесь префиксы карт на которых не будет работать вип[attachment=35712:vip_system.sma] upd: допустил незначительную ошибку перезалил |
NeMirofff |
| 6.9.2015, 20:46 |
Map Manager by Mistrick [2.5.61]
|
Цитата(Bloo @ 6.9.2015, 21:23) 
bandit123, это не совсем рестарт, это game comercing, т.е. начало новой игры. Можно использовать например RoundControleНемного не так выразился |
Inf19 |
| 5.9.2015, 20:17 |
Admin, Vip and Lady models 0.3b обновление от 03.05.2014 (Админ, Вип и Женские модели для Т и СТ)
|
Цитата(ThePhoenix @ 5.9.2015, 20:38)  Ребят,кто-то может с плагина AdminVipLady,выпилить Вип модель :) Нужно только Админ + Lady. Если не сложно) Попробовал выпилить,не вышло,не компилируется: Код:
Код #include <amxmodx> #include <cstrike> #include <fakemeta> #include <hamsandwich>
#pragma semicolon 1
#define MAX_PLAYERS 32
#define admin ADMIN_BAN #define lady ADMIN_LEVEL_E
#define BIT_VALID(%1,%2) ((%1) & (1 << ((%2) - 1))) #define BIT_ADD(%1,%2) ((%1) |= (1 << ((%2) - 1))) #define BIT_SUB(%1,%2) ((%1) &= ~(1 << ((%2) - 1))) #define BIT_NOT_VALID(%1,%2) (~(%1) & (1 << ((%2) - 1)))
new g_iBitClientAdmin, g_iBitClientLady, g_iBitCustomModel;
public plugin_init() { register_plugin("Admin, Vip and Lady models", "0.3b", "Freedo.m +mod.Leg"); RegisterHam(Ham_Spawn, "player", "Ham_PlayerSpawn_Post", 1); register_forward(FM_SetClientKeyValue, "FM_SetClientKeyValue_Pre", 0); }
public plugin_precache() { precache_model("models/player/lady_teeee/lady_teeee.mdl"); precache_model("models/player/lady_ctttt/lady_ctttt.mdl");
precache_model("models/player/admin_teeee/admin_teeee.mdl"); precache_model("models/player/admin_ctttt/admin_ctttt.mdl");
}
public client_putinserver(id) { resetBit(id);
new flags = get_user_flags(id); if (flags & lady) BIT_ADD(g_iBitClientLady, id); else if (flags & admin) BIT_ADD(g_iBitClientAdmin, id); }
public client_disconnect(id) { resetBit(id); } public resetBit(id) { BIT_SUB(g_iBitCustomModel, id); BIT_SUB(g_iBitClientLady, id); BIT_SUB(g_iBitClientAdmin, id); }
public Ham_PlayerSpawn_Post(id) { if (is_user_alive(id)) { if(BIT_VALID(g_iBitClientLady, id)) { switch(cs_get_user_team(id)) { case CS_TEAM_T: fm_cs_set_user_model(id, "lady_teeee"); case CS_TEAM_CT: fm_cs_set_user_model(id, "lady_ctttt"); } }
else if(BIT_VALID(g_iBitClientAdmin, id)) { switch(cs_get_user_team(id)) { case CS_TEAM_T: fm_cs_set_user_model(id, "admin_teeee"); case CS_TEAM_CT: fm_cs_set_user_model(id, "admin_ctttt"); } }
}
new g_szPlayerModel[MAX_PLAYERS + 1][32];
public FM_SetClientKeyValue_Pre(id, const szInfobuffer[], const szKey[]) { if(BIT_VALID(g_iBitCustomModel, id) && equal(szKey, "model")) { static szCurrentModel[32]; fm_cs_get_user_model(id, szCurrentModel, charsmax(szCurrentModel)); if(!equal(szCurrentModel, g_szPlayerModel[id])) fm_cs_set_user_model(id, g_szPlayerModel[id]); return FMRES_SUPERCEDE; } return FMRES_IGNORED; }
stock fm_cs_get_user_model(id, szModel[], szLen) engfunc(EngFunc_InfoKeyValue, engfunc(EngFunc_GetInfoKeyBuffer, id), "model", szModel, szLen); stock fm_cs_set_user_model(id, const szModelName[]) { engfunc(EngFunc_SetClientKeyValue, id, engfunc(EngFunc_GetInfoKeyBuffer, id), "model", szModelName); copy(g_szPlayerModel[id], charsmax(g_szPlayerModel[]), szModelName); BIT_ADD(g_iBitCustomModel, id); }
stock fm_cs_reset_user_model(id) { BIT_SUB(g_iBitCustomModel, id); dllfunc(DLLFunc_ClientUserInfoChanged, id, engfunc(EngFunc_GetInfoKeyBuffer, id)); }
Код:
#include <amxmodx> #include <cstrike> #include <fakemeta> #include <hamsandwich>
#pragma semicolon 1
#define MAX_PLAYERS 32
#define admin ADMIN_BAN #define lady ADMIN_LEVEL_G
#define BIT_VALID(%1,%2) ((%1) & (1 << ((%2) - 1))) #define BIT_ADD(%1,%2) ((%1) |= (1 << ((%2) - 1))) #define BIT_SUB(%1,%2) ((%1) &= ~(1 << ((%2) - 1))) #define BIT_NOT_VALID(%1,%2) (~(%1) & (1 << ((%2) - 1)))
new g_iBitClientAdmin, g_iBitClientLady, g_iBitCustomModel;
public plugin_init() { register_plugin("Admin, Vip and Lady models", "0.3b", "Freedo.m +mod.Leg"); RegisterHam(Ham_Spawn, "player", "Ham_PlayerSpawn_Post", 1); register_forward(FM_SetClientKeyValue, "FM_SetClientKeyValue_Pre", 0); }
public plugin_precache() { precache_model("models/player/lady_teeee/lady_teeee.mdl"); precache_model("models/player/lady_ctttt/lady_ctttt.mdl");
precache_model("models/player/admin_teeee/admin_teeee.mdl"); precache_model("models/player/admin_ctttt/admin_ctttt.mdl"); }
public client_putinserver(id) { resetBit(id);
new flags = get_user_flags(id); if (flags & lady) BIT_ADD(g_iBitClientLady, id); else if (flags & admin) BIT_ADD(g_iBitClientAdmin, id); }
public client_disconnect(id) { resetBit(id); } public resetBit(id) { BIT_SUB(g_iBitCustomModel, id); BIT_SUB(g_iBitClientLady, id); BIT_SUB(g_iBitClientAdmin, id); }
public Ham_PlayerSpawn_Post(id) { if (is_user_alive(id)) { if(BIT_VALID(g_iBitClientLady, id)) { switch(cs_get_user_team(id)) { case CS_TEAM_T: fm_cs_set_user_model(id, "lady_teeee"); case CS_TEAM_CT: fm_cs_set_user_model(id, "lady_ctttt"); } }
else if(BIT_VALID(g_iBitClientAdmin, id)) { switch(cs_get_user_team(id)) { case CS_TEAM_T: fm_cs_set_user_model(id, "admin_teeee"); case CS_TEAM_CT: fm_cs_set_user_model(id, "admin_ctttt"); } } else fm_cs_reset_user_model(id); }
}
new g_szPlayerModel[MAX_PLAYERS + 1][32];
public FM_SetClientKeyValue_Pre(id, const szInfobuffer[], const szKey[]) { if(BIT_VALID(g_iBitCustomModel, id) && equal(szKey, "model")) { static szCurrentModel[32]; fm_cs_get_user_model(id, szCurrentModel, charsmax(szCurrentModel)); if(!equal(szCurrentModel, g_szPlayerModel[id])) fm_cs_set_user_model(id, g_szPlayerModel[id]); return FMRES_SUPERCEDE; } return FMRES_IGNORED; }
stock fm_cs_get_user_model(id, szModel[], szLen) engfunc(EngFunc_InfoKeyValue, engfunc(EngFunc_GetInfoKeyBuffer, id), "model", szModel, szLen); stock fm_cs_set_user_model(id, const szModelName[]) { engfunc(EngFunc_SetClientKeyValue, id, engfunc(EngFunc_GetInfoKeyBuffer, id), "model", szModelName); copy(g_szPlayerModel[id], charsmax(g_szPlayerModel[]), szModelName); BIT_ADD(g_iBitCustomModel, id); }
stock fm_cs_reset_user_model(id) { BIT_SUB(g_iBitCustomModel, id); dllfunc(DLLFunc_ClientUserInfoChanged, id, engfunc(EngFunc_GetInfoKeyBuffer, id)); }  Флаги выставишь сам какие нужно |
ThePhoenix |
| 27.8.2015, 10:05 |
Ваш голос в опросе.
|
Готово |
Problem |
| 25.8.2015, 21:51 |
XyLiGaN - С Днём Рождения!
|
Поздравляю, желаю тебе счастья, добра, удачи и крепкого здоровья  |
XyLiGaN |
| 21.8.2015, 0:59 |
Редактирование ВИП плагина!
|
Держи Код:
/* VIP для пабликов. Автор: neygomon. Помощь по коду: s1lent Возможности: * Чат-тег сообщений от випки [Не игрока в чате, а от плагина] * Звук и соощение при подключении игрока * WeaponMenu for VIP(vipmenu, /vipmenu) - оружия: ak47, m4a1, awp, пулемет. Так же чат команды: /ak47, /m4a1, /awp, /b51. * Damager * Доп HP за убийства * VIP статус в TAB (нормальным способом, а не через ж... как в предыдущей версии) * При спавне VIP игрока выдает дигл(отключаемо), гранаты(отключаемо), броню. Используемые модули: cstrike, fakemeta, hamsandwich, colorchat */ #include <amxmodx> #include <cstrike> #include <fakemeta_util> #include <hamsandwich> #if AMXX_VERSION_NUM < 183 #include <colorchat> #endif // #### Конфигурационные defines #### #define VIP_ACCESS ADMIN_LEVEL_H // Флаг доступа VIP (по дефолту флаг "t" ADMIN_LEVEL_H) #define CHATTAG "^3[^4VIP INFO^3]^4" // Префикс перед сообщениями || ^1 - желтый ^3 - цвет команды ^4 - зеленый #define VIPCONNECTED_SOUND "misc/neugomon/vip.wav" // Звук при заходе VIP игрока на сервер #define VIPROUND 2 // C какого раунда можно открыть вип меню #define AWPM249RND 5 // С какого раунда доступны AWP и пулемет // #define AUTOVIPMENU // Автоматически открывать в начале рануда Вип меню (выключено по дефолту) #define VIPAUTODEAGLE // В начале каждого раунда давать Дигл #define VIPAUTOGRENADE // Давать в начале каждого раунда гранаты #define VIPTAB // Показывать статус VIP в таблице на tab // #### Конфигурационные defines #### #define is_user_vip(%0) (get_user_flags(%0) & VIP_ACCESS) new g_roundCount; new bool:isWarmupRound = true, bool:isFirstRound = true, bool:iUseWeapon[33] = false, bool:bDefuse = false; new const PRIMARY_WEAPONS_BITSUM = (1<<CSW_SCOUT)|(1<<CSW_XM1014)|(1<<CSW_MAC10)|(1<<CSW_AUG)|(1<<CSW_UMP45)|(1<<CSW_SG550)|(1<<CSW_GALIL)|(1<<CSW_FAMAS)|(1<<CSW_AWP)|(1<<CSW_MP5NAVY)|(1<<CSW_M249)|(1<<CSW_M3)|(1<<CSW_M4A1)|(1<<CSW_TMP)|(1<<CSW_G3SG1)|(1<<CSW_SG552)|(1<<CSW_AK47)|(1<<CSW_P90); new const SECONDARY_WEAPONS_BITSUM = (1<<CSW_P228)|(1<<CSW_ELITE)|(1<<CSW_FIVESEVEN)|(1<<CSW_USP)|(1<<CSW_GLOCK18)|(1<<CSW_DEAGLE); public plugin_precache() precache_sound(VIPCONNECTED_SOUND); new iMaxPlayers; new bool:g_iBlockBonus; public plugin_init() { register_plugin("VIPka", "1.2", "neygomon"); register_event("TextMsg","eventRoundRestart","a","2&#Game_w"); register_event("TextMsg","eventCommencingRestart","a","2&#Game_C"); register_event("HLTV","eventRoundStartHLTV","a","1=0","2=0"); #if defined VIPTAB if(engfunc(EngFunc_FindEntityByString,FM_NULLENT,"classname","func_vip_safetyzone")) register_message(get_user_msgid("ScoreAttrib"),"messageScoreAttrib"); #endif if(engfunc(EngFunc_FindEntityByString,FM_NULLENT,"classname","func_bomb_target")) bDefuse = true; RegisterHam(Ham_Spawn, "player", "Player_Spawn", 1); register_clcmd("say /vipmenu", "CmdMenu"); register_clcmd("vipmenu", "CmdMenu"); register_clcmd("say", "hook_say"); register_clcmd("say_team", "hook_say"); register_menucmd(register_menuid("Vip Menu"), MENU_KEY_0|MENU_KEY_1|MENU_KEY_2|MENU_KEY_3|MENU_KEY_4, "handler"); iMaxPlayers = get_maxplayers(); new iMap_Name[32], iMap_Prefix[][] = { "awp_", "aim_" } get_mapname(iMap_Name, charsmax(iMap_Name)) for(new i; i < sizeof(iMap_Prefix); i++) { if(containi(iMap_Name, iMap_Prefix[i]) != -1) g_iBlockBonus = true } } public client_putinserver(id) { if(is_user_vip(id)) VipConnectNotice(id); } public eventCommencingRestart() isFirstRound = isWarmupRound = true; public eventRoundRestart() g_roundCount = 0; public eventRoundStartHLTV() { if(isFirstRound) { isFirstRound = false; g_roundCount = 0; } g_roundCount++; if(isWarmupRound) { isWarmupRound = false; g_roundCount = 0; } arrayset(iUseWeapon, false, iMaxPlayers); } public Player_Spawn(id) { if(g_iBlockBonus) return; if(is_user_alive(id) && is_user_vip(id)) { #if defined VIPAUTOGRENADE fm_give_item(id, "weapon_hegrenade"); fm_give_item(id, "weapon_flashbang"); fm_give_item(id, "weapon_smokegrenade"); cs_set_user_bpammo(id, CSW_FLASHBANG, 2); #endif #if defined VIPAUTODEAGLE give_item_ex(id,"weapon_deagle",35,1) cs_set_user_bpammo(id, CSW_DEAGLE, 35); #endif cs_set_user_armor(id, 100, CS_ARMOR_VESTHELM); if(bDefuse && cs_get_user_team(id) == CS_TEAM_CT) cs_set_user_defuse(id, 1); #if defined AUTOVIPMENU CmdMenu(id); #endif } } public hook_say(id) { static szMsg[256]; read_args(szMsg,255); remove_quotes(szMsg); if(szMsg[0] != '/') { return 0; } static a; static const szChoosedWP[][] = { "/ak47", "/m4a1", "/awp", "/b51" }; for(a = 0; a < sizeof szChoosedWP; a++) { if(equal(szMsg,szChoosedWP[a])) { if(!is_allow_use(id)) { break; } if(a > 1 && g_roundCount < AWPM249RND) { return chat_message(id, 6); } return handler(id,a); } } return 0; } public CmdMenu(id) { if(is_user_vip(id)) { if(is_user_alive(id)) { if(g_roundCount > 0) { if(!iUseWeapon[id]) { if(g_roundCount >= VIPROUND) { static szMenu[512],iLen,iKey; iKey = MENU_KEY_0|MENU_KEY_1|MENU_KEY_2; iLen = formatex(szMenu,511,"\yVIP \wWeaponMenu^n^n\y1. \wВзять AK47^n\y2. \wВзять M4A1^n"); if(g_roundCount < AWPM249RND) { iLen += formatex(szMenu[iLen],511 - iLen,"\y3. \dВзять AWP \r[c %d раунда]^n\y4. \dВзять Пулемет \r[c %d раунда]^n^n",AWPM249RND,AWPM249RND); } else { iKey |= MENU_KEY_3|MENU_KEY_4; iLen += formatex(szMenu[iLen],511 - iLen,"\y3. \wВзять AWP^n\y4. \wВзять Пулемет^n^n"); } formatex(szMenu[iLen],511 - iLen,"\y0. \wВыход"); set_pdata_int(id, 205, 0); return show_menu(id,iKey,szMenu,-1,"Vip Menu"); } else chat_message(id, 0); } else chat_message(id, 1); } else chat_message(id, 2); } else chat_message(id, 3); } else chat_message(id, 4); return PLUGIN_HANDLED; } public handler(id, key) { switch(key) { case 0: { give_item_ex(id,"weapon_ak47",90,1); iUseWeapon[id] = true; } case 1: { give_item_ex(id,"weapon_m4a1",90,1); iUseWeapon[id] = true; } case 2: { if(g_roundCount < AWPM249RND) chat_message(id, 6); else { give_item_ex(id,"weapon_awp",30,1); iUseWeapon[id] = true; } } case 3: { if(g_roundCount < AWPM249RND) chat_message(id, 6); else { give_item_ex(id,"weapon_m249",250,1); iUseWeapon[id] = true; } } } return 1 } stock give_item_ex(id,currWeaponName[],ammoAmount,dropFlag=0) { static weaponsList[32], weaponName[32], weaponsNum, currWeaponID; currWeaponID = get_weaponid(currWeaponName); if(dropFlag) { weaponsNum = 0; get_user_weapons(id,weaponsList,weaponsNum); for (new i;i < weaponsNum;i++) { if(((1 << currWeaponID) & PRIMARY_WEAPONS_BITSUM && (1 << weaponsList[i]) & PRIMARY_WEAPONS_BITSUM) | ((1 << currWeaponID) & SECONDARY_WEAPONS_BITSUM && (1 << weaponsList[i]) & SECONDARY_WEAPONS_BITSUM)) { get_weaponname(weaponsList[i],weaponName,charsmax(weaponName)); engclient_cmd(id,"drop",weaponName); } } } fm_give_item(id,currWeaponName); cs_set_user_bpammo(id,currWeaponID,ammoAmount); } public VipConnectNotice(id) { chat_message(0, 5); client_cmd(0,"spk ^"%s^"", VIPCONNECTED_SOUND); } stock chat_message(id, message=0) { switch(message) { case 0: client_print_color(id, 0, "%s Оружия доступны только с^3 %d ^4раунда!", CHATTAG, VIPROUND); case 1: client_print_color(id, 0, "%s Вы ^3уже брали ^4оружие в этом раунде!", CHATTAG); case 2: client_print_color(id, 0, "%s Разминочный раунд. ^3Запрещено ^4пользоваться командой!", CHATTAG); case 3: client_print_color(id, 0, "%s Для использования данной команды вы должны быть ^3живы^4!", CHATTAG); case 4: client_print_color(id, 0, "%s ^3Только VIP-игрок ^4может пользоваться этой командой!", CHATTAG); case 5: { new name[32]; get_user_name(id, name, charsmax(name)); client_print_color(id, 0, "%s На сервер зашёл ^3VIP клиент ^1%s", CHATTAG, name); } case 6: client_print_color(id, 0, "%s Данное оружие доступно только с^3 %d ^4раунда!", CHATTAG, AWPM249RND); } return 1 } bool:is_allow_use(id) { if(!is_user_vip(id)) { chat_message(id, 4); return false; } if(!is_user_alive(id)) { chat_message(id, 3); return false; } if(!g_roundCount) { chat_message(id, 2); return false; } if(iUseWeapon[id]) { chat_message(id, 1); return false; } if(g_roundCount < VIPROUND) { chat_message(id, 0); return false; } return true; } #if defined VIPTAB public MessageScoreAttrib(iMsgId, iDest, iReceiver) { static id; id = get_msg_arg_int(1); if(is_user_vip(id) && !get_msg_arg_int(2)) { set_msg_arg_int(2, ARG_BYTE, 4); } } #endif |
CSGOLDPUBLIC |
| 24.6.2015, 21:31 |
OpenGL Detector BETA by Mazdan
|
Цитата(VkriterT @ 24.6.2015, 19:52)  [ 7] Orpheu RUN - orpheu_amxx_i386 v2.6.3 pl5 ANY ANY [ 1] opengl detector 0.8.16ob kanagava opengl32_0816b. running
билд 5787, у меня все отлично работает.Добавьте в тему что можно и последний орфей юзать. Protocol version 48 Exe version 1.1.2.7/Stdio (cstrike) Exe build: 11:30:00 Aug 28 2012 (5787) [12]Orpheu RUN - orpheu_amxx_i386 v2.6.3 pl1 ANY ANY [2] opengl detector 0.8.16ob kanagava opengl32_0816b. running Так же проблем не наблюдаю, все прекрасно работает. |
Bloo |
| 1.6.2015, 11:46 |
resetscore
|
Norman111, при return set_user score выходит ошибка при компиляции warning 209: функция cmdResetScore(id) должна возвращать какое-либо значение (return 1; к примеру, либо 0), ставим в конце паблика return 1 либо 0 |
Norman111 |
| 1.6.2015, 10:29 |
resetscore
|
Цитата(Norman111 @ 1.6.2015, 10:36)  Тогда set_user_score без return не может работать Все верно функция должна быть возвращена Код:
#include <amxmodx> #include <csstats_custom>
public plugin_init() { register_clcmd("say /rs", "cmdResetScore") register_clcmd("say .кы", "cmdResetScore") }
public cmdResetScore(id) { if(!is_user_connected(id)) return PLUGIN_HANDLED set_user_score(id, 0, 0) PrintChat(id, "^1[^4ResetScore^1] Счет обнулен") return 1; }
PrintChat(const iReceiver, const Msg[]) { message_begin(MSG_ONE, 76, .player=iReceiver); write_byte(iReceiver); write_string(Msg); message_end(); } |
Norman111 |
| 1.6.2015, 1:14 |
resetscore
|
Да просто убрал returnКод:
#include <amxmodx> #include <csstats_custom>
public plugin_init() { register_clcmd("say /rs", "cmdResetScore") }
public cmdResetScore(id) { set_user_score(id, 0, 0) } |
tenb63rus |
| 7.5.2015, 15:36 |
Варнинг при компиляции
|
YrkinSon, координату x измени, -2 не может быть |
YrkinSon |
| 19.4.2015, 13:11 |
Модификация админ вгк
|
Цитата([0]x[0] @ 19.4.2015, 14:03)  Код:
#include <amxmodx> #include <amxmisc> #include <cstrike> #include <fun> const PRIMARY_WEAPONS_BIT_SUM = (1<<CSW_SCOUT)|(1<<CSW_XM1014)|(1<<CSW_MAC10)|(1<<CSW_AUG)|(1<<CSW_UMP45)|(1<<CSW_SG550)|(1<<CSW_GALIL)|(1<<CSW_FAMAS) |(1<<CSW_AWP)|(1<<CSW_MP5NAVY)|(1<<CSW_M249)|(1<<CSW_M3)|(1<<CSW_M4A1)|(1<<CSW_TMP)|(1<<CSW_G3SG1)|(1<<CSW_SG552)|(1<<CSW_AK47)|(1<<CSW_P90) public plugin_init() { register_plugin("Admins are VIP's + grenades + kevlar", "1.0", "Eg@r4$il{") register_event("ResetHUD", "ResetHUD", "be") } public ResetHUD(id) { set_task(0.5, "VIP", id + 6910) } public VIP(TaskID) { new id = TaskID - 6910 if (is_user_admin(id)) { message_begin(MSG_ALL, get_user_msgid("ScoreAttrib")) write_byte(id) write_byte(4) message_end() strip_user_weapons(id) give_item(id,"weapon_hegrenade") give_item(id,"weapon_flashbang") give_item(id,"weapon_flashbang") drop_weapons(id, 1) give_item(id, "weapon_deagle") give_item(id, "weapon_knife") give_item(id, "ammo_50ae") give_item(id, "ammo_50ae") give_item(id, "ammo_50ae") give_item(id, "ammo_50ae") give_item(id, "ammo_50ae") give_item(id,"item_assaultsuit") cs_set_user_money(id, 800) } return PLUGIN_HANDLED } stock drop_weapons(id, dropwhat) { static weapons[32], num, i, weaponid num = 0 get_user_weapons(id, weapons, num) for (i = 0; i < num; i++) { weaponid = weapons[i] if (dropwhat == 1 && ((1<<weaponid) & PRIMARY_WEAPONS_BIT_SUM)) { static wname[32] get_weaponname(weaponid, wname, sizeof wname - 1) engclient_cmd(id, "drop", wname) } } }
В таком виде: admin_vgk.sma(6) : error 010: invalid function or declaration admin_vgk.sma(58) : error 017: undefined symbol "PRIMARY_WEAPONS_BIT_SUM" 2 Errors. Could not locate output file admin_vgk.amx (compile failed). [attachment=32763:admin_vgk.sma] |
[0]x[0] |
| 12.4.2015, 14:43 |
С праздником #2
|
С праздником всех, уважайте и помогайте друг другу.  Всем добра |
damilurg, Scalario |
| 28.3.2015, 10:54 |
Steam Bonus
|
Andrey777best, проверь. Код:
#include <amxmodx> #include <fun> #include <cstrike> #include <hamsandwich>
#if AMXX_VERSION_NUM < 183 || defined NO_NATIVE_COLORCHAT #include <colorchat> #endif
#pragma semicolon 1
#define PLUGIN "Steam Bonus" #define VERSION "1.2" #define AUTHOR "Stimul" #define PREFIX "^1[^4|18+|Сервер^1]"
#define get_bit(%1,%2) (%1 & (1 << (%2 & 31))) #define set_bit(%1,%2) (%1 |= (1 << (%2 & 31))) #define reset_bit(%1,%2) (%1 &= ~(1 << (%2 & 31)))
#define NUM_MONEY 500 // Количество денег
new g_bIsConnected; new g_bIsSteam; new g_bProcedure; new g_RoundCount;
public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR); RegisterHam(Ham_CS_RoundRespawn, "player", "fw_CS_RoundRespawn_Post", true); register_logevent("Round_End", 2, "1=Round_End"); }
public Round_End(){ g_RoundCount++; }
public client_putinserver(id) { set_bit(g_bIsConnected, id); if(is_user_steam(id)) { set_bit(g_bIsSteam, id); reset_bit(g_bProcedure, id); } else reset_bit(g_bIsSteam, id); }
public client_disconnect(id) reset_bit(g_bIsConnected, id);
public fw_CS_RoundRespawn_Post(id) { if(get_bit(g_bIsConnected, id) && get_bit(g_bIsSteam, id) && g_RoundCount > 3) { if(!get_bit(g_bProcedure, id)) { cs_set_user_money(id, cs_get_user_money(id) + NUM_MONEY); client_print_color(id, 0, "%s ^1Ты получаешь бонус за STEAM: ^4'%d$'", PREFIX, NUM_MONEY); set_bit(g_bProcedure, id); } else { give_item(id, "weapon_hegrenade"); give_item(id, "weapon_flashbang"); cs_set_user_bpammo(id, CSW_FLASHBANG, 2); give_item(id, "weapon_smokegrenade"); client_print_color(id, 0, "%s ^1Ты получаешь бонус за STEAM: ^4'все гранаты'", PREFIX); reset_bit(g_bProcedure, id); } } }
stock bool:is_user_steam(id) { static dp_pointer; if(dp_pointer || (dp_pointer = get_cvar_pointer("dp_r_id_provider"))) { server_cmd("dp_clientinfo %d", id); server_exec(); return (get_pcvar_num(dp_pointer) == 2) ? true : false; } new szAuthid[34]; get_user_authid(id, szAuthid, charsmax(szAuthid)); return (containi(szAuthid, "LAN") < 0); } |
Andrey777best |
| 28.3.2015, 9:10 |
Steam Bonus
|
Andrey_iokhin, пробуй Код:
#include <amxmodx> #include <fun> #include <cstrike> #include <hamsandwich> #include <dhudmessage>
#if AMXX_VERSION_NUM < 183 #include <colorchat> #endif
#pragma semicolon 1
#define PLUGIN "Steam Bonus" #define VERSION "1.2" #define AUTHOR "Stimul" #define PREFIX "[Steam бонус]"
#define get_bit(%1,%2) (%1 & (1 << (%2 & 31))) #define set_bit(%1,%2) (%1 |= (1 << (%2 & 31))) #define reset_bit(%1,%2) (%1 &= ~(1 << (%2 & 31)))
// Цвет DHUD сообщения #define COLOR_RED random(255) // Количество красного цвета #define COLOR_GREEN random(255) // Количество зелёного цвета #define COLOR_BLUE random(255) // Количество синего цвета
#define TIME 5.0 // Время показа
#define NUM_MONEY 1000 // Количество денег
new g_bIsConnected; new g_bIsSteam; new g_bProcedure; new g_RoundCount;
public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR); RegisterHam(Ham_CS_RoundRespawn, "player", "fw_CS_RoundRespawn_Post", true); register_logevent("Round_End", 2, "1=Round_End"); }
public Round_End() { g_RoundCount++; }
public client_putinserver(id) { set_bit(g_bIsConnected, id); if(is_user_steam(id)) { set_bit(g_bIsSteam, id); reset_bit(g_bProcedure, id); set_task(3.0, "WelcomeMessage", id); } else reset_bit(g_bIsSteam, id); }
public client_disconnect(id) reset_bit(g_bIsConnected, id);
public WelcomeMessage(id) { if(get_bit(g_bIsConnected, id)) { static szName[32]; get_user_name(id, szName, charsmax(szName)); set_dhudmessage(COLOR_RED, COLOR_GREEN, COLOR_BLUE, -1.0, 0.3, 0, 0.0, TIME); show_dhudmessage(id, "Привет, %s!", szName); set_dhudmessage(COLOR_RED, COLOR_GREEN, COLOR_BLUE, -1.0, 0.34, 0, 0.0, TIME); show_dhudmessage(id, "У тебя Steam, поэтому каждый раунд ты будешь получать бонусы"); } }
public fw_CS_RoundRespawn_Post(id) { if(get_bit(g_bIsConnected, id) && get_bit(g_bIsSteam, id) && g_RoundCount > 3) { if(!get_bit(g_bProcedure, id)) { cs_set_user_money(id, cs_get_user_money(id) + NUM_MONEY); client_print_color(id, 0, "^3%s ^1Ты получаешь бонус: ^4'%d$'", PREFIX, NUM_MONEY); set_bit(g_bProcedure, id); } else { give_item(id, "weapon_hegrenade"); give_item(id, "weapon_flashbang"); cs_set_user_bpammo(id, CSW_FLASHBANG, 2); give_item(id, "weapon_smokegrenade"); client_print_color(id, 0, "^3%s ^1Ты получаешь бонус: ^4'все гранаты'", PREFIX); reset_bit(g_bProcedure, id); } }
}
stock bool:is_user_steam(id) { static dp_pointer; if(dp_pointer || (dp_pointer = get_cvar_pointer("dp_r_id_provider"))) { server_cmd("dp_clientinfo %d", id); server_exec(); return (get_pcvar_num(dp_pointer) == 2) ? true : false; } new szAuthid[34]; get_user_authid(id, szAuthid, charsmax(szAuthid)); return (containi(szAuthid, "LAN") < 0); }
|
Andrey_iokhin |
|