В теме 21 сообщение

По заявке пользователя @Drummer1993 выкладываю готовое решение по созданию так называемой системы префиксов. Перейдем сразу к делу. 

Ко всем new: 

//в enum с данными о игроке
prefix[50],

Внимание! Далее, из-за слишком большого числа зависимостей, вместо prefix[playerid] и prefix[params[0]] название своего массива с данными о игроке. Например, у нас это PlayerInfo. Тогда необходимо использовать: 
PlayerInfo[playerid][prefix] и PlayerInfo[params[0]][prefix] соответственно. 
При возникновении трудностей, пишите в ЭТУ тему. 

Ко всем командам: 
 

Спойлер

CMD:setprefix(playerid, params[])
{
	//проверки на статус игрока. Например, на уровень администратора. Если проверок нет, удалите эту строку. 
	if(sscanf(params, "us[50]", params[0], params[1])) return SendClientMessage(playerid, -1, "Введите: /setprefix [playerid] [new prefix]");
	prefix[params[0]] = EOS; 
	strcat(prefix[params[0]], params[1]); 
	SendClientMessage(playerid, -1, !"Вы успешно выдали префикс игроку!");
	return true; 
}

 

В OnPlayerDisconnect <ИЛИ> в OnPlayerConnect: 
 

prefix[playerid] = EOS; 

Вот, собственно, "скелет" системы. Так как все моды разные, белые и красные, вам нужно подстраивать под свой. Необходимо сделать сохранение, а также вывод туда, куда вам нужно. Если не получается сделать это самим, пишите, поможем ;)

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Drummer1993
Постоянный

Все получилось огромное спасибо )))))) 

Заметка от RASTAMAN , создано

можно поблагодарить автора +

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Максимкин
Новичок

Спасибо,сейчас опробую!

Отредактировано пользователем Максимкин

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
KRESTOVSKIY
Новичок

@DEST Я вообще не понял как устанавливать.

Я не много разбираюсь в PAWNO , но тут реально не понятно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

@KRESTOVSKIY ну если вы разбираетесь только на уровне открыть программу и нажать F5, то этого недостаточно. Если у вас будет какой-то конкретный вопрос, обращайтесь в соответствующий раздел. Если хотите чтобы все сделали за вас, то вам сюда: https://pawno-rus.ru/freelancers/zapisi 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Камерончик
Новичок

У меня похожая команда есть в моде. Только мне ещё нужен выбор цвета префикса. Если скину код команды - подскажите?

Отредактировано пользователем Камерончик

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
FernandoW
Новичок

Здравствуйте , у меня выскакивают ошибки C:

Спойлер

\Users\1\Desktop\Èëüÿ è Ëåøà\SERVERS\Full RP\project\gamemodes\NVE-GM.pwn(28942) : error 028: invalid subscript (not an array or too many subscripts): "prefix"
C:\Users\1\Desktop\Èëüÿ è Ëåøà\SERVERS\Full RP\project\gamemodes\NVE-GM.pwn(28942) : warning 215: expression has no effect
C:\Users\1\Desktop\Èëüÿ è Ëåøà\SERVERS\Full RP\project\gamemodes\NVE-GM.pwn(28942) : error 001: expected token: ";", but found "]"
C:\Users\1\Desktop\Èëüÿ è Ëåøà\SERVERS\Full RP\project\gamemodes\NVE-GM.pwn(28942) : error 029: invalid expression, assumed zero
C:\Users\1\Desktop\Èëüÿ è Ëåøà\SERVERS\Full RP\project\gamemodes\NVE-GM.pwn(28942) : fatal error 107: too many error messages on one line

Спойлер

 

CMD:o(playerid, params[])
{
    if(IsAdmin(playerid, 3)) return 1;
    if(sscanf(params, "s[140]", params[0])) return SCM(playerid, COLOR_WHITE, "Èñïîëüçóéòå: /o [òåêñò]");
       format:str_cmd( "Àäìèíèñòðàòîð %s: %s",pInfo[playerid][prefix], params[0]);
    SendClientMessageToAll(COLOR_YELLOW,str_cmd);
    return 1;
}

CMD:setprefix(playerid, params[])
{
    if(IsAdmin(playerid, 7)) return 1;
    if(sscanf(params, "us[50]", params[0], params[1])) return SendClientMessage(playerid, -1, "Use: /setprefix [playerid] [new prefix]");
    if( !IsPlayerLogged( params[0] ) ) return SCM( playerid, COLOR_DARK_GRAY, !INCORRECT_PLAYER_ID );
    prefix[params[0]] = EOS;
    strcat(prefix[params[0]], params[1]);
    SendClientMessage(playerid, -1, !"Prefix given!");
    return true;
}

 

 

