10 APP專題: 拼圖遊戲 10.1 專題介紹:拼圖遊戲 10.2 ImageSprite 物件清單的拖曳 10.3 拼圖遊戲設計

Slides:



Advertisements
Similar presentations
環境游離輻射 ( 六 ) 輻射與核能發電. 媽!這是我上班的 地方-核電廠。 地方好寬闊喔! 聽說日本原子彈爆炸死好幾 萬人,阿榮啊!你在這裡上 班,安全嗎?
Advertisements

人的性别遗传 合肥市第四十九中学 丁 艳. 男女成对染色体排序图 1 、男性和女性各 23 对染色体有何异同 ? 哪 一对被称为性染色体 ? 2 、这两幅图中,哪幅 图显示的是男性的染色 体?哪幅图显示的是女 性染色体? 3 、图中哪条染色体是 Y 染色体?它与 X 染色体 在形态上的主要区别是.
未婚懷孕:你想清楚了嗎. 家事?國事?天下事? 台灣未成年小媽媽 比例冠亞洲 衛生署統計台灣性行為低齡化,最小的僅 十二歲半。 未成年懷孕,台灣是千分之十二點九五。 九月墮胎潮.
《小狗包弟 》之 从阅读到写作 学校:和风中学 年级:高一 参赛者:彭龙英. 预习检测一 思考:同学们读完作者与包弟 的故事后,说一说作者所表达的情 感是什么?
虹膜识别健康养老服务智能系统项目.
新多益擬真英檢系統 以專區帳密登入 選擇任一項目 注意:限用IE瀏覽器!!.
探究活动课:互联网+历史素材阅读与研讨 古代中国的选官制度 黄天庆  探究活动课:互联网+历史素材阅读与研讨 古代中国的选官制度 黄天庆 
1、一般地说,在生物的体细胞中, 和 都是成对存在的。
辨性别 A B. 辨性别 A B 第三节人类染色体与性别决定 昌邑市龙池初中 杨伟红 学习目标 1.理解人的染色体组成和传递规律。 2.解释人类性别决定的原理。 3.通过探究活动,解读数据了解生男生女的比例。
職校、五專群科簡介.
荃灣區旅游景點 成功組 全程制作人:游恒延.
拒做“低头族” 婚庆1333班 龚秀萍.
第三项APP 接球游戏.
问卷调查的规范与技术 问卷调查的规范与技术.
星云集团.
学生教育办介绍 2015年9月.
江苏省工程造价管理协会 工作报告 2015年4月21日 扬州.
一、平面点集 定义: x、y ---自变量,u ---因变量. 点集 E ---定义域, --- 值域.
七(7)中队读书节 韩茜、蒋霁制作.
101年8月份 嘉義市道路交通安全聯席會報 酒駕行為與肇事現況分析 主講人:內政部警政署交通組科長張夢麟 1.
高校邦在线学习平台 学生学习手册 北京高校邦科技有限公司.
第三课 走向自立人生.
3.2 打地鼠游戏 学习目标: 随机图片的显示 时间控件的用法 函数的定义使用方法 随机数的产生使用方法 数学公式的使用方法 任务目标:
我们在这APP --由9岁男孩女孩自己独立创建的给小朋友们用的儿童APP 项目联系人:孙易周 公司名称:易周慈生 成立时间:2014年1月
良心處方 Click to start..
黃金比例.
天 主 教 慈 幼 工 商.
管理学基本知识.
综合分析—现象类 主讲: 王璇 时间:
滁州学院首届微课程教学设计竞赛 课程名称:高等数学 主讲人:胡贝贝 数学与金融学院.
為孩子編織一個支持網  台北市家庭暴力暨性侵害防治中心.
第三章 使用者基本介面設計 課程名稱:程式設計 授課老師:李春雄 博士
任务一:利用结构化方法分析、设计项目 (续).
宁波市慈溪进出口股份有限公司 多媒体电子演示文稿(PPT)参赛作品
MIT App Inventor 開發Android手機「打地鼠遊戲」 靜宜大學資管系 楊子青
色 弱 與 色 盲.
提升时间管理.
103學年度第1階段 志願選填試探後輔導作為 成效檢討與精進建議
活动主题:佛山智造 中国骄傲 随着互联网、云计算、大数据以及移动互联网的快速发展,技术不仅仅是一种工具,正加速重构着品牌的新格局。
宠物之家 我的宠物性别? 雌(♀) or 雄(♂) 第一阶段:我的宠物我做主 第二阶段:宠物“相亲记” 第三阶段:家族诞生
拾貳、 教育行政 一、教育行政的意義 教育行政,可視為國家對教育事務的管理 ,以增進教育效果。 教育行政,乃是一利用有限資源在教育參
课标教材下教研工作的 实践与思考 山东临沂市教育科学研究中心 郭允远.
                                        導師健康關懷 健康是一輩子的事 義守大學衛生保健組 關心您.
課程銜接 九年一貫暫行綱要( )  九年一貫課程綱要( ) 國立台南大學數學教育系 謝 堅.
2.4 二元一次方程组的应用(1).
四川省卫生监督移动 执法终端介绍 发言人:陈成身 四川省卫生执法监督总队.
獎補助經預計支用報告 105年.
正比與反比 大綱: 比與比值 比的運算性質 比例式 比例式的運算 蘇德宙 台灣數位學習科技股份有限公司.
行動商務與多媒體應用學系 詹啟祥 辦公室:HB35室 分機:
Creating Animated Apps (I) 靜宜大學資管系 楊子青
华东理工大学 关于新校园卡功能启用的相关说明 2018年09月07日.
第六章 安全衛生工作守則 6-1 前 言  6-2 訂定依據相關法令規定  6-3 工作守則製作程序及製作前應注意事項  6-4 如何訂定適合需要之安全衛生工作守則  6-5 結 論.
人工智能人才培养示范基地建设分享 上海电子信息职业技术学院 邵瑛.
金門農工課程核心小組會議 ★各科多元選修彙整範例 ★彈性學習時間之規劃 ★選課機制 報告人: 董炤靈 107年10月23日.
App Inventor 2.
年所得12万以上自行纳税申报 信息管理科 张沛.
基于App Inventor的物联网工程导论课程实验设计
102學年度下學期 班親會 五年仁班 楊曉逸老師.
第二階段「校園徒步區建置」 執行成果報告.
全台灣最美的日出好美…好美… 這就是傳說中的潑墨二寮,耳聞她的日出有如國畫般 所以稱為潑墨二寮
第八章 服務部門成本分攤.
為民服務白皮書 台灣電力公司嘉義區營業處 .
四國四甲 陳怡妗 四國四甲 呂君儀 四國四甲 蕭郁諺
為民服務白皮書 台灣電力公司彰化區營業處  彰化區營業處 為民服務白皮書 誠信 關懷 服務 成長 1.
用加減消去法解一元二次聯立方程式 台北縣立中山國中 第二團隊.
第二节 偏 导 数 一、 偏导数概念及其计算 二 、高阶偏导数.
实验课程学习手册.
云控APP说明书 适用于云控平台配置.
云控APP说明书 适用于云控平台配置.
App Inventor 2.
Presentation transcript:

10 APP專題: 拼圖遊戲 10.1 專題介紹:拼圖遊戲 10.2 ImageSprite 物件清單的拖曳 10.3 拼圖遊戲設計 10.1 專題介紹:拼圖遊戲 10.2 ImageSprite 物件清單的拖曳 10.3 拼圖遊戲設計 拼圖遊戲是簡單又有趣的遊戲,可以事先使用繪圖軟體,將一張完整的圖片分割 成若干張的小圖片並給予編號, 再將這些小圖片依編號組合,即可以進行拼圖的 遊戲。 遊戲開始會從 3 張圖片中隨機抽出一張 ( 每張圖片事先都已經切割成 9 張小圖 片 ),按下 Start 按鈕即將小圖片打散並開始計時。

