仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 859|回复: 7
打印 上一主题 下一主题

[学习教程] 来看看:Flash AS实例:智力过河小游戏源代码-Flash actionscript

[复制链接]
分手快乐 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-15 20:43:34 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
“swf”这是一个完整的影片档,无法被编辑。swf在发布时可以选择保护功能,如果没有选择,很容易被别人输入到他的原始档中使用。
poluoluo中心提醒:教你制造智力过河小游戏.
游戏划定规矩:
一只年夜狮子,一只小狮子,一只年夜山君、一只小山君、一只年夜花豹,一只小花豹要到河劈面往,只要年夜植物和小山君会荡舟,船每次只能乘两只植物。年夜植物之间相互吃不了,小植物之间相互吃不了,假如年夜植物不在同类的小植物就会被异类年夜植物吃失落。
[media=wmv,550,400][/media]

复制粘贴到第一帧,测试:

创立入手下手场景();

function创立入手下手场景(){

创立TXT_MC(this,"游戏名","智力过河",200,100,300,false);

创立TXT_MC(this,"游戏入手下手","游戏入手下手",250,200,100,true);

创立TXT_MC(this,"游戏申明","游戏申明",250,250,100,true);

游戏入手下手.onPress=function(){

删除入手下手场景();

创立游戏场景();

};

游戏申明.onPress=function(){

删除入手下手场景();

创立申明场景();

};

}

function删除入手下手场景(){

游戏名.removeMovieClip();

游戏入手下手.removeMovieClip();

游戏申明.removeMovieClip();

}

function删除申明场景(){

划定规矩.removeMovieClip();

申明.removeMovieClip();

游戏入手下手.removeMovieClip();

}

function创立申明场景(){

var内容="一只年夜狮子,一只小狮子,一只年夜山君、一只小山君、一只年夜花豹,"+"
"+"一只小花豹要到河劈面往,只要年夜植物和小山君会荡舟,船每次只能乘"+"
"+"两只植物。年夜植物之间相互吃不了,小植物之间相互吃不了,假如年夜动"+"
"+"物不在同类的小植物就会被异类年夜植物吃失落。";

创立TXT_MC(this,"划定规矩","游戏划定规矩",230,50,150,false);

创立TXT_MC(this,"申明",内容,50,100,120,false);

创立TXT_MC(this,"游戏入手下手","游戏入手下手",250,200,100,true);

游戏入手下手.onPress=function(){

删除申明场景();

创立游戏场景();

};

}

function创立TXT_MC(路径,称号,文本,坐标X,坐标Y,巨细,框){

varMC=路径.createEmptyMovieClip(称号,路径.getNextHighestDepth());

MC._x=坐标X;

MC._y=坐标Y;

MC._xscale=MC._yscale=巨细;

varTXT=MC.createTextField("TXT",0,0,0,0,0);

TXT.text=文本;

TXT.selectable=false;

TXT.autoSize=true;

if(框==true){

MC.onRollOver=function(){

this.TXT.border=true;

this.onReleaseOutside=this.onRollOut=function(){

this.TXT.border=false;

};

};

}

returnMC;

}

this.createEmptyMovieClip("遮照MC",this.getNextHighestDepth());

