quick cocos getBoundingBox的bug

local scheduler = require(cc.PACKAGE_NAME .. ".scheduler")

local TestSprite = class("TestSprite", function()
    return display.newSprite("#player_idle1.png")
end)

function TestSprite:ctor(map)
    local size= self:getBoundingBox()

    print(size.x)
    print(size.y)
end

return TestSprite

--
-20
-28
local TestScene = class("TestScene", function()
    return display.newScene("TestScene")
end)

function TestScene:ctor()
    self.map_=cc.TMXTiledMap:create("map/map.tmx");
    self:addChild(self.map_)

    --[[
    local sp2= display.newSprite("#player_idle1.png",4*32+16,5*32+24)
    local spSize=sp2:getSpriteFrame():getRect()

    --local sp= display.newSprite("#player_idle1.png",4*32+16,5*32+spSize.height/2):addTo(self.map_)
    local sp=display.newSprite("#player_idle1.png")
    sp:setPosition(4*32+16,5*32+spSize.height/2)

    self.map_:addChild(sp)

    --cc.Sprite:getBoundingBox().
    local aabb=sp:getBoundingBox()
    print(aabb.x)
    print(aabb.y)

    print(aabb.width)
    print(aabb.height)

    local sp3= display.newSprite("test/point.png",aabb.x,aabb.y):addTo(self)

    --transition.moveTo(self.map_, {x = -display.cx, y = 0, time = 1.5})
    ]]

    local TestSprite=require("src/TestSprite")

    self.hero_=TestSprite.new(self.map_)
    self.hero_:setPosition(4*32+16,5*32+12)
    self.map_:addChild(self.hero_)

    local aabb=self.hero_:getBoundingBox()

    print(aabb.x)
    print(aabb.y)

end

return TestScene

--
124
144
时间: 2024-09-30 11:53:33

quick cocos getBoundingBox的bug的相关文章

quick cocos 或者 Cocos2dx 项目下的Android.mk文件的学习

android.mk文件的作用:编译需要的cpp文件,生成.so动态库,供android端调用. 先上一个android.mk文件: 第一次创建项目,在Android平台编译时,都需要通过android.mk文件编译整个cocos2dx的库(第一次编译我们需要等待很长的时间.....). 首先知道$(call import-module,dir_name)的作用,然后顺着lib/proj.android目录继续找对应目录下的android.mk文件 类似于递归一样,把所有目录下的android.

quick cocos getPosition bug

local MainScene = class("MainScene", function() return display.newScene("MainScene") end) function MainScene:ctor() self:init() end function MainScene:init() display.addSpriteFrames("bandit-hd.plist","bandit-hd.png"

quick cocos UIListView之isItemInViewRect方法修正

功能描述:一个滚动列表,当列表可视区域上部有内容时则上部出现向上箭头提示,当列表可视区域下部有内容则下部出现向下箭头提示. 功能实现:应用cocos studio1.6制作界面,上面放置一个背景,一个滚动列表,然后程序加载解析这个界面的json文件,应用quick3.3final下的UIListView的方法isItemInViewRect进行检测第一条与最后一条是否在可视区域内. 问题:当界面加载进来,坐标设置0,0时,isItemInViewRect方法判断都没问题,但当把界面调整位置时,i

quick cocos 的scheduler 定时器

cocos2dx原生lua对于定时器的写法: 1.每帧调用: void scheduleUpdateWithPriority(int priority) void scheduleUpdateWithPriorityLua (int nHandler,int priority) 2.指定调用间隔时间的: unsigned int scheduleScriptFunc (unsigned int nHandler, float fInterval, bool bPaused) 3.取消定时器事件

quick cocos table

local scheduler = require(cc.PACKAGE_NAME .. ".scheduler") local MainScene = class("MainScene", function() return display.newScene("MainScene") end) function MainScene:ctor() --add Plist display.addSpriteFrames("bandit.p

quick cocos scheduler update

local scheduler = require(cc.PACKAGE_NAME .. ".scheduler") local MainScene = class("MainScene", function() return display.newScene("MainScene") end) function MainScene:ctor() self:addNodeEventListener(cc.NODE_ENTER_FRAME_EVEN

quick cocos schedule

local scheduler = require(cc.PACKAGE_NAME .. ".scheduler") local MainScene = class("MainScene", function() return display.newScene("MainScene") end) function MainScene:ctor() scheduler.scheduleGlobal(function() self:foo() --每

quick cocos touch

local TestScene = class("TestScene", function() return display.newScene("TestScene") end) function TestScene:ctor() local layer = display.newLayer():addTo(self) layer:setTouchEnabled(true) layer:setTouchMode(cc.TOUCH_MODE_ONE_BY_ONE) l

quick cocos naja

local scheduler = require(cc.PACKAGE_NAME .. ".scheduler") local MainScene = class("MainScene", function() return display.newScene("MainScene") end) -- 相当于C++中的构造函数 function MainScene:ctor() -- 将背景设置为白色,而且这个作为当前场景的层,以便以后实现触摸事