помогите , что делать?

Отредактировано пользователем DEST

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

@FernandoW 

21 час назад, FernandoW сказал:

prefix[params[0]]

нужно заменить на 

21 час назад, FernandoW сказал:

pInfo[params[0]][prefix]

как это сделано у вас раньше

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
FernandoW
Новичок
1 час назад, DEST сказал:

@FernandoW 

нужно заменить на 

как это сделано у вас раньше

В какой строчке именно это заменить?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

@FernandoW в которой это написано, в команде setprefix. Какая она у вас в моде я не знаю, Вы не пометили строчки, в которых ошибки. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
FernandoW
Новичок
2 часа назад, DEST сказал:

@FernandoW в которой это написано, в команде setprefix. Какая она у вас в моде я не знаю, Вы не пометили строчки, в которых ошибки. 

Спойлер

CMD:o(playerid, params[])
{
    if(IsAdmin(playerid, 3)) return 1;
    if(sscanf(params, "s[140]", params[0])) return SCM(playerid, COLOR_WHITE, "Èñïîëüçóéòå: /o [òåêñò]");
       format:str_cmd( "Àäìèíèñòðàòîð %s: %s",pInfo[playerid][prefix], params[0]);
    SendClientMessageToAll(COLOR_YELLOW,str_cmd);
    return 1;
}

CMD:setprefix(playerid, params[])
{
    if(IsAdmin(playerid, 7)) return 1;
    if(sscanf(params, "us[50]", params[0], params[1])) return SendClientMessage(playerid, -1, "Use: /setprefix [playerid] [new prefix]");
    if( !IsPlayerLogged( params[0] ) ) return SCM( playerid, COLOR_DARK_GRAY, !INCORRECT_PLAYER_ID );
    prefix[params[0]] = EOS;     ТУТ ОШИБКА
    strcat(prefix[params[0]], params[1]);       И ТУТ
    SendClientMessage(playerid, -1, !"Prefix given!");
    return true;
}

 

 

Отредактировано пользователем DEST

Заметка от DEST , создано

3.2. Код больше 10 строк необходимо брать в теги "Код" и "Спойлер". Как это сделать рассказано в разделе "FAQ".

Устное предупреждение.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
FernandoW
Новичок
1 минуту назад, DEST сказал:

@FernandoW вот в этих строчках и замените

Заменил , на сервере пишу в /o , пишет "Администратор : И тут текст. Префикс не пишется

Отредактировано пользователем FernandoW

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В конце темы и указано, что это только скелет системы, нужно еще дорабатывать под лично свой мод, т.к. в SAMP практически все моды сделаны в виде одного файла без возможности подключения изолированных друг от друга модулей. 

В 23.10.2017 в 21:30, DEST сказал:

Необходимо сделать сохранение, а также вывод туда, куда вам нужно.

@FernandoW 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
𝙡𝙖𝙨𝙩 𝙚𝙢𝙥𝙚𝙧𝙤𝙧.
Создатель WayDev

@DEST, люди не хотят думать. Привыкли, что всё всегда за них делают. Это не как раньше, пытались на основе чего-то сделать сами.

Заметка от DEST , создано

2.17. Запрещено флудить, оффтопить, заниматься флеймом. 

Устное предупреждение.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Гость 123
Новичок

Помогите умоляю:
 

:\EGOR\23\mod\1\gamemodes\new.pwn(4046) : error 028: invalid subscript (not an array or too many subscripts): "prefix"
D:\EGOR\23\mod\1\gamemodes\new.pwn(4046) : warning 215: expression has no effect
D:\EGOR\23\mod\1\gamemodes\new.pwn(4046) : error 001: expected token: ";", but found "]"
D:\EGOR\23\mod\1\gamemodes\new.pwn(4046) : error 029: invalid expression, assumed zero
D:\EGOR\23\mod\1\gamemodes\new.pwn(4046) : fatal error 107: too many error messages on one line

Compilation aborted.

Pawn compiler 3.10.4              Copyright (c) 1997-2006, ITB CompuPhase


4 Errors.

Строка:prefix[playerid] = EOS;

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!


Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.


