青瓷引擎之纯JavaScript打造HTML5游戏第二弹——《跳跃的方块》Part 5(添加微信支持)

继上一次介绍了《神奇的六边形》的完整游戏开发流程后(可点击这里查看),这次将为大家介绍另外一款魔性游戏《跳跃的方块》的完整开发流程。

青瓷引擎之纯JavaScript打造HTML5游戏第二弹——《跳跃的方块》Part 5(添加微信支持)

          (点击图片可进入游戏体验)

因内容太多,为方便大家阅读,所以分多次来讲解。

若要一次性查看所有文档,也可点击这里

 

接上回(《跳跃的方块》Part 4

(二)添加微信支持

添加插件

游戏需要使用微信登陆、和分享,所以使用引擎中提供的微信插件进行实现。
先添加微信插件,并按插件教程搭建微信分享和登陆支持。具体步骤可参见文档。 这里直接按该插件Demo的配置进行配置。客户端将WeChat脚本加载在UIRoot上。

实现登录的逻辑处理

将上一步生成的db.php放于微信登陆插件中的game目录下,修改微信登陆插件中game/login.php中的代码,获取到用户数据后保存到数据库中。修改如下:

 1 <?php
 2     // ....
 3     // ....
 4     // 修改登陆后的处理部分
 5     require_once(‘db.php‘);
 6     // 登录成功后的游戏逻辑处理,有的话请自行补充
 7     function after_login($openid, $userInfo) {
 8         // TODO:业务逻辑自行补充
 9     // 获取数据库连接
10     $mysqli = DB::getDB();
11 
12     if ($mysqli->connect_error) {
13         die(json_encode(array(
14             "error" => "数据库连接失败"
15         )));
16     }
17 
18     $insert_update = "insert into user_info (open_id, name, head_icon, score) values (?, ?, ?, 0) on duplicate key update name = VALUES(name), head_icon = VALUES(head_icon)";
19     $stmt = $mysqli->prepare($insert_update);
20     if (!$stmt) {
21         die(json_encode(array(
22             "error" => "数据库连接失败"
23         )));
24     }
25 
26     $stmt->bind_param("sss", $v_open_id, $v_name, $v_head_icon);
27 
28     $v_open_id = $open_id;
29     $v_name = $user_info["nickname"];
30     $v_head_icon = $user_info["headimgurl"];
31 
32     $stmt->execute();
33     if ($stmt->errno) {
34         die(json_encode(array(
35             "error" => "注册用户失败,错误代码:".$stmt->errno
36         )));
37     }
38     $stmt->close();
39 }
40 
41 //....
42 //....
43 
44 // 调用具体的业务逻辑处理, 传入用户参数
45 after_login($token[‘openid‘], json_decode($line[‘msg‘], true));
46 ?>

 

 

下次将继续介绍如何”分数上传及排行榜查询“,敬请期待!

 

其他相关链接

开源免费的HTML5游戏引擎——青瓷引擎(QICI Engine) 1.0正式版发布了!

JS开发HTML5游戏《神奇的六边形》(一)

青瓷引擎之纯JavaScript打造HTML5游戏第二弹——《跳跃的方块》Part 1

 

青瓷引擎之纯JavaScript打造HTML5游戏第二弹——《跳跃的方块》Part 5(添加微信支持)

上一篇:C#-MVC开发微信应用(3)--文本消息和图文消息的应答


下一篇:微信公众号 发送图文消息