{"id":202,"date":"2020-07-27T12:00:19","date_gmt":"2020-07-27T12:00:19","guid":{"rendered":"https:\/\/blogs.scummvm.org\/djsrv\/?p=202"},"modified":"2022-05-24T00:45:12","modified_gmt":"2022-05-24T00:45:12","slug":"events-and-things","status":"publish","type":"post","link":"https:\/\/blogs.scummvm.org\/djsrv\/2020\/07\/27\/events-and-things\/","title":{"rendered":"Events and Things"},"content":{"rendered":"<section class=\"body\">I spent last week fixing more Lingo issues, mostly event related:<\/p>\n<ul>\n<li>Previously, event processing didn\u2019t take into account the fact that multiple movies could be running at the same time, as it was implemented before MIAWs. Events were handled by whatever movie was currently being stepped, even if the event should\u2019ve gone to another movie. I refactored the event handling code, and that\u2019s been fixed.<\/li>\n<li>I made the Lingo interpreter pause every 100 operations to process events, preventing long Lingo scripts from blocking mouse position updates and quit events.<\/li>\n<li>I changed menu item callbacks to use the event system, whereas before they just haphazardly created and called global functions.<\/li>\n<li>I modified the Lingo interpreter so that handlers whose return values aren\u2019t used don\u2019t leave garbage on the stack.<\/li>\n<li>Lots of small bug fixes, and a few Lingo features like <code>the title of window<\/code><\/li>\n<\/ul>\n<p>Nothing I did last week is particularly interesting to look at, so here\u2019s a bug in <em>Chop Suey<\/em> I fixed today:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-203\" src=\"https:\/\/blogs.scummvm.org\/djsrv\/wp-content\/uploads\/sites\/4\/2022\/05\/mudpup.png\" alt=\"\" width=\"668\" height=\"536\" srcset=\"https:\/\/blogs.scummvm.org\/djsrv\/wp-content\/uploads\/sites\/4\/2022\/05\/mudpup.png 668w, https:\/\/blogs.scummvm.org\/djsrv\/wp-content\/uploads\/sites\/4\/2022\/05\/mudpup-300x241.png 300w, https:\/\/blogs.scummvm.org\/djsrv\/wp-content\/uploads\/sites\/4\/2022\/05\/mudpup-480x385.png 480w\" sizes=\"auto, (max-width: 668px) 100vw, 668px\" \/>Before, you couldn\u2019t put clothes on the dog. Now, you can put clothes on the dog. Problem solved. \ud83d\ude42<\/p>\n<\/section>\n","protected":false},"excerpt":{"rendered":"<p>I spent last week fixing more Lingo issues, mostly event related: Previously, event processing didn\u2019t take into account the fact that multiple movies could be running at the same time, as it was implemented before MIAWs. Events were handled by whatever movie was currently being stepped, even if the event should\u2019ve gone to another movie. [&hellip;]<\/p>\n","protected":false},"author":4,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-202","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"https:\/\/blogs.scummvm.org\/djsrv\/wp-json\/wp\/v2\/posts\/202","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blogs.scummvm.org\/djsrv\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blogs.scummvm.org\/djsrv\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blogs.scummvm.org\/djsrv\/wp-json\/wp\/v2\/users\/4"}],"replies":[{"embeddable":true,"href":"https:\/\/blogs.scummvm.org\/djsrv\/wp-json\/wp\/v2\/comments?post=202"}],"version-history":[{"count":2,"href":"https:\/\/blogs.scummvm.org\/djsrv\/wp-json\/wp\/v2\/posts\/202\/revisions"}],"predecessor-version":[{"id":205,"href":"https:\/\/blogs.scummvm.org\/djsrv\/wp-json\/wp\/v2\/posts\/202\/revisions\/205"}],"wp:attachment":[{"href":"https:\/\/blogs.scummvm.org\/djsrv\/wp-json\/wp\/v2\/media?parent=202"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blogs.scummvm.org\/djsrv\/wp-json\/wp\/v2\/categories?post=202"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blogs.scummvm.org\/djsrv\/wp-json\/wp\/v2\/tags?post=202"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}