Forgatási hiba!

Indította Locutus, 2012 december 08, 03:13:43 DÉLUTÁN

Előző téma - Következő téma

Locutus

Sziasztok!

Valakinek erre lenne tippe??
3>   Creating library D:\WOW SZERVER\Szerver futtató\src\server\worldserver\Release\worldserver.lib and object D:\WOW SZERVER\Szerver futtató\src\server\worldserver\Release\worldserver.exp
3>game.lib(ScriptLoader.obj) : error LNK2019: unresolved external symbol "void __cdecl AddSC_staff_login(void)" (?AddSC_staff_login@@YAXXZ) referenced in function "void __cdecl AddCustomScripts(void)" (?AddCustomScripts@@YAXXZ)
3>game.lib(ScriptLoader.obj) : error LNK2019: unresolved external symbol "void __cdecl AddSC_vipcommands(void)" (?AddSC_vipcommands@@YAXXZ) referenced in function "void __cdecl AddCustomScripts(void)" (?AddCustomScripts@@YAXXZ)


Előre is köszönöm
Üdv Locutus
Álljon fel az ország imádandó széki!
Nemzetek, országok, hódoljatok néki!
Uralkodjék köztünk ész, érdem, igazság,
Törvény s egyenlőség, s te, áldott szabadság!

heisenberg

Az említett két függvény nincs definiálva. Vagy nem adtad hozzá őket, vagy nem fordítod le (nincs a projektben) a forrásfájlt.

Locutus

Pedig benne van a forrásfáljba és hozzá is van adva... szóval érdekes xd és még definiálva is van xd
Álljon fel az ország imádandó széki!
Nemzetek, országok, hódoljatok néki!
Uralkodjék köztünk ész, érdem, igazság,
Törvény s egyenlőség, s te, áldott szabadság!

heisenberg

Hogyan és hol szerepel a két delikvens? Kódot

Locutus

Linkelem mind3-mat.
Vip Command Script
class vipcommands : public CommandScript
{
public:
    vipcommands() : CommandScript("vipcommands") { }

    ChatCommand* GetCommands() const
    {
        static ChatCommand vipCommandTable[] =

        {
            { "mall",     SEC_PLAYER,     true, &HandleVipMallCommand,         "", NULL },
            { "chat",     SEC_PLAYER,     true, &HandleVipChatCommand,         "", NULL },
            { "changerace",    SEC_PLAYER,  false, &HandleChangeRaceCommand,             "", NULL },
    { "changefaction", SEC_PLAYER,  false, &HandleChangeFactionCommand, "", NULL },
    { "maxskills", SEC_PLAYER,  false, &HandleMaxSkillsCommand, "", NULL },
    { "customize", SEC_PLAYER,  false, &HandleCustomizeCommand, "", NULL },
    { "tele",           SEC_PLAYER,  false, &HandleTeleCommand, "", NULL },

            { NULL,             0,                     false, NULL,                                           "", NULL }
        };
        static ChatCommand commandTable[] =
        {
            { "vip",     SEC_PLAYER,   true, NULL,      "",  vipCommandTable},
       { NULL,             0,                  false, NULL,                               "", NULL }
        };
        return commandTable;
    }


static bool HandleTeleCommand(ChatHandler* handler, const char* args)
    {
        if (!*args)
            return false;

        Player* me = handler->GetSession()->GetPlayer();

        // id, or string, or [name] Shift-click form |color|Htele:id|h[name]|h|r
        GameTele const* tele = handler->extractGameTeleFromLink((char*)args);

        if (!tele)
        {
            handler->PSendSysMessage("A tele nem létezik");
            return false;
        }

        if (me->isInCombat())
        {
            handler->PSendSysMessage("Combatban vagy");
            return false;
        }

        MapEntry const* map = sMapStore.LookupEntry(tele->mapId);
        if (!map || map->IsBattlegroundOrArena())
        {
            handler->PSendSysMessage("Nem portálhatsz BG-re");
            return false;
        }

        // combat leáll ha kell
        if (me->isInFlight())
        {
            me->GetMotionMaster()->MovementExpired();
            me->CleanupAfterTaxiFlight();
        }
        // ment ha nincs combat
        else
            me->SaveRecallPosition();

        me->TeleportTo(tele->mapId, tele->position_x, tele->position_y, tele->position_z, tele->orientation);
        return true;
}

static bool HandlevipCommand(ChatHandler* handler, const char* args)
    {

        Player* me = handler->GetSession()->GetPlayer();

            me->Say("vip command?", LANG_UNIVERSAL);
            return true;
    }

static bool HandleChangeRaceCommand(ChatHandler* handler, const char* args)
    {

        Player* me = handler->GetSession()->GetPlayer();
me->SetAtLoginFlag(AT_LOGIN_CHANGE_RACE);
handler->PSendSysMessage("Relog to change race of your character.");
        return true;
    }

static bool HandleChangeFactionCommand(ChatHandler* handler, const char* args)
    {

        Player* me = handler->GetSession()->GetPlayer();
me->SetAtLoginFlag(AT_LOGIN_CHANGE_FACTION);
handler->PSendSysMessage("Relog to change faction of your character.");
        return true;
    }

static bool HandleMaxSkillsCommand(ChatHandler* handler, const char* args)
    {

        Player* me = handler->GetSession()->GetPlayer();
me->UpdateSkillsForLevel();
handler->PSendSysMessage("Your weapon skills are now maximized.");
        return true;
    }

static bool HandleCustomizeCommand(ChatHandler* handler, const char* args)
    {

        Player* me = handler->GetSession()->GetPlayer();
me->SetAtLoginFlag(AT_LOGIN_CUSTOMIZE);
handler->PSendSysMessage("Relog to customize your character.");
        return true;
    }

static bool HandleVipMallCommand(ChatHandler* handler, const char* args)
    {

        Player* me = handler->GetSession()->GetPlayer();

        if (me->isInCombat())
        {
            handler->PSendSysMessage("Combatban vagy");
            return false;
        }

        // combatból kihoz
        if (me->isInFlight())
        {
            me->GetMotionMaster()->MovementExpired();
            me->CleanupAfterTaxiFlight();
        }
        // ment ha nincs combat
        else
            me->SaveRecallPosition();

me->TeleportTo(0, 23.8378f, -1588.85f, 195.419f, 4.54306f); // MapId, X, Y, Z, O
                return true;
    }


static bool HandleVipChatCommand(ChatHandler * handler, const char * args)
{
if (!args)
return false;

std::string msg = "";
Player * player = handler->GetSession()->GetPlayer();

switch(player->GetSession()->GetSecurity())
{
case SEC_VIP: // VIP
msg += "|cffff0000[V.I.P|r |cff18be00Chat:|r [";
msg += player->GetName();
msg += "]: |CFF7BBEF7";
break;

case SEC_MODERATOR: // Eventer GM
msg += "|CFF520084[Eventer GM|r |cff18be00Chat:|r [";
msg += player->GetName();
msg += "]: |CFF7BBEF7";
break;

case SEC_GAMEMASTER: // GM
msg += "|cff00ffff[GM|r |cff18be00Chat:|r [";
msg += player->GetName();
msg += "]: |CFF7BBEF7";
break;


case SEC_ADMINISTRATOR: // Admin
msg += "|cfffa9900[Admin|r |cff18be00Chat:|r [";
msg += player->GetName();
msg += "]: |CFF7BBEF7";
break;

case SEC_CONSOLE: // Root, Console!
msg += "|CFF18BE00[ROOT|r |cff18be00Chat:|r [";
msg += player->GetName();
msg += "]: |cffff0000";
break;
}

msg += args;
sWorld->SendServerMessage(SERVER_MSG_STRING, msg.c_str(), 0);

return true;
}

};

void AddSC_vipcommands()
{
    new vipcommands();
}

Staff login script
#include "ScriptPCH.h"
#include "Common.h"

class staff_login : public PlayerScript
{
    public:

        staff_login()
            : PlayerScript("staff_login")
        {
        }

        void OnLogin(Player *pPlayer)
        {
          switch (pPlayer->GetSession()->GetSecurity())
          {
             case SEC_GAMEMASTER:
sWorld->SendWorldText("EVENTER_JOIN");
               break;

             case SEC_ADMINISTRATOR:
sWorld->SendWorldText("GM_JOIN");
               break;

             case SEC_CONSOLE:
sWorld->SendWorldText("ADMIN_JOIN");
               break;
          }                     
        }
};

void AddSC_staff_login()
{
    new staff_login();
}


Scriptloader(Eleje és vége)
//custom
void AddSC_transmog();
void AddSC_StartUpTransmog();
void AddSC_npc_morph();
void AddSC_npc_buff();
void AddSC_npc_arena_teamTop();
void AddSC_npc_tele();
void AddSC_npc_doctorba();
void AddSC_npc_atvalto();
void AddSC_vipcommands();
void AddSC_staff_login();

Vége:
void AddCustomScripts()
{
#ifdef SCRIPTS
    /* This is where custom scripts should be added. */
AddSC_transmog();
AddSC_StartUpTransmog();
AddSC_npc_morph();
AddSC_npc_buff();
AddSC_npc_arena_teamTop();
AddSC_npc_tele();
AddSC_npc_doctorba();
AddSC_npc_atvalto();
AddSC_vipcommands();
AddSC_staff_login();

Egyebkent a staff loginnál is hibát jelez. Arra az alábbi hibát jelzi:
2>staff_login.cpp
2>..\..\..\..\TrinityCore\src\server\scripts\Custom\staff_login.cpp(18) : error C2664: 'World::SendWorldText' : cannot convert parameter 1 from 'const char [13]' to 'int32'
2>        There is no context in which this conversion is possible
2>..\..\..\..\TrinityCore\src\server\scripts\Custom\staff_login.cpp(22) : error C2664: 'World::SendWorldText' : cannot convert parameter 1 from 'const char [8]' to 'int32'
2>        There is no context in which this conversion is possible
2>..\..\..\..\TrinityCore\src\server\scripts\Custom\staff_login.cpp(26) : error C2664: 'World::SendWorldText' : cannot convert parameter 1 from 'const char [11]' to 'int32'
2>        There is no context in which this conversion is possible


Előre is köszönöm. Lehet valami nagoyn egyszerűt nézek el.. Fáradt vagyok mostanában.

Üdv Locutus
Álljon fel az ország imádandó széki!
Nemzetek, országok, hódoljatok néki!
Uralkodjék köztünk ész, érdem, igazság,
Törvény s egyenlőség, s te, áldott szabadság!

heisenberg

#5
A fordítási hibára:

a SendWorldText egy string id-t vár paraméterként, nem stringet.
Megoldás, adj meg ID-t, vagy használd pl. a  SendServerMessage-t, valahogy így:
Kód (cpp) Kijelölés

sWorld->SendServerMessage(SERVER_MSG_STRING, "szoveg", NULL);


nézd meg, hogy a linker hiba ezek után is fenn áll-e, ha igen arra így egyelőre nem tudok mit mondani.

Locutus

Áhh köszi :D  Nagyon szépen köszönöm :) Megy a plusz :D
Álljon fel az ország imádandó széki!
Nemzetek, országok, hódoljatok néki!
Uralkodjék köztünk ész, érdem, igazság,
Törvény s egyenlőség, s te, áldott szabadság!

Locutus

Hallod script leforgatása után a staff login script nem csinálja azt amit mondtam neki... Szerinted hol van elrontva?? Elvileg ha feloggolok akkor kéne kiírnia hogy belépett egy xxx gm...
Előre is köszi
Locu
Álljon fel az ország imádandó széki!
Nemzetek, országok, hódoljatok néki!
Uralkodjék köztünk ész, érdem, igazság,
Törvény s egyenlőség, s te, áldott szabadság!

EroniX

Hányas account levellel próbálod?
Azuregos Delta Force

Locutus

