Правила форума Гаранты форума
Размещение рекламы AMX-X компилятор

Здравствуйте, гость Вход | Регистрация

Наши новости:

14-дек
24-апр
10-апр
11-апр

Shopmenu3

, Нужен скриптер
Статус пользователя evgen4uk
сообщение 15.10.2015, 19:00
Сообщение #1
Стаж: 11 лет

Сообщений: 234
Благодарностей: 13
Полезность: < 0

Приветствую скриптеры. Плагин в открытом доступе
посмотреть плагин
http://cscontrol.ru/load/3-1-0-1678
Проблема в том что доступ к меню имеют все игроки, а мне нужно сделать так чтобы меню открывалось только у випов по флагу определенному. Кто может помочь в данном вопросе, отпишитесь здесь, или добавьте в скайп, я думаю там будет быстрее, скайп - evgen201046 обязательно с пометкой "shopmenu" иначе не добавляю. Естественно за отдельную плату, обговорим по факту сделки.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Статус пользователя ThisIsSparta
сообщение 15.10.2015, 19:07
Сообщение #2
Стаж: 11 лет

Сообщений: 566
Благодарностей: 307
Полезность: 600

evgen4uk, скинь исходник, сделаю бесплатно
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Vaqtincha
сообщение 15.10.2015, 19:10
Сообщение #3
Стаж: 11 лет

Сообщений: 981
Благодарностей: 352
Полезность: < 0

добавьте меня в одноклассниках я помогу. там еще быстрее

Отредактировал: Vaqtincha, - 15.10.2015, 19:11
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя evgen4uk
сообщение 15.10.2015, 19:22
Сообщение #4
Стаж: 11 лет

Сообщений: 234
Благодарностей: 13
Полезность: < 0

Цитата(ThisIsSparta @ 15.10.2015, 20:02) *
evgen4uk, скинь исходник, сделаю бесплатно

дело в том что там несколько плагинов и какой из них исходник тебе кидать я не знаю, я выложил ссылку специально для этого, скачай и посмотри пожалуйста.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя coca-cola :)
сообщение 15.10.2015, 19:29
Сообщение #5


Иконка группы

Стаж: 12 лет
Город: Москва

Сообщений: 1306
Благодарностей: 1031
Полезность: 1247

Меценат Меценат

Вот исходник:
Код:
#include <amxmodx>
#include <amxmisc>
#include <string>
#include <file>
#include <amxconst>
#include <float>


#pragma semicolon 1


#define PLUGIN "CSSB Shop3"
#define VERSION "1.0"
#define AUTHOR "CSSB"

#define MAX_MENU 30
#define MAX_ARG 30

//Client Menus
new szNameMenu_Client[MAX_MENU][256] ;
new szCmdMenu_Client[MAX_MENU][MAX_ARG] [256];
new szSubMenu_Client[MAX_MENU][MAX_ARG][256];
new szFlagsMenu_Client[MAX_MENU][MAX_ARG][256];
new idMainMenu_Client[MAX_MENU] = 0;
new iMenuClientNum = 0;


public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR);

register_clcmd("say shop3", "cssbDisplayClientMenu");
register_clcmd("say /shop3", "cssbDisplayClientMenu");
register_clcmd("shop3", "cssbDisplayClientMenu");

cssbBuildClientMenu();
}


//------------Client Menus-------------------------------------------------------
public cssbDisplayClientMenu(id)
{
menu_display( id, idMainMenu_Client[1], 0);

return PLUGIN_HANDLED;
}

