Доступ к архиву

Переход в группу "Пользователь"

300.00 ₽
Одноразовый платёж
Быстрый переход в группу "Пользователи", без надобности написания постов и ожидания.

Покупка дает возможность:
Быть полноправным участником форума
Нормальное копирование кода
Создавать темы
Скачивать файлы
Доступ к архиву Pawno-Info

Рекурсия в функции Weatherrand

Статус
В этой теме нельзя размещать новые ответы.

Jackson2840

Новичок
Обнаружена рекурсия в функции Weatherrand, помогите её убрать пожалуйста.



PHP:
//В начало мода где все DEFINE

#define METEODIALOG 6543

//СТАВИТЬ КО ВСЕМ NEW В НАЧАЛЕ МОДА

new weathtimer;//TIMER PAGODA
new currentweather = 13;//PAGODA SEICHAS
new futureweather = 13;//PAGODA POTOM
new weathercycle = 1;//CYCLE PAGODA
new weathercycle2 = 1;//CYCLE PAGODA
new stormweather = 1;//PAGODKA DOJD
new cloudweather = 3;//PAGODKA TYMAN
new hourscloud = 0;//CHASI TYMAN
new hoursstorm = 0;//CHASI STORM
//===================================

//Ко всем forward'ам
//========================================================
    forward Weatherrand();
//========================================================

//В public OnGameModeInit()
//=======================================================
    Weatherrand();
    weathtimer = SetTimer("Weatherrand",1000*60*10,true);
//========================================================

//В public GameModeExitFunc()
//========================================================
    KillTimer(weathtimer);
//========================================================

//В конец паблика public PayDay()
//========================================================
    hourscloud --;
    hoursstorm --;
    if(hourscloud == 0)
    {
        weathercycle2 = 1;
        cloudweather = 3;
    }
    if(hoursstorm == 0)
    {
        weathercycle = 1;
        stormweather = 1;
    }
//=======================================================

//В конец мода
//======================================================
public Weatherrand()
{
    currentweather = futureweather;
    SetWeather(currentweather);
    new weathka = random(6);
    switch(weathka)
    {
        case 0:
        {
            futureweather = 13;
        }
        case 1:
        {
            if(weathercycle == 1)
            {
                if(stormweather == 0)
                {
                    weathercycle = 0;
                    hoursstorm = 2;
                    Weatherrand();
                }
                else
                {
                    stormweather--;
                    futureweather = 8;
                }
            }
            else
            {
                Weatherrand();
            }
        }
        case 2:
        {
            futureweather = 13;
        }
        case 3:
        {
            if(weathercycle2 == 1)
            {
                if(cloudweather == 0)
                {
                    weathercycle2 = 0;
                    hourscloud = 2;
                    Weatherrand();
                }
                else
                {
                    cloudweather--;
                    futureweather = 9;
                }
            }
            else
            {
                Weatherrand();
            }
        }
        case 4:
        {
            futureweather = 7;
        }
        case 5:
        {
            futureweather = 13;
        }
    }
    return 1;
}
//Ко всем командам (в public OnPlayerCommandText

    if(strcmp(cmd, "/meteostat", true) == 0)
    {
        if(PlayerInfo[playerid][pMember] != 9) return SendClientMessage(playerid,-1,"PremiumGam: Вы не репортёр!");
        if(!IsPlayerInRangeOfPoint(playerid,5.0,1458.6010,-778.0778,93.1008)) return SendClientMessage(playerid,-1,"Вы не у метеостанции!");
        new strokes[256];
        new weatherka[20],weatherka2[20];
        switch(currentweather)
        {
            case 8:
            {
                format(weatherka,sizeof(weatherka),"Дождливая");
            }
            case 7:
            {
                format(weatherka,sizeof(weatherka),"Пасмурная");
            }
            case 13:
            {
                format(weatherka,sizeof(weatherka),"Солнечная");
            }
            case 9:
            {
                format(weatherka,sizeof(weatherka),"Туманы");
            }
        }
        switch(futureweather)
        {
            case 8:
            {
                format(weatherka2,sizeof(weatherka2),"Дождливая");
            }
            case 7:
            {
                format(weatherka2,sizeof(weatherka2),"Пасмурная");
            }
            case 13:
            {
                format(weatherka2,sizeof(weatherka2),"Солнечная");
            }
            case 9:
            {
                format(weatherka2,sizeof(weatherka2),"Туманы");
            }
        }
        format(strokes,sizeof(strokes),">>  <<\n\nТекущаяя погода: %s\nПогода в следующие 10 минут: %s",weatherka,weatherka2);
        ShowPlayerDialog(playerid,METEODIALOG,DIALOG_STYLE_MSGBOX,"Погода PremiumGame",strokes,"ОК","");
        return 1;
    }
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу