unit AWReasons; interface const RC_ = 11000; RC_SUCCESS=RC_+0; RC_CITIZENSHIP_EXPIRED=RC_+1; RC_LAND_LIMIT_EXCEEDED=RC_+2; RC_NO_SUCH_CITIZEN=RC_+3; RC_MESSAGE_LENGTH_BAD=RC_+4; RC_LICENSE_PASSWORD_CONTAINS_SPACE=RC_+5; RC_LICENSE_PASSWORD_TOO_LONG=RC_+6; RC_LICENSE_PASSWORD_TOO_SHORT=RC_+7; RC_LICENSE_RANGE_TOO_LARGE=RC_+8; RC_LICENSE_RANGE_TOO_SMALL=RC_+9; RC_LICENSE_USERS_TOO_LARGE=RC_+10; RC_LICENSE_USERS_TOO_SMALL=RC_+11; RC_LICENSE_CONTAINS_INVALID_CHAR=RC_+12; RC_INVALID_PASSWORD=RC_+13; RC_UNABLE_TO_MAIL_BACK_NUMBER=RC_+14; RC_LICENSE_WORLD_TOO_SHORT=RC_+15; RC_LICENSE_WORLD_TOO_LONG=RC_+16; RC_SERVER_OUT_OF_MEMORY=RC_+17; RC_INVALID_WORLD=RC_+20; RC_SERVER_OUTDATED=RC_+21; RC_WORLD_ALREADY_STARTED=RC_+22; RC_NO_SUCH_WORLD=RC_+27; RC_NOT_LOGGED_IN=RC_+31; RC_UNAUTHORIZED=RC_+32; RC_WORLD_ALREADY_EXISTS=RC_+33; RC_NO_SUCH_LICENSE=RC_+34; RC_IDENTITY_ALREADY_IN_USE=RC_+39; RC_UNABLE_TO_REPORT_LOCATION=RC_+40; RC_INVALID_EMAIL=RC_+41; RC_NO_SUCH_ACTING_CITIZEN=RC_+42; RC_ACTING_PASSWORD_INVALID=RC_+43; RC_UNIVERSE_FULL=RC_+45; RC_BILLING_TIMEOUT=RC_+46; RC_BILLING_RECV_FAILED=RC_+47; RC_BILLING_RESPONSE_INVALID=RC_+48; RC_BILLING_REJECTED=RC_+55; RC_BILLING_BLOCKED=RC_+56; RC_TOO_MANY_WORLDS=RC_+57; RC_MUST_UPGRADE=RC_+58; RC_BOT_LIMIT_EXCEEDED=RC_+59; RC_WORLD_EXPIRED=RC_+61; RC_CITIZEN_DOES_NOT_EXPIRE=RC_+62; RC_LICENSE_STARTS_WITH_NUMBER=RC_+64; RC_NO_SUCH_EJECTION=RC_+66; RC_NO_SUCH_SESSION=RC_+67; RC_EJECTION_EXPIRED=RC_+69; RC_ACTING_CITIZEN_EXPIRED=RC_+70; RC_ALREADY_STARTED=RC_+71; RC_WORLD_RUNNING=RC_+72; RC_WORLD_NOT_SET=RC_+73; RC_NO_SUCH_CELL=RC_+74; RC_NO_REGISTRY=RC_+75; RC_CANT_OPEN_REGISTRY=RC_+76; RC_CITIZEN_DISABLED=RC_+77; RC_WORLD_DISABLED=RC_+78; RC_BETA_REQUIRED=RC_+79; RC_ACTING_CITIZEN_DISABLED=RC_+80; RC_INVALID_USER_COUNT=RC_+81; RC_TELEGRAM_BLOCKED=RC_+85; // old RC_TELEGRAM_TOO_LONG=RC_+86; //old RC_PRIVATE_WORLD=RC_+91; RC_NO_TOURISTS=RC_+92; RC_EMAIL_CONTAINS_INVALID_CHAR=RC_+100; RC_EMAIL_ENDS_WITH_BLANK=RC_+101; RC_EMAIL_MISSING_DOT=RC_+102; RC_EMAIL_MISSING_AT=RC_+103; RC_EMAIL_STARTS_WITH_BLANK=RC_+104; RC_EMAIL_TOO_LONG=RC_+105; RC_EMAIL_TOO_SHORT=RC_+106; RC_NAME_ALREADY_USED=RC_+107; RC_NAME_CONTAINS_NONALPHANUMERIC_CHAR=RC_+108; RC_NAME_CONTAINS_INVALID_BLANK=RC_+109; RC_NAME_DOESNT_EXIST=RC_+110; RC_NAME_ENDS_WITH_BLANK=RC_+111; RC_NAME_TOO_LONG=RC_+112; RC_NAME_TOO_SHORT=RC_+113; RC_NAME_UNUSED=RC_+114; RC_PASSWORD_TOO_LONG=RC_+115; RC_PASSWORD_TOO_SHORT=RC_+116; RC_PASSWORD_WRONG=RC_+117; RC_UNABLE_TO_DELETE_NAME=RC_+119; RC_UNABLE_TO_GET_CITIZEN=RC_+120; RC_UNABLE_TO_INSERT_CITIZEN=RC_+121; RC_UNABLE_TO_INSERT_NAME=RC_+122; RC_UNABLE_TO_PUT_CITIZEN_COUNT=RC_+123; RC_UNABLE_TO_DELETE_CITIZEN=RC_+124; RC_NUMBER_ALREADY_USED=RC_+126; RC_NUMBER_OUT_OF_RANGE=RC_+127; RC_PRIVILEGE_PASSWORD_IS_TOO_SHORT=RC_+128; RC_PRIVILEGE_PASSWORD_IS_TOO_LONG=RC_+129; RC_OLD_DATABASE=RC_+130; // old; RC_START_TRANSACT_FAILED=RC_+131; // old; RC_CALL_LIMIT_EXCEEDED=RC_+137; //old RC_BOTGRAM_SENT_TO_NONE=RC_+138; //old RC_NOT_CHANGE_OWNER=RC_+203; RC_CANT_FIND_OLD_ELEMENT=RC_+204; RC_UNABLE_TO_CHANGE_ATTRIBUTE=RC_+210; RC_CANT_CHANGE_OWNER=RC_+211; RC_IMPOSTER=RC_+212; RC_INVALID_REQUEST=RC_+213; RC_CANT_BUILD_HERE=RC_+216; RC_NOT_ALLOWED=RC_+232; // old; RC_JOIN_REFUSED=RC_+250;//old RC_ENCROACHES=RC_+300; RC_NO_SUCH_OBJECT=RC_+301; RC_NOT_DELETE_OWNER=RC_+302; RC_TOO_MANY_BYTES=RC_+303; RC_UNABLE_TO_STORE=RC_+305; RC_UNREGISTERED_OBJECT=RC_+306; RC_ELEMENT_ALREADY_EXISTS=RC_+308; RC_RESTRICTED_COMMAND=RC_+309; RC_NO_BUILD_RIGHTS=RC_+310; RC_OUT_OF_BOUNDS=RC_+311; RC_RESTRICTED_OBJECT=RC_+313; RC_RESTRICTED_AREA=RC_+314; RC_OUT_OF_MEMORY=RC_+400; RC_NOT_YET=RC_+401; RC_TIMEOUT=RC_+402; RC_NULL_POINTER=RC_+403; RC_UNABLE_TO_CONTACT_UNIVERSE=RC_+404; RC_UNABLE_TO_CONTACT_WORLD=RC_+405; RC_INVALID_WORLD_NAME=RC_+406; RC_SEND_FAILED=RC_+415; RC_RECEIVE_FAILED=RC_+416; RC_STREAM_EMPTY=RC_+421; RC_STREAM_MESSAGE_TOO_LONG=RC_+422; RC_WORLD_NAME_TOO_LONG=RC_+423; RC_MESSAGE_TOO_LONG=RC_+426; RC_TOO_MANY_RESETS=RC_+427; RC_UNABLE_TO_CREATE_SOCKET=RC_+428; RC_UNABLE_TO_CONNECT=RC_+429; RC_UNABLE_TO_SET_NONBLOCKING=RC_+430; RC_CANT_OPEN_STREAM=RC_+434; RC_CANT_WRITE_STREAM=RC_+435; RC_CANT_CLOSE_STREAM=RC_+436; RC_NO_CONNECTION=RC_+439; RC_UNABLE_TO_INITIALIZE_NETWORK=RC_+442; RC_INCORRECT_MESSAGE_LENGTH=RC_+443; RC_NOT_INITIALIZED=RC_+444; RC_NO_INSTANCE=RC_+445; RC_OUT_BUFFER_FULL=RC_+446; RC_INVALID_CALLBACK=RC_+447; RC_INVALID_ATTRIBUTE=RC_+448; RC_TYPE_MISMATCH=RC_+449; RC_STRING_TOO_LONG=RC_+450; RC_READ_ONLY=RC_+451; RC_UNABLE_TO_REGISTER_RESOLVE=RC_+452; RC_INVALID_INSTANCE=RC_+453; RC_VERSION_MISMATCH=RC_+454; RC_IN_BUFFER_FULL=RC_+461; RC_PROTOCOL_ERROR=RC_+463; RC_QUERY_IN_PROGRESS=RC_+464; RC_WORLD_FULL=RC_+465; RC_EJECTED=RC_+466; RC_NOT_WELCOME=RC_+467; RC_UNABLE_TO_BIND=RC_+468; RC_UNABLE_TO_LISTEN=RC_+469; RC_UNABLE_TO_ACCEPT=RC_+470; RC_CONNECTION_LOST=RC_+471; RC_NO_STREAM=RC_+473; RC_NOT_AVAILABLE=RC_+474; RC_OLD_UNIVERSE=RC_+487; RC_OLD_WORLD=RC_+488; RC_WORLD_NOT_RUNNING=RC_+489; RC_INVALID_ARGUMENT=RC_+505; type TAWErrCode=record c: integer; s: PChar; end; function AWErrCode(code: integer): PChar; implementation var aAWErrCodes: array [0..164] of TAWErrCode = ( ( c: RC_SUCCESS; s: 'Success'), ( c: RC_CITIZENSHIP_EXPIRED; s: 'Citizenship expired'), ( c: RC_LAND_LIMIT_EXCEEDED; s: 'Land limit exceeded'), ( c: RC_NO_SUCH_CITIZEN; s: 'No such citizen'), ( c: RC_MESSAGE_LENGTH_BAD; s: 'Message length bad'), ( c: RC_LICENSE_PASSWORD_CONTAINS_SPACE; s: 'License password contains space'), ( c: RC_LICENSE_PASSWORD_TOO_LONG; s: 'License password too long'), ( c: RC_LICENSE_PASSWORD_TOO_SHORT; s: 'License password too short'), ( c: RC_LICENSE_RANGE_TOO_LARGE; s: 'License range too large'), ( c: RC_LICENSE_RANGE_TOO_SMALL; s: 'License range too small'), ( c: RC_LICENSE_USERS_TOO_LARGE; s: 'License users too large'), ( c: RC_LICENSE_USERS_TOO_SMALL; s: 'License users too small'), ( c: RC_LICENSE_CONTAINS_INVALID_CHAR; s: 'License world contains invalid character'), ( c: RC_INVALID_PASSWORD; s: 'Invalid password'), ( c: RC_UNABLE_TO_MAIL_BACK_NUMBER; s: 'Unable to mail back number'), ( c: RC_LICENSE_WORLD_TOO_SHORT; s: 'License world too short'), ( c: RC_LICENSE_WORLD_TOO_LONG; s: 'License world too long'), ( c: RC_SERVER_OUT_OF_MEMORY; s: 'server out of memory'), ( c: RC_INVALID_WORLD; s: 'Invalid world'), ( c: RC_SERVER_OUTDATED; s: 'Server outdated'), ( c: RC_WORLD_ALREADY_STARTED; s: 'World already started'), ( c: RC_NO_SUCH_WORLD; s: 'No such world'), ( c: RC_NOT_LOGGED_IN; s: 'Not logged in'), ( c: RC_UNAUTHORIZED; s: 'Unauthorized'), ( c: RC_WORLD_ALREADY_EXISTS; s: 'World already licensed'), ( c: RC_NO_SUCH_LICENSE; s: 'No such license'), ( c: RC_IDENTITY_ALREADY_IN_USE; s: 'Identity already in use'), ( c: RC_UNABLE_TO_REPORT_LOCATION; s: 'Unable to report location'), ( c: RC_INVALID_EMAIL; s: 'Invalid email'), ( c: RC_NO_SUCH_ACTING_CITIZEN; s: 'No such acting citizen'), ( c: RC_ACTING_PASSWORD_INVALID; s: 'Acting password invalid'), ( c: RC_UNIVERSE_FULL; s: 'Universe full'), ( c: RC_BILLING_TIMEOUT; s: 'Billing timeout'), ( c: RC_BILLING_RECV_FAILED; s: 'Billing receive failed'), ( c: RC_BILLING_RESPONSE_INVALID; s: 'Billing response invalid'), ( c: RC_BILLING_REJECTED; s: 'Billing rejected'), ( c: RC_BILLING_BLOCKED; s: 'Billing blocked'), ( c: RC_TOO_MANY_WORLDS; s: 'Too many worlds'), ( c: RC_MUST_UPGRADE; s: 'Must upgrade'), ( c: RC_BOT_LIMIT_EXCEEDED; s: 'Bot limit exceeded'), ( c: RC_WORLD_EXPIRED; s: 'World expired'), ( c: RC_CITIZEN_DOES_NOT_EXPIRE; s: 'Citizen does not expire'), ( c: RC_LICENSE_STARTS_WITH_NUMBER; s: 'License starts with number'), ( c: RC_NO_SUCH_EJECTION; s: 'No such ejection'), ( c: RC_NO_SUCH_SESSION; s: 'No such session'), ( c: RC_EJECTION_EXPIRED; s: 'Ejection expired'), ( c: RC_ACTING_CITIZEN_EXPIRED; s: 'Acting citizen expired'), ( c: RC_ALREADY_STARTED; s: 'Already started'), ( c: RC_WORLD_RUNNING; s: 'World running'), ( c: RC_WORLD_NOT_SET; s: 'World not set'), ( c: RC_NO_SUCH_CELL; s: 'No such cell'), ( c: RC_NO_REGISTRY; s: 'No registry'), ( c: RC_CANT_OPEN_REGISTRY; s: 'Can''t open registry'), ( c: RC_CITIZEN_DISABLED; s: 'Citizen disabled'), ( c: RC_WORLD_DISABLED; s: 'World disabled'), ( c: RC_BETA_REQUIRED; s: 'Beta required'), ( c: RC_ACTING_CITIZEN_DISABLED; s: 'Acting citizen disabled'), ( c: RC_INVALID_USER_COUNT; s: 'Invalid user count'), ( c: RC_PRIVATE_WORLD; s: 'Private world'), ( c: RC_NO_TOURISTS; s: 'No tourists'), ( c: RC_EMAIL_CONTAINS_INVALID_CHAR; s: 'Email contains invalid character'), ( c: RC_EMAIL_ENDS_WITH_BLANK; s: 'Email ends with blank'), ( c: RC_EMAIL_MISSING_DOT; s: 'Email missing dot'), ( c: RC_EMAIL_MISSING_AT; s: 'Email missing at'), ( c: RC_EMAIL_STARTS_WITH_BLANK; s: 'Email starts with blank'), ( c: RC_EMAIL_TOO_LONG; s: 'Email too long'), ( c: RC_EMAIL_TOO_SHORT; s: 'Email too short'), ( c: RC_NAME_ALREADY_USED; s: 'Name already used'), ( c: RC_NAME_CONTAINS_NONALPHANUMERIC_CHAR; s: 'Name contains nonalphanumeric character'), ( c: RC_NAME_CONTAINS_INVALID_BLANK; s: 'Name contains invalid blank'), ( c: RC_NAME_DOESNT_EXIST; s: 'Name does not exist'), ( c: RC_NAME_ENDS_WITH_BLANK; s: 'Name ends with blank'), ( c: RC_NAME_TOO_LONG; s: 'Name too long'), ( c: RC_NAME_TOO_SHORT; s: 'Name too short'), ( c: RC_NAME_UNUSED; s: 'Name unused'), ( c: RC_PASSWORD_TOO_LONG; s: 'Password too long'), ( c: RC_PASSWORD_TOO_SHORT; s: 'Password too short'), ( c: RC_LICENSE_PASSWORD_CONTAINS_SPACE; s: 'Password contains space'), ( c: RC_UNABLE_TO_DELETE_NAME; s: 'Unable to delete name'), ( c: RC_UNABLE_TO_GET_CITIZEN; s:'Unable to get citizen'), ( c: RC_UNABLE_TO_INSERT_CITIZEN; s:'Unable to insert citizen'), ( c: RC_UNABLE_TO_INSERT_NAME; s: 'Unable to insert name'), ( c: RC_UNABLE_TO_PUT_CITIZEN_COUNT; s: 'Unable to put citizen count'), ( c: RC_UNABLE_TO_DELETE_CITIZEN; s: 'Unable to delete citizen'), ( c: RC_NUMBER_ALREADY_USED; s: 'Number already used'), ( c: RC_NUMBER_OUT_OF_RANGE; s: 'Number out of range'), ( c: RC_PRIVILEGE_PASSWORD_IS_TOO_SHORT; s: 'Privilege password is too short'), ( c: RC_PRIVILEGE_PASSWORD_IS_TOO_LONG; s: 'Privilege password is too long'), ( c: RC_OLD_DATABASE; s: 'Old database'), ( c: RC_START_TRANSACT_FAILED; s: 'Start transact failed'), ( c: RC_NOT_CHANGE_OWNER; s: 'Not change owner'), ( c: RC_CANT_FIND_OLD_ELEMENT; s: 'Cannot find old element'), ( c: RC_UNABLE_TO_CHANGE_ATTRIBUTE; s: 'Unable to change attribute'), ( c: RC_CANT_CHANGE_OWNER; s: 'Cannot change owner'), ( c: RC_IMPOSTER; s: 'Imposter'), ( c: RC_INVALID_REQUEST; s: 'Invalid request'), ( c: RC_CANT_BUILD_HERE; s: 'Cannot build here'), ( c: RC_NOT_ALLOWED; s: 'Not allowed'), ( c: RC_ENCROACHES; s: 'Encroaches'), ( c: RC_NO_SUCH_OBJECT; s: 'No such object'), ( c: RC_NOT_DELETE_OWNER; s: 'Not delete owner'), ( c: RC_TOO_MANY_BYTES; s: 'Too many bytes'), ( c: RC_UNABLE_TO_STORE; s: 'Unable to store'), ( c: RC_UNREGISTERED_OBJECT; s: 'Unregistered object'), ( c: RC_ELEMENT_ALREADY_EXISTS; s: 'Element already exists'), ( c: RC_RESTRICTED_COMMAND; s: 'Restricted command'), ( c: RC_NO_BUILD_RIGHTS; s: 'No build rights'), ( c: RC_OUT_OF_BOUNDS; s: 'Out of bounds'), ( c: RC_RESTRICTED_OBJECT; s: 'Restricted object'), ( c: RC_RESTRICTED_AREA; s: 'Restricted area'), ( c: RC_OUT_OF_MEMORY; s: 'Out of memory'), ( c: RC_NOT_YET; s: 'Not yet'), ( c: RC_TIMEOUT; s: 'Timeout'), ( c: RC_NULL_POINTER; s: 'Null pointer'), ( c: RC_UNABLE_TO_CONTACT_UNIVERSE; s: 'Unable to contact universe'), ( c: RC_UNABLE_TO_CONTACT_WORLD; s: 'Unable to contact world'), ( c: RC_INVALID_WORLD_NAME; s: 'Invalid world name'), ( c: RC_SEND_FAILED; s: 'Send failed'), ( c: RC_RECEIVE_FAILED; s: 'Receive failed'), ( c: RC_STREAM_EMPTY; s: 'Stream empty'), ( c: RC_STREAM_MESSAGE_TOO_LONG; s: 'Stream messages too long'), ( c: RC_WORLD_NAME_TOO_LONG; s: 'World name too long'), ( c: RC_MESSAGE_TOO_LONG; s: 'Message too long'), ( c: RC_TOO_MANY_RESETS; s: 'Too many resets'), ( c: RC_UNABLE_TO_CREATE_SOCKET; s: 'Unable to create socket'), ( c: RC_UNABLE_TO_CONNECT; s: 'Unable to connect'), ( c: RC_UNABLE_TO_SET_NONBLOCKING; s: 'Unable to set non-blocking'), ( c: RC_CANT_OPEN_STREAM; s: 'Can''t open stream' ), ( c: RC_CANT_WRITE_STREAM; s: 'Can''t write stream' ), ( c: RC_CANT_CLOSE_STREAM; s: 'Can''t close stream' ), ( c: RC_NO_CONNECTION; s: 'No connection'), ( c: RC_UNABLE_TO_INITIALIZE_NETWORK; s: 'Unable to initialize network'), ( c: RC_INCORRECT_MESSAGE_LENGTH; s: 'Incorrect message length'), ( c: RC_NOT_INITIALIZED; s: 'Not initialized'), ( c: RC_NO_INSTANCE; s: 'No instance'), ( c: RC_OUT_BUFFER_FULL; s: 'Out buffer full'), ( c: RC_INVALID_CALLBACK; s: 'Invalid callback'), ( c: RC_INVALID_ATTRIBUTE; s: 'Invalid attribute'), ( c: RC_TYPE_MISMATCH; s: 'Type mismatch'), ( c: RC_STRING_TOO_LONG; s: 'String too long'), ( c: RC_READ_ONLY; s: 'Read only'), ( c: RC_UNABLE_TO_REGISTER_RESOLVE; s: 'Unable to register resolve' ), ( c: RC_INVALID_INSTANCE; s: 'Invalid instance'), ( c: RC_VERSION_MISMATCH; s: 'Version mismatch'), ( c: RC_IN_BUFFER_FULL; s: 'In buffer full'), ( c: RC_PROTOCOL_ERROR; s: 'Protocol error'), ( c: RC_QUERY_IN_PROGRESS; s: 'Query in progress'), ( c: RC_WORLD_FULL; s: 'World full' ), ( c: RC_EJECTED; s: 'Ejected'), ( c: RC_NOT_WELCOME; s: 'Not welcome'), ( c: RC_UNABLE_TO_BIND; s: 'Unable to bind' ), ( c: RC_UNABLE_TO_LISTEN; s: 'Unable to listen' ), ( c: RC_UNABLE_TO_ACCEPT; s: 'Unable to accept' ), ( c: RC_CONNECTION_LOST; s: 'Connection lost'), ( c: RC_NO_STREAM; s: 'No stream' ), ( c: RC_NOT_AVAILABLE; s: 'Not available'), ( c: RC_OLD_UNIVERSE; s: 'Old universe' ), ( c: RC_OLD_WORLD; s: 'Old world'), ( c: RC_WORLD_NOT_RUNNING; s: 'World not running'), ( c: RC_INVALID_ARGUMENT; s: 'Invalid argument' ), ( c: RC_TELEGRAM_BLOCKED; s: 'Telegram blocked' ), ( c: RC_TELEGRAM_TOO_LONG; s: 'Telegram too long' ), ( c: RC_CALL_LIMIT_EXCEEDED; s: 'Call limit exceeded' ), ( c: RC_BOTGRAM_SENT_TO_NONE; s: 'Botgram sent to none' ), ( c: RC_JOIN_REFUSED; s: 'Join refused' ) ); function AWErrCode(code: integer): PChar; var i: integer; begin Result:='Unknown code'; for i:=0 to Length(aAWErrCodes)-1 do begin if aAWErrCodes[i].c = code then begin Result:=aAWErrCodes[i].s; break; end; end; end; end.