Semelyikkel nem megy... Pedig a common.h t át configoltam az alábbira: 
enum AccountTypes
{
    SEC_PLAYER         = 0,
SEC_VIP            = 1,
SEC_MODERATOR      = 2,
SEC_GAMEMASTER     = 3,
    SEC_ADMINISTRATOR  = 4,
    SEC_CONSOLE        = 5,   

És kiprobáltam 3,4,5-re és egyikkel sem megy.... Pedig elvileg kéne neki.
Üdv Locu
Álljon fel az ország imádandó széki!
Nemzetek, országok, hódoljatok néki!
Uralkodjék köztünk ész, érdem, igazság,
Törvény s egyenlőség, s te, áldott szabadság!

Locutus

Staff login forgatási hiba... Lehet ezért nem müködik a script.. Idáig nem is láttam.
2>..\..\..\..\TrinityCore\src\server\scripts\Custom\staff_login.cpp(29) : error C2562: 'staff_login::OnLogin' : 'void' function returning a value
2>        ..\..\..\..\TrinityCore\src\server\scripts\Custom\staff_login.cpp(13) : see declaration of 'staff_login::OnLogin'


Előre is köszönöm a segítséget.
Üdv Locu
Álljon fel az ország imádandó széki!
Nemzetek, országok, hódoljatok néki!
Uralkodjék köztünk ész, érdem, igazság,
Törvény s egyenlőség, s te, áldott szabadság!

AximCore

Idézetet írta: Locutus Dátum 2012 december 10, 04:27:01 DÉLUTÁN
Staff login forgatási hiba... Lehet ezért nem müködik a script.. Idáig nem is láttam.
2>..\..\..\..\TrinityCore\src\server\scripts\Custom\staff_login.cpp(29) : error C2562: 'staff_login::OnLogin' : 'void' function returning a value
2>        ..\..\..\..\TrinityCore\src\server\scripts\Custom\staff_login.cpp(13) : see declaration of 'staff_login::OnLogin'


Előre is köszönöm a segítséget.
Üdv Locu

A staff_login osztályonbelül a OnLogin eljárásban(void) valahol visszatérsz értékel ( return ), csak fgvnyek térhetnek vissza értékel.
"Tanítani lehet az ostobát, de gondolkodásra bírni nem."
A Talmud

Windows Firewall
http://devopsreactions.tumblr.com/

Why use Windows, if you have open doors... to Linux

Locutus

Álljon fel az ország imádandó széki!
Nemzetek, országok, hódoljatok néki!
Uralkodjék köztünk ész, érdem, igazság,
Törvény s egyenlőség, s te, áldott szabadság!

K3nNy

Sziasztok.
Valaki meg tudná mondani, hogy ez mitől van?


Cmake megcsinálta szépen a dolgát, és amikor vc10 el indítom a trinitycore.sln-t akkor jön ki ez a hiba üzenet...

cmake:


VC10 output:


Előre köszönöm szépen a segítséget!

Raisen

#14
Valami nem kóser a forráskódban cmake felső ablakában not foundozik, ha feljebb tekered szerintem még több lenne ott :) Ilyen hibát én az évek alatt nem is láttam valami újat mutattál :D Visual studio meg nem tudja olvasni elvileg nem lehet rosszal kigenerálni a project fájlt de azért nézd meg, hogy cmakeban a megfelelő visual studiora állítod a project fájl kigenerálása előtt.


▀█▀ █▀▀▄ █▀▀ █▀▀█ ▒█▀▀█ █▀▀█ █▀▀█ █░█ █▀▀█ █▀▀ █▀▀ ░ █░░█ █░░█
▒█░ █░░█ █▀▀ █░░█ ▒█▀▀▄ █▄▄█ █▄▄▀ █▀▄ █▄▄█ █░░ ▀▀█ ▄ █▀▀█ █░░█
▄█▄ ▀░░▀ ▀░░ ▀▀▀▀ ▒█▄▄█ ▀░░▀ ▀░▀▀ ▀░▀ ▀░░▀ ▀▀▀ ▀▀▀ █ ▀░░▀ ░▀▀▀

Powered by EzPortal