今天算是放假了,休息n天;
轻松了,没p事了,好!
刚才看到一个问题,说的是"狼羊白菜"之事,做了一个简单的例子(只是大概意思而已

),修正了一下,放上它,具体看源
文件吧。
复制内容到剪贴板
代码:
//有狼、羊、白菜,狼和羊不能同时到河的一边;羊和白菜不能同时在一起。
var mc_array:Array = [狼, 羊, 白菜];
var obj_array:Array = [];
var xy_array:Array = [];
var long:Number = mc_array.length;
for (var i:Number = 0; i<long; i++) {
xy_array.push([mc_array._x, mc_array._y]);
mc_array.t.text = mc_array._name.toString();
mc_array.onPress = function() {
t.text = "";
this.startDrag();
obj_array.push(this);
checkPosition();
};
mc_array.onRelease = mc_array.onReleaseOutside=function () {
stopDrag();
delete onEnterFrame;
if (this.hitTest(he)) {
t.text = "怎能放在河上?";
backPosition();
}
obj_array = [];
};
}
function backPosition() {
for (var j:Number = 0; j<long; j++) {
mc_array[j]._y = xy_array[j][1];
}
}
function checkPosition() {
onEnterFrame = function () {
var myName:String = obj_array[0]._name;
var h:Number = 200;
switch (myName) {
case "狼" :
白菜._y = 狼._y;
if (obj_array[0]._y<h) {
羊._y = 260+Math.random()*100;
} else {
羊._y = 羊._height/2+Math.random()*100;
}
break;
case "羊" :
狼._y = 白菜._y;
if (obj_array[0]._y<h) {
白菜._y = 260+Math.random()*100;
} else {
白菜._y = 白菜._height/2+Math.random()*100;
}
break;
case "白菜" :
狼._y = obj_array[0]._y;
if (obj_array[0]._y<h) {
羊._y = 260+Math.random()*100;
} else {
羊._y = 羊._height/2+Math.random()*100;
}
break;
}
}
}[
本帖最后由 sxl001 于 2008-7-3 15:44 编辑 ]