Skip to content

Instantly share code, notes, and snippets.

@youz
Forked from kosh04/gist:2412049
Created April 19, 2012 01:41
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
Star You must be signed in to star a gist
Save youz/2417780 to your computer and use it in GitHub Desktop.
#xyzzyで這いよれ!ニャル子さんのアレ timer版 (bpmてきとう)
(provide "haiyore")
(defpackage :haiyore
(:use :lisp :editor))
(in-package :haiyore)
(defvar *timer* nil)
(defvar *mlf* nil)
(defparameter *bpm* 145)
(defparameter *anime*
'("(」・ω・)」うー!" 2
"(/・ω・)/にゃー!" 2
"(」・ω・)」うー!" 2
"(/・ω・)/にゃー!" 2
"(」・ω・)」うー!" 2
"(/・ω・)/にゃー!" 4.5
"Let's\(・ω・)/" 0.5
"Let's\(・ω・)/にゃー!" 1))
(defun user::u-nya- ()
(interactive)
(setq *mlf* mode-line-format)
(labels ((timer (i)
(let ((a (nth (* i 2) *anime*))
(b (nth (1+ (* i 2)) *anime*)))
(setq mode-line-format (concat *mlf* " " a)
*timer* (lambda () (timer (rem (1+ i) (/ (length *anime*) 2)))))
(update-mode-line)
(refresh-screen)
(start-timer (/ (* 60 b) *bpm*) *timer* t))))
(timer 0)))
;; お片づけ
(defun user::stop-u-nya- ()
(interactive)
(stop-timer *timer*)
(setq mode-line-format *mlf*
*timer* nil))
@youz
Copy link
Author

youz commented Apr 19, 2012

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment