Yes, i was bored today.... ;;;Call Function like (gig T 23 400) ;;;Arguments: ;;;mustang_Sally_flag (T or nil) ;;;#songs (Integer) ;;;cash_expected (Integer) ;;;Usage of mustang_Sally_flag: ;;;Set to T (True) if ;;; a)forced to play mustang sally ;;; b)forced to play brown eyed girl ;;; c)forced to play stuff which generally raises beer consumption of band ;;; d)it's very hot ;;; e)it's got high humidity ;;; f)it's very cold ;;; g)it's very dry ;;; h)it's the birthday of a bandmember ;;;For simplicity's sake, T for mustang_sally_flag can be used without too much worrying. (defun gig (mustang_sally_flag #songs cash_expected / band setup beer_quantity inc cash_actual) ;;;Putting the band together, setting basic variables: (setq band (list "voc" "git" "bs" "dr") setup 0 teardown 0 beer_quantity 0 ) ;;;Setup Routine, if setup = 100 = Gig-ready. ;;;Note: increment 0 when voc is a optimistic value for testing, ;;;actual range may be -1 to -2.5 (while (< setup 100) (foreach band_member band (if (= band_member "voc") ;;;voc's contribution to setup: (setq setup (+ 0 setup)) ;;;Rob's (rest of band) contribution to setup: (Setq setup (1+ setup)) ) ) ) ;;;Update beer_quantity (Setq beer_quantity (+ 4 beer_quantity)) ;;;Here we go. ;;;Iterate through # of songs but first check ;;;for mustang_sally_flag. (if mustang_sally_flag (setq inc 1.2)) (repeat #songs ;;;The 0.4 increment per song is guesstimation. Change for own flavour. (setq beer_quantity (+ (* inc 0.4) beer_quantity)) ) ;;;Teardown+load-in routine. Note the cdr at the foreach, ;;;---> "voc" not available due to hot chick at the bar. ;;;Note: True hotness of chick decreases with beer_quantity. ;;;Teardown = 100 = ready to go home. (while (< teardown 100) (foreach band_member (cdr band) (Setq teardown (+ 0.8 teardown)) ) ) ;;;Don't forget the last beers before leaving! (setq beer_quantity (+ 4 beer_quantity)) ;;;But it's so funny right now! (setq beer_quantity (+ 4 beer_quantity)) ;;;Hm, the other chick at the bar keeps getting hotter every time i look at her! (setq beer_quantity (+ 4 beer_quantity)) ;;;Oh, she's your girlfriend? May invite the both of you? (Phew!) (setq beer_quantity (+ 4 beer_quantity)) ;;;Time to calculate the earnings: (Setq cash_actual (- cash_expected beer_quantity)) (if (> cash_actual 0) (princ "Good Gig!")) );end defun, end Gig, good night!
Hi, I'm a hardware guy. Just show me where to plug it in and turn it on. Still, it looks like if you made any money at all without playing Mustang Sally, you had a good gig. Thank you for your indulgence, BassCliff
Tried the beta, some UAT feedback indicates the following is required For mustang_sally-flag: i) Audience member sits in at insistence of club owner or function organizer ;;;"Oh you’re the Bass player? Can you introduce me and my friend to the singer?" (setq beer_quantity (+ 4 bourbon_quantity)) ;;;"Oh you’re the Bass player? Can you introduce me and my friend to the drummer?" (setq beer_quantity (+ 8 bourbon_quantity))