Problema compilare sursa game

Totalitatea subiectelor care nu respectă regulamentul impus in sectiunea "Probleme şi Întrebări" vor fi stocate aici.
Închis
Avatar utilizator
mihaialex01
Nou Venit

Nou Venit
Mesaje: 31
Membru din: 04 Mai 2019, 15:50
Aprecieri: 41  
Mulţumiri: 1  
  Rezolvări prob.: 1
Medalii

*Problemă/Întrebare: Am incercat sa instalez offline shop rubinum,am inceput cu sursa game si la compilare primesc o eroare careia nu ii pot da de cap
Tipologie server:
*Resursă folosită: arhiva-resurse/shop-offline-rubinum-t93415.html
*ServerFiles utilizat: zearth2 cu sursa clean
*Syserr:
linking ../game....
linking ../test
OBJDIR/input_main.o: In function `CInputMain::MyShop(CHARACTER*, char const*, unsigned int)':
/usr/src/sursa.game/Srcs/Server/game/src/input_main.cpp:3151: undefined reference to `CHARACTER::OpenMyShop(char const*, SShopItemTable*, unsigned char)'
OBJDIR/input_main.o: In function `CInputMain::MyShop(CHARACTER*, char const*, unsigned int)':
/usr/src/sursa.game/Srcs/Server/game/src/input_main.cpp:3151: undefined reference to `CHARACTER::OpenMyShop(char const*, SShopItemTable*, unsigned char)'
gmake: *** [../test] Error 1
gmake: *** Waiting for unfinished jobs....
gmake: *** [../game] Error 1
Las aici char.cpp si char.h, ca am inteles ca de aici este problema, dar nu imi dau seama de unde
https://mega.nz/file/ONZDWLRC#80fImzXQv ... _QawaoKkVc

Multumesc.
Avatar utilizator
SkyLine
Membru Club

Membru Club
Mesaje: 2655
Membru din: 12 Dec 2013, 23:37
Server: Miraj2-Online
Regat: Jinno
Aprecieri: 520  
Mulţumiri: 987  
Discord: Copiază ID
 Contact:
Medalii

"Undefined reference" = Functia MyShop nu este definita. Ar trebui sa ai prin sistem "void CInputMain::MyShop( .. ". Majoritatea functiilor sunt cu void...
Avatar utilizator
mihaialex01
Nou Venit

Nou Venit
Mesaje: 31
Membru din: 04 Mai 2019, 15:50
Aprecieri: 41  
Mulţumiri: 1  
  Rezolvări prob.: 1
Medalii

in input_main functia mea este cu int nu cu void
int CInputMain::MyShop(LPCHARACTER ch, const char * c_pData, size_t uiBytes)
{
TPacketCGMyShop * p = (TPacketCGMyShop *)c_pData;
int iExtraLen = p->bCount * sizeof(TShopItemTable);

if (uiBytes < sizeof(TPacketCGMyShop) + iExtraLen)
return -1;

if (ch->GetGold() >= GOLD_MAX)
{
ch->ChatPacket(CHAT_TYPE_INFO, LC_TEXT("¼ÒÀ¯ µ·ÀÌ 20¾ï³ÉÀ» ³Ñ¾î °Å·¡¸¦ ÇÛ¼ö°¡ ¾ø½À´Ï´Ù."));
sys_log(0, "MyShop ==> OverFlow Gold id %u name %s ", ch->GetPlayerID(), ch->GetName());
return (iExtraLen);
}

if (ch->IsStun() || ch->IsDead())
return (iExtraLen);

#ifdef ENABLE_OFFLINE_SHOP_SYSTEM
if (ch->GetExchange() || ch->IsOpenSafebox() || ch->GetViewingShopOwner() || ch->IsCubeOpen())
#else
if (ch->GetExchange() || ch->IsOpenSafebox() || ch->GetShopOwner() || ch->IsCubeOpen())
#endif
{
ch->ChatPacket(CHAT_TYPE_INFO, LC_TEXT("´Ù¸¥ °Å·¡ÁßÀϰæ¿ì °³ÀλóÁ¡À» ¿­¼ö°¡ ¾ø½À´Ï´Ù."));
return (iExtraLen);
}

#ifdef ENABLE_OFFLINE_SHOP_SYSTEM
if (!ch->GetShopItems().empty())
{
ch->ChatPacket(CHAT_TYPE_INFO, LC_TEXT("YOU_NEED_TO_CLOSE_YOUR_CURRENT_SHOP_BEFORE_OPENING_NEW_ONE"));
return iExtraLen;
}

//Disallow shops on certain maps
if (!CShop::CanOpenShopHere(ch->GetMapIndex()))
return iExtraLen;
#endif

sys_log(0, "MyShop count %d", p->bCount);
ch->OpenMyShop(p->szSign, (TShopItemTable*)(c_pData + sizeof(TPacketCGMyShop)), p->bCount);
return (iExtraLen);
}
la linia 3151 este acest cod
ch->OpenMyShop(p->szSign, (TShopItemTable*)(c_pData + sizeof(TPacketCGMyShop)), p->bCount);
Avatar utilizator
SkyLine
Membru Club

