{"id":55872,"student_id":3760,"content":"{\"files\":{\"src/appinventor/ai_appinventor/MiniGolf_S/Screen1.bky\":\"\\u003cxml xmlns=\\\"http://www.w3.org/1999/xhtml\\\"\\u003e\\n \\u003cblock type=\\\"global_declaration\\\" id=\\\"~bIAC=Y-/wJqQ6k:5.M;\\\" x=\\\"0\\\" y=\\\"0\\\"\\u003e\\n \\u003cfield name=\\\"NAME\\\"\\u003e揮桿數\\u003c/field\\u003e\\n \\u003cvalue name=\\\"VALUE\\\"\\u003e\\n \\u003cblock type=\\\"math_number\\\" id=\\\"1Dc5)M/rt%,bA/.:NxAL\\\"\\u003e\\n \\u003cfield name=\\\"NUM\\\"\\u003e0\\u003c/field\\u003e\\n \\u003c/block\\u003e\\n \\u003c/value\\u003e\\n \\u003c/block\\u003e\\n \\u003cblock type=\\\"component_event\\\" id=\\\"0Z]EFRR\\\\!TY@^)t,a;Glb\\\" x=\\\"0\\\" y=\\\"53\\\"\\u003e\\n \\u003cmutation component_type=\\\"Ball\\\" instance_name=\\\"高爾夫球\\\" event_name=\\\"Flung\\\"\\u003e\\u003c/mutation\\u003e\\n \\u003cfield name=\\\"COMPONENT_SELECTOR\\\"\\u003e高爾夫球\\u003c/field\\u003e\\n \\u003cstatement name=\\\"DO\\\"\\u003e\\n \\u003cblock type=\\\"component_method\\\" id=\\\"FP`t?zY$ek$Q6O/KA7\\\\!)\\\"\\u003e\\n \\u003cmutation component_type=\\\"Sound\\\" method_name=\\\"Play\\\" is_generic=\\\"false\\\" instance_name=\\\"打球音效\\\"\\u003e\\u003c/mutation\\u003e\\n \\u003cfield name=\\\"COMPONENT_SELECTOR\\\"\\u003e打球音效\\u003c/field\\u003e\\n \\u003cnext\\u003e\\n \\u003cblock type=\\\"component_set_get\\\" id=\\\"b/!6:N2R7E2NBQ(CGEc2\\\"\\u003e\\n \\u003cmutation component_type=\\\"Ball\\\" set_or_get=\\\"set\\\" property_name=\\\"Heading\\\" is_generic=\\\"false\\\" instance_name=\\\"高爾夫球\\\"\\u003e\\u003c/mutation\\u003e\\n \\u003cfield name=\\\"COMPONENT_SELECTOR\\\"\\u003e高爾夫球\\u003c/field\\u003e\\n \\u003cfield name=\\\"PROP\\\"\\u003eHeading\\u003c/field\\u003e\\n \\u003cvalue name=\\\"VALUE\\\"\\u003e\\n \\u003cblock type=\\\"lexical_variable_get\\\" id=\\\"04Fzk1eQJ3.yQn3jboZR\\\"\\u003e\\n \\u003cmutation\\u003e\\n \\u003ceventparam name=\\\"heading\\\"\\u003e\\u003c/eventparam\\u003e\\n \\u003c/mutation\\u003e\\n \\u003cfield name=\\\"VAR\\\"\\u003e方向\\u003c/field\\u003e\\n \\u003c/block\\u003e\\n \\u003c/value\\u003e\\n \\u003cnext\\u003e\\n \\u003cblock type=\\\"component_set_get\\\" id=\\\"o]K]XUCtRn1.:XA({@.$\\\"\\u003e\\n \\u003cmutation component_type=\\\"Ball\\\" set_or_get=\\\"set\\\" property_name=\\\"Speed\\\" is_generic=\\\"false\\\" instance_name=\\\"高爾夫球\\\"\\u003e\\u003c/mutation\\u003e\\n \\u003cfield name=\\\"COMPONENT_SELECTOR\\\"\\u003e高爾夫球\\u003c/field\\u003e\\n \\u003cfield name=\\\"PROP\\\"\\u003eSpeed\\u003c/field\\u003e\\n \\u003cvalue name=\\\"VALUE\\\"\\u003e\\n \\u003cblock type=\\\"math_multiply\\\" id=\\\"s?3eX(]L67H9ICQ5g]5d\\\"\\u003e\\n \\u003cmutation items=\\\"2\\\"\\u003e\\u003c/mutation\\u003e\\n \\u003cvalue name=\\\"NUM0\\\"\\u003e\\n \\u003cblock type=\\\"lexical_variable_get\\\" id=\\\"W1`P5Z-PP5h@;Z}o0))D\\\"\\u003e\\n \\u003cmutation\\u003e\\n \\u003ceventparam name=\\\"speed\\\"\\u003e\\u003c/eventparam\\u003e\\n \\u003c/mutation\\u003e\\n \\u003cfield name=\\\"VAR\\\"\\u003e速度\\u003c/field\\u003e\\n \\u003c/block\\u003e\\n \\u003c/value\\u003e\\n \\u003cvalue name=\\\"NUM1\\\"\\u003e\\n \\u003cblock type=\\\"math_number\\\" id=\\\",$+C02SGmgpXCO+hj85-\\\"\\u003e\\n \\u003cfield name=\\\"NUM\\\"\\u003e7\\u003c/field\\u003e\\n \\u003c/block\\u003e\\n \\u003c/value\\u003e\\n \\u003c/block\\u003e\\n \\u003c/value\\u003e\\n \\u003cnext\\u003e\\n \\u003cblock type=\\\"lexical_variable_set\\\" id=\\\"JRuhs/x22r,`sGIm^FGQ\\\"\\u003e\\n \\u003cfield name=\\\"VAR\\\"\\u003eglobal 揮桿數\\u003c/field\\u003e\\n \\u003cvalue name=\\\"VALUE\\\"\\u003e\\n \\u003cblock type=\\\"math_add\\\" id=\\\"f]Wg;):[HfR9kuoeH0A-\\\"\\u003e\\n \\u003cmutation items=\\\"2\\\"\\u003e\\u003c/mutation\\u003e\\n \\u003cvalue name=\\\"NUM0\\\"\\u003e\\n \\u003cblock type=\\\"lexical_variable_get\\\" id=\\\"qdUF$08}7r)Wa]fFcu?,\\\"\\u003e\\n \\u003cfield name=\\\"VAR\\\"\\u003eglobal 揮桿數\\u003c/field\\u003e\\n \\u003c/block\\u003e\\n \\u003c/value\\u003e\\n \\u003cvalue name=\\\"NUM1\\\"\\u003e\\n \\u003cblock type=\\\"math_number\\\" id=\\\"$.ozTOxgum6`erM(iA\\\\!y\\\"\\u003e\\n \\u003cfield name=\\\"NUM\\\"\\u003e1\\u003c/field\\u003e\\n \\u003c/block\\u003e\\n \\u003c/value\\u003e\\n \\u003c/block\\u003e\\n \\u003c/value\\u003e\\n \\u003cnext\\u003e\\n \\u003cblock type=\\\"component_set_get\\\" id=\\\"CCL.0F}GH~wfZdqW00H%\\\"\\u003e\\n \\u003cmutation component_type=\\\"Label\\\" set_or_get=\\\"set\\\" property_name=\\\"Text\\\" is_generic=\\\"false\\\" instance_name=\\\"揮桿數\\\"\\u003e\\u003c/mutation\\u003e\\n \\u003cfield name=\\\"COMPONENT_SELECTOR\\\"\\u003e揮桿數\\u003c/field\\u003e\\n \\u003cfield name=\\\"PROP\\\"\\u003eText\\u003c/field\\u003e\\n \\u003cvalue name=\\\"VALUE\\\"\\u003e\\n \\u003cblock type=\\\"lexical_variable_get\\\" id=\\\"X;xd_4si3I+.9)SSA87m\\\"\\u003e\\n \\u003cfield name=\\\"VAR\\\"\\u003eglobal 揮桿數\\u003c/field\\u003e\\n \\u003c/block\\u003e\\n \\u003c/value\\u003e\\n \\u003c/block\\u003e\\n \\u003c/next\\u003e\\n \\u003c/block\\u003e\\n \\u003c/next\\u003e\\n \\u003c/block\\u003e\\n \\u003c/next\\u003e\\n \\u003c/block\\u003e\\n \\u003c/next\\u003e\\n \\u003c/block\\u003e\\n \\u003c/statement\\u003e\\n \\u003c/block\\u003e\\n \\u003cblock type=\\\"global_declaration\\\" id=\\\"5/C:!$}Zdzcxw8;NEQB^\\\" x=\\\"0\\\" y=\\\"296\\\"\\u003e\\n \\u003cfield name=\\\"NAME\\\"\\u003e進洞數\\u003c/field\\u003e\\n \\u003cvalue name=\\\"VALUE\\\"\\u003e\\n \\u003cblock type=\\\"math_number\\\" id=\\\"mS?+#P4T+!^jvvfo1Z/!\\\"\\u003e\\n \\u003cfield name=\\\"NUM\\\"\\u003e0\\u003c/field\\u003e\\n \\u003c/block\\u003e\\n \\u003c/value\\u003e\\n \\u003c/block\\u003e\\n \\u003cblock type=\\\"component_event\\\" id=\\\".cWkVMDa(JVIagY{):+3\\\" x=\\\"0\\\" y=\\\"349\\\"\\u003e\\n \\u003cmutation component_type=\\\"Ball\\\" instance_name=\\\"球洞\\\" event_name=\\\"CollidedWith\\\"\\u003e\\u003c/mutation\\u003e\\n \\u003cfield name=\\\"COMPONENT_SELECTOR\\\"\\u003e球洞\\u003c/field\\u003e\\n \\u003cstatement name=\\\"DO\\\"\\u003e\\n \\u003cblock type=\\\"component_set_get\\\" id=\\\"}}qL@`WUB5O).E4Sb`.G\\\"\\u003e\\n \\u003cmutation component_type=\\\"Ball\\\" set_or_get=\\\"set\\\" property_name=\\\"X\\\" is_generic=\\\"false\\\" instance_name=\\\"高爾夫球\\\"\\u003e\\u003c/mutation\\u003e\\n \\u003cfield name=\\\"COMPONENT_SELECTOR\\\"\\u003e高爾夫球\\u003c/field\\u003e\\n \\u003cfield name=\\\"PROP\\\"\\u003eX\\u003c/field\\u003e\\n \\u003cvalue name=\\\"VALUE\\\"\\u003e\\n \\u003cblock type=\\\"component_set_get\\\" id=\\\"sLUP0)5uXkKyrKtszjc:\\\"\\u003e\\n \\u003cmutation component_type=\\\"Ball\\\" set_or_get=\\\"get\\\" property_name=\\\"X\\\" is_generic=\\\"false\\\" instance_name=\\\"球洞\\\"\\u003e\\u003c/mutation\\u003e\\n \\u003cfield name=\\\"COMPONENT_SELECTOR\\\"\\u003e球洞\\u003c/field\\u003e\\n \\u003cfield name=\\\"PROP\\\"\\u003eX\\u003c/field\\u003e\\n \\u003c/block\\u003e\\n \\u003c/value\\u003e\\n \\u003cnext\\u003e\\n \\u003cblock type=\\\"component_set_get\\\" id=\\\"_Z,E__RQJY1XrX#RP5(v\\\"\\u003e\\n \\u003cmutation component_type=\\\"Ball\\\" set_or_get=\\\"set\\\" property_name=\\\"Y\\\" is_generic=\\\"false\\\" instance_name=\\\"高爾夫球\\\"\\u003e\\u003c/mutation\\u003e\\n \\u003cfield name=\\\"COMPONENT_SELECTOR\\\"\\u003e高爾夫球\\u003c/field\\u003e\\n \\u003cfield name=\\\"PROP\\\"\\u003eY\\u003c/field\\u003e\\n \\u003cvalue name=\\\"VALUE\\\"\\u003e\\n \\u003cblock type=\\\"component_set_get\\\" id=\\\"7u\\\\!BjP-8F`AzI1ZbtA-V\\\"\\u003e\\n \\u003cmutation component_type=\\\"Ball\\\" set_or_get=\\\"get\\\" property_name=\\\"Y\\\" is_generic=\\\"false\\\" instance_name=\\\"球洞\\\"\\u003e\\u003c/mutation\\u003e\\n \\u003cfield name=\\\"COMPONENT_SELECTOR\\\"\\u003e球洞\\u003c/field\\u003e\\n \\u003cfield name=\\\"PROP\\\"\\u003eY\\u003c/field\\u003e\\n \\u003c/block\\u003e\\n \\u003c/value\\u003e\\n \\u003cnext\\u003e\\n \\u003cblock type=\\\"component_set_get\\\" id=\\\"BH5p(ll^@pR1Rxp.}C$a\\\"\\u003e\\n \\u003cmutation component_type=\\\"Ball\\\" set_or_get=\\\"set\\\" property_name=\\\"Speed\\\" is_generic=\\\"false\\\" instance_name=\\\"高爾夫球\\\"\\u003e\\u003c/mutation\\u003e\\n \\u003cfield name=\\\"COMPONENT_SELECTOR\\\"\\u003e高爾夫球\\u003c/field\\u003e\\n \\u003cfield name=\\\"PROP\\\"\\u003eSpeed\\u003c/field\\u003e\\n \\u003cvalue name=\\\"VALUE\\\"\\u003e\\n \\u003cblock type=\\\"math_number\\\" id=\\\"6hw5NNH86x}U3NClv+^h\\\"\\u003e\\n \\u003cfield name=\\\"NUM\\\"\\u003e0\\u003c/field\\u003e\\n \\u003c/block\\u003e\\n \\u003c/value\\u003e\\n \\u003cnext\\u003e\\n \\u003cblock type=\\\"component_method\\\" id=\\\"ZbA*xBUs]mDuq1qnT1rq\\\"\\u003e\\n \\u003cmutation component_type=\\\"Sound\\\" method_name=\\\"Play\\\" is_generic=\\\"false\\\" instance_name=\\\"進洞音效\\\"\\u003e\\u003c/mutation\\u003e\\n \\u003cfield name=\\\"COMPONENT_SELECTOR\\\"\\u003e進洞音效\\u003c/field\\u003e\\n \\u003cnext\\u003e\\n \\u003cblock type=\\\"lexical_variable_set\\\" id=\\\"U3G5::6W{81auvS-G:7:\\\"\\u003e\\n \\u003cfield name=\\\"VAR\\\"\\u003eglobal 進洞數\\u003c/field\\u003e\\n \\u003cvalue name=\\\"VALUE\\\"\\u003e\\n \\u003cblock type=\\\"math_add\\\" id=\\\"LcT@Bp.h6Go5`(Tx@Tfb\\\"\\u003e\\n \\u003cmutation items=\\\"2\\\"\\u003e\\u003c/mutation\\u003e\\n \\u003cvalue name=\\\"NUM0\\\"\\u003e\\n \\u003cblock type=\\\"lexical_variable_get\\\" id=\\\"/3;AT@22lS`$..o)lZnr\\\"\\u003e\\n \\u003cfield name=\\\"VAR\\\"\\u003eglobal 進洞數\\u003c/field\\u003e\\n \\u003c/block\\u003e\\n \\u003c/value\\u003e\\n \\u003cvalue name=\\\"NUM1\\\"\\u003e\\n \\u003cblock type=\\\"math_number\\\" id=\\\"-hDf-Ho[jp_{Imi5.OYo\\\"\\u003e\\n \\u003cfield name=\\\"NUM\\\"\\u003e1\\u003c/field\\u003e\\n \\u003c/block\\u003e\\n \\u003c/value\\u003e\\n \\u003c/block\\u003e\\n \\u003c/value\\u003e\\n \\u003cnext\\u003e\\n \\u003cblock type=\\\"component_set_get\\\" id=\\\"}6BPj29ZR{ZkLP+SrRrz\\\"\\u003e\\n \\u003cmutation component_type=\\\"Label\\\" set_or_get=\\\"set\\\" property_name=\\\"Text\\\" is_generic=\\\"false\\\" instance_name=\\\"洞口\\\"\\u003e\\u003c/mutation\\u003e\\n \\u003cfield name=\\\"COMPONENT_SELECTOR\\\"\\u003e洞口\\u003c/field\\u003e\\n \\u003cfield name=\\\"PROP\\\"\\u003eText\\u003c/field\\u003e\\n \\u003cvalue name=\\\"VALUE\\\"\\u003e\\n \\u003cblock type=\\\"lexical_variable_get\\\" id=\\\"d6}Ei:yr9s,zsDKvmpde\\\"\\u003e\\n \\u003cfield name=\\\"VAR\\\"\\u003eglobal 進洞數\\u003c/field\\u003e\\n \\u003c/block\\u003e\\n \\u003c/value\\u003e\\n \\u003c/block\\u003e\\n \\u003c/next\\u003e\\n \\u003c/block\\u003e\\n \\u003c/next\\u003e\\n \\u003c/block\\u003e\\n \\u003c/next\\u003e\\n \\u003c/block\\u003e\\n \\u003c/next\\u003e\\n \\u003c/block\\u003e\\n \\u003c/next\\u003e\\n \\u003c/block\\u003e\\n \\u003c/statement\\u003e\\n \\u003c/block\\u003e\\n \\u003cblock type=\\\"component_set_get\\\" id=\\\"F_Kyor^\\\\!w~jWNzI\\\\!BJo@\\\" x=\\\"-176\\\" y=\\\"572\\\"\\u003e\\n \\u003cmutation component_type=\\\"Ball\\\" set_or_get=\\\"set\\\" property_name=\\\"X\\\" is_generic=\\\"false\\\" instance_name=\\\"高爾夫球\\\"\\u003e\\u003c/mutation\\u003e\\n \\u003cfield name=\\\"COMPONENT_SELECTOR\\\"\\u003e高爾夫球\\u003c/field\\u003e\\n \\u003cfield name=\\\"PROP\\\"\\u003eX\\u003c/field\\u003e\\n \\u003cvalue name=\\\"VALUE\\\"\\u003e\\n \\u003cblock type=\\\"math_random_int\\\" id=\\\"9@p:}Sy1h)Jrt^Qk/k:d\\\"\\u003e\\n \\u003cvalue name=\\\"FROM\\\"\\u003e\\n \\u003cblock type=\\\"math_number\\\" id=\\\"^}IUk?d%[];OFgDFj[i;\\\"\\u003e\\n \\u003cfield name=\\\"NUM\\\"\\u003e1\\u003c/field\\u003e\\n \\u003c/block\\u003e\\n \\u003c/value\\u003e\\n \\u003cvalue name=\\\"TO\\\"\\u003e\\n \\u003cblock type=\\\"math_number\\\" id=\\\"GgF!.y$j5u$UEPvWS}0a\\\"\\u003e\\n \\u003cfield name=\\\"NUM\\\"\\u003e100\\u003c/field\\u003e\\n \\u003c/block\\u003e\\n \\u003c/value\\u003e\\n \\u003c/block\\u003e\\n \\u003c/value\\u003e\\n \\u003cnext\\u003e\\n \\u003cblock type=\\\"component_set_get\\\" id=\\\")7tm168pst\\\\!*0I)wFE:;\\\"\\u003e\\n \\u003cmutation component_type=\\\"Ball\\\" set_or_get=\\\"set\\\" property_name=\\\"Y\\\" is_generic=\\\"false\\\" instance_name=\\\"高爾夫球\\\"\\u003e\\u003c/mutation\\u003e\\n \\u003cfield name=\\\"COMPONENT_SELECTOR\\\"\\u003e高爾夫球\\u003c/field\\u003e\\n \\u003cfield name=\\\"PROP\\\"\\u003eY\\u003c/field\\u003e\\n \\u003cvalue name=\\\"VALUE\\\"\\u003e\\n \\u003cblock type=\\\"math_random_int\\\" id=\\\")-bEFQs_,1GB6^!aHYvm\\\"\\u003e\\n \\u003cvalue name=\\\"FROM\\\"\\u003e\\n \\u003cblock type=\\\"math_number\\\" id=\\\"g#8,s^p[la;32^SiFWWr\\\"\\u003e\\n \\u003cfield name=\\\"NUM\\\"\\u003e1\\u003c/field\\u003e\\n \\u003c/block\\u003e\\n \\u003c/value\\u003e\\n \\u003cvalue name=\\\"TO\\\"\\u003e\\n \\u003cblock type=\\\"math_number\\\" id=\\\"eRGa}1Jc^AjCZ*-I{GQ?\\\"\\u003e\\n \\u003cfield name=\\\"NUM\\\"\\u003e100\\u003c/field\\u003e\\n \\u003c/block\\u003e\\n \\u003c/value\\u003e\\n \\u003c/block\\u003e\\n \\u003c/value\\u003e\\n \\u003cnext\\u003e\\n \\u003cblock type=\\\"lexical_variable_set\\\" id=\\\".icW-@=uO39%iqVoQ]%d\\\"\\u003e\\n \\u003cfield name=\\\"VAR\\\"\\u003eglobal 揮桿數\\u003c/field\\u003e\\n \\u003cvalue name=\\\"VALUE\\\"\\u003e\\n \\u003cblock type=\\\"math_number\\\" id=\\\"0Mhrk`zz147-9qYJryEa\\\"\\u003e\\n \\u003cfield name=\\\"NUM\\\"\\u003e0\\u003c/field\\u003e\\n \\u003c/block\\u003e\\n \\u003c/value\\u003e\\n \\u003c/block\\u003e\\n \\u003c/next\\u003e\\n \\u003c/block\\u003e\\n \\u003c/next\\u003e\\n \\u003c/block\\u003e\\n \\u003cblock type=\\\"component_event\\\" id=\\\"rwul;yWU=\\\\!v$?u8;CG(Z\\\" x=\\\"4\\\" y=\\\"705\\\"\\u003e\\n \\u003cmutation component_type=\\\"Ball\\\" instance_name=\\\"高爾夫球\\\" event_name=\\\"EdgeReached\\\"\\u003e\\u003c/mutation\\u003e\\n \\u003cfield name=\\\"COMPONENT_SELECTOR\\\"\\u003e高爾夫球\\u003c/field\\u003e\\n \\u003cstatement name=\\\"DO\\\"\\u003e\\n \\u003cblock type=\\\"component_method\\\" id=\\\"f\\\\!IgE;FshS`!7)JO\\\\!USM\\\"\\u003e\\n \\u003cmutation component_type=\\\"Ball\\\" method_name=\\\"Bounce\\\" is_generic=\\\"false\\\" instance_name=\\\"高爾夫球\\\"\\u003e\\u003c/mutation\\u003e\\n \\u003cfield name=\\\"COMPONENT_SELECTOR\\\"\\u003e高爾夫球\\u003c/field\\u003e\\n \\u003cvalue name=\\\"ARG0\\\"\\u003e\\n \\u003cblock type=\\\"lexical_variable_get\\\" id=\\\"Yfa_-o:.\\\\!Bo:dYlo]*)4\\\"\\u003e\\n \\u003cmutation\\u003e\\n \\u003ceventparam name=\\\"edge\\\"\\u003e\\u003c/eventparam\\u003e\\n \\u003c/mutation\\u003e\\n \\u003cfield name=\\\"VAR\\\"\\u003e邊緣數值\\u003c/field\\u003e\\n \\u003c/block\\u003e\\n \\u003c/value\\u003e\\n \\u003c/block\\u003e\\n \\u003c/statement\\u003e\\n \\u003c/block\\u003e\\n \\u003cblock type=\\\"component_event\\\" id=\\\"aI-guDS?nfdHr\\\\!\\\\!\\\\!8)2i\\\" x=\\\"-136\\\" y=\\\"839\\\"\\u003e\\n \\u003cmutation component_type=\\\"Clock\\\" instance_name=\\\"停止用\\\" event_name=\\\"Timer\\\"\\u003e\\u003c/mutation\\u003e\\n \\u003cfield name=\\\"COMPONENT_SELECTOR\\\"\\u003e停止用\\u003c/field\\u003e\\n \\u003cstatement name=\\\"DO\\\"\\u003e\\n \\u003cblock type=\\\"controls_if\\\" id=\\\"EXKVT:[~$R!XNEch4inx\\\"\\u003e\\n \\u003cvalue name=\\\"IF0\\\"\\u003e\\n \\u003cblock type=\\\"math_compare\\\" id=\\\"NaPhl83MWE)cI,UQ)F?T\\\"\\u003e\\n \\u003cfield name=\\\"OP\\\"\\u003eNEQ\\u003c/field\\u003e\\n \\u003cvalue name=\\\"A\\\"\\u003e\\n \\u003cblock type=\\\"component_set_get\\\" id=\\\"%sEiJIyExcH}]QC5:OQJ\\\"\\u003e\\n \\u003cmutation component_type=\\\"Ball\\\" set_or_get=\\\"get\\\" property_name=\\\"Speed\\\" is_generic=\\\"false\\\" instance_name=\\\"高爾夫球\\\"\\u003e\\u003c/mutation\\u003e\\n \\u003cfield name=\\\"COMPONENT_SELECTOR\\\"\\u003e高爾夫球\\u003c/field\\u003e\\n \\u003cfield name=\\\"PROP\\\"\\u003eSpeed\\u003c/field\\u003e\\n \\u003c/block\\u003e\\n \\u003c/value\\u003e\\n \\u003cvalue name=\\\"B\\\"\\u003e\\n \\u003cblock type=\\\"math_number\\\" id=\\\"kWuB82CqQEwz`wv-oU1z\\\"\\u003e\\n \\u003cfield name=\\\"NUM\\\"\\u003e0\\u003c/field\\u003e\\n \\u003c/block\\u003e\\n \\u003c/value\\u003e\\n \\u003c/block\\u003e\\n \\u003c/value\\u003e\\n \\u003cstatement name=\\\"DO0\\\"\\u003e\\n \\u003cblock type=\\\"component_set_get\\\" id=\\\"4[jVT+vKD?{+c{$lidt;\\\"\\u003e\\n \\u003cmutation component_type=\\\"Ball\\\" set_or_get=\\\"set\\\" property_name=\\\"Speed\\\" is_generic=\\\"false\\\" instance_name=\\\"高爾夫球\\\"\\u003e\\u003c/mutation\\u003e\\n \\u003cfield name=\\\"COMPONENT_SELECTOR\\\"\\u003e高爾夫球\\u003c/field\\u003e\\n \\u003cfield name=\\\"PROP\\\"\\u003eSpeed\\u003c/field\\u003e\\n \\u003cvalue name=\\\"VALUE\\\"\\u003e\\n \\u003cblock type=\\\"math_division\\\" id=\\\"Sm`S+J*U:\\\\!8DVXkhxFJ^\\\"\\u003e\\n \\u003cvalue name=\\\"A\\\"\\u003e\\n \\u003cblock type=\\\"component_set_get\\\" id=\\\"(q%k{Gc?fW6L%k3x-`La\\\"\\u003e\\n \\u003cmutation component_type=\\\"Ball\\\" set_or_get=\\\"get\\\" property_name=\\\"Speed\\\" is_generic=\\\"false\\\" instance_name=\\\"高爾夫球\\\"\\u003e\\u003c/mutation\\u003e\\n \\u003cfield name=\\\"COMPONENT_SELECTOR\\\"\\u003e高爾夫球\\u003c/field\\u003e\\n \\u003cfield name=\\\"PROP\\\"\\u003eSpeed\\u003c/field\\u003e\\n \\u003c/block\\u003e\\n \\u003c/value\\u003e\\n \\u003cvalue name=\\\"B\\\"\\u003e\\n \\u003cblock type=\\\"math_number\\\" id=\\\"mBOSI3!hOXO#rwe*b.gJ\\\"\\u003e\\n \\u003cfield name=\\\"NUM\\\"\\u003e3\\u003c/field\\u003e\\n \\u003c/block\\u003e\\n \\u003c/value\\u003e\\n \\u003c/block\\u003e\\n \\u003c/value\\u003e\\n \\u003c/block\\u003e\\n \\u003c/statement\\u003e\\n \\u003c/block\\u003e\\n \\u003c/statement\\u003e\\n \\u003c/block\\u003e\\n \\u003cyacodeblocks ya-version=\\\"167\\\" language-version=\\\"21\\\"\\u003e\\u003c/yacodeblocks\\u003e\\n\\u003c/xml\\u003e\",\"src/appinventor/ai_appinventor/MiniGolf_S/Screen1.scm\":\"#|\\n$JSON\\n{\\\"authURL\\\":[\\\"ai2.appinventor.mit.edu\\\",\\\"edge.koding.school\\\",\\\"koding.school\\\"],\\\"YaVersion\\\":\\\"167\\\",\\\"Source\\\":\\\"Form\\\",\\\"Properties\\\":{\\\"$Name\\\":\\\"Screen1\\\",\\\"$Type\\\":\\\"Form\\\",\\\"$Version\\\":\\\"23\\\",\\\"AppName\\\":\\\"MiniGolf\\\",\\\"ScreenOrientation\\\":\\\"portrait\\\",\\\"Title\\\":\\\"Screen1\\\",\\\"TitleVisible\\\":\\\"False\\\",\\\"Uuid\\\":\\\"0\\\",\\\"$Components\\\":[{\\\"$Name\\\":\\\"\\\\u6c34\\\\u5e73\\\\u914d\\\\u7f6e1\\\",\\\"$Type\\\":\\\"HorizontalArrangement\\\",\\\"$Version\\\":\\\"3\\\",\\\"AlignHorizontal\\\":\\\"3\\\",\\\"AlignVertical\\\":\\\"2\\\",\\\"Width\\\":\\\"-2\\\",\\\"Uuid\\\":\\\"812096708\\\",\\\"$Components\\\":[{\\\"$Name\\\":\\\"\\\\u63ee\\\\u687f\\\\u6578\\\\u6a19\\\\u7c64\\\",\\\"$Type\\\":\\\"Label\\\",\\\"$Version\\\":\\\"4\\\",\\\"Text\\\":\\\"\\\\u63ee\\\\u687f\\\\u6578\\\",\\\"Uuid\\\":\\\"-231932780\\\"},{\\\"$Name\\\":\\\"\\\\u63ee\\\\u687f\\\\u6578\\\",\\\"$Type\\\":\\\"Label\\\",\\\"$Version\\\":\\\"4\\\",\\\"Text\\\":\\\"0\\\",\\\"Uuid\\\":\\\"2067568217\\\"},{\\\"$Name\\\":\\\"\\\\u6d1e\\\\u53e3\\\\u6a19\\\\u7c64\\\",\\\"$Type\\\":\\\"Label\\\",\\\"$Version\\\":\\\"4\\\",\\\"Text\\\":\\\"\\\\u9032\\\\u6d1e\\\\u6578\\\",\\\"Uuid\\\":\\\"-2058297432\\\"},{\\\"$Name\\\":\\\"\\\\u6d1e\\\\u53e3\\\",\\\"$Type\\\":\\\"Label\\\",\\\"$Version\\\":\\\"4\\\",\\\"Text\\\":\\\"0\\\",\\\"Uuid\\\":\\\"-474867307\\\"}]},{\\\"$Name\\\":\\\"\\\\u9ad8\\\\u723e\\\\u592b\\\\u7403\\\\u5834\\\",\\\"$Type\\\":\\\"Canvas\\\",\\\"$Version\\\":\\\"10\\\",\\\"BackgroundImage\\\":\\\"Scene.jpg\\\",\\\"Height\\\":\\\"-2\\\",\\\"Width\\\":\\\"-2\\\",\\\"Uuid\\\":\\\"-1714158331\\\",\\\"$Components\\\":[{\\\"$Name\\\":\\\"\\\\u7403\\\\u6d1e\\\",\\\"$Type\\\":\\\"Ball\\\",\\\"$Version\\\":\\\"5\\\",\\\"Uuid\\\":\\\"-283401349\\\",\\\"X\\\":\\\"247\\\",\\\"Y\\\":\\\"161\\\"},{\\\"$Name\\\":\\\"\\\\u9ad8\\\\u723e\\\\u592b\\\\u7403\\\",\\\"$Type\\\":\\\"Ball\\\",\\\"$Version\\\":\\\"5\\\",\\\"PaintColor\\\":\\\"\\u0026HFFFFFFFF\\\",\\\"Uuid\\\":\\\"1908513306\\\",\\\"X\\\":\\\"84\\\",\\\"Y\\\":\\\"270\\\"}]},{\\\"$Name\\\":\\\"\\\\u6253\\\\u7403\\\\u97f3\\\\u6548\\\",\\\"$Type\\\":\\\"Sound\\\",\\\"$Version\\\":\\\"3\\\",\\\"Source\\\":\\\"ball.mp3\\\",\\\"Uuid\\\":\\\"1743748689\\\"},{\\\"$Name\\\":\\\"\\\\u9032\\\\u6d1e\\\\u97f3\\\\u6548\\\",\\\"$Type\\\":\\\"Sound\\\",\\\"$Version\\\":\\\"3\\\",\\\"Source\\\":\\\"ballin.mp3\\\",\\\"Uuid\\\":\\\"1562550539\\\"},{\\\"$Name\\\":\\\"\\\\u505c\\\\u6b62\\\\u7528\\\",\\\"$Type\\\":\\\"Clock\\\",\\\"$Version\\\":\\\"3\\\",\\\"Uuid\\\":\\\"-27976623\\\"}]}}\\n|#\",\"src/appinventor/ai_appinventor/MiniGolf_S/Screen1.yail\":\"#|\\n$Source $Yail\\n|#\\n\\n(define-form appinventor.ai_appinventor.MiniGolf_S.Screen1 Screen1)\\n(require \\u003ccom.google.youngandroid.runtime\\u003e)\\n\\n(def g$揮桿數 0)\\n(def g$進洞數 0)\\n;;; Screen1\\n\\n(do-after-form-creation (set-and-coerce-property! 'Screen1 'AppName \\\"MiniGolf\\\" 'text)\\n (set-and-coerce-property! 'Screen1 'ScreenOrientation \\\"portrait\\\" 'text)\\n (set-and-coerce-property! 'Screen1 'Title \\\"Screen1\\\" 'text)\\n (set-and-coerce-property! 'Screen1 'TitleVisible #f 'boolean)\\n)\\n\\n;;; 水平配置1\\n\\n(add-component Screen1 com.google.appinventor.components.runtime.HorizontalArrangement 水平配置1 \\n(set-and-coerce-property! '水平配置1 'AlignHorizontal 3 'number)\\n\\n(set-and-coerce-property! '水平配置1 'AlignVertical 2 'number)\\n\\n(set-and-coerce-property! '水平配置1 'Width -2 'number)\\n\\n)\\n\\n;;; 揮桿數標籤\\n\\n(add-component 水平配置1 com.google.appinventor.components.runtime.Label 揮桿數標籤 \\n(set-and-coerce-property! '揮桿數標籤 'Text \\\"\\\\u63ee\\\\u687f\\\\u6578\\\" 'text)\\n\\n)\\n\\n;;; 揮桿數\\n\\n(add-component 水平配置1 com.google.appinventor.components.runtime.Label 揮桿數 \\n(set-and-coerce-property! '揮桿數 'Text \\\"0\\\" 'text)\\n\\n)\\n\\n;;; 洞口標籤\\n\\n(add-component 水平配置1 com.google.appinventor.components.runtime.Label 洞口標籤 \\n(set-and-coerce-property! '洞口標籤 'Text \\\"\\\\u9032\\\\u6d1e\\\\u6578\\\" 'text)\\n\\n)\\n\\n;;; 洞口\\n\\n(add-component 水平配置1 com.google.appinventor.components.runtime.Label 洞口 \\n(set-and-coerce-property! '洞口 'Text \\\"0\\\" 'text)\\n\\n)\\n\\n;;; 高爾夫球場\\n\\n(add-component Screen1 com.google.appinventor.components.runtime.Canvas 高爾夫球場 \\n(set-and-coerce-property! '高爾夫球場 'BackgroundImage \\\"Scene.jpg\\\" 'text)\\n\\n(set-and-coerce-property! '高爾夫球場 'Height -2 'number)\\n\\n(set-and-coerce-property! '高爾夫球場 'Width -2 'number)\\n\\n)\\n\\n;;; 球洞\\n\\n(add-component 高爾夫球場 com.google.appinventor.components.runtime.Ball 球洞 \\n(set-and-coerce-property! '球洞 'X 247 'number)\\n\\n(set-and-coerce-property! '球洞 'Y 161 'number)\\n\\n)\\n\\n(define-event 球洞 CollidedWith($other)(set-this-form)\\n (set-and-coerce-property! '高爾夫球 'X (get-property '球洞 'X) 'number)(set-and-coerce-property! '高爾夫球 'Y (get-property '球洞 'Y) 'number)(set-and-coerce-property! '高爾夫球 'Speed 0 'number)(call-component-method '進洞音效 'Play (*list-for-runtime*) '())(set-var! g$進洞數 (call-yail-primitive + (*list-for-runtime* (get-var g$進洞數) 1 ) '(number number ) \\\"+\\\"))(set-and-coerce-property! '洞口 'Text (get-var g$進洞數) 'text))\\n;;; 高爾夫球\\n\\n(add-component 高爾夫球場 com.google.appinventor.components.runtime.Ball 高爾夫球 \\n(set-and-coerce-property! '高爾夫球 'PaintColor #xFFFFFFFF 'number)\\n\\n(set-and-coerce-property! '高爾夫球 'X 84 'number)\\n\\n(set-and-coerce-property! '高爾夫球 'Y 270 'number)\\n\\n)\\n\\n(define-event 高爾夫球 Flung($x $y $speed $heading $xvel $yvel)(set-this-form)\\n (call-component-method '打球音效 'Play (*list-for-runtime*) '())(set-and-coerce-property! '高爾夫球 'Heading (lexical-value $heading) 'number)(set-and-coerce-property! '高爾夫球 'Speed (call-yail-primitive * (*list-for-runtime* (lexical-value $speed) 7 ) '(number number ) \\\"*\\\") 'number)(set-var! g$揮桿數 (call-yail-primitive + (*list-for-runtime* (get-var g$揮桿數) 1 ) '(number number ) \\\"+\\\"))(set-and-coerce-property! '揮桿數 'Text (get-var g$揮桿數) 'text))\\n(define-event 高爾夫球 EdgeReached($edge)(set-this-form)\\n (call-component-method '高爾夫球 'Bounce (*list-for-runtime* (lexical-value $edge)) '(number)))\\n;;; 打球音效\\n\\n(add-component Screen1 com.google.appinventor.components.runtime.Sound 打球音效 \\n(set-and-coerce-property! '打球音效 'Source \\\"ball.mp3\\\" 'text)\\n\\n)\\n\\n;;; 進洞音效\\n\\n(add-component Screen1 com.google.appinventor.components.runtime.Sound 進洞音效 \\n(set-and-coerce-property! '進洞音效 'Source \\\"ballin.mp3\\\" 'text)\\n\\n)\\n\\n;;; 停止用\\n\\n(add-component Screen1 com.google.appinventor.components.runtime.Clock 停止用 \\n)\\n\\n(define-event 停止用 Timer()(set-this-form)\\n (if (call-yail-primitive yail-not-equal? (*list-for-runtime* (get-property '高爾夫球 'Speed) 0) '(any any) \\\"not =\\\") (begin (set-and-coerce-property! '高爾夫球 'Speed (call-yail-primitive yail-divide (*list-for-runtime* (get-property '高爾夫球 'Speed) 3) '(number number) \\\"yail-divide\\\") 'number))))\\n(init-runtime)\"},\"settings\":\"{\\\"SimpleSettings\\\":{\\\"AccentColor\\\":\\\"\\u0026HFFFF4081\\\",\\\"ActionBar\\\":\\\"False\\\",\\\"AppName\\\":\\\"MiniGolf\\\",\\\"Icon\\\":\\\"\\\",\\\"PhoneTablet\\\":\\\"False\\\",\\\"PrimaryColor\\\":\\\"\\u0026HFF3F51B5\\\",\\\"PrimaryColorDark\\\":\\\"\\u0026HFF303F9F\\\",\\\"ShowHiddenComponents\\\":\\\"False\\\",\\\"ShowListsAsJson\\\":\\\"False\\\",\\\"Sizing\\\":\\\"Fixed\\\",\\\"Theme\\\":\\\"Classic\\\",\\\"TutorialURL\\\":\\\"\\\",\\\"UsesLocation\\\":\\\"False\\\",\\\"VersionCode\\\":\\\"1\\\",\\\"VersionName\\\":\\\"1.0\\\"}}\"}","created_at":"2019-01-29T15:20:58.093+08:00","updated_at":"2019-10-18T05:42:59.474+08:00","name":"MiniGolf_S","language":"appinventor","screenshot":{"url":null},"parent_id":54883,"plugin":null,"description":null,"note":null,"status":"public","like_student_ids":[],"is_featured":false,"views":33,"hashid":"meysq48e","is_content_changed":false,"review_status":"unsubmitted","submitted_at":null,"reviewed_at":null,"advise":null,"is_deleted":false}
[{"id":990726,"file_name":"Scene.jpg","project_id":55872,"asset_id":108179,"created_at":"2019-01-29T15:20:58.098+08:00","updated_at":"2019-01-29T15:20:58.098+08:00"},{"id":990727,"file_name":"ball.mp3","project_id":55872,"asset_id":108178,"created_at":"2019-01-29T15:20:58.099+08:00","updated_at":"2019-01-29T15:20:58.099+08:00"},{"id":990728,"file_name":"ballin.mp3","project_id":55872,"asset_id":108177,"created_at":"2019-01-29T15:20:58.100+08:00","updated_at":"2019-01-29T15:20:58.100+08:00"}]
橘蘋學習平台
橘蘋學習平台
我的作品
檢視專案頁
匯出
複製
匯入
刪除
下載 Android APP (APK)
用手機掃描下方 QRCode 進行安裝
或您也可以
下載 APK
到這台電腦
用手機掃描下方 QRCode 進行安裝
或您也可以
下載 APK
到這台電腦