• There is NO official Otland's Discord server and NO official Otland's server list. The Otland's Staff does not manage any Discord server or server list. Moderators or administrator of any Discord server or server lists have NO connection to the Otland's Staff. Do not get scammed!

TFS 1.X+ error: ‘ZoneType_t’ has not been declared

Fortera Global

Intermediate OT User
Joined
Nov 20, 2015
Messages
1,180
Solutions
2
Reaction score
117
C++:
[ 27%] Building CXX object CMakeFiles/tfs.dir/src/game.cpp.o
In file included from /home/Otserv/src/events.cpp:22:0:
/home/Otserv/src/events.h:55:48: error: ‘ZoneType_t’ has not been declared
   void eventPlayerOnChangeZone(Player* player, ZoneType_t zone);
                                                ^
[ 29%] Building CXX object CMakeFiles/tfs.dir/src/globalevent.cpp.o
/home/Otserv/src/events.cpp:508:6: error: prototype for ‘void Events::eventPlayerOnChangeZone(Player*, ZoneType_t)’ does not match any in class ‘Events’
void Events::eventPlayerOnChangeZone(Player* player, ZoneType_t zone)
      ^
In file included from /home/Otserv/src/events.cpp:22:0:
/home/Otserv/src/events.h:55:8: error: candidate is: void Events::eventPlayerOnChangeZone(Player*, int)
   void eventPlayerOnChangeZone(Player* player, ZoneType_t zone);
        ^

events.h
lZrLQPm.png


events.cpp
YceFVoS.png


? where I should declare it please?



I'm trying do it:

Add playerOnChangeZone TFS 1.3
 
Last edited by a moderator:
you need to #include "tile.h"

oh hey, include this in events.cpp or .h .?

I included in events.h and works (its correctly)?

now another error

Code:
/home/Otserv/src/player.cpp: In member function ‘virtual void Player::onChangeZone(ZoneType_t)’:
/home/Otserv/src/player.cpp:1453:40: error: no matching function for call to ‘Events::eventPlayerOnChangeZone(ZoneType_t&)’
  g_events->eventPlayerOnChangeZone(zone);
                                        ^
/home/Otserv/src/player.cpp:1453:40: note: candidate is:
In file included from /home/Otserv/src/player.cpp:30:0:
/home/Otserv/src/events.h:56:8: note: void Events::eventPlayerOnChangeZone(Player*, ZoneType_t)
   void eventPlayerOnChangeZone(Player* player, ZoneType_t zone);
        ^
/home/Otserv/src/events.h:56:8: note:   candidate expects 2 arguments, 1 provided

Edit:
I put and compiled:
C++:
g_events->eventPlayerOnChangeZone(this, zone);

last question:
IZ7j50K.png


I need put it there too? playerOnChangeZone = -1; in Events::Clear
 
Last edited by a moderator:
oh hey, include this in events.cpp or .h .?

I included in events.h and works (its correctly)?

now another error

Code:
/home/Otserv/src/player.cpp: In member function ‘virtual void Player::onChangeZone(ZoneType_t)’:
/home/Otserv/src/player.cpp:1453:40: error: no matching function for call to ‘Events::eventPlayerOnChangeZone(ZoneType_t&)’
  g_events->eventPlayerOnChangeZone(zone);
                                        ^
/home/Otserv/src/player.cpp:1453:40: note: candidate is:
In file included from /home/Otserv/src/player.cpp:30:0:
/home/Otserv/src/events.h:56:8: note: void Events::eventPlayerOnChangeZone(Player*, ZoneType_t)
   void eventPlayerOnChangeZone(Player* player, ZoneType_t zone);
        ^
/home/Otserv/src/events.h:56:8: note:   candidate expects 2 arguments, 1 provided

Edit:
I put and compiled:
C++:
g_events->eventPlayerOnChangeZone(this, zone);

last question:
IZ7j50K.png


I need put it there too? playerOnChangeZone = -1; in Events::Clear
Yes, you must...
 
Back
Top