10.1 專題介紹:拼圖遊戲 拼圖遊戲是很多人愛玩的遊戲,遊戲開始會從 3 張圖片中隨機抽出一張 ( 每張圖片 事先都已經切割成 9 張小圖片 ),按下 Start 按鈕即將小圖片打散並開始計時。 回 首頁

按下 Stop 按鈕則暫停計時,當 9 張小圖片都放在正確的位置時,即完成遊戲。

10.2 ImageSprite 物件清單的拖曳 回 10.2.1 單一 ImageSprite 元件的拖曳 首頁 當觸碰布置在 Canvas 上的 ImageSprite 元件時會觸發 TouchDown(number x, number y) 事件,並傳回觸碰的座標位置 (x,y),因此利用 TouchDown() 事件, 可 以 記 錄 拖 曳 時 第 一 次 觸 碰 的 點。 結 束 觸 碰 ImageSprite 元 件 會 觸 發TouchUp(number x, number y) 事件, (x,y) 座標為觸碰 ImageSprite 元件時 按下 TouchDown() 事件時記錄的位置。 回 首頁

ImageSprite 元件的拖曳 拖 曳 ImageSprite 元 件 時 會 觸 發 Dragged 事 件, 並 接 收 一 系 列 的 參 數, 其中 (startX,startY) 為 第 一 次 觸 碰 的 點,(prevX,prevY) 為 上 一 次 的 觸 碰 點, (currentX,currentY) 為目前的觸碰點。

ImageSprite 元件的 Z 屬性 如果 Canvas 上有多個動畫元件,通常會將被拖曳的元件移至最上層。利用 ImageSprite1 元件的 Z 屬性即可達成。ImageSprite 元件的 Z 屬性表示該元件的 層次,Z 值愈大表示愈上層。如下圖:撲克牌 Q 在撲克牌 J 的上方。 在介面配置階段,建立的 ImageSprite 元件,預設的 Z 屬性為 1.0,如果建立多個 ImageSprite 元件,所有元件的 Z 屬性都是 1.0。由於所有的 ImageSprite 元件的 Z 屬性都是 1.0,App Inventor 會將較後建立或較後拖曳的 ImageSprite 元件放置 在最上層。 也可以在程式執行階段,設定 Z 屬性將該元件移至上層。 例如: 設定 ImageSprite1.Z=2.0 則 ImageSprite1 將移至其他 ImageSprite 屬性 Z=1.0 元件的上層。

10.2.2 多個ImageSprite 元件的拖曳 建立物件清單 例如:程式初始時將 ImageSprite1、ImageSprite2 元件載入至 PokeList 物件清 單中。

記錄物件編號 例 如:PieceNo=1 記 錄 觸 碰 的 是 ImageSprite1、 PieceNo=2 記 錄 觸 碰 的 是 ImageSprite2 。

在自訂程序中取得元件 依 PieceNo 編 號, 自 PokeList 清 單 中 取 得 拖 曳 的 ImageSprite 元 件, 當 PieceNo=1 時,取得 ImageSprite1,當 PieceNo=2 時,取得 ImageSprite2。

範例:撲克牌的拖曳 畫布上有兩張撲克牌,當觸碰撲克牌後即可將拖曳的牌移至最上層並進行拖曳,放 開撲克牌後會比對拖曳的牌是否和另一張牌重疊,如果是則以對話方塊顯示重疊訊 息。<ch10\ex_Poke.zip> 執行情形 拖曳撲克牌 J 並和撲克牌 Q 重疊,如右下圖:撲克牌 J 移至最上層,並顯示「兩張 牌重疊 !」對話方塊。

10.3 拼圖遊戲設計 10.3.1 專題發想 本專題是一個使用物件拖曳的典型範例,除了必須將拖曳物件移至最上層並正確的 控制拖曳外,還要避免物件超出邊界,同時也要判斷是否拖曳到正確的位置。而且 正確位置的判斷也不能太嚴謹,必須帶有一點模糊,否則不容易拖曳到正確的位置 上。 為了記錄每張小圖片,是否拖曳到正確的位置,必須使用清單來記錄,並在程式初 始時,先將這些狀態記錄在清單中。 此外,對於不同版面大小的行動裝置,也要一併考量,所以拼圖的大小必須依版面 大小來計算,同時,每張圖片的位置是以動態的方式計算完成,這也是對不同版面 行動裝置規劃的一種處理方式。 回 首頁

