Форум

Страница 1 из 212»
Модератор форума: dr40 
Форум | www.SAMP-TEAM.com » Wiki SA-MP » Вопросы по скриптингу » помогите с флудом
помогите с флудом
Кароч помогите вот такая проблема как получаю еxp ну Зарплата и там после етого идет лотерейная партия и оно флудит ней
помогите исправить чтоб 1 раз писало вот скрины
http://pixs.ru/showimage/samp010png_2584495_14494348.png
http://pixs.ru/showimage/samp011png_7875355_14494374.png
29.10.2014 в 23:03
Скиньте public Lotto(number)
30.10.2014 в 22:42
Вот
Код
public Lotto(number)
{
   new JackpotFallen = 0;
   new string[256];
   new winner[MAX_PLAYERS];
   format(string, sizeof(string), "Лоторея: Сегодня выиграшный номер  %d.", number);
   OOCOff(COLOR_WHITE, string);
   for(new i = 0; i < GetMaxPlayers(); i++)
   {
    if(IsPlayerConnected(i))
    {
     if(PlayerInfo[i][pLottoNr] > 0)
     {
      if(PlayerInfo[i][pLottoNr] == number)
      {
       JackpotFallen = 1;
       GetPlayerName(i, winner, sizeof(winner));
       format(string, sizeof(string), "Лоторея: %s выиграл ДжекПот, его билет номер $%d.", winner, Jackpot);
       OOCOff(COLOR_WHITE, string);
       format(string, sizeof(string), "Вы выиграли $%d лотерею.", Jackpot);
       SendClientMessage(i, COLOR_YELLOW, string);
       PlayerInfo[i][pMoney] += Jackpot;
      }
      else
      {
       SendClientMessage(i, COLOR_LIGHTBLUE, "Вы не выйграли сейчас, может повезёт потом.");
      }
     }
     PlayerInfo[i][pLottoNr] = 0;
    }
   }
   if(JackpotFallen)
   {
    new rand = random(125000); rand += 15789;
    Jackpot = rand;
    SaveStuff();
    format(string, sizeof(string), "Лоторея: Назначен новый ДжекПот: $%d.", Jackpot);
    OOCOff(COLOR_WHITE, string);
   }
   else
   {
    new rand = random(15000); rand += 2158;
    Jackpot += rand;
    SaveStuff();
    format(string, sizeof(string), "Лоторея: ДжекПот был поднят  $%d.", Jackpot);
    OOCOff(COLOR_WHITE, string);
   }
   return true;
}
public Copyleft(playerid)
{
   return true;
}


