Голос игроков

Тема в разделе "Запросы", создана пользователем AleksandrM3, 29 авг 2015.

  1. AleksandrM3

    AleksandrM3

    Сообщения:
    110
    Симпатии:
    1
    Помогите подправить плагин, у меня в чате вместо цветов пишутся символы, пробовал переделать но компилится с ошибками.
    Исходника плагина нет, я его декомпил
    PHP:
    public PlVers:__version =
    {
        
    version 5,
        
    filevers "1.7.0",
        
    date "03/14/2015",
        
    time "23:26:06"
    };
    new 
    Float:NULL_VECTOR[3];
    new 
    String:NULL_STRING[4];
    public 
    Extension:__ext_core =
    {
        
    name "Core",
        
    file "core",
        
    autoload 0,
        
    required 0,
    };
    new 
    MaxClients;
    new 
    bool:g_EnemyVoice[66];
    public 
    Plugin:myinfo =
    {
        
    name "Toggle listen voice",
        
    description "Позволяет игроку заглушить всех сразу(игрок, прописавший !voice не будет слышать никого, пока снова не напишет эту команду)",
        
    author "ilga80|css-rus.ru",
        
    version "1.0.2b",
        
    url "http://css-rus.ru"
    };
    public 
    __ext_core_SetNTVOptional()
    {
        
    MarkNativeAsOptional("GetFeatureStatus");
        
    MarkNativeAsOptional("RequireFeature");
        
    MarkNativeAsOptional("AddCommandListener");
        
    MarkNativeAsOptional("RemoveCommandListener");
        
    MarkNativeAsOptional("BfWriteBool");
        
    MarkNativeAsOptional("BfWriteByte");
        
    MarkNativeAsOptional("BfWriteChar");
        
    MarkNativeAsOptional("BfWriteShort");
        
    MarkNativeAsOptional("BfWriteWord");
        
    MarkNativeAsOptional("BfWriteNum");
        
    MarkNativeAsOptional("BfWriteFloat");
        
    MarkNativeAsOptional("BfWriteString");
        
    MarkNativeAsOptional("BfWriteEntity");
        
    MarkNativeAsOptional("BfWriteAngle");
        
    MarkNativeAsOptional("BfWriteCoord");
        
    MarkNativeAsOptional("BfWriteVecCoord");
        
    MarkNativeAsOptional("BfWriteVecNormal");
        
    MarkNativeAsOptional("BfWriteAngles");
        
    MarkNativeAsOptional("BfReadBool");
        
    MarkNativeAsOptional("BfReadByte");
        
    MarkNativeAsOptional("BfReadChar");
        
    MarkNativeAsOptional("BfReadShort");
        
    MarkNativeAsOptional("BfReadWord");
        
    MarkNativeAsOptional("BfReadNum");
        
    MarkNativeAsOptional("BfReadFloat");
        
    MarkNativeAsOptional("BfReadString");
        
    MarkNativeAsOptional("BfReadEntity");
        
    MarkNativeAsOptional("BfReadAngle");
        
    MarkNativeAsOptional("BfReadCoord");
        
    MarkNativeAsOptional("BfReadVecCoord");
        
    MarkNativeAsOptional("BfReadVecNormal");
        
    MarkNativeAsOptional("BfReadAngles");
        
    MarkNativeAsOptional("BfGetNumBytesLeft");
        
    MarkNativeAsOptional("BfWrite.WriteBool");
        
    MarkNativeAsOptional("BfWrite.WriteByte");
        
    MarkNativeAsOptional("BfWrite.WriteChar");
        
    MarkNativeAsOptional("BfWrite.WriteShort");
        
    MarkNativeAsOptional("BfWrite.WriteWord");
        
    MarkNativeAsOptional("BfWrite.WriteNum");
        
    MarkNativeAsOptional("BfWrite.WriteFloat");
        
    MarkNativeAsOptional("BfWrite.WriteString");
        
    MarkNativeAsOptional("BfWrite.WriteEntity");
        
    MarkNativeAsOptional("BfWrite.WriteAngle");
        
    MarkNativeAsOptional("BfWrite.WriteCoord");
        
    MarkNativeAsOptional("BfWrite.WriteVecCoord");
        
    MarkNativeAsOptional("BfWrite.WriteVecNormal");
        
    MarkNativeAsOptional("BfWrite.WriteAngles");
        
    MarkNativeAsOptional("BfRead.ReadBool");
        
    MarkNativeAsOptional("BfRead.ReadByte");
        
    MarkNativeAsOptional("BfRead.ReadChar");
        
    MarkNativeAsOptional("BfRead.ReadShort");
        
    MarkNativeAsOptional("BfRead.ReadWord");
        
    MarkNativeAsOptional("BfRead.ReadNum");
        
    MarkNativeAsOptional("BfRead.ReadFloat");
        
    MarkNativeAsOptional("BfRead.ReadString");
        
    MarkNativeAsOptional("BfRead.ReadEntity");
        
    MarkNativeAsOptional("BfRead.ReadAngle");
        
    MarkNativeAsOptional("BfRead.ReadCoord");
        
    MarkNativeAsOptional("BfRead.ReadVecCoord");
        
    MarkNativeAsOptional("BfRead.ReadVecNormal");
        
    MarkNativeAsOptional("BfRead.ReadAngles");
        
    MarkNativeAsOptional("BfRead.GetNumBytesLeft");
        
    MarkNativeAsOptional("PbReadInt");
        
    MarkNativeAsOptional("PbReadFloat");
        
    MarkNativeAsOptional("PbReadBool");
        
    MarkNativeAsOptional("PbReadString");
        
    MarkNativeAsOptional("PbReadColor");
        
    MarkNativeAsOptional("PbReadAngle");
        
    MarkNativeAsOptional("PbReadVector");
        
    MarkNativeAsOptional("PbReadVector2D");
        
    MarkNativeAsOptional("PbGetRepeatedFieldCount");
        
    MarkNativeAsOptional("PbSetInt");
        
    MarkNativeAsOptional("PbSetFloat");
        
    MarkNativeAsOptional("PbSetBool");
        
    MarkNativeAsOptional("PbSetString");
        
    MarkNativeAsOptional("PbSetColor");
        
    MarkNativeAsOptional("PbSetAngle");
        
    MarkNativeAsOptional("PbSetVector");
        
    MarkNativeAsOptional("PbSetVector2D");
        
    MarkNativeAsOptional("PbAddInt");
        
    MarkNativeAsOptional("PbAddFloat");
        
    MarkNativeAsOptional("PbAddBool");
        
    MarkNativeAsOptional("PbAddString");
        
    MarkNativeAsOptional("PbAddColor");
        
    MarkNativeAsOptional("PbAddAngle");
        
    MarkNativeAsOptional("PbAddVector");
        
    MarkNativeAsOptional("PbAddVector2D");
        
    MarkNativeAsOptional("PbRemoveRepeatedFieldValue");
        
    MarkNativeAsOptional("PbReadMessage");
        
    MarkNativeAsOptional("PbReadRepeatedMessage");
        
    MarkNativeAsOptional("PbAddMessage");
        
    MarkNativeAsOptional("Protobuf.ReadInt");
        
    MarkNativeAsOptional("Protobuf.ReadFloat");
        
    MarkNativeAsOptional("Protobuf.ReadBool");
        
    MarkNativeAsOptional("Protobuf.ReadString");
        
    MarkNativeAsOptional("Protobuf.ReadColor");
        
    MarkNativeAsOptional("Protobuf.ReadAngle");
        
    MarkNativeAsOptional("Protobuf.ReadVector");
        
    MarkNativeAsOptional("Protobuf.ReadVector2D");
        
    MarkNativeAsOptional("Protobuf.GetRepeatedFieldCount");
        
    MarkNativeAsOptional("Protobuf.SetInt");
        
    MarkNativeAsOptional("Protobuf.SetFloat");
        
    MarkNativeAsOptional("Protobuf.SetBool");
        
    MarkNativeAsOptional("Protobuf.SetString");
        
    MarkNativeAsOptional("Protobuf.SetColor");
        
    MarkNativeAsOptional("Protobuf.SetAngle");
        
    MarkNativeAsOptional("Protobuf.SetVector");
        
    MarkNativeAsOptional("Protobuf.SetVector2D");
        
    MarkNativeAsOptional("Protobuf.AddInt");
        
    MarkNativeAsOptional("Protobuf.AddFloat");
        
    MarkNativeAsOptional("Protobuf.AddBool");
        
    MarkNativeAsOptional("Protobuf.AddString");
        
    MarkNativeAsOptional("Protobuf.AddColor");
        
    MarkNativeAsOptional("Protobuf.AddAngle");
        
    MarkNativeAsOptional("Protobuf.AddVector");
        
    MarkNativeAsOptional("Protobuf.AddVector2D");
        
    MarkNativeAsOptional("Protobuf.RemoveRepeatedFieldValue");
        
    MarkNativeAsOptional("Protobuf.ReadMessage");
        
    MarkNativeAsOptional("Protobuf.ReadRepeatedMessage");
        
    MarkNativeAsOptional("Protobuf.AddMessage");
        
    VerifyCoreVersion();
        return 
    0;
    }

    PrintToChatAll(String:format[])
    {
        
    decl String:buffer[192];
        new 
    1;
        while (
    <= MaxClients)
        {
            if (
    IsClientInGame(i))
            {
                
    SetGlobalTransTarget(i);
                
    VFormat(buffer192format2);
                
    PrintToChat(i"%s"buffer);
            }
            
    i++;
        }
        return 
    0;
    }

    public 
    void:OnPluginStart()
    {
        
    RegConsoleCmd("voice"voice""0);
        return 
    void:0;
    }

    public 
    void:OnMapStart()
    {
        
    CreateTimer(60.0voice_adcany:03);
        return 
    void:0;
    }

    public 
    Action:voice_adc(Handle:timer)
    {
        
    PrintToChatAll("\x0733CCFF[Voice] \x07F8F8FFНапишите \x07FFFF47!voice\x07F8F8FF, чтобы заглушить/начать слышать всех");
        return 
    Action:0;
    }

    public 
    void:OnClientPutInServer(client)
    {
        
    g_EnemyVoice[client] = 1;
        return 
    void:0;
    }

    public 
    Action:voice(clientargs)
    {
        if (
    client)
        {
            if (
    g_EnemyVoice[client])
            {
                
    g_EnemyVoice[client] = 0;
                
    PrintInfo(client);
            }
            
    g_EnemyVoice[client] = 1;
            
    PrintInfo(client);
        }
        return 
    Action:3;
    }

    public 
    void:OnClientDisconnect(client)
    {
        
    g_EnemyVoice[client] = 1;
        return 
    void:0;
    }

    PrintInfo(client)
    {
        if (!
    g_EnemyVoice[client])
        {
            new 
    1;
            while (
    <= MaxClients)
            {
                new 
    var1;
                if (
    IsClientInGame(i) && !IsFakeClient(i) && client != i)
                {
                    
    SetListenOverride(clientiListenOverride:1);
                }
                
    i++;
            }
        }
        else
        {
            new 
    1;
            while (
    <= MaxClients)
            {
                new 
    var2;
                if (
    IsClientInGame(i) && !IsFakeClient(i) && client != i)
                {
                    
    SetListenOverride(clientiListenOverride:0);
                }
                
    i++;
            }
        }
        if (!
    g_EnemyVoice[client])
        {
            
    PrintToChat(client"\x0733CCFF[Voice] \x07F8F8FFТеперь вы никого не будете слышать!");
        }
        else
        {
            
    PrintToChat(client"\x0733CCFF[Voice] \x07F8F8FFТеперь вы будете слышать всех");
        }
        return 
    0;
    }

    public 
    void:OnClientPostAdminCheck(client)
    {
        new 
    1;
        while (
    <= MaxClients)
        {
            new 
    var1;
            if (
    IsClientInGame(i) && !IsFakeClient(i) && client != && !g_EnemyVoice[i])
            {
                
    SetListenOverride(iclientListenOverride:1);
            }
            
    i++;
        }
        return 
    void:0;
    }



    У меня css34
     
  2. Scarface_slv

    Scarface_slv

    Сообщения:
    228
    Симпатии:
    47
    Наверно так, не проверял
    PHP:
    #include <sdktools_voice> 

    public Plugin:myinfo 

        
    name "Toggle listen voice"
        
    description "Позволяет игроку заглушить всех сразу(игрок, прописавший !voice не будет слышать никого, пока снова не напишет эту команду)"
        
    author "ilga80|css-rus.ru"
        
    version "1.0.2b"
        
    url "http://css-rus.ru" 
    }; 

    new 
    bool:g_EnemyVoice[MAXPLAYERS+1];

    public 
    OnPluginStart() RegConsoleCmd("voice"voice); 

    public 
    OnMapStart() CreateTimer(60.0voice_adc_TIMER_REPEAT); 

    public 
    Action:voice_adc(Handle:timer
        
    PrintToChatAll("\x01[Voice] \x03Напишите \x04!voice\x03, чтобы заглушить/начать слышать всех"); 

    public 
    OnClientPostAdminCheck(clientPrintInfo(clienttrue);

    public 
    Action:voice(clientargs

        if(
    client 0PrintInfo(client); 
        return 
    Plugin_Handled;


    PrintInfo(clientbool:connect false)

        if(!
    connect
        {
            
    g_EnemyVoice[client] = !g_EnemyVoice[client];
            if(
    g_EnemyVoice[client]) PrintToChat(client"\x01[Voice] \x03Теперь вы никого не будете слышать!"); 
            else 
    PrintToChat(client"\x01[Voice] \x03Теперь вы будете слышать всех"); 
        }
        else 
    g_EnemyVoice[client] = false
        for(new 
    1<= MaxClientsi++)
        {
            if(
    != client && IsClientInGame(i) && !IsFakeClient(i))
            {
                if(!
    connectSetListenOverride(clientig_EnemyVoice[client] ? Listen_No Listen_Default); 
                else if(
    g_EnemyVoice[i]) SetListenOverride(iclientListen_No); 
            }
        }

     
  3. AleksandrM3

    AleksandrM3

    Сообщения:
    110
    Симпатии:
    1

    сейчас попробую

    Добавлено через 2 минуты
    Скомпилировался) сейчас попробую поставлю

    Добавлено через 14 минут
    Все отлично работает спасибо.
     
    Последнее редактирование: 30 авг 2015