直接添加json文件里面的所有配置信息
2015-11-13 13:24
645 查看
万精油函数:(这里假设已经解析json) 解析: 获取文件中的字符串: local data = cc.FileUtils:getInstance():getStringFromFile(“inst/*****.json”) Json解码: local jsonArray = json.decode(data) self:addNpc(jsonArray.npc, self._cityBg) function CityMainLayer:addNpc (jsonNpc, layer) if not jsonNpc then return false end self._npcSpineArray = {} self._npcJsonArray= {} for i = 1, #jsonNpc do self._jsonAni = jsonNpc[i] if not self._jsonAni then return false end local srcJson = "role/spine/" .. tostring( self._jsonAni.src) .. "/" .. tostring (self._jsonAni.src) .. ".json" local srcAtlas = "role/spine/" .. tostring( self._jsonAni.src) .. "/" .. tostring (self._jsonAni.src) .. ".atlas" local x = self ._jsonAni.x local y = self ._jsonAni.y local spine = sp.SkeletonAnimation:create(srcJson, srcAtlas, 0.3) spine:setAnimation(0, "idle", true ) layer:addChild(spine) spine:setPosition(cc.p(x, y)) spine.Flag = true table.insert(self ._npcSpineArray, spine) table.insert(self ._npcJsonArray, self._jsonAni) end end 如果要点击调用: local function onTouchEnded( self, touch, event) for i, v in pairs(self._npcSpineArray) do local locationInNode = self ._cityBg:convertToNodeSpace(touch:getLocation()) local rect = v:getBoundingBox() if v.Flag and cc.rectContainsPoint(rect, locationInNode) then self:npcSaying(self ._npcJsonArray[i], v) v.Flag = false end end end
相关文章推荐
- 插件: Hammer.js
- KING_C#学习之Newtonsoft.Json(一)_简单格式转换
- 详解JavaScript中的arc的方法
- extjs创建grid
- Extjs6 gridPanel排序与获取Store的排序信息
- 10个原生JavaScript技巧
- javascript获取iframe框架中页面document对象,获取子页面里面的内容,iframe获取父页面的元素,
- javascript简介
- JS总结
- 学习JavaScript正则表达式
- CreateJs系列教程之 EaselJs&Tween_5_绘制点击提示(Shape,Tween)
- js实现html的placeholder属性效果
- js判断是否为正整数的正则写法 JavaScript正整数正则
- js小效果:返回顶部
- JS提交表单带滚动条
- 在javascript中使用replace
- javaScript 中立即执行函数相关
- js replace()去除代码中空格
- js两种定义函数方式及区别
- 用JSSE定制SSL连接