Страница 1 из 2 12 ПоследняяПоследняя
Показано с 1 по 10 из 15

Тема: Смена погоды каждые пол часа.

  1. #1
    Пользователь
    Регистрация
    16.02.2015
    Возраст
    35
    Сообщений
    98
    Репутация: 5

    Звание: пока не определено

    Смена погоды каждые пол часа.

    Привет всем. Я новенький на этом форуме и сегодня я хотел бы предоставить вам простую сис-мку смены погоды на сервере например каждые пол часа.


    Ко всем forward's:
    PHP код:
    forward ChangeWeather(); 
    В public OnGameModeInit() добавьте:
    PHP код:
        SetTimer("ChangeWeather",1000*60*30true);//1 раз в 30 минут, будет меняться погода
    //P.S Можно заменить на своё время 
    Вне других public's добавьте:
    PHP код:
    public ChangeWeather()
    {
        new 
    weather ;
        
    weather random(20) ;
        
    SetWeather(weather);
        switch(
    weather)
        {
            case 
    1:SendClientMessageToAll(COLOR_WHITE,"{73F6FF}[Новости погоды]:{FFC800}изменилась на солнечную!");
            case 
    2:SendClientMessageToAll(COLOR_WHITE,"{73F6FF}[Новости погоды]: {646CFF}изменилась на штормовую!");
            case 
    3:SendClientMessageToAll(COLOR_WHITE,"{73F6FF}[Новости погоды]: {FFC800}изменилась на солнечную!");
            case 
    4:SendClientMessageToAll(COLOR_WHITE,"{73F6FF}[Новости погоды]: {D2EBFF}изменилась на туманну!");
            case 
    5:SendClientMessageToAll(COLOR_WHITE,"{73F6FF}[Новости погоды]: {D2EBFF}изменилась на дождевую!");
            case 
    6:SendClientMessageToAll(COLOR_WHITE,"{73F6FF}[Новости погоды]: {D2EBFF}изменилась на дождевую!");
            case 
    7:SendClientMessageToAll(COLOR_WHITE,"{73F6FF}[Новости погоды]: {D2EBFF}изменилась на облачную!");
            case 
    8:SendClientMessageToAll(COLOR_WHITE,"{73F6FF}[Новости погоды]: {D2EBFF}изменилась на пасмурную!");
            case 
    9:SendClientMessageToAll(COLOR_WHITE,"{73F6FF}[Новости погоды]: {D2EBFF}изменилась на туманную!");
            case 
    10:SendClientMessageToAll(COLOR_WHITE,"{73F6FF}[Новости погоды]: {ACFF46}изменилась на солнечную!");
            case 
    11:SendClientMessageToAll(COLOR_WHITE,"{73F6FF}[Новости погоды]: {ACFF46}изменилась на солнечную!");
            case 
    12:SendClientMessageToAll(COLOR_WHITE,"{73F6FF}[Новости погоды]: {D2EBFF}изменилась на облачную!");
            case 
    13:SendClientMessageToAll(COLOR_WHITE,"{73F6FF}[Новости погоды]: {FFDE37}изменилась на солнечную!");
            case 
    14:SendClientMessageToAll(COLOR_WHITE,"{73F6FF}[Новости погоды]: {FFDE37}изменилась на солнечную!");
            case 
    15:SendClientMessageToAll(COLOR_WHITE,"{73F6FF}[Новости погоды]: {D2EBFF}изменилась на облачную!");
            case 
    16:SendClientMessageToAll(COLOR_WHITE,"{73F6FF}[Новости погоды]: {D2EBFF}изменилась на дождевую!");
            case 
    17:SendClientMessageToAll(COLOR_WHITE,"{73F6FF}[Новости погоды]: {FF5441}изменилась на жаркую!");
            case 
    18:SendClientMessageToAll(COLOR_WHITE,"{73F6FF}[Новости погоды]: {FF5441}изменилась на жаркую!");
            case 
    19:SendClientMessageToAll(COLOR_WHITE,"{73F6FF}[Новости погоды]: {0A1EFF}изменилась на штормовую!");
            case 
    20:SendClientMessageToAll(COLOR_WHITE,"{73F6FF}[Новости погоды]: {FAFFF5}погода сменилась на облачную!");
        }
        return 
    true;


    PHP код:
    new string[128];
        new 
    _weather_name[][] = {"","Sun"};
        
    format(stringsizeof string"... %s"_weather_name[weather]);
        
    SendClientMessageToAll(-1,string); 


    P.S Такой темы на форуме не видел. Спасибо за внимание.:bs:

  2. #2
    Проверенный Аватар для georJik
    Регистрация
    07.07.2013
    Сообщений
    1,370
    Репутация: 427

    Звание: - очень-очень хороший человек

    Re: Смена погоды каждые пол часа.

    Нормально

  3. #3
    Пользователь
    Регистрация
    16.02.2015
    Возраст
    35
    Сообщений
    98
    Репутация: 5

    Звание: пока не определено

    Re: Смена погоды каждые пол часа.

    Цитата Сообщение от georJik Посмотреть сообщение
    Нормально
    Спасибо) Еще есть сис-ма АФК, выложу мб)

  4. #4
    Проверенный
    Регистрация
    01.05.2011
    Адрес
    St.Petersburg
    Сообщений
    1,968
    Репутация: 178

    Звание: - весьма и весьма положительная личность

    Re: Смена погоды каждые пол часа.

    Можно в разы уменьшить код.
    Код:
    	new string[128];
    	new _weather_name[][] = {"","Sun"};
    	format(string, sizeof string, "... %s", _weather_name[weather]);
    	SendClientMessageToAll(-1,string);

  5. #5
    Пользователь
    Регистрация
    06.08.2015
    Сообщений
    6
    Репутация: 10

    Звание: на пути к лучшему

    Re: Смена погоды каждые пол часа.

    Ошибки выскакивают!

    E:\ilyuha\ìîä2)\ìîä2 )\Íîâàÿ ïàïêà (8)\pawno\include\airbreak.inc(39) : error 079: inconsistent return types (array & non-array)
    E:\ilyuha\ìîä2)\ìîä2 )\Íîâàÿ ïàïêà (8)\pawno\include\airbreak.inc(50) : error 079: inconsistent return types (array & non-array)
    E:\ilyuha\ìîä2)\ìîä2 )\Íîâàÿ ïàïêà (8)\pawno\include\airbreak.inc(51) : error 079: inconsistent return types (array & non-array)
    E:\ilyuha\ìîä2)\ìîä2 )\Íîâàÿ ïàïêà (8)\gamemodes\Prime_RolePlay.pwn(2523) : error 017: undefined symbol "PlayerToPoint"
    E:\ilyuha\ìîä2)\ìîä2 )\Íîâàÿ ïàïêà (8)\gamemodes\Prime_RolePlay.pwn(2521) : warning 203: symbol is never used: "playerid"
    E:\ilyuha\ìîä2)\ìîä2 )\Íîâàÿ ïàïêà (8)\gamemodes\Prime_RolePlay.pwn(2521 -- 2533) : error 017: undefined symbol "PlayerToPoint"
    E:\ilyuha\ìîä2)\ìîä2 )\Íîâàÿ ïàïêà (8)\gamemodes\Prime_RolePlay.pwn(2531) : warning 203: symbol is never used: "playerid"
    E:\ilyuha\ìîä2)\ìîä2 )\Íîâàÿ ïàïêà (8)\gamemodes\Prime_RolePlay.pwn(2531 -- 2545) : error 017: undefined symbol "PlayerToPoint"
    E:\ilyuha\ìîä2)\ìîä2 )\Íîâàÿ ïàïêà (8)\gamemodes\Prime_RolePlay.pwn(2531 -- 2545) : fatal error 107: too many error messages on one line

  6. #6
    Джентльмен лжец Аватар для Fallen A.
    Регистрация
    03.09.2011
    Адрес
    Минск, БССР
    Возраст
    30
    Сообщений
    2,409
    Репутация: 337

    Звание: как роза среди колючек

    Re: Смена погоды каждые пол часа.

    Я один храню все в массивах?

  7. #7
    Активный пользователь Аватар для anonimniy
    Регистрация
    20.08.2011
    Адрес
    St. Petersburg
    Сообщений
    466
    Репутация: 28

    Звание: на пути к лучшему

    Re: Смена погоды каждые пол часа.

    Цитата Сообщение от Fallen A. Посмотреть сообщение
    Я один храню все в массивах?
    Я один уделяю смене погоде 2 строки?

    Код:
    public PayDay()
    {
    new weather = random(21) ;
    SetWeather(weather);
    }

  8. #8
    Джентльмен лжец Аватар для Fallen A.
    Регистрация
    03.09.2011
    Адрес
    Минск, БССР
    Возраст
    30
    Сообщений
    2,409
    Репутация: 337

    Звание: как роза среди колючек

    Re: Смена погоды каждые пол часа.

    Цитата Сообщение от anonimniy Посмотреть сообщение
    Я один уделяю смене погоде 2 строки?

    Код:
    public PayDay()
    {
    new weather = random(21) ;
    SetWeather(weather);
    }
    У меня куча систем связано с погодой, да и погода во всех городах разная, так что увы.

  9. #9
    Пользователь Аватар для Tensa_Zangetsu
    Регистрация
    06.08.2015
    Сообщений
    4
    Репутация: 10

    Звание: на пути к лучшему

    Re: Смена погоды каждые пол часа.

    Оптимизированным вариантом это назвать нельзя, но удобно держать все id и имена в одном массиве.

    PHP код:
    stock RadnomWeather()
    {
        new 
    q++;
        if(
    1000*60*30)
        { 
    // костыыыыль :3
            
    new radnom_weather_name[][]=
            {
                {
                    
    1"солнечную"
                
    },
                {
                    
    2"штормовую"
                
    },
                {
                    
    3"солнечную"
                
    },
                {
                    
    4"туманную"
                
    },
                {
                    
    5"дождевую"
                
    },
                {
                    
    6"дождевую"
                
    },
                {
                    
    7"облачную"
                
    },
                {
                    
    8"пасмурную"
                
    },
                {
                    
    9"туманную"
                
    },
                {
                    
    10"солнечную"
                
    },
                {
                    
    11"солнечную"
                
    },
                {
                    
    12"облачную"
                
    },
                {
                    
    13"солнечную"
                
    },
                {
                    
    14"солнечную"
                
    },
                {
                    
    15"облачную"
                
    },
                {
                    
    16"дождевую"
                
    },
                {
                    
    17"жаркую"
                
    },
                {
                    
    18"жаркую"
                
    },
                {
                    
    19"штормовую"
                
    },
                {
                    
    20"облачную"
                
    }
            };

            new 
    string[32];
            
    SetWeather(radnom_weather_name[random(sizeof(radnom_weather_name))][0])
            
    format(stringsizeof string"Погода изменилась на %s"radnom_weather_name[random(sizeof(radnom_weather_name))][1]);
            
    SendClientMessageToAll(-1,string);
            
            
    0;
        }


  10. #10
    Проверенный Аватар для georJik
    Регистрация
    07.07.2013
    Сообщений
    1,370
    Репутация: 427

    Звание: - очень-очень хороший человек

    Re: Смена погоды каждые пол часа.

    Опять быдлокод пошел.
    Тогда уже так:
    PHP код:
    #define    _cweather    GetSVarInt("Weather")


    new const _wdesc[][] =
    {
        
    "солнечную""штормовую""дождливую""туманную" // etc
    };


    stock RadnomWeather() 

        
    SetSVarInt("Weather"random(sizeof(_wdesc))), SetWeather(_cweather);
        new 
    string[32];
        
    format(stringsizeof string"Погода изменилась на %s"_wdesc[_cweather]); 
        return 
    SendClientMessageToAll(-1string); 


  11. 4 пользователей сказали cпасибо georJik за это полезное сообщение:

    anonimniy (06.08.2015), FanHamMer (06.08.2015), Terner (06.08.2015), Меша (02.11.2015)

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

Похожие темы

  1. Установка действительной погоды (по Москве).
    от polander в разделе Полезные функции
    Ответов: 5
    Последнее сообщение: 17.02.2015, 14:58
  2. 24 часа общения с Легендой русского комьюнити
    от Seregamil в разделе Предложения
    Ответов: 7
    Последнее сообщение: 26.06.2014, 11:04
  3. Слет акков и сделать действие через каждые 5 сек.
    от M1ronz0r в разделе Вопросы по скриптингу
    Ответов: 11
    Последнее сообщение: 16.06.2013, 14:20
  4. Создание динамической погоды на сервере
    от Lynch_Davidson в разделе Скрипты для любого мода
    Ответов: 17
    Последнее сообщение: 15.04.2012, 02:25

Ваши права

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