Форум программистов, компьютерный форум CyberForum.ru

Ошибки в скриптах - C++

Восстановить пароль Регистрация
 
Оператор пк
 Аватар для Оператор пк
10 / 10 / 1
Регистрация: 09.08.2010
Сообщений: 158
13.08.2012, 17:50     Ошибки в скриптах #1
Сам код

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
            }
 
        if (!_player->CanSpeak())
        {
            std::string timeStr = secsToTimeString(m_muteTime - time(NULL));
            SendNotification(GetTrinityString(LANG_WAIT_BEFORE_SPEAKING), timeStr.c_str());
            return;
        }        std::string sender;
                if ((sender->GetTotalPlayedTime() <= sWorld->getIntConfig(CONFIG_INT_CHAT_DISABLE_TIME)) && sender->GetSession()->GetSecurity() == SEC_PLAYER)
 
        {
 
            std::string adStr = secsToTimeString(sWorld->getIntConfig(CONFIG_INT_CHAT_DISABLE_TIME) - sender->GetTotalPlayedTime());
 
            SendNotification(GetTrinityString(LANG_DISABLE_CHAT), adStr.c_str());
 
            recv_data.rfinish();
 
            return;
 
        }

Сами ошибки

4>D:\Surce\Surce\mythCore\MythCore v24.x.xx\myth\myth\mythx1\mythx1\mythx1\src\server\game\Server\Protocol\Handlers\ChatHandler.cpp(172): error C2065: sender: необъявленный идентификатор
4>D:\Surce\Surce\mythCore\MythCore v24.x.xx\myth\myth\mythx1\mythx1\mythx1\src\server\game\Server\Protocol\Handlers\ChatHandler.cpp(172): error C2227: выражение слева от "->GetTotalPlayedTime" должно указывать на тип класса, структуры или объединения либо на универсальный тип
4> тип: 'unknown-type'
4>D:\Surce\Surce\mythCore\MythCore v24.x.xx\myth\myth\mythx1\mythx1\mythx1\src\server\game\Server\Protocol\Handlers\ChatHandler.cpp(172): error C2065: sender: необъявленный идентификатор
4>D:\Surce\Surce\mythCore\MythCore v24.x.xx\myth\myth\mythx1\mythx1\mythx1\src\server\game\Server\Protocol\Handlers\ChatHandler.cpp(172): error C2227: выражение слева от "->GetSession" должно указывать на тип класса, структуры или объединения либо на универсальный тип
4> тип: 'unknown-type'
4>D:\Surce\Surce\mythCore\MythCore v24.x.xx\myth\myth\mythx1\mythx1\mythx1\src\server\game\Server\Protocol\Handlers\ChatHandler.cpp(172): error C2227: выражение слева от "->GetSecurity" должно указывать на тип класса, структуры или объединения либо на универсальный тип
4>D:\Surce\Surce\mythCore\MythCore v24.x.xx\myth\myth\mythx1\mythx1\mythx1\src\server\game\Server\Protocol\Handlers\ChatHandler.cpp(176): error C2065: sender: необъявленный идентификатор
4>D:\Surce\Surce\mythCore\MythCore v24.x.xx\myth\myth\mythx1\mythx1\mythx1\src\server\game\Server\Protocol\Handlers\ChatHandler.cpp(176): error C2227: выражение слева от "->GetTotalPlayedTime" должно указывать на тип класса, структуры или объединения либо на универсальный тип
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
#include "ScriptPCH.h"
#include "Channel.h"
 
class System_Censure : public PlayerScript
{
public:
        System_Censure() : PlayerScript("System_Censure") {}
 
        void OnChat(Player* player, uint32 /*type*/, uint32 lang, std::string& msg)
        {
                CheckMessage(player, msg, lang, NULL, NULL, NULL, NULL);
        }
 
        void OnChat(Player* player, uint32 /*type*/, uint32 lang, std::string& msg, Player* receiver)
        {
                CheckMessage(player, msg, lang, receiver, NULL, NULL, NULL);
        }
 
        void OnChat(Player* player, uint32 /*type*/, uint32 lang, std::string& msg, Group* group)
        {
                CheckMessage(player, msg, lang, NULL, group, NULL, NULL);
        }
 
        void OnChat(Player* player, uint32 /*type*/, uint32 lang, std::string& msg, Guild* guild)
        {
                CheckMessage(player, msg, lang, NULL, NULL, guild, NULL);
        }
 
        void OnChat(Player* player, uint32 /*type*/, uint32 lang, std::string& msg, Channel* channel)
        {
                CheckMessage(player, msg, lang, NULL, NULL, NULL, channel);
        }
 
void CheckMessage(Player* player, std::string& msg, uint32 lang, Player* /*receiver*/, Group* /*group*/, Guild* /*guild*/, Channel* channel)
{
    //if (player->isGameMaster() || lang == LANG_ADDON)
            //return;
 
    // transform to lowercase (for simpler checking)
    std::string lower = msg;
    std::transform(lower.begin(), lower.end(), lower.begin(), ::tolower);
 
    uint8 cheksSize = 7;
    std::string checks[cheksSize];
    checks[0] ="http://";
    checks[1] =".com";
    checks[2] =".net";
    checks[3] =".org";
    checks[4] =".ru";
    checks[5] ="rondor";
    checks[6] ="www.";
    for (int i = 0; i < cheksSize; ++i)
        if (lower.find(checks[i]) != std::string::npos)
        {
            msg = "";
            ChatHandler(player).PSendSysMessage("Реклама запрещена!");           
            return;
        }
}   
};
 
