Иконка ресурса

WeaponFramework 1.0.0

Нет прав для скачивания
Сообщения
198
Реакции
273
Помог
5 раз(а)
BoecSpecOPs добавил(а) новый ресурс:

WeaponFramework 1.0.0 - Позволяет проще описывать поведение оружия

Цель этой разработки - упростить написание плагинов оружия путём стандартизации методов, выноса большого количества одинакового кода в отдельные методы, и в последствии, увеличить читаемость кода.

Данный фреймворк (набор заголовочных файлов) имеет все необходимые методы для создания оружия и включает в себя:
- Базовую структуру оружия
- Парсер конфига (задаёт значения в базовой структуре)
- "Динамическое" обнаружение функций обратного вызова
- Прекешер ресурсов
- Сокрытие "типичного"...
Узнать больше об этом ресурсе...
 
Сообщения
2,722
Реакции
2,997
Помог
60 раз(а)
Salvatore, Благодарю, внесли коррективы в описание. :ok:
 
Сообщения
6
Реакции
7
Думаю, вы не против, если я Вам немного помогу.
  1. Первое, на что хотелось бы обратить Ваше внимание - это как раз тот самый Settings API. На мой взгляд, не лучший вариант на сегодняшний день. При каждом обращении к функциям чтения/записи той или иной секции/ключа из конфигурации, файл будет повторно открываться, происходить чтение и закрываться. Причем 90% функций этой утилиты читают файл по несколько раз в каждой функции для всех действий: поиск секции, поиск ключа, получение/установка значения.
  2. Не используйте в заголовочных файлах глобальные переменные, которые по логике кода являются константными, через оператор new. Достаточно просто const, чтобы разработчики, использующие Вашу утилиту не столкнулись с кучей предупреждений от компилятора о том, что создана переменная, но она не используется в коде, т.к. функции использующие их являются стоковыми.
  3. Советую всегда в заголовочных файлах завершать выражения точкой с запятой. Многие разработчики (скриптеры) на Pawn, да и я, признаться, тоже, используют #pragma semicolon 1, при подключении заголовочных файлов, в которых присутствуют какие-то выражения (глобальные), мы получим ошибку expected token: ";".
  4. Подключать заголовочный файл amxmodx в заголовочных файлах нет необходимости.
 
Сообщения
198
Реакции
273
Помог
5 раз(а)
Salvatore, спасибо за отзыв, я приму к сведению для следующих разработок эти сведения.
Теперь по пунктам:
1) Об этом я не знал, но благо оно читает конфиги только раз, во время инициализации. Я подумаю как можно ещё читать конфиги, ибо квары не лучший вариант, т.к. они по-сути задают характеристики более глобально (для каждого оружия делать свои квары - характерный вопрос).
2) Хорошее замечание, посмотрю, можно ли будет опустить new у констант (у строковых вроде возникали проблемы).
3) Блъ, придётся весь код перелопачивать :C
4) Даже если там используются методы amxmodx? У меня выбрасывало с ошибкой во время компилирования, буду у рабочего компа, потестирую.
 
Сообщения
2,491
Реакции
2,791
Помог
61 раз(а)
Об этом я не знал, но благо оно читает конфиги только раз, во время инициализации. Я подумаю как можно ещё читать конфиги, ибо квары не лучший вариант, т.к. они по-сути задают характеристики более глобально (для каждого оружия делать свои квары - характерный вопрос).
В AMXX 1.8.3 есть https://dev-cs.ru/amxx/textparse_ini/inc. Но чесно говоря мне он не очень понравился. Потому я предпочитаю по старинке читать ини файл самому
Хорошее замечание, посмотрю, можно ли будет опустить new у констант (у строковых вроде возникали проблемы).
Можно еще stock для переменных использовать
 

Пользователи, просматривающие эту тему

Сейчас на форуме нет ни одного пользователя.
Сверху Снизу