Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00012 #ifndef COMPANY_TYPE_H
00013 #define COMPANY_TYPE_H
00014
00015 #include "core/enum_type.hpp"
00016
00020 enum Owner {
00021
00022
00023 OWNER_BEGIN = 0x00,
00024 COMPANY_FIRST = 0x00,
00025 MAX_COMPANIES = 0x0F,
00026 OWNER_TOWN = 0x0F,
00027 OWNER_NONE = 0x10,
00028 OWNER_WATER = 0x11,
00029 OWNER_END,
00030 INVALID_OWNER = 0xFF,
00031 INVALID_COMPANY = 0xFF,
00032
00033
00034 COMPANY_INACTIVE_CLIENT = 253,
00035 COMPANY_NEW_COMPANY = 254,
00036 COMPANY_SPECTATOR = 255,
00037 };
00038 DECLARE_POSTFIX_INCREMENT(Owner)
00039
00040 static const uint MAX_LENGTH_PRESIDENT_NAME_CHARS = 32;
00041 static const uint MAX_LENGTH_PRESIDENT_NAME_PIXELS = 94;
00042 static const uint MAX_LENGTH_COMPANY_NAME_CHARS = 32;
00043 static const uint MAX_LENGTH_COMPANY_NAME_PIXELS = 150;
00044
00045 static const uint MAX_HISTORY_MONTHS = 24;
00046
00048 template <> struct EnumPropsT<Owner> : MakeEnumPropsT<Owner, byte, OWNER_BEGIN, OWNER_END, INVALID_OWNER> {};
00049 typedef TinyEnumT<Owner> OwnerByte;
00050
00051 typedef Owner CompanyID;
00052 typedef OwnerByte CompanyByte;
00053
00054 typedef uint16 CompanyMask;
00055
00056 struct Company;
00057 typedef uint32 CompanyManagerFace;
00058
00059 #endif