AnGelBot-Portal²

Normale Version: Brauche Hife !!!
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Habe versucht nen script für Angel zu bauen. Möchte gerne das wenn jemand
!addsvs zahl
eingibt,der Bot ihn mit Namen und der Zahl in eine Datenbank aufnimmt. Sobald Jemand dann
!svs
eingibt diese Datenbank ausgelesen wird und im Chan ausgegeben wird.
Wenn er diese Zahl aktualisieren möchte gibt er
!svsneu
ein und der Bot aktualisiert diese.
Mehr nücht !!!
Habe schon mal angefangen, da ich absoluter newbie bin wollte ich euch fragen ob Ihr so nett seit und mir helft.
Hier der Code:



Sub Init
Script "SVS-Script mit v1.0 by Radiator"
Hook "chan_msg"
SpreadFlagMessage 0, "+m", "12 *** SVS-Script mit v1.0 by Radiator *** "
End Sub


Sub Chan_Msg(Chan, Nick, RegUser, Line)

If lcase(param(line,1)) = "?addsvs" then
sendline "privmsg " & chan & " : Gib deine VOLLSTÄNDIGE SVS-Anzahl per !addsvs ein ! ",3
sendline "privmsg " & chan & " : Per !svs nickname kannst du dir die SVS-Anzahl verschiedener personen ausgeben lassen!! ",3
end if

If lcase(param(line,1)) = "!addsvs" then
SVS = ""
end if

writeinistring nick , "SVS-Anzahl " , getrest(line,2) , "svs.ini" '---Speichern der SVS-Anzahl ---
Sendline "privmsg " & chan & " : Speichere SVS-Anzahl für " & nick & " am " & param(line,2) ,3

if lcase(param(line,1)) ="?svs" or lcase(param(line,1)) ="!svs" then

if param(line,2) = "!svs" then
Sendline "privmsg " & chan & " : Na du musst mir schon sagen nach wem ich suchen muss Razz *ggg* ",3
exit sub
end if

SVS-Anzahl = readinistring(param(line,2) , "SVS " , "" , "svs.ini") '---Auslesen der SVS_Anzahl ---

if SVS_Anzahl ="" then
FileNum = FileOpen("svs.ini",FA_Read)
CheckGrade = 0
BestGrade = 0
BestMatch = ""
while not FileEOF(FileNum)
FileLine=FileReadLn(FileNum)
If InStr(LCase(FileLine), "[") > 0 then
name=mid(fileline,2,len(fileline)-2)
CheckGrade = MatchGrade(param(line,2), name)
If CheckGrade > BestGrade Then
BestMatch = name
BestGrade = CheckGrade
end if
end if
wend
FileClose FileNum
If Bestgrade > 50 then
Sendline "privmsg " & chan & " : Kein Eintrag für " & param(line,2) & " , bester Eintrag : " & Bestmatch,3
else
Sendline "privmsg " & chan & " : Kein Eintrag für " & param(line,2) & " , auch kein vergleichbarer Eintrag gefunden! ",3
end if
end sub
end if
End Function


Danke schon mal im vorraus !!! thx
Code:
Sub Init()
Script "GN SvS-Script by St4rg4t3"
Hook "chan_msg"
End Sub

Const svs = "SVS.ini"

Sub Chan_Msg(Chan, Nick, RegUser, Line)
If LCase(Param(Line, 1)) = "!addsvs" Then
  If IsNumeric(Param(Line, 2)) Then
   If Param(ReadINIString("svs", "zahl", vbNullString, svs), 1) = vbNullString Then
    WriteINIString "svs", "zahl", "0", svs      
   End If
   i = "0"
   j = Param(ReadINIString("svs", "zahl", vbNullString, svs), 1)  + 1
   For i = 1 To j
    If Param(ReadINIString("svs", i, vbNullString, svs), 1) = vbNullString Then
     WriteINIString "svs", i, Nick, svs
     WriteINIString "svs", i & "h", Mask(Hostmask(Chan, Nick), 3), svs
     WriteINIString "svs", i & "a", Param(line, 2), svs
     WriteINIString "svs", "zahl", j, svs      
     Exit Sub
    End If
   Next
  Else
   SendLine "PRIVMSG " & Chan & " :Synthax ist: !addsvs <zahl>", 2
  End If
End If
If LCase(Param(Line, 1)) = "!svsneu" Then
  If IsNumeric(Param(Line, 2)) Then
   i = "0"
   For i = 1 To Param(ReadINIString("svs", "zahl", vbNullString, svs), 1)
    If Param(ReadINIString("svs", i & "h", vbNullString, svs), 1) =  Mask(Hostmask(Chan, Nick), 3) Then
     WriteINIString "svs",i & "a", Param(line, 2), svs
     Exit Sub
    End If
   Next
  Else
   SendLine "PRIVMSG " & Chan & " :Synthax ist: !svsneu <zahl>", 2
  End If
End If
If LCase(Param(Line, 1)) = "!svs" Then
   i = "0"
   For i = 1 To Param(ReadINIString("svs", "zahl", vbNullString, svs), 1)
    If Not Param(ReadINIString("svs", i, vbNullString, svs), 1) = vbNullString Then
     SendLine "NOTICE " & Nick & " :Name:" & Param(ReadINIString("svs", i, vbNullString, svs), 1) & " und er hat " & Param(ReadINIString("svs", i & "a", vbNullString, svs), 1) & "svs!", 2
    End If
   Next
End If
End Sub

ist auf die schnelle gescriptet, können fehler vorhanden sein..
er sollte nach hostmark gehen und den nick speichern und die anzahl....
bei addsvs wird die host verglichen und die anzahl überschrieben und bei ausgabe wird pro svs eine notice an den user geschickt, ich denke mal das ist für GN und es werden nicht viele alliscanner vorhanden sein Wink
Bthx an dich. Danke danke. Versuche es gleich mal aus
Referenz-URLs