void AddSC_System_Censure()
{
    new System_Censure();
}
ошибки.
3>D:\Surce\Surce\mythCore\MythCore v24.x.xx\myth\myth\mythx1\mythx1\mythx1\src\server\scripts\Custom\System_Censure.cpp(44): error C2057: требуется константное выражение
3>D:\Surce\Surce\mythCore\MythCore v24.x.xx\myth\myth\mythx1\mythx1\mythx1\src\server\scripts\Custom\System_Censure.cpp(44): error C2466: невозможно выделить память для массива постоянного нулевого размера
3>D:\Surce\Surce\mythCore\MythCore v24.x.xx\myth\myth\mythx1\mythx1\mythx1\src\server\scripts\Custom\System_Censure.cpp(44): error C2133: checks: неизвестный размер
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.08.2012, 17:50     Ошибки в скриптах
Посмотрите здесь:

ошибки C++
C++ ошибки
C++ Ошибки
ошибки C++
Ошибки VS C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
cossack5
54 / 48 / 1
Регистрация: 02.08.2012
Сообщений: 127
13.08.2012, 18:11     Ошибки в скриптах #2
#include <string> добавьте
Invader_Zim
Twilight Parasite
 Аватар для Invader_Zim
153 / 149 / 2
Регистрация: 21.07.2011
Сообщений: 907
13.08.2012, 18:16     Ошибки в скриптах #3
а почему код не весь, а кусками?
Оператор пк
 Аватар для Оператор пк
10 / 10 / 1
Регистрация: 09.08.2010
Сообщений: 158
13.08.2012, 18:37  [ТС]     Ошибки в скриптах #4
с первым кодом проблема решена остался только этот
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
#include "ScriptPCH.h"
#include "Channel.h"
#include <string>
 
class System_Censure : public PlayerScript
{
public:
        System_Censure() : PlayerScript("System_Censure") {}
 
        void OnChat(Player* player, uint32 /*type*/, uint32 lang, std::string& msg)
        {
                CheckMessage(player, msg, lang, NULL, NULL, NULL, NULL);
        }
 
        void OnChat(Player* player, uint32 /*type*/, uint32 lang, std::string& msg, Player* receiver)
        {
                CheckMessage(player, msg, lang, receiver, NULL, NULL, NULL);
        }
 
        void OnChat(Player* player, uint32 /*type*/, uint32 lang, std::string& msg, Group* group)
        {
                CheckMessage(player, msg, lang, NULL, group, NULL, NULL);
        }
 
        void OnChat(Player* player, uint32 /*type*/, uint32 lang, std::string& msg, Guild* guild)
        {
                CheckMessage(player, msg, lang, NULL, NULL, guild, NULL);
        }
 
        void OnChat(Player* player, uint32 /*type*/, uint32 lang, std::string& msg, Channel* channel)
        {
                CheckMessage(player, msg, lang, NULL, NULL, NULL, channel);
        }
 
void CheckMessage(Player* player, std::string& msg, uint32 lang, Player* /*receiver*/, Group* /*group*/, Guild* /*guild*/, Channel* channel)
{
    //if (player->isGameMaster() || lang == LANG_ADDON)
            //return;
 
    // transform to lowercase (for simpler checking)
    std::string lower = msg;
    std::transform(lower.begin(), lower.end(), lower.begin(), ::tolower);
 
    uint8 cheksSize = 7;
    std::string checks[cheksSize];
    checks[0] ="http://";
    checks[1] =".com";
    checks[2] =".net";
    checks[3] =".org";
    checks[4] =".ru";
    checks[5] ="rondor";
    checks[6] ="www.";
    for (int i = 0; i < cheksSize; ++i)
        if (lower.find(checks[i]) != std::string::npos)
        {
            msg = "";
            ChatHandler(player).PSendSysMessage("Реклама запрещена!");           
            return;
        }
}   
};
 
void AddSC_System_Censure()
{
    new System_Censure();
}
строка ошибки
C++
1
std::string checks[cheksSize];
сама ошибка
3>D:\Surce\Surce\mythCore\MythCore v24.x.xx\myth\myth\mythx1\mythx1\mythx1\src\server\scripts\Custom\System_Censure.cpp(45): error C2057: требуется константное выражение
3>D:\Surce\Surce\mythCore\MythCore v24.x.xx\myth\myth\mythx1\mythx1\mythx1\src\server\scripts\Custom\System_Censure.cpp(45): error C2466: невозможно выделить память для массива постоянного нулевого размера
3>D:\Surce\Surce\mythCore\MythCore v24.x.xx\myth\myth\mythx1\mythx1\mythx1\src\server\scripts\Custom\System_Censure.cpp(45): error C2133: checks: неизвестный размер
Добавлено через 14 минут
UP UP
Aloir
 Аватар для Aloir
216 / 216 / 13
Регистрация: 17.12.2010
Сообщений: 688
13.08.2012, 18:52     Ошибки в скриптах #5
поидее
C++
1
const uint8 cheksSize = 7;
cossack5
54 / 48 / 1
Регистрация: 02.08.2012
Сообщений: 127
13.08.2012, 18:54     Ошибки в скриптах #6
или можно std::string* strs=new std::string[checksSize];
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.08.2012, 18:57     Ошибки в скриптах
Еще ссылки по теме:

Ошибки C++
ошибки C++
Ошибки C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Оператор пк
 Аватар для Оператор пк
10 / 10 / 1
Регистрация: 09.08.2010
Сообщений: 158
13.08.2012, 18:57  [ТС]     Ошибки в скриптах #7
Спасибо решено

Добавлено через 2 минуты
Оба ответа подошли
Yandex
Объявления
13.08.2012, 18:57     Ошибки в скриптах
Ответ Создать тему
Опции темы

Текущее время: 19:31. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru