HarmonyOS(鴻蒙)運動手錶—從零實現投骰子小遊戲
前言:
生活中我們會面臨很多選擇,我們會在人生的大選擇上深思熟慮,也會在一些芝麻蒜皮的小選擇上糾結萬分,為了幫助選擇困難戶在日常的小糾結中做出選擇,我們將搖骰子這個經典的小遊戲(也可以說是一個小工具)移植到華為手錶上,”不知道今天是吃雞肉還是牛肉?搖個骰子吧!”。這是我們最初製作它的想法,當然它也還有其他用處,比如說隨機分組(例如:點數為奇數的一組,點數為偶數的一組)。
- 小組成員
likaijie12138
JiaYi__xixi
wx13415801099
GTH1144754040
最終效果圖:
初次嘗試的失敗:
- 簡單的思路:
1.在頁面1新增 旋轉的骰子 動圖、用於跳轉至頁面2的按鈕;
2.匯入6張骰子動圖,通過動態繫結與產生隨機數的方式,隨機選取一張動圖;
3.在頁面2新增用於跳轉至頁面1的按鈕。
<image class="img" src="/common2/{{i}}.gif" />
- 遇到的問題: 匯入的動圖不會動,骰子不動了。
二次嘗試的結果:
-
修改的思路:
1.在頁面1新增 骰子的封面 靜態圖、用於跳轉至頁面2的按鈕;
2.骰子動畫的實現:匯入6張骰子旋轉狀態的靜態圖,通過動態繫結與設定計時器的方式,在頁面2中順序切換6張圖,一定時間後自動跳轉至頁面3;
3.在頁面3中通過動態繫結與產生隨機數的方式,隨機選取一張骰子結果圖,新增用於跳轉至頁面1的按鈕。 -
主要程式碼:
頁面2
<image class="img" src="{{i}}" />
import router from '@system.router'
var a=1;
var timer=null;
var counter=14;
export default {
data: {
i:""
},
run() {
counter--;
a++;
if (a == 6)a = 1;
this.i = "/common/" + a + ".png";
if(counter==0){
clearInterval(timer);
timer=null;
router.replace({
uri:'pages/third/third',
})
}
},
onShow(){
timer=setInterval(this.run,130);
},
頁面3
<image class="img" src="/common2/{{j}}.png" />
run(){
b=Math.floor(Math.random()*6);
this.j=b;
},
後記:
封面圖 與 12張骰子圖片(結果圖+旋轉動畫圖)均為原創
基於搖骰子,還可以做出如轉轉盤,剪刀石頭布,拋硬幣的簡單小遊戲。程式碼部分很簡單,但還要做出動畫效果就需要一幀一幀的圖片,如果有小夥伴知道如何實現動圖插入的方法或是關於做出這類遊戲的其他方案,歡迎在評論區留言。
相關文章
- 從零實現HarmonyOS(鴻蒙)運動手錶兩個遊戲的合併鴻蒙遊戲
- 投擲骰子 -Python實現Python
- 鴻蒙HarmonyOS實戰-ArkUI事件(手勢方法)鴻蒙UI事件
- 從零手動實現簡易TomcatTomcat
- 鴻蒙HarmonyOS:深入Device Certificate Kit API:從整合到實戰鴻蒙HarmonyOS:深入Device Certificate Kit API:從整合到實戰鴻蒙devAPI
- 鴻蒙HarmonyOS實戰-ArkUI事件(組合手勢)鴻蒙UI事件
- 鴻蒙(HarmonyOS)實現隱私政策彈窗鴻蒙
- 鴻蒙HarmonyOS實戰-ArkUI事件(單一手勢)鴻蒙UI事件
- 鴻蒙系統(HarmonyOS)全域性彈窗實現鴻蒙
- 鴻蒙HarmonyOS實戰-Stage模型(卡片資料互動)鴻蒙模型
- 鴻蒙HarmonyOS實戰-視窗管理鴻蒙
- 鴻蒙HarmonyOS實戰-ArkUI元件(Stack)鴻蒙UI元件
- 鴻蒙HarmonyOS實戰-ArkUI元件(Flex)鴻蒙UI元件Flex
- 鴻蒙HarmonyOS實戰-ArkUI元件(mediaquery)鴻蒙UI元件
- 鴻蒙HarmonyOS實戰-ArkUI元件(List)鴻蒙UI元件
- 鴻蒙HarmonyOS實戰-ArkUI元件(Swiper)鴻蒙UI元件
- 鴻蒙HarmonyOS實戰-ArkUI元件(Button)鴻蒙UI元件
- 鴻蒙HarmonyOS實戰-ArkUI元件(Progress)鴻蒙UI元件
- 鴻蒙HarmonyOS實戰-ArkUI元件(Popup)鴻蒙UI元件
- 鴻蒙HarmonyOS實戰-ArkUI元件(Menu)鴻蒙UI元件
- 鴻蒙HarmonyOS實戰-ArkUI元件(Tabs)鴻蒙UI元件
- 鴻蒙HarmonyOS實戰-ArkUI元件(Image)鴻蒙UI元件
- 鴻蒙HarmonyOS實戰-ArkUI元件(Canvas)鴻蒙UI元件Canvas
- 7天用Go動手寫/從零實現ORM框架GeeORMGoORM框架
- 鴻蒙HarmonyOS實戰-ArkUI元件(Row/Column)鴻蒙UI元件
- 鴻蒙HarmonyOS實戰-ArkUI元件(Toggle)鴻蒙UI元件
- 鴻蒙HarmonyOS實戰-ArkUI元件(TextInput/TextArea)鴻蒙UI元件
- 鴻蒙HarmonyOS實戰-ArkUI元件(Video)鴻蒙UI元件IDE
- 鴻蒙HarmonyOS實戰-ArkUI元件(Navigation)鴻蒙UI元件Navigation
- 鴻蒙HarmonyOS實戰-ArkUI元件(Shape)鴻蒙UI元件
- 鴻蒙HarmonyOS實戰-Stage模型(UIAbility元件)鴻蒙模型UI元件
- 鴻蒙HarmonyOS實戰-Stage模型(程序模型)鴻蒙模型
- 【Demo見真章】基於HarmonyOS手機實現五子棋對戰小遊戲遊戲
- 從零手寫實現 nginx-21-modules 模組Nginx
- 從零手寫實現 nginx-27-return 指令Nginx
- 7天用Go動手寫/從零實現RPC框架GeeRPCGoRPC框架
- 華米智慧手錶爆料盤點:防水防塵續航長的運動手錶!
- 鴻蒙HarmonyOS實戰-ArkUI事件(觸屏事件)鴻蒙UI事件