Mercurial > hg > egg-tcls
changeset 72:fd300fe87f59
Renamed laske.tcl to calc.tcl
author | Matti Hamalainen <ccr@tnsp.org> |
---|---|
date | Sun, 11 Sep 2011 17:54:12 +0300 |
parents | 50cbd24feadf |
children | 646b2fd67312 |
files | calc.tcl laske.tcl |
diffstat | 2 files changed, 79 insertions(+), 79 deletions(-) [+] |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/calc.tcl Sun Sep 11 17:54:12 2011 +0300 @@ -0,0 +1,79 @@ +########################################################################## +# +# Calc v0.4 by ccr/TNSP <ccr@tnsp.org> +# (C) Copyright 2008-2011 Tecnic Software productions (TNSP) +# +# A simple calculator for Eggdrop. +# +# This script is freely distributable under GNU GPL (version 2) license. +# +########################################################################## + +# Error message for when no arguments given to the command +set calc_err_noargs "Laalis?" + +set calc_preferredmsg "PRIVMSG" + + +########################################################################## +# No need to look below this line +########################################################################## +set calc_message "Laske v0.4 by ccr/TNSP" +#set calc_reps [split "\$|| ||^|**|pi|3.14159265|e|2.71828183" "|"] +set calc_reps [split "\$||\;||^|**|pi|3.141592653589793238|PI|3.141592653589793238|e|2.71828183" "|"] + +putlog "$calc_message" +bind pub - !laske calc_pubmsg +bind msg - laske calc_msg + + +# ------------------------------------------------------------------------ +proc calc_smsg {udest umsg} { + global calc_preferredmsg + putserv "$calc_preferredmsg $udest :$umsg" +} + +# ------------------------------------------------------------------------ +proc calc_do {args} { + global calc_reps + + # This is something rather perverse + set lasku [join [join [string map $calc_reps $args] ""] ""] + + # Use 'expr' to calculate the result, but catch any exceptions / errors + if {[catch { set res [expr $lasku] } errmsg]} { + return $errmsg + } else { + return "$lasku = $res" + } +} + +# ------------------------------------------------------------------------ +proc calc_pubmsg {nick uhost hand chan args} { + global calc_err_noargs + + if {$args == {} || $args == ""} { + calc_smsg $chan "$calc_err_noargs" + return 1 + } + + set result [calc_do $args] + calc_smsg $chan "$nick, $result" + return 1 +} + +# ------------------------------------------------------------------------- +proc calc_msg {nick uhost hand args} { + global calc_err_noargs + + if {$args == {} || $args == ""} { + calc_smsg $nick "$calc_err_noargs" + return 1 + } + + set result [calc_do $args] + calc_smsg $nick "$result" + return 1 +} + +# -------------------------------------------------------------------------
--- a/laske.tcl Sun Sep 11 17:53:50 2011 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,79 +0,0 @@ -########################################################################## -# -# Calc v0.4 by ccr/TNSP <ccr@tnsp.org> -# (C) Copyright 2008-2011 Tecnic Software productions (TNSP) -# -# A simple calculator for Eggdrop. -# -# This script is freely distributable under GNU GPL (version 2) license. -# -########################################################################## - -# Error message for when no arguments given to the command -set calc_err_noargs "Laalis?" -set calc_preferredmsg "PRIVMSG" - - - -########################################################################## -# No need to look below this line -########################################################################## -set calc_message "Laske v0.4 by ccr/TNSP" -#set calc_reps [split "\$|| ||^|**|pi|3.14159265|e|2.71828183" "|"] -set calc_reps [split "\$||\;||^|**|pi|3.141592653589793238|PI|3.141592653589793238|e|2.71828183" "|"] - -putlog "$calc_message" -bind pub - !laske calc_pubmsg -bind msg - laske calc_msg - - -# ------------------------------------------------------------------------ -proc calc_smsg {udest umsg} { - global calc_preferredmsg - putserv "$calc_preferredmsg $udest :$umsg" -} - -# ------------------------------------------------------------------------ -proc calc_do {args} { - global calc_reps - - # This is something rather perverse - set lasku [join [join [string map $calc_reps $args] ""] ""] - - # Use 'expr' to calculate the result, but catch any exceptions / errors - if {[catch { set res [expr $lasku] } errmsg]} { - return $errmsg - } else { - return "$lasku = $res" - } -} - -# ------------------------------------------------------------------------ -proc calc_pubmsg {nick uhost hand chan args} { - global calc_err_noargs - - if {$args == {} || $args == ""} { - calc_smsg $chan "$calc_err_noargs" - return 1 - } - - set result [calc_do $args] - calc_smsg $chan "$nick, $result" - return 1 -} - -# ------------------------------------------------------------------------- -proc calc_msg {nick uhost hand args} { - global calc_err_noargs - - if {$args == {} || $args == ""} { - calc_smsg $nick "$calc_err_noargs" - return 1 - } - - set result [calc_do $args] - calc_smsg $nick "$result" - return 1 -} - -# -------------------------------------------------------------------------