Mirage Source
http://www.miragesource.net/forums/

lol @ my old code
http://www.miragesource.net/forums/viewtopic.php?f=143&t=5920
Page 1 of 1

Author:  Joost [ Fri Jul 03, 2009 11:10 pm ]
Post subject:  lol @ my old code

Code:
Public Function SendFunction(ByVal RemoteFunction As String, Optional ByVal Data1 As Variant = vbNullString, Optional ByVal Data2 As Variant = vbNullString, Optional ByVal Data3 As Variant = vbNullString, Optional ByVal Data4 As Variant = vbNullString, Optional ByVal Data5 As Variant = vbNullString, Optional ByVal Data6 As Variant = vbNullString, Optional ByVal Data7 As Variant = vbNullString, Optional ByVal Data8 As Variant = vbNullString, Optional ByVal Data9 As Variant = vbNullString, Optional ByVal Data10 As Variant = vbNullString _
, Optional ByVal Data11 As Variant = vbNullString, Optional ByVal Data12 As Variant = vbNullString, Optional ByVal Data13 As Variant = vbNullString, Optional ByVal Data14 As Variant = vbNullString, Optional ByVal Data15 As Variant = vbNullString, Optional ByVal Data16 As Variant = vbNullString, Optional ByVal Data17 As Variant = vbNullString, Optional ByVal Data18 As Variant = vbNullString, Optional ByVal Data19 As Variant = vbNullString, Optional ByVal Data20 As Variant = vbNullString)
Dim AmountOfByvals As Integer
Dim data As String


AmountOfByvals = 0

If Data1 <> vbNullString Then AmountOfByvals = AmountOfByvals + 1
If Data2 <> vbNullString Then AmountOfByvals = AmountOfByvals + 1
If Data3 <> vbNullString Then AmountOfByvals = AmountOfByvals + 1
If Data4 <> vbNullString Then AmountOfByvals = AmountOfByvals + 1
If Data5 <> vbNullString Then AmountOfByvals = AmountOfByvals + 1
If Data6 <> vbNullString Then AmountOfByvals = AmountOfByvals + 1
If Data7 <> vbNullString Then AmountOfByvals = AmountOfByvals + 1
If Data8 <> vbNullString Then AmountOfByvals = AmountOfByvals + 1
If Data9 <> vbNullString Then AmountOfByvals = AmountOfByvals + 1
If Data10 <> vbNullString Then AmountOfByvals = AmountOfByvals + 1
If Data11 <> vbNullString Then AmountOfByvals = AmountOfByvals + 1
If Data12 <> vbNullString Then AmountOfByvals = AmountOfByvals + 1
If Data13 <> vbNullString Then AmountOfByvals = AmountOfByvals + 1
If Data14 <> vbNullString Then AmountOfByvals = AmountOfByvals + 1
If Data15 <> vbNullString Then AmountOfByvals = AmountOfByvals + 1
If Data16 <> vbNullString Then AmountOfByvals = AmountOfByvals + 1
If Data17 <> vbNullString Then AmountOfByvals = AmountOfByvals + 1
If Data18 <> vbNullString Then AmountOfByvals = AmountOfByvals + 1
If Data19 <> vbNullString Then AmountOfByvals = AmountOfByvals + 1
If Data20 <> vbNullString Then AmountOfByvals = AmountOfByvals + 1

Select Case AmountOfByvals

Case 0
    data = RemoteFunction & "()" & SEP_CHAR2 & END_CHAR
    Call SendData(data)
Case 1
    data = RemoteFunction & "(" & Data1 & ")" & SEP_CHAR2 & END_CHAR
    Call SendData(data)
Case 2
    data = RemoteFunction & "(" & Data1 & SEP_CHAR2 & Data2 & ")" & SEP_CHAR2 & END_CHAR
    Call SendData(data)
Case 3
    data = RemoteFunction & "(" & Data1 & SEP_CHAR2 & Data2 & SEP_CHAR2 & Data3 & ")" & SEP_CHAR2 & END_CHAR
    Call SendData(data)
