Hello there... First of all, English is for me a foreing language, so I hope you understand and I apologise for my mistakes. I'm writting to report some issues about compiling the source code. I've found some troubles when I tried to do it (with files armagetronad-0.2.7.1.rar.bz2 and armagetronad-0.2.7.1-gcc-4.0.tar.bz2), but finally I could and now I'm writting to warn you about the changes I had to do.
Ok, heres my environment: Slackware 10.0 and gcc 4.0.2 (compiled yesterday from the official source, that's not the version you find in slackware packages).
Here are the errors tha gcc gave me during the make process:
1)
gCycle.h:211: error: ISO C++ forbids declaration of 'gNetPlayerWall' with no type
gCycle.h:211: error: expected ';' before '*' token
gCycle.h:213: error: ISO C++ forbids declaration of 'gNetPlayerWall' with no type
gCycle.h:213: error: expected ';' before '*' token
gCycle.h:223: error: 'gNetPlayerWall' has not been declared
gCycle.h:282: error: ISO C++ forbids declaration of 'gPlayerWall' with no type
gCycle.h:282: error: expected ';' before '*' token
gCycle.h:283: error: ISO C++ forbids declaration of 'gPlayerWall' with no type
gCycle.h:283: error: expected ';' before '*' token
gWall.cpp: In member function 'void gNetPlayerWall::ReleaseData()':
gWall.cpp error: 'class gCycle' has no member named 'currentWall'
gWall.cpp error: 'class gCycle' has no member named 'currentWall'
gWall.cpp error: 'class gCycle' has no member named 'lastWall'
gWall.cpp error: 'class gCycle' has no member named 'lastWall'
gWall.cpp: In member function 'void gNetPlayerWall::BlowHole(REAL, REAL)':
gWall.cpp error: 'class gCycle' has no member named 'currentWall'
2)
../../src/engine/eGrid.h:140: error: 'eGameObject' was not declared in this scope
../../src/engine/eGrid.h:140: error: template argument 1 is invalid
../../src/engine/eGrid.h:141: error: 'eGameObject' was not declared in this scope
../../src/engine/eGrid.h:141: error: template argument 1 is invalid
../../src/engine/eGrid.h:142: error: 'eGameObject' was not declared in this scope
../../src/engine/eGrid.h:142: error: template argument 1 is invalid
../../src/engine/eGrid.h:157: error: 'eGameObject' has not been declared
../../src/engine/eGrid.h:158: error: 'eGameObject' has not been declared
../../src/engine/eGrid.h:159: error: 'eGameObject' has not been declared
../../src/engine/eGrid.h:160: error: 'eGameObject' has not been declared
../../src/engine/eGrid.h:210: error: 'eGameObject' was not declared in this scope
../../src/engine/eGrid.h:210: error: template argument 1 is invalid
../../src/engine/eGrid.h:211: error: 'eGameObject' was not declared in this scope
../../src/engine/eGrid.h:211: error: template argument 1 is invalid
../../src/engine/eGrid.h:212: error: 'eGameObject' was not declared in this scope
../../src/engine/eGrid.h:212: error: template argument 1 is invalid
3)
eVoter.cpp:402: error: ISO C++ forbids declaration of 'eMenuItemVote' with no type
eVoter.cpp:402: error: expected ';' before '*' token
eVoter.cpp: In constructor 'eVoteItem::eVoteItem()':
eVoter.cpp:80: error: class 'eVoteItem' does not have any field named 'menuItem_'
eVoter.cpp: In constructor 'eMenuItemVote::eMenuItemVote(uMenu*, eVoteItem*)':
eVoter.cpp:592: error: 'class eVoteItem' has no member named 'menuItem_'
eVoter.cpp: In destructor 'virtual eMenuItemVote::~eMenuItemVote()':
eVoter.cpp:600: error: 'class eVoteItem' has no member named 'menuItem_'
eVoter.cpp: In destructor 'virtual eVoteItem::~eVoteItem()':
eVoter.cpp:879: error: 'menuItem_' was not declared in this scope
4)
nPriorizing.h:83: error: ISO C++ forbids declaration of 'nBandwidthTaskPriorizer' with no type
nPriorizing.h:83: error: expected ';' before '*' token
nPriorizing.h: In member function 'void nBandwidthTask::Priorize()':
nPriorizing.h:59: error: 'class nBandwidthTask' has no member named 'priorizer_'
Here my solutions to them (all I had to do is to add some forward declarations for a few classes y .h files):
1)
in src/tron/gCycle.h added: class gNetPlayerWall;
in src/engine/eWall.h added: class eWallHolder;
2)
in src/engine/eGrid.h added: class eGameObject;
3)
in src/engine/eVoter.h added: class eMenuItemVote;
4)
in src/network/nPriorizing.h added: class nBandwidthTaskPriorizer;
With those lines added it works perfectly...
And another little thing... Inside the game, with the performance tip z-trick enabled the thing are not drawed or partially drawed. I'm runnign with a xfx ge-force MX 440 with lates nvidia official driver.
I hope you find this useful. It's a great game, so keep on that way.