cssbBuildClientMenu()
{

new szNameFileread[256] = "addons/amxmodx/configs/conf_shop3.ini";


if(file_exists(szNameFileread) == 1)
{
new iLine = 0;
new szDataString[256] = "\0";
new iLengthText = 0;
new szTypeSection[32];
new iNumItem = 0;

while((iLine =read_file(szNameFileread,iLine,szDataString,255,iLengthText))!=0)
{
if(equali(szDataString,";",1) || equali(szDataString,"//",2) || (strlen(szDataString) == 0) )
continue;

new szLeft[256];
new szRight[256];
split(szDataString, szLeft, 255, szRight, 255, "=");

copy(szTypeSection,31,szLeft);

if(equali(szTypeSection,"[MENU]",6))
{
iNumItem = 0;
iMenuClientNum +=1;

while(strlen(szRight))
{
split(szRight, szLeft, 255, szRight, 255, "^"");

if(!equali(szLeft," ",1))
{
copy(szNameMenu_Client[iMenuClientNum],127,szLeft);

}
}

idMainMenu_Client[iMenuClientNum] = menu_create(szNameMenu_Client[iMenuClientNum], "cssbMenuHandlerClient");
}

if(equali(szTypeSection,"[SUB]",5))
{
iNumItem += 1;
new iArg = 0;

while(strlen(szRight))
{
split(szRight, szLeft, 255, szRight, 255, "^"");

if(!equali(szLeft," ",1))
{
iArg += 1;

switch(iArg)
{
case 1:
{

new szItem[32];
format(szItem,31,"%d",iNumItem);
menu_additem(idMainMenu_Client[iMenuClientNum], szLeft,szItem,0, -1);
copy(szSubMenu_Client[iMenuClientNum][iNumItem],127,szLeft);
}

case 2:
{
copy(szCmdMenu_Client[iMenuClientNum][iNumItem],127,szLeft);
}

case 3:
{
copy(szFlagsMenu_Client[iMenuClientNum][iNumItem],127,szLeft);

iArg = 0;
}

}


}

}

}

}
}
}

public cssbMenuHandlerClient(id, menu, item)
{
if (item == MENU_EXIT)
return PLUGIN_HANDLED;

new cmd[6], szItemName[64];
new access, callback;
menu_item_getinfo(menu, item, access, cmd,5, szItemName, 63, callback);

new iChoice = str_to_num(cmd);

new iMenu = 1;
new iIndexMenu = 1;
for(new i = 1;i <= iMenuClientNum; i++)
{
if(idMainMenu_Client[i] == menu)
{
iMenu = menu;
iIndexMenu = i;
}
}

for(new iNumArg = 1;iNumArg <= MAX_ARG; iNumArg++)
{


if(iChoice == iNumArg)
{
if(equali(szSubMenu_Client[iIndexMenu][iChoice],szItemName,32))
{

new bitFlags = read_flags(szFlagsMenu_Client[iIndexMenu][iChoice]);



if (bitFlags & 4)
client_cmd(id, "^"%s^"", szCmdMenu_Client[iIndexMenu][iChoice]);

if (bitFlags & 8)
{

new iPage = floatround(float(item / 7), floatround_method);

menu_display(id, iMenu,iPage);

}


if(equali(szFlagsMenu_Client[iIndexMenu][iChoice],"menu",32))
{
for(new iIn = 1;iIn <= iMenuClientNum;iIn++)
{
if(equali(szCmdMenu_Client[iIndexMenu][iChoice],szNameMenu_Client[iIn],32))
menu_display(id, idMainMenu_Client[iIn], 0);
}
}
}
}
}

return PLUGIN_HANDLED;
}
//------------Client Menus-------------------------------------------------------
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя evgen4uk
сообщение 15.10.2015, 20:02
Сообщение #6
Стаж: 11 лет

Сообщений: 234
Благодарностей: 13
Полезность: < 0

Цитата(coca-cola :) @ 15.10.2015, 20:25) *
Вот исходник:
Код:
#include <amxmodx>
#include <amxmisc>
#include <string>
#include <file>
#include <amxconst>
#include <float>


#pragma semicolon 1


#define PLUGIN "CSSB Shop3"
#define VERSION "1.0"
#define AUTHOR "CSSB"

#define MAX_MENU 30
#define MAX_ARG 30

//Client Menus
new szNameMenu_Client[MAX_MENU][256] ;
new szCmdMenu_Client[MAX_MENU][MAX_ARG] [256];
new szSubMenu_Client[MAX_MENU][MAX_ARG][256];
new szFlagsMenu_Client[MAX_MENU][MAX_ARG][256];
new idMainMenu_Client[MAX_MENU] = 0;
new iMenuClientNum = 0;


public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR);

register_clcmd("say shop3", "cssbDisplayClientMenu");
register_clcmd("say /shop3", "cssbDisplayClientMenu");
register_clcmd("shop3", "cssbDisplayClientMenu");

cssbBuildClientMenu();
}


//------------Client Menus-------------------------------------------------------
public cssbDisplayClientMenu(id)
{
menu_display( id, idMainMenu_Client[1], 0);

return PLUGIN_HANDLED;
}

