Jump to content

Tamagotchi emulator: Difference between revisions

m (opening dialogs)
Line 938:
TamagotchiApp()
</lang>
 
=={{header|Phix}}==
{{trans|Go|but with a dirt simple GUI and much harsher gameplay}}
<!--<lang Phix>(phixonline)-->
<span style="color: #000080;font-style:italic;">--
-- demo/rosetta/tamagotchi.exw
-- ===========================
--
-- DEV/fixme: p2js: GAP on IupHbox, IupGetAttribute undefined, ignore IupSetGlobal(UTF8MODE).
-- Also, gameplay is a bit harsh, almost impossible to keep it alive....
--</span>
<span style="color: #008080;">include</span> <span style="color: #000000;">pGUI</span><span style="color: #0000FF;">.</span><span style="color: #000000;">e</span>
<span style="color: #004080;">string</span> <span style="color: #000000;">name</span> <span style="color: #0000FF;">=</span> <span style="color: #008000;">"Fluffy"</span><span style="color: #0000FF;">,</span>
<span style="color: #000000;">chat</span> <span style="color: #0000FF;">=</span> <span style="color: #008000;">""</span>
<span style="color: #004080;">integer</span> <span style="color: #000000;">age</span> <span style="color: #0000FF;">=</span> <span style="color: #000000;">0</span><span style="color: #0000FF;">,</span>
<span style="color: #000000;">bored</span> <span style="color: #0000FF;">=</span> <span style="color: #000000;">0</span><span style="color: #0000FF;">,</span>
<span style="color: #000000;">food</span> <span style="color: #0000FF;">=</span> <span style="color: #000000;">0</span><span style="color: #0000FF;">,</span>
<span style="color: #000000;">poop</span> <span style="color: #0000FF;">=</span> <span style="color: #000000;">0</span>
<span style="color: #004080;">Ihandle</span> <span style="color: #000000;">stabel</span>
<span style="color: #008080;">constant</span> <span style="color: #000000;">verbs</span> <span style="color: #0000FF;">=</span> <span style="color: #0000FF;">{</span><span style="color: #008000;">"Ask"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"Ban"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"Bash"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"Bite"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"Break"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"Build"</span><span style="color: #0000FF;">,</span>
<span style="color: #008000;">"Cut"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"Dig"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"Drag"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"Drop"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"Drink"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"Enjoy"</span><span style="color: #0000FF;">,</span>
<span style="color: #008000;">"Eat"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"End"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"Feed"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"Fill"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"Force"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"Grasp"</span><span style="color: #0000FF;">,</span>
<span style="color: #008000;">"Gas"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"Get"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"Grab"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"Grip"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"Hoist"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"House"</span><span style="color: #0000FF;">,</span>
<span style="color: #008000;">"Ice"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"Ink"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"Join"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"Kick"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"Leave"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"Marry"</span><span style="color: #0000FF;">,</span>
<span style="color: #008000;">"Mix"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"Nab"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"Nail"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"Open"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"Press"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"Quash"</span><span style="color: #0000FF;">,</span>
<span style="color: #008000;">"Rub"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"Run"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"Save"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"Snap"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"Taste"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"Touch"</span><span style="color: #0000FF;">,</span>
<span style="color: #008000;">"Use"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"Vet"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"View"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"Wash"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"Xerox"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"Yield"</span><span style="color: #0000FF;">},</span>
<span style="color: #000000;">nouns</span> <span style="color: #0000FF;">=</span> <span style="color: #0000FF;">{</span><span style="color: #008000;">"arms"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"bugs"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"boots"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"bowls"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"cabins"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"cigars"</span><span style="color: #0000FF;">,</span>
<span style="color: #008000;">"dogs"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"eggs"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"fakes"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"flags"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"greens"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"guests"</span><span style="color: #0000FF;">,</span>
<span style="color: #008000;">"hens"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"hogs"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"items"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"jowls"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"jewels"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"juices"</span><span style="color: #0000FF;">,</span>
<span style="color: #008000;">"kits"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"logs"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"lamps"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"lions"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"levers"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"lemons"</span><span style="color: #0000FF;">,</span>
<span style="color: #008000;">"maps"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"mugs"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"names"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"nests"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"nights"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"nurses"</span><span style="color: #0000FF;">,</span>
<span style="color: #008000;">"orbs"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"owls"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"pages"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"posts"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"quests"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"quotas"</span><span style="color: #0000FF;">,</span>
<span style="color: #008000;">"rats"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"ribs"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"roots"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"rules"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"salads"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"sauces"</span><span style="color: #0000FF;">,</span>
<span style="color: #008000;">"toys"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"urns"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"vines"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"words"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"waters"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"zebras"</span><span style="color: #0000FF;">},</span>
<span style="color: #000000;">boredIcons</span> <span style="color: #0000FF;">=</span> <span style="color: #0000FF;">{</span><span style="color: #008000;">"💤"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"💭"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"❓"</span><span style="color: #0000FF;">},</span>
<span style="color: #000000;">foodIcons</span> <span style="color: #0000FF;">=</span> <span style="color: #0000FF;">{</span><span style="color: #008000;">"🍼"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"🍔"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"🍟"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"🍰"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"🍜"</span><span style="color: #0000FF;">},</span>
<span style="color: #000000;">poopIcons</span> <span style="color: #0000FF;">=</span> <span style="color: #0000FF;">{</span><span style="color: #008000;">"💩"</span><span style="color: #0000FF;">},</span>
<span style="color: #000000;">sickIcons</span> <span style="color: #0000FF;">=</span> <span style="color: #0000FF;">{{</span><span style="color: #008000;">"😄"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"😃"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"😀"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"😊"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"😎"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"👍"</span><span style="color: #0000FF;">},</span> <span style="color: #000080;font-style:italic;">// ok</span>
<span style="color: #0000FF;">{</span><span style="color: #008000;">"😪"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"😥"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"😰"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"😓"</span><span style="color: #0000FF;">},</span> <span style="color: #000080;font-style:italic;">// ailing</span>
<span style="color: #0000FF;">{</span><span style="color: #008000;">"😩"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"😫"</span><span style="color: #0000FF;">},</span> <span style="color: #000080;font-style:italic;">// bad</span>
<span style="color: #0000FF;">{</span><span style="color: #008000;">"😡"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"😱"</span><span style="color: #0000FF;">},</span> <span style="color: #000080;font-style:italic;">// very bad</span>
<span style="color: #0000FF;">{</span><span style="color: #008000;">"❌"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"💀"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"👽"</span><span style="color: #0000FF;">,</span> <span style="color: #008000;">"😇"</span><span style="color: #0000FF;">}},</span> <span style="color: #000080;font-style:italic;">// dead</span>
<span style="color: #000000;">sicklevel</span> <span style="color: #0000FF;">=</span> <span style="color: #0000FF;">{</span><span style="color: #000000;">1</span><span style="color: #0000FF;">,</span><span style="color: #000000;">1</span><span style="color: #0000FF;">,</span><span style="color: #000000;">1</span><span style="color: #0000FF;">,</span><span style="color: #000000;">2</span><span style="color: #0000FF;">,</span><span style="color: #000000;">2</span><span style="color: #0000FF;">,</span><span style="color: #000000;">3</span><span style="color: #0000FF;">,</span><span style="color: #000000;">3</span><span style="color: #0000FF;">,</span><span style="color: #000000;">4</span><span style="color: #0000FF;">,</span><span style="color: #000000;">4</span><span style="color: #0000FF;">,</span><span style="color: #000000;">4</span><span style="color: #0000FF;">,</span><span style="color: #000000;">4</span><span style="color: #0000FF;">,</span><span style="color: #000000;">5</span><span style="color: #0000FF;">},</span>
<span style="color: #000000;">fmt</span> <span style="color: #0000FF;">=</span> <span style="color: #008000;">"%s %s (🎂 %d/42) %s %d %s"</span>
<span style="color: #008080;">procedure</span> <span style="color: #000000;">feed</span><span style="color: #0000FF;">()</span>
<span style="color: #000000;">food</span> <span style="color: #0000FF;">+=</span> <span style="color: #000000;">1</span>
<span style="color: #008080;">end</span> <span style="color: #008080;">procedure</span>
<span style="color: #008080;">procedure</span> <span style="color: #000000;">play</span><span style="color: #0000FF;">()</span>
<span style="color: #000080;font-style:italic;">// may or may not help with boredom</span>
<span style="color: #000000;">bored</span> <span style="color: #0000FF;">=</span> <span style="color: #7060A8;">max</span><span style="color: #0000FF;">(</span><span style="color: #000000;">0</span><span style="color: #0000FF;">,</span> <span style="color: #000000;">bored</span><span style="color: #0000FF;">-</span><span style="color: #7060A8;">rand</span><span style="color: #0000FF;">(</span><span style="color: #000000;">2</span><span style="color: #0000FF;">))</span>
<span style="color: #008080;">end</span> <span style="color: #008080;">procedure</span>
<span style="color: #008080;">procedure</span> <span style="color: #000000;">talk</span><span style="color: #0000FF;">()</span>
<span style="color: #004080;">string</span> <span style="color: #000000;">verb</span> <span style="color: #0000FF;">=</span> <span style="color: #000000;">verbs</span><span style="color: #0000FF;">[</span><span style="color: #7060A8;">rand</span><span style="color: #0000FF;">(</span><span style="color: #7060A8;">length</span><span style="color: #0000FF;">(</span><span style="color: #000000;">verbs</span><span style="color: #0000FF;">))],</span>
<span style="color: #000000;">noun</span> <span style="color: #0000FF;">=</span> <span style="color: #000000;">nouns</span><span style="color: #0000FF;">[</span><span style="color: #7060A8;">rand</span><span style="color: #0000FF;">(</span><span style="color: #7060A8;">length</span><span style="color: #0000FF;">(</span><span style="color: #000000;">nouns</span><span style="color: #0000FF;">))]</span>
<span style="color: #000000;">bored</span> <span style="color: #0000FF;">=</span> <span style="color: #7060A8;">max</span><span style="color: #0000FF;">(</span><span style="color: #000000;">0</span><span style="color: #0000FF;">,</span> <span style="color: #000000;">bored</span><span style="color: #0000FF;">-</span><span style="color: #000000;">1</span><span style="color: #0000FF;">)</span>
<span style="color: #000000;">chat</span> <span style="color: #0000FF;">=</span> <span style="color: #000000;">verb</span> <span style="color: #0000FF;">&</span> <span style="color: #008000;">" the "</span> <span style="color: #0000FF;">&</span> <span style="color: #000000;">noun</span> <span style="color: #0000FF;">&</span> <span style="color: #008000;">". "</span>
<span style="color: #008080;">end</span> <span style="color: #008080;">procedure</span>
<span style="color: #008080;">procedure</span> <span style="color: #000000;">clean</span><span style="color: #0000FF;">()</span>
<span style="color: #000000;">poop</span> <span style="color: #0000FF;">=</span> <span style="color: #7060A8;">max</span><span style="color: #0000FF;">(</span><span style="color: #000000;">0</span><span style="color: #0000FF;">,</span> <span style="color: #000000;">poop</span><span style="color: #0000FF;">-</span><span style="color: #000000;">1</span><span style="color: #0000FF;">)</span>
<span style="color: #008080;">end</span> <span style="color: #008080;">procedure</span>
<span style="color: #008080;">procedure</span> <span style="color: #000000;">wait</span><span style="color: #0000FF;">()</span>
<span style="color: #000080;font-style:italic;">// get older / eat food / get bored / poop</span>
<span style="color: #000000;">age</span> <span style="color: #0000FF;">+=</span> <span style="color: #000000;">1</span>
<span style="color: #000000;">bored</span> <span style="color: #0000FF;">+=</span> <span style="color: #7060A8;">rand</span><span style="color: #0000FF;">(</span><span style="color: #000000;">2</span><span style="color: #0000FF;">)</span>
<span style="color: #000000;">food</span> <span style="color: #0000FF;">=</span> <span style="color: #7060A8;">max</span><span style="color: #0000FF;">(</span><span style="color: #000000;">0</span><span style="color: #0000FF;">,</span> <span style="color: #000000;">food</span><span style="color: #0000FF;">-</span><span style="color: #000000;">2</span><span style="color: #0000FF;">)</span>
<span style="color: #000000;">poop</span> <span style="color: #0000FF;">+=</span> <span style="color: #7060A8;">rand</span><span style="color: #0000FF;">(</span><span style="color: #000000;">2</span><span style="color: #0000FF;">)-</span><span style="color: #000000;">1</span>
<span style="color: #008080;">end</span> <span style="color: #008080;">procedure</span>
<span style="color: #008080;">function</span> <span style="color: #000000;">sickness</span><span style="color: #0000FF;">()</span>
<span style="color: #000080;font-style:italic;">// dies at age 42 at the latest
// too much boredom / food / poop</span>
<span style="color: #008080;">return</span> <span style="color: #000000;">poop</span> <span style="color: #0000FF;">+</span> <span style="color: #000000;">bored</span> <span style="color: #0000FF;">+</span> <span style="color: #7060A8;">max</span><span style="color: #0000FF;">(</span><span style="color: #000000;">0</span><span style="color: #0000FF;">,</span> <span style="color: #000000;">age</span><span style="color: #0000FF;">-</span><span style="color: #000000;">32</span><span style="color: #0000FF;">)</span> <span style="color: #0000FF;">+</span> <span style="color: #7060A8;">abs</span><span style="color: #0000FF;">(</span><span style="color: #000000;">food</span><span style="color: #0000FF;">-</span><span style="color: #000000;">2</span><span style="color: #0000FF;">)</span>
<span style="color: #008080;">end</span> <span style="color: #008080;">function</span>
<span style="color: #008080;">function</span> <span style="color: #000000;">alive</span><span style="color: #0000FF;">()</span>
<span style="color: #008080;">return</span> <span style="color: #000000;">sickness</span><span style="color: #0000FF;">()</span> <span style="color: #0000FF;"><=</span> <span style="color: #000000;">10</span>
<span style="color: #008080;">end</span> <span style="color: #008080;">function</span>
<span style="color: #008080;">function</span> <span style="color: #000000;">randn</span><span style="color: #0000FF;">(</span><span style="color: #004080;">sequence</span> <span style="color: #000000;">s</span><span style="color: #0000FF;">,</span> <span style="color: #004080;">integer</span> <span style="color: #000000;">n</span><span style="color: #0000FF;">)</span>
<span style="color: #004080;">string</span> <span style="color: #000000;">res</span> <span style="color: #0000FF;">=</span> <span style="color: #008000;">""</span>
<span style="color: #008080;">for</span> <span style="color: #000000;">i</span><span style="color: #0000FF;">=</span><span style="color: #000000;">1</span> <span style="color: #008080;">to</span> <span style="color: #000000;">n</span> <span style="color: #008080;">do</span>
<span style="color: #000000;">res</span> <span style="color: #0000FF;">&=</span> <span style="color: #000000;">s</span><span style="color: #0000FF;">[</span><span style="color: #7060A8;">rand</span><span style="color: #0000FF;">(</span><span style="color: #7060A8;">length</span><span style="color: #0000FF;">(</span><span style="color: #000000;">s</span><span style="color: #0000FF;">))]</span>
<span style="color: #008080;">end</span> <span style="color: #008080;">for</span>
<span style="color: #008080;">return</span> <span style="color: #000000;">res</span>
<span style="color: #008080;">end</span> <span style="color: #008080;">function</span>
<span style="color: #008080;">procedure</span> <span style="color: #000000;">status</span><span style="color: #0000FF;">()</span>
<span style="color: #000000;">wait</span><span style="color: #0000FF;">()</span>
<span style="color: #000080;font-style:italic;">// get health status from sickness level</span>
<span style="color: #004080;">integer</span> <span style="color: #000000;">s</span> <span style="color: #0000FF;">=</span> <span style="color: #000000;">sickness</span><span style="color: #0000FF;">(),</span>
<span style="color: #000000;">sl</span> <span style="color: #0000FF;">=</span> <span style="color: #000000;">sicklevel</span><span style="color: #0000FF;">[</span><span style="color: #7060A8;">min</span><span style="color: #0000FF;">(</span><span style="color: #000000;">s</span><span style="color: #0000FF;">+</span><span style="color: #000000;">1</span><span style="color: #0000FF;">,</span><span style="color: #000000;">12</span><span style="color: #0000FF;">)]</span>
<span style="color: #004080;">string</span> <span style="color: #000000;">health</span> <span style="color: #0000FF;">=</span> <span style="color: #000000;">randn</span><span style="color: #0000FF;">(</span><span style="color: #000000;">sickIcons</span><span style="color: #0000FF;">[</span><span style="color: #000000;">sl</span><span style="color: #0000FF;">],</span><span style="color: #000000;">1</span><span style="color: #0000FF;">)</span>
<span style="color: #000080;font-style:italic;">// get boredom / food / poop icons</span>
<span style="color: #004080;">string</span> <span style="color: #000000;">state</span> <span style="color: #0000FF;">=</span> <span style="color: #008000;">" R.I.P"</span>
<span style="color: #008080;">if</span> <span style="color: #000000;">alive</span><span style="color: #0000FF;">()</span> <span style="color: #008080;">then</span>
<span style="color: #004080;">string</span> <span style="color: #000000;">b</span> <span style="color: #0000FF;">=</span> <span style="color: #000000;">randn</span><span style="color: #0000FF;">(</span><span style="color: #000000;">boredIcons</span><span style="color: #0000FF;">,</span><span style="color: #000000;">bored</span><span style="color: #0000FF;">),</span>
<span style="color: #000000;">f</span> <span style="color: #0000FF;">=</span> <span style="color: #000000;">randn</span><span style="color: #0000FF;">(</span><span style="color: #000000;">foodIcons</span><span style="color: #0000FF;">,</span><span style="color: #000000;">food</span><span style="color: #0000FF;">),</span>
<span style="color: #000000;">p</span> <span style="color: #0000FF;">=</span> <span style="color: #000000;">randn</span><span style="color: #0000FF;">(</span><span style="color: #000000;">poopIcons</span><span style="color: #0000FF;">,</span><span style="color: #000000;">poop</span><span style="color: #0000FF;">)</span>
<span style="color: #000000;">state</span> <span style="color: #0000FF;">=</span> <span style="color: #7060A8;">sprintf</span><span style="color: #0000FF;">(</span><span style="color: #008000;">"{ %s } { %s } { %s }"</span><span style="color: #0000FF;">,</span> <span style="color: #0000FF;">{</span><span style="color: #000000;">b</span><span style="color: #0000FF;">,</span> <span style="color: #000000;">f</span><span style="color: #0000FF;">,</span> <span style="color: #000000;">p</span><span style="color: #0000FF;">})</span>
<span style="color: #008080;">end</span> <span style="color: #008080;">if</span>
<span style="color: #7060A8;">IupSetStrAttribute</span><span style="color: #0000FF;">(</span><span style="color: #000000;">stabel</span><span style="color: #0000FF;">,</span><span style="color: #008000;">"TITLE"</span><span style="color: #0000FF;">,</span><span style="color: #000000;">fmt</span><span style="color: #0000FF;">,{</span><span style="color: #000000;">chat</span><span style="color: #0000FF;">,</span><span style="color: #000000;">name</span><span style="color: #0000FF;">,</span><span style="color: #000000;">age</span><span style="color: #0000FF;">,</span><span style="color: #000000;">health</span><span style="color: #0000FF;">,</span><span style="color: #000000;">s</span><span style="color: #0000FF;">,</span><span style="color: #000000;">state</span><span style="color: #0000FF;">})</span>
<span style="color: #000000;">chat</span> <span style="color: #0000FF;">=</span> <span style="color: #008000;">""</span>
<span style="color: #008080;">end</span> <span style="color: #008080;">procedure</span>
<span style="color: #008080;">function</span> <span style="color: #000000;">button_cb</span><span style="color: #0000FF;">(</span><span style="color: #004080;">Ihandle</span> <span style="color: #000000;">ih</span><span style="color: #0000FF;">)</span>
<span style="color: #004080;">string</span> <span style="color: #000000;">title</span> <span style="color: #0000FF;">=</span> <span style="color: #7060A8;">IupGetAttribute</span><span style="color: #0000FF;">(</span><span style="color: #000000;">ih</span><span style="color: #0000FF;">,</span><span style="color: #008000;">"TITLE"</span><span style="color: #0000FF;">)</span>
<span style="color: #7060A8;">call_proc</span><span style="color: #0000FF;">(</span><span style="color: #7060A8;">routine_id</span><span style="color: #0000FF;">(</span><span style="color: #000000;">title</span><span style="color: #0000FF;">),{})</span>
<span style="color: #000000;">status</span><span style="color: #0000FF;">()</span>
<span style="color: #008080;">return</span> <span style="color: #004600;">IUP_DEFAULT</span>
<span style="color: #008080;">end</span> <span style="color: #008080;">function</span>
<span style="color: #008080;">constant</span> <span style="color: #000000;">cb_button</span> <span style="color: #0000FF;">=</span> <span style="color: #7060A8;">Icallback</span><span style="color: #0000FF;">(</span><span style="color: #008000;">"button_cb"</span><span style="color: #0000FF;">)</span>
<span style="color: #008080;">function</span> <span style="color: #000000;">buttons</span><span style="color: #0000FF;">()</span>
<span style="color: #004080;">sequence</span> <span style="color: #000000;">b</span> <span style="color: #0000FF;">=</span> <span style="color: #0000FF;">{</span><span style="color: #008000;">"feed"</span><span style="color: #0000FF;">,</span><span style="color: #008000;">"play"</span><span style="color: #0000FF;">,</span><span style="color: #008000;">"talk"</span><span style="color: #0000FF;">,</span><span style="color: #008000;">"clean"</span><span style="color: #0000FF;">,</span><span style="color: #008000;">"wait"</span><span style="color: #0000FF;">}</span>
<span style="color: #008080;">for</span> <span style="color: #000000;">i</span><span style="color: #0000FF;">=</span><span style="color: #000000;">1</span> <span style="color: #008080;">to</span> <span style="color: #7060A8;">length</span><span style="color: #0000FF;">(</span><span style="color: #000000;">b</span><span style="color: #0000FF;">)</span> <span style="color: #008080;">do</span>
<span style="color: #000000;">b</span><span style="color: #0000FF;">[</span><span style="color: #000000;">i</span><span style="color: #0000FF;">]</span> <span style="color: #0000FF;">=</span> <span style="color: #7060A8;">IupButton</span><span style="color: #0000FF;">(</span><span style="color: #000000;">b</span><span style="color: #0000FF;">[</span><span style="color: #000000;">i</span><span style="color: #0000FF;">],</span><span style="color: #000000;">cb_button</span><span style="color: #0000FF;">)</span>
<span style="color: #008080;">end</span> <span style="color: #008080;">for</span>
<span style="color: #004080;">Ihandle</span> <span style="color: #000000;">res</span> <span style="color: #0000FF;">=</span> <span style="color: #7060A8;">IupHbox</span><span style="color: #0000FF;">(</span><span style="color: #000000;">b</span><span style="color: #0000FF;">,</span><span style="color: #008000;">`GAP=35x10`</span><span style="color: #0000FF;">)</span>
<span style="color: #008080;">return</span> <span style="color: #000000;">res</span>
<span style="color: #008080;">end</span> <span style="color: #008080;">function</span>
<span style="color: #7060A8;">IupOpen</span><span style="color: #0000FF;">()</span>
<span style="color: #008080;">if</span> <span style="color: #7060A8;">platform</span><span style="color: #0000FF;">()!=</span><span style="color: #004600;">JS</span> <span style="color: #008080;">then</span>
<span style="color: #7060A8;">IupSetGlobal</span><span style="color: #0000FF;">(</span><span style="color: #008000;">"UTF8MODE"</span><span style="color: #0000FF;">,</span><span style="color: #008000;">"YES"</span><span style="color: #0000FF;">)</span>
<span style="color: #008080;">end</span> <span style="color: #008080;">if</span>
<span style="color: #000000;">stabel</span> <span style="color: #0000FF;">=</span> <span style="color: #7060A8;">IupLabel</span><span style="color: #0000FF;">(</span><span style="color: #008000;">""</span><span style="color: #0000FF;">,</span><span style="color: #008000;">"EXPAND=YES"</span><span style="color: #0000FF;">)</span>
<span style="color: #004080;">Ihandle</span> <span style="color: #000000;">vbox</span> <span style="color: #0000FF;">=</span> <span style="color: #7060A8;">IupVbox</span><span style="color: #0000FF;">({</span><span style="color: #000000;">stabel</span><span style="color: #0000FF;">,</span><span style="color: #000000;">buttons</span><span style="color: #0000FF;">()},</span><span style="color: #008000;">`MARGIN=5x5`</span><span style="color: #0000FF;">),</span>
<span style="color: #000000;">dlg</span> <span style="color: #0000FF;">=</span> <span style="color: #7060A8;">IupDialog</span><span style="color: #0000FF;">(</span><span style="color: #000000;">vbox</span><span style="color: #0000FF;">,</span><span style="color: #008000;">`TITLE=tamagotchi`</span><span style="color: #0000FF;">)</span>
<span style="color: #7060A8;">IupShow</span><span style="color: #0000FF;">(</span><span style="color: #000000;">dlg</span><span style="color: #0000FF;">)</span>
<span style="color: #000000;">status</span><span style="color: #0000FF;">()</span>
<span style="color: #008080;">if</span> <span style="color: #7060A8;">platform</span><span style="color: #0000FF;">()!=</span><span style="color: #004600;">JS</span> <span style="color: #008080;">then</span>
<span style="color: #7060A8;">IupMainLoop</span><span style="color: #0000FF;">()</span>
<span style="color: #7060A8;">IupClose</span><span style="color: #0000FF;">()</span>
<span style="color: #008080;">end</span> <span style="color: #008080;">if</span>
<!--</lang>-->
 
=={{header|Objeck}}==
7,813

edits

Cookies help us deliver our services. By using our services, you agree to our use of cookies.