adamaig-ruby_activeworld 0.1-linux
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.
- data/README +131 -0
 - data/examples/configs.yml +10 -0
 - data/examples/sample_event_bot.rb +29 -0
 - data/ext/extconf.rb +8 -0
 - data/lib/ruby_activeworld_enums.rb +1678 -0
 - data/lib/ruby_activeworld_support.rb +586 -0
 - data/lib/ruby_aw.rb +84 -0
 - data/utilities/aw_enums_and_constants.rb +80 -0
 - data/utilities/callback_generator.rb +126 -0
 - data/utilities/ruby_activeworld_enums.rb +1678 -0
 - data/utilities/t.txt +1127 -0
 - metadata +68 -0
 
| 
         @@ -0,0 +1,586 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            require 'ruby_activeworld_enums'
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
      
 3 
     | 
    
         
            +
            module RubyActiveworldSupport
         
     | 
| 
      
 4 
     | 
    
         
            +
              include RubyActiveworldEnums
         
     | 
| 
      
 5 
     | 
    
         
            +
              
         
     | 
| 
      
 6 
     | 
    
         
            +
              AW_BUILD                     = 65
         
     | 
| 
      
 7 
     | 
    
         
            +
              AW_MAX_AVCHANGE_PER_SECOND   = 10
         
     | 
| 
      
 8 
     | 
    
         
            +
              AW_MAX_MESSAGES_PER_SECOND   = 100
         
     | 
| 
      
 9 
     | 
    
         
            +
              AW_MAX_WHISPERS_PER_SECOND   = 100
         
     | 
| 
      
 10 
     | 
    
         
            +
              AW_MAX_BOTGRAMS_PER_SECOND   = 32
         
     | 
| 
      
 11 
     | 
    
         
            +
              AW_MAX_ATTRIBUTE_LENGTH      = 255
         
     | 
| 
      
 12 
     | 
    
         
            +
              AW_MAX_LONG_ATTRIBUTE_LENGTH = 1000
         
     | 
| 
      
 13 
     | 
    
         
            +
              AW_MAX_DATA_ATTRIBUTE_LENGTH = 4096
         
     | 
| 
      
 14 
     | 
    
         
            +
              AW_PERSONAL_AVATAR           = 65535
         
     | 
| 
      
 15 
     | 
    
         
            +
              AW_CUSTOM_AVATAR             = 65534
         
     | 
| 
      
 16 
     | 
    
         
            +
              AW_CUSTOM_WORLD_AVATAR       = 65533
         
     | 
| 
      
 17 
     | 
    
         
            +
              
         
     | 
| 
      
 18 
     | 
    
         
            +
              AW_OBJECT_VERSION_CAMERA     = 1
         
     | 
| 
      
 19 
     | 
    
         
            +
              AW_OBJECT_VERSION_PARTICLES  = 1
         
     | 
| 
      
 20 
     | 
    
         
            +
              AW_OBJECT_VERSION_ZONE       = 1
         
     | 
| 
      
 21 
     | 
    
         
            +
              AW_OBJECT_VERSION_MOVER      = 1
         
     | 
| 
      
 22 
     | 
    
         
            +
              
         
     | 
| 
      
 23 
     | 
    
         
            +
              # This class allows is for the generation of RubyActiveworld specific errors
         
     | 
| 
      
 24 
     | 
    
         
            +
              class RubyActiveworldError < RuntimeError; end
         
     | 
| 
      
 25 
     | 
    
         
            +
              
         
     | 
| 
      
 26 
     | 
    
         
            +
              # call-seq:
         
     | 
| 
      
 27 
     | 
    
         
            +
              #   rc_sym ruby_aw_init =>  :RC_SUCCESS
         
     | 
| 
      
 28 
     | 
    
         
            +
              #   
         
     | 
| 
      
 29 
     | 
    
         
            +
              # This returns the symbol corresponding to the return code name
         
     | 
| 
      
 30 
     | 
    
         
            +
              def rc_sym(rc_int)
         
     | 
| 
      
 31 
     | 
    
         
            +
                RETURN_CODE_MAP[rc_int][:error_symbol]
         
     | 
| 
      
 32 
     | 
    
         
            +
              end
         
     | 
| 
      
 33 
     | 
    
         
            +
              
         
     | 
| 
      
 34 
     | 
    
         
            +
              # call-seq:
         
     | 
| 
      
 35 
     | 
    
         
            +
              #   rc_msg ruby_aw_init => "Success: Return value from an asynchronous call..."
         
     | 
| 
      
 36 
     | 
    
         
            +
              #   rc_msg some_failing_call => "This call failed due to ..." 
         
     | 
| 
      
 37 
     | 
    
         
            +
              #
         
     | 
| 
      
 38 
     | 
    
         
            +
              # This looks up return code's corresponding explanation.
         
     | 
| 
      
 39 
     | 
    
         
            +
              def rc_msg(rc_int)
         
     | 
| 
      
 40 
     | 
    
         
            +
                RETURN_CODE_MAP[rc_int][:error_explanation]
         
     | 
| 
      
 41 
     | 
    
         
            +
              end
         
     | 
| 
      
 42 
     | 
    
         
            +
              
         
     | 
| 
      
 43 
     | 
    
         
            +
              def raise_on_error(rc_int)
         
     | 
| 
      
 44 
     | 
    
         
            +
                if :RC_SUCCESS != rc_sym(rc_int)
         
     | 
| 
      
 45 
     | 
    
         
            +
                  throw RubyActiveworldError.new( "#{rc_int} : #{rc_msg(rc_int)}")
         
     | 
| 
      
 46 
     | 
    
         
            +
                end
         
     | 
| 
      
 47 
     | 
    
         
            +
              end
         
     | 
| 
      
 48 
     | 
    
         
            +
              
         
     | 
| 
      
 49 
     | 
    
         
            +
              ATTRIBUTE_TYPE_MAP = { 
         
     | 
| 
      
 50 
     | 
    
         
            +
                :AW_AVATAR_LOCK => :bool,
         
     | 
| 
      
 51 
     | 
    
         
            +
                :AW_CELL_COMBINE => :bool,
         
     | 
| 
      
 52 
     | 
    
         
            +
                :AW_CITIZEN_BETA => :bool,
         
     | 
| 
      
 53 
     | 
    
         
            +
                :AW_CITIZEN_CAV_ENABLED => :bool,
         
     | 
| 
      
 54 
     | 
    
         
            +
                :AW_CITIZEN_ENABLED => :bool,
         
     | 
| 
      
 55 
     | 
    
         
            +
                :AW_CITIZEN_PAV_ENABLED => :bool,
         
     | 
| 
      
 56 
     | 
    
         
            +
                :AW_CITIZEN_TRIAL => :bool,
         
     | 
| 
      
 57 
     | 
    
         
            +
                :AW_CONSOLE_BOLD => :bool,
         
     | 
| 
      
 58 
     | 
    
         
            +
                :AW_CONSOLE_ITALICS => :bool,
         
     | 
| 
      
 59 
     | 
    
         
            +
                :AW_ENTER_GLOBAL => :bool,
         
     | 
| 
      
 60 
     | 
    
         
            +
                :AW_LICENSE_ALLOW_TOURISTS => :bool,
         
     | 
| 
      
 61 
     | 
    
         
            +
                :AW_LICENSE_HIDDEN => :bool,
         
     | 
| 
      
 62 
     | 
    
         
            +
                :AW_LICENSE_PLUGINS => :bool,
         
     | 
| 
      
 63 
     | 
    
         
            +
                :AW_LICENSE_VOIP => :bool,
         
     | 
| 
      
 64 
     | 
    
         
            +
                :AW_QUERY_COMPLETE => :bool,
         
     | 
| 
      
 65 
     | 
    
         
            +
                :AW_SERVER_ENABLED => :bool,
         
     | 
| 
      
 66 
     | 
    
         
            +
                :AW_SERVER_MORE => :bool,
         
     | 
| 
      
 67 
     | 
    
         
            +
                :AW_TELEPORT_WARP => :bool,
         
     | 
| 
      
 68 
     | 
    
         
            +
                :AW_TERRAIN_COMPLETE => :bool,
         
     | 
| 
      
 69 
     | 
    
         
            +
                :AW_URL_TARGET_3D => :bool,
         
     | 
| 
      
 70 
     | 
    
         
            +
                :AW_USERLIST_MORE => :bool,
         
     | 
| 
      
 71 
     | 
    
         
            +
                :AW_WORLDLIST_MORE => :bool,
         
     | 
| 
      
 72 
     | 
    
         
            +
                :AW_CAV_DEFINITION => :data,
         
     | 
| 
      
 73 
     | 
    
         
            +
                :AW_OBJECT_DATA => :data,
         
     | 
| 
      
 74 
     | 
    
         
            +
                :AW_TERRAIN_NODE_HEIGHTS => :data,
         
     | 
| 
      
 75 
     | 
    
         
            +
                :AW_TERRAIN_NODE_TEXTURES => :data,
         
     | 
| 
      
 76 
     | 
    
         
            +
                :AW_HUD_ELEMENT_OPACITY => :float,
         
     | 
| 
      
 77 
     | 
    
         
            +
                :AW_ATTRIB_SENDER_SESSION => :int,
         
     | 
| 
      
 78 
     | 
    
         
            +
                :AW_AVATAR_ADDRESS => :int,
         
     | 
| 
      
 79 
     | 
    
         
            +
                :AW_AVATAR_ANGLE => :int,
         
     | 
| 
      
 80 
     | 
    
         
            +
                :AW_AVATAR_CITIZEN => :int,
         
     | 
| 
      
 81 
     | 
    
         
            +
                :AW_AVATAR_DISTANCE => :int,
         
     | 
| 
      
 82 
     | 
    
         
            +
                :AW_AVATAR_FLAGS => :int,
         
     | 
| 
      
 83 
     | 
    
         
            +
                :AW_AVATAR_GESTURE => :int,
         
     | 
| 
      
 84 
     | 
    
         
            +
                :AW_AVATAR_PITCH => :int,
         
     | 
| 
      
 85 
     | 
    
         
            +
                :AW_AVATAR_PITCH_DELTA => :int,
         
     | 
| 
      
 86 
     | 
    
         
            +
                :AW_AVATAR_PRIVILEGE => :int,
         
     | 
| 
      
 87 
     | 
    
         
            +
                :AW_AVATAR_SESSION => :int,
         
     | 
| 
      
 88 
     | 
    
         
            +
                :AW_AVATAR_STATE => :int,
         
     | 
| 
      
 89 
     | 
    
         
            +
                :AW_AVATAR_TYPE => :int,
         
     | 
| 
      
 90 
     | 
    
         
            +
                :AW_AVATAR_VERSION => :int,
         
     | 
| 
      
 91 
     | 
    
         
            +
                :AW_AVATAR_WORLD_INSTANCE => :int,
         
     | 
| 
      
 92 
     | 
    
         
            +
                :AW_AVATAR_X => :int,
         
     | 
| 
      
 93 
     | 
    
         
            +
                :AW_AVATAR_Y => :int,
         
     | 
| 
      
 94 
     | 
    
         
            +
                :AW_AVATAR_Y_DELTA => :int,
         
     | 
| 
      
 95 
     | 
    
         
            +
                :AW_AVATAR_YAW => :int,
         
     | 
| 
      
 96 
     | 
    
         
            +
                :AW_AVATAR_YAW_DELTA => :int,
         
     | 
| 
      
 97 
     | 
    
         
            +
                :AW_AVATAR_Z => :int,
         
     | 
| 
      
 98 
     | 
    
         
            +
                :AW_BOTGRAM_FROM => :int,
         
     | 
| 
      
 99 
     | 
    
         
            +
                :AW_BOTGRAM_TO => :int,
         
     | 
| 
      
 100 
     | 
    
         
            +
                :AW_BOTGRAM_TYPE => :int,
         
     | 
| 
      
 101 
     | 
    
         
            +
                :AW_BOTMENU_FROM_SESSION => :int,
         
     | 
| 
      
 102 
     | 
    
         
            +
                :AW_BOTMENU_TO_SESSION => :int,
         
     | 
| 
      
 103 
     | 
    
         
            +
                :AW_CAMERA_LOCATION_SESSION => :int,
         
     | 
| 
      
 104 
     | 
    
         
            +
                :AW_CAMERA_LOCATION_TYPE => :int,
         
     | 
| 
      
 105 
     | 
    
         
            +
                :AW_CAMERA_TARGET_SESSION => :int,
         
     | 
| 
      
 106 
     | 
    
         
            +
                :AW_CAMERA_TARGET_TYPE => :int,
         
     | 
| 
      
 107 
     | 
    
         
            +
                :AW_CAV_CITIZEN => :int,
         
     | 
| 
      
 108 
     | 
    
         
            +
                :AW_CAV_SESSION => :int,
         
     | 
| 
      
 109 
     | 
    
         
            +
                :AW_CELL_ITERATOR => :int,
         
     | 
| 
      
 110 
     | 
    
         
            +
                :AW_CELL_SEQUENCE => :int,
         
     | 
| 
      
 111 
     | 
    
         
            +
                :AW_CELL_SIZE => :int,
         
     | 
| 
      
 112 
     | 
    
         
            +
                :AW_CELL_X => :int,
         
     | 
| 
      
 113 
     | 
    
         
            +
                :AW_CELL_Z => :int,
         
     | 
| 
      
 114 
     | 
    
         
            +
                :AW_CHAT_SESSION => :int,
         
     | 
| 
      
 115 
     | 
    
         
            +
                :AW_CHAT_TYPE => :int,
         
     | 
| 
      
 116 
     | 
    
         
            +
                :AW_CITIZEN_BOT_LIMIT => :int,
         
     | 
| 
      
 117 
     | 
    
         
            +
                :AW_CITIZEN_EXPIRATION_TIME => :int,
         
     | 
| 
      
 118 
     | 
    
         
            +
                :AW_CITIZEN_IMMIGRATION_TIME => :int,
         
     | 
| 
      
 119 
     | 
    
         
            +
                :AW_CITIZEN_LAST_ADDRESS => :int,
         
     | 
| 
      
 120 
     | 
    
         
            +
                :AW_CITIZEN_LAST_LOGIN => :int,
         
     | 
| 
      
 121 
     | 
    
         
            +
                :AW_CITIZEN_NUMBER => :int,
         
     | 
| 
      
 122 
     | 
    
         
            +
                :AW_CITIZEN_PRIVACY => :int,
         
     | 
| 
      
 123 
     | 
    
         
            +
                :AW_CITIZEN_TIME_LEFT => :int,
         
     | 
| 
      
 124 
     | 
    
         
            +
                :AW_CITIZEN_TOTAL_TIME => :int,
         
     | 
| 
      
 125 
     | 
    
         
            +
                :AW_CLICKED_SESSION => :int,
         
     | 
| 
      
 126 
     | 
    
         
            +
                :AW_CONSOLE_BLUE => :int,
         
     | 
| 
      
 127 
     | 
    
         
            +
                :AW_CONSOLE_GREEN => :int,
         
     | 
| 
      
 128 
     | 
    
         
            +
                :AW_CONSOLE_RED => :int,
         
     | 
| 
      
 129 
     | 
    
         
            +
                :AW_DISCONNECT_REASON => :int,
         
     | 
| 
      
 130 
     | 
    
         
            +
                :AW_EJECT_DURATION => :int,
         
     | 
| 
      
 131 
     | 
    
         
            +
                :AW_EJECT_SESSION => :int,
         
     | 
| 
      
 132 
     | 
    
         
            +
                :AW_EJECTION_ADDRESS => :int,
         
     | 
| 
      
 133 
     | 
    
         
            +
                :AW_EJECTION_CREATION_TIME => :int,
         
     | 
| 
      
 134 
     | 
    
         
            +
                :AW_EJECTION_EXPIRATION_TIME => :int,
         
     | 
| 
      
 135 
     | 
    
         
            +
                :AW_EJECTION_TYPE => :int,
         
     | 
| 
      
 136 
     | 
    
         
            +
                :AW_ENTITY_FLAGS => :int,
         
     | 
| 
      
 137 
     | 
    
         
            +
                :AW_ENTITY_ID => :int,
         
     | 
| 
      
 138 
     | 
    
         
            +
                :AW_ENTITY_MODEL_NUM => :int,
         
     | 
| 
      
 139 
     | 
    
         
            +
                :AW_ENTITY_OWNER_CITIZEN => :int,
         
     | 
| 
      
 140 
     | 
    
         
            +
                :AW_ENTITY_OWNER_SESSION => :int,
         
     | 
| 
      
 141 
     | 
    
         
            +
                :AW_ENTITY_PITCH => :int,
         
     | 
| 
      
 142 
     | 
    
         
            +
                :AW_ENTITY_ROLL => :int,
         
     | 
| 
      
 143 
     | 
    
         
            +
                :AW_ENTITY_STATE => :int,
         
     | 
| 
      
 144 
     | 
    
         
            +
                :AW_ENTITY_TYPE => :int,
         
     | 
| 
      
 145 
     | 
    
         
            +
                :AW_ENTITY_X => :int,
         
     | 
| 
      
 146 
     | 
    
         
            +
                :AW_ENTITY_Y => :int,
         
     | 
| 
      
 147 
     | 
    
         
            +
                :AW_ENTITY_YAW => :int,
         
     | 
| 
      
 148 
     | 
    
         
            +
                :AW_ENTITY_Z => :int,
         
     | 
| 
      
 149 
     | 
    
         
            +
                :AW_HUD_ELEMENT_CLICK_X => :int,
         
     | 
| 
      
 150 
     | 
    
         
            +
                :AW_HUD_ELEMENT_CLICK_Y => :int,
         
     | 
| 
      
 151 
     | 
    
         
            +
                :AW_HUD_ELEMENT_CLICK_Z => :int,
         
     | 
| 
      
 152 
     | 
    
         
            +
                :AW_HUD_ELEMENT_COLOR => :int,
         
     | 
| 
      
 153 
     | 
    
         
            +
                :AW_HUD_ELEMENT_FLAGS => :int,
         
     | 
| 
      
 154 
     | 
    
         
            +
                :AW_HUD_ELEMENT_ID => :int,
         
     | 
| 
      
 155 
     | 
    
         
            +
                :AW_HUD_ELEMENT_ORIGIN => :int,
         
     | 
| 
      
 156 
     | 
    
         
            +
                :AW_HUD_ELEMENT_SESSION => :int,
         
     | 
| 
      
 157 
     | 
    
         
            +
                :AW_HUD_ELEMENT_SIZE_X => :int,
         
     | 
| 
      
 158 
     | 
    
         
            +
                :AW_HUD_ELEMENT_SIZE_Y => :int,
         
     | 
| 
      
 159 
     | 
    
         
            +
                :AW_HUD_ELEMENT_SIZE_Z => :int,
         
     | 
| 
      
 160 
     | 
    
         
            +
                :AW_HUD_ELEMENT_TEXTURE_OFFSET_X => :int,
         
     | 
| 
      
 161 
     | 
    
         
            +
                :AW_HUD_ELEMENT_TEXTURE_OFFSET_Y => :int,
         
     | 
| 
      
 162 
     | 
    
         
            +
                :AW_HUD_ELEMENT_TYPE => :int,
         
     | 
| 
      
 163 
     | 
    
         
            +
                :AW_HUD_ELEMENT_X => :int,
         
     | 
| 
      
 164 
     | 
    
         
            +
                :AW_HUD_ELEMENT_Y => :int,
         
     | 
| 
      
 165 
     | 
    
         
            +
                :AW_HUD_ELEMENT_Z => :int,
         
     | 
| 
      
 166 
     | 
    
         
            +
                :AW_LICENSE_CREATION_TIME => :int,
         
     | 
| 
      
 167 
     | 
    
         
            +
                :AW_LICENSE_EXPIRATION_TIME => :int,
         
     | 
| 
      
 168 
     | 
    
         
            +
                :AW_LICENSE_LAST_ADDRESS => :int,
         
     | 
| 
      
 169 
     | 
    
         
            +
                :AW_LICENSE_LAST_START => :int,
         
     | 
| 
      
 170 
     | 
    
         
            +
                :AW_LICENSE_RANGE => :int,
         
     | 
| 
      
 171 
     | 
    
         
            +
                :AW_LICENSE_USERS => :int,
         
     | 
| 
      
 172 
     | 
    
         
            +
                :AW_LOGIN_OWNER => :int,
         
     | 
| 
      
 173 
     | 
    
         
            +
                :AW_MY_GESTURE => :int,
         
     | 
| 
      
 174 
     | 
    
         
            +
                :AW_MY_PITCH => :int,
         
     | 
| 
      
 175 
     | 
    
         
            +
                :AW_MY_STATE => :int,
         
     | 
| 
      
 176 
     | 
    
         
            +
                :AW_MY_TYPE => :int,
         
     | 
| 
      
 177 
     | 
    
         
            +
                :AW_MY_X => :int,
         
     | 
| 
      
 178 
     | 
    
         
            +
                :AW_MY_Y => :int,
         
     | 
| 
      
 179 
     | 
    
         
            +
                :AW_MY_YAW => :int,
         
     | 
| 
      
 180 
     | 
    
         
            +
                :AW_MY_Z => :int,
         
     | 
| 
      
 181 
     | 
    
         
            +
                :AW_OBJECT_BUILD_TIMESTAMP => :int,
         
     | 
| 
      
 182 
     | 
    
         
            +
                :AW_OBJECT_CALLBACK_REFERENCE => :int,
         
     | 
| 
      
 183 
     | 
    
         
            +
                :AW_OBJECT_ID => :int,
         
     | 
| 
      
 184 
     | 
    
         
            +
                :AW_OBJECT_NUMBER => :int,
         
     | 
| 
      
 185 
     | 
    
         
            +
                :AW_OBJECT_OLD_NUMBER => :int,
         
     | 
| 
      
 186 
     | 
    
         
            +
                :AW_OBJECT_OLD_X => :int,
         
     | 
| 
      
 187 
     | 
    
         
            +
                :AW_OBJECT_OLD_Z => :int,
         
     | 
| 
      
 188 
     | 
    
         
            +
                :AW_OBJECT_OWNER => :int,
         
     | 
| 
      
 189 
     | 
    
         
            +
                :AW_OBJECT_ROLL => :int,
         
     | 
| 
      
 190 
     | 
    
         
            +
                :AW_OBJECT_SESSION => :int,
         
     | 
| 
      
 191 
     | 
    
         
            +
                :AW_OBJECT_SYNC => :int,
         
     | 
| 
      
 192 
     | 
    
         
            +
                :AW_OBJECT_TILT => :int,
         
     | 
| 
      
 193 
     | 
    
         
            +
                :AW_OBJECT_TYPE => :int,
         
     | 
| 
      
 194 
     | 
    
         
            +
                :AW_OBJECT_X => :int,
         
     | 
| 
      
 195 
     | 
    
         
            +
                :AW_OBJECT_Y => :int,
         
     | 
| 
      
 196 
     | 
    
         
            +
                :AW_OBJECT_YAW => :int,
         
     | 
| 
      
 197 
     | 
    
         
            +
                :AW_OBJECT_Z => :int,
         
     | 
| 
      
 198 
     | 
    
         
            +
                :AW_SERVER_BUILD => :int,
         
     | 
| 
      
 199 
     | 
    
         
            +
                :AW_SERVER_EXPIRATION => :int,
         
     | 
| 
      
 200 
     | 
    
         
            +
                :AW_SERVER_ID => :int,
         
     | 
| 
      
 201 
     | 
    
         
            +
                :AW_SERVER_INSTANCE => :int,
         
     | 
| 
      
 202 
     | 
    
         
            +
                :AW_SERVER_MAX_USERS => :int,
         
     | 
| 
      
 203 
     | 
    
         
            +
                :AW_SERVER_OBJECTS => :int,
         
     | 
| 
      
 204 
     | 
    
         
            +
                :AW_SERVER_SIZE => :int,
         
     | 
| 
      
 205 
     | 
    
         
            +
                :AW_SERVER_START_RC => :int,
         
     | 
| 
      
 206 
     | 
    
         
            +
                :AW_SERVER_STATE => :int,
         
     | 
| 
      
 207 
     | 
    
         
            +
                :AW_SERVER_TERRAIN_NODES => :int,
         
     | 
| 
      
 208 
     | 
    
         
            +
                :AW_SERVER_USERS => :int,
         
     | 
| 
      
 209 
     | 
    
         
            +
                :AW_TELEPORT_X => :int,
         
     | 
| 
      
 210 
     | 
    
         
            +
                :AW_TELEPORT_Y => :int,
         
     | 
| 
      
 211 
     | 
    
         
            +
                :AW_TELEPORT_YAW => :int,
         
     | 
| 
      
 212 
     | 
    
         
            +
                :AW_TELEPORT_Z => :int,
         
     | 
| 
      
 213 
     | 
    
         
            +
                :AW_TERRAIN_NODE_HEIGHT_COUNT => :int,
         
     | 
| 
      
 214 
     | 
    
         
            +
                :AW_TERRAIN_NODE_SIZE => :int,
         
     | 
| 
      
 215 
     | 
    
         
            +
                :AW_TERRAIN_NODE_TEXTURE_COUNT => :int,
         
     | 
| 
      
 216 
     | 
    
         
            +
                :AW_TERRAIN_NODE_X => :int,
         
     | 
| 
      
 217 
     | 
    
         
            +
                :AW_TERRAIN_NODE_Z => :int,
         
     | 
| 
      
 218 
     | 
    
         
            +
                :AW_TERRAIN_PAGE_X => :int,
         
     | 
| 
      
 219 
     | 
    
         
            +
                :AW_TERRAIN_PAGE_Z => :int,
         
     | 
| 
      
 220 
     | 
    
         
            +
                :AW_TERRAIN_SEQUENCE => :int,
         
     | 
| 
      
 221 
     | 
    
         
            +
                :AW_TERRAIN_VERSION_NEEDED => :int,
         
     | 
| 
      
 222 
     | 
    
         
            +
                :AW_TERRAIN_X => :int,
         
     | 
| 
      
 223 
     | 
    
         
            +
                :AW_TERRAIN_Z => :int,
         
     | 
| 
      
 224 
     | 
    
         
            +
                :AW_TOOLBAR_ID => :int,
         
     | 
| 
      
 225 
     | 
    
         
            +
                :AW_TOOLBAR_SESSION => :int,
         
     | 
| 
      
 226 
     | 
    
         
            +
                :AW_USERLIST_ADDRESS => :int,
         
     | 
| 
      
 227 
     | 
    
         
            +
                :AW_USERLIST_CITIZEN => :int,
         
     | 
| 
      
 228 
     | 
    
         
            +
                :AW_USERLIST_ID => :int,
         
     | 
| 
      
 229 
     | 
    
         
            +
                :AW_USERLIST_PRIVILEGE => :int,
         
     | 
| 
      
 230 
     | 
    
         
            +
                :AW_USERLIST_STATE => :int,
         
     | 
| 
      
 231 
     | 
    
         
            +
                :AW_WORLDLIST_RATING => :int,
         
     | 
| 
      
 232 
     | 
    
         
            +
                :AW_WORLDLIST_STATUS => :int,
         
     | 
| 
      
 233 
     | 
    
         
            +
                :AW_WORLDLIST_USERS => :int,
         
     | 
| 
      
 234 
     | 
    
         
            +
                :AW_AVATAR_NAME => :string,
         
     | 
| 
      
 235 
     | 
    
         
            +
                :AW_BOTGRAM_FROM_NAME => :string,
         
     | 
| 
      
 236 
     | 
    
         
            +
                :AW_BOTMENU_FROM_NAME => :string,
         
     | 
| 
      
 237 
     | 
    
         
            +
                :AW_CAMERA_LOCATION_OBJECT => :string,
         
     | 
| 
      
 238 
     | 
    
         
            +
                :AW_CAMERA_TARGET_OBJECT => :string,
         
     | 
| 
      
 239 
     | 
    
         
            +
                :AW_CHAT_MESSAGE => :string,
         
     | 
| 
      
 240 
     | 
    
         
            +
                :AW_CITIZEN_COMMENT => :string,
         
     | 
| 
      
 241 
     | 
    
         
            +
                :AW_CITIZEN_EMAIL => :string,
         
     | 
| 
      
 242 
     | 
    
         
            +
                :AW_CITIZEN_NAME => :string,
         
     | 
| 
      
 243 
     | 
    
         
            +
                :AW_CITIZEN_PASSWORD => :string,
         
     | 
| 
      
 244 
     | 
    
         
            +
                :AW_CITIZEN_PRIVILEGE_PASSWORD => :string,
         
     | 
| 
      
 245 
     | 
    
         
            +
                :AW_CITIZEN_URL => :string,
         
     | 
| 
      
 246 
     | 
    
         
            +
                :AW_CLICKED_NAME => :string,
         
     | 
| 
      
 247 
     | 
    
         
            +
                :AW_CONSOLE_MESSAGE => :string,
         
     | 
| 
      
 248 
     | 
    
         
            +
                :AW_EJECTION_COMMENT => :string,
         
     | 
| 
      
 249 
     | 
    
         
            +
                :AW_HUD_ELEMENT_TEXT => :string,
         
     | 
| 
      
 250 
     | 
    
         
            +
                :AW_LICENSE_COMMENT => :string,
         
     | 
| 
      
 251 
     | 
    
         
            +
                :AW_LICENSE_EMAIL => :string,
         
     | 
| 
      
 252 
     | 
    
         
            +
                :AW_LICENSE_NAME => :string,
         
     | 
| 
      
 253 
     | 
    
         
            +
                :AW_LICENSE_PASSWORD => :string,
         
     | 
| 
      
 254 
     | 
    
         
            +
                :AW_LOGIN_APPLICATION => :string,
         
     | 
| 
      
 255 
     | 
    
         
            +
                :AW_LOGIN_NAME => :string,
         
     | 
| 
      
 256 
     | 
    
         
            +
                :AW_LOGIN_PASSWORD => :string,
         
     | 
| 
      
 257 
     | 
    
         
            +
                :AW_LOGIN_PRIVILEGE_NAME => :string,
         
     | 
| 
      
 258 
     | 
    
         
            +
                :AW_LOGIN_PRIVILEGE_PASSWORD => :string,
         
     | 
| 
      
 259 
     | 
    
         
            +
                :AW_OBJECT_ACTION => :string,
         
     | 
| 
      
 260 
     | 
    
         
            +
                :AW_OBJECT_DESCRIPTION => :string,
         
     | 
| 
      
 261 
     | 
    
         
            +
                :AW_OBJECT_MODEL => :string,
         
     | 
| 
      
 262 
     | 
    
         
            +
                :AW_PLUGIN_STRING => :string,
         
     | 
| 
      
 263 
     | 
    
         
            +
                :AW_SERVER_CARETAKERS => :string,
         
     | 
| 
      
 264 
     | 
    
         
            +
                :AW_SERVER_NAME => :string,
         
     | 
| 
      
 265 
     | 
    
         
            +
                :AW_SERVER_PASSWORD => :string,
         
     | 
| 
      
 266 
     | 
    
         
            +
                :AW_SERVER_REGISTRY => :string,
         
     | 
| 
      
 267 
     | 
    
         
            +
                :AW_SOUND_NAME => :string,
         
     | 
| 
      
 268 
     | 
    
         
            +
                :AW_TELEPORT_WORLD => :string,
         
     | 
| 
      
 269 
     | 
    
         
            +
                :AW_URL_POST => :string,
         
     | 
| 
      
 270 
     | 
    
         
            +
                :AW_URL_TARGET => :string,
         
     | 
| 
      
 271 
     | 
    
         
            +
                :AW_USERLIST_EMAIL => :string,
         
     | 
| 
      
 272 
     | 
    
         
            +
                :AW_USERLIST_NAME => :string,
         
     | 
| 
      
 273 
     | 
    
         
            +
                :AW_USERLIST_WORLD => :string,
         
     | 
| 
      
 274 
     | 
    
         
            +
                :AW_WORLDLIST_NAME => :string,
         
     | 
| 
      
 275 
     | 
    
         
            +
                :AW_BOTGRAM_TEXT => :string,
         
     | 
| 
      
 276 
     | 
    
         
            +
                :AW_BOTMENU_ANSWER => :string,
         
     | 
| 
      
 277 
     | 
    
         
            +
                :AW_BOTMENU_QUESTION => :string,
         
     | 
| 
      
 278 
     | 
    
         
            +
                :AW_URL_NAME => :string,
         
     | 
| 
      
 279 
     | 
    
         
            +
                :AW_UNIVERSE_ALLOW_BOTS_CAV => :bool,
         
     | 
| 
      
 280 
     | 
    
         
            +
                :AW_UNIVERSE_ALLOW_TOURISTS => :bool,
         
     | 
| 
      
 281 
     | 
    
         
            +
                :AW_UNIVERSE_ALLOW_TOURISTS_CAV => :bool,
         
     | 
| 
      
 282 
     | 
    
         
            +
                :AW_UNIVERSE_CITIZEN_CHANGES_ALLOWED => :bool,
         
     | 
| 
      
 283 
     | 
    
         
            +
                :AW_UNIVERSE_REGISTRATION_REQUIRED => :bool,
         
     | 
| 
      
 284 
     | 
    
         
            +
                :AW_UNIVERSE_USER_LIST_ENABLED => :bool,
         
     | 
| 
      
 285 
     | 
    
         
            +
                :AW_UNIVERSE_OBJECT_PASSWORD => :data,
         
     | 
| 
      
 286 
     | 
    
         
            +
                :AW_UNIVERSE_BROWSER_BETA => :int,
         
     | 
| 
      
 287 
     | 
    
         
            +
                :AW_UNIVERSE_BROWSER_MINIMUM => :int,
         
     | 
| 
      
 288 
     | 
    
         
            +
                :AW_UNIVERSE_BROWSER_RELEASE => :int,
         
     | 
| 
      
 289 
     | 
    
         
            +
                :AW_UNIVERSE_BROWSER_RELEASE_22 => :int	 ,
         
     | 
| 
      
 290 
     | 
    
         
            +
                :AW_UNIVERSE_BUILD_NUMBER => :int,
         
     | 
| 
      
 291 
     | 
    
         
            +
                :AW_UNIVERSE_OBJECT_REFRESH => :int,
         
     | 
| 
      
 292 
     | 
    
         
            +
                :AW_UNIVERSE_REGISTER_METHOD => :int,
         
     | 
| 
      
 293 
     | 
    
         
            +
                :AW_UNIVERSE_TIME => :int,
         
     | 
| 
      
 294 
     | 
    
         
            +
                :AW_UNIVERSE_WORLD_BETA => :int,
         
     | 
| 
      
 295 
     | 
    
         
            +
                :AW_UNIVERSE_WORLD_MINIMUM => :int,
         
     | 
| 
      
 296 
     | 
    
         
            +
                :AW_UNIVERSE_WORLD_RELEASE => :int,
         
     | 
| 
      
 297 
     | 
    
         
            +
                :AW_UNIVERSE_ANNUAL_CHARGE => :string,
         
     | 
| 
      
 298 
     | 
    
         
            +
                :AW_UNIVERSE_CAV_PATH => :string,
         
     | 
| 
      
 299 
     | 
    
         
            +
                :AW_UNIVERSE_CAV_PATH2 => :string,
         
     | 
| 
      
 300 
     | 
    
         
            +
                :AW_UNIVERSE_MONTHLY_CHARGE => :string,
         
     | 
| 
      
 301 
     | 
    
         
            +
                :AW_UNIVERSE_NAME => :string,
         
     | 
| 
      
 302 
     | 
    
         
            +
                :AW_UNIVERSE_NOTEPAD_URL => :string,
         
     | 
| 
      
 303 
     | 
    
         
            +
                :AW_UNIVERSE_SEARCH_URL => :string,
         
     | 
| 
      
 304 
     | 
    
         
            +
                :AW_UNIVERSE_WELCOME_MESSAGE => :string,
         
     | 
| 
      
 305 
     | 
    
         
            +
                :AW_UNIVERSE_WORLD_START => :string,
         
     | 
| 
      
 306 
     | 
    
         
            +
                :AW_WORLD_ALLOW_3_AXIS_ROTATION => :bool,
         
     | 
| 
      
 307 
     | 
    
         
            +
                :AW_WORLD_ALLOW_AVATAR_COLLISION => :bool,
         
     | 
| 
      
 308 
     | 
    
         
            +
                :AW_WORLD_ALLOW_CITIZEN_WHISPER => :bool,
         
     | 
| 
      
 309 
     | 
    
         
            +
                :AW_WORLD_ALLOW_FLYING => :bool,
         
     | 
| 
      
 310 
     | 
    
         
            +
                :AW_WORLD_ALLOW_OBJECT_SELECT => :bool,
         
     | 
| 
      
 311 
     | 
    
         
            +
                :AW_WORLD_ALLOW_PASSTHRU => :bool,
         
     | 
| 
      
 312 
     | 
    
         
            +
                :AW_WORLD_ALLOW_TELEPORT => :bool,
         
     | 
| 
      
 313 
     | 
    
         
            +
                :AW_WORLD_ALLOW_TOURIST_BUILD => :bool,
         
     | 
| 
      
 314 
     | 
    
         
            +
                :AW_WORLD_ALLOW_TOURIST_WHISPER => :bool,
         
     | 
| 
      
 315 
     | 
    
         
            +
                :AW_WORLD_ALWAYS_SHOW_NAMES => :bool,
         
     | 
| 
      
 316 
     | 
    
         
            +
                :AW_WORLD_AMBIENT_LIGHT_BLUE => :int,
         
     | 
| 
      
 317 
     | 
    
         
            +
                :AW_WORLD_AMBIENT_LIGHT_GREEN => :int,
         
     | 
| 
      
 318 
     | 
    
         
            +
                :AW_WORLD_AMBIENT_LIGHT_RED => :int,
         
     | 
| 
      
 319 
     | 
    
         
            +
                :AW_WORLD_AVATAR_REFRESH_RATE => :int,
         
     | 
| 
      
 320 
     | 
    
         
            +
                :AW_WORLD_BACKDROP => :string,
         
     | 
| 
      
 321 
     | 
    
         
            +
                :AW_WORLD_BOTMENU_URL => :string,
         
     | 
| 
      
 322 
     | 
    
         
            +
                :AW_WORLD_BOTS_RIGHT => :string,
         
     | 
| 
      
 323 
     | 
    
         
            +
                :AW_WORLD_BUILD_CAPABILITY => :bool,
         
     | 
| 
      
 324 
     | 
    
         
            +
                :AW_WORLD_BUILD_NUMBER => :int,
         
     | 
| 
      
 325 
     | 
    
         
            +
                :AW_WORLD_BUILD_RIGHT => :string,
         
     | 
| 
      
 326 
     | 
    
         
            +
                :AW_WORLD_BUOYANCY => :float,
         
     | 
| 
      
 327 
     | 
    
         
            +
                :AW_WORLD_CAMERA_ZOOM => :float,
         
     | 
| 
      
 328 
     | 
    
         
            +
                :AW_WORLD_CARETAKER_CAPABILITY => :bool,
         
     | 
| 
      
 329 
     | 
    
         
            +
                :AW_WORLD_CAV_OBJECT_PASSWORD => :string,
         
     | 
| 
      
 330 
     | 
    
         
            +
                :AW_WORLD_CAV_OBJECT_PATH => :string,
         
     | 
| 
      
 331 
     | 
    
         
            +
                :AW_WORLD_CAV_OBJECT_REFRESH => :int,
         
     | 
| 
      
 332 
     | 
    
         
            +
                :AW_WORLD_CELL_LIMIT => :int,
         
     | 
| 
      
 333 
     | 
    
         
            +
                :AW_WORLD_CHAT_DISABLE_URL_CLICKS => :bool,
         
     | 
| 
      
 334 
     | 
    
         
            +
                :AW_WORLD_CLOUDS_LAYER1_MASK => :string,
         
     | 
| 
      
 335 
     | 
    
         
            +
                :AW_WORLD_CLOUDS_LAYER1_OPACITY => :int,
         
     | 
| 
      
 336 
     | 
    
         
            +
                :AW_WORLD_CLOUDS_LAYER1_SPEED_X => :float,
         
     | 
| 
      
 337 
     | 
    
         
            +
                :AW_WORLD_CLOUDS_LAYER1_SPEED_Z => :float,
         
     | 
| 
      
 338 
     | 
    
         
            +
                :AW_WORLD_CLOUDS_LAYER1_TEXTURE => :string,
         
     | 
| 
      
 339 
     | 
    
         
            +
                :AW_WORLD_CLOUDS_LAYER1_TILE => :float,
         
     | 
| 
      
 340 
     | 
    
         
            +
                :AW_WORLD_CLOUDS_LAYER2_MASK => :string,
         
     | 
| 
      
 341 
     | 
    
         
            +
                :AW_WORLD_CLOUDS_LAYER2_OPACITY => :int,
         
     | 
| 
      
 342 
     | 
    
         
            +
                :AW_WORLD_CLOUDS_LAYER2_SPEED_X => :float,
         
     | 
| 
      
 343 
     | 
    
         
            +
                :AW_WORLD_CLOUDS_LAYER2_SPEED_Z => :float,
         
     | 
| 
      
 344 
     | 
    
         
            +
                :AW_WORLD_CLOUDS_LAYER2_TEXTURE => :string,
         
     | 
| 
      
 345 
     | 
    
         
            +
                :AW_WORLD_CLOUDS_LAYER2_TILE => :float,
         
     | 
| 
      
 346 
     | 
    
         
            +
                :AW_WORLD_CLOUDS_LAYER3_MASK => :string,
         
     | 
| 
      
 347 
     | 
    
         
            +
                :AW_WORLD_CLOUDS_LAYER3_OPACITY => :int,
         
     | 
| 
      
 348 
     | 
    
         
            +
                :AW_WORLD_CLOUDS_LAYER3_SPEED_X => :float,
         
     | 
| 
      
 349 
     | 
    
         
            +
                :AW_WORLD_CLOUDS_LAYER3_SPEED_Z => :float,
         
     | 
| 
      
 350 
     | 
    
         
            +
                :AW_WORLD_CLOUDS_LAYER3_TEXTURE => :string,
         
     | 
| 
      
 351 
     | 
    
         
            +
                :AW_WORLD_CLOUDS_LAYER3_TILE => :float,
         
     | 
| 
      
 352 
     | 
    
         
            +
                :AW_WORLD_CREATION_TIMESTAMP => :int,
         
     | 
| 
      
 353 
     | 
    
         
            +
                :AW_WORLD_DISABLE_AVATAR_LIST => :bool,
         
     | 
| 
      
 354 
     | 
    
         
            +
                :AW_WORLD_DISABLE_CHAT => :bool,
         
     | 
| 
      
 355 
     | 
    
         
            +
                :AW_WORLD_DISABLE_CREATE_URL => :bool,
         
     | 
| 
      
 356 
     | 
    
         
            +
                :AW_WORLD_DISABLE_MULTIPLE_MEDIA => :bool,
         
     | 
| 
      
 357 
     | 
    
         
            +
                :AW_WORLD_DISABLE_SHADOWS => :bool,
         
     | 
| 
      
 358 
     | 
    
         
            +
                :AW_WORLD_EJECT_CAPABILITY => :bool,
         
     | 
| 
      
 359 
     | 
    
         
            +
                :AW_WORLD_EJECT_RIGHT => :string,
         
     | 
| 
      
 360 
     | 
    
         
            +
                :AW_WORLD_EMINENT_DOMAIN_CAPABILITY => :bool,
         
     | 
| 
      
 361 
     | 
    
         
            +
                :AW_WORLD_EMINENT_DOMAIN_RIGHT => :string,
         
     | 
| 
      
 362 
     | 
    
         
            +
                :AW_WORLD_ENABLE_BUMP_EVENT => :bool,
         
     | 
| 
      
 363 
     | 
    
         
            +
                :AW_WORLD_ENABLE_CAMERA_COLLISION => :bool,
         
     | 
| 
      
 364 
     | 
    
         
            +
                :AW_WORLD_ENABLE_CAV => :int,
         
     | 
| 
      
 365 
     | 
    
         
            +
                :AW_WORLD_ENABLE_PAV => :bool,
         
     | 
| 
      
 366 
     | 
    
         
            +
                :AW_WORLD_ENABLE_REFERER => :bool,
         
     | 
| 
      
 367 
     | 
    
         
            +
                :AW_WORLD_ENABLE_SYNC_EVENTS => :bool,
         
     | 
| 
      
 368 
     | 
    
         
            +
                :AW_WORLD_ENABLE_TERRAIN => :bool,
         
     | 
| 
      
 369 
     | 
    
         
            +
                :AW_WORLD_ENTER_RIGHT => :string,
         
     | 
| 
      
 370 
     | 
    
         
            +
                :AW_WORLD_ENTRY_POINT => :string,
         
     | 
| 
      
 371 
     | 
    
         
            +
                :AW_WORLD_EXPIRATION => :int,
         
     | 
| 
      
 372 
     | 
    
         
            +
                :AW_WORLD_FOG_BLUE => :int,
         
     | 
| 
      
 373 
     | 
    
         
            +
                :AW_WORLD_FOG_ENABLE => :bool,
         
     | 
| 
      
 374 
     | 
    
         
            +
                :AW_WORLD_FOG_GREEN => :int,
         
     | 
| 
      
 375 
     | 
    
         
            +
                :AW_WORLD_FOG_MAXIMUM => :int,
         
     | 
| 
      
 376 
     | 
    
         
            +
                :AW_WORLD_FOG_MINIMUM => :int,
         
     | 
| 
      
 377 
     | 
    
         
            +
                :AW_WORLD_FOG_RED => :int,
         
     | 
| 
      
 378 
     | 
    
         
            +
                :AW_WORLD_FOG_TINTED => :bool,
         
     | 
| 
      
 379 
     | 
    
         
            +
                :AW_WORLD_FRICTION => :float,
         
     | 
| 
      
 380 
     | 
    
         
            +
                :AW_WORLD_GRAVITY => :float,
         
     | 
| 
      
 381 
     | 
    
         
            +
                :AW_WORLD_GROUND => :string,
         
     | 
| 
      
 382 
     | 
    
         
            +
                :AW_WORLD_HOME_PAGE => :string,
         
     | 
| 
      
 383 
     | 
    
         
            +
                :AW_WORLD_KEYWORDS => :string,
         
     | 
| 
      
 384 
     | 
    
         
            +
                :AW_WORLD_LIGHT_BLUE => :int,
         
     | 
| 
      
 385 
     | 
    
         
            +
                :AW_WORLD_LIGHT_DRAW_BRIGHT => :bool,
         
     | 
| 
      
 386 
     | 
    
         
            +
                :AW_WORLD_LIGHT_DRAW_FRONT => :bool,
         
     | 
| 
      
 387 
     | 
    
         
            +
                :AW_WORLD_LIGHT_DRAW_SIZE => :int,
         
     | 
| 
      
 388 
     | 
    
         
            +
                :AW_WORLD_LIGHT_GREEN => :int,
         
     | 
| 
      
 389 
     | 
    
         
            +
                :AW_WORLD_LIGHT_MASK => :string,
         
     | 
| 
      
 390 
     | 
    
         
            +
                :AW_WORLD_LIGHT_RED => :int,
         
     | 
| 
      
 391 
     | 
    
         
            +
                :AW_WORLD_LIGHT_SOURCE_COLOR => :int,
         
     | 
| 
      
 392 
     | 
    
         
            +
                :AW_WORLD_LIGHT_SOURCE_USE_COLOR => :bool,
         
     | 
| 
      
 393 
     | 
    
         
            +
                :AW_WORLD_LIGHT_TEXTURE => :string,
         
     | 
| 
      
 394 
     | 
    
         
            +
                :AW_WORLD_LIGHT_X => :float,
         
     | 
| 
      
 395 
     | 
    
         
            +
                :AW_WORLD_LIGHT_Y => :float,
         
     | 
| 
      
 396 
     | 
    
         
            +
                :AW_WORLD_LIGHT_Z => :float,
         
     | 
| 
      
 397 
     | 
    
         
            +
                :AW_WORLD_MAX_LIGHT_RADIUS => :int,
         
     | 
| 
      
 398 
     | 
    
         
            +
                :AW_WORLD_MAX_USERS => :int,
         
     | 
| 
      
 399 
     | 
    
         
            +
                :AW_WORLD_MINIMUM_VISIBILITY => :int,
         
     | 
| 
      
 400 
     | 
    
         
            +
                :AW_WORLD_MOVER_EMPTY_RESET_TIMEOUT => :int,
         
     | 
| 
      
 401 
     | 
    
         
            +
                :AW_WORLD_MOVER_USED_RESET_TIMEOUT => :int,
         
     | 
| 
      
 402 
     | 
    
         
            +
                :AW_WORLD_NAME => :string,
         
     | 
| 
      
 403 
     | 
    
         
            +
                :AW_WORLD_OBJECT_COUNT => :int,
         
     | 
| 
      
 404 
     | 
    
         
            +
                :AW_WORLD_OBJECT_PASSWORD => :data,
         
     | 
| 
      
 405 
     | 
    
         
            +
                :AW_WORLD_OBJECT_PATH => :string,
         
     | 
| 
      
 406 
     | 
    
         
            +
                :AW_WORLD_OBJECT_REFRESH => :int,
         
     | 
| 
      
 407 
     | 
    
         
            +
                :AW_WORLD_PUBLIC_SPEAKER_CAPABILITY => :bool,
         
     | 
| 
      
 408 
     | 
    
         
            +
                :AW_WORLD_PUBLIC_SPEAKER_RIGHT => :string,
         
     | 
| 
      
 409 
     | 
    
         
            +
                :AW_WORLD_RATING => :int,
         
     | 
| 
      
 410 
     | 
    
         
            +
                :AW_WORLD_REPEATING_GROUND => :bool,
         
     | 
| 
      
 411 
     | 
    
         
            +
                :AW_WORLD_RESTRICTED_RADIUS => :int,
         
     | 
| 
      
 412 
     | 
    
         
            +
                :AW_WORLD_SIZE => :int,
         
     | 
| 
      
 413 
     | 
    
         
            +
                :AW_WORLD_SKY_BOTTOM_BLUE => :int,
         
     | 
| 
      
 414 
     | 
    
         
            +
                :AW_WORLD_SKY_BOTTOM_GREEN => :int,
         
     | 
| 
      
 415 
     | 
    
         
            +
                :AW_WORLD_SKY_BOTTOM_RED => :int,
         
     | 
| 
      
 416 
     | 
    
         
            +
                :AW_WORLD_SKY_EAST_BLUE => :int,
         
     | 
| 
      
 417 
     | 
    
         
            +
                :AW_WORLD_SKY_EAST_GREEN => :int,
         
     | 
| 
      
 418 
     | 
    
         
            +
                :AW_WORLD_SKY_EAST_RED => :int,
         
     | 
| 
      
 419 
     | 
    
         
            +
                :AW_WORLD_SKY_NORTH_BLUE => :int,
         
     | 
| 
      
 420 
     | 
    
         
            +
                :AW_WORLD_SKY_NORTH_GREEN => :int,
         
     | 
| 
      
 421 
     | 
    
         
            +
                :AW_WORLD_SKY_NORTH_RED => :int,
         
     | 
| 
      
 422 
     | 
    
         
            +
                :AW_WORLD_SKY_SOUTH_BLUE => :int,
         
     | 
| 
      
 423 
     | 
    
         
            +
                :AW_WORLD_SKY_SOUTH_GREEN => :int,
         
     | 
| 
      
 424 
     | 
    
         
            +
                :AW_WORLD_SKY_SOUTH_RED => :int,
         
     | 
| 
      
 425 
     | 
    
         
            +
                :AW_WORLD_SKY_TOP_BLUE => :int,
         
     | 
| 
      
 426 
     | 
    
         
            +
                :AW_WORLD_SKY_TOP_GREEN => :int,
         
     | 
| 
      
 427 
     | 
    
         
            +
                :AW_WORLD_SKY_TOP_RED => :int,
         
     | 
| 
      
 428 
     | 
    
         
            +
                :AW_WORLD_SKY_WEST_BLUE => :int,
         
     | 
| 
      
 429 
     | 
    
         
            +
                :AW_WORLD_SKY_WEST_GREEN => :int,
         
     | 
| 
      
 430 
     | 
    
         
            +
                :AW_WORLD_SKY_WEST_RED => :int,
         
     | 
| 
      
 431 
     | 
    
         
            +
                :AW_WORLD_SKYBOX => :string,
         
     | 
| 
      
 432 
     | 
    
         
            +
                :AW_WORLD_SLOPESLIDE_ENABLED => :bool,
         
     | 
| 
      
 433 
     | 
    
         
            +
                :AW_WORLD_SLOPESLIDE_MAX_ANGLE => :float,
         
     | 
| 
      
 434 
     | 
    
         
            +
                :AW_WORLD_SLOPESLIDE_MIN_ANGLE => :float,
         
     | 
| 
      
 435 
     | 
    
         
            +
                :AW_WORLD_SOUND_AMBIENT => :string,
         
     | 
| 
      
 436 
     | 
    
         
            +
                :AW_WORLD_SOUND_FOOTSTEP => :string,
         
     | 
| 
      
 437 
     | 
    
         
            +
                :AW_WORLD_SOUND_WATER_ENTER => :string,
         
     | 
| 
      
 438 
     | 
    
         
            +
                :AW_WORLD_SOUND_WATER_EXIT => :string,
         
     | 
| 
      
 439 
     | 
    
         
            +
                :AW_WORLD_SPEAK_CAPABILITY => :bool,
         
     | 
| 
      
 440 
     | 
    
         
            +
                :AW_WORLD_SPEAK_RIGHT => :string,
         
     | 
| 
      
 441 
     | 
    
         
            +
                :AW_WORLD_SPECIAL_COMMANDS => :string,
         
     | 
| 
      
 442 
     | 
    
         
            +
                :AW_WORLD_SPECIAL_COMMANDS_RIGHT => :string,
         
     | 
| 
      
 443 
     | 
    
         
            +
                :AW_WORLD_SPECIAL_OBJECTS_RIGHT => :string,
         
     | 
| 
      
 444 
     | 
    
         
            +
                :AW_WORLD_TERRAIN_AMBIENT => :float,
         
     | 
| 
      
 445 
     | 
    
         
            +
                :AW_WORLD_TERRAIN_DIFFUSE => :float,
         
     | 
| 
      
 446 
     | 
    
         
            +
                :AW_WORLD_TERRAIN_OFFSET => :float,
         
     | 
| 
      
 447 
     | 
    
         
            +
                :AW_WORLD_TERRAIN_RIGHT => :string,
         
     | 
| 
      
 448 
     | 
    
         
            +
                :AW_WORLD_TERRAIN_TIMESTAMP => :int,
         
     | 
| 
      
 449 
     | 
    
         
            +
                :AW_WORLD_TITLE => :string,
         
     | 
| 
      
 450 
     | 
    
         
            +
                :AW_WORLD_V4_OBJECTS_RIGHT => :string,
         
     | 
| 
      
 451 
     | 
    
         
            +
                :AW_WORLD_WAIT_LIMIT => :int,
         
     | 
| 
      
 452 
     | 
    
         
            +
                :AW_WORLD_WATER_BLUE => :int,
         
     | 
| 
      
 453 
     | 
    
         
            +
                :AW_WORLD_WATER_BOTTOM_MASK => :string,
         
     | 
| 
      
 454 
     | 
    
         
            +
                :AW_WORLD_WATER_BOTTOM_TEXTURE => :string,
         
     | 
| 
      
 455 
     | 
    
         
            +
                :AW_WORLD_WATER_ENABLED => :bool,
         
     | 
| 
      
 456 
     | 
    
         
            +
                :AW_WORLD_WATER_FRICTION => :float,
         
     | 
| 
      
 457 
     | 
    
         
            +
                :AW_WORLD_WATER_GREEN => :int,
         
     | 
| 
      
 458 
     | 
    
         
            +
                :AW_WORLD_WATER_LEVEL => :float,
         
     | 
| 
      
 459 
     | 
    
         
            +
                :AW_WORLD_WATER_MASK => :string,
         
     | 
| 
      
 460 
     | 
    
         
            +
                :AW_WORLD_WATER_OPACITY => :int,
         
     | 
| 
      
 461 
     | 
    
         
            +
                :AW_WORLD_WATER_RED => :int,
         
     | 
| 
      
 462 
     | 
    
         
            +
                :AW_WORLD_WATER_SPEED => :float,
         
     | 
| 
      
 463 
     | 
    
         
            +
                :AW_WORLD_WATER_SURFACE_MOVE => :float,
         
     | 
| 
      
 464 
     | 
    
         
            +
                :AW_WORLD_WATER_TEXTURE => :string,
         
     | 
| 
      
 465 
     | 
    
         
            +
                :AW_WORLD_WATER_UNDER_TERRAIN => :bool,
         
     | 
| 
      
 466 
     | 
    
         
            +
                :AW_WORLD_WATER_WAVE_MOVE => :float,
         
     | 
| 
      
 467 
     | 
    
         
            +
                :AW_WORLD_WATER_VISIBILITY => :int,
         
     | 
| 
      
 468 
     | 
    
         
            +
                :AW_WORLD_WELCOME_MESSAGE => :string,
         
     | 
| 
      
 469 
     | 
    
         
            +
                :AW_WORLD_VOIP_CONFERENCE_GLOBAL => :bool,
         
     | 
| 
      
 470 
     | 
    
         
            +
                :AW_WORLD_VOIP_MODERATE_GLOBAL => :bool,
         
     | 
| 
      
 471 
     | 
    
         
            +
                :AW_WORLD_VOIP_RIGHT => :string 
         
     | 
| 
      
 472 
     | 
    
         
            +
              }
         
     | 
| 
      
 473 
     | 
    
         
            +
                
         
     | 
| 
      
 474 
     | 
    
         
            +
              RETURN_CODE_MAP = {
         
     | 
| 
      
 475 
     | 
    
         
            +
                0 => {:error_symbol => :RC_SUCCESS, :error_explanation => "Success: Return value from an asynchronous call:	 	Request has been sent to the server.\nReturn value from a blocking call:	 	Operation has completed successfully.\nWhen passed to a callback:	 	Operation has completed successfully."},
         
     | 
| 
      
 476 
     | 
    
         
            +
                1 => {:error_symbol => :RC_CITIZENSHIP_EXPIRED, :error_explanation => "Citizenship has expired: Citizenship of the owner has expired."},
         
     | 
| 
      
 477 
     | 
    
         
            +
                2 => {:error_symbol => :RC_LAND_LIMIT_EXCEEDED, :error_explanation => "Land limit exceeded: Land limit of the universe would be exceeded if the world is started."},
         
     | 
| 
      
 478 
     | 
    
         
            +
                3 => {:error_symbol => :RC_NO_SUCH_CITIZEN, :error_explanation => "No such citizen: No citizenship with a matching citizen number was found."},
         
     | 
| 
      
 479 
     | 
    
         
            +
                5 => {:error_symbol => :RC_LICENSE_PASSWORD_CONTAINS_SPACE, :error_explanation => "License password contains space: Password cannot contain a space."},
         
     | 
| 
      
 480 
     | 
    
         
            +
                6 => {:error_symbol => :RC_LICENSE_PASSWORD_TOO_LONG, :error_explanation => "License password too long:  Password cannot be longer than 8 characters."},
         
     | 
| 
      
 481 
     | 
    
         
            +
                7 => {:error_symbol => :RC_LICENSE_PASSWORD_TOO_SHORT, :error_explanation => "License password too short: Password must be at least 2 characters."},
         
     | 
| 
      
 482 
     | 
    
         
            +
                8 => {:error_symbol => :RC_LICENSE_RANGE_TOO_LARGE, :error_explanation => "License range too large: Range must be smaller than 3275 hectometers. That is, at most 32750 coordinates N/S/W/E or 655000 meters across."},
         
     | 
| 
      
 483 
     | 
    
         
            +
                9 => {:error_symbol => :RC_LICENSE_RANGE_TOO_SMALL, :error_explanation => "License range too small: Range must be larger than 0 hectometers. That is, at least 10 coordinates N/S/W/E or 200 meters across."},
         
     | 
| 
      
 484 
     | 
    
         
            +
                10 => {:error_symbol => :RC_LICENSE_USERS_TOO_LARGE, :error_explanation => "License users too large: User limit cannot exceed 1024."},
         
     | 
| 
      
 485 
     | 
    
         
            +
                11 => {:error_symbol => :RC_LICENSE_USERS_TOO_SMALL, :error_explanation => "License users too small: User limit must be larger than 0."},
         
     | 
| 
      
 486 
     | 
    
         
            +
                13 => {:error_symbol => :RC_INVALID_PASSWORD, :error_explanation => "Invalid password: Unable to login due to invalid password."},
         
     | 
| 
      
 487 
     | 
    
         
            +
                15 => {:error_symbol => :RC_LICENSE_WORLD_TOO_SHORT, :error_explanation => "License world too short: Name must be at least 2 characters."},
         
     | 
| 
      
 488 
     | 
    
         
            +
                16 => {:error_symbol => :RC_LICENSE_WORLD_TOO_LONG, :error_explanation => "License world too long: Name cannot be longer than 8 characters."},
         
     | 
| 
      
 489 
     | 
    
         
            +
                20 => {:error_symbol => :RC_INVALID_WORLD, :error_explanation => "Invalid world: Unable to start the world due to invalid name or password."},
         
     | 
| 
      
 490 
     | 
    
         
            +
                21 => {:error_symbol => :RC_SERVER_OUTDATED, :error_explanation => "Server outdated: Server build either contains a serious flaw or is outdated and must be upgraded."},
         
     | 
| 
      
 491 
     | 
    
         
            +
                22 => {:error_symbol => :RC_WORLD_ALREADY_STARTED, :error_explanation => "World already started: World has already been started at a different location."},
         
     | 
| 
      
 492 
     | 
    
         
            +
                27 => {:error_symbol => :RC_NO_SUCH_WORLD, :error_explanation => "No such world: No world with a matching name has been started on the server."},
         
     | 
| 
      
 493 
     | 
    
         
            +
                32 => {:error_symbol => :RC_UNAUTHORIZED, :error_explanation => "Unauthorized: Not authorized to perform the operation."},
         
     | 
| 
      
 494 
     | 
    
         
            +
                33 => {:error_symbol => :RC_WORLD_ALREADY_EXISTS, :error_explanation => "World already exists: TODO: Might not be in use."},
         
     | 
| 
      
 495 
     | 
    
         
            +
                34 => {:error_symbol => :RC_NO_SUCH_LICENSE, :error_explanation => "No such license: No license with a matching world name was found."},
         
     | 
| 
      
 496 
     | 
    
         
            +
                57 => {:error_symbol => :RC_TOO_MANY_WORLDS, :error_explanation => "Too many worlds: Limit of started worlds in the universe would be exceeded if the world is started."},
         
     | 
| 
      
 497 
     | 
    
         
            +
                58 => {:error_symbol => :RC_MUST_UPGRADE, :error_explanation => "Must upgrade: SDK build either contains a serious flaw or is outdated and must be upgraded."},
         
     | 
| 
      
 498 
     | 
    
         
            +
                59 => {:error_symbol => :RC_BOT_LIMIT_EXCEEDED, :error_explanation => "Bot limit exceeded: Bot limit of the owner citizenship would be exceeded if the bot is logged in."},
         
     | 
| 
      
 499 
     | 
    
         
            +
                61 => {:error_symbol => :RC_WORLD_EXPIRED, :error_explanation => "World expired: Unable to start world due to its license having expired."},
         
     | 
| 
      
 500 
     | 
    
         
            +
                62 => {:error_symbol => :RC_CITIZEN_DOES_NOT_EXPIRE, :error_explanation => "Citizen does not expire: TODO: What is this used for?"},
         
     | 
| 
      
 501 
     | 
    
         
            +
                64 => {:error_symbol => :RC_LICENSE_STARTS_WITH_NUMBER, :error_explanation => "License starts with number: Name cannot start with a number."},
         
     | 
| 
      
 502 
     | 
    
         
            +
                66 => {:error_symbol => :RC_NO_SUCH_EJECTION, :error_explanation => "No such ejection: No ejection with a matching identifier was found."},
         
     | 
| 
      
 503 
     | 
    
         
            +
                67 => {:error_symbol => :RC_NO_SUCH_SESSION, :error_explanation => "No such session: No user with a matching session number has entered the world."},
         
     | 
| 
      
 504 
     | 
    
         
            +
                72 => {:error_symbol => :RC_WORLD_RUNNING, :error_explanation => "World running: World has already been started."},
         
     | 
| 
      
 505 
     | 
    
         
            +
                73 => {:error_symbol => :RC_WORLD_NOT_SET, :error_explanation => "World not set: World to perform the operation on has not been set."},
         
     | 
| 
      
 506 
     | 
    
         
            +
                74 => {:error_symbol => :RC_NO_SUCH_CELL, :error_explanation => "No such cell: No more cells left to enumerate."},
         
     | 
| 
      
 507 
     | 
    
         
            +
                75 => {:error_symbol => :RC_NO_REGISTRY, :error_explanation => "No registry: Unable to start world due to missing or invalid registry."},
         
     | 
| 
      
 508 
     | 
    
         
            +
                76 => {:error_symbol => :RC_CANT_OPEN_REGISTRY, :error_explanation => "Can't open registry"},
         
     | 
| 
      
 509 
     | 
    
         
            +
                77 => {:error_symbol => :RC_CITIZEN_DISABLED, :error_explanation => "Citizen disabled: Citizenship of the owner has been disabled."},
         
     | 
| 
      
 510 
     | 
    
         
            +
                78 => {:error_symbol => :RC_WORLD_DISABLED, :error_explanation => "World disabled: Unable to start world due to it having been disabled."},
         
     | 
| 
      
 511 
     | 
    
         
            +
                85 => {:error_symbol => :RC_TELEGRAM_BLOCKED, :error_explanation => "Telegram blocked"},
         
     | 
| 
      
 512 
     | 
    
         
            +
                88 => {:error_symbol => :RC_UNABLE_TO_UPDATE_TERRAIN, :error_explanation => "Unable to update terrain"},
         
     | 
| 
      
 513 
     | 
    
         
            +
                100 => {:error_symbol => :RC_EMAIL_CONTAINS_INVALID_CHAR, :error_explanation => "Email contains invalid char: Email address contains one or more invalid characters."},
         
     | 
| 
      
 514 
     | 
    
         
            +
                101 => {:error_symbol => :RC_EMAIL_ENDS_WITH_BLANK, :error_explanation => "Email ends with blank: Email address cannot end with a blank."},
         
     | 
| 
      
 515 
     | 
    
         
            +
                101 => {:error_symbol => :RC_NO_SUCH_OBJECT, :error_explanation => "No such object: Unable to find the object to delete."},
         
     | 
| 
      
 516 
     | 
    
         
            +
                102 => {:error_symbol => :RC_EMAIL_MISSING_DOT, :error_explanation => "Email missing dot: Email address must contain at least one '.'."},
         
     | 
| 
      
 517 
     | 
    
         
            +
                102 => {:error_symbol => :RC_NOT_DELETE_OWNER, :error_explanation => "Not delete owner"},
         
     | 
| 
      
 518 
     | 
    
         
            +
                103 => {:error_symbol => :RC_EMAIL_MISSING_AT, :error_explanation => "Email missing at: Email address must contain a '@'."},
         
     | 
| 
      
 519 
     | 
    
         
            +
                104 => {:error_symbol => :RC_EMAIL_STARTS_WITH_BLANK, :error_explanation => "Email starts with blank: Email address cannot start with a blank."},
         
     | 
| 
      
 520 
     | 
    
         
            +
                105 => {:error_symbol => :RC_EMAIL_TOO_LONG, :error_explanation => "Email too long: Email address cannot be longer than 50 characters."},
         
     | 
| 
      
 521 
     | 
    
         
            +
                106 => {:error_symbol => :RC_EMAIL_TOO_SHORT, :error_explanation => "Email too short: Email address must be at least 8 characters or longer."},
         
     | 
| 
      
 522 
     | 
    
         
            +
                107 => {:error_symbol => :RC_NAME_ALREADY_USED, :error_explanation => "Name already used: Citizenship with a matching name already exists."},
         
     | 
| 
      
 523 
     | 
    
         
            +
                108 => {:error_symbol => :RC_NAME_CONTAINS_NONALPHANUMERIC_CHAR, :error_explanation => "Name contains nonalphanumeric character: Name contains invalid character(s)."},
         
     | 
| 
      
 524 
     | 
    
         
            +
                109 => {:error_symbol => :RC_NAME_CONTAINS_INVALID_BLANK, :error_explanation => "Name contains invalid blank: Name contains invalid blank(s)."},
         
     | 
| 
      
 525 
     | 
    
         
            +
                111 => {:error_symbol => :RC_NAME_ENDS_WITH_BLANK, :error_explanation => "Name ends with blank: Name cannot end with a blank."},
         
     | 
| 
      
 526 
     | 
    
         
            +
                112 => {:error_symbol => :RC_NAME_TOO_LONG, :error_explanation => "Name too long: Name cannot be longer than 16 characters."},
         
     | 
| 
      
 527 
     | 
    
         
            +
                113 => {:error_symbol => :RC_NAME_TOO_SHORT, :error_explanation => "Name too short: Name must be at least 2 characters."},
         
     | 
| 
      
 528 
     | 
    
         
            +
                115 => {:error_symbol => :RC_PASSWORD_TOO_LONG, :error_explanation => "Password too long: Password cannot be longer than 12 characters."},
         
     | 
| 
      
 529 
     | 
    
         
            +
                116 => {:error_symbol => :RC_PASSWORD_TOO_SHORT, :error_explanation => "Password too short: Password must be at least 4 characters."},
         
     | 
| 
      
 530 
     | 
    
         
            +
                124 => {:error_symbol => :RC_UNABLE_TO_DELETE_CITIZEN, :error_explanation => "Unable to delete citizen: Unable to delete citizen due to a database problem."},
         
     | 
| 
      
 531 
     | 
    
         
            +
                126 => {:error_symbol => :RC_NUMBER_ALREADY_USED, :error_explanation => "Number already used: Citizenship with a matching citizen number already exists."},
         
     | 
| 
      
 532 
     | 
    
         
            +
                127 => {:error_symbol => :RC_NUMBER_OUT_OF_RANGE, :error_explanation => "Number out of range: Citizen number is larger than the auto-incremented field in the database."},
         
     | 
| 
      
 533 
     | 
    
         
            +
                128 => {:error_symbol => :RC_PRIVILEGE_PASSWORD_IS_TOO_SHORT, :error_explanation => "Privilege password is too short: Privilege password must be either empty or at least 4 characters."},
         
     | 
| 
      
 534 
     | 
    
         
            +
                129 => {:error_symbol => :RC_PRIVILEGE_PASSWORD_IS_TOO_LONG, :error_explanation => "Privilege password is too long: Password cannot be longer than 12 characters."},
         
     | 
| 
      
 535 
     | 
    
         
            +
                203 => {:error_symbol => :RC_NOT_CHANGE_OWNER, :error_explanation => "Not change owner: Not permitted to change the owner of an object. It requires eminent domain or caretaker capability."},
         
     | 
| 
      
 536 
     | 
    
         
            +
                204 => {:error_symbol => :RC_CANT_FIND_OLD_ELEMENT, :error_explanation => "Can't find old element: Unable to find the object to change."},
         
     | 
| 
      
 537 
     | 
    
         
            +
                212 => {:error_symbol => :RC_IMPOSTER, :error_explanation => "Imposter: Unable to enter world due to masquerading as someone else."},
         
     | 
| 
      
 538 
     | 
    
         
            +
                300 => {:error_symbol => :RC_ENCROACHES, :error_explanation => "Encroaches: Not allowed to encroach into another's property."},
         
     | 
| 
      
 539 
     | 
    
         
            +
                301 => {:error_symbol => :RC_OBJECT_TYPE_INVALID, :error_explanation => "Object type invalid"},
         
     | 
| 
      
 540 
     | 
    
         
            +
                303 => {:error_symbol => :RC_TOO_MANY_BYTES, :error_explanation => "Too many bytes: Cell limit would be exceeded."},
         
     | 
| 
      
 541 
     | 
    
         
            +
                306 => {:error_symbol => :RC_UNREGISTERED_OBJECT, :error_explanation => "Unregistered object: Model name does not exist in the registry."},
         
     | 
| 
      
 542 
     | 
    
         
            +
                308 => {:error_symbol => :RC_ELEMENT_ALREADY_EXISTS, :error_explanation => "Element already exists"},
         
     | 
| 
      
 543 
     | 
    
         
            +
                309 => {:error_symbol => :RC_RESTRICTED_COMMAND, :error_explanation => "Restricted command"},
         
     | 
| 
      
 544 
     | 
    
         
            +
                311 => {:error_symbol => :RC_OUT_OF_BOUNDS, :error_explanation => "Out of bounds"},
         
     | 
| 
      
 545 
     | 
    
         
            +
                313 => {:error_symbol => :RC_RESTRICTED_OBJECT, :error_explanation => "Restricted object: Not allowed to build with 'z' objects in this world."},
         
     | 
| 
      
 546 
     | 
    
         
            +
                314 => {:error_symbol => :RC_RESTRICTED_AREA, :error_explanation => "Restricted area: Not allowed to build within the restricted area of this world."},
         
     | 
| 
      
 547 
     | 
    
         
            +
                401 => {:error_symbol => :RC_NOT_YET, :error_explanation => "Not yet: Would exceed the maximum number of operations per second."},
         
     | 
| 
      
 548 
     | 
    
         
            +
                402 => {:error_symbol => :RC_TIMEOUT, :error_explanation => "Timeout: Synchronous operation timed out."},
         
     | 
| 
      
 549 
     | 
    
         
            +
                404 => {:error_symbol => :RC_UNABLE_TO_CONTACT_UNIVERSE, :error_explanation => "Unable to contact universe: Unable to establish a connection to the universe server."},
         
     | 
| 
      
 550 
     | 
    
         
            +
                439 => {:error_symbol => :RC_NO_CONNECTION, :error_explanation => "No connection: Connection to the server is down."},
         
     | 
| 
      
 551 
     | 
    
         
            +
                444 => {:error_symbol => :RC_NOT_INITIALIZED, :error_explanation => "Not initialized: SDK API has not been initialized (by calling aw_init)."},
         
     | 
| 
      
 552 
     | 
    
         
            +
                445 => {:error_symbol => :RC_NO_INSTANCE, :error_explanation => "No instance"},
         
     | 
| 
      
 553 
     | 
    
         
            +
                448 => {:error_symbol => :RC_INVALID_ATTRIBUTE, :error_explanation => "Invalid attribute"},
         
     | 
| 
      
 554 
     | 
    
         
            +
                449 => {:error_symbol => :RC_TYPE_MISMATCH, :error_explanation => "Type mismatch"},
         
     | 
| 
      
 555 
     | 
    
         
            +
                450 => {:error_symbol => :RC_STRING_TOO_LONG, :error_explanation => "String too long"},
         
     | 
| 
      
 556 
     | 
    
         
            +
                451 => {:error_symbol => :RC_READ_ONLY, :error_explanation => "Read only: Unable to set attribute due to it being read-only."},
         
     | 
| 
      
 557 
     | 
    
         
            +
                453 => {:error_symbol => :RC_INVALID_INSTANCE, :error_explanation => "Invalid instance"},
         
     | 
| 
      
 558 
     | 
    
         
            +
                454 => {:error_symbol => :RC_VERSION_MISMATCH, :error_explanation => "Version mismatch: Aw.h and Aw.dll (or libaw_sdk.so for Linux) are from different builds of the SDK."},
         
     | 
| 
      
 559 
     | 
    
         
            +
                464 => {:error_symbol => :RC_QUERY_IN_PROGRESS, :error_explanation => "Query in progress: A property query is already in progress."},
         
     | 
| 
      
 560 
     | 
    
         
            +
                466 => {:error_symbol => :RC_EJECTED, :error_explanation => "Ejected: Disconnected from world due to ejection."},
         
     | 
| 
      
 561 
     | 
    
         
            +
                467 => {:error_symbol => :RC_NOT_WELCOME, :error_explanation => "Not welcome: Citizenship of the owner does not have bot rights in the world."},
         
     | 
| 
      
 562 
     | 
    
         
            +
                471 => {:error_symbol => :RC_CONNECTION_LOST, :error_explanation => "Connection lost"},
         
     | 
| 
      
 563 
     | 
    
         
            +
                474 => {:error_symbol => :RC_NOT_AVAILABLE, :error_explanation => "Not available"},
         
     | 
| 
      
 564 
     | 
    
         
            +
                500 => {:error_symbol => :RC_CANT_RESOLVE_UNIVERSE_HOST, :error_explanation => "Can't resolve universe host"},
         
     | 
| 
      
 565 
     | 
    
         
            +
                505 => {:error_symbol => :RC_INVALID_ARGUMENT, :error_explanation => "Invalid argument"},
         
     | 
| 
      
 566 
     | 
    
         
            +
                514 => {:error_symbol => :RC_UNABLE_TO_UPDATE_CAV, :error_explanation => "Unable to update custom avatar"},
         
     | 
| 
      
 567 
     | 
    
         
            +
                515 => {:error_symbol => :RC_UNABLE_TO_DELETE_CAV, :error_explanation => "Unable to delete custom avatar"},
         
     | 
| 
      
 568 
     | 
    
         
            +
                516 => {:error_symbol => :RC_NO_SUCH_CAV, :error_explanation => "No such custom avatar"},
         
     | 
| 
      
 569 
     | 
    
         
            +
                521 => {:error_symbol => :RC_WORLD_INSTANCE_ALREADY_EXISTS, :error_explanation => "World instance already exists"},
         
     | 
| 
      
 570 
     | 
    
         
            +
                522 => {:error_symbol => :RC_WORLD_INSTANCE_INVALID, :error_explanation => "World instance invalid"},
         
     | 
| 
      
 571 
     | 
    
         
            +
                523 => {:error_symbol => :RC_PLUGIN_NOT_AVAILABLE, :error_explanation => "Plugin not available"},
         
     | 
| 
      
 572 
     | 
    
         
            +
                600 => {:error_symbol => :RC_DATABASE_ERROR, :error_explanation => "Database error"},
         
     | 
| 
      
 573 
     | 
    
         
            +
                4995 => {:error_symbol => :RC_Z_BUF_ERROR, :error_explanation => "Buffer error (zlib)	Not enough room in the output buffer."},
         
     | 
| 
      
 574 
     | 
    
         
            +
                4996 => {:error_symbol => :RC_Z_MEM_ERROR, :error_explanation => "Memory error (zlib): Memory could not be allocated for processing."},
         
     | 
| 
      
 575 
     | 
    
         
            +
                4997 => {:error_symbol => :RC_Z_DATA_ERROR, :error_explanation => "Data error (zlib): Input data was corrupted."}
         
     | 
| 
      
 576 
     | 
    
         
            +
              }
         
     | 
| 
      
 577 
     | 
    
         
            +
              
         
     | 
| 
      
 578 
     | 
    
         
            +
              RETURN_CODE_SYMBOL_MAP = begin
         
     | 
| 
      
 579 
     | 
    
         
            +
                h = {}
         
     | 
| 
      
 580 
     | 
    
         
            +
                RETURN_CODE_MAP.each_pair do |rc_int,hsh|
         
     | 
| 
      
 581 
     | 
    
         
            +
                  h.merge!({hsh[:error_symbol] => {:rc => rc_int, :error_explanation => hsh[:error_explanation]}})
         
     | 
| 
      
 582 
     | 
    
         
            +
                end
         
     | 
| 
      
 583 
     | 
    
         
            +
                h
         
     | 
| 
      
 584 
     | 
    
         
            +
              end
         
     | 
| 
      
 585 
     | 
    
         
            +
              
         
     | 
| 
      
 586 
     | 
    
         
            +
            end
         
     | 
    
        data/lib/ruby_aw.rb
    ADDED
    
    | 
         @@ -0,0 +1,84 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            require 'ruby_activeworld'
         
     | 
| 
      
 2 
     | 
    
         
            +
            require 'ruby_activeworld_support'
         
     | 
| 
      
 3 
     | 
    
         
            +
             
     | 
| 
      
 4 
     | 
    
         
            +
            class RubyAw < RubyActiveworld
         
     | 
| 
      
 5 
     | 
    
         
            +
              include RubyActiveworldSupport
         
     | 
| 
      
 6 
     | 
    
         
            +
              
         
     | 
| 
      
 7 
     | 
    
         
            +
              @@attrs_available_to = {}
         
     | 
| 
      
 8 
     | 
    
         
            +
              
         
     | 
| 
      
 9 
     | 
    
         
            +
              def initialize(host, port, global_bot=false)
         
     | 
| 
      
 10 
     | 
    
         
            +
                @@init_run ||= false
         
     | 
| 
      
 11 
     | 
    
         
            +
                if ! @@init_run
         
     | 
| 
      
 12 
     | 
    
         
            +
                  @@init_run = true
         
     | 
| 
      
 13 
     | 
    
         
            +
                  self.class.ruby_aw_init(AW_BUILD)
         
     | 
| 
      
 14 
     | 
    
         
            +
                end
         
     | 
| 
      
 15 
     | 
    
         
            +
                super(host, port)
         
     | 
| 
      
 16 
     | 
    
         
            +
                ruby_aw_bool_set(AW_ENTER_GLOBAL, global_bot);
         
     | 
| 
      
 17 
     | 
    
         
            +
              end  
         
     | 
| 
      
 18 
     | 
    
         
            +
             
     | 
| 
      
 19 
     | 
    
         
            +
              def login(name, owner_id, privilege_pass, application="")
         
     | 
| 
      
 20 
     | 
    
         
            +
                ruby_aw_string_set(AW_LOGIN_NAME, name);
         
     | 
| 
      
 21 
     | 
    
         
            +
                ruby_aw_string_set(AW_LOGIN_PRIVILEGE_PASSWORD, privilege_pass);
         
     | 
| 
      
 22 
     | 
    
         
            +
                ruby_aw_int_set(AW_LOGIN_OWNER, owner_id);
         
     | 
| 
      
 23 
     | 
    
         
            +
                ruby_aw_string_set(AW_LOGIN_APPLICATION, application) if ! application.empty?
         
     | 
| 
      
 24 
     | 
    
         
            +
                ruby_aw_login
         
     | 
| 
      
 25 
     | 
    
         
            +
              end
         
     | 
| 
      
 26 
     | 
    
         
            +
              
         
     | 
| 
      
 27 
     | 
    
         
            +
              def enter(worldname)
         
     | 
| 
      
 28 
     | 
    
         
            +
                rc_sym ruby_aw_enter(worldname)
         
     | 
| 
      
 29 
     | 
    
         
            +
              end
         
     | 
| 
      
 30 
     | 
    
         
            +
              
         
     | 
| 
      
 31 
     | 
    
         
            +
              # This "registers" the bot as being interested in the named event
         
     | 
| 
      
 32 
     | 
    
         
            +
              def receive(callback) 
         
     | 
| 
      
 33 
     | 
    
         
            +
                send("receive_#{callback.to_s.downcase}") 
         
     | 
| 
      
 34 
     | 
    
         
            +
              end
         
     | 
| 
      
 35 
     | 
    
         
            +
             
     | 
| 
      
 36 
     | 
    
         
            +
              def attributes_for(callback)
         
     | 
| 
      
 37 
     | 
    
         
            +
                params = {}
         
     | 
| 
      
 38 
     | 
    
         
            +
                @@attrs_available_to[callback].each do |aw_attr|
         
     | 
| 
      
 39 
     | 
    
         
            +
                  params[aw_attr] = aw_attribute_to_ruby(aw_attr)
         
     | 
| 
      
 40 
     | 
    
         
            +
                end
         
     | 
| 
      
 41 
     | 
    
         
            +
                params
         
     | 
| 
      
 42 
     | 
    
         
            +
              end
         
     | 
| 
      
 43 
     | 
    
         
            +
              
         
     | 
| 
      
 44 
     | 
    
         
            +
              def aw_attribute_to_ruby(attribute)
         
     | 
| 
      
 45 
     | 
    
         
            +
                eval "ruby_aw_#{get_aw_attribute_type(attribute)}(#{attribute})"
         
     | 
| 
      
 46 
     | 
    
         
            +
              end
         
     | 
| 
      
 47 
     | 
    
         
            +
              
         
     | 
| 
      
 48 
     | 
    
         
            +
              def get_aw_attribute_type(attribute)
         
     | 
| 
      
 49 
     | 
    
         
            +
                ATTRIBUTE_TYPE_MAP[attribute.to_sym]
         
     | 
| 
      
 50 
     | 
    
         
            +
              end
         
     | 
| 
      
 51 
     | 
    
         
            +
              
         
     | 
| 
      
 52 
     | 
    
         
            +
              def self.attributes_available_to(callback, *attributes)
         
     | 
| 
      
 53 
     | 
    
         
            +
                @@attrs_available_to[callback] = attributes
         
     | 
| 
      
 54 
     | 
    
         
            +
              end
         
     | 
| 
      
 55 
     | 
    
         
            +
              
         
     | 
| 
      
 56 
     | 
    
         
            +
              attributes_available_to :AW_EVENT_AVATAR_ADD, :AW_AVATAR_SESSION, :AW_AVATAR_NAME,
         
     | 
| 
      
 57 
     | 
    
         
            +
                  :AW_AVATAR_X, :AW_AVATAR_Y, :AW_AVATAR_Z, :AW_AVATAR_YAW, :AW_AVATAR_TYPE, :AW_AVATAR_GESTURE, :AW_AVATAR_VERSION,
         
     | 
| 
      
 58 
     | 
    
         
            +
                  :AW_AVATAR_CITIZEN, :AW_AVATAR_PRIVILEGE, :AW_AVATAR_PITCH, :AW_AVATAR_STATE, :AW_PLUGIN_STRING
         
     | 
| 
      
 59 
     | 
    
         
            +
             
     | 
| 
      
 60 
     | 
    
         
            +
              attributes_available_to :AW_EVENT_AVATAR_DELETE, :AW_AVATAR_SESSION, :AW_AVATAR_NAME,
         
     | 
| 
      
 61 
     | 
    
         
            +
                  :AW_AVATAR_X, :AW_AVATAR_Y, :AW_AVATAR_Z, :AW_AVATAR_YAW, :AW_AVATAR_TYPE, :AW_AVATAR_GESTURE, :AW_AVATAR_VERSION,
         
     | 
| 
      
 62 
     | 
    
         
            +
                  :AW_AVATAR_CITIZEN, :AW_AVATAR_PRIVILEGE, :AW_AVATAR_PITCH, :AW_AVATAR_STATE, :AW_PLUGIN_STRING
         
     | 
| 
      
 63 
     | 
    
         
            +
             
     | 
| 
      
 64 
     | 
    
         
            +
              attributes_available_to :AW_EVENT_CHAT, :AW_AVATAR_NAME, :AW_CHAT_SESSION, :AW_CHAT_TYPE, :AW_CHAT_MESSAGE
         
     | 
| 
      
 65 
     | 
    
         
            +
              attributes_available_to :AW_EVENT_AVATAR_CLICK, :AW_AVATAR_NAME, :AW_AVATAR_SESSION, :AW_CLICKED_NAME, :AW_CLICKED_SESSION
         
     | 
| 
      
 66 
     | 
    
         
            +
             
     | 
| 
      
 67 
     | 
    
         
            +
              attributes_available_to :AW_EVENT_USER_INFO, :AW_USERLIST_ID, :AW_USERLIST_NAME, :AW_USERLIST_WORLD, 
         
     | 
| 
      
 68 
     | 
    
         
            +
                  :AW_USERLIST_CITIZEN, :AW_USERLIST_STATE
         
     | 
| 
      
 69 
     | 
    
         
            +
             
     | 
| 
      
 70 
     | 
    
         
            +
              attributes_available_to :AW_EVENT_OBJECT_ADD, :AW_OBJECT_SESSION, :AW_CELL_SEQUENCE, 
         
     | 
| 
      
 71 
     | 
    
         
            +
                  :AW_CELL_X, :AW_CELL_Z, :AW_OBJECT_TYPE, :AW_OBJECT_ID, :AW_OBJECT_NUMBER, :AW_OBJECT_OWNER, 
         
     | 
| 
      
 72 
     | 
    
         
            +
                  :AW_OBJECT_BUILD_TIMESTAMP, :AW_OBJECT_X, :AW_OBJECT_Y, :AW_OBJECT_Z, :AW_OBJECT_YAW, :AW_OBJECT_TILT, 
         
     | 
| 
      
 73 
     | 
    
         
            +
                  :AW_OBJECT_ROLL, :AW_OBJECT_MODEL, :AW_OBJECT_DESCRIPTION, :AW_OBJECT_ACTION, :AW_OBJECT_DATA
         
     | 
| 
      
 74 
     | 
    
         
            +
             
     | 
| 
      
 75 
     | 
    
         
            +
              attributes_available_to :AW_EVENT_OBJECT_DELETE, :AW_OBJECT_SESSION, :AW_CELL_SEQUENCE, 
         
     | 
| 
      
 76 
     | 
    
         
            +
                  :AW_CELL_X, :AW_CELL_Z, :AW_OBJECT_ID, :AW_OBJECT_NUMBER
         
     | 
| 
      
 77 
     | 
    
         
            +
             
     | 
| 
      
 78 
     | 
    
         
            +
              attributes_available_to :AW_EVENT_URL, :AW_AVATAR_SESSION, :AW_AVATAR_NAME, :AW_URL_NAME, :AW_URL_POST,
         
     | 
| 
      
 79 
     | 
    
         
            +
                  :AW_URL_TARGET, :AW_URL_TARGET_3D
         
     | 
| 
      
 80 
     | 
    
         
            +
             
     | 
| 
      
 81 
     | 
    
         
            +
              attributes_available_to :AW_EVENT_UNIVERSE_DISCONNECT, :AW_DISCONNECT_REASON  
         
     | 
| 
      
 82 
     | 
    
         
            +
              attributes_available_to :AW_EVENT_WORLD_DISCONNECT, :AW_DISCONNECT_REASON
         
     | 
| 
      
 83 
     | 
    
         
            +
             
     | 
| 
      
 84 
     | 
    
         
            +
            end
         
     |