Я даже незнаю что сказать смотрите вот если я 1 на сервере то все норм флуда нет вот смотрите скрин все норм пишет и зп дает http://pixs.ru/showimage/samp014png_6285127_14510065.png
а вот єсли нас там 2- и больше то флудит ето ппц помогите исправить ка-то
31.10.2014 в 00:40
И скиньте паблик где выполняется что-то похожее на Lotto(rand2);. Возможно у вас выполняется этот паблик для каждого игрока, а не для всего сервера.
31.10.2014 в 01:17
кидаю сразу с зп ето или нет?Ну есть ещо команда /startlotto ну я думаю она необезательна?
Код
    new tmpintrate;
        if (key != 255 && strcmp(playername2, HouseInfo[key][hOwner], true) == 0)
        {
         if(PlayerInfo[i][pDonateRank] > 0) { tmpintrate = intrate+4; }
         else { tmpintrate = intrate+2; }//HouseInfo[key][hLevel]
        }
        else
        {
         if(PlayerInfo[i][pDonateRank] > 0) { tmpintrate = 3; }
         else { tmpintrate = 1; }
        }
        if(PlayerInfo[i][pPayDay] >= 1)
        {
         PlayerInfo[i][pExp] += 1;
         new exp = PlayerInfo[i][pExp];
         new nxtlevel = PlayerInfo[i][pLevel]+1;
         new expamount = nxtlevel*levelexp;
         new clvl = nxtlevel*levelcost;
         if(exp >= expamount)
         {
          format(string,128, "Поздравляем, Вы теперь можете купить {ecca63}%d{FFFFFF} уровень командой - {ecca63}/buylevel", nxtlevel, clvl);
          SendClientMessage(i, COLOR_WHITE, string);
         }
         if(PlayerInfo[i][pDonateRank] > 0)
         {
          new bonus = PlayerInfo[i][pPayCheck] / 10;
          PlayerInfo[i][pPayCheck] += bonus;
         }
         new checks = PlayerInfo[i][pPayCheck];
         new ebill = (PlayerInfo[i][pAccount]/1000000)*(PlayerInfo[i][pLevel]);
         ConsumingMoney[i] = 1;
         GivePlayerMoney(i, checks);
         if(PlayerInfo[i][pAccount] > 0)
         {
          PlayerInfo[i][pAccount] -= ebill;
          SBizzInfo[4][sbTill] += 10000;//  Бизнес - Электростанция SF
         }
         else
         {
          ebill = 0;
         }
         PlayerInfo[i][pAccount] += workpay;
                  PlayerInfo[i][pDonateMoney] += 4;//деньги выдача за проиграноэ время на сервере
         PlayerInfo[i][pAccount] -= Tax;
         interest = (PlayerInfo[i][pAccount]/1000)*(tmpintrate);// 10000000
         PlayerInfo[i][pExp]++;
         PlayerPlayMusic(i);
         PlayerInfo[i][pAccount] = account+interest;
         SendClientMessage(i, COLOR_GREEN, "|_______________ Зарплата _______________|");
         format(string, sizeof(string), "{FFFFFF}Полученная сумма:{FFFFFF}{6EF83C}$%d{FFFFFF} {FFFFFF}Налоги:{FFFFFF} {6EF83C}-$%d{FFFFFF}", checks, Tax);
         SendClientMessage(i, COLOR_YELLOW2, string);
         //------------------------------------------------------------------------------
         if(PlayerInfo[i][pPhousekey] != 255 || PlayerInfo[i][pPbiskey] != 255)     {
          format(string, sizeof(string), "{FFFFFF}Плата за электричество:{FFFFFF} {6EF83C}-$1500{FFFFFF}", ebill);
          SendClientMessage(i, COLOR_YELLOW2, string);     }
         //------------------------------------------------------------------------------
         format(string, sizeof(string), "{FFFFFF}Баланс в банке:{FFFFFF} {6EF83C}$%d{FFFFFF} | {FFFFFF}Банковский процент:{FFFFFF} {6EF83C}0.%d{FFFFFF}", account, tmpintrate);
         SendClientMessage(i, COLOR_YELLOW2, string);
         //------------------------------------------------------------------------------
         format(string, sizeof(string), "{FFFFFF}Полученные деньги:{FFFFFF} {6EF83C}$%d{FFFFFF}", interest);
         SendClientMessage(i, COLOR_WHITE, string);
         //------------------------------------------------------------------------------
         format(string, sizeof(string), "{FFFFFF}Теперь Баланс в банке:{FFFFFF} {6EF83C}$%d{FFFFFF}", PlayerInfo[i][pAccount]);
         SendClientMessage(i, COLOR_WHITE, string);
         //------------------------------------------------------------------------------
         format(string, sizeof(string), "{FFFFFF}Плата за аренду:{FFFFFF} {6EF83C}$%d{FFFFFF}", rent);
         SendClientMessage(i, COLOR_WHITE, string);
         SendClientMessage(i, COLOR_GREEN, "|________________________________________|");
         //------------------------------------------------------------------------------
         format(string, sizeof(string), "~y~PayDay~n~~w~Paycheck");
         GameTextForPlayer(i, string, 7000, 1);
         rent = 0;
         PlayerInfo[i][pPayDay] = 0;
         OOCOff(COLOR_WHITE, "*Новости лотереи: Мы начали лотерейную партию.");
         new rand = random(80);
         if(rand < 77) { rand += 3; }
         Lotto(rand);
         PlayerInfo[i][pPayCheck] = 0;
         PlayerInfo[i][pConnectTime] += 1;
         if(PlayerInfo[i][pDonateRank] > 0)
         {
          PlayerInfo[i][pPayDayHad] += 1;
          if(PlayerInfo[i][pPayDayHad] >= 5)
          {
           PlayerInfo[i][pExp]++;
           PlayerInfo[i][pPayDayHad] = 0;
          }
         }
        }
        else
        {
         SendClientMessage(i, COLOR_WHITE, "[название]: Ты не получил(а) зарплату т.к. мало играл.");
        }
       }
      }
     }
     SaveAccounts();//Сохранение акков при зарплате
     Checkprop();
     SaveObshak();
     return true;
}
31.10.2014 в 03:57
Удалите из public PayDay()

