activeworlds_ffi 4.2.77.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,21 @@
1
+ require 'rubygems'
2
+ require 'yaml'
3
+ require 'logger'
4
+
5
+ class BotLogger < Logger
6
+
7
+ def initialize(options={})
8
+ progname = options[:application_name] || 'bot_logger'
9
+ @logfile = File.open(File.join(File.dirname(__FILE__),"logs", "#{progname}.log"), "a")
10
+ @logfile.sync = true
11
+
12
+ super(@logfile, options[:rotate_count] || 1, options[:max_size] || 300 * 1024**2 )
13
+ self.progname = progname
14
+ self.level = options[:log_level] || Logger::INFO
15
+ self.formatter = Logger::Formatter.new
16
+ self.datetime_format = "%Y-%m-%d %H:%M:%S"
17
+ end
18
+
19
+ end
20
+
21
+
@@ -0,0 +1,61 @@
1
+ # This is an example template
2
+ #
3
+ #
4
+
5
+ require 'base_bot'
6
+
7
+ $BOTDIR = File.dirname(__FILE__)
8
+ # record the pid
9
+ File.open(File.join($BOTDIR, 'pids','BOT.pid'),'w') {|f| f.write(Process.pid) }
10
+
11
+ class BOT < BaseBot
12
+
13
+ def initialize(world_name)
14
+ super(world_name)
15
+
16
+ end
17
+
18
+ def log_avatar_add
19
+ set_event_handler :AW_EVENT_AVATAR_ADD, Proc.new {
20
+ a = attributes_for(:AW_EVENT_AVATAR_ADD)
21
+
22
+ }
23
+ end
24
+
25
+ # An example for how to setup
26
+ def handle_hud_callback_result
27
+ set_callback_handler :AW_CALLBACK_HUD_RESULT, Proc.new {|rc|
28
+ a = attributes_for(:AW_CALLBACK_HUD_RESULT)
29
+ debug "HUD_RESULT | #{rc_sym(rc)} | #{a[:AW_HUD_ELEMENT_SESSION]} | #{a[:AW_HUD_ELEMENT_ID]}"
30
+ }
31
+ end
32
+
33
+ # called by start_worlds_by_batch
34
+ def self.for_world(world_name)
35
+ bot = super( world_name )
36
+ # register callbacks
37
+
38
+ bot
39
+ end
40
+
41
+ def self.do_work
42
+ @@bots[:instances].each do |bot|
43
+ bot.set_self_as_instance
44
+ end
45
+ end
46
+ end
47
+
48
+ def run(options, logger)
49
+ BOT.configure(options, logger)
50
+ worlds = YAML.load_file('worlds.yml')
51
+ BOT.start_worlds_by_batch( BOT.config_worlds.collect {|world_group| worlds[world_group]}.flatten )
52
+ while 0 == BOT.wait(1000)
53
+ #put non-event work here
54
+ end
55
+ rescue => ex
56
+ $BOTLogger.fatal("#{ex.class} : #{ex.message}\n#{ex.backtrace.join("\n")}")
57
+ end
58
+
59
+ config = YAML.load_file("bots_config.yml")["BOT"]
60
+ $BOTLogger = BotLogger.new(config)
61
+ run(config, $BOTLogger)
@@ -0,0 +1,26 @@
1
+ ---
2
+ universe_base: &universe_base
3
+ :host: universe.server.com
4
+ :bot_owner_id: 1
5
+ :login_name: administrator
6
+ :password: administrator_privilege_password
7
+ :global_bot: true # true or false
8
+
9
+ universe42: &universe42
10
+ <<: *universe_base
11
+ :port: 0 # set to your target universe port
12
+
13
+ tracker:
14
+ <<: *universe42
15
+ :application_name: tracker
16
+ :login_name: tracker
17
+ :world_groups: [:world_group_one, :world_group_two]
18
+ :max_size: 300 * 1024**2 # sets logs to rotate at 300MB
19
+ :rotate_count: 1
20
+ :log_level: 1 # 0 = Logger::DEBUG, 1 = Logger::INFO, look at Logger documentation for more information
21
+
22
+ map:
23
+ <<: *universe42
24
+ :application_name: map
25
+ :login_name: map
26
+ :world_groups: [:world_group_two]
@@ -0,0 +1,75 @@
1
+ #! /usr/bin/env ruby19
2
+ require 'rubygems'
3
+ require 'activeworlds_ffi'
4
+
5
+ include ActiveworldsFFI
6
+
7
+ def handle_avatar_add
8
+ s = "Hello #{aw_string(AW_AVATAR_NAME)}! I'm the broken record."
9
+ # we're using a console message instead of aw_say(s) since that might be annoying
10
+ aw_string_set(AW_CONSOLE_MESSAGE, s)
11
+ aw_console_message(aw_int(AW_AVATAR_SESSION))
12
+ puts(s)
13
+ end
14
+
15
+ if ARGV.nil? || ARGV.size < 3
16
+ puts("Usage: hello.rb citizen_id privilege_password world")
17
+ exit(1)
18
+ end
19
+
20
+ # initialize Active Worlds API
21
+ rc = aw_init(AW_BUILD)
22
+ if( rc != RC_SUCCESS )
23
+ printf("Unable to initialize API (reason %d)\n", rc)
24
+ exit( 1 )
25
+ end
26
+
27
+ # assign the proc to a constant so that it never gets garbage collected
28
+ AVATAR_ADD_HANDLER = Proc.new { handle_avatar_add }
29
+
30
+ # install handler for avatar_add event
31
+ aw_event_set(AW_EVENT_AVATAR_ADD, AVATAR_ADD_HANDLER)
32
+
33
+ # create bot instance
34
+ rc = aw_create("atlantis.activeworlds.com", 5870, nil);
35
+ if rc != RC_SUCCESS
36
+ printf "Unable to create bot instance (reason %d)\n", rc
37
+ exit 1
38
+ end
39
+
40
+ # log bot into the universe
41
+ aw_int_set AW_LOGIN_OWNER, ARGV[0].to_i
42
+ aw_string_set AW_LOGIN_PRIVILEGE_PASSWORD, ARGV[1]
43
+ aw_string_set AW_LOGIN_APPLICATION, "SDK Sample Application #1"
44
+ aw_string_set AW_LOGIN_NAME, "GreeterBot"
45
+ rc = aw_login
46
+ if rc != RC_SUCCESS
47
+ printf("Unable to login (reason %d)\n", rc)
48
+ exit(1)
49
+ end
50
+
51
+ # log bot into the world named on the command line
52
+ rc = aw_enter (ARGV[2]);
53
+ if (rc != RC_SUCCESS)
54
+ printf("Unable to enter world (reason %d)\n", rc)
55
+ exit(1)
56
+ end
57
+
58
+ # announce our position in the world
59
+ aw_int_set(AW_MY_X, 1000) #/* 1W */
60
+ aw_int_set(AW_MY_Z, 1000) #/* 1N */
61
+ aw_int_set(AW_MY_YAW, 2250) #/* face towards GZ */
62
+ rc = aw_state_change
63
+ if rc != RC_SUCCESS
64
+ printf "Unable to change state (reason %d)\n", rc
65
+ exit 1
66
+ end
67
+
68
+ # /* main event loop */
69
+ while aw_wait(-1) == RC_SUCCESS
70
+ end
71
+
72
+ # /* close everything down */
73
+ aw_destroy
74
+ aw_term
75
+
@@ -0,0 +1,103 @@
1
+
2
+ require 'base_bot'
3
+
4
+ $BOTDIR = File.dirname(__FILE__)
5
+ # record the pid
6
+ File.open(File.join($BOTDIR, 'pids','tracker.pid'),'w') {|f| f.write(Process.pid) }
7
+
8
+ class ActivityLogging < BaseBot
9
+
10
+ def initialize(world_name)
11
+ super(world_name)
12
+ end
13
+
14
+ def log_avatar_add
15
+ set_event_handler :AW_EVENT_AVATAR_ADD, Proc.new {
16
+ a = attributes_for(:AW_EVENT_AVATAR_ADD)
17
+ info "ENTER | #{a[:AW_AVATAR_NAME]} | #{a[:AW_AVATAR_SESSION]}" +
18
+ " | #{a[:AW_AVATAR_X]} | #{a[:AW_AVATAR_Y]} | #{a[:AW_AVATAR_Z]}" +
19
+ " | #{a[:AW_AVATAR_YAW]}"
20
+ }
21
+ end
22
+
23
+ def log_chat
24
+ set_event_handler :AW_EVENT_CHAT, Proc.new {
25
+ a = attributes_for(:AW_EVENT_CHAT)
26
+ info "CHAT | #{a[:AW_AVATAR_NAME]} | #{a[:AW_CHAT_MESSAGE]}"
27
+ }
28
+ end
29
+
30
+ def log_avatar_change
31
+ set_event_handler :AW_EVENT_AVATAR_CHANGE, Proc.new {
32
+ a = attributes_for(:AW_EVENT_AVATAR_CHANGE)
33
+ info "MOVED | #{a[:AW_AVATAR_NAME]} | #{a[:AW_AVATAR_SESSION]}" +
34
+ " | #{a[:AW_AVATAR_X]} | #{a[:AW_AVATAR_Y]} | #{a[:AW_AVATAR_Z]}" +
35
+ " | #{a[:AW_AVATAR_YAW]}"
36
+ }
37
+ end
38
+
39
+ def log_avatar_delete
40
+ set_event_handler :AW_EVENT_AVATAR_DELETE, Proc.new {
41
+ a = attributes_for(:AW_EVENT_AVATAR_DELETE)
42
+ info "LEFT | #{a[:AW_AVATAR_NAME]} | #{a[:AW_AVATAR_SESSION]}"
43
+ }
44
+ end
45
+
46
+ def log_avatar_click
47
+ set_event_handler :AW_EVENT_AVATAR_CLICK, Proc.new {
48
+ a = attributes_for(:AW_EVENT_AVATAR_CLICK)
49
+ info "AVATAR_CLICK | #{a[:AW_AVATAR_NAME]} | #{a[:AW_CLICKED_NAME]}"
50
+ }
51
+ end
52
+
53
+ def log_object_click
54
+ set_event_handler :AW_EVENT_OBJECT_CLICK, Proc.new {
55
+ a = attributes_for(:AW_EVENT_OBJECT_CLICK)
56
+ info "OBJECT_CLICK | #{a[:AW_AVATAR_NAME]} | #{a[:AW_CELL_X]} | #{a[:AW_CELL_Z]}" +
57
+ " | #{a[:AW_OBJECT_ID]} | #{a[:AW_OBJECT_TYPE]} | #{a[:AW_OBJECT_X]} | #{a[:AW_OBJECT_Y]}" +
58
+ " | #{a[:AW_OBJECT_Z]} | #{a[:AW_OBJECT_MODEL]} | #{a[:AW_OBJECT_DESCRIPTION]} | #{a[:AW_OBJECT_ACTION]}"
59
+ }
60
+ end
61
+
62
+ def log_url_click
63
+ set_event_handler :AW_EVENT_URL_CLICK, Proc.new {
64
+ a = attributes_for(:AW_EVENT_URL_CLICK)
65
+ info "URL_CLICK | #{a[:AW_AVATAR_NAME]} | #{a[:AW_AVATAR_SESSION]} | #{a[:AW_URL_NAME]}"
66
+ }
67
+ end
68
+
69
+ def self.for_world(world_name)
70
+ bot = super( world_name )
71
+ bot.log_avatar_add
72
+ bot.log_chat
73
+ bot.log_avatar_change
74
+ bot.log_avatar_delete
75
+ bot.log_avatar_click
76
+ bot.log_object_click
77
+ bot.log_url_click
78
+ bot
79
+ end
80
+
81
+ def self.do_work
82
+ @@bots[:instances].each do |bot|
83
+ bot.set_self_as_instance
84
+ end
85
+ end
86
+
87
+ end
88
+
89
+ def run(options, logger)
90
+ ActivityLogging.configure(options, logger)
91
+ worlds = YAML.load_file('worlds.yml')
92
+ ActivityLogging.start_worlds_by_batch( ActivityLogging.config_worlds.collect {|world_group| worlds[world_group]}.flatten )
93
+ while 0 == ActivityLogging.wait(10000)
94
+ #put non-event work here
95
+ end
96
+ rescue => ex
97
+ $ActivityLogger.fatal("#{ex.class} : #{ex.message}\n#{ex.backtrace.join("\n")}")
98
+ end
99
+
100
+ config = YAML.load_file("bots_config.yml")["tracker"]
101
+ $ActivityLogger = BotLogger.new(config)
102
+ run(config, $ActivityLogger)
103
+
@@ -0,0 +1,9 @@
1
+ ---
2
+ :world_group_one: &world_group_one
3
+ - alpha
4
+ - beta
5
+ - gamma
6
+
7
+ :world_group_two: &world_group_two
8
+ - xi
9
+ - zeta
@@ -0,0 +1,2077 @@
1
+
2
+ require 'rubygems'
3
+ require 'ffi'
4
+
5
+ module ActiveworldsFFI
6
+ extend FFI::Library
7
+ ffi_lib "libstdc++.so.6"
8
+ ffi_lib "libaw_sdk.42.so"
9
+
10
+ # Reason Codes
11
+ RC_SUCCESS = 0
12
+ RC_CITIZENSHIP_EXPIRED = 1
13
+ RC_LAND_LIMIT_EXCEEDED = 2
14
+ RC_NO_SUCH_CITIZEN = 3
15
+ RC_MESSAGE_LENGTH_BAD = 4
16
+ RC_LICENSE_PASSWORD_CONTAINS_SPACE = 5
17
+ RC_LICENSE_PASSWORD_TOO_LONG = 6
18
+ RC_LICENSE_PASSWORD_TOO_SHORT = 7
19
+ RC_LICENSE_RANGE_TOO_LARGE = 8
20
+ RC_LICENSE_RANGE_TOO_SMALL = 9
21
+ RC_LICENSE_USERS_TOO_LARGE = 10
22
+ RC_LICENSE_USERS_TOO_SMALL = 11
23
+ RC_LICENSE_CONTAINS_INVALID_CHAR = 12
24
+ RC_INVALID_PASSWORD = 13
25
+ RC_UNABLE_TO_MAIL_BACK_NUMBER = 14
26
+ RC_LICENSE_WORLD_TOO_SHORT = 15
27
+ RC_LICENSE_WORLD_TOO_LONG = 16
28
+ RC_SERVER_OUT_OF_MEMORY = 17
29
+ RC_INVALID_WORLD = 20
30
+ RC_SERVER_OUTDATED = 21
31
+ RC_WORLD_ALREADY_STARTED = 22
32
+ RC_NO_SUCH_WORLD = 27
33
+ RC_NOT_LOGGED_IN = 31
34
+ RC_UNAUTHORIZED = 32
35
+ RC_WORLD_ALREADY_EXISTS = 33
36
+ RC_NO_SUCH_LICENSE = 34
37
+ RC_IDENTITY_ALREADY_IN_USE = 39
38
+ RC_UNABLE_TO_REPORT_LOCATION = 40
39
+ RC_INVALID_EMAIL = 41
40
+ RC_NO_SUCH_ACTING_CITIZEN = 42
41
+ RC_ACTING_PASSWORD_INVALID = 43
42
+ RC_UNIVERSE_FULL = 45
43
+ RC_BILLING_TIMEOUT = 46
44
+ RC_BILLING_RECV_FAILED = 47
45
+ RC_BILLING_RESPONSE_INVALID = 48
46
+ RC_BILLING_REJECTED = 55
47
+ RC_BILLING_BLOCKED = 56
48
+ RC_TOO_MANY_WORLDS = 57
49
+ RC_MUST_UPGRADE = 58
50
+ RC_BOT_LIMIT_EXCEEDED = 59
51
+ RC_WORLD_EXPIRED = 61
52
+ RC_CITIZEN_DOES_NOT_EXPIRE = 62
53
+ RC_LICENSE_STARTS_WITH_NUMBER = 64
54
+ RC_NO_SUCH_EJECTION = 66
55
+ RC_NO_SUCH_SESSION = 67
56
+ RC_EJECTION_EXPIRED = 69
57
+ RC_ACTING_CITIZEN_EXPIRED = 70
58
+ RC_ALREADY_STARTED = 71
59
+ RC_WORLD_RUNNING = 72
60
+ RC_WORLD_NOT_SET = 73
61
+ RC_NO_SUCH_CELL = 74
62
+ RC_NO_REGISTRY = 75
63
+ RC_CANT_OPEN_REGISTRY = 76
64
+ RC_CITIZEN_DISABLED = 77
65
+ RC_WORLD_DISABLED = 78
66
+ RC_BETA_REQUIRED = 79
67
+ RC_ACTING_CITIZEN_DISABLED = 80
68
+ RC_INVALID_USER_COUNT = 81
69
+ RC_PRIVATE_WORLD = 91
70
+ RC_NO_TOURISTS = 92
71
+ RC_EMAIL_CONTAINS_INVALID_CHAR = 100
72
+ RC_EMAIL_ENDS_WITH_BLANK = 101
73
+ RC_NO_SUCH_OBJECT = 101
74
+ RC_EMAIL_MISSING_DOT = 102
75
+ RC_NOT_DELETE_OWNER = 102
76
+ RC_EMAIL_MISSING_AT = 103
77
+ RC_EMAIL_STARTS_WITH_BLANK = 104
78
+ RC_EMAIL_TOO_LONG = 105
79
+ RC_EMAIL_TOO_SHORT = 106
80
+ RC_NAME_ALREADY_USED = 107
81
+ RC_NAME_CONTAINS_NONALPHANUMERIC_CHAR = 108
82
+ RC_NAME_CONTAINS_INVALID_BLANK = 109
83
+ RC_NAME_DOESNT_EXIST = 110
84
+ RC_NAME_ENDS_WITH_BLANK = 111
85
+ RC_NAME_TOO_LONG = 112
86
+ RC_NAME_TOO_SHORT = 113
87
+ RC_NAME_UNUSED = 114
88
+ RC_PASSWORD_TOO_LONG = 115
89
+ RC_PASSWORD_TOO_SHORT = 116
90
+ RC_PASSWORD_WRONG = 117
91
+ RC_UNABLE_TO_DELETE_NAME = 119
92
+ RC_UNABLE_TO_GET_CITIZEN = 120
93
+ RC_UNABLE_TO_INSERT_CITIZEN = 121
94
+ RC_UNABLE_TO_INSERT_NAME = 122
95
+ RC_UNABLE_TO_PUT_CITIZEN_COUNT = 123
96
+ RC_UNABLE_TO_DELETE_CITIZEN = 124
97
+ RC_NUMBER_ALREADY_USED = 126
98
+ RC_NUMBER_OUT_OF_RANGE = 127
99
+ RC_PRIVILEGE_PASSWORD_IS_TOO_SHORT = 128
100
+ RC_PRIVILEGE_PASSWORD_IS_TOO_LONG = 129
101
+ RC_NOT_CHANGE_OWNER = 203
102
+ RC_CANT_FIND_OLD_ELEMENT = 204
103
+ RC_UNABLE_TO_CHANGE_ATTRIBUTE = 210
104
+ RC_CANT_CHANGE_OWNER = 211
105
+ RC_IMPOSTER = 212
106
+ RC_INVALID_REQUEST = 213
107
+ RC_CANT_BUILD_HERE = 216
108
+ RC_ENCROACHES = 300
109
+ RC_OBJECT_TYPE_INVALID = 301
110
+ RC_TOO_MANY_BYTES = 303
111
+ RC_UNABLE_TO_STORE = 305
112
+ RC_UNREGISTERED_OBJECT = 306
113
+ RC_ELEMENT_ALREADY_EXISTS = 308
114
+ RC_RESTRICTED_COMMAND = 309
115
+ RC_NO_BUILD_RIGHTS = 310
116
+ RC_OUT_OF_BOUNDS = 311
117
+ RC_RESTRICTED_OBJECT = 313
118
+ RC_RESTRICTED_AREA = 314
119
+ RC_OUT_OF_MEMORY = 400
120
+ RC_NOT_YET = 401
121
+ RC_TIMEOUT = 402
122
+ RC_NULL_POINTER = 403
123
+ RC_UNABLE_TO_CONTACT_UNIVERSE = 404
124
+ RC_UNABLE_TO_CONTACT_WORLD = 405
125
+ RC_INVALID_WORLD_NAME = 406
126
+ RC_SEND_FAILED = 415
127
+ RC_RECEIVE_FAILED = 416
128
+ RC_STREAM_EMPTY = 421
129
+ RC_STREAM_MESSAGE_TOO_LONG = 422
130
+ RC_WORLD_NAME_TOO_LONG = 423
131
+ RC_MESSAGE_TOO_LONG = 426
132
+ RC_TOO_MANY_RESETS = 427
133
+ RC_UNABLE_TO_CREATE_SOCKET = 428
134
+ RC_UNABLE_TO_CONNECT = 429
135
+ RC_UNABLE_TO_SET_NONBLOCKING = 430
136
+ RC_CANT_OPEN_STREAM = 434
137
+ RC_CANT_WRITE_STREAM = 435
138
+ RC_CANT_CLOSE_STREAM = 436
139
+ RC_NO_CONNECTION = 439
140
+ RC_UNABLE_TO_INITIALIZE_NETWORK = 442
141
+ RC_INCORRECT_MESSAGE_LENGTH = 443
142
+ RC_NOT_INITIALIZED = 444
143
+ RC_NO_INSTANCE = 445
144
+ RC_OUT_BUFFER_FULL = 446
145
+ RC_INVALID_CALLBACK = 447
146
+ RC_INVALID_ATTRIBUTE = 448
147
+ RC_TYPE_MISMATCH = 449
148
+ RC_STRING_TOO_LONG = 450
149
+ RC_READ_ONLY = 451
150
+ RC_UNABLE_TO_REGISTER_RESOLVE = 452
151
+ RC_INVALID_INSTANCE = 453
152
+ RC_VERSION_MISMATCH = 454
153
+ RC_IN_BUFFER_FULL = 461
154
+ RC_PROTOCOL_ERROR = 463
155
+ RC_QUERY_IN_PROGRESS = 464
156
+ RC_WORLD_FULL = 465
157
+ RC_EJECTED = 466
158
+ RC_NOT_WELCOME = 467
159
+ RC_UNABLE_TO_BIND = 468
160
+ RC_UNABLE_TO_LISTEN = 469
161
+ RC_UNABLE_TO_ACCEPT = 470
162
+ RC_CONNECTION_LOST = 471
163
+ RC_NO_STREAM = 473
164
+ RC_NOT_AVAILABLE = 474
165
+ RC_OLD_UNIVERSE = 487
166
+ RC_OLD_WORLD = 488
167
+ RC_WORLD_NOT_RUNNING = 489
168
+ RC_CANT_RESOLVE_UNIVERSE_HOST = 500
169
+ RC_INVALID_ARGUMENT = 505
170
+ RC_WORLD_INSTANCE_ALREADY_EXISTS = 521
171
+ RC_WORLD_INSTANCE_INVALID = 522
172
+ RC_EMAIL_CHANGE_NOT_ALLOWED = 525
173
+ RC_NAME_CHANGE_NOT_ALLOWED = 526
174
+ RC_EMAIL_ALREADY_USED = 527
175
+ RC_EMAIL_NOT_ALLOWED = 528
176
+ RC_WORLD_REDIRECT = 529
177
+ RC_DATABASE_ERROR = 600
178
+
179
+ # beginning of standard Aw.h
180
+ AW_BUILD = 77
181
+ AW_MAX_AVCHANGE_PER_SECOND = 10
182
+ AW_MAX_MESSAGES_PER_SECOND = 100
183
+ AW_MAX_WHISPERS_PER_SECOND = 100
184
+ AW_MAX_BOTGRAMS_PER_SECOND = 32
185
+ AW_MAX_ATTRIBUTE_LENGTH = 255
186
+ AW_CELL_MIN = -32767
187
+ AW_PERSONAL_AVATAR = 65535
188
+ AW_CUSTOM_AVATAR = 65534
189
+ AW_CUSTOM_WORLD_AVATAR = 65533
190
+ AW_OBJECT_VERSION_CAMERA = 1
191
+ AW_OBJECT_VERSION_PARTICLES = 1
192
+ AW_OBJECT_VERSION_ZONE = 1
193
+ AW_OBJECT_VERSION_MOVER = 1
194
+ AW_LOGIN_NAME = 0
195
+ AW_LOGIN_PASSWORD = 1
196
+ AW_UNIVERSE_BROWSER_BETA = 10
197
+ AW_WORLD_SKYBOX = 100
198
+ AW_WORLD_MINIMUM_VISIBILITY = 101
199
+ AW_WORLD_REPEATING_GROUND = 102
200
+ AW_WORLD_KEYWORDS = 103
201
+ AW_WORLD_ENABLE_TERRAIN = 104
202
+ AW_WORLD_ALLOW_3_AXIS_ROTATION = 105
203
+ AW_WORLD_TERRAIN_TIMESTAMP = 106
204
+ AW_WORLD_ENTRY_POINT = 107
205
+ AW_WORLD_SKY_NORTH_RED = 108
206
+ AW_WORLD_SKY_NORTH_GREEN = 109
207
+ AW_UNIVERSE_WORLD_MINIMUM = 11
208
+ AW_WORLD_SKY_NORTH_BLUE = 110
209
+ AW_WORLD_SKY_SOUTH_RED = 111
210
+ AW_WORLD_SKY_SOUTH_GREEN = 112
211
+ AW_WORLD_SKY_SOUTH_BLUE = 113
212
+ AW_WORLD_SKY_EAST_RED = 114
213
+ AW_WORLD_SKY_EAST_GREEN = 115
214
+ AW_WORLD_SKY_EAST_BLUE = 116
215
+ AW_WORLD_SKY_WEST_RED = 117
216
+ AW_WORLD_SKY_WEST_GREEN = 118
217
+ AW_WORLD_SKY_WEST_BLUE = 119
218
+ AW_UNIVERSE_WORLD_START = 12
219
+ AW_WORLD_SKY_TOP_RED = 120
220
+ AW_WORLD_SKY_TOP_GREEN = 121
221
+ AW_WORLD_SKY_TOP_BLUE = 122
222
+ AW_WORLD_SKY_BOTTOM_RED = 123
223
+ AW_WORLD_SKY_BOTTOM_GREEN = 124
224
+ AW_WORLD_SKY_BOTTOM_BLUE = 125
225
+ AW_WORLD_CLOUDS_LAYER1_TEXTURE = 126
226
+ AW_WORLD_CLOUDS_LAYER1_MASK = 127
227
+ AW_WORLD_CLOUDS_LAYER1_TILE = 128
228
+ AW_WORLD_CLOUDS_LAYER1_SPEED_X = 129
229
+ AW_UNIVERSE_REGISTRATION_REQUIRED = 13
230
+ AW_WORLD_CLOUDS_LAYER1_SPEED_Z = 130
231
+ AW_WORLD_CLOUDS_LAYER1_OPACITY = 131
232
+ AW_WORLD_CLOUDS_LAYER2_TEXTURE = 132
233
+ AW_WORLD_CLOUDS_LAYER2_MASK = 133
234
+ AW_WORLD_CLOUDS_LAYER2_TILE = 134
235
+ AW_WORLD_CLOUDS_LAYER2_SPEED_X = 135
236
+ AW_WORLD_CLOUDS_LAYER2_SPEED_Z = 136
237
+ AW_WORLD_CLOUDS_LAYER2_OPACITY = 137
238
+ AW_WORLD_CLOUDS_LAYER3_TEXTURE = 138
239
+ AW_WORLD_CLOUDS_LAYER3_MASK = 139
240
+ AW_UNIVERSE_BUILD_NUMBER = 14
241
+ AW_WORLD_CLOUDS_LAYER3_TILE = 140
242
+ AW_WORLD_CLOUDS_LAYER3_SPEED_X = 141
243
+ AW_WORLD_CLOUDS_LAYER3_SPEED_Z = 142
244
+ AW_WORLD_CLOUDS_LAYER3_OPACITY = 143
245
+ AW_WORLD_DISABLE_CHAT = 144
246
+ AW_WORLD_ALLOW_CITIZEN_WHISPER = 145
247
+ AW_WORLD_ALWAYS_SHOW_NAMES = 146
248
+ AW_WORLD_DISABLE_AVATAR_LIST = 147
249
+ AW_WORLD_AVATAR_REFRESH_RATE = 148
250
+ AW_WORLD_WATER_TEXTURE = 149
251
+ AW_UNIVERSE_MONTHLY_CHARGE = 15
252
+ AW_WORLD_WATER_MASK = 150
253
+ AW_WORLD_WATER_BOTTOM_TEXTURE = 151
254
+ AW_WORLD_WATER_BOTTOM_MASK = 152
255
+ AW_WORLD_WATER_OPACITY = 153
256
+ AW_WORLD_WATER_RED = 154
257
+ AW_WORLD_WATER_GREEN = 155
258
+ AW_WORLD_WATER_BLUE = 156
259
+ AW_WORLD_WATER_LEVEL = 157
260
+ AW_WORLD_WATER_SURFACE_MOVE = 158
261
+ AW_WORLD_WATER_WAVE_MOVE = 159
262
+ AW_UNIVERSE_ANNUAL_CHARGE = 16
263
+ AW_WORLD_WATER_SPEED = 160
264
+ AW_WORLD_WATER_ENABLED = 161
265
+ AW_WORLD_EMINENT_DOMAIN_CAPABILITY = 162
266
+ AW_WORLD_LIGHT_TEXTURE = 163
267
+ AW_WORLD_LIGHT_MASK = 164
268
+ AW_WORLD_LIGHT_DRAW_SIZE = 165
269
+ AW_WORLD_LIGHT_DRAW_FRONT = 166
270
+ AW_WORLD_LIGHT_DRAW_BRIGHT = 167
271
+ AW_WORLD_LIGHT_SOURCE_USE_COLOR = 168
272
+ AW_WORLD_LIGHT_SOURCE_COLOR = 169
273
+ AW_UNIVERSE_REGISTER_METHOD = 17
274
+ AW_WORLD_TERRAIN_AMBIENT = 170
275
+ AW_WORLD_TERRAIN_DIFFUSE = 171
276
+ AW_WORLD_WATER_VISIBILITY = 172
277
+ AW_WORLD_SOUND_FOOTSTEP = 173
278
+ AW_WORLD_SOUND_WATER_ENTER = 174
279
+ AW_WORLD_SOUND_WATER_EXIT = 175
280
+ AW_WORLD_SOUND_AMBIENT = 176
281
+ AW_WORLD_GRAVITY = 177
282
+ AW_WORLD_BUOYANCY = 178
283
+ AW_WORLD_FRICTION = 179
284
+ AW_UNIVERSE_TIME = 18
285
+ AW_WORLD_WATER_FRICTION = 180
286
+ AW_WORLD_SLOPESLIDE_ENABLED = 181
287
+ AW_WORLD_SLOPESLIDE_MIN_ANGLE = 182
288
+ AW_WORLD_SLOPESLIDE_MAX_ANGLE = 183
289
+ AW_WORLD_ALLOW_TOURIST_BUILD = 184
290
+ AW_WORLD_ENABLE_REFERER = 185
291
+ AW_WORLD_WATER_UNDER_TERRAIN = 186
292
+ AW_WORLD_TERRAIN_OFFSET = 187
293
+ AW_WORLD_VOIP_RIGHT = 188
294
+ AW_WORLD_DISABLE_MULTIPLE_MEDIA = 189
295
+ AW_UNIVERSE_CITIZEN_CHANGES_ALLOWED = 19
296
+ AW_WORLD_BOTMENU_URL = 190
297
+ AW_WORLD_ENABLE_BUMP_EVENT = 191
298
+ AW_WORLD_ENABLE_SYNC_EVENTS = 192
299
+ AW_WORLD_ENABLE_CAV = 193
300
+ AW_WORLD_ENABLE_PAV = 194
301
+ AW_WORLD_CHAT_DISABLE_URL_CLICKS = 195
302
+ AW_WORLD_MOVER_EMPTY_RESET_TIMEOUT = 196
303
+ AW_WORLD_MOVER_USED_RESET_TIMEOUT = 197
304
+ AW_MY_X = 198
305
+ AW_MY_Y = 199
306
+ AW_LOGIN_OWNER = 2
307
+ AW_UNIVERSE_BROWSER_RELEASE_22 = 20
308
+ AW_MY_Z = 200
309
+ AW_MY_YAW = 201
310
+ AW_MY_PITCH = 202
311
+ AW_MY_TYPE = 203
312
+ AW_MY_GESTURE = 204
313
+ AW_MY_STATE = 205
314
+ AW_AVATAR_SESSION = 206
315
+ AW_AVATAR_NAME = 207
316
+ AW_AVATAR_X = 208
317
+ AW_AVATAR_Y = 209
318
+ AW_UNIVERSE_WELCOME_MESSAGE = 21
319
+ AW_AVATAR_Z = 210
320
+ AW_AVATAR_YAW = 211
321
+ AW_AVATAR_PITCH = 212
322
+ AW_AVATAR_TYPE = 213
323
+ AW_AVATAR_GESTURE = 214
324
+ AW_AVATAR_STATE = 215
325
+ AW_AVATAR_ADDRESS = 216
326
+ AW_AVATAR_VERSION = 217
327
+ AW_AVATAR_CITIZEN = 218
328
+ AW_AVATAR_PRIVILEGE = 219
329
+ AW_UNIVERSE_WORLD_RELEASE = 22
330
+ AW_AVATAR_LOCK = 220
331
+ AW_AVATAR_FLAGS = 221
332
+ AW_CHAT_SESSION = 222
333
+ AW_CHAT_MESSAGE = 223
334
+ AW_CELL_X = 224
335
+ AW_CELL_Z = 225
336
+ AW_CELL_SEQUENCE = 226
337
+ AW_CELL_SIZE = 227
338
+ AW_CELL_ITERATOR = 228
339
+ AW_CELL_COMBINE = 229
340
+ AW_UNIVERSE_WORLD_BETA = 23
341
+ AW_OBJECT_ID = 230
342
+ AW_OBJECT_NUMBER = 231
343
+ AW_OBJECT_X = 232
344
+ AW_OBJECT_Y = 233
345
+ AW_OBJECT_Z = 234
346
+ AW_OBJECT_YAW = 235
347
+ AW_OBJECT_TILT = 236
348
+ AW_OBJECT_ROLL = 237
349
+ AW_OBJECT_MODEL = 238
350
+ AW_OBJECT_DESCRIPTION = 239
351
+ AW_UNIVERSE_ALLOW_TOURISTS = 24
352
+ AW_OBJECT_ACTION = 240
353
+ AW_OBJECT_OLD_NUMBER = 241
354
+ AW_OBJECT_OLD_X = 242
355
+ AW_OBJECT_OLD_Z = 243
356
+ AW_OBJECT_OWNER = 244
357
+ AW_OBJECT_SESSION = 245
358
+ AW_OBJECT_BUILD_TIMESTAMP = 246
359
+ AW_OBJECT_SYNC = 247
360
+ AW_OBJECT_TYPE = 248
361
+ AW_OBJECT_DATA = 249
362
+ AW_UNIVERSE_SEARCH_URL = 25
363
+ AW_QUERY_COMPLETE = 250
364
+ AW_CHAT_TYPE = 251
365
+ AW_LICENSE_NAME = 252
366
+ AW_LICENSE_PASSWORD = 253
367
+ AW_LICENSE_USERS = 254
368
+ AW_LICENSE_RANGE = 255
369
+ AW_LICENSE_EMAIL = 256
370
+ AW_LICENSE_COMMENT = 257
371
+ AW_LICENSE_CREATION_TIME = 258
372
+ AW_LICENSE_EXPIRATION_TIME = 259
373
+ AW_UNIVERSE_NOTEPAD_URL = 26
374
+ AW_LICENSE_LAST_START = 260
375
+ AW_LICENSE_LAST_ADDRESS = 261
376
+ AW_LICENSE_HIDDEN = 262
377
+ AW_LICENSE_ALLOW_TOURISTS = 263
378
+ AW_LICENSE_VOIP = 264
379
+ AW_LICENSE_PLUGINS = 265
380
+ AW_WORLDLIST_NAME = 266
381
+ AW_WORLDLIST_STATUS = 267
382
+ AW_WORLDLIST_USERS = 268
383
+ AW_WORLDLIST_RATING = 269
384
+ AW_UNIVERSE_NAME = 27
385
+ AW_WORLDLIST_MORE = 270
386
+ AW_EJECT_SESSION = 271
387
+ AW_EJECT_DURATION = 272
388
+ AW_EJECTION_TYPE = 273
389
+ AW_EJECTION_ADDRESS = 274
390
+ AW_EJECTION_EXPIRATION_TIME = 275
391
+ AW_EJECTION_CREATION_TIME = 276
392
+ AW_EJECTION_COMMENT = 277
393
+ AW_DISCONNECT_REASON = 278
394
+ AW_FILE_RECIPIENT = 279
395
+ AW_UNIVERSE_USER_LIST_ENABLED = 28
396
+ AW_FILE_SENDER = 280
397
+ AW_FILE_SENDER_NAME = 281
398
+ AW_FILE_SESSION = 282
399
+ AW_FILE_ADDRESS = 283
400
+ AW_FILE_PORT = 284
401
+ AW_CLICKED_SESSION = 285
402
+ AW_CLICKED_NAME = 286
403
+ AW_URL_NAME = 287
404
+ AW_URL_POST = 288
405
+ AW_URL_TARGET = 289
406
+ AW_CITIZEN_NUMBER = 29
407
+ AW_URL_TARGET_3D = 290
408
+ AW_TELEPORT_WORLD = 291
409
+ AW_TELEPORT_X = 292
410
+ AW_TELEPORT_Y = 293
411
+ AW_TELEPORT_Z = 294
412
+ AW_TELEPORT_YAW = 295
413
+ AW_TELEPORT_WARP = 296
414
+ AW_SERVER_BUILD = 297
415
+ AW_SERVER_NAME = 298
416
+ AW_SERVER_PASSWORD = 299
417
+ AW_LOGIN_PRIVILEGE_PASSWORD = 3
418
+ AW_CITIZEN_NAME = 30
419
+ AW_SERVER_REGISTRY = 300
420
+ AW_SERVER_CARETAKERS = 301
421
+ AW_SERVER_ID = 302
422
+ AW_SERVER_INSTANCE = 303
423
+ AW_SERVER_ENABLED = 304
424
+ AW_SERVER_STATE = 305
425
+ AW_SERVER_USERS = 306
426
+ AW_SERVER_MAX_USERS = 307
427
+ AW_SERVER_OBJECTS = 308
428
+ AW_SERVER_SIZE = 309
429
+ AW_CITIZEN_PASSWORD = 31
430
+ AW_SERVER_EXPIRATION = 310
431
+ AW_SERVER_START_RC = 311
432
+ AW_SERVER_MORE = 312
433
+ AW_SERVER_TERRAIN_NODES = 313
434
+ AW_TERRAIN_X = 314
435
+ AW_TERRAIN_Z = 315
436
+ AW_TERRAIN_PAGE_X = 316
437
+ AW_TERRAIN_PAGE_Z = 317
438
+ AW_TERRAIN_NODE_X = 318
439
+ AW_TERRAIN_NODE_Z = 319
440
+ AW_CITIZEN_EMAIL = 32
441
+ AW_TERRAIN_NODE_SIZE = 320
442
+ AW_TERRAIN_NODE_TEXTURE_COUNT = 321
443
+ AW_TERRAIN_NODE_HEIGHT_COUNT = 322
444
+ AW_TERRAIN_NODE_TEXTURES = 323
445
+ AW_TERRAIN_NODE_HEIGHTS = 324
446
+ AW_TERRAIN_SEQUENCE = 325
447
+ AW_TERRAIN_COMPLETE = 326
448
+ AW_TERRAIN_VERSION_NEEDED = 327
449
+ AW_ENTER_GLOBAL = 328
450
+ AW_CONSOLE_RED = 329
451
+ AW_CITIZEN_TIME_LEFT = 33
452
+ AW_CONSOLE_GREEN = 330
453
+ AW_CONSOLE_BLUE = 331
454
+ AW_CONSOLE_BOLD = 332
455
+ AW_CONSOLE_ITALICS = 333
456
+ AW_CONSOLE_MESSAGE = 334
457
+ AW_BOTGRAM_TO = 335
458
+ AW_BOTGRAM_FROM = 336
459
+ AW_BOTGRAM_FROM_NAME = 337
460
+ AW_BOTGRAM_TYPE = 338
461
+ AW_BOTGRAM_TEXT = 339
462
+ AW_CITIZEN_PRIVILEGE_PASSWORD = 34
463
+ AW_TOOLBAR_ID = 340
464
+ AW_TOOLBAR_SESSION = 341
465
+ AW_USERLIST_MORE = 342
466
+ AW_USERLIST_NAME = 343
467
+ AW_USERLIST_WORLD = 344
468
+ AW_USERLIST_EMAIL = 345
469
+ AW_USERLIST_CITIZEN = 346
470
+ AW_USERLIST_PRIVILEGE = 347
471
+ AW_USERLIST_STATE = 348
472
+ AW_USERLIST_ADDRESS = 349
473
+ AW_CITIZEN_IMMIGRATION_TIME = 35
474
+ AW_USERLIST_ID = 350
475
+ AW_SOUND_NAME = 351
476
+ AW_CAMERA_LOCATION_TYPE = 352
477
+ AW_CAMERA_LOCATION_OBJECT = 353
478
+ AW_CAMERA_LOCATION_SESSION = 354
479
+ AW_CAMERA_TARGET_TYPE = 355
480
+ AW_CAMERA_TARGET_OBJECT = 356
481
+ AW_CAMERA_TARGET_SESSION = 357
482
+ AW_PLUGIN_STRING = 358
483
+ AW_BOTMENU_TO_SESSION = 359
484
+ AW_CITIZEN_EXPIRATION_TIME = 36
485
+ AW_BOTMENU_FROM_NAME = 360
486
+ AW_BOTMENU_FROM_SESSION = 361
487
+ AW_BOTMENU_QUESTION = 362
488
+ AW_BOTMENU_ANSWER = 363
489
+ AW_CONTACT_NUMBER = 364
490
+ AW_CONTACT_STATUS = 365
491
+ AW_CONTACT_NAME = 366
492
+ AW_CONTACT_WORLD = 367
493
+ AW_CONTACT_MORE = 368
494
+ AW_CONTACT_OPTIONS = 369
495
+ AW_CITIZEN_BETA = 37
496
+ AW_TELEGRAM_TO = 370
497
+ AW_TELEGRAM_FROM = 371
498
+ AW_TELEGRAM_TEXT = 372
499
+ AW_TELEGRAM_SENT = 373
500
+ AW_TELEGRAM_MORE = 374
501
+ AW_JOIN_NAME = 375
502
+ AW_JOIN_CITIZEN = 376
503
+ AW_JOIN_WORLD = 377
504
+ AW_JOIN_X = 378
505
+ AW_JOIN_Y = 379
506
+ AW_CITIZEN_LAST_LOGIN = 38
507
+ AW_JOIN_Z = 380
508
+ AW_JOIN_YAW = 381
509
+ AW_REGISTER_CC_NAME = 382
510
+ AW_REGISTER_CC_NUMBER = 383
511
+ AW_REGISTER_CC_MONTH = 384
512
+ AW_REGISTER_CC_YEAR = 385
513
+ AW_REGISTER_ADDRESS = 386
514
+ AW_REGISTER_CITY = 387
515
+ AW_REGISTER_STATE = 388
516
+ AW_REGISTER_ZIP = 389
517
+ AW_CITIZEN_BOT_LIMIT = 39
518
+ AW_REGISTER_PHONE_NUMBER = 390
519
+ AW_REGISTER_BUSINESS_NAME = 391
520
+ AW_REGISTER_VENDOR = 392
521
+ AW_REGISTER_RESULT = 393
522
+ AW_REGISTER_METHOD = 394
523
+ AW_VOIP_DATA = 395
524
+ AW_UNIVERSE_CAV_PATH = 396
525
+ AW_CITIZEN_PAV_ENABLED = 397
526
+ AW_CAV_CITIZEN = 398
527
+ AW_CAV_DEFINITION = 399
528
+ AW_LOGIN_PRIVILEGE_NUMBER = 4
529
+ AW_CITIZEN_TOTAL_TIME = 40
530
+ AW_ENTITY_TYPE = 400
531
+ AW_ENTITY_ID = 401
532
+ AW_ENTITY_STATE = 402
533
+ AW_ENTITY_FLAGS = 403
534
+ AW_ENTITY_X = 404
535
+ AW_ENTITY_Y = 405
536
+ AW_ENTITY_Z = 406
537
+ AW_ENTITY_YAW = 407
538
+ AW_ENTITY_PITCH = 408
539
+ AW_ENTITY_ROLL = 409
540
+ AW_CITIZEN_ENABLED = 41
541
+ AW_ENTITY_OWNER_SESSION = 410
542
+ AW_ENTITY_OWNER_CITIZEN = 411
543
+ AW_AVATAR_DISTANCE = 412
544
+ AW_AVATAR_ANGLE = 413
545
+ AW_AVATAR_Y_DELTA = 414
546
+ AW_AVATAR_YAW_DELTA = 415
547
+ AW_AVATAR_PITCH_DELTA = 416
548
+ AW_AVATAR_WORLD_INSTANCE = 417
549
+ AW_ATTRIB_SENDER_SESSION = 418
550
+ AW_ENTITY_MODEL_NUM = 419
551
+ AW_CITIZEN_COMMENT = 42
552
+ AW_WORLD_V4_OBJECTS_RIGHT = 420
553
+ AW_CITIZEN_LAST_ADDRESS = 421
554
+ AW_HUD_ELEMENT_TYPE = 422
555
+ AW_HUD_ELEMENT_ID = 423
556
+ AW_HUD_ELEMENT_SESSION = 424
557
+ AW_HUD_ELEMENT_ORIGIN = 425
558
+ AW_HUD_ELEMENT_X = 426
559
+ AW_HUD_ELEMENT_Y = 427
560
+ AW_HUD_ELEMENT_Z = 428
561
+ AW_HUD_ELEMENT_FLAGS = 429
562
+ AW_CITIZEN_URL = 43
563
+ AW_HUD_ELEMENT_TEXT = 430
564
+ AW_HUD_ELEMENT_COLOR = 431
565
+ AW_HUD_ELEMENT_OPACITY = 432
566
+ AW_HUD_ELEMENT_SIZE_X = 433
567
+ AW_HUD_ELEMENT_SIZE_Y = 434
568
+ AW_HUD_ELEMENT_SIZE_Z = 435
569
+ AW_HUD_ELEMENT_CLICK_X = 436
570
+ AW_HUD_ELEMENT_CLICK_Y = 437
571
+ AW_HUD_ELEMENT_CLICK_Z = 438
572
+ AW_HUD_ELEMENT_TEXTURE_OFFSET_X = 439
573
+ AW_WORLD_NAME = 44
574
+ AW_HUD_ELEMENT_TEXTURE_OFFSET_Y = 440
575
+ AW_CITIZEN_PRIVACY = 441
576
+ AW_CITIZEN_TRIAL = 442
577
+ AW_UNIVERSE_CAV_PATH2 = 443
578
+ AW_WORLD_DISABLE_SHADOWS = 444
579
+ AW_WORLD_ENABLE_CAMERA_COLLISION = 445
580
+ AW_WORLD_SPECIAL_COMMANDS = 446
581
+ AW_UNIVERSE_OBJECT_REFRESH = 447
582
+ AW_UNIVERSE_OBJECT_PASSWORD = 448
583
+ AW_CAV_SESSION = 449
584
+ AW_WORLD_TITLE = 45
585
+ AW_CITIZEN_CAV_ENABLED = 450
586
+ AW_WORLD_CAV_OBJECT_PATH = 451
587
+ AW_WORLD_CAV_OBJECT_PASSWORD = 452
588
+ AW_WORLD_CAV_OBJECT_REFRESH = 453
589
+ AW_OBJECT_CALLBACK_REFERENCE = 454
590
+ AW_WORLD_TERRAIN_RIGHT = 455
591
+ AW_UNIVERSE_ALLOW_TOURISTS_CAV = 456
592
+ AW_UNIVERSE_ALLOW_BOTS_CAV = 457
593
+ AW_WORLD_VOIP_CONFERENCE_GLOBAL = 458
594
+ AW_WORLD_VOIP_MODERATE_GLOBAL = 459
595
+ AW_WORLD_BACKDROP = 46
596
+ AW_OBJECT_SESSION_TO = 460
597
+ AW_WORLD_CAMERA_ZOOM = 461
598
+ AW_WORLD_WAIT_LIMIT = 462
599
+ AW_MAX_ATTRIBUTE = 463
600
+ AW_WORLD_GROUND = 47
601
+ AW_WORLD_OBJECT_PATH = 48
602
+ AW_WORLD_OBJECT_REFRESH = 49
603
+ AW_LOGIN_PRIVILEGE_NAME = 5
604
+ AW_WORLD_BUILD_RIGHT = 50
605
+ AW_WORLD_EMINENT_DOMAIN_RIGHT = 51
606
+ AW_WORLD_ENTER_RIGHT = 52
607
+ AW_WORLD_SPECIAL_OBJECTS_RIGHT = 53
608
+ AW_WORLD_FOG_RED = 54
609
+ AW_WORLD_FOG_GREEN = 55
610
+ AW_WORLD_FOG_BLUE = 56
611
+ AW_WORLD_CARETAKER_CAPABILITY = 57
612
+ AW_WORLD_RESTRICTED_RADIUS = 58
613
+ AW_WORLD_PUBLIC_SPEAKER_CAPABILITY = 59
614
+ AW_LOGIN_APPLICATION = 6
615
+ AW_WORLD_PUBLIC_SPEAKER_RIGHT = 60
616
+ AW_WORLD_CREATION_TIMESTAMP = 61
617
+ AW_WORLD_HOME_PAGE = 62
618
+ AW_WORLD_BUILD_NUMBER = 63
619
+ AW_WORLD_OBJECT_PASSWORD = 64
620
+ AW_WORLD_DISABLE_CREATE_URL = 65
621
+ AW_WORLD_RATING = 66
622
+ AW_WORLD_WELCOME_MESSAGE = 67
623
+ AW_WORLD_EJECT_RIGHT = 68
624
+ AW_WORLD_EJECT_CAPABILITY = 69
625
+ AW_LOGIN_EMAIL = 7
626
+ AW_WORLD_CELL_LIMIT = 70
627
+ AW_WORLD_BUILD_CAPABILITY = 71
628
+ AW_WORLD_ALLOW_PASSTHRU = 72
629
+ AW_WORLD_ALLOW_FLYING = 73
630
+ AW_WORLD_ALLOW_TELEPORT = 74
631
+ AW_WORLD_ALLOW_OBJECT_SELECT = 75
632
+ AW_WORLD_BOTS_RIGHT = 76
633
+ AW_WORLD_SPEAK_CAPABILITY = 77
634
+ AW_WORLD_SPEAK_RIGHT = 78
635
+ AW_WORLD_ALLOW_TOURIST_WHISPER = 79
636
+ AW_UNIVERSE_BROWSER_MINIMUM = 8
637
+ AW_WORLD_LIGHT_X = 80
638
+ AW_WORLD_LIGHT_Y = 81
639
+ AW_WORLD_LIGHT_Z = 82
640
+ AW_WORLD_LIGHT_RED = 83
641
+ AW_WORLD_LIGHT_GREEN = 84
642
+ AW_WORLD_LIGHT_BLUE = 85
643
+ AW_WORLD_AMBIENT_LIGHT_RED = 86
644
+ AW_WORLD_AMBIENT_LIGHT_GREEN = 87
645
+ AW_WORLD_AMBIENT_LIGHT_BLUE = 88
646
+ AW_WORLD_ALLOW_AVATAR_COLLISION = 89
647
+ AW_UNIVERSE_BROWSER_RELEASE = 9
648
+ AW_WORLD_FOG_ENABLE = 90
649
+ AW_WORLD_FOG_MINIMUM = 91
650
+ AW_WORLD_FOG_MAXIMUM = 92
651
+ AW_WORLD_FOG_TINTED = 93
652
+ AW_WORLD_MAX_USERS = 94
653
+ AW_WORLD_SIZE = 95
654
+ AW_WORLD_OBJECT_COUNT = 96
655
+ AW_WORLD_EXPIRATION = 97
656
+ AW_WORLD_SPECIAL_COMMANDS_RIGHT = 98
657
+ AW_WORLD_MAX_LIGHT_RADIUS = 99
658
+
659
+ AW_ATTRIBUTE_ENUM = {
660
+ :AW_LOGIN_NAME => 0,
661
+ :AW_LOGIN_PASSWORD => 1,
662
+ :AW_UNIVERSE_BROWSER_BETA => 10,
663
+ :AW_WORLD_SKYBOX => 100,
664
+ :AW_WORLD_MINIMUM_VISIBILITY => 101,
665
+ :AW_WORLD_REPEATING_GROUND => 102,
666
+ :AW_WORLD_KEYWORDS => 103,
667
+ :AW_WORLD_ENABLE_TERRAIN => 104,
668
+ :AW_WORLD_ALLOW_3_AXIS_ROTATION => 105,
669
+ :AW_WORLD_TERRAIN_TIMESTAMP => 106,
670
+ :AW_WORLD_ENTRY_POINT => 107,
671
+ :AW_WORLD_SKY_NORTH_RED => 108,
672
+ :AW_WORLD_SKY_NORTH_GREEN => 109,
673
+ :AW_UNIVERSE_WORLD_MINIMUM => 11,
674
+ :AW_WORLD_SKY_NORTH_BLUE => 110,
675
+ :AW_WORLD_SKY_SOUTH_RED => 111,
676
+ :AW_WORLD_SKY_SOUTH_GREEN => 112,
677
+ :AW_WORLD_SKY_SOUTH_BLUE => 113,
678
+ :AW_WORLD_SKY_EAST_RED => 114,
679
+ :AW_WORLD_SKY_EAST_GREEN => 115,
680
+ :AW_WORLD_SKY_EAST_BLUE => 116,
681
+ :AW_WORLD_SKY_WEST_RED => 117,
682
+ :AW_WORLD_SKY_WEST_GREEN => 118,
683
+ :AW_WORLD_SKY_WEST_BLUE => 119,
684
+ :AW_UNIVERSE_WORLD_START => 12,
685
+ :AW_WORLD_SKY_TOP_RED => 120,
686
+ :AW_WORLD_SKY_TOP_GREEN => 121,
687
+ :AW_WORLD_SKY_TOP_BLUE => 122,
688
+ :AW_WORLD_SKY_BOTTOM_RED => 123,
689
+ :AW_WORLD_SKY_BOTTOM_GREEN => 124,
690
+ :AW_WORLD_SKY_BOTTOM_BLUE => 125,
691
+ :AW_WORLD_CLOUDS_LAYER1_TEXTURE => 126,
692
+ :AW_WORLD_CLOUDS_LAYER1_MASK => 127,
693
+ :AW_WORLD_CLOUDS_LAYER1_TILE => 128,
694
+ :AW_WORLD_CLOUDS_LAYER1_SPEED_X => 129,
695
+ :AW_UNIVERSE_REGISTRATION_REQUIRED => 13,
696
+ :AW_WORLD_CLOUDS_LAYER1_SPEED_Z => 130,
697
+ :AW_WORLD_CLOUDS_LAYER1_OPACITY => 131,
698
+ :AW_WORLD_CLOUDS_LAYER2_TEXTURE => 132,
699
+ :AW_WORLD_CLOUDS_LAYER2_MASK => 133,
700
+ :AW_WORLD_CLOUDS_LAYER2_TILE => 134,
701
+ :AW_WORLD_CLOUDS_LAYER2_SPEED_X => 135,
702
+ :AW_WORLD_CLOUDS_LAYER2_SPEED_Z => 136,
703
+ :AW_WORLD_CLOUDS_LAYER2_OPACITY => 137,
704
+ :AW_WORLD_CLOUDS_LAYER3_TEXTURE => 138,
705
+ :AW_WORLD_CLOUDS_LAYER3_MASK => 139,
706
+ :AW_UNIVERSE_BUILD_NUMBER => 14,
707
+ :AW_WORLD_CLOUDS_LAYER3_TILE => 140,
708
+ :AW_WORLD_CLOUDS_LAYER3_SPEED_X => 141,
709
+ :AW_WORLD_CLOUDS_LAYER3_SPEED_Z => 142,
710
+ :AW_WORLD_CLOUDS_LAYER3_OPACITY => 143,
711
+ :AW_WORLD_DISABLE_CHAT => 144,
712
+ :AW_WORLD_ALLOW_CITIZEN_WHISPER => 145,
713
+ :AW_WORLD_ALWAYS_SHOW_NAMES => 146,
714
+ :AW_WORLD_DISABLE_AVATAR_LIST => 147,
715
+ :AW_WORLD_AVATAR_REFRESH_RATE => 148,
716
+ :AW_WORLD_WATER_TEXTURE => 149,
717
+ :AW_UNIVERSE_MONTHLY_CHARGE => 15,
718
+ :AW_WORLD_WATER_MASK => 150,
719
+ :AW_WORLD_WATER_BOTTOM_TEXTURE => 151,
720
+ :AW_WORLD_WATER_BOTTOM_MASK => 152,
721
+ :AW_WORLD_WATER_OPACITY => 153,
722
+ :AW_WORLD_WATER_RED => 154,
723
+ :AW_WORLD_WATER_GREEN => 155,
724
+ :AW_WORLD_WATER_BLUE => 156,
725
+ :AW_WORLD_WATER_LEVEL => 157,
726
+ :AW_WORLD_WATER_SURFACE_MOVE => 158,
727
+ :AW_WORLD_WATER_WAVE_MOVE => 159,
728
+ :AW_UNIVERSE_ANNUAL_CHARGE => 16,
729
+ :AW_WORLD_WATER_SPEED => 160,
730
+ :AW_WORLD_WATER_ENABLED => 161,
731
+ :AW_WORLD_EMINENT_DOMAIN_CAPABILITY => 162,
732
+ :AW_WORLD_LIGHT_TEXTURE => 163,
733
+ :AW_WORLD_LIGHT_MASK => 164,
734
+ :AW_WORLD_LIGHT_DRAW_SIZE => 165,
735
+ :AW_WORLD_LIGHT_DRAW_FRONT => 166,
736
+ :AW_WORLD_LIGHT_DRAW_BRIGHT => 167,
737
+ :AW_WORLD_LIGHT_SOURCE_USE_COLOR => 168,
738
+ :AW_WORLD_LIGHT_SOURCE_COLOR => 169,
739
+ :AW_UNIVERSE_REGISTER_METHOD => 17,
740
+ :AW_WORLD_TERRAIN_AMBIENT => 170,
741
+ :AW_WORLD_TERRAIN_DIFFUSE => 171,
742
+ :AW_WORLD_WATER_VISIBILITY => 172,
743
+ :AW_WORLD_SOUND_FOOTSTEP => 173,
744
+ :AW_WORLD_SOUND_WATER_ENTER => 174,
745
+ :AW_WORLD_SOUND_WATER_EXIT => 175,
746
+ :AW_WORLD_SOUND_AMBIENT => 176,
747
+ :AW_WORLD_GRAVITY => 177,
748
+ :AW_WORLD_BUOYANCY => 178,
749
+ :AW_WORLD_FRICTION => 179,
750
+ :AW_UNIVERSE_TIME => 18,
751
+ :AW_WORLD_WATER_FRICTION => 180,
752
+ :AW_WORLD_SLOPESLIDE_ENABLED => 181,
753
+ :AW_WORLD_SLOPESLIDE_MIN_ANGLE => 182,
754
+ :AW_WORLD_SLOPESLIDE_MAX_ANGLE => 183,
755
+ :AW_WORLD_ALLOW_TOURIST_BUILD => 184,
756
+ :AW_WORLD_ENABLE_REFERER => 185,
757
+ :AW_WORLD_WATER_UNDER_TERRAIN => 186,
758
+ :AW_WORLD_TERRAIN_OFFSET => 187,
759
+ :AW_WORLD_VOIP_RIGHT => 188,
760
+ :AW_WORLD_DISABLE_MULTIPLE_MEDIA => 189,
761
+ :AW_UNIVERSE_CITIZEN_CHANGES_ALLOWED => 19,
762
+ :AW_WORLD_BOTMENU_URL => 190,
763
+ :AW_WORLD_ENABLE_BUMP_EVENT => 191,
764
+ :AW_WORLD_ENABLE_SYNC_EVENTS => 192,
765
+ :AW_WORLD_ENABLE_CAV => 193,
766
+ :AW_WORLD_ENABLE_PAV => 194,
767
+ :AW_WORLD_CHAT_DISABLE_URL_CLICKS => 195,
768
+ :AW_WORLD_MOVER_EMPTY_RESET_TIMEOUT => 196,
769
+ :AW_WORLD_MOVER_USED_RESET_TIMEOUT => 197,
770
+ :AW_MY_X => 198,
771
+ :AW_MY_Y => 199,
772
+ :AW_LOGIN_OWNER => 2,
773
+ :AW_UNIVERSE_BROWSER_RELEASE_22 => 20,
774
+ :AW_MY_Z => 200,
775
+ :AW_MY_YAW => 201,
776
+ :AW_MY_PITCH => 202,
777
+ :AW_MY_TYPE => 203,
778
+ :AW_MY_GESTURE => 204,
779
+ :AW_MY_STATE => 205,
780
+ :AW_AVATAR_SESSION => 206,
781
+ :AW_AVATAR_NAME => 207,
782
+ :AW_AVATAR_X => 208,
783
+ :AW_AVATAR_Y => 209,
784
+ :AW_UNIVERSE_WELCOME_MESSAGE => 21,
785
+ :AW_AVATAR_Z => 210,
786
+ :AW_AVATAR_YAW => 211,
787
+ :AW_AVATAR_PITCH => 212,
788
+ :AW_AVATAR_TYPE => 213,
789
+ :AW_AVATAR_GESTURE => 214,
790
+ :AW_AVATAR_STATE => 215,
791
+ :AW_AVATAR_ADDRESS => 216,
792
+ :AW_AVATAR_VERSION => 217,
793
+ :AW_AVATAR_CITIZEN => 218,
794
+ :AW_AVATAR_PRIVILEGE => 219,
795
+ :AW_UNIVERSE_WORLD_RELEASE => 22,
796
+ :AW_AVATAR_LOCK => 220,
797
+ :AW_AVATAR_FLAGS => 221,
798
+ :AW_CHAT_SESSION => 222,
799
+ :AW_CHAT_MESSAGE => 223,
800
+ :AW_CELL_X => 224,
801
+ :AW_CELL_Z => 225,
802
+ :AW_CELL_SEQUENCE => 226,
803
+ :AW_CELL_SIZE => 227,
804
+ :AW_CELL_ITERATOR => 228,
805
+ :AW_CELL_COMBINE => 229,
806
+ :AW_UNIVERSE_WORLD_BETA => 23,
807
+ :AW_OBJECT_ID => 230,
808
+ :AW_OBJECT_NUMBER => 231,
809
+ :AW_OBJECT_X => 232,
810
+ :AW_OBJECT_Y => 233,
811
+ :AW_OBJECT_Z => 234,
812
+ :AW_OBJECT_YAW => 235,
813
+ :AW_OBJECT_TILT => 236,
814
+ :AW_OBJECT_ROLL => 237,
815
+ :AW_OBJECT_MODEL => 238,
816
+ :AW_OBJECT_DESCRIPTION => 239,
817
+ :AW_UNIVERSE_ALLOW_TOURISTS => 24,
818
+ :AW_OBJECT_ACTION => 240,
819
+ :AW_OBJECT_OLD_NUMBER => 241,
820
+ :AW_OBJECT_OLD_X => 242,
821
+ :AW_OBJECT_OLD_Z => 243,
822
+ :AW_OBJECT_OWNER => 244,
823
+ :AW_OBJECT_SESSION => 245,
824
+ :AW_OBJECT_BUILD_TIMESTAMP => 246,
825
+ :AW_OBJECT_SYNC => 247,
826
+ :AW_OBJECT_TYPE => 248,
827
+ :AW_OBJECT_DATA => 249,
828
+ :AW_UNIVERSE_SEARCH_URL => 25,
829
+ :AW_QUERY_COMPLETE => 250,
830
+ :AW_CHAT_TYPE => 251,
831
+ :AW_LICENSE_NAME => 252,
832
+ :AW_LICENSE_PASSWORD => 253,
833
+ :AW_LICENSE_USERS => 254,
834
+ :AW_LICENSE_RANGE => 255,
835
+ :AW_LICENSE_EMAIL => 256,
836
+ :AW_LICENSE_COMMENT => 257,
837
+ :AW_LICENSE_CREATION_TIME => 258,
838
+ :AW_LICENSE_EXPIRATION_TIME => 259,
839
+ :AW_UNIVERSE_NOTEPAD_URL => 26,
840
+ :AW_LICENSE_LAST_START => 260,
841
+ :AW_LICENSE_LAST_ADDRESS => 261,
842
+ :AW_LICENSE_HIDDEN => 262,
843
+ :AW_LICENSE_ALLOW_TOURISTS => 263,
844
+ :AW_LICENSE_VOIP => 264,
845
+ :AW_LICENSE_PLUGINS => 265,
846
+ :AW_WORLDLIST_NAME => 266,
847
+ :AW_WORLDLIST_STATUS => 267,
848
+ :AW_WORLDLIST_USERS => 268,
849
+ :AW_WORLDLIST_RATING => 269,
850
+ :AW_UNIVERSE_NAME => 27,
851
+ :AW_WORLDLIST_MORE => 270,
852
+ :AW_EJECT_SESSION => 271,
853
+ :AW_EJECT_DURATION => 272,
854
+ :AW_EJECTION_TYPE => 273,
855
+ :AW_EJECTION_ADDRESS => 274,
856
+ :AW_EJECTION_EXPIRATION_TIME => 275,
857
+ :AW_EJECTION_CREATION_TIME => 276,
858
+ :AW_EJECTION_COMMENT => 277,
859
+ :AW_DISCONNECT_REASON => 278,
860
+ :AW_FILE_RECIPIENT => 279,
861
+ :AW_UNIVERSE_USER_LIST_ENABLED => 28,
862
+ :AW_FILE_SENDER => 280,
863
+ :AW_FILE_SENDER_NAME => 281,
864
+ :AW_FILE_SESSION => 282,
865
+ :AW_FILE_ADDRESS => 283,
866
+ :AW_FILE_PORT => 284,
867
+ :AW_CLICKED_SESSION => 285,
868
+ :AW_CLICKED_NAME => 286,
869
+ :AW_URL_NAME => 287,
870
+ :AW_URL_POST => 288,
871
+ :AW_URL_TARGET => 289,
872
+ :AW_CITIZEN_NUMBER => 29,
873
+ :AW_URL_TARGET_3D => 290,
874
+ :AW_TELEPORT_WORLD => 291,
875
+ :AW_TELEPORT_X => 292,
876
+ :AW_TELEPORT_Y => 293,
877
+ :AW_TELEPORT_Z => 294,
878
+ :AW_TELEPORT_YAW => 295,
879
+ :AW_TELEPORT_WARP => 296,
880
+ :AW_SERVER_BUILD => 297,
881
+ :AW_SERVER_NAME => 298,
882
+ :AW_SERVER_PASSWORD => 299,
883
+ :AW_LOGIN_PRIVILEGE_PASSWORD => 3,
884
+ :AW_CITIZEN_NAME => 30,
885
+ :AW_SERVER_REGISTRY => 300,
886
+ :AW_SERVER_CARETAKERS => 301,
887
+ :AW_SERVER_ID => 302,
888
+ :AW_SERVER_INSTANCE => 303,
889
+ :AW_SERVER_ENABLED => 304,
890
+ :AW_SERVER_STATE => 305,
891
+ :AW_SERVER_USERS => 306,
892
+ :AW_SERVER_MAX_USERS => 307,
893
+ :AW_SERVER_OBJECTS => 308,
894
+ :AW_SERVER_SIZE => 309,
895
+ :AW_CITIZEN_PASSWORD => 31,
896
+ :AW_SERVER_EXPIRATION => 310,
897
+ :AW_SERVER_START_RC => 311,
898
+ :AW_SERVER_MORE => 312,
899
+ :AW_SERVER_TERRAIN_NODES => 313,
900
+ :AW_TERRAIN_X => 314,
901
+ :AW_TERRAIN_Z => 315,
902
+ :AW_TERRAIN_PAGE_X => 316,
903
+ :AW_TERRAIN_PAGE_Z => 317,
904
+ :AW_TERRAIN_NODE_X => 318,
905
+ :AW_TERRAIN_NODE_Z => 319,
906
+ :AW_CITIZEN_EMAIL => 32,
907
+ :AW_TERRAIN_NODE_SIZE => 320,
908
+ :AW_TERRAIN_NODE_TEXTURE_COUNT => 321,
909
+ :AW_TERRAIN_NODE_HEIGHT_COUNT => 322,
910
+ :AW_TERRAIN_NODE_TEXTURES => 323,
911
+ :AW_TERRAIN_NODE_HEIGHTS => 324,
912
+ :AW_TERRAIN_SEQUENCE => 325,
913
+ :AW_TERRAIN_COMPLETE => 326,
914
+ :AW_TERRAIN_VERSION_NEEDED => 327,
915
+ :AW_ENTER_GLOBAL => 328,
916
+ :AW_CONSOLE_RED => 329,
917
+ :AW_CITIZEN_TIME_LEFT => 33,
918
+ :AW_CONSOLE_GREEN => 330,
919
+ :AW_CONSOLE_BLUE => 331,
920
+ :AW_CONSOLE_BOLD => 332,
921
+ :AW_CONSOLE_ITALICS => 333,
922
+ :AW_CONSOLE_MESSAGE => 334,
923
+ :AW_BOTGRAM_TO => 335,
924
+ :AW_BOTGRAM_FROM => 336,
925
+ :AW_BOTGRAM_FROM_NAME => 337,
926
+ :AW_BOTGRAM_TYPE => 338,
927
+ :AW_BOTGRAM_TEXT => 339,
928
+ :AW_CITIZEN_PRIVILEGE_PASSWORD => 34,
929
+ :AW_TOOLBAR_ID => 340,
930
+ :AW_TOOLBAR_SESSION => 341,
931
+ :AW_USERLIST_MORE => 342,
932
+ :AW_USERLIST_NAME => 343,
933
+ :AW_USERLIST_WORLD => 344,
934
+ :AW_USERLIST_EMAIL => 345,
935
+ :AW_USERLIST_CITIZEN => 346,
936
+ :AW_USERLIST_PRIVILEGE => 347,
937
+ :AW_USERLIST_STATE => 348,
938
+ :AW_USERLIST_ADDRESS => 349,
939
+ :AW_CITIZEN_IMMIGRATION_TIME => 35,
940
+ :AW_USERLIST_ID => 350,
941
+ :AW_SOUND_NAME => 351,
942
+ :AW_CAMERA_LOCATION_TYPE => 352,
943
+ :AW_CAMERA_LOCATION_OBJECT => 353,
944
+ :AW_CAMERA_LOCATION_SESSION => 354,
945
+ :AW_CAMERA_TARGET_TYPE => 355,
946
+ :AW_CAMERA_TARGET_OBJECT => 356,
947
+ :AW_CAMERA_TARGET_SESSION => 357,
948
+ :AW_PLUGIN_STRING => 358,
949
+ :AW_BOTMENU_TO_SESSION => 359,
950
+ :AW_CITIZEN_EXPIRATION_TIME => 36,
951
+ :AW_BOTMENU_FROM_NAME => 360,
952
+ :AW_BOTMENU_FROM_SESSION => 361,
953
+ :AW_BOTMENU_QUESTION => 362,
954
+ :AW_BOTMENU_ANSWER => 363,
955
+ :AW_CONTACT_NUMBER => 364,
956
+ :AW_CONTACT_STATUS => 365,
957
+ :AW_CONTACT_NAME => 366,
958
+ :AW_CONTACT_WORLD => 367,
959
+ :AW_CONTACT_MORE => 368,
960
+ :AW_CONTACT_OPTIONS => 369,
961
+ :AW_CITIZEN_BETA => 37,
962
+ :AW_TELEGRAM_TO => 370,
963
+ :AW_TELEGRAM_FROM => 371,
964
+ :AW_TELEGRAM_TEXT => 372,
965
+ :AW_TELEGRAM_SENT => 373,
966
+ :AW_TELEGRAM_MORE => 374,
967
+ :AW_JOIN_NAME => 375,
968
+ :AW_JOIN_CITIZEN => 376,
969
+ :AW_JOIN_WORLD => 377,
970
+ :AW_JOIN_X => 378,
971
+ :AW_JOIN_Y => 379,
972
+ :AW_CITIZEN_LAST_LOGIN => 38,
973
+ :AW_JOIN_Z => 380,
974
+ :AW_JOIN_YAW => 381,
975
+ :AW_REGISTER_CC_NAME => 382,
976
+ :AW_REGISTER_CC_NUMBER => 383,
977
+ :AW_REGISTER_CC_MONTH => 384,
978
+ :AW_REGISTER_CC_YEAR => 385,
979
+ :AW_REGISTER_ADDRESS => 386,
980
+ :AW_REGISTER_CITY => 387,
981
+ :AW_REGISTER_STATE => 388,
982
+ :AW_REGISTER_ZIP => 389,
983
+ :AW_CITIZEN_BOT_LIMIT => 39,
984
+ :AW_REGISTER_PHONE_NUMBER => 390,
985
+ :AW_REGISTER_BUSINESS_NAME => 391,
986
+ :AW_REGISTER_VENDOR => 392,
987
+ :AW_REGISTER_RESULT => 393,
988
+ :AW_REGISTER_METHOD => 394,
989
+ :AW_VOIP_DATA => 395,
990
+ :AW_UNIVERSE_CAV_PATH => 396,
991
+ :AW_CITIZEN_PAV_ENABLED => 397,
992
+ :AW_CAV_CITIZEN => 398,
993
+ :AW_CAV_DEFINITION => 399,
994
+ :AW_LOGIN_PRIVILEGE_NUMBER => 4,
995
+ :AW_CITIZEN_TOTAL_TIME => 40,
996
+ :AW_ENTITY_TYPE => 400,
997
+ :AW_ENTITY_ID => 401,
998
+ :AW_ENTITY_STATE => 402,
999
+ :AW_ENTITY_FLAGS => 403,
1000
+ :AW_ENTITY_X => 404,
1001
+ :AW_ENTITY_Y => 405,
1002
+ :AW_ENTITY_Z => 406,
1003
+ :AW_ENTITY_YAW => 407,
1004
+ :AW_ENTITY_PITCH => 408,
1005
+ :AW_ENTITY_ROLL => 409,
1006
+ :AW_CITIZEN_ENABLED => 41,
1007
+ :AW_ENTITY_OWNER_SESSION => 410,
1008
+ :AW_ENTITY_OWNER_CITIZEN => 411,
1009
+ :AW_AVATAR_DISTANCE => 412,
1010
+ :AW_AVATAR_ANGLE => 413,
1011
+ :AW_AVATAR_Y_DELTA => 414,
1012
+ :AW_AVATAR_YAW_DELTA => 415,
1013
+ :AW_AVATAR_PITCH_DELTA => 416,
1014
+ :AW_AVATAR_WORLD_INSTANCE => 417,
1015
+ :AW_ATTRIB_SENDER_SESSION => 418,
1016
+ :AW_ENTITY_MODEL_NUM => 419,
1017
+ :AW_CITIZEN_COMMENT => 42,
1018
+ :AW_WORLD_V4_OBJECTS_RIGHT => 420,
1019
+ :AW_CITIZEN_LAST_ADDRESS => 421,
1020
+ :AW_HUD_ELEMENT_TYPE => 422,
1021
+ :AW_HUD_ELEMENT_ID => 423,
1022
+ :AW_HUD_ELEMENT_SESSION => 424,
1023
+ :AW_HUD_ELEMENT_ORIGIN => 425,
1024
+ :AW_HUD_ELEMENT_X => 426,
1025
+ :AW_HUD_ELEMENT_Y => 427,
1026
+ :AW_HUD_ELEMENT_Z => 428,
1027
+ :AW_HUD_ELEMENT_FLAGS => 429,
1028
+ :AW_CITIZEN_URL => 43,
1029
+ :AW_HUD_ELEMENT_TEXT => 430,
1030
+ :AW_HUD_ELEMENT_COLOR => 431,
1031
+ :AW_HUD_ELEMENT_OPACITY => 432,
1032
+ :AW_HUD_ELEMENT_SIZE_X => 433,
1033
+ :AW_HUD_ELEMENT_SIZE_Y => 434,
1034
+ :AW_HUD_ELEMENT_SIZE_Z => 435,
1035
+ :AW_HUD_ELEMENT_CLICK_X => 436,
1036
+ :AW_HUD_ELEMENT_CLICK_Y => 437,
1037
+ :AW_HUD_ELEMENT_CLICK_Z => 438,
1038
+ :AW_HUD_ELEMENT_TEXTURE_OFFSET_X => 439,
1039
+ :AW_WORLD_NAME => 44,
1040
+ :AW_HUD_ELEMENT_TEXTURE_OFFSET_Y => 440,
1041
+ :AW_CITIZEN_PRIVACY => 441,
1042
+ :AW_CITIZEN_TRIAL => 442,
1043
+ :AW_UNIVERSE_CAV_PATH2 => 443,
1044
+ :AW_WORLD_DISABLE_SHADOWS => 444,
1045
+ :AW_WORLD_ENABLE_CAMERA_COLLISION => 445,
1046
+ :AW_WORLD_SPECIAL_COMMANDS => 446,
1047
+ :AW_UNIVERSE_OBJECT_REFRESH => 447,
1048
+ :AW_UNIVERSE_OBJECT_PASSWORD => 448,
1049
+ :AW_CAV_SESSION => 449,
1050
+ :AW_WORLD_TITLE => 45,
1051
+ :AW_CITIZEN_CAV_ENABLED => 450,
1052
+ :AW_WORLD_CAV_OBJECT_PATH => 451,
1053
+ :AW_WORLD_CAV_OBJECT_PASSWORD => 452,
1054
+ :AW_WORLD_CAV_OBJECT_REFRESH => 453,
1055
+ :AW_OBJECT_CALLBACK_REFERENCE => 454,
1056
+ :AW_WORLD_TERRAIN_RIGHT => 455,
1057
+ :AW_UNIVERSE_ALLOW_TOURISTS_CAV => 456,
1058
+ :AW_UNIVERSE_ALLOW_BOTS_CAV => 457,
1059
+ :AW_WORLD_VOIP_CONFERENCE_GLOBAL => 458,
1060
+ :AW_WORLD_VOIP_MODERATE_GLOBAL => 459,
1061
+ :AW_WORLD_BACKDROP => 46,
1062
+ :AW_OBJECT_SESSION_TO => 460,
1063
+ :AW_WORLD_CAMERA_ZOOM => 461,
1064
+ :AW_WORLD_WAIT_LIMIT => 462,
1065
+ :AW_MAX_ATTRIBUTE => 463,
1066
+ :AW_WORLD_GROUND => 47,
1067
+ :AW_WORLD_OBJECT_PATH => 48,
1068
+ :AW_WORLD_OBJECT_REFRESH => 49,
1069
+ :AW_LOGIN_PRIVILEGE_NAME => 5,
1070
+ :AW_WORLD_BUILD_RIGHT => 50,
1071
+ :AW_WORLD_EMINENT_DOMAIN_RIGHT => 51,
1072
+ :AW_WORLD_ENTER_RIGHT => 52,
1073
+ :AW_WORLD_SPECIAL_OBJECTS_RIGHT => 53,
1074
+ :AW_WORLD_FOG_RED => 54,
1075
+ :AW_WORLD_FOG_GREEN => 55,
1076
+ :AW_WORLD_FOG_BLUE => 56,
1077
+ :AW_WORLD_CARETAKER_CAPABILITY => 57,
1078
+ :AW_WORLD_RESTRICTED_RADIUS => 58,
1079
+ :AW_WORLD_PUBLIC_SPEAKER_CAPABILITY => 59,
1080
+ :AW_LOGIN_APPLICATION => 6,
1081
+ :AW_WORLD_PUBLIC_SPEAKER_RIGHT => 60,
1082
+ :AW_WORLD_CREATION_TIMESTAMP => 61,
1083
+ :AW_WORLD_HOME_PAGE => 62,
1084
+ :AW_WORLD_BUILD_NUMBER => 63,
1085
+ :AW_WORLD_OBJECT_PASSWORD => 64,
1086
+ :AW_WORLD_DISABLE_CREATE_URL => 65,
1087
+ :AW_WORLD_RATING => 66,
1088
+ :AW_WORLD_WELCOME_MESSAGE => 67,
1089
+ :AW_WORLD_EJECT_RIGHT => 68,
1090
+ :AW_WORLD_EJECT_CAPABILITY => 69,
1091
+ :AW_LOGIN_EMAIL => 7,
1092
+ :AW_WORLD_CELL_LIMIT => 70,
1093
+ :AW_WORLD_BUILD_CAPABILITY => 71,
1094
+ :AW_WORLD_ALLOW_PASSTHRU => 72,
1095
+ :AW_WORLD_ALLOW_FLYING => 73,
1096
+ :AW_WORLD_ALLOW_TELEPORT => 74,
1097
+ :AW_WORLD_ALLOW_OBJECT_SELECT => 75,
1098
+ :AW_WORLD_BOTS_RIGHT => 76,
1099
+ :AW_WORLD_SPEAK_CAPABILITY => 77,
1100
+ :AW_WORLD_SPEAK_RIGHT => 78,
1101
+ :AW_WORLD_ALLOW_TOURIST_WHISPER => 79,
1102
+ :AW_UNIVERSE_BROWSER_MINIMUM => 8,
1103
+ :AW_WORLD_LIGHT_X => 80,
1104
+ :AW_WORLD_LIGHT_Y => 81,
1105
+ :AW_WORLD_LIGHT_Z => 82,
1106
+ :AW_WORLD_LIGHT_RED => 83,
1107
+ :AW_WORLD_LIGHT_GREEN => 84,
1108
+ :AW_WORLD_LIGHT_BLUE => 85,
1109
+ :AW_WORLD_AMBIENT_LIGHT_RED => 86,
1110
+ :AW_WORLD_AMBIENT_LIGHT_GREEN => 87,
1111
+ :AW_WORLD_AMBIENT_LIGHT_BLUE => 88,
1112
+ :AW_WORLD_ALLOW_AVATAR_COLLISION => 89,
1113
+ :AW_UNIVERSE_BROWSER_RELEASE => 9,
1114
+ :AW_WORLD_FOG_ENABLE => 90,
1115
+ :AW_WORLD_FOG_MINIMUM => 91,
1116
+ :AW_WORLD_FOG_MAXIMUM => 92,
1117
+ :AW_WORLD_FOG_TINTED => 93,
1118
+ :AW_WORLD_MAX_USERS => 94,
1119
+ :AW_WORLD_SIZE => 95,
1120
+ :AW_WORLD_OBJECT_COUNT => 96,
1121
+ :AW_WORLD_EXPIRATION => 97,
1122
+ :AW_WORLD_SPECIAL_COMMANDS_RIGHT => 98,
1123
+ :AW_WORLD_MAX_LIGHT_RADIUS => 99,
1124
+ }
1125
+
1126
+ AW_EVENT_AVATAR_ADD = 0
1127
+ AW_EVENT_AVATAR_CHANGE = 1
1128
+ AW_EVENT_UNIVERSE_DISCONNECT = 10
1129
+ AW_EVENT_WORLD_ATTRIBUTES = 11
1130
+ AW_EVENT_WORLD_INFO = 12
1131
+ AW_EVENT_WORLD_DISCONNECT = 13
1132
+ AW_EVENT_SEND_FILE = 14
1133
+ AW_EVENT_CONTACT_STATE = 15
1134
+ AW_EVENT_TELEGRAM = 16
1135
+ AW_EVENT_JOIN = 17
1136
+ AW_EVENT_OBJECT_CLICK = 18
1137
+ AW_EVENT_OBJECT_SELECT = 19
1138
+ AW_EVENT_AVATAR_DELETE = 2
1139
+ AW_EVENT_AVATAR_CLICK = 20
1140
+ AW_EVENT_URL = 21
1141
+ AW_EVENT_URL_CLICK = 22
1142
+ AW_EVENT_TELEPORT = 23
1143
+ AW_EVENT_ADMIN_WORLD_INFO = 24
1144
+ AW_EVENT_ADMIN_WORLD_DELETE = 25
1145
+ AW_EVENT_TERRAIN_BEGIN = 26
1146
+ AW_EVENT_TERRAIN_DATA = 27
1147
+ AW_EVENT_TERRAIN_END = 28
1148
+ AW_EVENT_CONSOLE_MESSAGE = 29
1149
+ AW_EVENT_CELL_BEGIN = 3
1150
+ AW_EVENT_TERRAIN_CHANGED = 30
1151
+ AW_EVENT_BOTGRAM = 31
1152
+ AW_EVENT_TOOLBAR_CLICK = 32
1153
+ AW_EVENT_USER_INFO = 33
1154
+ AW_EVENT_VOIP_DATA = 34
1155
+ AW_EVENT_NOISE = 35
1156
+ AW_EVENT_CAMERA = 36
1157
+ AW_EVENT_BOTMENU = 37
1158
+ AW_EVENT_OBJECT_BUMP = 38
1159
+ AW_EVENT_ENTITY_ADD = 39
1160
+ AW_EVENT_CELL_OBJECT = 4
1161
+ AW_EVENT_ENTITY_CHANGE = 40
1162
+ AW_EVENT_ENTITY_DELETE = 41
1163
+ AW_EVENT_ENTITY_RIDER_ADD = 42
1164
+ AW_EVENT_ENTITY_RIDER_DELETE = 43
1165
+ AW_EVENT_ENTITY_RIDER_CHANGE = 44
1166
+ AW_EVENT_AVATAR_RELOAD = 45
1167
+ AW_EVENT_ENTITY_LINKS = 46
1168
+ AW_EVENT_HUD_CLICK = 47
1169
+ AW_EVENT_HUD_CREATE = 48
1170
+ AW_EVENT_HUD_DESTROY = 49
1171
+ AW_EVENT_CELL_END = 5
1172
+ AW_EVENT_HUD_CLEAR = 50
1173
+ AW_EVENT_CAV_DEFINITION_CHANGE = 51
1174
+ AW_EVENT_WORLD_CAV_DEFINITION_CHANGE = 52
1175
+ AW_MAX_EVENT = 53
1176
+ AW_EVENT_CHAT = 6
1177
+ AW_EVENT_OBJECT_ADD = 7
1178
+ AW_EVENT_OBJECT_DELETE = 8
1179
+ AW_EVENT_UNIVERSE_ATTRIBUTES = 9
1180
+
1181
+ AW_EVENT_ATTRIBUTE_ENUM = {
1182
+ :AW_EVENT_AVATAR_ADD => 0,
1183
+ :AW_EVENT_AVATAR_CHANGE => 1,
1184
+ :AW_EVENT_UNIVERSE_DISCONNECT => 10,
1185
+ :AW_EVENT_WORLD_ATTRIBUTES => 11,
1186
+ :AW_EVENT_WORLD_INFO => 12,
1187
+ :AW_EVENT_WORLD_DISCONNECT => 13,
1188
+ :AW_EVENT_SEND_FILE => 14,
1189
+ :AW_EVENT_CONTACT_STATE => 15,
1190
+ :AW_EVENT_TELEGRAM => 16,
1191
+ :AW_EVENT_JOIN => 17,
1192
+ :AW_EVENT_OBJECT_CLICK => 18,
1193
+ :AW_EVENT_OBJECT_SELECT => 19,
1194
+ :AW_EVENT_AVATAR_DELETE => 2,
1195
+ :AW_EVENT_AVATAR_CLICK => 20,
1196
+ :AW_EVENT_URL => 21,
1197
+ :AW_EVENT_URL_CLICK => 22,
1198
+ :AW_EVENT_TELEPORT => 23,
1199
+ :AW_EVENT_ADMIN_WORLD_INFO => 24,
1200
+ :AW_EVENT_ADMIN_WORLD_DELETE => 25,
1201
+ :AW_EVENT_TERRAIN_BEGIN => 26,
1202
+ :AW_EVENT_TERRAIN_DATA => 27,
1203
+ :AW_EVENT_TERRAIN_END => 28,
1204
+ :AW_EVENT_CONSOLE_MESSAGE => 29,
1205
+ :AW_EVENT_CELL_BEGIN => 3,
1206
+ :AW_EVENT_TERRAIN_CHANGED => 30,
1207
+ :AW_EVENT_BOTGRAM => 31,
1208
+ :AW_EVENT_TOOLBAR_CLICK => 32,
1209
+ :AW_EVENT_USER_INFO => 33,
1210
+ :AW_EVENT_VOIP_DATA => 34,
1211
+ :AW_EVENT_NOISE => 35,
1212
+ :AW_EVENT_CAMERA => 36,
1213
+ :AW_EVENT_BOTMENU => 37,
1214
+ :AW_EVENT_OBJECT_BUMP => 38,
1215
+ :AW_EVENT_ENTITY_ADD => 39,
1216
+ :AW_EVENT_CELL_OBJECT => 4,
1217
+ :AW_EVENT_ENTITY_CHANGE => 40,
1218
+ :AW_EVENT_ENTITY_DELETE => 41,
1219
+ :AW_EVENT_ENTITY_RIDER_ADD => 42,
1220
+ :AW_EVENT_ENTITY_RIDER_DELETE => 43,
1221
+ :AW_EVENT_ENTITY_RIDER_CHANGE => 44,
1222
+ :AW_EVENT_AVATAR_RELOAD => 45,
1223
+ :AW_EVENT_ENTITY_LINKS => 46,
1224
+ :AW_EVENT_HUD_CLICK => 47,
1225
+ :AW_EVENT_HUD_CREATE => 48,
1226
+ :AW_EVENT_HUD_DESTROY => 49,
1227
+ :AW_EVENT_CELL_END => 5,
1228
+ :AW_EVENT_HUD_CLEAR => 50,
1229
+ :AW_EVENT_CAV_DEFINITION_CHANGE => 51,
1230
+ :AW_EVENT_WORLD_CAV_DEFINITION_CHANGE => 52,
1231
+ :AW_MAX_EVENT => 53,
1232
+ :AW_EVENT_CHAT => 6,
1233
+ :AW_EVENT_OBJECT_ADD => 7,
1234
+ :AW_EVENT_OBJECT_DELETE => 8,
1235
+ :AW_EVENT_UNIVERSE_ATTRIBUTES => 9,
1236
+ }
1237
+
1238
+ AW_CALLBACK_CREATE = 0
1239
+ AW_CALLBACK_LOGIN = 1
1240
+ AW_CALLBACK_SEND_FILE = 10
1241
+ AW_CALLBACK_JOIN = 11
1242
+ AW_CALLBACK_PASSWORD_SEND = 12
1243
+ AW_CALLBACK_IMMIGRATE = 13
1244
+ AW_CALLBACK_REGISTER = 14
1245
+ AW_CALLBACK_UNIVERSE_EJECTION = 15
1246
+ AW_CALLBACK_UNIVERSE_EJECTION_RESULT = 16
1247
+ AW_CALLBACK_ADDRESS = 17
1248
+ AW_CALLBACK_WORLD_EJECTION = 18
1249
+ AW_CALLBACK_WORLD_EJECTION_RESULT = 19
1250
+ AW_CALLBACK_ENTER = 2
1251
+ AW_CALLBACK_ADMIN_WORLD_LIST = 20
1252
+ AW_CALLBACK_ADMIN_WORLD_RESULT = 21
1253
+ AW_CALLBACK_DELETE_ALL_OBJECTS_RESULT = 22
1254
+ AW_CALLBACK_CELL_RESULT = 23
1255
+ AW_CALLBACK_RELOAD_REGISTRY = 24
1256
+ AW_CALLBACK_ATTRIBUTES_RESET_RESULT = 25
1257
+ AW_CALLBACK_ADMIN = 26
1258
+ AW_CALLBACK_CONTACT_ADD = 27
1259
+ AW_CALLBACK_TELEGRAM_RESULT = 28
1260
+ AW_CALLBACK_TERRAIN_SET_RESULT = 29
1261
+ AW_CALLBACK_OBJECT_RESULT = 3
1262
+ AW_CALLBACK_TERRAIN_NEXT_RESULT = 30
1263
+ AW_CALLBACK_TERRAIN_DELETE_ALL_RESULT = 31
1264
+ AW_CALLBACK_TERRAIN_LOAD_NODE_RESULT = 32
1265
+ AW_CALLBACK_BOTGRAM_RESULT = 33
1266
+ AW_CALLBACK_USER_LIST = 34
1267
+ AW_CALLBACK_BOTMENU_RESULT = 35
1268
+ AW_CALLBACK_CAV = 36
1269
+ AW_CALLBACK_CAV_RESULT = 37
1270
+ AW_CALLBACK_WORLD_INSTANCE = 38
1271
+ AW_CALLBACK_HUD_RESULT = 39
1272
+ AW_CALLBACK_LICENSE_ATTRIBUTES = 4
1273
+ AW_CALLBACK_AVATAR_LOCATION = 40
1274
+ AW_CALLBACK_OBJECT_QUERY = 41
1275
+ AW_CALLBACK_WORLD_CAV_RESULT = 42
1276
+ AW_CALLBACK_WORLD_CAV = 43
1277
+ AW_MAX_CALLBACK = 44
1278
+ AW_CALLBACK_LICENSE_RESULT = 5
1279
+ AW_CALLBACK_CITIZEN_ATTRIBUTES = 6
1280
+ AW_CALLBACK_CITIZEN_RESULT = 7
1281
+ AW_CALLBACK_QUERY = 8
1282
+ AW_CALLBACK_WORLD_LIST = 9
1283
+
1284
+ AW_CALLBACK_ENUM = {
1285
+ :AW_CALLBACK_CREATE => 0,
1286
+ :AW_CALLBACK_LOGIN => 1,
1287
+ :AW_CALLBACK_SEND_FILE => 10,
1288
+ :AW_CALLBACK_JOIN => 11,
1289
+ :AW_CALLBACK_PASSWORD_SEND => 12,
1290
+ :AW_CALLBACK_IMMIGRATE => 13,
1291
+ :AW_CALLBACK_REGISTER => 14,
1292
+ :AW_CALLBACK_UNIVERSE_EJECTION => 15,
1293
+ :AW_CALLBACK_UNIVERSE_EJECTION_RESULT => 16,
1294
+ :AW_CALLBACK_ADDRESS => 17,
1295
+ :AW_CALLBACK_WORLD_EJECTION => 18,
1296
+ :AW_CALLBACK_WORLD_EJECTION_RESULT => 19,
1297
+ :AW_CALLBACK_ENTER => 2,
1298
+ :AW_CALLBACK_ADMIN_WORLD_LIST => 20,
1299
+ :AW_CALLBACK_ADMIN_WORLD_RESULT => 21,
1300
+ :AW_CALLBACK_DELETE_ALL_OBJECTS_RESULT => 22,
1301
+ :AW_CALLBACK_CELL_RESULT => 23,
1302
+ :AW_CALLBACK_RELOAD_REGISTRY => 24,
1303
+ :AW_CALLBACK_ATTRIBUTES_RESET_RESULT => 25,
1304
+ :AW_CALLBACK_ADMIN => 26,
1305
+ :AW_CALLBACK_CONTACT_ADD => 27,
1306
+ :AW_CALLBACK_TELEGRAM_RESULT => 28,
1307
+ :AW_CALLBACK_TERRAIN_SET_RESULT => 29,
1308
+ :AW_CALLBACK_OBJECT_RESULT => 3,
1309
+ :AW_CALLBACK_TERRAIN_NEXT_RESULT => 30,
1310
+ :AW_CALLBACK_TERRAIN_DELETE_ALL_RESULT => 31,
1311
+ :AW_CALLBACK_TERRAIN_LOAD_NODE_RESULT => 32,
1312
+ :AW_CALLBACK_BOTGRAM_RESULT => 33,
1313
+ :AW_CALLBACK_USER_LIST => 34,
1314
+ :AW_CALLBACK_BOTMENU_RESULT => 35,
1315
+ :AW_CALLBACK_CAV => 36,
1316
+ :AW_CALLBACK_CAV_RESULT => 37,
1317
+ :AW_CALLBACK_WORLD_INSTANCE => 38,
1318
+ :AW_CALLBACK_HUD_RESULT => 39,
1319
+ :AW_CALLBACK_LICENSE_ATTRIBUTES => 4,
1320
+ :AW_CALLBACK_AVATAR_LOCATION => 40,
1321
+ :AW_CALLBACK_OBJECT_QUERY => 41,
1322
+ :AW_CALLBACK_WORLD_CAV_RESULT => 42,
1323
+ :AW_CALLBACK_WORLD_CAV => 43,
1324
+ :AW_MAX_CALLBACK => 44,
1325
+ :AW_CALLBACK_LICENSE_RESULT => 5,
1326
+ :AW_CALLBACK_CITIZEN_ATTRIBUTES => 6,
1327
+ :AW_CALLBACK_CITIZEN_RESULT => 7,
1328
+ :AW_CALLBACK_QUERY => 8,
1329
+ :AW_CALLBACK_WORLD_LIST => 9,
1330
+ }
1331
+
1332
+ AW_CHAT_SAID = 0
1333
+ AW_CHAT_BROADCAST = 1
1334
+ AW_CHAT_WHISPER = 2
1335
+
1336
+ AW_CHAT_TYPES_ENUM = {
1337
+ :AW_CHAT_SAID => 0,
1338
+ :AW_CHAT_BROADCAST => 1,
1339
+ :AW_CHAT_WHISPER => 2,
1340
+ }
1341
+
1342
+ AW_CONTACT_OFFLINE = 0
1343
+ AW_CONTACT_ONLINE = 1
1344
+ AW_CONTACT_NOT_A_CITIZEN = 2
1345
+ AW_CONTACT_AFK = 3
1346
+ AW_CONTACT_UNKNOWN = 4
1347
+ AW_CONTACT_DELETE = 5
1348
+
1349
+ AW_CONTACT_STATES_ENUM = {
1350
+ :AW_CONTACT_OFFLINE => 0,
1351
+ :AW_CONTACT_ONLINE => 1,
1352
+ :AW_CONTACT_NOT_A_CITIZEN => 2,
1353
+ :AW_CONTACT_AFK => 3,
1354
+ :AW_CONTACT_UNKNOWN => 4,
1355
+ :AW_CONTACT_DELETE => 5,
1356
+ }
1357
+
1358
+ AW_WORLDSTATUS_UNKNOWN = 0
1359
+ AW_WORLDSTATUS_PUBLIC = 1
1360
+ AW_WORLDSTATUS_PRIVATE = 2
1361
+ AW_WORLDSTATUS_STOPPED = 3
1362
+
1363
+ AW_WORLD_STATES_ENUM = {
1364
+ :AW_WORLDSTATUS_UNKNOWN => 0,
1365
+ :AW_WORLDSTATUS_PUBLIC => 1,
1366
+ :AW_WORLDSTATUS_PRIVATE => 2,
1367
+ :AW_WORLDSTATUS_STOPPED => 3,
1368
+ }
1369
+
1370
+ AW_SERVER_STOPPED = 0
1371
+ AW_SERVER_STARTING = 1
1372
+ AW_SERVER_START_WAIT = 2
1373
+ AW_SERVER_RUNNING = 3
1374
+
1375
+ AW_SERVER_STATES_ENUM = {
1376
+ :AW_SERVER_STOPPED => 0,
1377
+ :AW_SERVER_STARTING => 1,
1378
+ :AW_SERVER_START_WAIT => 2,
1379
+ :AW_SERVER_RUNNING => 3,
1380
+ }
1381
+
1382
+ AW_CONNECTION_DIRECT = 0
1383
+ AW_CONNECTION_FIREWALL_NO_PROXY = 1
1384
+ AW_CONNECTION_PROXY_AUTO = 2
1385
+ AW_CONNECTION_PROXY_NO_AUTH = 3
1386
+ AW_CONNECTION_PROXY_BASIC = 4
1387
+ AW_CONNECTION_PROXY_AUTH_NTLM = 5
1388
+ AW_CONNECTION_MAX = 6
1389
+
1390
+ AW_CONNECTION_TYPES_ENUM = {
1391
+ :AW_CONNECTION_DIRECT => 0,
1392
+ :AW_CONNECTION_FIREWALL_NO_PROXY => 1,
1393
+ :AW_CONNECTION_PROXY_AUTO => 2,
1394
+ :AW_CONNECTION_PROXY_NO_AUTH => 3,
1395
+ :AW_CONNECTION_PROXY_BASIC => 4,
1396
+ :AW_CONNECTION_PROXY_AUTH_NTLM => 5,
1397
+ :AW_CONNECTION_MAX => 6,
1398
+ }
1399
+
1400
+ AW_CONNECTION_STATE_NOT_CONNECTED = 0
1401
+ AW_CONNECTION_STATE_CONNECTING_TO_PROXY = 1
1402
+ AW_CONNECTION_STATE_NEGOTIATING_WITH_PROXY = 2
1403
+ AW_CONNECTION_STATE_CONNECTING_TO_TUNNEL = 3
1404
+ AW_CONNECTION_STATE_CONNECTING_TO_UNIVERSE = 4
1405
+ AW_CONNECTION_STATE_CONNECTED = 5
1406
+ AW_CONNECTION_STATE_PASSWORD_REQUIRED = 6
1407
+
1408
+ AW_CONNECTION_STATES_ENUM = {
1409
+ :AW_CONNECTION_STATE_NOT_CONNECTED => 0,
1410
+ :AW_CONNECTION_STATE_CONNECTING_TO_PROXY => 1,
1411
+ :AW_CONNECTION_STATE_NEGOTIATING_WITH_PROXY => 2,
1412
+ :AW_CONNECTION_STATE_CONNECTING_TO_TUNNEL => 3,
1413
+ :AW_CONNECTION_STATE_CONNECTING_TO_UNIVERSE => 4,
1414
+ :AW_CONNECTION_STATE_CONNECTED => 5,
1415
+ :AW_CONNECTION_STATE_PASSWORD_REQUIRED => 6,
1416
+ }
1417
+
1418
+ AW_EJECT_BY_ADDRESS = 0
1419
+ AW_EJECT_BY_COMPUTER = 1
1420
+ AW_EJECT_BY_CITIZEN = 2
1421
+
1422
+ AW_EJECTION_TYPES_ENUM = {
1423
+ :AW_EJECT_BY_ADDRESS => 0,
1424
+ :AW_EJECT_BY_COMPUTER => 1,
1425
+ :AW_EJECT_BY_CITIZEN => 2,
1426
+ }
1427
+
1428
+ AW_AVATAR_STATE_WALKING = 0
1429
+ AW_AVATAR_STATE_RUNNING = 1
1430
+ AW_AVATAR_STATE_SLIDING3 = 10
1431
+ AW_AVATAR_STATE_CLIMBING = 11
1432
+ AW_AVATAR_STATE_FLYING = 2
1433
+ AW_AVATAR_STATE_SWIMMING = 3
1434
+ AW_AVATAR_STATE_FALLING = 4
1435
+ AW_AVATAR_STATE_JUMPING = 5
1436
+ AW_AVATAR_STATE_WARPING = 6
1437
+ AW_AVATAR_STATE_RIDING = 7
1438
+ AW_AVATAR_STATE_SLIDING1 = 8
1439
+ AW_AVATAR_STATE_SLIDING2 = 9
1440
+
1441
+ AW_AVATAR_STATES_ENUM = {
1442
+ :AW_AVATAR_STATE_WALKING => 0,
1443
+ :AW_AVATAR_STATE_RUNNING => 1,
1444
+ :AW_AVATAR_STATE_SLIDING3 => 10,
1445
+ :AW_AVATAR_STATE_CLIMBING => 11,
1446
+ :AW_AVATAR_STATE_FLYING => 2,
1447
+ :AW_AVATAR_STATE_SWIMMING => 3,
1448
+ :AW_AVATAR_STATE_FALLING => 4,
1449
+ :AW_AVATAR_STATE_JUMPING => 5,
1450
+ :AW_AVATAR_STATE_WARPING => 6,
1451
+ :AW_AVATAR_STATE_RIDING => 7,
1452
+ :AW_AVATAR_STATE_SLIDING1 => 8,
1453
+ :AW_AVATAR_STATE_SLIDING2 => 9,
1454
+ }
1455
+
1456
+ AW_ZONE_TYPE_CUBE = 0
1457
+ AW_ZONE_TYPE_CYLINDER = 1
1458
+ AW_ZONE_TYPE_SPHERE = 2
1459
+
1460
+ AW_ZONE_TYPES_ENUM = {
1461
+ :AW_ZONE_TYPE_CUBE => 0,
1462
+ :AW_ZONE_TYPE_CYLINDER => 1,
1463
+ :AW_ZONE_TYPE_SPHERE => 2,
1464
+ }
1465
+
1466
+ AW_PARTICLE_TYPE_SPRITE = 0
1467
+ AW_PARTICLE_TYPE_FACER = 1
1468
+ AW_PARTICLE_TYPE_FLAT = 2
1469
+ AW_PARTICLE_TYPE_OBJECT = 3
1470
+
1471
+ AW_PARTICLE_TYPES_ENUM = {
1472
+ :AW_PARTICLE_TYPE_SPRITE => 0,
1473
+ :AW_PARTICLE_TYPE_FACER => 1,
1474
+ :AW_PARTICLE_TYPE_FLAT => 2,
1475
+ :AW_PARTICLE_TYPE_OBJECT => 3,
1476
+ }
1477
+
1478
+ AW_PARTICLE_DRAW_NORMAL = 0
1479
+ AW_PARTICLE_DRAW_BRIGHT = 1
1480
+ AW_PARTICLE_DRAW_GLOW = 2
1481
+
1482
+ AW_PARTICLE_DRAW_STYLES_ENUM = {
1483
+ :AW_PARTICLE_DRAW_NORMAL => 0,
1484
+ :AW_PARTICLE_DRAW_BRIGHT => 1,
1485
+ :AW_PARTICLE_DRAW_GLOW => 2,
1486
+ }
1487
+
1488
+ AW_CAMERA_TRACK_DEFAULT = 0
1489
+ AW_CAMERA_TRACK_AVATAR = 1
1490
+ AW_CAMERA_TRACK_OBJECT = 2
1491
+ AW_CAMERA_TRACK_AHEAD = 3
1492
+
1493
+ AW_CAMERA_TYPES_ENUM = {
1494
+ :AW_CAMERA_TRACK_DEFAULT => 0,
1495
+ :AW_CAMERA_TRACK_AVATAR => 1,
1496
+ :AW_CAMERA_TRACK_OBJECT => 2,
1497
+ :AW_CAMERA_TRACK_AHEAD => 3,
1498
+ }
1499
+
1500
+ AW_REGISTER_MONTHLY = 0
1501
+ AW_REGISTER_ANNUAL = 1
1502
+ AW_REGISTER_USER = 2
1503
+
1504
+ AW_REGISTER_METHODS_ENUM = {
1505
+ :AW_REGISTER_MONTHLY => 0,
1506
+ :AW_REGISTER_ANNUAL => 1,
1507
+ :AW_REGISTER_USER => 2,
1508
+ }
1509
+
1510
+ AW_AVATAR_SET_NONE = 0x00
1511
+ AW_AVATAR_SET_POSITION = 0x01
1512
+ AW_AVATAR_SET_TYPE = 0x02
1513
+ AW_AVATAR_SET_GESTURE = 0x04
1514
+ AW_AVATAR_SET_STATE = 0x08
1515
+
1516
+ AW_AVATAR_SET_FLAGS_ENUM = {
1517
+ :AW_AVATAR_SET_NONE => 0x00,
1518
+ :AW_AVATAR_SET_POSITION => 0x01,
1519
+ :AW_AVATAR_SET_TYPE => 0x02,
1520
+ :AW_AVATAR_SET_GESTURE => 0x04,
1521
+ :AW_AVATAR_SET_STATE => 0x08,
1522
+ }
1523
+
1524
+ AW_ENTITY_AVATAR = 0
1525
+ AW_ENTITY_MOVER = 1
1526
+
1527
+ AW_ENTITY_TYPES_ENUM = {
1528
+ :AW_ENTITY_AVATAR => 0,
1529
+ :AW_ENTITY_MOVER => 1,
1530
+ }
1531
+
1532
+ AW_MOVER_STATE_IDLE = 0
1533
+ AW_MOVER_STATE_START = 1
1534
+ AW_MOVER_STATE_MOVE = 2
1535
+ AW_MOVER_STATE_PAUSE = 3
1536
+ AW_MOVER_STATE_CONTINUE = 4
1537
+ AW_MOVER_STATE_STOP = 5
1538
+ AW_MOVER_STATE_RESET = 6
1539
+
1540
+ AW_MOVER_STATE_TYPES_ENUM = {
1541
+ :AW_MOVER_STATE_IDLE => 0,
1542
+ :AW_MOVER_STATE_START => 1,
1543
+ :AW_MOVER_STATE_MOVE => 2,
1544
+ :AW_MOVER_STATE_PAUSE => 3,
1545
+ :AW_MOVER_STATE_CONTINUE => 4,
1546
+ :AW_MOVER_STATE_STOP => 5,
1547
+ :AW_MOVER_STATE_RESET => 6,
1548
+ }
1549
+
1550
+ AW_MOVER_FLAG_LOOP = 0x00000001
1551
+ AW_MOVER_FLAG_USE_OBJTAG = 0x00000002
1552
+ AW_MOVER_FLAG_BUMP_ADD = 0x00000004
1553
+ AW_MOVER_FLAG_CLICK_START = 0x00000008
1554
+ AW_MOVER_FLAG_CLICK_PAUSE = 0x00000010
1555
+ AW_MOVER_FLAG_LOCK_POSITION = 0x00000020
1556
+ AW_MOVER_FLAG_LOCK_YAW = 0x00000040
1557
+ AW_MOVER_FLAG_LOCK_PITCH = 0x00000080
1558
+ AW_MOVER_FLAG_SINGLE_RIDER = 0x00000100
1559
+ AW_MOVER_FLAG_NO_AUTO_YAW = 0x00000200
1560
+ AW_MOVER_FLAG_EMPTY_RESET = 0x00000400
1561
+ AW_MOVER_FLAG_DISABLE_FLYING = 0x00000800
1562
+ AW_MOVER_FLAG_KEEP_ON_WATER = 0x00001000
1563
+ AW_MOVER_FLAG_DISABLE_UPWARDS = 0x00002000
1564
+ AW_MOVER_FLAG_INVISIBLE_AV = 0x00004000
1565
+ AW_MOVER_FLAG_EXIT_EJECT_UP = 0x00008000
1566
+ AW_MOVER_FLAG_EXIT_NON_SOLID = 0x00010000
1567
+ AW_MOVER_FLAG_AV_APPLY_TILT_X = 0x00020000
1568
+ AW_MOVER_FLAG_AV_APPLY_TILT_Z = 0x00040000
1569
+ AW_MOVER_FLAG_OBJECT_LINK = 0x00080000
1570
+ AW_MOVER_FLAG_DISABLE_MOVE = 0x00100000
1571
+ AW_MOVER_FLAG_TILT_BY_TERRAIN = 0x00200000
1572
+ AW_MOVER_FLAG_DISABLE_EXPL_SEQS = 0x00400000
1573
+ AW_MOVER_FLAG_DISABLE_TURN_ON_PLACE = 0x00800000
1574
+ AW_MOVER_FLAG_DISABLE_TELEPORTS = 0x01000000
1575
+ AW_MOVER_FLAG_DETACH_ON_TELEPORT = 0x02000000
1576
+
1577
+ AW_MOVER_FLAGS_ENUM = {
1578
+ :AW_MOVER_FLAG_LOOP => 0x00000001,
1579
+ :AW_MOVER_FLAG_USE_OBJTAG => 0x00000002,
1580
+ :AW_MOVER_FLAG_BUMP_ADD => 0x00000004,
1581
+ :AW_MOVER_FLAG_CLICK_START => 0x00000008,
1582
+ :AW_MOVER_FLAG_CLICK_PAUSE => 0x00000010,
1583
+ :AW_MOVER_FLAG_LOCK_POSITION => 0x00000020,
1584
+ :AW_MOVER_FLAG_LOCK_YAW => 0x00000040,
1585
+ :AW_MOVER_FLAG_LOCK_PITCH => 0x00000080,
1586
+ :AW_MOVER_FLAG_SINGLE_RIDER => 0x00000100,
1587
+ :AW_MOVER_FLAG_NO_AUTO_YAW => 0x00000200,
1588
+ :AW_MOVER_FLAG_EMPTY_RESET => 0x00000400,
1589
+ :AW_MOVER_FLAG_DISABLE_FLYING => 0x00000800,
1590
+ :AW_MOVER_FLAG_KEEP_ON_WATER => 0x00001000,
1591
+ :AW_MOVER_FLAG_DISABLE_UPWARDS => 0x00002000,
1592
+ :AW_MOVER_FLAG_INVISIBLE_AV => 0x00004000,
1593
+ :AW_MOVER_FLAG_EXIT_EJECT_UP => 0x00008000,
1594
+ :AW_MOVER_FLAG_EXIT_NON_SOLID => 0x00010000,
1595
+ :AW_MOVER_FLAG_AV_APPLY_TILT_X => 0x00020000,
1596
+ :AW_MOVER_FLAG_AV_APPLY_TILT_Z => 0x00040000,
1597
+ :AW_MOVER_FLAG_OBJECT_LINK => 0x00080000,
1598
+ :AW_MOVER_FLAG_DISABLE_MOVE => 0x00100000,
1599
+ :AW_MOVER_FLAG_TILT_BY_TERRAIN => 0x00200000,
1600
+ :AW_MOVER_FLAG_DISABLE_EXPL_SEQS => 0x00400000,
1601
+ :AW_MOVER_FLAG_DISABLE_TURN_ON_PLACE => 0x00800000,
1602
+ :AW_MOVER_FLAG_DISABLE_TELEPORTS => 0x01000000,
1603
+ :AW_MOVER_FLAG_DETACH_ON_TELEPORT => 0x02000000,
1604
+ }
1605
+
1606
+ AW_MOVER_TYPE_PASSIVE = 0
1607
+ AW_MOVER_TYPE_ACTIVE = 1
1608
+ AW_MOVER_TYPE_ITEM = 2
1609
+
1610
+ AW_MOVER_TYPES_ENUM = {
1611
+ :AW_MOVER_TYPE_PASSIVE => 0,
1612
+ :AW_MOVER_TYPE_ACTIVE => 1,
1613
+ :AW_MOVER_TYPE_ITEM => 2,
1614
+ }
1615
+
1616
+ AW_ZONE_FLAG_WATER = 0x01
1617
+ AW_ZONE_FLAG_BLOCK_PARTICLES = 0x02
1618
+ AW_ZONE_FLAG_BLOCK_LIGHTS = 0x04
1619
+ AW_ZONE_FLAG_BLOCK_WORLD_LIGHT = 0x08
1620
+ AW_ZONE_FLAG_BLOCK_CHAT = 0x10
1621
+ AW_ZONE_FLAG_VISIBLE = 0x20
1622
+ AW_ZONE_FLAG_BLOCK_JOIN = 0x40
1623
+ AW_ZONE_FLAG_VOIP = 0x80
1624
+
1625
+ AW_ZONE_FLAGS_ENUM = {
1626
+ :AW_ZONE_FLAG_WATER => 0x01,
1627
+ :AW_ZONE_FLAG_BLOCK_PARTICLES => 0x02,
1628
+ :AW_ZONE_FLAG_BLOCK_LIGHTS => 0x04,
1629
+ :AW_ZONE_FLAG_BLOCK_WORLD_LIGHT => 0x08,
1630
+ :AW_ZONE_FLAG_BLOCK_CHAT => 0x10,
1631
+ :AW_ZONE_FLAG_VISIBLE => 0x20,
1632
+ :AW_ZONE_FLAG_BLOCK_JOIN => 0x40,
1633
+ :AW_ZONE_FLAG_VOIP => 0x80,
1634
+ }
1635
+
1636
+ AW_PARTICLE_FLAG_INTERPOLATE = 0x01
1637
+ AW_PARTICLE_FLAG_GRAVITY = 0x02
1638
+ AW_PARTICLE_FLAG_COLLIDE_ZONES = 0x04
1639
+ AW_PARTICLE_FLAG_ZONE_EXCLUSIVE = 0x08
1640
+ AW_PARTICLE_FLAG_CAMERA_EMIT = 0x10
1641
+ AW_PARTICLE_FLAG_MOVER_LINK = 0x20
1642
+ AW_PARTICLE_FLAG_DRAW_IN_FRONT = 0x40
1643
+
1644
+ AW_PARTICLE_FLAGS_ENUM = {
1645
+ :AW_PARTICLE_FLAG_INTERPOLATE => 0x01,
1646
+ :AW_PARTICLE_FLAG_GRAVITY => 0x02,
1647
+ :AW_PARTICLE_FLAG_COLLIDE_ZONES => 0x04,
1648
+ :AW_PARTICLE_FLAG_ZONE_EXCLUSIVE => 0x08,
1649
+ :AW_PARTICLE_FLAG_CAMERA_EMIT => 0x10,
1650
+ :AW_PARTICLE_FLAG_MOVER_LINK => 0x20,
1651
+ :AW_PARTICLE_FLAG_DRAW_IN_FRONT => 0x40,
1652
+ }
1653
+
1654
+ AW_CAMERA_FLAG_TRACK_USER = 0x01
1655
+
1656
+ AW_CAMERA_FLAGS_ENUM = {
1657
+ :AW_CAMERA_FLAG_TRACK_USER => 0x01,
1658
+ }
1659
+
1660
+ AW_OBJECT_TYPE_V3 = 0
1661
+ AW_OBJECT_TYPE_UNKNOWN = 1
1662
+ AW_OBJECT_TYPE_ZONE = 2
1663
+ AW_OBJECT_TYPE_PARTICLES = 3
1664
+ AW_OBJECT_TYPE_MOVER = 4
1665
+ AW_OBJECT_TYPE_CAMERA = 5
1666
+ AW_MAX_OBJECT_TYPES = 6
1667
+
1668
+ AW_OBJECT_TYPES_ENUM = {
1669
+ :AW_OBJECT_TYPE_V3 => 0,
1670
+ :AW_OBJECT_TYPE_UNKNOWN => 1,
1671
+ :AW_OBJECT_TYPE_ZONE => 2,
1672
+ :AW_OBJECT_TYPE_PARTICLES => 3,
1673
+ :AW_OBJECT_TYPE_MOVER => 4,
1674
+ :AW_OBJECT_TYPE_CAMERA => 5,
1675
+ :AW_MAX_OBJECT_TYPES => 6,
1676
+ }
1677
+
1678
+ AW_HUD_ORIGIN_TOP_LEFT = 0
1679
+ AW_HUD_ORIGIN_TOP = 1
1680
+ AW_HUD_ORIGIN_TOP_RIGHT = 2
1681
+ AW_HUD_ORIGIN_LEFT = 3
1682
+ AW_HUD_ORIGIN_CENTER = 4
1683
+ AW_HUD_ORIGIN_RIGHT = 5
1684
+ AW_HUD_ORIGIN_BOTTOM_LEFT = 6
1685
+ AW_HUD_ORIGIN_BOTTOM = 7
1686
+ AW_HUD_ORIGIN_BOTTOM_RIGHT = 8
1687
+
1688
+ AW_HUD_ORIGIN_TYPES_ENUM = {
1689
+ :AW_HUD_ORIGIN_TOP_LEFT => 0,
1690
+ :AW_HUD_ORIGIN_TOP => 1,
1691
+ :AW_HUD_ORIGIN_TOP_RIGHT => 2,
1692
+ :AW_HUD_ORIGIN_LEFT => 3,
1693
+ :AW_HUD_ORIGIN_CENTER => 4,
1694
+ :AW_HUD_ORIGIN_RIGHT => 5,
1695
+ :AW_HUD_ORIGIN_BOTTOM_LEFT => 6,
1696
+ :AW_HUD_ORIGIN_BOTTOM => 7,
1697
+ :AW_HUD_ORIGIN_BOTTOM_RIGHT => 8,
1698
+ }
1699
+
1700
+ AW_HUD_TYPE_TEXT = 0
1701
+ AW_HUD_TYPE_IMAGE = 1
1702
+ AW_HUD_TYPE_MODEL = 2
1703
+
1704
+ AW_HUD_TYPES_ENUM = {
1705
+ :AW_HUD_TYPE_TEXT => 0,
1706
+ :AW_HUD_TYPE_IMAGE => 1,
1707
+ :AW_HUD_TYPE_MODEL => 2,
1708
+ }
1709
+
1710
+ AW_HUD_ELEMENT_FLAG_CLICKS = 0x0001
1711
+ AW_HUD_ELEMENT_FLAG_STRETCH = 0x0002
1712
+ AW_HUD_ELEMENT_FLAG_ADDITIVE = 0x0004
1713
+ AW_HUD_ELEMENT_FLAG_SIZE_PERCENT = 0x0008
1714
+ AW_HUD_ELEMENT_FLAG_TRANSITION = 0x0010
1715
+ AW_HUD_ELEMENT_FLAG_TEMPORARY = 0x0020
1716
+ AW_HUD_ELEMENT_FLAG_UNIVERSE_PATH = 0x0040
1717
+ AW_HUD_ELEMENT_FLAG_CLAMP = 0x0080
1718
+ AW_HUD_ELEMENT_FLAG_HIGHLIGHT = 0x0100
1719
+
1720
+ AW_HUD_ELEMENT_FLAGS_ENUM_ENUM = {
1721
+ :AW_HUD_ELEMENT_FLAG_CLICKS => 0x0001,
1722
+ :AW_HUD_ELEMENT_FLAG_STRETCH => 0x0002,
1723
+ :AW_HUD_ELEMENT_FLAG_ADDITIVE => 0x0004,
1724
+ :AW_HUD_ELEMENT_FLAG_SIZE_PERCENT => 0x0008,
1725
+ :AW_HUD_ELEMENT_FLAG_TRANSITION => 0x0010,
1726
+ :AW_HUD_ELEMENT_FLAG_TEMPORARY => 0x0020,
1727
+ :AW_HUD_ELEMENT_FLAG_UNIVERSE_PATH => 0x0040,
1728
+ :AW_HUD_ELEMENT_FLAG_CLAMP => 0x0080,
1729
+ :AW_HUD_ELEMENT_FLAG_HIGHLIGHT => 0x0100,
1730
+ }
1731
+
1732
+ AW_PRIVACY_BLOCK_TELEGRAMS = 0x0001
1733
+
1734
+ AW_PRIVACY_TYPES_ENUM = {
1735
+ :AW_PRIVACY_BLOCK_TELEGRAMS => 0x0001,
1736
+ }
1737
+
1738
+ AW_ENABLE_CAV_CITIZEN = 0x01
1739
+ AW_ENABLE_CAV_BOT = 0x02
1740
+ AW_ENABLE_CAV_TOURIST = 0x04
1741
+ AW_ENABLE_CAV_WORLD_CITIZEN = 0x10
1742
+ AW_ENABLE_CAV_WORLD_BOT = 0x20
1743
+ AW_ENABLE_CAV_WORLD_TOURIST = 0x40
1744
+
1745
+ AW_ENABLE_CAV_TYPES_ENUM = {
1746
+ :AW_ENABLE_CAV_CITIZEN => 0x01,
1747
+ :AW_ENABLE_CAV_BOT => 0x02,
1748
+ :AW_ENABLE_CAV_TOURIST => 0x04,
1749
+ :AW_ENABLE_CAV_WORLD_CITIZEN => 0x10,
1750
+ :AW_ENABLE_CAV_WORLD_BOT => 0x20,
1751
+ :AW_ENABLE_CAV_WORLD_TOURIST => 0x40,
1752
+ }
1753
+
1754
+ class AwTypeVector < FFI::Struct
1755
+ layout(
1756
+ :x, :float,
1757
+ :y, :float,
1758
+ :z, :float
1759
+ )
1760
+ end
1761
+ class AwTypeVectorRange < FFI::Struct
1762
+ layout(
1763
+ :min, AwTypeVector,
1764
+ :max, AwTypeVector
1765
+ )
1766
+ end
1767
+ class AwObjectDataZone < FFI::Struct
1768
+ layout(
1769
+ :size, AwTypeVector,
1770
+ :version, :uchar,
1771
+ :shape, :uchar,
1772
+ :priority, :char,
1773
+ :gravity, :float,
1774
+ :friction, :float,
1775
+ :flags, :ushort,
1776
+ :color, :ulong,
1777
+ :fog_min, :ushort,
1778
+ :fog_max, :ushort,
1779
+ :footstep_len, :ushort,
1780
+ :ambient_len, :ushort,
1781
+ :camera_len, :uchar,
1782
+ :target_cur_len, :uchar,
1783
+ :voip_rights_len, :uchar,
1784
+ :name_len, :uchar,
1785
+ :reserved, [:char, 9],
1786
+ :str_data, [:char, 1]
1787
+ )
1788
+ end
1789
+ class AwObjectDataParticles < FFI::Struct
1790
+ layout(
1791
+ :volume, AwTypeVectorRange,
1792
+ :version, :uchar,
1793
+ :speed, AwTypeVectorRange,
1794
+ :accel, AwTypeVectorRange,
1795
+ :angle, AwTypeVectorRange,
1796
+ :spin, AwTypeVectorRange,
1797
+ :size, AwTypeVectorRange,
1798
+ :release_min, :ulong,
1799
+ :release_max, :ulong,
1800
+ :release_size, :ushort,
1801
+ :lifespan, :ulong,
1802
+ :emitter_lifespan, :ulong,
1803
+ :fade_in, :ulong,
1804
+ :fade_out, :ulong,
1805
+ :color_start, :ulong,
1806
+ :color_end, :ulong,
1807
+ :opacity, :float,
1808
+ :render_style, :uchar,
1809
+ :flags, :ushort,
1810
+ :style, :uchar,
1811
+ :asset_list_len, :ushort,
1812
+ :name_len, :uchar,
1813
+ :reserved, [:char, 12],
1814
+ :str_data, [:char, 1]
1815
+ )
1816
+ end
1817
+ class AwObjectDataCamera < FFI::Struct
1818
+ layout(
1819
+ :version, :uchar,
1820
+ :flags, :ushort,
1821
+ :zoom, :float,
1822
+ :name_len, :uchar,
1823
+ :reserved, [:char, 12],
1824
+ :str_data, [:char, 1]
1825
+ )
1826
+ end
1827
+ class AwObjectDataMover < FFI::Struct
1828
+ layout(
1829
+ :version, :uchar,
1830
+ :type, :uchar,
1831
+ :flags, :uint,
1832
+ :locked_pos_x, :short,
1833
+ :locked_pos_y, :short,
1834
+ :locked_pos_z, :short,
1835
+ :locked_yaw, :short,
1836
+ :locked_pitch, :short,
1837
+ :glide_factor, :char,
1838
+ :speed_factor, :uchar,
1839
+ :friction_factor, :uchar,
1840
+ :accel_tilt_x, :char,
1841
+ :accel_tilt_z, :char,
1842
+ :turn_factor, :uchar,
1843
+ :avatar_tag, :uchar,
1844
+ :reserved1, [:char, 9],
1845
+ :name_len, :uchar,
1846
+ :seq_len, :uchar,
1847
+ :script_len, :uchar,
1848
+ :sound_len, :uchar,
1849
+ :waypoints_len, :ushort,
1850
+ :bump_name_len, :uchar,
1851
+ :reserved2, [:char, 2],
1852
+ :str_data, [:char, 1]
1853
+ )
1854
+ end
1855
+ class AwWaypoint < FFI::Struct
1856
+ layout(
1857
+ :x, :short,
1858
+ :y, :short,
1859
+ :z, :short,
1860
+ :yaw, :short,
1861
+ :pitch, :short,
1862
+ :roll, :short,
1863
+ :speed, :ushort,
1864
+ :pause, :uchar,
1865
+ :flag, :ushort
1866
+ )
1867
+ end
1868
+ attach_function :aw_init, [ :int ], :int
1869
+ attach_function :aw_init_bind, [ :int, :ulong ], :int
1870
+ attach_function :aw_term, [ ], :void
1871
+ attach_function :aw_create, [ :string, :int, :pointer ], :int
1872
+ attach_function :aw_create_resolved, [ :ulong, :int, :pointer ], :int
1873
+ attach_function :aw_destroy, [ ], :int
1874
+ attach_function :aw_instance, [ ], :pointer
1875
+ attach_function :aw_instance_set, [ :pointer ], :int
1876
+ attach_function :aw_login, [ ], :int
1877
+ attach_function :aw_wait, [ :int ], :int
1878
+ attach_function :aw_int, [ :int ], :int
1879
+ attach_function :aw_int_set, [ :int, :int ], :int
1880
+ attach_function :aw_string, [ :int ], :string
1881
+ attach_function :aw_string_set, [ :int, :string ], :int
1882
+ attach_function :aw_bool, [ :int ], :int
1883
+ attach_function :aw_bool_set, [ :int, :int ], :int
1884
+ attach_function :aw_float, [ :int ], :float
1885
+ attach_function :aw_float_set, [ :int, :float ], :int
1886
+ attach_function :aw_data, [ :int, :pointer ], :string
1887
+ attach_function :aw_data_set, [ :int, :string, :uint ], :int
1888
+ attach_function :aw_callback, [ :int ], :pointer
1889
+ # attach_function :aw_callback_set, [ :int, callback([ :int ], :void) ], :int
1890
+ # attach_function :aw_instance_callback_set, [ :int, callback([ :int ], :void) ], :int
1891
+ attach_function :aw_event, [ :int ], :pointer
1892
+ # attach_function :aw_event_set, [ :int, callback([ ], :void) ], :int
1893
+ # attach_function :aw_instance_event_set, [ :int, callback([ ], :void) ], :int
1894
+ attach_function :aw_enter, [ :string ], :int
1895
+ attach_function :aw_exit, [ ], :int
1896
+ attach_function :aw_say, [ :string ], :int
1897
+ attach_function :aw_whisper, [ :int, :string ], :int
1898
+ attach_function :aw_state_change, [ ], :int
1899
+ attach_function :aw_citizen_attributes_by_name, [ :string ], :int
1900
+ attach_function :aw_citizen_attributes_by_number, [ :int ], :int
1901
+ attach_function :aw_citizen_add, [ ], :int
1902
+ attach_function :aw_citizen_change, [ ], :int
1903
+ attach_function :aw_citizen_delete, [ :int ], :int
1904
+ attach_function :aw_citizen_next, [ ], :int
1905
+ attach_function :aw_citizen_previous, [ ], :int
1906
+ attach_function :aw_cav_request, [ :int, :int ], :int
1907
+ attach_function :aw_cav_change, [ ], :int
1908
+ attach_function :aw_cav_delete, [ ], :int
1909
+ attach_function :aw_world_cav_request, [ :int, :int ], :int
1910
+ attach_function :aw_world_cav_change, [ ], :int
1911
+ attach_function :aw_world_cav_delete, [ ], :int
1912
+ attach_function :aw_license_add, [ ], :int
1913
+ attach_function :aw_license_attributes, [ :string ], :int
1914
+ attach_function :aw_license_change, [ ], :int
1915
+ attach_function :aw_license_delete, [ :string ], :int
1916
+ attach_function :aw_license_next, [ ], :int
1917
+ attach_function :aw_license_previous, [ ], :int
1918
+ attach_function :aw_world_list, [ ], :int
1919
+ attach_function :aw_object_add, [ ], :int
1920
+ attach_function :aw_object_change, [ ], :int
1921
+ attach_function :aw_object_delete, [ ], :int
1922
+ attach_function :aw_object_load, [ ], :int
1923
+ attach_function :aw_object_query, [ ], :int
1924
+ # attach_function :aw_query, [ :int, :int, [[:int, 3], 3] ], :int
1925
+ # attach_function :aw_query_5x5, [ :int, :int, [[:int, 5], 5] ], :int
1926
+ attach_function :aw_random, [ ], :int
1927
+ attach_function :aw_world_attributes_change, [ ], :int
1928
+ attach_function :aw_universe_attributes_change, [ ], :int
1929
+ attach_function :aw_session, [ ], :int
1930
+ attach_function :aw_world_eject, [ ], :int
1931
+ attach_function :aw_sector_from_cell, [ :int ], :int
1932
+ attach_function :aw_universe_ejection_add, [ ], :int
1933
+ attach_function :aw_universe_ejection_delete, [ :int ], :int
1934
+ attach_function :aw_universe_ejection_lookup, [ ], :int
1935
+ attach_function :aw_universe_ejection_next, [ ], :int
1936
+ attach_function :aw_universe_ejection_previous, [ ], :int
1937
+ attach_function :aw_object_click, [ ], :int
1938
+ attach_function :aw_object_select, [ ], :int
1939
+ attach_function :aw_avatar_click, [ :int ], :int
1940
+ attach_function :aw_address, [ :int ], :int
1941
+ attach_function :aw_url_send, [ :int, :string, :string ], :int
1942
+ attach_function :aw_url_click, [ :string ], :int
1943
+ attach_function :aw_teleport, [ :int ], :int
1944
+ attach_function :aw_world_ejection_add, [ ], :int
1945
+ attach_function :aw_world_ejection_delete, [ ], :int
1946
+ attach_function :aw_world_ejection_lookup, [ ], :int
1947
+ attach_function :aw_world_ejection_next, [ ], :int
1948
+ attach_function :aw_world_ejection_previous, [ ], :int
1949
+ attach_function :aw_world_attribute_set, [ :int, :string ], :int
1950
+ attach_function :aw_world_attribute_get, [ :int, :pointer, :string ], :int
1951
+ attach_function :aw_delete_all_objects, [ ], :int
1952
+ attach_function :aw_cell_next, [ ], :int
1953
+ attach_function :aw_world_reload_registry, [ ], :int
1954
+ attach_function :aw_world_attributes_reset, [ ], :int
1955
+ attach_function :aw_terrain_set, [ :int, :int, :int, :int, :pointer ], :int
1956
+ attach_function :aw_terrain_query, [ :int, :int, :ulong ], :int
1957
+ attach_function :aw_terrain_next, [ ], :int
1958
+ attach_function :aw_terrain_delete_all, [ ], :int
1959
+ attach_function :aw_terrain_load_node, [ ], :int
1960
+ attach_function :aw_console_message, [ :int ], :int
1961
+ attach_function :aw_user_data_set, [ :pointer ], :int
1962
+ attach_function :aw_user_data, [ ], :pointer
1963
+ attach_function :aw_avatar_set, [ :int ], :int
1964
+ attach_function :aw_avatar_reload, [ :int, :int ], :int
1965
+ attach_function :aw_avatar_location, [ :int, :int, :string ], :int
1966
+ attach_function :aw_world_instance_set, [ :int, :int ], :int
1967
+ attach_function :aw_world_instance_get, [ :int ], :int
1968
+ attach_function :aw_botgram_send, [ ], :int
1969
+ attach_function :aw_toolbar_click, [ ], :int
1970
+ attach_function :aw_user_list, [ ], :int
1971
+ attach_function :aw_noise, [ :int ], :int
1972
+ attach_function :aw_world_attributes_send, [ :int ], :int
1973
+ attach_function :aw_camera_set, [ :int ], :int
1974
+ attach_function :aw_botmenu_send, [ ], :int
1975
+ attach_function :aw_object_bump, [ ], :int
1976
+ attach_function :aw_mover_set_state, [ :int, :int, :int ], :int
1977
+ attach_function :aw_mover_set_position, [ :int, :int, :int, :int, :int, :int, :int ], :int
1978
+ attach_function :aw_mover_rider_add, [ :int, :int, :int, :int, :int, :int, :int ], :int
1979
+ attach_function :aw_mover_rider_change, [ :int, :int, :int, :int, :int, :int, :int ], :int
1980
+ attach_function :aw_mover_rider_delete, [ :int, :int ], :int
1981
+ attach_function :aw_mover_links, [ :int ], :int
1982
+ attach_function :aw_object_zone_set, [ AwTypeVector, :uchar, :char, :float, :float, :ushort, :ulong, :ushort, :ushort, :string, :string, :string, :string, :string, :string ], :int
1983
+ attach_function :aw_object_zone, [ :pointer ], :pointer
1984
+ attach_function :aw_object_particles_set, [ AwTypeVectorRange, AwTypeVectorRange, AwTypeVectorRange, AwTypeVectorRange, AwTypeVectorRange, AwTypeVectorRange, :ulong, :ulong, :ushort, :ulong, :ulong, :ulong, :ulong, :ulong, :ulong, :float, :uchar, :ushort, :uchar, :string, :string ], :int
1985
+ attach_function :aw_object_particles, [ :pointer ], :pointer
1986
+ attach_function :aw_object_camera_set, [ :ushort, :float, :string ], :int
1987
+ attach_function :aw_object_camera, [ :pointer ], :pointer
1988
+ attach_function :aw_object_mover_set, [ :uchar, :ushort, :short, :short, :short, :short, :short, :char, :uchar, :uchar, :char, :char, :uchar, :uchar, :string, :string, :string, :string, :ushort, :pointer, :string ], :int
1989
+ attach_function :aw_object_mover, [ :pointer ], :pointer
1990
+ attach_function :aw_hud_create, [ ], :int
1991
+ attach_function :aw_hud_click, [ ], :int
1992
+ attach_function :aw_hud_destroy, [ :int, :int ], :int
1993
+ attach_function :aw_hud_clear, [ :int ], :int
1994
+ attach_function :aw_tick, [ ], :uint
1995
+ attach_function :aw_check_right, [ :int, :string ], :int
1996
+ attach_function :aw_check_right_all, [ :string ], :int
1997
+ attach_function :aw_has_world_right, [ :int, :int ], :int
1998
+ attach_function :aw_has_world_right_all, [ :int ], :int
1999
+ attach_function :aw_traffic_count, [ :pointer, :pointer ], :int
2000
+ attach_function :aw_zip, [ :pointer, :pointer, :pointer, :uint ], :int
2001
+ attach_function :aw_unzip, [ :pointer, :pointer, :pointer, :uint ], :int
2002
+ attach_function :aw_server_admin, [ :string, :int, :string, :pointer ], :int
2003
+ attach_function :aw_server_world_add, [ ], :int
2004
+ attach_function :aw_server_world_delete, [ :int ], :int
2005
+ attach_function :aw_server_world_change, [ :int ], :int
2006
+ attach_function :aw_server_world_list, [ ], :int
2007
+ attach_function :aw_server_world_start, [ :int ], :int
2008
+ attach_function :aw_server_world_stop, [ :int ], :int
2009
+ attach_function :aw_server_world_set, [ :int ], :int
2010
+ attach_function :aw_server_world_instance_set, [ :int ], :int
2011
+ attach_function :aw_server_world_instance_add, [ :int, :int ], :int
2012
+ attach_function :aw_server_world_instance_delete, [ :int, :int ], :int
2013
+ # attach_function :aw_contact_add, [ :int, :uint ], :int
2014
+ # attach_function :aw_contact_add_by_name, [ :string, :uint ], :int
2015
+ # attach_function :aw_contact_change, [ :int, :uint ], :int
2016
+ # attach_function :aw_contact_confirm, [ :int, :uint ], :int
2017
+ # attach_function :aw_contact_delete, [ :int ], :int
2018
+ # attach_function :aw_contact_list, [ :int ], :int
2019
+ # attach_function :aw_afk_set, [ :int ], :int
2020
+ # attach_function :aw_telegram_send, [ :string, :string ], :int
2021
+ # attach_function :aw_join, [ :int ], :int
2022
+ # attach_function :aw_join_reply, [ :int, :int ], :int
2023
+ # attach_function :aw_password_send, [ ], :int
2024
+ # attach_function :aw_immigrate, [ ], :int
2025
+ # attach_function :aw_register, [ :int ], :int
2026
+ # attach_function :aw_send_file, [ ], :int
2027
+ # attach_function :aw_send_file_reply, [ :int ], :int
2028
+ # attach_function :aw_login_timeout_set, [ :int ], :void
2029
+ # attach_function :aw_tunnel_set, [ :string, :ushort ], :int
2030
+ # attach_function :aw_tunnel_set_resolved, [ :ulong, :ushort ], :int
2031
+ # attach_function :aw_proxy_set, [ :string, :ushort ], :int
2032
+ # attach_function :aw_proxy_set_resolved, [ :ulong, :ushort ], :int
2033
+ # attach_function :aw_proxy_set_login, [ :string, :string ], :int
2034
+ # attach_function :aw_connection, [ ], :int
2035
+ # attach_function :aw_connection_set, [ :int ], :int
2036
+ # attach_function :aw_connection_state, [ :pointer ], :int
2037
+ # attach_function :aw_voip_data, [ :pointer, :uint ], :int
2038
+ # attach_function :aw_voip_group_set, [ :int, :string ], :int
2039
+ # attach_function :aw_debug_callback_set, [ callback([ :string ], :void) ], :int
2040
+
2041
+ callback :handle_aw_callback, [:int], :void
2042
+ callback :handle_aw_event, [], :void
2043
+ attach_function :aw_callback_set, [:int, :handle_aw_callback], :int
2044
+ attach_function :aw_event_set, [:int, :handle_aw_event], :int
2045
+ attach_function :aw_instance_callback_set, [:int, :handle_aw_callback], :int
2046
+ attach_function :aw_instance_event_set, [:int, :handle_aw_event], :int
2047
+ attach_function :aw_data, [:int, :buffer_out], :pointer
2048
+ attach_function :aw_user_data_set, [:buffer_inout], :int
2049
+ # these take as the pointer a int[3][3] or int[5][5] respectively
2050
+ attach_function :aw_query, [:int, :int, :buffer_inout], :int
2051
+ attach_function :aw_query_5x5, [:int, :int, :buffer_inout], :int
2052
+ attach_function :aw_world_attribute_set, [:int, :buffer_in], :int
2053
+ attach_function :aw_world_attribute_get, [:int, :buffer_out, :buffer_out], :int
2054
+
2055
+ alias :aw_string_set_ffi :aw_string_set
2056
+ alias :aw_data_set_ffi :aw_data_set
2057
+ alias :aw_bool_set_ffi :aw_bool_set
2058
+ alias :aw_bool_ffi :aw_bool
2059
+
2060
+ def aw_bool_set(attribute, tf)
2061
+ aw_bool_set_ffi(attribute, tf ? 1 : 0)
2062
+ end
2063
+
2064
+ def aw_bool(attribute)
2065
+ aw_bool_ffi(attribute) == 1 ? true : false
2066
+ end
2067
+
2068
+ def aw_string_set(aw_attr,str,length=AW_MAX_ATTRIBUTE_LENGTH)
2069
+ aw_string_set_ffi(aw_attr,str[0,length])
2070
+ end
2071
+
2072
+ def aw_data_set(aw_attr,data_buffer,length=AW_MAX_DATA_ATTRIBUTE_LENGTH)
2073
+ base_aw_data_set(aw_attr,data_buffer[0,length],
2074
+ length > AW_MAX_DATA_ATTRIBUTE_LENGTH ? AW_MAX_DATA_ATTRIBUTE_LENGTH : length )
2075
+ end
2076
+
2077
+ end