Author | Message | Time |
---|---|---|
CrAz3D | [vb6] I'm trying to make different user groups that will contain w/e command the user specifies. What I've done SO FAR is allowed the user to create a custom group & add whichever commands to the group. Now I'm trying to make it so whoever is part of that access group has access to those commands...not so sure how to go about this totally. I am using a couple of array to accomplish this. array A() = the user's db info (username, flags, created date, created by, modified date, modified by, grouplist array B() = the grouplist info (groupname, commands(ex: CMD1, CMD2)) array C() = a Split(B). C(0) = the group name & C(1) = the commands No where I'm stuck @ is how would I compare A(6)[the user's group] & C(0)[the groupname] & C(1) so that I can have the user able to access the commands. I will be splitting C(1) into another array, most likely D() that each item will be the command name. I KNOW this is confusing, I'm not so sure I understand what I wrote, if you need more clarification say so & I'll try. EDIT: I think this is something similar to what ZeroBot does?... I can't remember totally. EDIT, again: [code] if a(6) = c(0) then if left(message,len) = d(INDEX) then do stuff for this cmd end if end if [/code] Maybe something like that? | February 11, 2005, 3:23 AM |
CrAz3D | Well, it seems what I have works, but I have a feeling that it is hugely inefficent. Any suggestions on what I might want to do differently? [code] Public Sub CommandIT(ByVal Username As String, Message As String) Dim a() As String Dim b() As String Dim c() As String Dim d() As String Dim pA() As String ReDim c(0) Dim i As Integer, X As Integer If Not Left(Message, 1) = "!" Then Exit Sub Message = Right(Message, Len(Message) - 1) pA = Split(Message, Space(1), 2) a() = GetAccess(Username) b() = ADO.getinfo("grouplist") For i = 0 To UBound(b) - 1 c() = Split(b(i), "|", 2) d = Split(c(1), ",") If LCase(a(6)) = LCase(c(0)) Then For X = 0 To UBound(d) If LCase(d(X)) = LCase(pA(0)) Then Select Case pA(0) Case "say" QU.AddQueue pA(1) Case "ver" QU.AddQueue "I am a FREAKIN' PIMP Xenogenic by CrAz3D[xL]" End Select End If Next X End If Next i End Sub[/code] | February 11, 2005, 4:15 PM |
Yegg | Why does that code look so much like the source from Flawed Bot? If I remember correctly, Flawed Bot contains pA(), not saying that you copied it, but it looks like it. | February 11, 2005, 7:53 PM |
Quarantine | Or did you ever think it was maybe Fleet- that uses Stolen code? IMHO people pick up other people's code habbits one way or another. For example I use "Splt" often because I asked for help with a User DB from someone a while back and he used code with that in it and i've used it ever since. Yegg, dont be an idiot. | February 11, 2005, 11:10 PM |
CrAz3D | Yegg, all of that looks like Flawed bot? k, I've never used Flawed nor have I seen the source so.... That is just a bunch of random stuff I came up with that I'm not going to use anymore (LoRd[nK] explained a few flaws in my idea, so it ALL went bye bye). But not I'm contemplating a new method which will be cool too, so, w/e | February 12, 2005, 12:05 AM |
R.a.B.B.i.T | What I did (for FoFoBot) was to create a type that had RequiredAccess and RequiredFlags as its two parts. I then had a public array (one for each command) which was filled at run-time by reading out of access.ini. Then I just checked the user's access against the RequiredAccess (or Flags) instead of a hardcoded value. | February 13, 2005, 3:28 AM |
Grok | Oh please let's not degrade this into stolen code discussion. If you posted code here you have to expect people to use it. I was the first person on these forums to use pA() so don't even go there and get off your high horse. "pA()" is an obvious choice for a procedural-level array. If we start looking at such details and saying "stolen code", we will look as bad as SCO. | February 15, 2005, 12:45 PM |
CrAz3D | k, to the topic ... & away! ::) :-* Thanks for the help folks, decided it would be eaier just to have set flags & the user can add themself w/e flag. Maybe I'll let them change what commands are associated with what flags, but not til later. | February 15, 2005, 4:12 PM |
Quarantine | Exactly my point Grok, everyone adapts a coding style either by example or by leeching. | February 15, 2005, 6:47 PM |