Добро пожаловать на Pro Pawn - Портал о PAWN-скриптинге.
Страница 3 из 4 ПерваяПервая 1 2 3 4 ПоследняяПоследняя
Показано с 21 по 30 из 38
  1. #21
    Аватар для Desulaid
    лесоруб продакшен

    Статус
    Оффлайн
    Регистрация
    15.03.2015
    Адрес
    Slobodskoy
    Сообщений
    667
    Репутация:
    236 ±
    Ну нужно же как-то развиваться, да и зачем вам такие директивы? Что вы на них возлагаете? Да и везде практически точка с запятой. Зачем?? Стоит такая в команда adm и ты такой - «wtf? Что это? Зачем? Удалю ка я это гавно и сделаю по своему!»

    PHP код:
    #define f( format(string, sizeof(string),
    #define GN(%1) Player[%1][pName]
    #define Kickk SetTimerEx("kick", 20, false, "i", playerid);
    #define publics%0(%1) forward%0(%1); public%0(%1)
    #define MOROZ(%0) TogglePlayerControllable(playerid, %0);
    #define com if(Login[playerid] == false) return SCM(playerid, COLOR_GREY, "Необходимо авторизоваться!");
    #define flood if(AntiFlood[playerid] > gettime()) return SCM(playerid, COLOR_RED, "Не флуди!"); AntiFlood[playerid] = gettime()+1;
    #define ESCM SCM(playerid, COLOR_GREY, "Вы не уполномочены использовать эту команду!");
    #define ISCM SCM(playerid, COLOR_GREY, "Игрок не найден!");
    #define LSCM SCM(playerid, COLOR_GREY, "Игрок не авторизовался!");
    #define adm if(Player[playerid][pAdmin] > 0 && Dostup[playerid] == false) return SPD(playerid, 11, DSI, "Админ-авторизация", "{FFFFFF}Для авторизации в админ-панель\nвведите свой админ-пароль:", "Далее", "Выход"); 
    Я и сам не прочь что-то перенести на define

    PHP код:
    // к примеру

    #define function%1(%2)    \
        
    forward %1(%2); public %1(%2)

    #define Format(%1,%2,%3) \
        
    (format(%1,sizeof(%1),%2,%3))

    #define SendFormatMessage(%0,%1,%2,%3,%4) \
        
    format(%1,sizeof(%1),%3,%4), SendClientMessage(%0,%2,%1)

    #define SendFormatMessageToAll(%0,%1,%2,%3) \
        
    format(%0,sizeof(%0),%2,%3), SendClientMessageToAll(%1,%0
    Просто так писать код проще, ну для меня, да и использование такого ничем вас не затруднит. Но от части это и есть говнокод, но я без этого уже не могу))0)

  2. #22
    Аватар для Vano_Glad
    Пользователь

    Статус
    Оффлайн
    Регистрация
    06.07.2015
    Адрес
    Хабаровск
    Сообщений
    142
    Репутация:
    0 ±
    Zangetsu

    Если честно, то я не понял смысл вашего сообщения
    ______________________________________________
    Услуги Pawn

  3. #23
    Аватар для gangzone.ini
    Пользователь

    Статус
    Оффлайн
    Регистрация
    15.06.2014
    Сообщений
    651
    Репутация:
    106 ±
    Цитата Сообщение от Vano_Glad Посмотреть сообщение
    Насчёт читаемости кода: Начнём с того, что в первую очередь код должен понимать, как я минимум. Пишу я его в первую очередь для себя, а не для других.
    Зачем тогда выкладывать в общий доступ?! Повторяюсь, на g-i выложили бы, может Вас похвалили бы, но не тут, о каком набивании идёт речь? Это обычная критика, и она не запрещена правилами Pro-Pawn.Ru. Если выкладываете мод, ждите отрицательной критики, как в нашем случае.

  4. #24
    Аватар для Vano_Glad
    Пользователь

    Статус
    Оффлайн
    Регистрация
    06.07.2015
    Адрес
    Хабаровск
    Сообщений
    142
    Репутация:
    0 ±
    gangzone.ini

    Я ожидал отрицательной критики, но не: тупой, неаргументированный и бессмысленной... И я не жду никакой похвалы
    ______________________________________________
    Услуги Pawn

  5. #25
    Аватар для Desulaid
    лесоруб продакшен

    Статус
    Оффлайн
    Регистрация
    15.03.2015
    Адрес
    Slobodskoy
    Сообщений
    667
    Репутация:
    236 ±
    Цитата Сообщение от Vano_Glad Посмотреть сообщение
    gangzone.ini

    Я ожидал отрицательной критики, но не: тупой, неаргументированный и бессмысленной... И я не жду никакой похвалы
    То есть, ваш код можно считать хорошим?

  6. #26
    Аватар для gangzone.ini
    Пользователь

    Статус
    Оффлайн
    Регистрация
    15.06.2014
    Сообщений
    651
    Репутация:
    106 ±
    Цитата Сообщение от Vano_Glad Посмотреть сообщение
    gangzone.ini

    Я ожидал отрицательной критики, но не: тупой, неаргументированный и бессмысленной... И я не жду никакой похвалы
    Обоснуйте поэалуйста данные высказывание, пожалуйста.
    Неаргументированные? - привели 2 человека, Daniel_Cortez, Zangetsu аргументы того, что ваш код - не код.
    Тупой ? - в чем он тупой? В том что правду пишут?
    Бессмысленный? - В чем же? В том что Вам глаза открывают?

  7. #27
    Аватар для Daniel_Cortez
    "Это не хак, это фича"

    Статус
    Оффлайн
    Регистрация
    06.04.2013
    Адрес
    Novokuznetsk, Russia
    Сообщений
    2,192
    Репутация:
    2589 ±
    Цитата Сообщение от Vano_Glad Посмотреть сообщение
    Другие люди так же просто понимают этот код, поэтому здесь вы не до конца правы.
    Вы не учли только одного: здесь не g-i и за переменные на транслите и отсутствие стандартов вас здесь по голове никто не погладит.


    Цитата Сообщение от Vano_Glad Посмотреть сообщение
    Насчёт string недопонял вас.
    Возможно, будет понятнее из примера кода.
    PHP код:
    #include <a_samp>

    // строки,
    new long_text[4][8] =
    {
        {
    "строка1"},
        {
    "строка2"},
        {
    "строка3"},
        {
    "строка4"}
    };

    public 
    OnGameModeInit()
    {
        for (new 
    i=0jsizeof(long_text) - 1; ++i// от 1 до 3 строки
            
    for (0sizeof(long_text[]); ++j// перебираем каждый символ в строке
                
    if(long_text[i][j] == '\0'// если это символ конца строки - ...
                
    {
                    
    long_text[i][j] = '\n'// ... заменяем его на символ переноса
                    
    break;
                }
        
    // после этого строки будут "сцеплены" в одну, остаётся только проверить получившийся результат
        
    print(long_text[0]); // обращение к строке происходит не как к "long_text", а как к "long_text[0]"


    Цитата Сообщение от Vano_Glad Посмотреть сообщение
    Если вы меня в чём-то упрекаете, мол я никчемный в pawn, так наоборот бы помогли сами.
    Помочь? В плане чего?
    Касаемо той строки для диалога - я привёл пример кода выше. Надеюсь, для вас не составит труда разобраться и адаптировать свой случай с диалогом.
    По поводу всего остального - проще будет переписать мод с 0, чем пытаться исправить ваш код. Естественно, я этим заниматься не собираюсь.
    Многие рекомендации по скриптингу я собрал в одной теме. Здесь и стиль кодинга, и разъяснение некоторых распространённых ошибок.


    Цитата Сообщение от Vano_Glad Посмотреть сообщение
    И вы снова начинаете придираться к мелочам, чтобы (как я считаю) тупо набить себе посты
    За себя могу сказать, что если б я хотел набить себе посты, я мог бы просто отредактировать их кол-во через настройки в админ-меню. Тем не менее, у меня в статистике не миллион постов, а всего лишь 600 с лишним, и это очень просто объясняется давностью регистрации и активностью на портале.
    По поводу остальных участников форума - обоснуйте.
    Индивидуально в ЛС по скриптингу не помогаю. Задавайте все свои вопросы здесь (click).

  8. #28
    Аватар для Vano_Glad
    Пользователь

    Статус
    Оффлайн
    Регистрация
    06.07.2015
    Адрес
    Хабаровск
    Сообщений
    142
    Репутация:
    0 ±
    Daniel_Cortez

    Если я вас правильно понял, то к примеру в:
    PHP код:
    #define ESCM SCM(playerid, COLOR_GREY, "Вы не уполномочены использовать эту команду!");
    #define ISCM SCM(playerid, COLOR_GREY, "Игрок не найден!");
    #define LSCM SCM(playerid, COLOR_GREY, "Игрок не авторизовался!"); 
    Точка с запятой и скобки не требуются. Я решил проверить. Удалил просто одну точку с запятой и мод выдал ошибку на отсутствие этого знака препинания
    ______________________________________________
    Услуги Pawn

  9. #29
    Аватар для #Vito
    #define

    Статус
    Оффлайн
    Регистрация
    14.09.2013
    Адрес
    Одесса
    Сообщений
    129
    Репутация:
    38 ±
    Цитата Сообщение от Vano_Glad Посмотреть сообщение
    Daniel_Cortez

    Если я вас правильно понял, то к примеру в:
    PHP код:
    #define ESCM SCM(playerid, COLOR_GREY, "Вы не уполномочены использовать эту команду!");
    #define ISCM SCM(playerid, COLOR_GREY, "Игрок не найден!");
    #define LSCM SCM(playerid, COLOR_GREY, "Игрок не авторизовался!"); 
    Точка с запятой и скобки не требуются. Я решил проверить. Удалил просто одну точку с запятой и мод выдал ошибку на отсутствие этого знака препинания
    Потому что, теперь нужно ставить точку с запятой при использовании.
    PHP код:
    public OnPlayerConnect(playerid)
    {
        
    ISCM;
        return 
    1;

    Skype: vitya.saveliev


  10. #30
    Аватар для Vano_Glad
    Пользователь

    Статус
    Оффлайн
    Регистрация
    06.07.2015
    Адрес
    Хабаровск
    Сообщений
    142
    Репутация:
    0 ±
    #Vito

    И в чём же тогда разница моего варианта и этого?
    ______________________________________________
    Услуги Pawn

 

 
Страница 3 из 4 ПерваяПервая 1 2 3 4 ПоследняяПоследняя

Информация о теме

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

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •