cocos2d 主角更随触屏走

bool HelloWorld::init()
{
    if ( !CCLayer::init() )
    {
        return false;
    }

    CCSize visibleSize = CCDirector::sharedDirector()->getVisibleSize();
    CCPoint origin = CCDirector::sharedDirector()->getVisibleOrigin();
    hero= CCSprite::create("1.png");
    hero->setPosition(ccp(visibleSize.width/2 + origin.x, visibleSize.height/2 + origin.y));
    this->addChild(hero, 0);

    CCDirector* pDirector=CCDirector::sharedDirector();
    pDirector->getTouchDispatcher()->addTargetedDelegate(this,0,true);

    return true;
}

bool HelloWorld::ccTouchBegan(CCTouch* touch,CCEvent* event)
{
    CCPoint heropos=hero->getPosition();
    CCPoint location=touch->getLocationInView();
    location=CCDirector::sharedDirector()->convertToGL(location);
    if(location.x>heropos.x-32&&location.x<heropos.x+32&&
        location.y>heropos.y-32&&location.y<heropos.y+32)
    {
        isControl=true;
        deltax=location.x-heropos.x;
        deltay=location.y-heropos.y;
    }
    return true;
}

void HelloWorld::ccTouchMoved(CCTouch* touch,CCEvent* event)
{
    if(isControl)
    {
        CCPoint location=touch->getLocationInView();
        location=CCDirector::sharedDirector()->convertToGL(location);
        float x=location.x-deltax;
        float y=location.y-deltay;
        hero->setPosition(ccp(x,y));
    }
}
时间: 2024-11-02 18:02:27

cocos2d 主角更随触屏走的相关文章

JS的Touch事件们,触屏时的js事件

丫的,终于找到了JS在平板电脑上的事件!!! iphone.ipod Touch.ipad触屏时的js事件 1.Touch事件简介 pc上的web页面鼠标会产生onmousedown.onmouseup.onmouseout.onmouseover.onmousemove的事件,但是在移动终端如iphone.ipod Touch.ipad上的web页面触屏时会产生ontouchstart.ontouchmove.ontouchend.ontouchcancel事件,分别对应了触屏开始.拖拽及完成

iphone、ipod Touch、ipad触屏时的js事件

1.Touch事件简介 pc上的web页面鼠 标会产生onmousedown.onmouseup.onmouseout.onmouseover.onmousemove的事件,但是在移动终端如 iphone.ipod Touch.ipad上的web页面触屏时会产生ontouchstart.ontouchmove.ontouchend.ontouchcancel 事件,分别对应了触屏开始.拖拽及完成触屏事件和取消. 当按下手指时,触发ontouchstart: 当移动手指时,触发ontouchmov

拒推触屏Mac 苹果是不想自绝后路?

苹果自发布iPhone复兴以来,就一直处在高歌猛进状态.当下,苹果产品主要分为两大领域,一是移动端,主要是iPhone.iPad及部分音乐播放器:二是桌面端,主要是Mac系列--Macbook及一体机iMac等. 果粉都很清楚苹果致力于走软硬结合道路,因此希望有一天看到Mac系列搭载触摸屏,提供和iPhone.iPad一样的触摸体验--就像微软Windows 8支持触摸一样.但是sorry,果粉的愿望注定将要落空. 触屏Mac无望 果粉速速退去 Mac系列或将搭载触摸屏的消息几乎在每次产品更新前

问卷调查 for Html5触屏版

什么是Html5触屏版? 采用最新HTML5技术,无需下载安装.无需下载升级,使用移动设备浏览器,就能访问自适应屏幕大小的访问界面,微信也能扫描访问. 为什么已经有PC网页版和移动端APP版还需要Html5触屏版? 首先PC网页版是基于传统PC上的浏览器使用,在移动浏览器上会出现屏幕大小伸缩,不适合在移动终端浏览器上使用. 而移动端APP版需要按照才能使用,基于Html5触屏版使用手机浏览器就能访问. Html5触屏版与传统的手机wap网页的区别? 传统的wap网页更适合之前的功能机,html5

[Android] 触屏setOnTouchListener实现图片缩放、移动、绘制和添加水印

    前一篇文章讲述了Android实现图片Matrix矩阵类缩放.旋转.对比度.亮度.饱和度处理,但是真正的图片软件都是使用触屏实现图片缩放.移动.添加水印等功能,所以该篇文章主要通过setOnTouchListener监听实现该功能.希望文章对大家有所帮助. 一.图片缩放实现     首先先简单介绍Android如何实现触屏缩放图片和移动图片,新建TouchImageViw工程.设计XML中activity_main.xml布局: <RelativeLayout xmlns:android

bootstrapcss3触屏滑块轮播图

插件描述:bootslider响应bootstrapcss3触屏滑块轮播图 小海已经好久没分享技术性文章了,这个基于bootstrap的触屏版轮播图绝对满足大家的胃口,并且支持移动端触摸滑动.功能上,这款bootstrapcss3触屏滑块轮播图支持鼠标滑动.手机端触摸滑动.外观上,这款bootstrap的触屏版轮播图的两侧有淡化处理,因此更显立体效果. 本文由涂志海博客提供,想获取更多的资料请访问www.tuzhihai.com

工业触屏系统开发经验分享

最近搞了个工业触屏电脑系统的开发,系统安装的是精简的WINXP系统.考虑到系统是精简的,如果直接使用WinForm技术可能有些功能使用不了,WPF就更不用说了.而且传统的C/S开发的部署.修改都是个问题,因此在B/S开发能够胜任的情况下,优先考虑B/S架构. 该系统技术上面比较简单,都是使用常规的技术进行开发. 下面罗列一下使用到的技术: 1.JavaScript(jQuery) 这个不用多说了,JavaScript编程是面向浏览器客户端的编程技术,浏览器与用户的交互操作都是通过JavaScri

体验优秀的触屏网页开发加速滑动与回弹

一个接近naturalapp体验的加速滑动与回弹css3属性 前几天,楼主发表了一篇关于手机网页开发软键盘与fixed博文叫做:webapp前端开发软键盘与position:fixed为我们带来的不便 自以为总结的挺好挺有范,但是很不幸,通过学习交流很快就有了更好更完美的方案,而且还是来自safari原生控件实现,代码很简单 overflow-y:auto;-webkit-overflow-scrolling:touch; 效率很高的有着硬件加速的系统级控件,简约而不简单 代码很少很简单,但我们

Android: 触屏fling/scroll/drag的区别及其详细过程

Google了一下,终于搞清了touch screen下的几种操作模式(对应的是事件). 对于一个view, 常用的操作有点击(click)和长按(long press)二种.实际上,这些操作类型是Android内部在onTouchEvent(MotionEvent event)里对用户的动作做了一定的分析,从而通知应用程序是发生了点击还是长按等事件. 有时,我们需要的并不仅限于这两种操作.我们可以借助GestureDetector来分析出更细致的操作类型.基本的过程就是创建一个myGestur