cssbBuildClientMenu()
{

new szNameFileread[256] = "addons/amxmodx/configs/conf_shop3.ini";


if(file_exists(szNameFileread) == 1)
{
new iLine = 0;
new szDataString[256] = "\0";
new iLengthText = 0;
new szTypeSection[32];
new iNumItem = 0;

while((iLine =read_file(szNameFileread,iLine,szDataString,255,iLengthText))!=0)
{
if(equali(szDataString,";",1) || equali(szDataString,"//",2) || (strlen(szDataString) == 0) )
continue;

new szLeft[256];
new szRight[256];
split(szDataString, szLeft, 255, szRight, 255, "=");

copy(szTypeSection,31,szLeft);

if(equali(szTypeSection,"[MENU]",6))
{
iNumItem = 0;
iMenuClientNum +=1;

while(strlen(szRight))
{
split(szRight, szLeft, 255, szRight, 255, "^"");

if(!equali(szLeft," ",1))
{
copy(szNameMenu_Client[iMenuClientNum],127,szLeft);

}
}

idMainMenu_Client[iMenuClientNum] = menu_create(szNameMenu_Client[iMenuClientNum], "cssbMenuHandlerClient");
}

if(equali(szTypeSection,"[SUB]",5))
{
iNumItem += 1;
new iArg = 0;

while(strlen(szRight))
{
split(szRight, szLeft, 255, szRight, 255, "^"");

if(!equali(szLeft," ",1))
{
iArg += 1;

switch(iArg)
{
case 1:
{

new szItem[32];
format(szItem,31,"%d",iNumItem);
menu_additem(idMainMenu_Client[iMenuClientNum], szLeft,szItem,0, -1);
copy(szSubMenu_Client[iMenuClientNum][iNumItem],127,szLeft);
}

case 2:
{
copy(szCmdMenu_Client[iMenuClientNum][iNumItem],127,szLeft);
}

case 3:
{
copy(szFlagsMenu_Client[iMenuClientNum][iNumItem],127,szLeft);

iArg = 0;
}

}


}

}

}

}
}
}

public cssbMenuHandlerClient(id, menu, item)
{
if (item == MENU_EXIT)
return PLUGIN_HANDLED;

new cmd[6], szItemName[64];
new access, callback;
menu_item_getinfo(menu, item, access, cmd,5, szItemName, 63, callback);

new iChoice = str_to_num(cmd);

new iMenu = 1;
new iIndexMenu = 1;
for(new i = 1;i <= iMenuClientNum; i++)
{
if(idMainMenu_Client[i] == menu)
{
iMenu = menu;
iIndexMenu = i;
}
}

for(new iNumArg = 1;iNumArg <= MAX_ARG; iNumArg++)
{


if(iChoice == iNumArg)
{
if(equali(szSubMenu_Client[iIndexMenu][iChoice],szItemName,32))
{

new bitFlags = read_flags(szFlagsMenu_Client[iIndexMenu][iChoice]);



if (bitFlags & 4)
client_cmd(id, "^"%s^"", szCmdMenu_Client[iIndexMenu][iChoice]);

if (bitFlags & 8)
{

new iPage = floatround(float(item / 7), floatround_method);

menu_display(id, iMenu,iPage);

}


if(equali(szFlagsMenu_Client[iIndexMenu][iChoice],"menu",32))
{
for(new iIn = 1;iIn <= iMenuClientNum;iIn++)
{
if(equali(szCmdMenu_Client[iIndexMenu][iChoice],szNameMenu_Client[iIn],32))
menu_display(id, idMainMenu_Client[iIn], 0);
}
}
}
}
}

return PLUGIN_HANDLED;
}
//------------Client Menus-------------------------------------------------------

это что ты уже сделал или просто выложил для человечка который просил?))
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя coca-cola :)
сообщение 15.10.2015, 20:06
Сообщение #7


Иконка группы

Стаж: 12 лет
Город: Москва

Сообщений: 1306
Благодарностей: 1031
Полезность: 1247

Меценат Меценат

evgen4uk, просто выложил исходник. сам ничего не переделывал)
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя evgen4uk
сообщение 15.10.2015, 20:07
Сообщение #8
Стаж: 11 лет

Сообщений: 234
Благодарностей: 13
Полезность: < 0

Цитата(coca-cola :) @ 15.10.2015, 21:01) *
evgen4uk, просто выложил исходник. сам ничего не переделывал)

