Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- append = [$arg1 = (concat (getalias $arg1) $arg2)]
- rndo = [at $arg1 (rnd (listlen $arg1))]
- strfind = [> (strstr $arg1 $arg2) -1]
- loopchar = [
- loop $arg1 (strlen $arg2) [
- @arg1 = (substr $arg2 $[@arg1] 1)
- @arg3
- ]
- ]
- //=======================================================================================//
- _man_guesslist = [
- PENCIL CLOCKWERK MATTRESS AUTOMOBILE AIRPLANE CELLPHONE
- PRINTER TISSUE MONITOR IRONMAN AWAKENING REALITY
- COMPROMISE CONTROLLER IMPOSSIBILITY KEYCHAIN DEMISE
- ]
- _man_buildword = [
- local tmp1 tmp2
- loopchar c $arg1 [
- if (=s $c (substr @arg1 0 1)) [tmp1 = $c]
- tmp2 = (concatword $tmp2 (? (|| (=s $c $tmp1) (strfind [@@arg2] $c)) $c "_"))
- ]
- _man_guessword = $tmp2
- ]
- _man_reset = [
- _man_wrong = ""
- _man_right = ""
- _man_triesleft = 7
- _man_guessword = ""
- _man_rndword = (rndo (listdel $_man_guesslist (getalias _man_rndword)))
- _man_buildword $_man_rndword
- ]
- _man_reset
- hangman = [showgui hangman]
- newgui hangman [
- guistayopen [
- guilist [
- guiimage "data/cube.png" [_man_reset] 2 0
- guistrut 2
- guilist [
- guistrut 24 1
- guialign 0 [
- guitext (format "%1%2" (
- ? (! $_man_triesleft) "^f3" (? (=s $_man_guessword $_man_rndword) "^f0" "^f2")
- ) $_man_guessword) 0
- ]
- guistrut 1
- guialign 0 [
- cond (! $_man_triesleft) [
- _man_buildword $_man_rndword $_man_rndword
- guitext "^f2You failed miserably! Boo!" 0
- ] (=s $_man_guessword $_man_rndword) [
- guitext "^f2Congratulations! You won!" 0
- ] [
- guitext (concat "^f2Tries Left:^f7" $_man_triesleft) 0
- ]
- ]
- ]
- guibar
- loop p 7 [
- guilist [
- guistrut 2 1
- loopchar p (at "AHOV BIPW CJQX DKRY ELSZ FMT GNU" @p) [
- guialign 0 [
- guibutton (format "%2%1" $p (
- ? (strfind $_man_guessword $p) "^f1" (
- ? (|| (strfind $_man_wrong $p) (=s $_man_guessword $_man_rndword) (! $_man_triesleft)) "^f4"
- )
- )) [
- if (
- && (! (strfind (concat $_man_right $_man_wrong) @p)) (
- !=s $_man_guessword $_man_rndword
- ) $_man_triesleft
- ) [
- if (strfind $_man_rndword @@p) [
- append _man_right @@@p
- _man_buildword $_man_rndword $_man_right
- ] [
- _man_triesleft = (- $_man_triesleft 1)
- append _man_wrong @@@p
- ]
- ]
- ] 0
- ]
- ]
- ]
- ]
- ]
- ]
- ] " Hangman " [_man_reset]
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement