|
主题: 怎么样用FLASH作拼图游戏?
|
 鼠爸爸
职务:普通成员
等级:1
金币:0.0
发贴:4
注册:2003/12/8 14:11:18
|
#12003/12/8 14:39:58
请教各位高手们,在FLASH里怎样作拼图游戏。谢谢!
|
 Chieftain
职务:管理员
等级:5
金币:10.0
发贴:3083
注册:2001/12/26 16:58:13
|
#22003/12/8 14:43:39
转flash develop 那里更适合,且有更多的高手..
|
 DreadKnightOx
职务:普通成员
等级:1
金币:0.0
发贴:71
注册:2003/12/3 16:43:07
|
#32003/12/8 19:03:05
思想就是:判断是否每一块图都在自己的位置上(或者是在附近,因为人很精确的把图移到一个像素不差……恨faint阿)
|
 DreadKnightOx
职务:普通成员
等级:1
金币:0.0
发贴:71
注册:2003/12/3 16:43:07
|
|
 DreadKnightOx
职务:普通成员
等级:1
金币:0.0
发贴:71
注册:2003/12/3 16:43:07
|
#52003/12/8 20:08:48
活活活,教你一个BT的方法~~~~ 做一个空MC,在他的时间轴上输入如下代码:
// 首先输出当前所有mc坐标代码
trace("//代码");
trace("with ("+this+"){");
for (var i in this) {
if (this[i] instanceof MovieClip) {
// 如果是mc就输出坐标
trace("\t"+i+".目标x = "+this[i]._x);
trace("\t"+i+".目标y = "+this[i]._y);
}
}
trace("}");
depth = 0;
// MC层次
// 每回合判定状态
var 判定要求 = 10;
onEnterFrame = function () {
var win = true;
for (var i in this) {
if (this[i] instanceof MovieClip) {
if (this[i]._x-this[i].目标x>判定要求 || this[i].目标x-this[i]._x>判定要求 || this[i]._y-this[i].目标y>判定要求 || this[i].目标y-this[i]._y>判定要求) {
win = false;
break;
}
}
}
if (win) {
_root.win();
}
};
onMouseDown = function () {
for (var i in this) {
if (this[i].hitTest(_root._xmouse, _root._ymouse, true)) {
this[i].swapDepths(depth++);
startDrag(this[i]);
}
}
};
onMouseUp = function () {
stopDrag();
};
|
 DreadKnightOx
职务:普通成员
等级:1
金币:0.0
发贴:71
注册:2003/12/3 16:43:07
|
#62003/12/8 20:19:15
OK ,现在随便找张图放到这个mc里面,切成N块 MC 但是不要移动~整个图图还是完整的~~~运行~~~这个mc会自动检测自己内部的mc并且输出坐标代码~~于是就会自动输出类似这样的代码~~~
//代码 with (_level0.instance1){ instance7.目标x = 17 instance7.目标y = 109.8 instance6.目标x = -175 instance6.目标y = 15.55 instance4.目标x = -175 instance4.目标y = -100 instance3.目标x = 17 instance3.目标y = -100 instance2.目标x = 135.5 instance2.目标y = 6.4 }
这些就是胜利目标勒~~~ 把它沾到主场景的时间轴上~~
这个mc会不停检测是否每个小图图的 _x 和 _y都很接近 目标x 和 目标y , 如果都很接近,(看这个变量var 判定要求 = 10;)就调用_root.win();
然后在主场景上写一个win()函数,比如,你主场景第一帧stop,第二帧是胜利,就这样: function win(){ gotoAndStop(2); }
ok~~~运行看看~~~~恩,马上就胜利了~~~因为图图还在正确的位置嘛~~~ 把图片弄乱~~~OK~~~搞定手工。
|
 DreadKnightOx
职务:普通成员
等级:1
金币:0.0
发贴:71
注册:2003/12/3 16:43:07
|
|
 浮尘
职务:普通成员
等级:3
金币:7.0
发贴:1258
注册:2001/11/19 12:41:09
|
#82003/12/8 21:35:36
很难,至今没发现良方。尤其是如何自动切图(拼图游戏应该允许用户自己选图)。
|
 DreadKnightOx
职务:普通成员
等级:1
金币:0.0
发贴:71
注册:2003/12/3 16:43:07
|
#92003/12/8 21:59:32
楼上的你说什么很难阿……?
- -用setMask可以实现自己选图
|
 aaee1122
职务:普通成员
等级:1
金币:0.0
发贴:66
注册:2003/4/1 21:45:45
|
#102003/12/10 9:19:06
以前看过有用droptarget()写的,不过具体怎么样忘了。
|
 浮尘
职务:普通成员
等级:3
金币:7.0
发贴:1258
注册:2001/11/19 12:41:09
|
#112003/12/10 10:28:34
DreadKnightOx在上个帖子中说 引用: 楼上的你说什么很难阿……?
- -用setMask可以实现自己选图
看来DreadKnightOx做过了,能否传上来,大家学习学习?图片能够根据游戏的难易级别自动切割成 x 块(简单)、y 块(难)、z 块(极难),并可以加上旋转吗?就象 Jigsaw 一样。
|
 DreadKnightOx
职务:普通成员
等级:1
金币:0.0
发贴:71
注册:2003/12/3 16:43:07
|
#122003/12/10 11:56:58
- -还没做过....
|
 鼠爸爸
职务:普通成员
等级:1
金币:0.0
发贴:4
注册:2003/12/8 14:11:18
|
#132003/12/10 15:21:38
非常谢谢楼上各位了,能不能再进一步,像Authorwar里用目标区域交互那样,图片正确就停在那里,不正确就返回。
|
 DreadKnightOx
职务:普通成员
等级:1
金币:0.0
发贴:71
注册:2003/12/3 16:43:07
|
#142003/12/10 15:48:13
- -试着自己改。。
|