ясно, спасибо) жду тогда от спарты результата) в долгу не останусь.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
EvilSMS
сообщение 15.10.2015, 21:14
Сообщение #9
Стаж: 10 лет

Сообщений: 1801
Благодарностей: 410
Полезность: < 0

дичь втёр не глянул исход) думал то меню wc3_shopmenu3 xD

Отредактировал: EvilSMS, - 15.10.2015, 21:19
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя panda08
сообщение 15.10.2015, 21:22
Сообщение #10


Стаж: 12 лет

Сообщений: 116
Благодарностей: 23
Полезность: 130

Код:
public cssbDisplayClientMenu(id)
{
if(get_user_flags(id) & ADMIN_IMMUNITY)
{
cssbColoredPrint(id, "^x01[^x03Shop^x01] ^x04Вы не вип!")
return
}
else
{
menu_display( id, idMainMenu_Client[1], 0);
}
return PLUGIN_HANDLED;
}


Отредактировал: panda08, - 15.10.2015, 21:24
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя rGame
сообщение 15.10.2015, 21:23
Сообщение #11
Стаж: 12 лет

Сообщений: 390
Благодарностей: 629
Полезность: 1016

Код:
#include <amxmodx>
#include <amxmisc>
#include <string>
#include <file>
#include <amxconst>
#include <float>
#include <colorchat>


#pragma semicolon 1


#define PLUGIN "CSSB Shop3"
#define VERSION "1.0"
#define AUTHOR "CSSB"

#define MAX_MENU 30
#define MAX_ARG 30

#define ACCESS ADMIN_LEVEL_H //Доступно будет для тех у кого есть флаг "t"

//Client Menus
new szNameMenu_Client[MAX_MENU][256] ;
new szCmdMenu_Client[MAX_MENU][MAX_ARG] [256];
new szSubMenu_Client[MAX_MENU][MAX_ARG][256];
new szFlagsMenu_Client[MAX_MENU][MAX_ARG][256];
new idMainMenu_Client[MAX_MENU] = 0;
new iMenuClientNum = 0;


public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR);

register_clcmd("say shop3", "cssbDisplayClientMenu");
register_clcmd("say /shop3", "cssbDisplayClientMenu");
register_clcmd("shop3", "cssbDisplayClientMenu");

cssbBuildClientMenu();
}


//------------Client Menus-------------------------------------------------------
public cssbDisplayClientMenu(id)
{
if (!(get_user_flags (id) & ACCESS)){
ColorChat(id, GREEN, "^3Нет доступа");
return PLUGIN_HANDLED;
}

menu_display( id, idMainMenu_Client[1], 0);
return 1;
}

cssbBuildClientMenu()
{

new szNameFileread[256] = "addons/amxmodx/configs/conf_shop3.ini";


if(file_exists(szNameFileread) == 1)
{
new iLine = 0;
new szDataString[256] = "\0";
new iLengthText = 0;
new szTypeSection[32];
new iNumItem = 0;

while((iLine =read_file(szNameFileread,iLine,szDataString,255,iLengthText))!=0)
{
if(equali(szDataString,";",1) || equali(szDataString,"//",2) || (strlen(szDataString) == 0) )
continue;

new szLeft[256];
new szRight[256];
split(szDataString, szLeft, 255, szRight, 255, "=");

copy(szTypeSection,31,szLeft);

if(equali(szTypeSection,"[MENU]",6))
{
iNumItem = 0;
iMenuClientNum +=1;

while(strlen(szRight))
{
split(szRight, szLeft, 255, szRight, 255, "^"");

if(!equali(szLeft," ",1))
{
copy(szNameMenu_Client[iMenuClientNum],127,szLeft);

}
}

idMainMenu_Client[iMenuClientNum] = menu_create(szNameMenu_Client[iMenuClientNum], "cssbMenuHandlerClient");
}

if(equali(szTypeSection,"[SUB]",5))
{
iNumItem += 1;
new iArg = 0;

while(strlen(szRight))
{
split(szRight, szLeft, 255, szRight, 255, "^"");

if(!equali(szLeft," ",1))
{
iArg += 1;

switch(iArg)
{
case 1:
{

new szItem[32];
format(szItem,31,"%d",iNumItem);
menu_additem(idMainMenu_Client[iMenuClientNum], szLeft,szItem,0, -1);
copy(szSubMenu_Client[iMenuClientNum][iNumItem],127,szLeft);
}

case 2:
{
copy(szCmdMenu_Client[iMenuClientNum][iNumItem],127,szLeft);
}

case 3:
{
copy(szFlagsMenu_Client[iMenuClientNum][iNumItem],127,szLeft);

iArg = 0;
}

}


}

}

}

}
}
}

public cssbMenuHandlerClient(id, menu, item)
{
if (item == MENU_EXIT)
return PLUGIN_HANDLED;

new cmd[6], szItemName[64];
new access, callback;
menu_item_getinfo(menu, item, access, cmd,5, szItemName, 63, callback);

new iChoice = str_to_num(cmd);

new iMenu = 1;
new iIndexMenu = 1;
for(new i = 1;i <= iMenuClientNum; i++)
{
if(idMainMenu_Client[i] == menu)
{
iMenu = menu;
iIndexMenu = i;
}
}

for(new iNumArg = 1;iNumArg <= MAX_ARG; iNumArg++)
{


if(iChoice == iNumArg)
{
if(equali(szSubMenu_Client[iIndexMenu][iChoice],szItemName,32))
{

new bitFlags = read_flags(szFlagsMenu_Client[iIndexMenu][iChoice]);



if (bitFlags & 4)
client_cmd(id, "^"%s^"", szCmdMenu_Client[iIndexMenu][iChoice]);

if (bitFlags & 8)
{

new iPage = floatround(float(item / 7), floatround_method);

menu_display(id, iMenu,iPage);

}


if(equali(szFlagsMenu_Client[iIndexMenu][iChoice],"menu",32))
{
for(new iIn = 1;iIn <= iMenuClientNum;iIn++)
{
if(equali(szCmdMenu_Client[iIndexMenu][iChoice],szNameMenu_Client[iIn],32))
menu_display(id, idMainMenu_Client[iIn], 0);
}
}
}
}
}

return PLUGIN_HANDLED;
}
//------------Client Menus-------------------------------------------------------


Отредактировал: rGame, - 15.10.2015, 21:27
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
EvilSMS
сообщение 15.10.2015, 21:26
Сообщение #12
Стаж: 10 лет

Сообщений: 1801
Благодарностей: 410
Полезность: < 0

panda08, дружище на счёт id ты прав а вот колоред неа) там стоки надо делать к этому колореду)
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя panda08
сообщение 15.10.2015, 21:29
Сообщение #13


Стаж: 12 лет

Сообщений: 116
Благодарностей: 23
Полезность: 130

теперь и я дич впарил crazy.gif
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
EvilSMS
сообщение 15.10.2015, 21:35
Сообщение #14
Стаж: 10 лет

Сообщений: 1801
Благодарностей: 410
Полезность: < 0

panda08, ахахх та я бля вообще не глянул чё за исход, ты правильно все сделал то есть я писал idUser а потом глянул тот исход, там эта дичь делается вот так
if(get_user_flags(id) & ADMIN_IMMUNITY)
{
//тут можно не чего не делать :) ну или в принтчат внести
}
или просто

if(get_user_flags(id) & ADMIN_IMMUNITY)
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя evgen4uk4
сообщение 15.10.2015, 22:27
Сообщение #15
Стаж: 11 лет

Сообщений: 46
Благодарностей: 3
Полезность: 50

rGame, почему то ошибку какую то выдает при компиляции, глянь пожалуйста что там за хрень.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя rGame
сообщение 15.10.2015, 22:33
Сообщение #16
Стаж: 12 лет

Сообщений: 390
Благодарностей: 629
Полезность: 1016

evgen4uk4, Ошибка то какая? Где компилируешь?
Cкрытый текст


Отредактировал: rGame, - 15.10.2015, 22:34
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя evgen4uk4
сообщение 15.10.2015, 22:36
Сообщение #17
Стаж: 11 лет

Сообщений: 46
Благодарностей: 3
Полезность: 50

Цитата(rGame @ 15.10.2015, 23:28) *
evgen4uk4, Ошибка то какая? Где компилируешь?
Cкрытый текст

блин, компилирую здесь в онлайн компиляторе. Слушай скинь плиз в лс amxx готовый, чтоб голову не ломать.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя rGame
сообщение 15.10.2015, 22:40
Сообщение #18
Стаж: 12 лет

Сообщений: 390
Благодарностей: 629
Полезность: 1016

evgen4uk4, Отправил.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
  Ответить в данную темуНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: