美文网首页
H5游戏开发(一)

H5游戏开发(一)

作者: 正直少女鹿衔草 | 来源:发表于2018-10-07 18:13 被阅读0次

    一、前言
    很久很久以前,找导师交流的时候他就说有想做一款吸引学生学习的游戏的想法,暑假的时候也试着用python写了一下,但是写完了才想起来考虑平台的问题,让所有人去安装python?这实在不是一个好的想法。考虑到目前大家使用手机的频率远远高于电脑,而我对于Object-C和Java实在提不起兴趣,于是就有想到了目前大热的html5游戏开发。
    动手之前考虑了很久,最终选择了Egret这个引擎,这是国内的一款引擎,问题和毛病不在少数,而且更新的频率也让我有点头疼,不过没关系,边学边解决问题,痛苦但是很有成就感。

    二、流程构建
    我习惯在动手之前,有一个整体把握,要干嘛,怎么做。既然是把答题和游戏相结合,那么首先得有个题库,放在哪?数据库嘛。在做好之前我是不会去买服务器的,所以弄虚拟机搭个就行了,这里选择的数据库是mysql,因为熟悉。我了解到Egret是没办法直接和数据库交互的。拿起API手册搜了搜:


    1.png

    这样的话,我只要写个php页面,让它去和数据库交互就OK了,再回头想想,不管什么游戏,我只要写完前端,主要的逻辑都是和数据库交互的,其他应该就没什么大问题了。接下来就开始动手。

    三、把题目录入数据库
    首先是把题目写到数据库里面,翻出我解剖学的题库,找了两道题(因为是演示,所以不需要花那么多时间去录入了,后期大量题库的问题,可以考虑用python写个脚本往里填)。
    偷个懒,打开phpstudy -> phpmyadmin,建一个名叫jiepou的库,然后再建一个名叫jiepou的表,结构的话就大概如下了:


    2.png

    两道题目对应填好:


    3.png
    这样的话就大概完成我们要测试的环境了。

    四、php编写查询页面
    接下来,用php写一个查询页面,让我们的引擎能通过和http相关的api,获取到数据库里面的内容,这个页面编写的很简单,直接贴代码了:

    <?php
    $id= $_GET['id'];
    $conn = mysql_connect('127.0.0.1','root','root');
    mysql_select_db('jiepou',$conn);
    $sql = "select * from jiepou where id=$id";
    $result = mysql_query($sql);
    if (!$result) {
     printf("Error: %s\n", mysqli_error($dbc));
     exit();
    }
    while($row = mysql_fetch_array($result)){
    echo "ID".$row['id']."</br>";
    echo "题目:".$row['question']."</br>";
    echo "A:".$row['answer_A']."</br>";
    echo "B:".$row['answer_B']."</br>";
    echo "C:".$row['answer_C']."</br>";
    echo "D:".$row['answer_D']."</br>";
    echo "答案:".$row['answer']."</br>";
    }
    mysql_close($conn);
    ?>
    

    打开之后发现是乱码,所以想到用html的meta标签的charset属性改一下编码,完整代码就如下了:

    <html>
    <head>
    <meta charset="utf-8">
    <title>connection</title>
    </head>
    </body>
    <?php
    $id= $_GET['id'];
    $conn = mysql_connect('127.0.0.1','root','root');
    mysql_select_db('jiepou',$conn);
    $sql = "select * from jiepou where id=$id";
    $result = mysql_query($sql);
    if (!$result) {
     printf("Error: %s\n", mysqli_error($dbc));
     exit();
    }
    while($row = mysql_fetch_array($result)){
    echo "ID".$row['id']."</br>";
    echo "题目:".$row['question']."</br>";
    echo "A:".$row['answer_A']."</br>";
    echo "B:".$row['answer_B']."</br>";
    echo "C:".$row['answer_C']."</br>";
    echo "D:".$row['answer_D']."</br>";
    echo "答案:".$row['answer']."</br>";
    }
    mysql_close($conn);
    ?>
    </body>
    </html>
    

    看看效果


    4.png

    至此,最基本的问题就解决了,下面就开始编写前端吧。这个引擎用到的语言是TypeScript,然后就是各种API的作用,到目前为止写完了开始界面和进度条加载,等再有一些进展之后再写第二篇吧。

    相关文章

      网友评论

          本文标题:H5游戏开发(一)

          本文链接:https://www.haomeiwen.com/subject/flalaftx.html