Вот набросок примерный, раз в минуту у него др. Надо покормить и убрать чтобы не умер. Если умрет, то заново загрузить скрипт и он начнет расти сначала.
Думаю в таком ключе и продолжать. Предложения приветствуются.
bind time - "* * * * *" tamagochi_birthsday
proc tamagochi_birthsday {min hour day month year} {
global tamagochifeed tamagochiage
set fid [open "tamagochi.txt" "r"]
set data [split [read -nonewline $fid] "\n"]
close $fid
if {[isnumber [lindex $data 0]]} {
set tamagochiage [expr [lindex $data 0] + 1]
putserv "PRIVMSG #erotic :Твоему тамагошке уже $tamagochiage лет."
set fid [open "tamagochi.txt" "w"]
puts $fid $tamagochiage
close $fid
} else {
set tamagochiage [linsert $data 0 "1"]
putserv "PRIVMSG #erotic :Твоему тамагошке $tamagochiage годик."
set fid [open "tamagochi.txt" "w"]
puts $fid $tamagochiage
close $fid
}
set tamagochifeed 0
putserv "PRIVMSG #erotic :Твоего тамагошку надо покормить командой !tamagochi feed чтобы он не помер."
utimer 30 tamagochi_checkfeed
}
proc tamagochi_checkfeed {} {
global tamagochifeed tamagochiage
if {$tamagochifeed == 0} {
putserv "PRIVMSG #erotic :Твой тамагошка умер от голода не дожив до [expr $tamagochiage + 1] лет."
unbind time - "* * * * *" tamagochi_birthsday
set fid [open "tamagochi.txt" "w"]
puts $fid 0
close $fid
}
}
bind pub - !tamagochi tamagochi_manage
proc tamagochi_manage {nick uhost hand chan text} {
global tamagochifeed tamagochiage tamagochiclear
if {$text == "feed"} {
set tamagochifeed 1
putserv "PRIVMSG #erotic :Ты покормил своего тамагошку."
set tamagochiclear 0
putserv "PRIVMSG #erotic :Твой тамагошка покакал. Убери за ним командой !tamagochi clear"
utimer 15 tamagochi_checkclear
}
if {$text == "clear"} {
set tamagochiclear 1
putserv "PRIVMSG #erotic :Ты убрал за тамагошкой. Он рад."
}
}
proc tamagochi_checkclear {} {
global tamagochifeed tamagochiage tamagochiclear
if {$tamagochiclear == 0} {
putserv "PRIVMSG #erotic :Твой тамагошка подскользнулся на своей какашке упал и умер не дожив до [expr $tamagochiage + 1] лет."
unbind time - "* * * * *" tamagochi_birthsday
set fid [open "tamagochi.txt" "w"]
puts $fid 0
close $fid
}
}