Код
new rand = random(80);  
          if(rand < 77) { rand += 3; }  
          Lotto(rand);


И вставьте в public SyncTime после PayDay()
31.10.2014 в 11:36
Цитата ZioHik ()
Удалите из public PayDay()

Код
new rand = random(80);
if(rand < 77) { rand += 3; }
Lotto(rand);

И вставьте в public SyncTime после PayDay()


нет оно через каждие 1-2 минуты вот ето пишет вот это http://pixs.ru/showimage/samp004png_6741404_14518471.png
о а вот тут что я подождал как зп дало пипец ещо больше флуду вот скрины
1 http://pixs.ru/showimage/samp025png_3460378_14518763.png
2 http://pixs.ru/showimage/samp026png_7994937_14518768.png
3 http://pixs.ru/showimage/samp027png_3413322_14518770.png
4 http://pixs.ru/showimage/samp028png_9492262_14518772.png
31.10.2014 в 17:35
Вы удалили этот код из public PayDay() ?

Покажите как вы вставили этот код
31.10.2014 в 19:01
Иногда нужно обнулять переменные.Систему лично писал?
31.10.2014 в 19:25
вот 1 минута
// Таймеры
synctimer = SetTimer("SyncUp", 60000, 1); // Для часов

а код я вставил сюда
Код
public SyncTime()
{
  new tmphour;
  new tmpminute;
  new tmpsecond;
  new rand = random(80);
  if(rand < 77) { rand += 3; }
  Lotto(rand);
  gettime(tmphour, tmpminute, tmpsecond);
  FixHour(tmphour);
  tmphour = shifthour;
  if ((tmphour > ghour) || (tmphour == 0 && ghour == 23))
  {
   ghour = tmphour;
   PayDay();
   if (realtime)
   {
    SetWorldTime(tmphour);
   }
  }
}

Добавлено (31.10.2014, 19:53)
---------------------------------------------
блин я не так вставил плохо прочитал то мне так нужно было вставить?

Код
public SyncTime()
{
  new tmphour;
  new tmpminute;
  new tmpsecond;
  gettime(tmphour, tmpminute, tmpsecond);
  FixHour(tmphour);
  tmphour = shifthour;
  if ((tmphour > ghour) || (tmphour == 0 && ghour == 23))
  {
   ghour = tmphour;
   PayDay();
      new rand = random(80);
      if(rand < 77) { rand += 3; }
      Lotto(rand);
   if (realtime)
   {
    SetWorldTime(tmphour);
   }
  }
}
31.10.2014 в 19:53
Да. Теперь вставили правильно
31.10.2014 в 20:18
AlexPPPP, это стандартная GF. Только лото автоматическое.
31.10.2014 в 20:19
Цитата ZioHik ()
Да. Теперь вставили правильно

всеровно флудит когда зп дает что делать может что-то не так?
31.10.2014 в 21:03
Вы из public PayDay() этот кусок удалили?
31.10.2014 в 21:38
Решено флуда нет спасибо ZioHik за помощ..)
31.10.2014 в 21:40
Форум | www.SAMP-TEAM.com » Wiki SA-MP » Вопросы по скриптингу » помогите с флудом
Страница 1 из 212»
Поиск: