转载

青瓷引擎之纯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 ?> 

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

正文到此结束
Loading...