flash毕业设计论文步骤
首先在“qizi”元件的“pic”图层的第2帧内的“白棋”按钮和第3帧内的“黑棋”按钮上设置如下的对象动作。
③动作语句F3——将拖动放置的动作分别用子程序来处理
on(press){
call(“mouseDown”);//拖动的子程序
}
on(release){
call(“mouseUp”)//放置的子程序
}
在此拖动和位置的动作使用子程序来处理。接着在“script”图层的第i帧内设置如下的帧动作以初始化变量。
④动作语句F4一初始化变量
//保存开始时的坐标
myOrgX=_x;
myOrgY=_y;
动作语句F4说明:第2~3行将该棋子开始时的坐标分别存储在变量中。
在“script”图层的第2,3帧(标签名称分别为player0,playerl)设置帧动作为“stop();”语句。
在“script”图层的第4帧(标签名称为mouseDown)制作拖动时的子程序。动作语句F5——拖动时的子语句
startDrag(“”,true,0,0,640,480);
动作语句F5说明:第1行如果超出影片画面,则无法拖动。在“script”图层的第5帧(标签名称为mouseUp)制作放置时的子程序。
⑤动作语句F6-放置时的子程序
stopDrag();
//棋盘格子的位置计算
dropX=int((Numberb(_x_/;spcX)+Number(/:boxX/2))//:boxx)+l;
dropY=int((Numberb(_y_/;spcY)+Number(/:boxY/2))//:boxy)+1;
If(_droptarget eq”/board”and eval
(“/:board”add dropX add“_”add dropY)==_1){
//复制棋子
tge=”/como”add/:playCount;
tellTarget(“/”)
duplicateMovieClip(“person”add Number(player),
“como”add Number(playCount),(playCount);
}
setProperty(tge,_x.Number((dropX_1)*/;boxx)+Number(/speX));
setProperty(tge,_y.Number((dropY_1)*/:boxy)+Number(/:spcY));
setProperty(tge,_visible,true);
//设定棋盘坐标轴
set(“/:board”add dropX add“-”add dropY,/:player);
//玩家状态的更新
/:playCount=Number(/:playCount)+l;
/:player=not(Number(/:player));
gotoAndStop(“player”add Number(/:player));
}
//设定棋子回到原来位置
setProperty(“”_x,myOrgX);
setProperty(“”_y,myOrgY);
动作语句F6说明:
第1行停止拖动状态。第3至4行求取矩阵的行和列,在变量spcX和boxY等变量加上“/:”元件。第5至10行复制白棋、黑棋,使用PlayCount语句来为棋子计数。第5行如果棋盘格子点上没有放置任何东西时,就指定变量为-1,并继续下一句的处理,如果不是,就不做任何动作。第7行设置被放置的棋子的名称,例如设置第1个棋子时,其名称就变为“/comol”,放置第2个棋子时,名称变为“/com02”。第11至13行设置所复制的白、黑棋为显示状态。第15行记录在棋盘的某格子点上放置了黑棋或者白棋。第17行把代表设置完的棋子总数的变量como的内含值增加l。第18行使用Not函数,将True变为False,或者把False变更为玩家。第19行换成显示自己。第22至23行回到原来的位置。