Войти

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

  • Похожий контент

    • Helados
      От Helados
      Короче, мы протестировали наш GTA на другом хостинге — голосовой чат там работает, всё включается нормально. Также проверили на другом хостинге с нашим игровым модом — voice chat тоже работает.
      Но на нашем личном хостинге, который мы купили на OVH и установили панель, не получается запустить голосовой чат. Похоже, проблема связана с портами. После перезапуска сервер почему-то случайным образом выбирает порты сам и мы не можем это исправить.
      Если кто-то знает человека, который может помочь разобраться с этой проблемой, буду благодарен.
    • тимормо
      От тимормо
      Копия Diamond RP (основа State 99)
      Скачать файл Мод DIAMOND RP (ver. 1.0)
      Основа: State 99
      Автор мода: #TomSnow
      Вопросы/Баги: https://vk.com/etalon_dev
       
      Приветствую всех! На связи #TomSnow
       
      Я принял решение начать поэтапную разработку и восстановление легендарного мода Diamond RolePlay образца 2015–2017 годов, взяв за основу мод State 99 (оригинальная основа DRP).
       
      Каждая новая версия разрабатываемого мода будет публиковаться в открытом доступе для всех участников и подписчиков сообщества (https://vk.com/etalon_dev). Это позволит вам не только следить за процессом разработки, но и принимать непосредственное участие в развитии проекта: тестировать обновления, находить баги, сообщать о недоработках и помогать делать мод максимально качественным и стабильным.
       
      Если вам интересна данная тематика и вы хотите наблюдать за ходом разработки, подписывайтесь на нашу группу ВКонтакте (https://vk.com/etalon_dev) и ожидайте публикацию версий проекта.
       
      Спасибо всем за поддержку! Впереди нас ждёт много интересной работы и возвращение атмосферы классического Diamond RolePlay. 
       
      Информация о моде:
       
      Версия MySQL R 39-6
      Античит Nex-AC (Доработанный)
      Стример Streamer Plugin v2.9.4
      Командный процессор Pawn CMD
       
      Список обновлений мода
       
       
      Добавил тимормо Добавлено 07/15/26 Категория Моды Автор #TomSnow  
    • тимормо
      От тимормо
      Мод DIAMOND RP (ver. 1.0)
      Основа: State 99
      Автор мода: #TomSnow
      Вопросы/Баги: https://vk.com/etalon_dev
       
      Приветствую всех! На связи #TomSnow
       
      Я принял решение начать поэтапную разработку и восстановление легендарного мода Diamond RolePlay образца 2015–2017 годов, взяв за основу мод State 99 (оригинальная основа DRP).
       
      Каждая новая версия разрабатываемого мода будет публиковаться в открытом доступе для всех участников и подписчиков сообщества (https://vk.com/etalon_dev). Это позволит вам не только следить за процессом разработки, но и принимать непосредственное участие в развитии проекта: тестировать обновления, находить баги, сообщать о недоработках и помогать делать мод максимально качественным и стабильным.
       
      Если вам интересна данная тематика и вы хотите наблюдать за ходом разработки, подписывайтесь на нашу группу ВКонтакте (https://vk.com/etalon_dev) и ожидайте публикацию версий проекта.
       
      Спасибо всем за поддержку! Впереди нас ждёт много интересной работы и возвращение атмосферы классического Diamond RolePlay. 
       
      Информация о моде:
       
      Версия MySQL R 39-6
      Античит Nex-AC (Доработанный)
      Стример Streamer Plugin v2.9.4
      Командный процессор Pawn CMD
       
      Список обновлений мода
       
       
    • x4reo
      От x4reo
      EPOCH ROLE PLAY | ВОЗВРАЩЕНИЕ В 90-Е Создаем атмосферный Full RP проект без «фарма» и лишней «дичи»     О ПРОЕКТЕ Epoch Role Play — это площадка для тех, кто ценит качество, а не статистику. Мы строим живой мир, где каждое действие имеет последствия, а экономика строится на социальном взаимодействии.   КОГО МЫ ИЩЕМ? • Lead Developer (Pawn/C#/JS): Создание ядра мода, БД, оптимизация. • Mapper/Level Designer: Создание аутентичных интерьеров 90-х. • Game Designer: Проработка ролевых правил и сценариев. • SMM-менеджер: Ведение соцсетей, создание контента. • Дизайнер: Оформление медиа и UI проекта. • Discord-архитектор: Настройка каналов и безопасности. • Web-разработчик: Сайт и форум проекта. • Bot-developer (VK/TG): Безопасность: 2FA, привязка аккаунтов.   НАШИ УСЛОВИЯ 1. Энтузиазм: Проект стартует без бюджета. Мы ищем единомышленников. 2. Соавторство: Каждый участник — полноценный совладелец проекта. 3. Партнерство: Вся прибыль от монетизации распределяется пропорционально вкладу.     КОНТАКТЫ ДЛЯ СВЯЗИ Telegram: x4reoo