Sfoglia il codice sorgente

update beer.tcl

Signed-off-by: hwipl <33433250+hwipl@users.noreply.github.com>
hwipl 6 anni fa
parent
commit
062f6b9858
1 ha cambiato i file con 35 aggiunte e 6 eliminazioni
  1. 35 6
      scripts/beer.tcl

+ 35 - 6
scripts/beer.tcl

@@ -1,11 +1,40 @@
 # beer.tcl
+#
+# This script gives a beer to people with the !beer command.
+#
+# Usage:
+#       !beer                   give a beer to yourself
+#       !beer <user>            give a beer to <user>
+#
+# Enable for a channel with:    .chanset #channel +beer
+# Disable for a channel with:   .chanset #channel -beer
 
-proc give_beer { nick host hand chan arg } {
-	if { $arg == "" } {
-	puthelp "PRIVMSG $chan :\001ACTION gives $nick an ice cold beer."
-	} else {
-	puthelp "PRIVMSG $chan :\001ACTION gives [lindex $arg 0] an ice cold beer."
+# tested versions, might run on earlier versions
+package require Tcl 8.6
+package require eggdrop 1.8.4
+
+namespace eval ::beer {
+	# channel flag for enabling/disabling
+	setudef flag beer
+}
+
+proc ::beer::give_beer { nick host hand chan arg } {
+	# check channel flag if enabled in this channel
+	if {![channel get $chan beer]} {
+		return 0
 	}
+
+	# set receiver
+	set receiver $nick
+	if { $arg != "" } {
+		set receiver [lindex $arg 0]
+	}
+
+	puthelp "PRIVMSG $chan :\001ACTION gives $receiver an ice cold beer."
+	return 1
 }
 
-bind pub - !beer give_beer
+namespace eval ::beer {
+	bind pub - !beer ::beer::give_beer
+	putlog "Loaded beer.tcl"
+}