function创立游戏场景(){

var船上成员=[];

var左岸=["年夜狮子","小狮子","年夜山君","小山君","年夜花豹","小花豹"];

this.createEmptyMovieClip("左岸MC",this.getNextHighestDepth());

创立河道();

this.createEmptyMovieClip("船埠MC",this.getNextHighestDepth());

画方块(船埠MC,0,348,94,50,true);

画方块(船埠MC,454,348,94,50,true);

this.createEmptyMovieClip("提醒MC",this.getNextHighestDepth());

左岸MC._y=100;

左岸MC._x=20;

for(vari=0;i<左岸.length;i++){

if(i%2==0){

varMC=创立TXT_MC(左岸MC,左岸,左岸,0,40*i,100,true);

MC.名字=MC._name;

MC.荡舟=true;

MC.方位="左岸";

MC.巨细="年夜";

}else{

varMC=创立TXT_MC(左岸MC,左岸,左岸,0,40*i,100,true);

MC.名字=MC._name;

MC.荡舟=false;

MC.方位="左岸";

MC.巨细="小";

}

MC.onPress=function(){

if(船上成员.length==2){

提醒信息("船上不克不及再乘座更多的植物了");

}

if(船上成员.length<2&&船MC.举动==false&&this.方位==船MC.形态){

this._visible=false;

this.方位="船上";

船上成员.push(this);

eval("船仓"+船上成员.length).TXT.text=this.名字;

}

};

}

左岸MC["小山君"].荡舟=true;

this.createEmptyMovieClip("船MC",this.getNextHighestDepth());

船MC._y=360;

船MC._x=100;

船MC.Y=0;

船MC.形态="左岸";

船MC.举动=false;

船MC.速率=20;

画船(船MC);

创立TXT_MC(船MC,"TXT","===>>",40,-2,100,false);

船MC.onPress=function(){

if(this.举动==false&&是不是能荡舟(船上成员)&&可否呆船上(船上成员)&&岸上(this.形态)){

this.举动=true;

船挪动(this);

}

};

创立TXT_MC(this,"船仓1","",船MC._x+35,船MC._y-20,100,true);

创立TXT_MC(this,"船仓2","",船MC._x+35,船MC._y-40,100,true);

船仓1.onPress=function(){

if(船MC.形态=="左岸"){

左岸MC[this.TXT.text]._visible=true;

左岸MC[this.TXT.text]._x=0;

左岸MC[this.TXT.text].方位="左岸";

删除(船上成员,this.TXT.text);

this.TXT.text=船仓2.TXT.text;

船仓2.TXT.text="";

}

if(船MC.形态=="右岸"){

左岸MC[this.TXT.text]._visible=true;

左岸MC[this.TXT.text]._x=480;

左岸MC[this.TXT.text].方位="右岸";

删除(船上成员,this.TXT.text);

this.TXT.text=船仓2.TXT.text;

船仓2.TXT.text="";

varn=0;

for(variin左岸MC){

if(左岸MC.方位=="右岸"){

n++;

if(n==6){

提醒信息("地球已不合适你寓居"+"
"+"快往上火星往吧!!");

创立停止画面();

return;

}

}

}

}

};

船仓2.onPress=function(){

if(船MC.形态=="左岸"){

左岸MC[this.TXT.text]._visible=true;

左岸MC[this.TXT.text]._x=0;

左岸MC[this.TXT.text].方位="左岸";

删除(船上成员,this.TXT.text);

this.TXT.text=船仓2.TXT.text;

船仓2.TXT.text="";

}

if(船MC.形态=="右岸"){

左岸MC[this.TXT.text]._visible=true;

左岸MC[this.TXT.text]._x=480;

左岸MC[this.TXT.text].方位="右岸";

删除(船上成员,this.TXT.text);

this.TXT.text=船仓2.TXT.text;

船仓2.TXT.text="";

}

};

前往入手下手();

}

function画船(MC){

MC.lineStyle(0,0);

MC.moveTo(0,0);

MC.lineTo(10,15);

MC.lineTo(100,15);

MC.lineTo(110,0);

MC.lineTo(0,0);

}

function船挪动(MC){

MC.onEnterFrame=function(){

this._x+=this.速率;

船仓1._x+=this.速率;

船仓2._x+=this.速率;

this.形态="飞行";

if(this._x>=340){

this.举动=false;

this.速率*=-1;

this.TXT.TXT.text="<<===";

this.形态="右岸";

deletethis.onEnterFrame;

}

if(this._x<=100){

this.举动=false;

this.速率*=-1;

this.TXT.TXT.text="===>>";

this.形态="左岸";

deletethis.onEnterFrame;

}

};

}

function是不是能荡舟(数组){

for(vari=0;i<数组.length;i++){

if(数组.荡舟==true){

returntrue;

}

}

提醒信息("这条船上没有能荡舟的植物");

returnfalse;

}

function可否呆船上(数组){

if(数组.length==2){

varTXT0=数组[0].名字;

varTXT1=数组[1].名字;

if(数组[0].巨细==数组[1].巨细||TXT0.substring(1,3)==TXT1.substring(1,3)){

returntrue;

}

}else{

returntrue;

}

提醒信息("船上的年夜植物会吃失落小植物");

returnfalse;

}

function岸上(岸){

//这个算法欠好`其实想不出其他的好算法

var年夜数组=newArray();

var小数组=newArray();

for(variin左岸MC){

if(左岸MC.方位==岸){

if(左岸MC.巨细=="年夜"){

年夜数组.push(左岸MC._name.substring(1,3));

}

if(左岸MC.巨细=="小"){

小数组.push(左岸MC._name.substring(1,3));

}

}

}

var小记数=小数组.length;

var年夜记数=年夜数组.length;

if(小记数<=0){

returntrue;

}

if(年夜记数<=0){

returntrue;

}

var记数=0;

for(vari=0;i<小记数;i++){

var工具=小数组;

for(varn=0;n<年夜记数;n++){

if(工具==年夜数组[n]){

记数++;

break;

}

}

}

if(记数==小记数){

returntrue;

}else{

提醒信息("岸上的年夜植物会吃失落小植物");

returnfalse;

}

}

function删除(数组,工具){

for(vari=0;i<数组.length;i++){

if(数组.名字==工具){

数组.splice(i,1);

returntrue;

}

}

}

function画方块(MC,X,Y,宽,高,添补){

if(添补==true){

MC.beginFill(0xFFFFFF,100);

}

MC.lineStyle(0,0);

MC.moveTo(X,Y);

MC.lineTo(X+宽,Y);

MC.lineTo(X+宽,高+Y);

MC.lineTo(X,高+Y);

MC.lineTo(X,Y);

MC.endFill();

}

function创立河道(){

var河水="~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~";

varMC=创立TXT_MC(this,"河道",河水,0,365,100,false);

MC.X=0;

MC.onEnterFrame=function(){

this._x+=Math.cos(this.X)*1;

this.X+=0.1;

};

}

function提醒信息(内容){

提醒MC.clear();

画方块(提醒MC,180,50,200,70);

提醒MC.计时=0;

提醒MC["提醒"].removeMovieClip();

提醒MC.onEnterFrame=function(){

if(this.计时==0){

this._visible=true;

创立TXT_MC(提醒MC,"提醒",内容,提醒MC._x+190,提醒MC._y+70,115,false);

}elseif(this.计时>30){

this._visible=false;

deleteonEnterFrame;

}

this.计时++;

};

}

function创立停止画面(){

左岸MC.removeMovieClip();

船MC.removeMovieClip();

}

function前往入手下手(){

创立TXT_MC(_root,"入手下手","从头"+"
"+"入手下手",490,360,100,true);

入手下手.onPress=function(){

loadMovie(_url,_root);

};

}

画方块(遮照MC,0,0,550,400,true);

_root.setMask(遮照MC);

画方块(this,0,0,548,398,false);

////////////////////////////////////////////////////////////

var菜单=newContextMenu();

菜单.hideBuiltInItems();

varQQ=newContextMenuItem("QQ:31559783",实施函数);

QQ.separatorBefore=true;

菜单.customItems.push(QQ);

this.menu=菜单;

function实施函数(){

}</p>
此版本基于官方简体中文正式版制作,只需要执行一次快速安装即可使用,包含AdobeFlashProfessionalCS5.5、ExtendScriptToolkitCS5.5、PixelBenderToolkit2.6。
蒙在股里 该用户已被删除
沙发
发表于 2015-1-17 13:57:09 来自手机 | 只看该作者
单纯的做动画而言,flash动画与传统动画有很多差别,这里会为你介绍什么是flash与flash与传统动画相比具有的优点和缺点,而进一步了解flash动画
爱飞 该用户已被删除
板凳
发表于 2015-1-25 20:57:26 | 只看该作者
在与制作传统动画相比较的同时,flash具有便捷、节省人力财力,节约时间、推广方便的许多优势。但与此同时它也具有一点的缺点。
简单生活 该用户已被删除
地板
发表于 2015-2-4 07:43:50 | 只看该作者
矢量图形有一些固有的限制。例如,照片由于包含太多的信息而不能使用矢量图形这 种形式。但是对于由实体颜色形状构成的图像,Flash很管用。
不帅 该用户已被删除
5#
发表于 2015-2-9 19:05:53 | 只看该作者
FLASH网站建设的页面非常美观,互动性很强。在企业网站中,FLASH动画作用主要在于突出企业品牌的效应,彰显企业形象的实力。
再现理想 该用户已被删除
6#
发表于 2015-2-27 19:08:07 | 只看该作者
Rich Media并不是一种具体的互联网媒体形式,而是指具有动画、声音、视频和/或交互性的信息传播方法。 
山那边是海 该用户已被删除
7#
发表于 2015-3-9 14:43:04 | 只看该作者
目前动画广告在各类电视节目中有着广泛的应用,在影视及广告中占有重要地位。广州形动数码是国内领先的动画设计制作,
若相依 该用户已被删除
8#
发表于 2015-3-23 15:44:10 | 只看该作者
flash的优缺点可以如何运用呢?
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-29 07:12

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表