Files
oboe/osx/classes/outdoors.h
Niemand f198b4899d Added include guards to all class headers.
Removed unnecessary or potentially harmful compiler flags. 
Added alignment attribute to all old struct members. 
Removed some unused variables. 
Made some switch statements handle all or more cases. 
Removed using declarations in favor of fully qualified names. 
Fixed a couple of assignments in conditionals that should have been comparisons. 
Eliminated linker warnings by restoring default linking of standard libraries. 
Fixed some comparisons between signed and unsigned integers. 

Note: No testing has been done, in particular of old file I/O. This should be checked for regression caused by alteration of old struct definitions. 


git-svn-id: http://openexile.googlecode.com/svn/trunk@63 4ebdad44-0ea0-11de-aab3-ff745001d230
2009-05-22 03:01:05 +00:00

69 lines
1.6 KiB
C++

/*
* outdoors.h
* BoE
*
* Created by Celtic Minstrel on 22/04/09.
*
*/
#ifndef OUTDOORS_H
#define OUTDOORS_H
#include "location.h"
#include <string>
#include <iostream>
namespace legacy {
struct out_wandering_type;
struct outdoor_record_type;
struct outdoor_creature_type;
};
class cOutdoors {
public:
class cWandering { // formerly out_wandering_type
public:
unsigned short monst[7];
unsigned short friendly[3];
short spec_on_meet,spec_on_win,spec_on_flee,cant_flee;
short end_spec1,end_spec2;
cWandering& operator = (legacy::out_wandering_type old);
void writeTo(std::ostream& file, std::string prefix = "");
void readAttrFrom(std::string cur, std::istream& sin);
};
class cCreature { // formerly outdoor_creature_type
public:
bool exists;
short direction;
cWandering what_monst;
location which_sector,m_loc,home_sector; // home_sector is the sector it was spawned in
cCreature& operator = (legacy::outdoor_creature_type old);
};
unsigned short terrain[48][48];
location special_locs[18];
unsigned short special_id[18];
location exit_locs[8];
char exit_dests[8];
location sign_locs[8];
cWandering wandering[4],special_enc[4];
location wandering_locs[4];
rectangle info_rect[8];
unsigned char strlens[180];
cSpecial specials[60];
//char strs[120][256];
char out_name[256];
char rect_names[8][256];
char comment[256];
char spec_strs[90][256];
char sign_strs[8][256];
char(& out_strs(short i))[256];
bool special_spot[48][48];
cOutdoors();
cOutdoors& operator = (legacy::outdoor_record_type& old);
void writeTo(std::ostream& file);
};
#endif