std::map 注意事项

std::map 不能直接访问下标,否则size会自动变大。这坑和js如出一辙。
查询需用find,删除需用erase

    auto it = _tilesAniData.find(z);
    if (it != _tilesAniData.end()) { // remove old data
        delete it->second;
        _tilesAniData.erase(z);
    }

遍历

    for(auto it = _tilesAniData.begin(); it != _tilesAniData.end(); ++it) {
        delete it->second;
    }

TiledMap旋转与翻转

选中图块,
键盘x键进行x轴翻转,
键盘y键进行y轴翻转,
键盘z键进行旋转(每次90度)

可以看到鼠标上的图块发生了改变,刷到地图上即可.

cocos creator wap模式下横竖屏动态适应

动态修改场景的canvas属性设置,需要两套布局节点坐标信息

    start() {
        this.updateCanvasSize();
        cc.view.setResizeCallback(() => {
            this.updateCanvasSize();
        })
    },

    // 自由切换横竖屏,动态设置设计分辨率和适配模式。
    updateCanvasSize() {
        let size = cc.view.getFrameSize();
        if (size.width > size.height) {
            this.canvas.fitWidth = false;
            this.canvas.fitHeight = true;
            this.canvas.designResolution = cc.size(1920, 1080);
            this.showLandscape();
        } else {
            this.canvas.fitWidth = true;
            this.canvas.fitHeight = false;
            this.canvas.designResolution = cc.size(1080, 1920);
            this.showPortait();
        }
    },

Quick-Cocos2dx-Community 3.7.7 Beta

新增

  • FastTMXLayer 支持设置透明度和颜色。
  • WebView同步最新实现,新增cleanCachedData,setOpacityWebView,setBackgroundTransparent方法。
  • Android增加对虚拟按键隐藏的支持。
  • audio添加playBGMSync,playEffectSync接口,但依然推荐在loading场景先预加载所有音频。
  • cc.FileUtils新增绑定getFileDataFromZip和unzipFile
  • Luasocket添加socket.dns.isIpv6()接口,以异步方式判断网络类型,同步优化SimpleTCP,解决可能柱塞UI的问题。
  • display中新加FIXED_AUTO分辨率适配模式,自动选择 FIXED_WIDTH 或 FIXED_HEIGHT。

阅读全文»

iOS 12国行的特供联网提示框不弹出

非常蛋痛,必须请求带域名的http才能触发,直接ip地址不一定触发。

需要无脑请求一次带域名的网络。

local request = network.createHTTPRequest(function(event)
end, "http://cocos2d-lua.org", "GET")
request:start()

Quick-Cocos2dx-Community 3.7.6 Beta

测试稳定后将正式发布到 http://www.cocos2d-lua.org

3.7.6 Beta 主要改进:

  • Android arm64 支持。
  • 龙骨支持。

改进

  1. Windows 添加 Luajit 64 执行程序,可以在 Windows 上打包 luajit 的64位 bytecode 了。
  2. Android arm64-v8a 发布支持,适应 Google Play 9月政策。
  3. cc.pGetAngle() 实现优化。
  4. retain the sprite frame, do not removed by SpriteFrameCache::removeUnusedSpriteFrames。
  5. 龙骨集成。
  6. [luaoc] add conversion lua table to ObjC Dictionary
  7. [luaj]s1.Add missing default cases; 2. fix the return value to nil instead of empty string when java return null.

阅读全文»