ThreadBoard ArchivesSite FeaturesActiveworlds SupportHistoric Archives |
vbsdk com wrapper (Sdk)
vbsdk com wrapper // Sdkthe derekSep 10, 2002, 11:11pm
ummm how do use it?
i assume by using "delcare function" in a module or whatever like u do with the windowsAPI but im not sure. will the help files ever be updated? robbieSep 11, 2002, 4:57am
New Project > Project > Components > AwSdkOcx4 (or whatever version you
downloaded) > OK Now click the new AW button on the tool bar on hte left and drag it onto your form. Rename it to somthing easier to type in code like SDK. They way it works if you do sdk.xxxxxx(xxxx,xxxx,xx) or whatever in the code. For example to do a quick login: sdk.awinit sdk.quicklogin 315021, youwish, aw, fredthebot, bot, 10000, 0, 50000, 5 sdk.say "I like fish." sdk.awterm somthing like that anyway - its been a while and it is 7:30AM :) Thats the old way of doing too, the way you would do it on version 4 or lower (which i prefer). -Robbie [View Quote] kahSep 11, 2002, 4:09pm
"robbie" <thetruth at awteen.org> wrote in
news:3d7ee94b at server1.Activeworlds.com: > sdk.awinit > sdk.quicklogin 315021, youwish, aw, fredthebot, bot, 10000, 0, 50000, 5 > sdk.say "I like fish." > sdk.awterm The COM wrapper uses the same names (pretty much) as in the standard C/C++ SDK, so it's sdk.aw_init (AW_BUILD) [login code, and I mean full login, it should always be prefered over QuickLogin] sdk.aw_say "I like fish. Yeah, I know, I'm weird." sdk.aw_term KAH strike rapierSep 19, 2002, 3:25pm
sdk.QuickLongStart + Other Rubbish
Global Xcoord As Long 'X coordinate for Coords statement Global Ycoord As Long 'Y coordinate for Coords statement Global Zcoord As Long 'Z coordinate for Coords statement Global YAWcoord As Long Global BolCoordsSet as boolean '-------------------------------------------------------------------- Public Sub Login_Bot(Citnum As Long, PPW As String, BotName As String, Avatar As Integer, World As String, X As Long, Y As Long, Z As Long, YAW As Long, GlobalMode As Boolean, Invisible As Boolean, Universal As Boolean) Dim rc As Long, LoginTime As Long, vbDoubleTab As String vbDoubleTab = vbTab & vbTab LoginTime = Timer With FrmMain.sdk 'Create instance rc = .aw_create("auth.activeworlds.com", 5670) If rc Then Display Time & vbTab & "Could not create instance in Active Worlds - Reason: " & ARC_Lookup(rc), vbRed Status "Could not create instance in Active Worlds - Reason: " & ARC_Lookup(rc), vbRed Exit Sub Else Display Time & vbTab & "Successfully created instance in Active Worlds", vbBlue Status "Successfully created instance in Active Worlds - Time Taken: " & (Timer - logintimer), vbBlue End If .aw_int_set AW_LOGIN_OWNER, 334303 .aw_string_set AW_LOGIN_PRIVILEGE_PASSWORD, PPW .aw_string_set AW_LOGIN_NAME, BotName .aw_string_set AW_LOGIN_APPLICATION, "Your_App_Here" rc = .aw_login If rc Then Display "Could not login - Reason: " & ARC_Lookup(rc), vbRed Status "Could not login - Reason: " & ARC_Lookup(rc), vbRed Exit Sub Else Display Time & vbTab & BotName & " sucessfully logged into Universe Active Worlds - Level 3", vbBlue Status BotName & " sucessfully logged into Universe Active Worlds - Time Taken: " & (Timer - logintimer), vbBlue Display Time & vbTab & "Universe Immigration Officer: " & FrmMain.sdk.aw_string(AW_UNIVERSE_WELCOME_MESSAGE), vbDarkGreen Status "Recieved Universal Immigration Officer: " & FrmMain.sdk.aw_string(AW_UNIVERSE_WELCOME_MESSAGE), vbDarkGreen End If If Universal = True Then Status "Holding at universal level (3) - Total login time: " & (Timer - logintimer), vbBlue FrmLogin.Visible = False Exit Sub End If If GlobalMode = True Then .aw_bool_set AW_ENTER_GLOBAL, True Else .aw_bool_set AW_ENTER_GLOBAL, False End If rc = .aw_enter(World) If rc Then Display Time & vbTab & BotName & " could not enter '" & World & "' - Reason: " & ARC_Lookup(rc), vbRed Status BotName & " could not enter '" & World & "' - Reason: " & ARC_Lookup(rc), vbRed Exit Sub Else Display Time & vbTab & BotName & " enters the world '" & World & "'", vbBlue Status BotName & " enters the world '" & World & "'", vbBlue Display Time & vbTab & "World Immigration Officer: " & FrmMain.sdk.aw_string(AW_WORLD_WELCOME_MESSAGE), vbDarkGreen Status "Recieved World Immigration Officer: " & FrmMain.sdk.aw_string(AW_WORLD_WELCOME_MESSAGE), vbDarkGreen End If If Invisible = True Then Status "Holding at world level (2) - Total login time: " & (Timer - logintimer), vbBlue FrmLogin.Visible = False Exit Sub End If '67N 2750E .aw_int_set AW_MY_X, X .aw_int_set AW_MY_Y, Y .aw_int_set AW_MY_Z, Z .aw_int_set AW_MY_YAW, YAW .aw_int_set AW_MY_TYPE, Avatar Status "Setting SDK coordinate values - X: " & X & " Y: " & Y & " Z: " & Z & " YAW: " & YAW, vbBlue Status "Evaluating SDK coordinates - Target Set: " & StringCoords(X, Y, Z, YAW), vbBlue rc = .aw_state_change If rc Then Display Time & vbTab & BotName & " could not state change - Reason: " & ARC_Lookup(rc), vbRed Status BotName & " could not state change - Reason: " & ARC_Lookup(rc), vbRed Exit Sub Else Display Time & vbTab & BotName & " enters the world '" & World & "' at the physical level", vbBlue Status BotName & " enters the world '" & World & "' at the physical level", vbBlue End If Status "Holding at Physical level (1) - Total login time: " & (Timer - logintimer), vbBlue End With End Sub '-------------------------------------------------------------------- Function RC_Lookup(rc As Long) As String Select Case rc Case 0 RC_Lookup = "Success" Case 1 RC_Lookup = "Citizenship Expired" Case 3 RC_Lookup = "No Such Citizen" Case 4 RC_Lookup = "Message Length Bad" Case 5 RC_Lookup = "License Password Contains Space" Case 6 RC_Lookup = "License Password Too Long" Case 7 RC_Lookup = "License Password Too Short" Case 8 RC_Lookup = "License Range Too Large" Case 9 RC_Lookup = "License Range Too Small" Case 10 RC_Lookup = "License Users Too Large" Case 11 RC_Lookup = "License Users Too Small" Case 12 RC_Lookup = "License World Contains Space" Case 13 RC_Lookup = "Invalid Password" Case 14 RC_Lookup = "Unable To Mail Back Number" Case 15 RC_Lookup = "License World Too Short" Case 16 RC_Lookup = "License World Too Long" Case 17 RC_Lookup = "Server Out Of Memory" Case 27 RC_Lookup = "No Such World" Case 31 RC_Lookup = "Not Logged In" Case 32 RC_Lookup = "Unauthorized" Case 33 RC_Lookup = "World Already Exists" Case 34 RC_Lookup = "No Such License" Case 39 RC_Lookup = "Identity Already In Use" Case 40 RC_Lookup = "Unable To Report Location" Case 41 RC_Lookup = "Invalid Email" Case 42 RC_Lookup = "No Such Acting Citizen" Case 43 RC_Lookup = "Acting Password Invalid" Case 58 RC_Lookup = "Must Upgrade" Case 59 RC_Lookup = "Bot Limit Exceeded" Case 64 RC_Lookup = "License Starts With Number" Case 66 RC_Lookup = "No Such Ejection" Case 67 RC_Lookup = "No Such Session" Case 69 RC_Lookup = "Ejection Expired" Case 70 RC_Lookup = "Acting Citizen Expired" Case 71 RC_Lookup = "Already Started" Case 72 RC_Lookup = "World Running" Case 73 RC_Lookup = "World Not Set" Case 74 RC_Lookup = "No Such Cell" Case 75 RC_Lookup = "No Registry" Case 76 RC_Lookup = "Cant Open Registry" Case 77 RC_Lookup = "Citizen Disabled" Case 78 RC_Lookup = "World Disabled" Case 100 RC_Lookup = "Email Contains Invalid Char" Case 101 RC_Lookup = "Email Ends With Blank" Case 102 RC_Lookup = "Email Missing Dot" Case 103 RC_Lookup = "Email Missing At" Case 104 RC_Lookup = "Email Starts With Blank" Case 105 RC_Lookup = "Email Too Long" Case 106 RC_Lookup = "Email Too Short" Case 107 RC_Lookup = "Name Already Used" Case 108 RC_Lookup = "Name Contains Invalid Char" Case 109 RC_Lookup = "Name Contains Invalid Blank" Case 110 RC_Lookup = "Name Doesnt Exist" Case 111 RC_Lookup = "Name Ends With Blank" Case 112 RC_Lookup = "Name Too Long" Case 113 RC_Lookup = "Name Too Short" Case 114 RC_Lookup = "Name Unused" Case 115 RC_Lookup = "Password Too Long" Case 116 RC_Lookup = "Password Too Short" Case 117 RC_Lookup = "Password Is Wrong" Case 119 RC_Lookup = "Unable To Delete Name" Case 120 RC_Lookup = "Unable To Get Citizen" Case 121 RC_Lookup = "Unable To Insert Citizen" Case 122 RC_Lookup = "Unable To Insert Name" Case 123 RC_Lookup = "Unable To Put Citizen Count" Case 124 RC_Lookup = "Unable To Delete Citizen" Case 126 RC_Lookup = "Number Already Used" Case 127 RC_Lookup = "Number Out Of Range" Case 128 RC_Lookup = "Privilege Password Is Too Short" Case 129 RC_Lookup = "Privilege Password Is Too Long" Case 130 RC_Lookup = "Old Database" Case 131 RC_Lookup = "Start Transact Failed" Case 203 RC_Lookup = "Not Change Owner" Case 204 RC_Lookup = "Cant Find Old Element" Case 211 RC_Lookup = "Cant Change Owner" Case 216 RC_Lookup = "Cant Build Here" Case 232 RC_Lookup = "Not Allowed" Case 300 RC_Lookup = "Encroaches" Case 301 RC_Lookup = "No Such Object" Case 302 RC_Lookup = "Not Delete Owner" Case 303 RC_Lookup = "Too Many Bytes" Case 306 RC_Lookup = "Unregistered Object" Case 308 RC_Lookup = "Element Already Exists" Case 309 RC_Lookup = "Restricted Command" Case 310 RC_Lookup = "No Build Rights" Case 311 RC_Lookup = "Out Of Bounds" Case 313 RC_Lookup = "Restricted Object" Case 314 RC_Lookup = "Restricted Area" Case 400 RC_Lookup = "Out Of Memory" Case 401 RC_Lookup = "Not Yet" Case 402 RC_Lookup = "Timeout" Case 403 RC_Lookup = "Null Pointer" Case 404 RC_Lookup = "Unable To Contact Universe" Case 405 RC_Lookup = "Unable To Contact World" Case 406 RC_Lookup = "Invalid World Name" Case 415 RC_Lookup = "Send Failed" Case 416 RC_Lookup = "Receive Failed" Case 421 RC_Lookup = "Stream Empty" Case 422 RC_Lookup = "Stream Message Too Long" Case 423 RC_Lookup = "World Name Too Long" Case 426 RC_Lookup = "Message Too Long" Case 429 RC_Lookup = "Unable To Connect" Case 439 RC_Lookup = "No Connection" Case 442 RC_Lookup = "Unable To Initialize Network" Case 443 RC_Lookup = "Incorrect Message Length" Case 444 RC_Lookup = "Not Initialized" Case 445 RC_Lookup = "No Instance" Case 446 RC_Lookup = "Out Buffer Full" Case 447 RC_Lookup = "Invalid Callback" Case 448 RC_Lookup = "Invalid Attribute" Case 449 RC_Lookup = "Type Mismatch" Case 450 RC_Lookup = "String Too Long" Case 451 RC_Lookup = "Read Only" Case 453 RC_Lookup = "Invalid Instance" Case 454 RC_Lookup = "Version Mismatch" Case 461 RC_Lookup = "In Buffer Full" Case 463 RC_Lookup = "Protocol Error" Case 464 RC_Lookup = "Query In Progress" Case 466 RC_Lookup = "Ejected" Case 467 RC_Lookup = "Not Welcome" Case 471 RC_Lookup = "Connection Lost" Case 474 RC_Lookup = "Not Available" Case 488 RC_Lookup = "Old World" Case 489 RC_Lookup = "World Not Running" Case 666 RC_Lookup = "Welcome to the apocolypse" Case Else RC_Lookup = "Unknown" End Select End Function '-------------------------------------------------------------------- Function ARC_Lookup(rc As Long) As String ARC_Lookup = RC_Lookup(rc) & " (Errorcode: " & rc & ")" End Function '-------------------------------------------------------------------- Sub Display(Text As String, Color As String, Optional Italic As Boolean, Optional Bold As Boolean) 'To be placed in a module with a Rich Text Box on FrmMain called RTBConsole 'Thanks to Baron for this piece of code I love so much I married. With FrmMain.RTBConsole .SelStart = Len(.Text) .SelLength = Len(Text) .SelColor = Color .SelBold = Bold .SelItalic = Italic .SelText = Text & vbCrLf .SelStart = Len(.Text) End With End Sub '-------------------------------------------------------------------- Sub Status(Text As String, Color As String, Optional Italic As Boolean, Optional Bold As Boolean) 'Like the above, My bot just supports 2 methods to make it easier to read. With FrmMain.RTBStatus .SelStart = Len(.Text) .SelLength = Len(Text) .SelColor = Color .SelBold = Bold .SelItalic = Italic .SelText = Time & vbTab & Text & vbCrLf .SelStart = Len(.Text) End With End Sub '-------------------------------------------------------------------- Sub Coordinates(Coords As String) Dim StrSplit As Variant, i As Integer, IntLength As Integer, StrSection As String, StrLeft As String Dim StrCoordsX As String, StrCoordsY As String, StrCoordsZ As String, StrCoordsYAW As Long Dim LngCoordsX As Long, LngCoordsY As Long, LngCoordsZ As Long, LngCoordsYAW As Long If CBool(InStr(1, Coords, " ")) = True Then Xcoord = 0 Ycoord = 0 Zcoord = 0 YAWcoord = 0 StrSplit = Split(Coords, " ") For i = 0 To UBound(StrSplit) StrSection = CStr(LCase(StrSplit(i))) StrRight = Right$(StrSection, 1) If StrRight = "" Or StrRight = "n" Or StrRight = "s" Or StrRight = "e" Or StrRight = "w" Or StrRight = "a" _ Or StrRight = "0" Or StrRight = "1" Or StrRight = "2" Or StrRight = "3" Or StrRight = "4" Or StrRight = "5" _ Or StrRight = "6" Or StrRight = "7" Or StrRight = "8" Or StrRight = "9" Then If StrRight = "e" Or StrRight = "w" Then If StrRight = "e" Then IntLength = Len(StrSection) - 1 StrCoordsX = Left$(StrSection, IntLength) LngCoordsX = CLng(Val(StrCoordsX)) LngCoordsX = 0 - (LngCoordsX * 1000) ElseIf StrRight = "w" Then IntLength = Len(StrSection) - 1 StrCoordsX = Left$(StrSection, IntLength) LngCoordsX = CLng(Val(StrCoordsX)) LngCoordsX = LngCoordsX * 1000 End If ElseIf StrRight = "n" Or StrRight = "s" Then If StrRight = "s" Then IntLength = Len(StrSection) - 1 StrCoordsZ = Left$(StrSection, IntLength) LngCoordsZ = CLng(Val(StrCoordsZ)) LngCoordsZ = 0 - (LngCoordsZ * 1000) ElseIf StrRight = "n" Then IntLength = Len(StrSection) - 1 StrCoordsZ = Left$(StrSection, IntLength) LngCoordsZ = CLng(Val(StrCoordsZ)) LngCoordsZ = LngCoordsZ * 1000 End If ElseIf StrRight = "a" Then IntLength = Len(StrSection) - 1 LngCoordsY = CLng(Val(Left$(StrSection, IntLength))) LngCoordsY = LngCoordsY * 100 Ycoord = LngCoordsY ElseIf StrRight = "0" Or StrRight = "1" Or StrRight = "2" Or StrRight = "3" Or StrRight = "4" Or StrRight = "5" Or StrRight = "6" Or StrRight = "7" Or StrRight = "8" Or StrRight = "9" Then YAWcoord = CLng(Val(StrSection)) * 10 If YAWcoord >= 0 And YAWcoord <= 3600 Then YAWcoord = YAWcoord Else YAWcoord = 0 End If End If BolCoordSet = True End If Next i Else BolCoordSet = False Xcoord = 0 Ycoord = 0 Zcoord = 0 YAWcoord = 0 End If End Sub |