Добро пожаловать на Pro Pawn - Портал о PAWN-скриптинге.

Реклама


   

**Как получить V.I.P** (Перейти)
Чтобы заказать рекламу на Pro-Pawn.Ru, обращайтесь в Skype.
Баннерная реклама 100руб/мес, Текстовая 50руб/мес.
Страница 6 из 6 ПерваяПервая ... 456
Показано с 51 по 57 из 57
  1. #51
    Аватар для ziggi
    Проверенный

    Статус
    Оффлайн
    Регистрация
    14.05.2015
    Сообщений
    761
    Репутация:
    567 ±
    Цитата Сообщение от vovandolg Посмотреть сообщение
    PHP код:
    #define noinit:%0[%1]; goto _noinit_%0;new %0[%1];_noinit_%0: 
    А что если надо было бы не 1 переменную, а 2 или 3, по очереди так и писать?
    PHP код:
    noinit:str[10];
    noinit:strr[20];
    noinit:strrr[30]; 
    PHP код:
    #define new%0noinit<%1[%2]%3>; goto _noinit_%1; new %1[%2]%3; _noinit_%1: 
    Использовать так:
    PHP код:
    new noinit<str[10], strr[20], strrr[30]>; 
    Последний раз редактировалось ziggi; 06.10.2016 в 16:34.

  2. Пользователь сказал cпасибо:
    vovandolg (06.10.2016)
  3. #52
    Аватар для vovandolg
    Пользователь

    Статус
    Онлайн
    Регистрация
    17.11.2015
    Адрес
    Stavropol
    Сообщений
    1,191
    Репутация:
    101 ±
    Цитата Сообщение от ziggi Посмотреть сообщение
    PHP код:
    #define new%0noinit<%1[%2]%3>; goto _noinit_%1; new %1[%2]%3; _noinit_%1: 
    Использовать так:
    PHP код:
    new noinit<str[10], strr[20], strrr[30]>; 
    PHP код:
    warning 201redefinition of constant/macro (symbol "new%0noinit<%1[%2]%3>;"
    - - - Добавлено - - -

    Кину полностью из за чего может быть ругается:
      Открыть/закрыть
    PHP код:
    zm.pwn(82) : warning 201redefinition of constant/macro (symbol "new%0noinit<%1[%2]%3>;")
    zm.pwn(911) : error 001expected token";"but found "||"
    zm.pwn(911) : error 001expected token";"but found "new"
    zm.pwn(911) : warning 203symbol is never used"Y_FOREACH_SECOND"
    zm.pwn(911) : error 017undefined symbol "Player"
    zm.pwn(911) : fatal error 107too many error messages on one line 


    Строки в коде:

      Открыть/закрыть
    PHP код:
    function StartMap()
    {
        
    InfectedTime 0;
        if(
    oPlayers 0)
        {
            foreach(new 
    iPlayer//911 line
            
    {
                if(
    pLogged{i} == 1)
                {
                    if(
    mInfo[Interior] != pInt{i})
                        
    SetPlayerInterior(imInfo[Interior]);
                    
    SetPlayerPos(imInfo[HumanSpawnX], mInfo[HumanSpawnY], mInfo[HumanSpawnZ] + 0.60);
                    
    TogglePlayerControllable(i1);
                    
    SetPlayerHealth(i100.0);
                    
    HumanSetup(i);
                }
            }
        }
        
    TextDrawHideForAll(WinGUI);
        
    TextDrawHideForAll(ZombieWinText);
        
    TextDrawHideForAll(HumanWinText);
        
    TextDrawShowForAll(RoundStarted);
        
    SeriaKiller 255;
        
    maptime MAX_MAPTIME;
        
    mapvar 1;
        new 
    noinit<strr[145]>;
        
    format(strr145"["COLOR_MAP"Loading Map"COLOR_TEXT2"] Map <%s> created by <%s>"mInfo[MapName], mInfo[CreatedBy]);
        
    SendClientMessageToAll(COLOR_TEXT1strr);

        
    randvar SetTimer(!"RandomZombie"MAX_ZOMBIE_TIMEfalse);
        
    SetTimer(!"HideMessage2"2500false);
        return 
    1;

    Последний раз редактировалось vovandolg; 06.10.2016 в 16:53.
    [Античит] Invisible Fly Hack
    [Античит] Weapon/Ammo Hack
    [Function] ResetPlayerWeaponSlot
    [Function] FIX_SetPlayerAmmo

  4. #53
    Аватар для ziggi
    Проверенный

    Статус
    Оффлайн
    Регистрация
    14.05.2015
    Сообщений
    761
    Репутация:
    567 ±
    Цитата Сообщение от vovandolg Посмотреть сообщение
    PHP код:
    warning 201redefinition of constant/macro (symbol "new%0noinit<%1[%2]%3>;"
    - - - Добавлено - - -

    Кину полностью из за чего может быть ругается:
      Открыть/закрыть
    PHP код:
    zm.pwn(82) : warning 201redefinition of constant/macro (symbol "new%0noinit<%1[%2]%3>;")
    zm.pwn(911) : error 001expected token";"but found "||"
    zm.pwn(911) : error 001expected token";"but found "new"
    zm.pwn(911) : warning 203symbol is never used"Y_FOREACH_SECOND"
    zm.pwn(911) : error 017undefined symbol "Player"
    zm.pwn(911) : fatal error 107too many error messages on one line 


    Строки в коде:

      Открыть/закрыть
    PHP код:
    function StartMap()
    {
        
    InfectedTime 0;
        if(
    oPlayers 0)
        {
            foreach(new 
    iPlayer//911 line
            
    {
                if(
    pLogged{i} == 1)
                {
                    if(
    mInfo[Interior] != pInt{i})
                        
    SetPlayerInterior(imInfo[Interior]);
                    
    SetPlayerPos(imInfo[HumanSpawnX], mInfo[HumanSpawnY], mInfo[HumanSpawnZ] + 0.60);
                    
    TogglePlayerControllable(i1);
                    
    SetPlayerHealth(i100.0);
                    
    HumanSetup(i);
                }
            }
        }
        
    TextDrawHideForAll(WinGUI);
        
    TextDrawHideForAll(ZombieWinText);
        
    TextDrawHideForAll(HumanWinText);
        
    TextDrawShowForAll(RoundStarted);
        
    SeriaKiller 255;
        
    maptime MAX_MAPTIME;
        
    mapvar 1;
        new 
    noinit<strr[145]>;
        
    format(strr145"["COLOR_MAP"Loading Map"COLOR_TEXT2"] Map <%s> created by <%s>"mInfo[MapName], mInfo[CreatedBy]);
        
    SendClientMessageToAll(COLOR_TEXT1strr);

        
    randvar SetTimer(!"RandomZombie"MAX_ZOMBIE_TIMEfalse);
        
    SetTimer(!"HideMessage2"2500false);
        return 
    1;

    Похоже из-за foreach нельзя использовать new в качестве макроса.
    Тогда возьми это:
    PHP код:
    #define @new%0\32%1[%2]%3; goto _noinit_%1; new %1[%2]%3; _noinit_%1: 
    и используй так:
    PHP код:
    @new str[10], strr[20], strrr[30]; 
    Синтаксис лучше придумать не смог.
    Последний раз редактировалось ziggi; 06.10.2016 в 18:57.

  5. Пользователь сказал cпасибо:
    vovandolg (06.10.2016)
  6. #54
    Аватар для vovandolg
    Пользователь

    Статус
    Онлайн
    Регистрация
    17.11.2015
    Адрес
    Stavropol
    Сообщений
    1,191
    Репутация:
    101 ±
    Цитата Сообщение от ziggi Посмотреть сообщение
    Синтаксис лучше придумать не смог.
      Открыть/закрыть


    [Античит] Invisible Fly Hack
    [Античит] Weapon/Ammo Hack
    [Function] ResetPlayerWeaponSlot
    [Function] FIX_SetPlayerAmmo

  7. #55
    Аватар для Blood
    Пользователь

    Статус
    Оффлайн
    Регистрация
    10.12.2013
    Сообщений
    62
    Репутация:
    2 ±
    Цитата Сообщение от ziggi Посмотреть сообщение
    Похоже из-за foreach нельзя использовать new в качестве макроса.
    Тогда возьми это:
    PHP код:
    #define @new%0\32%1[%2]%3; goto _noinit_%1; new %1[%2]%3; _noinit_%1: 
    и используй так:
    PHP код:
    @new str[10], strr[20], strrr[30]; 
    Синтаксис лучше придумать не смог.
    Через этот макрос есть ли вероятность бага с goto ?

  8. #56
    Аватар для DeimoS
    Модератор?

    Статус
    Оффлайн
    Регистрация
    27.01.2014
    Адрес
    Восточный Мордор
    Сообщений
    3,007
    Репутация:
    1202 ±
    Цитата Сообщение от Blood Посмотреть сообщение
    Через этот макрос есть ли вероятность бага с goto ?
    Эмм, если ты внимательно посмотришь код, то увидишь, что там создаётся всего 1 метка.
    Связаться со мной можно в личных сообщениях этой группы

    Широко известно, что идеи стоят 0.8333 цента каждая (исходя из рыночной цены 10 центов за дюжину).
    Великих идей полно, на них нет спроса.
    Воплощение идеи в законченную игру требует долгой работы,
    таланта, терпения и креативности, не говоря уж о затратах денег, времени и ресурсов.
    Предложить идею просто, воплотить – вот в чём проблема

    Steve Pavlina

  9. #57
    Аватар для Daniel_Cortez
    new fuck_logic[0] = EOS;

    Статус
    Оффлайн
    Регистрация
    06.04.2013
    Адрес
    Novokuznetsk, Russia
    Сообщений
    1,496
    Репутация:
    2037 ±
    Цитата Сообщение от Blood Посмотреть сообщение
    Через этот макрос есть ли вероятность бага с goto ?
    Название метки зависит от названия первого массива, объявляемого с помощью макроса, так что оно должно быть уникально. Если использовать макрос несколько раз внутри одной и той же функции, названия меток получатся разными и никакого бага не будет.
    Индивидуально в PM и Skype по скриптингу не помогаю. Задавайте все свои вопросы здесь (click).
    SA-MP 0.4 is a lie

 

 
Страница 6 из 6 ПерваяПервая ... 456

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

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

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

Ваши права

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