10.3.2 專題總覽 按下 Start 按鈕即將小圖片以亂數打散, 並開始以秒計時。 按下 Stop 按鈕則暫停計時,當 9 張小 圖片都放在正確的位置時,即完成遊戲。

10.3.3 介面配置 Screen 中主要包含 HorArrCommand 和 Canvas1 兩個版面, HorArrCommand 包含 顯示時間的 LabelShowTime 標籤和 ButtonStart 啟動遊戲按 鈕,Canvas1 則包含 ImageSprite1~ImageSp rite9 等 9 張切割後的小 圖片,此外也以 Clock 來 計時、Player 播放音效、 Notifier 顯示對話方塊。 版面元件如下圖。

10.3.4 專題分析和程式拼塊說明 建 立 全 域 變 數 ImageList、InitPositionImgList、imgStatus、x、y、InitX0、 InitY0、CavasHeight、PieceHeight、PieceWidth、Columns 和 length。

建立按下 Start 遊戲開始按鈕使用的全域變數 FilePth、TempFile、PieceNo、 IsStart 、 IsPlay 和 TimeCount。

遊戲進行後,必須判斷小圖片是否拖曳到原來的初始位置。必須建立下列的 全 域 變 數 flag、SplitData、CurrentX、CurrentY、InitPositionImgX 、 InitPositionImgY、 offset、TempX 和 TempY。

執行初始,依行動裝置版面的大小,計算顯示拼圖的 Canvas 大小,再算出 Canvas 切割成 3X3 的小圖片時,每張小圖片的 Width 和 Hieght 。

自訂的程序 initList()。

自訂的程序 InitGame() 從 3 張圖中以亂數隨機選取 任意 1 張,並整齊排列。

自訂的程序繪製拼圖區的外框。

按下 Start 遊戲開始按鈕的處理。

將小圖片打散。

計時器以秒計時並顯示。 觸 碰 ImageSprite ( 小 圖 片 ), 以 PieceNo 變 數 記 錄 小 圖 片 的 編 號。 由 於 ImageSprite1~ImageSprite9 的 架 構 均 相 同, 我 們 只 列 出 ImageSprite1 的 TouchDown 事件。

當 拖 曳 小 圖 片 時, 會 以 自 訂 的 MoveImageSprite 程 序 拖 曳 小 圖 片, 由 於 ImageSprite1~ImageSprite9 的 架 構 均 相 同, 我 們 只 列 出 ImageSprite1 的 Dragged 事件。

以自訂的 MoveImageSprite 程序拖曳小圖片。

結束 ImageSprite 拖曳,會觸發 TouchUp 事件,並以自訂的 IsCorrect 判斷 是否拖曳到正確的初始位置上。由於 ImageSprite1~ImageSprite9 的架構均相 同,我們只列出 ImageSprite1 的 TouchUp 事件。

以自訂的 IsCorrect 判 斷是否拖曳至正確的初始 位置上。

以自訂的 CheckFinish 判斷是否完成遊戲。 當遊戲完成時,所有的 imgStatus 均為 true,反過來說,只要有找到任意一張 小圖片的 imgStatus 為 false ,即表示遊戲尚未完成。

詢問遊戲是否繼續 。

10.3.5 未來展望 拖曳是行動裝置最常使用的功能,學會了這個專題,可以將這個原理應用在如翻閱 書籍、相簿等範例,或是拼盤、撲克牌、下棋等遊戲中。 這個專題我們也學習到了模糊理論,如果我們嚴格限定拖曳物件必須很正確的移回 到初始位置才算完成拖曳動作,則實際上將無法達成,因此改為只要拖曳到合理範 圍內即算完成。在實務上,這也是經常使用的一種技巧。