灵动游戏论坛游戏专区【游戏教程】鼠标控制人物在地图移动的方法

1  /  3  页   123 跳转 查看:4340

标题: 鼠标控制人物在地图移动的方法

鼠标控制人物在地图移动的方法

以人物为中心点移动地图,命名地图MC为“map"

在人物MC上加入主要代码:

onClipEvent (mouseDown) {
    // 鼠标按下变量pres为1,跳转到行走动画
    var pres = 1;
    gotoAndPlay(35);
}
onClipEvent (mouseUp) {
    // 鼠标放开变量pres为0,跳转到站立动画
    var pres = 0;
    gotoAndPlay(1);
}
onClipEvent (load) {
    // 获得人物的四个面在全局的坐标值
    var xx = this.getBounds(_root).xMin;
    var mx = this.getBounds(_root).xMax;
    var yy = this.getBounds(_root).yMin;
    var my = this.getBounds(_root).yMax;
}
onClipEvent (enterFrame) {
    // 获得鼠标全局坐标值
    var moux = _root._xmouse;
    var mouy = _root._ymouse;
    if (pres == 1) {
        // 当鼠标按下的时候,根据鼠标和人物的距离来移动地图
        // 也就是说鼠标在人物左边的时候按下地图向右移动,其他类似
        if (moux>mx) {
            _root.map._x -=1;
        }
        if (moux<xx) {
            _root.map._x +=1;
        }
        if (mouy<yy) {
            _root.map._y +=1;
        }
        if (mouy>my) {
            _root.map._y -=1;
        }
    }
}


效果演示:

下载请点击这里
引用
 

Re:鼠标控制人物在地图移动的方法

引用
 

Re:鼠标控制人物在地图移动的方法

引用
 

Re:鼠标控制人物在地图移动的方法

引用
 

Re:鼠标控制人物在地图移动的方法

引用
 

Re:鼠标控制人物在地图移动的方法

引用
 

Re:鼠标控制人物在地图移动的方法

其实这个,人并没有移动,主要是场景移动
这样的话看上去好象是人在走的
所以人一直在中心部分
不过确实学到了点知识getBounds()哈哈
这个xMin是什么意思?
getBounds()不是已经获得坐标了吗[em09]
引用
 

Re:鼠标控制人物在地图移动的方法

引用
 

Re:鼠标控制人物在地图移动的方法

引用
 

Re:鼠标控制人物在地图移动的方法

引用
 

Re:鼠标控制人物在地图移动的方法

引用
 

Re:鼠标控制人物在地图移动的方法

哈哈!!
还好偶是一个中学生,学什么东西都快
呵呵!!
灵翼大哥!!!
你这个灵动组里的人,好象处你BT之外,其余都白痴呀???[em04][em05]
引用
 

Re:鼠标控制人物在地图移动的方法

[em01][em02][em09][em09][em09]!@#$%^&*
引用
 

Re:鼠标控制人物在地图移动的方法

引用
 

Re:鼠标控制人物在地图移动的方法

引用
 
1  /  3  页   123 跳转

版权所有 灵动原创FLASH游戏中心   Sitemap

Powered by Discuz!NT 2.0.1214    Copyright © 2001-2009 Comsenz Inc.
Processed in 0.03125 second(s) , 4 queries. 苏ICP备05047165号
返顶部