Добро пожаловать на Pro Pawn - Портал о PAWN-скриптинге.
Страница 1 из 4 1 2 3 ... ПоследняяПоследняя
Показано с 1 по 10 из 33

Тема: Kill list

  1. #1
    Аватар для Shayba
    Пользователь

    Статус
    Оффлайн
    Регистрация
    11.10.2014
    Сообщений
    195
    Репутация:
    23 ±

    Kill list

    Привет жителям и гостям pro-pawn
    У меня такая проблема,нашел мануал о создании килл листа,начал делать его в моде и появилась такая проблема.
    К примеру банда ацтек хочет закаптить вагос им в ответ пишет что банды нет в онлайне,а когда вагос каптит ацтек все в норме.
    Подозреваю что в команду /capture я не туда вписываю,подскажите как будет правильно.
    За помощь отблагодарю.

    PHP код:
        if(!strcmp(cmd"/capture",true))
        {
            if(
    FrakCD[PlayerInfo[playerid][pMember]] == 0)
            {
                if(!
    IsInAllowed(playerid)) return SendClientMessage(playerid,COLOR_GRAD1"Âû íå ìîæåòå çàõâàòèòü òåððèòîðèþ");
                new 
    tmphourtmpminutetmpsecond;
                
    gettime(tmphourtmpminutetmpsecond);
                
    tmphour shifthour;
                for(new 
    0130i++)
                {
                    if(
    PlayerToKvadrat(playerid,GZInfo[i][gCoords][0], GZInfo[i][gCoords][1],GZInfo[i][gCoords][2],GZInfo[i][gCoords][3]) && GZInfo[i][gFrakVlad] != PlayerInfo[playerid][pMember] && ZoneOnBattle[i]==0)
                    {
                        if(
    FrakCD[GZInfo[i][gFrakVlad]] != 0) return SendClientMessage(playerid,COLOR_GRAD1,"Áàíäà íà êîòîðóþ âû õîòèòå íàïàñàòü óæå âîåâàëà â ýòîì ÷àñó");
                        if(
    IsATerra(playerid)) return SendClientMessage(playerid,COLOR_WHITE,"Íåëüçÿ çàõâàòèòü ýòó òåððèòîðèþ");
                        if(!
    IsFracOnline(GZInfo[i][gFrakVlad])) return SendClientMessage(playeridCOLOR_GRAD1"Áàíäà, êîòîðóþ âû õîòèòå àòàêîâàòü - {F50E0E}íåò â îíëàéíå.");
                        
    format(string,sizeof(string),"[Âíèìàíèå]: Âàøà áàíäà íàïàëà íà òåððèòîðèþ %s",GetGangName(GZInfo[i][gFrakVlad]));
                        
    SendFamilyMessage(PlayerInfo[playerid][pMember],0x00B953AA,string);
                        
    format(string,sizeof(string), "[Âíèìàíèå]: Íà âàøó òåððèòîðèþ íàïàëà áàíäà %s",GetGangName(PlayerInfo[playerid][pMember]));
                        
    SendFamilyMessage(GZInfo[i][gFrakVlad],0xFF8CEFAA,string);
                        
    GangZoneFlashForAll(GZInfo[i][gID],GetGZColorF(PlayerInfo[playerid][pMember]));
                        
    GZSafeTime[i] = 600;
                        
    FrakCD[PlayerInfo[playerid][pMember]] = 3600;
                        
    GZInfo[i][gNapad] = PlayerInfo[playerid][pMember];
                        
    ZoneTimer[i] = 720;
                        
    ZoneOnBattle[i] = 1;
                        
    ItsWar[GZInfo[i][gNapad]] = true;
                        
    ItsWar[GZInfo[i][gFrakVlad]] = true;
                                            
    killlist true;// Сюда я вписываю эту строку,правильно ли это? Так как сказано вписать ее в команду /capture
                        
    break;
                    }
                }
            }
            else
            {
                return 
    SendClientMessage(playeridCOLOR_GRAD1"Âàøà áàíäà åùå íå îêðåïëà ñ ìîìåíòà ïîñëåäíåãî çàõâàòà.");
            }
            return 
    1;
        } 

  2. #2
    Аватар для gangzone.ini
    Пользователь

    Статус
    Оффлайн
    Регистрация
    15.06.2014
    Сообщений
    651
    Репутация:
    106 ±
    Килл лист правельно, а на счёт:
    вагос им в ответ пишет что банды нет в онлайне,а когда вагос каптит ацтек все в норме
    Кидай нормальные символы

  3. #3
    Аватар для Shayba
    Пользователь

    Статус
    Оффлайн
    Регистрация
    11.10.2014
    Сообщений
    195
    Репутация:
    23 ±
    Покажу конкретно что куда засунул,думаю поймете что да как.
    Ко всем new
    PHP код:
    new bool:killlist
    В public GzCheck в окончание капта
    PHP код:
                                SendFamilyMessage(GZInfo[i][gFrakVlad], 0xC56565AA,"Вы потеряли контроль одной из своей территории");
                            }
                            
    ZoneOnBattle[zl] = 0;
                            
    GZInfo[zl][gNapad] = 0;
                            
    GZInfo[zl][gFrakVlad] = zx;
                            
    GangZoneStopFlashForAll(GZInfo[zl][gID]);
                            
    GangZoneHideForAll(GZInfo[zl][gID]);
                            
    GangZoneShowForAll(GZInfo[zl][gID],GetGangZoneColor(zl));
                            
    ItsWar[GZInfo[zl][gNapad]] = false;
                            
    ItsWar[GZInfo[zl][gFrakVlad]] = false;
                            
    SaveGZ();
                            
    killlist false;// Сюда засунул,в окончание капта
                            
    break;
                        }
                    }
                }
            }
        } 
    В public OnPlayerDeath
    PHP код:
        if(killlist == true)
        {
            foreach(new 
    iPlayer)
            {
                if(
    IsAGang(i))
                {
                    
    SendDeathMessageToPlayer(i,killeridplayeridreason);
                }
            }
        } 
    В public OnGameModeInit
    PHP код:
        ResetElevatorQueue(); // лифт
        
    Elevator_Initialize();// лифт
        
    LoadHouseItems();// туалет
        
    killlist false;// Вот строка 
    Ну и в /capture указано выше.

    Вот я взял лидерку Vagos,другу дал Aztek,стоим на моей тере он каптит и ему в ответ мол банды нет в онлайне,хотя я рядом стою,едим к нему на теру я капчу и все норм,капт начался.Ах да и еще,килл лист показывает кто кого убил все хорошо,но не выключается по окончанию капта.
    Очень надеюсь на вашу помощь.
    Последний раз редактировалось Shayba; 01.05.2015 в 16:44.

  4. #4
    Аватар для Shayba
    Пользователь

    Статус
    Оффлайн
    Регистрация
    11.10.2014
    Сообщений
    195
    Репутация:
    23 ±
    Подниму.

  5. #5
    Аватар для bredvix
    Старичок

    Статус
    Оффлайн
    Регистрация
    01.08.2013
    Адрес
    Нижний Новгород
    Сообщений
    480
    Репутация:
    183 ±
    Полностью кидай public GzCheck и руссифицированную команду /capture

  6. #6
    Аватар для Shayba
    Пользователь

    Статус
    Оффлайн
    Регистрация
    11.10.2014
    Сообщений
    195
    Репутация:
    23 ±
    Цитата Сообщение от Dron_Turbo Посмотреть сообщение
    Полностью кидай public GzCheck и руссифицированную команду /capture
    PHP код:
    public GzCheck()
    {
        for(new 
    0sizeof(GZInfo); i++)
        {
            if(
    ZoneOnBattle[i] == && GZSafeTime[i] == 0)
            {
                
    ZoneTimer[i] -= 5;
                if(
    ZoneTimer[i] <= 0)
                {
                    
    SendGangMessage(i,COLOR_RED"Время на захват территории вышло");
                    
    ZoneOnBattle[i] = 0;
                    
    GangZoneStopFlashForAll(GZInfo[i][gID]);
                    
    SaveGZ();
                }
                for(new 
    0MAX_PLAYERSx++)
                {
                    if(
    PlayerToKvadrat(x,GZInfo[i][gCoords][0], GZInfo[i][gCoords][1],GZInfo[i][gCoords][2],GZInfo[i][gCoords][3])&&IsInAllowed(x))
                    {
                        new 
    faction;
                        if(
    PlayerInfo[x][pLeader] !=0) {faction PlayerInfo[x][pLeader];}
                        else { 
    faction PlayerInfo[x][pMember];}
                        
    OnZONE[i][faction] ++;
                    }
                }
                new 
    asd;
                for(new 
    020x++)
                {
                    if(
    OnZONE[i][x] > && IsInAllowedF(x)) asd++;
                }
                if(
    asd == 1)
                {
                    for(new 
    020x++)
                    {
                        if(
    OnZONE[i][x] > 0)
                        {
                            new 
    string[1024];
                            new 
    zx,zl;
                            
    zx x;
                            
    zl i;
                            if(
    GZInfo[i][gFrakVlad] == x)
                            {
                                 
    SendFamilyMessage(GZInfo[i][gFrakVlad],0x00B953AA,"Вы отстояли свою территорию");
                                 
    SendFamilyMessage(GZInfo[i][gNapad],0xC56565AA,"Вам не удалось захватить территорию");
                            }
                            else
                            {
                                
    SendFamilyMessage(GZInfo[i][gNapad], 0x00B953AA,"Вы взяли под свой контроль новую территорию");
                                switch(
    GZInfo[i][gNapad])
                                {
                                    case 
    12:
                                    {
                                        
    format(stringsizeof(string), "Теперь ваша банда будет получать каждый час %d вирт",TotalGzB*30);
                                        
    SendFamilyMessage(GZInfo[i][gNapad], 0x00B953AAstring);
                                    }
                                    case 
    13:
                                    {
                                        
    format(stringsizeof(string), "Теперь ваша банда будет получать каждый час %d вирт",TotalGzV*30);
                                        
    SendFamilyMessage(GZInfo[i][gNapad], 0x00B953AAstring);
                                    }
                                    case 
    15:
                                    {
                                        
    format(stringsizeof(string), "Теперь ваша банда будет получать каждый час %d вирт",TotalGzG*30);
                                        
    SendFamilyMessage(GZInfo[i][gNapad], 0x00B953AAstring);
                                    }
                                    case 
    17:
                                    {
                                        
    format(stringsizeof(string), "Теперь ваша банда будет получать каждый час %d вирт",TotalGzA*30);
                                        
    SendFamilyMessage(GZInfo[i][gNapad], 0x00B953AAstring);
                                    }
                                    case 
    18:
                                    {
                                        
    format(stringsizeof(string), "Теперь ваша банда будет получать каждый час %d вирт",TotalGzR*30);
                                        
    SendFamilyMessage(GZInfo[i][gNapad], 0x00B953AAstring);
                                    }
                                }
                                
    SendFamilyMessage(GZInfo[i][gFrakVlad], 0xC56565AA,"Вы потеряли контроль одной из своих территорий");
                            }
                            
    ZoneOnBattle[zl] = 0;
                            
    GZInfo[zl][gNapad] = 0;
                            
    GZInfo[zl][gFrakVlad] = zx;
                            
    GangZoneStopFlashForAll(GZInfo[zl][gID]);
                            
    GangZoneHideForAll(GZInfo[zl][gID]);
                            
    GangZoneShowForAll(GZInfo[zl][gID],GetGangZoneColor(zl));
                            
    ItsWar[GZInfo[zl][gNapad]] = false;
                            
    ItsWar[GZInfo[zl][gFrakVlad]] = false;
                            
    SaveGZ();
                            
    killlist false;// килл лист в окончание капта
                            
    break;
                        }
                    }
                }
            }
        }
        for(new 
    0130i++)
        {
            for(new 
    020z++)
            {
                
    OnZONE[i][z] = 0;
            }
        }

    И русифицированная команда /capture

    PHP код:
        if(!strcmp(cmd"/capture",true))
        {
            if(
    FrakCD[PlayerInfo[playerid][pMember]] == 0)
            {
                if(!
    IsInAllowed(playerid)) return SendClientMessage(playerid,COLOR_GRAD1"Вы не можете захватывать территорию");
                new 
    tmphourtmpminutetmpsecond;
                
    gettime(tmphourtmpminutetmpsecond);
                
    tmphour shifthour;
                for(new 
    0130i++)
                {
                    if(
    PlayerToKvadrat(playerid,GZInfo[i][gCoords][0], GZInfo[i][gCoords][1],GZInfo[i][gCoords][2],GZInfo[i][gCoords][3]) && GZInfo[i][gFrakVlad] != PlayerInfo[playerid][pMember] && ZoneOnBattle[i]==0)
                    {
                        if(
    FrakCD[GZInfo[i][gFrakVlad]] != 0) return SendClientMessage(playerid,COLOR_GRAD1,"Банда на которую вы хотите напасть,уже воевала в этом часу");
                        if(
    IsATerra(playerid)) return SendClientMessage(playerid,COLOR_WHITE,"Нельзя захватить эту территорию");
                        if(!
    IsFracOnline(GZInfo[i][gFrakVlad])) return SendClientMessage(playeridCOLOR_GRAD1"Банда которую вы хотите атаковать - {F50E0E}нет в онлайне.");
                        
    format(string,sizeof(string),"[Внимание]: Ваша банда напала на территорию %s",GetGangName(GZInfo[i][gFrakVlad]));
                        
    SendFamilyMessage(PlayerInfo[playerid][pMember],0x00B953AA,string);
                        
    format(string,sizeof(string), "[Внимание]: На вашу территорию напала банда %s",GetGangName(PlayerInfo[playerid][pMember]));
                        
    SendFamilyMessage(GZInfo[i][gFrakVlad],0xFF8CEFAA,string);
                        
    GangZoneFlashForAll(GZInfo[i][gID],GetGZColorF(PlayerInfo[playerid][pMember]));
                        
    GZSafeTime[i] = 600;
                        
    FrakCD[PlayerInfo[playerid][pMember]] = 3600;
                        
    GZInfo[i][gNapad] = PlayerInfo[playerid][pMember];
                        
    ZoneTimer[i] = 720;
                        
    ZoneOnBattle[i] = 1;
                        
    ItsWar[GZInfo[i][gNapad]] = true;
                        
    ItsWar[GZInfo[i][gFrakVlad]] = true;
                        
    killlist true// килл лист в начало капта
                        
    break;
                    }
                }
            }
            else
            {
                return 
    SendClientMessage(playeridCOLOR_GRAD1"Ваша банда еще не окрепла с момента последнего захвата.");
            }
            return 
    1;
        } 
    Последний раз редактировалось Shayba; 03.05.2015 в 16:48.

  7. #7
    Аватар для bredvix
    Старичок

    Статус
    Оффлайн
    Регистрация
    01.08.2013
    Адрес
    Нижний Новгород
    Сообщений
    480
    Репутация:
    183 ±
    сток кинь IsFracOnline

    p.s. замени на мой:
    PHP код:
    public GzCheck()
    {
        for(new 
    0sizeof(GZInfo); i++)
        {
            if(
    ZoneOnBattle[i] == && GZSafeTime[i] == 0)
            {
                
    ZoneTimer[i] -= 5;
                if(
    ZoneTimer[i] <= 0)
                {
                    
    SendGangMessage(i,COLOR_RED"Время на захват территории вышло");
                    
    ZoneOnBattle[i] = 0;
                    
    GangZoneStopFlashForAll(GZInfo[i][gID]);
                    
    SaveGZ();
                }
                for(new 
    0MAX_PLAYERSx++)
                {
                    if(
    PlayerToKvadrat(x,GZInfo[i][gCoords][0], GZInfo[i][gCoords][1],GZInfo[i][gCoords][2],GZInfo[i][gCoords][3])&&IsInAllowed(x))
                    {
                        new 
    faction;
                        if(
    PlayerInfo[x][pLeader] !=0) {faction PlayerInfo[x][pLeader];}
                        else { 
    faction PlayerInfo[x][pMember];}
                        
    OnZONE[i][faction] ++;
                    }
                }
                new 
    asd;
                for(new 
    020x++)
                {
                    if(
    OnZONE[i][x] > && IsInAllowedF(x)) asd++;
                }
                if(
    asd == 1)
                {
                    for(new 
    020x++)
                    {
                        if(
    OnZONE[i][x] > 0)
                        {
                            new 
    string[1024];
                            new 
    zx,zl;
                            
    zx x;
                            
    zl i;
                            if(
    GZInfo[i][gFrakVlad] == x)
                            {
                                 
    SendFamilyMessage(GZInfo[i][gFrakVlad],0x00B953AA,"Вы отстояли свою территорию");
                                 
    SendFamilyMessage(GZInfo[i][gNapad],0xC56565AA,"Вам не удалось захватить территорию");
                            }
                            else
                            {
                                
    SendFamilyMessage(GZInfo[i][gNapad], 0x00B953AA,"Вы взяли под свой контроль новую территорию");
                                switch(
    GZInfo[i][gNapad])
                                {
                                    case 
    12:
                                    {
                                        
    format(stringsizeof(string), "Теперь ваша банда будет получать каждый час %d вирт",TotalGzB*30);
                                        
    SendFamilyMessage(GZInfo[i][gNapad], 0x00B953AAstring);
                                    }
                                    case 
    13:
                                    {
                                        
    format(stringsizeof(string), "Теперь ваша банда будет получать каждый час %d вирт",TotalGzV*30);
                                        
    SendFamilyMessage(GZInfo[i][gNapad], 0x00B953AAstring);
                                    }
                                    case 
    15:
                                    {
                                        
    format(stringsizeof(string), "Теперь ваша банда будет получать каждый час %d вирт",TotalGzG*30);
                                        
    SendFamilyMessage(GZInfo[i][gNapad], 0x00B953AAstring);
                                    }
                                    case 
    17:
                                    {
                                        
    format(stringsizeof(string), "Теперь ваша банда будет получать каждый час %d вирт",TotalGzA*30);
                                        
    SendFamilyMessage(GZInfo[i][gNapad], 0x00B953AAstring);
                                    }
                                    case 
    18:
                                    {
                                        
    format(stringsizeof(string), "Теперь ваша банда будет получать каждый час %d вирт",TotalGzR*30);
                                        
    SendFamilyMessage(GZInfo[i][gNapad], 0x00B953AAstring);
                                    }
                                }
                                
    SendFamilyMessage(GZInfo[i][gFrakVlad], 0xC56565AA,"Вы потеряли контроль одной из своих территорий");
                            }
                            
    ZoneOnBattle[zl] = 0;
                            
    GZInfo[zl][gNapad] = 0;
                            
    GZInfo[zl][gFrakVlad] = zx;
                            
    GangZoneStopFlashForAll(GZInfo[zl][gID]);
                            
    GangZoneHideForAll(GZInfo[zl][gID]);
                            
    GangZoneShowForAll(GZInfo[zl][gID],GetGangZoneColor(zl));
                            
    ItsWar[GZInfo[zl][gNapad]] = false;
                            
    ItsWar[GZInfo[zl][gFrakVlad]] = false;
                            
    SaveGZ();
                            break;
                        }
                    }
                }
                
    killlist false;// килл лист в окончание капта
            
    }
        }
        for(new 
    0130i++)
        {
            for(new 
    020z++)
            {
                
    OnZONE[i][z] = 0;
            }
        }

    Последний раз редактировалось bredvix; 03.05.2015 в 21:52.

  8. #8
    Аватар для Shayba
    Пользователь

    Статус
    Оффлайн
    Регистрация
    11.10.2014
    Сообщений
    195
    Репутация:
    23 ±
    [QUOTE=Dron_Turbo;61078]сток кинь IsFracOnline

    PHP код:
    stock IsFracOnline(fracid)
    {
        for(new 
    iMAX_PLAYERSi++)
        {
            if(
    PlayerInfo[i][pMember] == fracid || PlayerInfo[i][pLeader] == fracid) return true;
            break;
        }
        return 
    false;

    Дрон,я заменил свой паблик на твой,теперь у меня все банды в сети а каптить не получается,банд якобы нет в онлайне.
    Последний раз редактировалось Shayba; 04.05.2015 в 19:56.

  9. #9
    Аватар для bredvix
    Старичок

    Статус
    Оффлайн
    Регистрация
    01.08.2013
    Адрес
    Нижний Новгород
    Сообщений
    480
    Репутация:
    183 ±
    PHP код:
    stock IsFracOnline(fracid)
    {
        foreach(
    Player,i)
        {
            if(
    gPlayerLogged[i] == 0) continue;
            if(
    PlayerInfo[i][pMember] == fracid || PlayerInfo[i][pLeader] == fracid) return 1;
        }
        return 
    0;

    Пробуй.
    Последний раз редактировалось bredvix; 05.05.2015 в 20:30.

  10. Пользователь сказал cпасибо:
    Shayba (08.05.2015)
  11. #10
    Аватар для Shayba
    Пользователь

    Статус
    Оффлайн
    Регистрация
    11.10.2014
    Сообщений
    195
    Репутация:
    23 ±
    Цитата Сообщение от Dron_Turbo Посмотреть сообщение
    PHP код:
    stock IsFracOnline(fracid)
    {
        foreach(
    Player,i)
        {
            if(
    gPlayerLogged[i] == 0) continue;
            if(
    PlayerInfo[i][pMember] == fracid || PlayerInfo[i][pLeader] == fracid) return 1;
        }
        return 
    0;

    Пробуй.
    Все хорошо работает,но только не пойму одно,килл лист по окончанию капта должен исчезать или он остается?

 

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

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

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

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

Ваши права

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