Code:
Const WCM_File = "ini_welcome.ini"
Sub Init()
Script "Welcome Script 1.0b by Sp33d"
Hook "Join"
Hook "Commands"
AddCommand "wcm_edit", Cl_Mas, "+m", "2*** wcm_edit <#channel|hostmask> <welcomemessage>##14Ändert die Willkommensnachricht von <#channel> auf <welcomemessage>"
AddCommand "wcm_status", Cl_Mas, "+m", "2*** wcm_status <#channel|nick> [on | off]##14De-/Aktiviert die Willkommensnachricht auf <#channel>.## Bei Nichtangabe von on/off wird die aktuelle Willkommens-## nachricht angezeigt."
SpreadFlagMessage 0, "+m", "3*** Welcome Script 1.0a by Sp33d is now loaded."
SpreadFlagMessage 0, "+m", "3*** 2 new commands added: wcm_edit | wcm_status"
SpreadFlagMessage 0, "+m", "3*** Type .help <command> (i.e. .help wcm_edit) to recieve syntax help"
End Sub
Sub Join(Chan, Nick, RegUser, Flags)
If ReadINIString(Mask(Hostmask(Chan, Nick), 3), "Status", "off", WCM_File) = "on" Then
Msg = ReadINIString(Mask(Hostmask(Chan, Nick), 3), "Msg", "", WCM_File)
If Msg <> "" Then
Msg = Split(Msg, "##")
For i = LBound(Msg) To UBound(Msg)
SendLine "NOTICE " & Nick & " :" & Msg(i), 3
Next
Else
SpreadFlagMessage 0, "+m", "3*** ERR: Welcome message for " & Mask(Hostmask(Chan, Nick), 3) & " is turned on, but no message is specified!"
End If
ElseIf ReadINIString(Chan, "Status", "off", WCM_File) = "on" Then
Msg = ReadINIString(Chan, "Msg", "", WCM_File)
If Msg <> "" Then
Msg = Split(Msg, "##")
For i = LBound(Msg) To UBound(Msg)
SendLine "NOTICE " & Nick & " :" & Msg(i), 3
Next
Else
SpreadFlagMessage 0, "+m", "3*** ERR: Welcome message for " & Chan & " is turned on, but no message is specified!"
End If
End If
End Sub
Sub Commands(vsock, RegUser, Flags, Line)
Select Case Param(LCase(Line), 1)
Case ".wcm_edit"
If Param(Line, 2) <> "" And Param(Line, 3) <> "" Then
If Left(Param(Line, 2), 1) = "#" Then
WriteINIString Param(Line, 2), "Msg", GetRest(Line, 3), WCM_File
SpreadFlagMessage 0, "+m", "3*** Welcome message for " & Param(Line, 2) & " was updated"
If ReadINIString(Param(Line, 2), "Status", "-1", WCM_File) = "-1" Then
WriteINIString Param(Line, 2), "Status", "on", WCM_File
SpreadFlagMessage 0, "+m", "3*** Welcome message for " & Param(Line, 2) & " is now turned on"
End If
Else
WriteINIString Mask(Param(Line, 2), 3), "Msg", GetRest(Line, 3), WCM_File
SpreadFlagMessage 0, "+m", "3*** Welcome message for " & Mask(Param(Line, 2), 3) & " was updated"
If ReadINIString(Mask(Param(Line, 2), 3), "Status", "-1", WCM_File) = "-1" Then
WriteINIString Mask(Param(Line, 2), 3), "Status", "on", WCM_File
SpreadFlagMessage 0, "+m", "3*** Welcome message for " & Mask(Param(Line, 2), 3) & " is now turned on"
End If
End If
Else
SpreadFlagMessage 0, "+m", "3*** Invalid use of wcm_edit. Type .help wcm_edit"
End If
Case ".wcm_status"
If Param(Line, 3) = "" Then
If Left(Param(Line, 2), 1) <> "#" Then
Parameter = Mask(Param(Line, 2), 3)
Else
Parameter = Param(Line, 2)
End If
SpreadFlagMessage 0, "+m", "3*** Welcome settings for " & Parameter
If ReadINIString(Parameter, "Status", "-none-", WCM_File) = "-none-" Then
SpreadFlagMessage 0, "+m", "3*** => Channel/hostmask unknown! Add using:"
SpreadFlagMessage 0, "+m", "3*** => .wcm_edit " & Parameter & " Hello and welcome to " & Param(Line, 2)
SpreadFlagMessage 0, "+m", "3*** => Or type .help wcm_edit to recieve syntax help"
Else
If ReadINIString(Parameter, "Status", "off", WCM_File) = "off" Then
SpreadFlagMessage 0, "+m", "3*** => Welcome message is turned off"
ElseIf ReadINIString(Parameter, "Status", "off", WCM_File) = "on" Then
SpreadFlagMessage 0, "+m", "3*** => Welcome message is turned on"
Else
SpreadFlagMessage 0, "+m", "3*** => Illegal data found on " & WCM_File
End If
SpreadFlagMessage 0, "+m", "3*** => The current welcome message is:"
SpreadFlagMessage 0, "+m", "3*** => " & ReadINIString(Parameter, "Msg", "[empty]", WCM_File)
End If
Else
If Param(Line, 2) <> "" And Param(Line, 3) <> "" Then
If Left(Param(Line, 2), 1) <> "#" Then
Parameter = Mask(Param(Line, 2), 3)
Else
Parameter = Param(Line, 2)
End If
Select Case LCase(Param(Line, 3))
Case "on"
WriteINIString Parameter, "Status", "on", WCM_File
SpreadFlagMessage 0, "+m", "3*** Welcome message for " & Parameter & " is now turned on"
Case "off"
WriteINIString Parameter, "Status", "off", WCM_File
SpreadFlagMessage 0, "+m", "3*** => Welcome message for " & Parameter & " is now turned off"
Case Else
SpreadFlagMessage 0, "+m", "3*** => Illegal data found on " & WCM_File
End Select
Else
SpreadFlagMessage 0, "+m", "3*** Invalid use of wcm_status. Type .help wcm_status"
End If
End If
End Select
End Sub
schreiben, also z.B.
Der Satz wird dann bei den ## gesplittet und jeder Teil wird einzeln geschickt.