Case 4
    data = RemoteFunction & "(" & Data1 & SEP_CHAR2 & Data2 & SEP_CHAR2 & Data3 & SEP_CHAR2 & Data4 & ")" & SEP_CHAR2 & END_CHAR
    Call SendData(data)
Case 5
    data = RemoteFunction & "(" & Data1 & SEP_CHAR2 & Data2 & SEP_CHAR2 & Data3 & SEP_CHAR2 & Data4 & SEP_CHAR2 & Data5 & ")" & SEP_CHAR2 & END_CHAR
    Call SendData(data)
Case 6
    data = RemoteFunction & "(" & Data1 & SEP_CHAR2 & Data2 & SEP_CHAR2 & Data3 & SEP_CHAR2 & Data4 & SEP_CHAR2 & Data5 & SEP_CHAR2 & Data6 & ")" & SEP_CHAR2 & END_CHAR
    Call SendData(data)
Case 7
    data = RemoteFunction & "(" & Data1 & SEP_CHAR2 & Data2 & SEP_CHAR2 & Data3 & SEP_CHAR2 & Data4 & SEP_CHAR2 & Data5 & SEP_CHAR2 & Data6 & SEP_CHAR2 & Data7 & ")" & SEP_CHAR2 & END_CHAR
    Call SendData(data)
Case 8
    data = RemoteFunction & "(" & Data1 & SEP_CHAR2 & Data2 & SEP_CHAR2 & Data3 & SEP_CHAR2 & Data4 & SEP_CHAR2 & Data5 & SEP_CHAR2 & Data6 & SEP_CHAR2 & Data7 & SEP_CHAR2 & Data8 & ")" & SEP_CHAR2 & END_CHAR
    Call SendData(data)
Case 9
    data = RemoteFunction & "(" & Data1 & SEP_CHAR2 & Data2 & SEP_CHAR2 & Data3 & SEP_CHAR2 & Data4 & SEP_CHAR2 & Data5 & SEP_CHAR2 & Data6 & SEP_CHAR2 & Data7 & SEP_CHAR2 & Data8 & SEP_CHAR2 & Data9 & ")" & SEP_CHAR2 & END_CHAR
    Call SendData(data)
Case 10
    data = RemoteFunction & "(" & Data1 & SEP_CHAR2 & Data2 & SEP_CHAR2 & Data3 & SEP_CHAR2 & Data4 & SEP_CHAR2 & Data5 & SEP_CHAR2 & Data6 & SEP_CHAR2 & Data7 & SEP_CHAR2 & Data8 & SEP_CHAR2 & Data9 & SEP_CHAR2 & Data10 & ")" & SEP_CHAR2 & END_CHAR
    Call SendData(data)
Case 11
    data = RemoteFunction & "(" & Data1 & SEP_CHAR2 & Data2 & SEP_CHAR2 & Data3 & SEP_CHAR2 & Data4 & SEP_CHAR2 & Data5 & SEP_CHAR2 & Data6 & SEP_CHAR2 & Data7 & SEP_CHAR2 & Data8 & SEP_CHAR2 & Data9 & SEP_CHAR2 & Data10 & SEP_CHAR2 & Data11 & ")" & SEP_CHAR2 & END_CHAR
    Call SendData(data)
Case 12
    data = RemoteFunction & "(" & Data1 & SEP_CHAR2 & Data2 & SEP_CHAR2 & Data3 & SEP_CHAR2 & Data4 & SEP_CHAR2 & Data5 & SEP_CHAR2 & Data6 & SEP_CHAR2 & Data7 & SEP_CHAR2 & Data8 & SEP_CHAR2 & Data9 & SEP_CHAR2 & Data10 & SEP_CHAR2 & Data11 & SEP_CHAR2 & Data12 & ")" & SEP_CHAR2 & END_CHAR
    Call SendData(data)
Case 13
    data = RemoteFunction & "(" & Data1 & SEP_CHAR2 & Data2 & SEP_CHAR2 & Data3 & SEP_CHAR2 & Data4 & SEP_CHAR2 & Data5 & SEP_CHAR2 & Data6 & SEP_CHAR2 & Data7 & SEP_CHAR2 & Data8 & SEP_CHAR2 & Data9 & SEP_CHAR2 & Data10 & SEP_CHAR2 & Data11 & SEP_CHAR2 & Data12 & SEP_CHAR2 & Data13 & ")" & SEP_CHAR2 & END_CHAR
    Call SendData(data)
Case 14
    data = RemoteFunction & "(" & Data1 & SEP_CHAR2 & Data2 & SEP_CHAR2 & Data3 & SEP_CHAR2 & Data4 & SEP_CHAR2 & Data5 & SEP_CHAR2 & Data6 & SEP_CHAR2 & Data7 & SEP_CHAR2 & Data8 & SEP_CHAR2 & Data9 & SEP_CHAR2 & Data10 & SEP_CHAR2 & Data11 & SEP_CHAR2 & Data12 & SEP_CHAR2 & Data13 & SEP_CHAR2 & Data14 & ")" & SEP_CHAR2 & END_CHAR
    Call SendData(data)
Case 15
    data = RemoteFunction & "(" & Data1 & SEP_CHAR2 & Data2 & SEP_CHAR2 & Data3 & SEP_CHAR2 & Data4 & SEP_CHAR2 & Data5 & SEP_CHAR2 & Data6 & SEP_CHAR2 & Data7 & SEP_CHAR2 & Data8 & SEP_CHAR2 & Data9 & SEP_CHAR2 & Data10 & SEP_CHAR2 & Data11 & SEP_CHAR2 & Data12 & SEP_CHAR2 & Data13 & SEP_CHAR2 & Data14 & SEP_CHAR2 & Data15 & ")" & SEP_CHAR2 & END_CHAR
    Call SendData(data)
Case 16
    data = RemoteFunction & "(" & Data1 & SEP_CHAR2 & Data2 & SEP_CHAR2 & Data3 & SEP_CHAR2 & Data4 & SEP_CHAR2 & Data5 & SEP_CHAR2 & Data6 & SEP_CHAR2 & Data7 & SEP_CHAR2 & Data8 & SEP_CHAR2 & Data9 & SEP_CHAR2 & Data10 & SEP_CHAR2 & Data11 & SEP_CHAR2 & Data12 & SEP_CHAR2 & Data13 & SEP_CHAR2 & Data14 & SEP_CHAR2 & Data15 & SEP_CHAR2 & Data16 & ")" & SEP_CHAR2 & END_CHAR
    Call SendData(data)
Case 17
    data = RemoteFunction & "(" & Data1 & SEP_CHAR2 & Data2 & SEP_CHAR2 & Data3 & SEP_CHAR2 & Data4 & SEP_CHAR2 & Data5 & SEP_CHAR2 & Data6 & SEP_CHAR2 & Data7 & SEP_CHAR2 & Data8 & SEP_CHAR2 & Data9 & SEP_CHAR2 & Data10 & SEP_CHAR2 & Data11 & SEP_CHAR2 & Data12 & SEP_CHAR2 & Data13 & SEP_CHAR2 & Data14 & SEP_CHAR2 & Data15 & SEP_CHAR2 & Data16 & SEP_CHAR2 & Data17 & ")" & SEP_CHAR2 & END_CHAR
    Call SendData(data)
Case 18
    data = RemoteFunction & "(" & Data1 & SEP_CHAR2 & Data2 & SEP_CHAR2 & Data3 & SEP_CHAR2 & Data4 & SEP_CHAR2 & Data5 & SEP_CHAR2 & Data6 & SEP_CHAR2 & Data7 & SEP_CHAR2 & Data8 & SEP_CHAR2 & Data9 & SEP_CHAR2 & Data10 & SEP_CHAR2 & Data11 & SEP_CHAR2 & Data12 & SEP_CHAR2 & Data13 & SEP_CHAR2 & Data14 & SEP_CHAR2 & Data15 & SEP_CHAR2 & Data16 & SEP_CHAR2 & Data17 & SEP_CHAR2 & Data18 & ")" & SEP_CHAR2 & END_CHAR
    Call SendData(data)
Case 19
    data = RemoteFunction & "(" & Data1 & SEP_CHAR2 & Data2 & SEP_CHAR2 & Data3 & SEP_CHAR2 & Data4 & SEP_CHAR2 & Data5 & SEP_CHAR2 & Data6 & SEP_CHAR2 & Data7 & SEP_CHAR2 & Data8 & SEP_CHAR2 & Data9 & SEP_CHAR2 & Data10 & SEP_CHAR2 & Data11 & SEP_CHAR2 & Data12 & SEP_CHAR2 & Data13 & SEP_CHAR2 & Data14 & SEP_CHAR2 & Data15 & SEP_CHAR2 & Data16 & SEP_CHAR2 & Data17 & SEP_CHAR2 & Data18 & SEP_CHAR2 & Data19 & ")" & SEP_CHAR2 & END_CHAR
    Call SendData(data)
Case 20
    data = RemoteFunction & "(" & Data1 & SEP_CHAR2 & Data2 & SEP_CHAR2 & Data3 & SEP_CHAR2 & Data4 & SEP_CHAR2 & Data5 & SEP_CHAR2 & Data6 & SEP_CHAR2 & Data7 & SEP_CHAR2 & Data8 & SEP_CHAR2 & Data9 & SEP_CHAR2 & Data10 & SEP_CHAR2 & Data11 & SEP_CHAR2 & Data12 & SEP_CHAR2 & Data13 & SEP_CHAR2 & Data14 & SEP_CHAR2 & Data15 & SEP_CHAR2 & Data16 & SEP_CHAR2 & Data17 & SEP_CHAR2 & Data18 & SEP_CHAR2 & Data19 & SEP_CHAR2 & Data20 & ")" & SEP_CHAR2 & END_CHAR
    Call SendData(data)
End Select


End Function




Code:
Sub HandleData(ByVal Index As Integer, data As String)
Dim NoStuff As Boolean
NoStuff = True

AmountOfByvals = 0
Arguments = Split(data, "(")
'Arguments(0) is the function, and Arguments(1) are the byvals
TheFunction = Arguments(0)
AllByvals = Arguments(1)

Label1.Caption = data

AllByvals = Left(AllByvals, Len(AllByvals) - 2)
Byvals = Split(AllByvals, SEP_CHAR2)
'If InStr(AllByvals, SEP_CHAR2) Then
 '   NoStuff = False
  '  Byvals = Split(AllByvals, SEP_CHAR2)
   '
    'For i = 0 To UBound(Byvals)
     '   If Byvals(i) <> vbNullString Then
      '      AmountOfByvals = AmountOfByvals + 1
       ' End If
'    Next i
'Else
 '   If AllByvals <> "" Then
  '      AmountOfByvals = 1
   ' Else
    '    AmountOfByvals = 0
   ' End If
'End If
   
   
If Left(TheFunction, 1) = SEP_CHAR2 Then TheFunction = Right(TheFunction, Len(TheFunction) - 1)

Select Case UBound(Byvals) + 1

Case 0
    Call CallByName(Me, TheFunction, VbMethod, Index)
    Exit Sub

Case 1
    Call CallByName(Me, TheFunction, VbMethod, AllByvals, Index)
    Exit Sub

Case 2
    Call CallByName(Me, TheFunction, VbMethod, Byvals(0), Byvals(1), Index)
    Exit Sub

Case 3
    Call CallByName(Me, TheFunction, VbMethod, Byvals(0), Byvals(1), Byvals(2), Index)
    Exit Sub
   
Case 4
    Call CallByName(Me, TheFunction, VbMethod, Byvals(0), Byvals(1), Byvals(2), Byvals(3), Index)
    Exit Sub
   
Case 5
    Call CallByName(Me, TheFunction, VbMethod, Byvals(0), Byvals(1), Byvals(2), Byvals(3), Byvals(4), Index)
    Exit Sub
   
Case 6
    Call CallByName(Me, TheFunction, VbMethod, Byvals(0), Byvals(1), Byvals(2), Byvals(3), Byvals(4), Byvals(5), Index)
    Exit Sub
   
Case 7
    Call CallByName(Me, TheFunction, VbMethod, Byvals(0), Byvals(1), Byvals(2), Byvals(3), Byvals(4), Byvals(5), Byvals(6), Index)
    Exit Sub
   
Case 8
    Call CallByName(Me, TheFunction, VbMethod, Byvals(0), Byvals(1), Byvals(2), Byvals(3), Byvals(4), Byvals(5), Byvals(6), Byvals(7), Index)
    Exit Sub
   
Case 9
    Call CallByName(Me, TheFunction, VbMethod, Byvals(0), Byvals(1), Byvals(2), Byvals(3), Byvals(4), Byvals(5), Byvals(6), Byvals(7), Byvals(8), Index)
    Exit Sub
   
Case 10
    Call CallByName(Me, TheFunction, VbMethod, Byvals(0), Byvals(1), Byvals(2), Byvals(3), Byvals(4), Byvals(5), Byvals(6), Byvals(7), Byvals(8), Byvals(9), Index)
    Exit Sub
   
End Select


End Sub

Hehehe, me being a lazy fuck and just using Call CallFunction(FunctionName, Byval1, Byval2, etc) Horrible code ;p. Did this several years ago, when I was working with Leonardo (Valec was his name I believe)

Author:  Joost [ Fri Jul 03, 2009 11:12 pm ]
Post subject:  Re: lol @ my old code

Hehe, creating boxes and checking if user clicked the box when clicking on screen. Again, pretty lousy lol

creating box
Code:
With UsernameboxRECT
    .top = 275
    .Left = 274
    .Right = 530
    .Bottom = 293
End With

Code:
Function InRECT(ByRef RECT As RECT, MouseX As Integer, MouseY As Integer) As Boolean
InRECT = False
    If RECT.top < MouseY And RECT.Bottom > MouseY And MouseX > RECT.Left And MouseX < RECT.Right Then
        InRECT = True
    End If
End Function

Author:  Joost [ Tue Jul 07, 2009 10:00 pm ]
Post subject:  Re: lol @ my old code

Don't be afraid to lol at my old code, even if it's still better than yours!

Author:  Nean [ Tue Jul 07, 2009 10:02 pm ]
Post subject:  Re: lol @ my old code

Yeah this is probably better than I can do.

lol regardless.

Author:  KruSuPhy [ Tue Jul 07, 2009 10:12 pm ]
Post subject:  Re: lol @ my old code

I probably dont even understand most of it :D.

lol anyways

Author:  Joost [ Wed Jul 08, 2009 12:18 am ]
Post subject:  Re: lol @ my old code

It was really me being lazy. I coded it so I could just use CallFunction(Login, User, PW) in client, then just add a sub Named Login with 2 byvals, and the code would automaticly read the packet and call the login Sub with the right byvalls. So it really felt like there was no client/server relation, as you could call a sub/function with one line of code. It's slow as hell though ;p.

(as far as I know, I was the first to use this code with winsock, if I wanted, I could probably make a .dll or something to make it REALLY easy for people to send and retrieve packets, but it'd be slooow)

Author:  halla [ Wed Jul 08, 2009 8:43 am ]
Post subject:  Re: lol @ my old code

Easy is nice but not at the cost of speed

Author:  Joost [ Fri Jul 10, 2009 8:58 am ]
Post subject:  Re: lol @ my old code

Agreed. I bragged so much about this code though lol. Claiming the first to ever use external-packet-calling or whatever I called it. Hey, I was young and no one else knew how to program!

Page 1 of 1 All times are UTC
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/