cocos 入门拖拽游戏

原文链接: cocos 入门拖拽游戏

上一篇: 舞蹈链解精确覆盖问题

下一篇: DLX 求解数独

首先搞这些技术其实学习意义不大, 应用层无法就是组合而已, 大多数是体力活, 但是对这些东西有所了解, 在技术选型上会有一些优势, 比如同样的简单动画, vue实现可能就十几k, 但是cocos打包下来2m起步, 因为引擎很大, 但是如果是很多的小游戏, 并且有比较丰富的动画, 那么缓存就能解决包大小问题, canvas相比css有更好的兼容性, 此时使用cocos会更加合理, 当然具体情况肯定还需要具体讨论, 但是学不止步, 玩一玩还是可以的~

参考

https://juejin.im/post/6844903667842170888

下载安装

后面需要注册, win10上相对简单    的吧.....mac流程也一致

先下载dashboard, 然后下载引擎

https://www.cocos.com/creator

up-acdff8f6e03e000ae6ab264eec620dece6c.png

这里我没有选... 只想试试h5的, 实测只是web的话, 不需要vs

up-1d61a8fd6d3429bb26029a84bbb01eef873.png

新建项目

新建hello world, 并运行, 没有c++和vs好像也能跑~

up-89cecd90b7e89d51fc120a5c12a430e6c75.png

up-25a593ba046f2faf649b2d2a3730c3d52bb.png

up-cd8ac06789ffd335f4a2da5caefabfc36c4.png

实现拖动功能

新建js脚本, 保存后, 并拖拽图片到对应的属性上

有两种位置的获取方式

cc.Class({
  extends: cc.Component,
  properties: {
    planeNode: {
      type: cc.Node,
      default: null,
    },
  },
  onLoad() {
    let { planeNode } = this;
    let mouseDown = false;
    const root = cc.director.getScene().getChildByName("Canvas");
    planeNode.on(cc.Node.EventType.MOUSE_DOWN, (event) => {
      mouseDown = true;
    });
    root.on(cc.Node.EventType.MOUSE_MOVE, (event) => {
      if (!mouseDown) return;
      let location = event.getLocation();
      planeNode.position = planeNode.parent.convertToNodeSpaceAR(location);
    });
    //当鼠标抬起的时候恢复状态
    root.on(cc.Node.EventType.MOUSE_UP, (event) => {
      mouseDown = false;
    });
  },
});

up-a74d5550bfe5f9017eaadb4821d03db0044.png

构建发布

打包, 使用默认参数即可

注意在构建过程中不能修改, 否则会终止构建, 发布包出去cocos依赖其实并不多

up-f149f963ece5784e1987a7cb563f956b877.pngup-c9fb4dd112d2dcce4edddfa07000f225f57.png

up-15b75562917e5740408244e1869908e741a.png

本地测试

up-747d78ab832b01665bf88bde281359a378f.png

up-4f2fc323d52b1ce440eb7f585ac5b7d12d1.png

up-ad790885fa53b0da1aa46e80ac90fd71f91.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值