您好,登錄后才能下訂單哦!
這篇文章給大家分享的是有關易語言怎么使用動畫框做消除游戲的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。
全局變量表
.版本 2 .全局變量 得分總和, 整數型 .全局變量 最高得分, 整數型 .全局變量 關卡, 整數型
利用動畫框做的一個消除游戲
.版本 2 .支持庫 iext2 .支持庫 iext .程序集 窗口程序集1 .程序集變量 標識1, 整數型, , "100" .程序集變量 角度, 整數型 .程序集變量 是否開始, 邏輯型 .子程序 初始化 .局部變量 a, 整數型 .局部變量 b, 整數型 .局部變量 C, 整數型 .局部變量 d, 整數型 置隨機數種子 () d = 1 .計次循環首 (10, a) .計次循環首 (10, b) C = 取隨機數 (1, 5) 標識1 [d] = 動畫框1.創建物體 (方塊1, (b - 1) × 40, (a - 1) × 40, , ) 動畫框1.置類型 (標識1 [d], d) 動畫框1.置圖片 (標識1 [d], 取圖片組圖片 (#圖片組1, C - 1, ), ) 動畫框1.置附加文本 (標識1 [d], 到文本 (C - 1)) 動畫框1.置角度 (標識1 [d], 180) 動畫框1.自動前進 (標識1 [d], 5, 1, , , , , , , ) d = d + 1 .計次循環尾 () .計次循環尾 () .如果 (關卡 = 1) 當前關卡.標題 = “第” + 到文本 (關卡) + “關” + “目標:” + “1000” .否則 .如果 (關卡 = 2) 當前關卡.標題 = “第” + 到文本 (關卡) + “關” + “目標:” + “3000” .否則 .如果 (關卡 ≥ 3 且 關卡 < 10) 當前關卡.標題 = “第” + 到文本 (關卡) + “關” + “目標:” + 到文本 ((關卡 - 1) × 3000) .否則 當前關卡.標題 = “第” + 到文本 (關卡) + “關” + “目標:” + 到文本 ((關卡 - 1) × 4000) .如果結束 .如果結束 .如果結束 .子程序 __啟動窗口_創建完畢 關卡 = 1 初始化 () .如果真 (尋找文件 (取運行目錄 () + “\win.ini”, ) = “”) 寫配置項 (取運行目錄 () + “\win.ini”, “userdata”, “最高得分”, 到文本 (最高得分)) .如果真結束 最高得分 = 到整數 (讀配置項 (取運行目錄 () + “\win.ini”, “userdata”, “最高得分”, )) 最高得分1.標題 = “最高得分:” + 到文本 (最高得分) .子程序 _動畫框1_碰撞到邊界, 邏輯型 .參數 物體標識值, 整數型 .參數 碰撞前橫坐標, 整數型 .參數 碰撞前縱坐標, 整數型 .參數 邊界類型, 整數型 .如果 (邊界類型 = 8 且 邊界類型 = 1) 動畫框1.置物體位置 (物體標識值, 碰撞前橫坐標, 碰撞前縱坐標, 真) 動畫框1.停止自動前進 (物體標識值) .否則 .如果 (邊界類型 = 8 且 動畫框1.取角度 (物體標識值) = 180) 動畫框1.置物體位置 (物體標識值, 碰撞前橫坐標, 碰撞前縱坐標, 真) 動畫框1.停止自動前進 (物體標識值) .否則 .如果結束 .如果結束 .子程序 _動畫框1_碰撞到物體 .參數 碰撞物體標識值, 整數型 .參數 碰撞前橫坐標, 整數型 .參數 碰撞前縱坐標, 整數型 .參數 被碰撞物體標識值, 整數型 動畫框1.置物體位置 (碰撞物體標識值, 碰撞前橫坐標, 碰撞前縱坐標, 真) .子程序 _動畫框1_雙擊物體 .參數 物體標識值, 整數型 .局部變量 連定, 整數型, , "5" .局部變量 計數, 整數型 .局部變量 計次, 整數型 .局部變量 計次1, 整數型 .局部變量 計次2, 整數型 .局部變量 計次3, 整數型 .局部變量 計次4, 整數型 .局部變量 A, 整數型 .局部變量 B, 整數型 .局部變量 有無, 邏輯型 .局部變量 確定相連, 整數型, , "100" .局部變量 橫坐標, 整數型 .局部變量 有沒, 邏輯型 .局部變量 定位1, 整數型 .局部變量 剩余, 整數型 計數 = 1 .如果真 (物體標識值 ≤ 0) 返回 () .如果真結束 連定 [1] = 物體標識值 確定相連 [計數] = 連定 [1] 連定 [2] = 動畫框1.定位物體 (動畫框1.取物體左邊 (連定 [1]), 動畫框1.取物體頂邊 (連定 [1]) - 40) ' 上 .如果真 (連定 [2] ≠ -1) .如果真 (動畫框1.取附加文本 (連定 [2]) = 動畫框1.取附加文本 (連定 [1])) 計數 = 計數 + 1 確定相連 [計數] = 連定 [2] .如果真結束 .如果真結束 連定 [3] = 動畫框1.定位物體 (動畫框1.取物體左邊 (連定 [1]), 動畫框1.取物體頂邊 (連定 [1]) + 40) ' 下 .如果真 (連定 [3] ≠ -1) .如果真 (動畫框1.取附加文本 (連定 [3]) = 動畫框1.取附加文本 (連定 [1])) 計數 = 計數 + 1 確定相連 [計數] = 連定 [3] .如果真結束 .如果真結束 連定 [4] = 動畫框1.定位物體 (動畫框1.取物體左邊 (連定 [1]) - 40, 動畫框1.取物體頂邊 (連定 [1])) ' 左 .如果真 (連定 [4] ≠ -1) .如果真 (動畫框1.取附加文本 (連定 [4]) = 動畫框1.取附加文本 (連定 [1])) 計數 = 計數 + 1 確定相連 [計數] = 連定 [4] .如果真結束 .如果真結束 連定 [5] = 動畫框1.定位物體 (動畫框1.取物體左邊 (連定 [1]) + 40, 動畫框1.取物體頂邊 (連定 [1])) ' 右 .如果真 (連定 [5] ≠ -1) .如果真 (動畫框1.取附加文本 (連定 [5]) = 動畫框1.取附加文本 (連定 [1])) 計數 = 計數 + 1 確定相連 [計數] = 連定 [5] .如果真結束 .如果真結束 .如果真 (動畫框1.取附加文本 (連定 [2]) ≠ 動畫框1.取附加文本 (連定 [1]) 且 動畫框1.取附加文本 (連定 [3]) ≠ 動畫框1.取附加文本 (連定 [1]) 且 動畫框1.取附加文本 (連定 [4]) ≠ 動畫框1.取附加文本 (連定 [1]) 且 動畫框1.取附加文本 (連定 [5]) ≠ 動畫框1.取附加文本 (連定 [1])) 返回 () .如果真結束 .計次循環首 (計數 + 20, 計次) .如果真 (確定相連 [計次 + 1] = 0 或 計次 + 1 > 計數) 跳出循環 () .如果真結束 連定 [1] = 確定相連 [計次 + 1] .如果真 (有無 = 真) 有無 = 假 .如果真結束 連定 [2] = 動畫框1.定位物體 (動畫框1.取物體左邊 (連定 [1]), 動畫框1.取物體頂邊 (連定 [1]) - 40) ' 上 .如果真 (連定 [2] ≠ -1) .如果真 (動畫框1.取附加文本 (連定 [2]) = 動畫框1.取附加文本 (連定 [1])) .計次循環首 (計數, A) .如果真 (連定 [2] = 確定相連 [A]) 有無 = 真 跳出循環 () .如果真結束 .計次循環尾 () .如果真 (有無 = 假) 計數 = 計數 + 1 確定相連 [計數] = 連定 [2] .如果真結束 有無 = 假 .如果真結束 .如果真結束 連定 [3] = 動畫框1.定位物體 (動畫框1.取物體左邊 (連定 [1]), 動畫框1.取物體頂邊 (連定 [1]) + 40) ' 下 .如果真 (連定 [3] ≠ -1) .如果真 (動畫框1.取附加文本 (連定 [3]) = 動畫框1.取附加文本 (連定 [1])) .計次循環首 (計數, A) .如果真 (連定 [3] = 確定相連 [A]) 有無 = 真 跳出循環 () .如果真結束 .計次循環尾 () .如果真 (有無 = 假) 計數 = 計數 + 1 確定相連 [計數] = 連定 [3] .如果真結束 有無 = 假 .如果真結束 .如果真結束 連定 [4] = 動畫框1.定位物體 (動畫框1.取物體左邊 (連定 [1]) - 40, 動畫框1.取物體頂邊 (連定 [1])) ' 左 .如果真 (連定 [4] ≠ -1) .如果真 (動畫框1.取附加文本 (連定 [4]) = 動畫框1.取附加文本 (連定 [1])) .計次循環首 (計數, A) .如果真 (連定 [4] = 確定相連 [A]) 有無 = 真 跳出循環 () .如果真結束 .計次循環尾 () .如果真 (有無 = 假) 計數 = 計數 + 1 確定相連 [計數] = 連定 [4] .如果真結束 有無 = 假 .如果真結束 .如果真結束 連定 [5] = 動畫框1.定位物體 (動畫框1.取物體左邊 (連定 [1]) + 40, 動畫框1.取物體頂邊 (連定 [1])) ' 右 .如果真 (連定 [5] ≠ -1) .如果真 (動畫框1.取附加文本 (連定 [5]) = 動畫框1.取附加文本 (連定 [1])) .計次循環首 (計數, A) .如果真 (連定 [5] = 確定相連 [A]) 有無 = 真 跳出循環 () .如果真結束 .計次循環尾 () .如果真 (有無 = 假) 計數 = 計數 + 1 確定相連 [計數] = 連定 [5] .如果真結束 有無 = 假 .如果真結束 .如果真結束 .計次循環尾 () .計次循環首 (計數, 計次) 動畫框1.銷毀物體 (確定相連 [計次]) .計次循環尾 () .計次循環首 (9, 計次3) .計次循環首 (11, 計次) 橫坐標 = (計次 - 1) × 40 .計次循環首 (100, 計次1) .如果真 (動畫框1.是否在區域內 (標識1 [計次1], , , 橫坐標, 0, 40, 500)) 有沒 = 真 跳出循環 () .如果真結束 .計次循環尾 () .如果真 (有沒 = 假) .計次循環首 (20 - 計次, 計次1) .計次循環首 (20 - 計次, 計次2) .如果真 (動畫框1.定位物體 (橫坐標 + 40 × 計次1, 動畫框1.高度 - 40 × (計次2 - 1)) ≠ -1) 定位1 = 動畫框1.定位物體 (橫坐標 + 40 × 計次1, 動畫框1.高度 - 40 × (計次2 - 1)) 動畫框1.置角度 (定位1, 270) 動畫框1.前進 (定位1, 40) 動畫框1.置角度 (定位1, 180) .如果真結束 .計次循環尾 () .計次循環尾 () .如果真結束 有沒 = 假 .計次循環尾 () .計次循環尾 () 得分總和 = 得分總和 + 計數 × 計數 × 5 當前得分.標題 = 到文本 (得分總和) .計次循環首 (100, 計次3) .如果真 (動畫框1.是否已顯示 (標識1 [計次3])) 連定 [1] = 標識1 [計次3] 連定 [2] = 動畫框1.定位物體 (動畫框1.取物體左邊 (連定 [1]), 動畫框1.取物體頂邊 (連定 [1]) - 40) 連定 [3] = 動畫框1.定位物體 (動畫框1.取物體左邊 (連定 [1]), 動畫框1.取物體頂邊 (連定 [1]) + 40) 連定 [4] = 動畫框1.定位物體 (動畫框1.取物體左邊 (連定 [1]) - 40, 動畫框1.取物體頂邊 (連定 [1])) 連定 [5] = 動畫框1.定位物體 (動畫框1.取物體左邊 (連定 [1]) + 40, 動畫框1.取物體頂邊 (連定 [1])) .如果真 (連定 [2] ≠ -1 且 動畫框1.取附加文本 (連定 [2]) = 動畫框1.取附加文本 (連定 [1])) 有沒 = 假 返回 () .如果真結束 .如果真 (連定 [3] ≠ -1 且 動畫框1.取附加文本 (連定 [3]) = 動畫框1.取附加文本 (連定 [1])) 有沒 = 假 返回 () .如果真結束 .如果真 (連定 [4] ≠ -1 且 動畫框1.取附加文本 (連定 [4]) = 動畫框1.取附加文本 (連定 [1])) 有沒 = 假 返回 () .如果真結束 .如果真 (連定 [5] ≠ -1 且 動畫框1.取附加文本 (連定 [5]) = 動畫框1.取附加文本 (連定 [1])) 有沒 = 假 返回 () .如果真結束 .如果真結束 .如果真 (計次3 = 100 且 有沒 = 假) 有沒 = 真 .如果真結束 .計次循環尾 () .如果真 (有沒) 剩余 = 動畫框1.取物體數 () .如果真 (剩余 < 10) 得分總和 = 得分總和 + 2000 - 剩余 × 剩余 × 20 當前得分.標題 = 到文本 (得分總和) .如果真結束 .如果真 (得分總和 > 最高得分) 最高得分 = 得分總和 當前得分.標題 = 到文本 (得分總和) 最高得分1.標題 = “最高得分:” + 到文本 (最高得分) .如果真結束 .如果真 (關卡 = 1) .如果 (到整數 (當前得分.標題) ≥ 1000) 信息框 (“闖關成功!”, 0, ) 關卡 = 關卡 + 1 當前得分.標題 = 到文本 (得分總和) 動畫框1.銷毀所有物體 () 初始化 () 返回 () .否則 信息框 (“闖關失敗!”, 0, ) 關卡 = 1 當前得分.標題 = “0” 動畫框1.銷毀所有物體 () 初始化 () 返回 () .如果結束 .如果真結束 .如果真 (關卡 = 2) .如果 (到整數 (當前得分.標題) ≥ 3000) 信息框 (“闖關成功!”, 0, ) 關卡 = 關卡 + 1 當前得分.標題 = 到文本 (得分總和) 動畫框1.銷毀所有物體 () 初始化 () 返回 () .否則 信息框 (“闖關失敗!”, 0, ) 關卡 = 1 當前得分.標題 = “0” 動畫框1.銷毀所有物體 () 初始化 () 返回 () .如果結束 .如果真結束 .如果真 (關卡 ≥ 3 且 關卡 < 10) .如果 (到整數 (當前得分.標題) ≥ (關卡 - 1) × 3000) 信息框 (“闖關成功!”, 0, ) 關卡 = 關卡 + 1 當前得分.標題 = 到文本 (得分總和) 動畫框1.銷毀所有物體 () 初始化 () 返回 () .否則 信息框 (“闖關失敗!”, 0, ) 關卡 = 1 當前得分.標題 = “0” 動畫框1.銷毀所有物體 () 初始化 () 返回 () .如果結束 .如果真結束 .如果真 (關卡 ≥ 10) .如果 (到整數 (當前得分.標題) ≥ (關卡 - 1) × 4000) 信息框 (“闖關成功!”, 0, ) 關卡 = 關卡 + 1 當前得分.標題 = 到文本 (得分總和) 動畫框1.銷毀所有物體 () 初始化 () 返回 () .否則 信息框 (“闖關失敗!”, 0, ) 關卡 = 1 當前得分.標題 = “0” 動畫框1.銷毀所有物體 () 初始化 () 返回 () .如果結束 .如果真結束 動畫框1.銷毀所有物體 () .如果真結束 .子程序 _重開按鈕_被單擊 動畫框1.銷毀所有物體 () 得分總和 = 0 初始化 () .子程序 _動畫框1_物體左鍵被放開 .參數 物體標識值, 整數型 .參數 已被按下物體, 整數型 .局部變量 連定, 整數型, , "5" .局部變量 計數, 整數型 .局部變量 計次, 整數型 .局部變量 A, 整數型 .局部變量 有無, 邏輯型 .局部變量 確定相連, 整數型, , "100" .局部變量 變暗計次, 整數型 .如果真 (物體標識值 + 已被按下物體 > 0 且 物體標識值 = 已被按下物體) 計數 = 1 連定 [1] = 物體標識值 確定相連 [計數] = 連定 [1] 連定 [2] = 動畫框1.定位物體 (動畫框1.取物體左邊 (連定 [1]), 動畫框1.取物體頂邊 (連定 [1]) - 40) ' 上 .如果真 (連定 [2] ≠ -1) .如果真 (動畫框1.取附加文本 (連定 [2]) = 動畫框1.取附加文本 (連定 [1])) 計數 = 計數 + 1 確定相連 [計數] = 連定 [2] .如果真結束 .如果真結束 連定 [3] = 動畫框1.定位物體 (動畫框1.取物體左邊 (連定 [1]), 動畫框1.取物體頂邊 (連定 [1]) + 40) ' 下 .如果真 (連定 [3] ≠ -1) .如果真 (動畫框1.取附加文本 (連定 [3]) = 動畫框1.取附加文本 (連定 [1])) 計數 = 計數 + 1 確定相連 [計數] = 連定 [3] .如果真結束 .如果真結束 連定 [4] = 動畫框1.定位物體 (動畫框1.取物體左邊 (連定 [1]) - 40, 動畫框1.取物體頂邊 (連定 [1])) ' 左 .如果真 (連定 [4] ≠ -1) .如果真 (動畫框1.取附加文本 (連定 [4]) = 動畫框1.取附加文本 (連定 [1])) 計數 = 計數 + 1 確定相連 [計數] = 連定 [4] .如果真結束 .如果真結束 連定 [5] = 動畫框1.定位物體 (動畫框1.取物體左邊 (連定 [1]) + 40, 動畫框1.取物體頂邊 (連定 [1])) ' 右 .如果真 (連定 [5] ≠ -1) .如果真 (動畫框1.取附加文本 (連定 [5]) = 動畫框1.取附加文本 (連定 [1])) 計數 = 計數 + 1 確定相連 [計數] = 連定 [5] .如果真結束 .如果真結束 .如果真 (動畫框1.取附加文本 (連定 [2]) ≠ 動畫框1.取附加文本 (連定 [1]) 且 動畫框1.取附加文本 (連定 [3]) ≠ 動畫框1.取附加文本 (連定 [1]) 且 動畫框1.取附加文本 (連定 [4]) ≠ 動畫框1.取附加文本 (連定 [1]) 且 動畫框1.取附加文本 (連定 [5]) ≠ 動畫框1.取附加文本 (連定 [1])) 返回 () .如果真結束 .計次循環首 (計數 + 20, 計次) .如果真 (確定相連 [計次 + 1] = 0 或 計次 + 1 > 計數) 跳出循環 () .如果真結束 連定 [1] = 確定相連 [計次 + 1] .如果真 (有無 = 真) 有無 = 假 .如果真結束 連定 [2] = 動畫框1.定位物體 (動畫框1.取物體左邊 (連定 [1]), 動畫框1.取物體頂邊 (連定 [1]) - 40) ' 上 .如果真 (連定 [2] ≠ -1) .如果真 (動畫框1.取附加文本 (連定 [2]) = 動畫框1.取附加文本 (連定 [1])) .計次循環首 (計數, A) .如果真 (連定 [2] = 確定相連 [A]) 有無 = 真 跳出循環 () .如果真結束 .計次循環尾 () .如果真 (有無 = 假) 計數 = 計數 + 1 確定相連 [計數] = 連定 [2] .如果真結束 有無 = 假 .如果真結束 .如果真結束 連定 [3] = 動畫框1.定位物體 (動畫框1.取物體左邊 (連定 [1]), 動畫框1.取物體頂邊 (連定 [1]) + 40) ' 下 .如果真 (連定 [3] ≠ -1) .如果真 (動畫框1.取附加文本 (連定 [3]) = 動畫框1.取附加文本 (連定 [1])) .計次循環首 (計數, A) .如果真 (連定 [3] = 確定相連 [A]) 有無 = 真 跳出循環 () .如果真結束 .計次循環尾 () .如果真 (有無 = 假) 計數 = 計數 + 1 確定相連 [計數] = 連定 [3] .如果真結束 有無 = 假 .如果真結束 .如果真結束 連定 [4] = 動畫框1.定位物體 (動畫框1.取物體左邊 (連定 [1]) - 40, 動畫框1.取物體頂邊 (連定 [1])) ' 左 .如果真 (連定 [4] ≠ -1) .如果真 (動畫框1.取附加文本 (連定 [4]) = 動畫框1.取附加文本 (連定 [1])) .計次循環首 (計數, A) .如果真 (連定 [4] = 確定相連 [A]) 有無 = 真 跳出循環 () .如果真結束 .計次循環尾 () .如果真 (有無 = 假) 計數 = 計數 + 1 確定相連 [計數] = 連定 [4] .如果真結束 有無 = 假 .如果真結束 .如果真結束 連定 [5] = 動畫框1.定位物體 (動畫框1.取物體左邊 (連定 [1]) + 40, 動畫框1.取物體頂邊 (連定 [1])) ' 右 .如果真 (連定 [5] ≠ -1) .如果真 (動畫框1.取附加文本 (連定 [5]) = 動畫框1.取附加文本 (連定 [1])) .計次循環首 (計數, A) .如果真 (連定 [5] = 確定相連 [A]) 有無 = 真 跳出循環 () .如果真結束 .計次循環尾 () .如果真 (有無 = 假) 計數 = 計數 + 1 確定相連 [計數] = 連定 [5] .如果真結束 有無 = 假 .如果真結束 .如果真結束 .計次循環尾 () .如果真結束 .計次循環首 (100, 變暗計次) 動畫框1.置亮度 (標識1 [變暗計次], 0) .計次循環尾 () .計次循環首 (計數, 計次) 動畫框1.置亮度 (確定相連 [計次], 250) .計次循環尾 () 本次得分1.標題 = 到文本 (計數 × 計數 × 5) .子程序 __啟動窗口_將被銷毀 寫配置項 (取運行目錄 () + “\win.ini”, “userdata”, “最高得分”, 到文本 (最高得分))
運行結果:
感謝各位的閱讀!關于“易語言怎么使用動畫框做消除游戲”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。