cc.Scene.ClassName = "Scene"; function cc.Scene:setHeightMap(fileName) if self:getHeightField() then self:removeComponent(self:getHeightField()); end if self:getCollisionObject() then self:removeComponent(self:getCollisionObject()); end local heightField = cc.HeightFieldComponent:load(fileName); self:addComponent(heightField); end function cc.Scene:getHeightMap() local heightField = self:getHeightField(); if not heightField then return nil; else return heightField:getFileName(); end end -- 获取一个点的高度信息 -- worldPos为二位坐标点 function cc.Scene:getHeight(x, z) local heightField = self:getHeightField(); if not heightField then return 0 end return heightField:getHeight(x, z) end function cc.Scene:loadFromXmlNode(xmlNode) cc.Node2D.loadFromXmlNode(self , xmlNode); local fog = xmlNode.Fog; if fog then self:setFog(fog); end local heightMapFile = xmlNode.HeightMapFile; if heightMapFile and heightMapFile ~= "" then self:setHeightMap(heightMapFile); end end function cc.Scene:createNode() local node = cc.Scene:create(); return node; end