cocos2dx 3.3 + lua 学习笔记(03)--- 触摸事件、定时器、进度条
来源:互联网 发布:hbase不直接删除数据 编辑:程序博客网 时间:2024/05/01 20:10
— 多点触摸
function MenuLayer:addTouches()
local touch1, touch2 = cc.Touch, cc.Touch
local function onTouchesBegan(touches, event)
print(“Touches Began”)
touch1 = touches[1] — 第一个触点,下标从1开始
touch2 = touches[2] — 第二个触点
local pos1 = touch1:getLocation() — 获取触点1的位置
local pos2 = touch2:getLocation() — 获取触点2的位置
local delta = {
x = pos2.x – pos1.x ,
y = pos2.y – pos1.y
}
end
local function onTouchesMoved(touches, event)
print(“Touches Moved”)
end
local function onTouchesEnded(touches, event)
print(“Touches Ended”)
end
— 注册多点触摸
local listener = cc.EventListenerTouchAllAtOnce:create() --单点EventListenerTouchOneByOne():create()
listener:registerScriptHandler(onTouchesBegan, cc.Handler.EVENT_TOUCHES_BEGAN)
listener:registerScriptHandler(onTouchesMoved, cc.Handler.EVENT_TOUCHES_MOVED)
local bloodBody = cc.Sprite:create(bloodPic)
--创建进度条
local bloodProgress = cc.ProgressTimer:create(bloodBody)
bloodProgress:setType(cc.PROGRESS_TIMER_TYPE_BAR) --设置为条形 type:cc.PROGRESS_TIMER_TYPE_RADIAL
bloodProgress:setMidpoint(cc.p(0,0)) --设置起点为条形坐下方
bloodProgress:setBarChangeRate(cc.p(1,0)) --设置为水平方向
bloodProgress:setPercentage(100) -- 设置初始进度为0
bloodProgress:setPosition(cc.p(0, 0))
self:addChild(bloodProgress)
function MenuLayer:addTouches()
local touch1, touch2 = cc.Touch, cc.Touch
local function onTouchesBegan(touches, event)
print(“Touches Began”)
touch1 = touches[1] — 第一个触点,下标从1开始
touch2 = touches[2] — 第二个触点
local pos1 = touch1:getLocation() — 获取触点1的位置
local pos2 = touch2:getLocation() — 获取触点2的位置
local delta = {
x = pos2.x – pos1.x ,
y = pos2.y – pos1.y
}
end
local function onTouchesMoved(touches, event)
print(“Touches Moved”)
end
local function onTouchesEnded(touches, event)
print(“Touches Ended”)
end
— 注册多点触摸
local listener = cc.EventListenerTouchAllAtOnce:create() --单点EventListenerTouchOneByOne():create()
listener:registerScriptHandler(onTouchesBegan, cc.Handler.EVENT_TOUCHES_BEGAN)
listener:registerScriptHandler(onTouchesMoved, cc.Handler.EVENT_TOUCHES_MOVED)
listener:registerScriptHandler(onTouchesEnded, cc.Handler.EVENT_TOUCHES_ENDED)
--获取层的事件派发器
local dispatcher = cc.Director:getInstance():getEventDispatcher()
dispatcher:addEventListenerWithSceneGraphPriority(listener, self)
end
— 定时器
--开启定时器,一般是两种方式
第一种:自定义的形式,使用之后记得关闭
schedulerID = cc.Director:getInstance():getScheduler():scheduleScriptFunc(update, 0, false) --调用的function, 调用频率(秒), 是否暂停(true, false)
cc.Director:getInstance():getScheduler():unscheduleScriptEntry(schedulerID) -- 取消定时器
第二种:类似c++中的 scheduleUpdate()
self:scheduleUpdateWithPriorityLua(update, 0)
self:unscheduleUpdate() --取消定时器
调用的函数原型如下
local function update(delta)
end
— 进度条
--血条
local bloodBody = cc.Sprite:create(bloodPic)
--创建进度条
local bloodProgress = cc.ProgressTimer:create(bloodBody)
bloodProgress:setType(cc.PROGRESS_TIMER_TYPE_BAR) --设置为条形 type:cc.PROGRESS_TIMER_TYPE_RADIAL
bloodProgress:setMidpoint(cc.p(0,0)) --设置起点为条形坐下方
bloodProgress:setBarChangeRate(cc.p(1,0)) --设置为水平方向
bloodProgress:setPercentage(100) -- 设置初始进度为0
bloodProgress:setPosition(cc.p(0, 0))
self:addChild(bloodProgress)
0 0
- cocos2dx 3.3 + lua 学习笔记(03)--- 触摸事件、定时器、进度条
- 【Cocos2dx 3.3 Lua】定时器事件
- Quick cocos2dx-Lua(V3.3R1)学习笔记(十三)-----继续触摸事件之多点触摸
- Cocos2dx-lua触摸事件处理
- cocos2dx lua 触摸事件+计时器
- quick-cocos2dx lua语言讲解 (动作,定时器,触摸事件,工程的类的讲解)
- lua 在cocos2dx 2.2 中的触摸事件
- 学习笔记--cocos2dx-3.0中LabelTTF添加触摸监听事件
- Quick cocos2dx-Lua(V3.3R1)学习笔记(8) ---- 事件篇之单点触摸事件,让我们用精灵模仿一个按钮吧
- COCOS2DX,LUA,学习笔记
- cocos2dx-lua基础内容之 用户事件中的触摸事件
- cocos2dx学习笔记(定时器)
- cocos2dx学习笔记(定时器)
- Quick cocos2dx-Lua学习笔记
- cocos2dx-Lua学习笔记:CCLuaStack
- CocosStudio 学习笔记 之 开关、进度条、步进器也,Button触摸事件的监听
- cocos2dx Lua 定时器
- iOS 学习笔记 触摸事件
- 第一专题:贪心算法总结
- c#之datagridview格式
- zoj3228AC自动机
- CSS初探
- VE设计#6 表现层query界面
- cocos2dx 3.3 + lua 学习笔记(03)--- 触摸事件、定时器、进度条
- Fragment
- Tesseract-Oct的使用及语言库的训练
- HDU 1521 排列组合(指数型母函数)
- 网络配置
- c#-随机数2
- Windows + IDEA + SBT 打造Spark源码阅读环境
- Thinking in Java:容器深入研究
- CentOS 6.0 启动时出现fstab错误时的修复