Membru Club
Mesaje: 2655
Membru din: 12 Dec 2013, 23:37
Server: Miraj2-Online
Regat: Jinno
Aprecieri: 520  
Mulţumiri: 987  
Discord: Copiază ID
 Contact:
Medalii

Ah, wait, am citit eu gresit :)) . Nu vede functia OpenMyShop definita undeva. Acu am vazut.

Hm.. in input_main ai #include "char.h" ? Ca vad ca de-acolo iti pleaca functia
Avatar utilizator
mihaialex01
Nou Venit

Nou Venit
Mesaje: 31
Membru din: 04 Mai 2019, 15:50
Aprecieri: 41  
Mulţumiri: 1  
  Rezolvări prob.: 1
Medalii

Da am
Avatar utilizator
mihaialex01
Nou Venit

Nou Venit
Mesaje: 31
Membru din: 04 Mai 2019, 15:50
Aprecieri: 41  
Mulţumiri: 1  
  Rezolvări prob.: 1
Medalii

Up
Avatar utilizator
BroderHD
Nou Venit

Nou Venit
Mesaje: 49
Membru din: 10 Dec 2014, 19:51
Server: M2Vame.Ro
Regat: Jinno
Aprecieri: 251  
Mulţumiri: 1  
Medalii

#include "service.h"
Avatar utilizator
mihaialex01
Nou Venit

Nou Venit
Mesaje: 31
Membru din: 04 Mai 2019, 15:50
Aprecieri: 41  
Mulţumiri: 1  
  Rezolvări prob.: 1
Medalii

input_main.cpp:45:21: error: service.h: No such file or directory

Am adaugat #include "../../common/tables.h" ca de acolo este typedef struct SShopItemTable dar tot la fel da. in tutorial zice sa adaug

Arat:
typedef struct SShopItemTable

Altýna ekle:

#ifdef ENABLE_OFFLINE_SHOP_SYSTEM
SShopItemTable() : vnum(0), count(0), pos(0, 0), price(0), display_pos(0)
#endif

in functia typedef struct SShopItemTable si este adaugata, dar poate nu am pus-o eu bine?
typedef struct SShopItemTable
{
#ifdef ENABLE_OFFLINE_SHOP_SYSTEM
SShopItemTable() : vnum(0), count(0), pos(0, 0), price(0), display_pos(0)
#endif
DWORD vnum;
BYTE count;

TItemPos pos; // PC »óÁ¡¿¡¸¸ ÀÌ¿ë
DWORD price; // PC, shop_table_ex.txt »óÁ¡¿¡¸¸ ÀÌ¿ë
BYTE display_pos; // PC, shop_table_ex.txt »óÁ¡¿¡¸¸ ÀÌ¿ë, º¸ÀÏ À§Ä¡.
} TShopItemTable;
Avatar utilizator
mihaialex01
Nou Venit

Nou Venit
Mesaje: 31
Membru din: 04 Mai 2019, 15:50
Aprecieri: 41  
Mulţumiri: 1  
  Rezolvări prob.: 1
Medalii

Sau daca stiti voi alt sistem cu care nu o să am probleme
Avatar utilizator
mihaialex01
Nou Venit

Nou Venit
Mesaje: 31
Membru din: 04 Mai 2019, 15:50
Aprecieri: 41  
Mulţumiri: 1  
  Rezolvări prob.: 1
Medalii

up
Închis
Răspunsuri
7
Vizualizări
206
Răspunsuri
8
Vizualizări
467
Răspunsuri
5
Vizualizări
376
Răspunsuri
0
Vizualizări
41

Înapoi la “Arhivă Probleme şi Întrebări”

  • Informaţie
  • Cine este conectat

    Utilizatori ce ce navighează pe acest forum: Semrush [Bot] și 49 vizitatori