16:04
ОбновитьСмайлыУправление мини-чатом
МИНИ-ЧАТ
Главная страница!

 



 
          





Рекомендуем:





Последние Файлы GTA 4 Последние Файлы GTA-MP Реклама
Скрипт GTA 4 элементы Watch... 07.09.2014
Ferrari 360 Spider [EPM con... 13.12.2013
Porsche Cayenne Turbo 2012 ... 13.12.2013
Shelby Terlingua Mustang v1... 13.12.2013
Hamann Lamborghini Gallardo... 27.10.2013
[GM] The Big PEN1:LS v2.00 ... 04.12.2017
Dgun (AvnanceRP,SampRP,Dimo... 19.03.2016
SAMP скрипт SX Events (MySQ... 03.03.2016
Карта ASL мэрия для SAMP се... 03.03.2016
AIM для SA-MP 0.3.7 22.02.2016
  • Страница 1 из 1
  • 1
Модератор форума: Alcoholik  
[Помощь]Помогите исправитть проблемы
MakeДата: Пятница, 05.08.2011, 08:46 | Сообщение # 1
Уверенный в себе
Группа: Пользователи
Сообщений: 229
Награды: 5
Город: Новосибирск
Репутация: 16
Замечания: 40%
Статус:
help
у меня такая идея,если игрока с банды не просто кикают,а он кикается предупреждениями 3/3=кик,то я хочу сделать,что-бы после кика варнами,с какой-либо организации/банды,игрока не могли принять ни в 1 банду/орг. в течении 2х дней,переменные я создаю,а как сделать что-бы таймер сохранялся по дням,тоесть эти 2 дня шли,только тогда,когда ты в игре,и по истечению срока анулировались,помогите плз!;d

И ещё у меня возникла такая проблема с маской,когда игрок Логинется и в этот момент есть игрок в маске,то при заходе,он не видит ник,у этого хитмана,а когда он умерает,то видит,даже если хит его не убил,что сделать помогите,вот в ЛОгине
Code
    for(new i = 0; i < MAX_PLAYERS; i++)    
           {    
               if(IsPlayerConnected(i))    
               {    
                   if(skrit[i] >= 1)    
                   {    
                       ShowPlayerNameTagForPlayer(playerid, i, 0);    
                   }    
               }    
           }  

,а когда это вставляю в спавн,то при смерти,ник хитмана становится виден. Что сделать?

И ещё у меня возник такой баг: Если ты заправляешься на заправке,(там диалог-окно),то когда ты вибираешь кол-во литров,то потом появляется другое диалоговое окно,а точнее не окно,а listitem из другово Диалога,что делать?(не только при заправке,и при других бывает появляется 1 и тот же Диалог с этой листитемой...),что сделать,может кто знает? ,а поменял уже номер диалога,и всё равно...

B ещё у меня в спеке показывает мои данные,а не данные игрока,за которым спекаю,помогите ;D

вот команда спека:
Code
if(strcmp(cmd, "/spec", true) == 0)
    {
    if(IsPlayerConnected(playerid))
       {
        //new tmp[256];
        new specid;
     tmp = strtok(cmdtext, idx);

     if(!strlen(tmp))
     {
      SendClientMessage(playerid, COLOR_RED, "Unlimited Space: /spec [id_игрока/ЧастьИмени]");
      return 1;
     }
     TextDrawHideForPlayer(playerid,Specsid[playerid]);
     specid = ReturnUser(tmp);
     if(specid == playerid)
     {
        SendClientMessage(playerid, COLOR_RED, "Ошибка: Нельзя наблюдать за самим собой!");
      return 1;
     }
     if (PlayerInfo[playerid][pAdmin] >= 1)
     {
      if(IsPlayerConnected(specid))
      {
       KillTimer(SpecTimer[playerid]);
                  TextDrawHideForPlayer(playerid,Specsid[playerid]);
       if(GetPlayerState(specid) == PLAYER_STATE_SPECTATING && gSpectateID[specid] != INVALID_PLAYER_ID)
       {
        GetPlayerName(gSpectateID[specid], sendername, sizeof(sendername));
           format(string, sizeof(string), "Ошибка: Этот игрок наблюдает за [%d]%s!",gSpectateID[specid], sendername);
           SendClientMessage(playerid, COLOR_RED, string);
           return 1;
       }
       giveplayerid = ReturnUser(tmp);
      if(GetPlayerState(giveplayerid) == 1)
      {
          SetPlayerInterior(playerid,GetPlayerInterior(giveplayerid));
       SetPlayerVirtualWorld(playerid,GetPlayerVirtualWorld(giveplayerid));
                           SpecTimer[playerid]=SetTimerEx("Specrefresh",1000,true,"ii",playerid,giveplayerid);
                      TextDrawShowForPlayer(playerid, Specsid[playerid]);
      }
      else if(GetPlayerState(giveplayerid) == 2)
      {
          SetPlayerInterior(playerid,GetPlayerInterior(giveplayerid));
       SetPlayerVirtualWorld(playerid,GetPlayerVirtualWorld(giveplayerid));
                           SpecTimer[playerid]=SetTimerEx("Specrefresh",1000,true,"ii",playerid,giveplayerid);
                      TextDrawShowForPlayer(playerid, Specsid[playerid]);
      }
      else if(GetPlayerState(giveplayerid) == 3)
      {
          SetPlayerInterior(playerid,GetPlayerInterior(giveplayerid));
       SetPlayerVirtualWorld(playerid,GetPlayerVirtualWorld(giveplayerid));
                           SpecTimer[playerid]=SetTimerEx("Specrefresh",1000,true,"ii",playerid,giveplayerid);
                      TextDrawShowForPlayer(playerid, Specsid[playerid]);
      }
       for(new i=0; i<GetMaxPlayers(); i++)
       {
        if(IsPlayerConnected(i))
        {
               if(GainAdmin[i] == 1)
                    {
             new admin[MAX_PLAYER_NAME]; new player[MAX_PLAYER_NAME];
             GetPlayerName(playerid, admin,sizeof(admin));
             GetPlayerName(specid, player,sizeof(player));
          format(string,sizeof(string),"Gain Admin: {FFFFFF}%s начал слежку за %s.",admin,player);
                     SendClientMessage(i, COLOR_LIGHTRED, string);
         }
        }
       }
       StartSpectate(playerid, specid);

//     AdminLog(playerid," Использованно: /spec");
      }
     }
     else
     {
      SendClientMessage(playerid, COLOR_GRAD1, "Ошибка: Вы не администратор");
     }
    }
    return 1;
   }

Старт спека
Code
stock StartSpectate(playerid, specid)
{
   for(new x=0; x<GetMaxPlayers(); x++)
   {
       if(GetPlayerState(x) == PLAYER_STATE_SPECTATING && gSpectateID[x] == playerid)
    {
          AdvanceSpectate(x);
    }
   }
   if(IsPlayerInAnyVehicle(specid))
   {
    SetPlayerInterior(playerid,GetPlayerInterior(specid));
    TogglePlayerSpectating(playerid, 1);
    PlayerSpectateVehicle(playerid, GetPlayerVehicleID(specid));
    gSpectateID[playerid] = specid;
    gSpectateType[playerid] = ADMIN_SPEC_TYPE_VEHICLE;
   }
   else
   {
    SetPlayerInterior(playerid,GetPlayerInterior(specid));
    TogglePlayerSpectating(playerid, 1);
    PlayerSpectatePlayer(playerid, specid);
    gSpectateID[playerid] = specid;
    gSpectateType[playerid] = ADMIN_SPEC_TYPE_PLAYER;
   }
   return 1;
}

вот что показывает в SetTimerEx("Specrefresh",1000,true,"ii",playerid,giveplayerid);(паблике)
Code
forward Specrefresh(playerid, giveplayerid);
public Specrefresh(playerid, giveplayerid)
{
   new string[100], name[24];
   //new gun;
   //new ammo;
   new specid;
                       new Float:health;
                      GetPlayerHealth(specid, health);
   GetPlayerName(specid,name,sizeof(name));
   format(string,sizeof(string),"~n~~n~~n~~n~~n~~n~~n~~n~~w~%s - ID:%d~n~Hp:%.0f"/*~n~Gun: %s~n~Patrons: %d*/, name,specid,health/*,WeaponNames[gun],ammo*/);
   GameTextForPlayer(playerid,string,999999999999,3);
      return 1;
}

Дам +,и наградку



http://killerjo.net/ <= зайди
Разработка сервера: Unlimited Space (0.3e) [RPG] [RUS/UA]
Ip: 176.32.36.23:7777


Сообщение отредактировал Make - Пятница, 05.08.2011, 08:58
Дикий_БиллДата: Пятница, 05.08.2011, 11:49 | Сообщение # 2
Освоившийся
Группа: Пользователи
Сообщений: 76
Награды: 1
Город: ...
Репутация: -46
Замечания: 100%
Статус:
Quote (Make)
у меня такая идея,если игрока с банды не просто кикают,а он кикается предупреждениями 3/3=кик,то я хочу сделать,что-бы после кика варнами,с какой-либо организации/банды,игрока не могли принять ни в 1 банду/орг. в течении 2х дней,переменные я создаю,а как сделать что-бы таймер сохранялся по дням,тоесть эти 2 дня шли,только тогда,когда ты в игре,и по истечению срока анулировались,помогите плз!;d

Добавляешь в конструкцию enum pInfo значение, когда выкидываем из банды ровняем его 1.
И в ежесекундный таймер:
Code
if(PlayerInfo[id игрока][название переменной] > 0)
{
PlayerInfo[id игрока][название переменной]++;
//60*60*24*2 = 172800
if(PlayerInfo[id игрока][название переменной] >= 172800)
{
PlayerInfo[id игрока][название переменной] = 0;
//Тут сообщение что снова можно в банду
}
}

В команду где принимают во фракцию, условие:
if(PlayerInfo[id игрока][название переменной] > 0) return //сообщение

  • Страница 1 из 1
  • 1
Поиск:





 


 


 
Хостинг от uCoz samp.at.ua