记得AS2.0帮助文档还未看到1/100时,AS3.0就铺天盖地席卷而来,本人在AS2.0到AS3.0的转变过程中苦闷过,记得刚接触AS3.0时真是一头雾水,有时真想摔本来就破的PC,转变是必经历阵痛,现在仍在阵痛期,也许还将持续很长时间的痛苦期,这是规律,没办法。为使像我这样的初学者少走一点点弯路,今天以一个最简单的游戏为例说明AS3.0中的一些使用方法。愿抛砖引玉,呼出高手。
先看效果:(方向键左右移动红色方块,设法到达蓝色方块所在地。)
(全as):
package sxl{//包路径,也就是建一个sxl文件夹,里面放此MainMap.as文件
import flash.display.Sprite;//显示对象容器
import flash.display.MovieClip;//方块需要附加坐标等属性,所以选它
import flash.display.DisplayObject;//不一一加注释了,自己看吧
import flash.text.TextField;
import flash.events.Event;
import flash.events.MouseEvent;
import flash.events.KeyboardEvent;
import flash.ui.Keyboard;
import flash.display.StageScaleMode;
public class MainMap extends MovieClip {
/* | container 路与障碍方块容器 | man 游戏主角 | GoldCoin GoldPos_array GoldXY 金币 金币可待放置坐标 金币产生顺序
| Score_txt 得分 | row col 方块列数 方块行数 | W_H 正方形边长及水平与垂直每步行走幅度
| stageW stageH 场景的宽与高 | list_array 存贮所有地面方块(可通行绿色方块和障碍方块)
*/
private var container:Sprite=new Sprite;
private var man:MovieClip;
private var GoldCoin:MovieClip;
private var GoldPos_array:Array;
private var GoldXY:uint=0;
private var Score_txt:TextField;
private var row:uint=28;
private var col:uint=20;
private var W_H:uint=20;
private var stageW:uint=560;
private var stageH:uint=420;
private var list_array:Array;
public function MainMap() {
stage.scaleMode=StageScaleMode.NO_SCALE;
// 大背景
var Bg:MovieClip=new MovieClip;
createRect(Bg,stageW,stageH,0x808080,0xDCF76F);
addChild(Bg);
addChild(container);
initList_array();
// 创建主角
man=new MovieClip ;
createRect(man,W_H,W_H,0xFFFF00,0xFF0000);
man.x=0;
man.y=W_H;
man.X=0;
man.Y=0;
addChild(man);
// 创建上方背景
setTopBg();
// 创设地面
initMap();
}
//..... 创建上方背景区 ...................................................................
private function setTopBg() {
var topBg:MovieClip=new MovieClip;
createRect(topBg,560,W_H,0x000000,0xEEEEEE);
topBg.y=-1;
var title_txt:TextField=new TextField;
title_txt.text="by 老苏 QQ: 285510591 地图设置 得分:";
title_txt.width=400;
title_txt.height=18;
title_txt.x=10;
topBg.addChild(title_txt);
Score_txt=new TextField();
Score_txt.width=60;
Score_txt.height =18;
Score_txt.x=400;
topBg.addChild(Score_txt);
addChild(topBg);
var textBg:MovieClip=new MovieClip;
createRect(textBg,55,16,0xEEEEEE,0xEEEEEE);
textBg.x=500;
var txt:TextField=new TextField;
txt.text=" 魔法地图";
txt.height=18;
txt.width=55;
textBg.addChild(txt);
textBg.mouseChildren=false;
textBg.addEventListener(MouseEvent.CLICK,onReSet);
addChild(textBg);
}
//..... 重新设置主角和地面区 .....................................................................
private function onReSet(event:MouseEvent) {
if (GoldXY>0) {
GoldXY--;
var score:uint =GoldXY*50;
Score_txt.text=String(score);
} else {
Score_txt.text="魔法用完";
event.target.removeEventListener(MouseEvent.CLICK,onReSet);
}
// 创建主角
man=new MovieClip ;
createRect(man,W_H,W_H,0xFFFF00,0xFF0000);
man.x=0;
man.y=W_H;
man.X=0;
man.Y=0;
addChild(man);
// 重新设置地图
reSetMap();
}
//..... 重新设置地面区 .........................................................................
private function reSetMap() {
// 清除container容器中的子元素(即所有地面方块:绿色方块和障碍方块)
var long:int=container.numChildren - 1;
for (var i:int=long; i >= 0; i--) {
container.removeChildAt(i);
}
stage.removeEventListener(KeyboardEvent.KEY_DOWN,onKeyDowns);
//清除list_array数组中元素,并初始化它为二维数组
initList_array();
//铺设地面方块
initMap();
}
// 初始化 list_array 为二维数组
private function initList_array() {
list_array=[];
for (var i:uint=0; i
源文件下载:
map.rar
本文转自:http://www.5uflash.com/flashjiaocheng/Flash-as3-jiaocheng/4426.html
发表评论
-
一步一步学Remoting之三:复杂对象
2010-04-10 10:05 649这里说的复杂对象是比 ... -
Flash8 Remoting 例子 For .NET
2010-04-10 10:05 595最近研究Flash Remoting的 ... -
Flash8 Remoting 例子 For .NET
2010-04-10 10:04 631最近研究Flash Remoting的 ... -
flash 8 安装remoting解决方法
2010-04-10 10:04 701刚安装的FLASH8,表面上看上去并不支持remoting.需 ... -
flash 8 安装remoting解决方法
2010-04-10 10:04 445刚安装的FLASH8,表面上看上去并不支持remoting.需 ... -
ActionScript 3 Cookbook中文版 章节预览
2010-04-09 13:02 545[1b]ActionScript 3 Cookbook 中 ... -
ActionScript 3 Cookbook中文版 章节预览
2010-04-09 13:02 734[1b]ActionScript 3 Cookbook 中 ... -
《ActionScript 3.0 Cookbook》 第一章. ActionScript 语言基础
2010-04-09 13:02 506[1u] [1b]ActionScript 3.0 Coo ... -
《ActionScript 3.0 Cookbook》 第一章. ActionScript 语言基础
2010-04-09 13:01 684[1u] [1b]ActionScript 3.0 Coo ... -
as3游戏开发之打气球系列(二)
2010-04-09 13:01 529HI,经过了昨天疯狂的理 ... -
2/8/10/16/32进制AS3自带函数进行互换
2010-04-09 10:08 868进制转换在编程中都常会用到,像一些语言更会自带进制转换的方法。 ... -
2/8/10/16/32进制AS3自带函数进行互换
2010-04-09 10:08 926进制转换在编程中都常会用到,像一些语言更会自带进制转换的方法。 ... -
flash地图游戏说明如何结合AS3.0使用
2010-04-09 10:08 749记得AS2.0帮助文档还未看到1/100时,AS3.0就铺天盖 ... -
AS3的网页参数处理
2010-04-09 10:07 595我们一般向网页swf文件传入参数有两种方式,一种是URL如: ... -
用鼠标观看图片各部分的效果
2010-04-08 10:26 717Flash AS 制作用鼠标可以观看图片各个部分的效果,至于 ... -
用鼠标观看图片各部分的效果
2010-04-08 10:26 669Flash AS 制作用鼠标可以观看图片各个部分的效果,至于 ... -
漫画绘制技法大放送(上)
2010-04-08 10:26 338网络收集整理(jundark) [1b]一、人体基本结构[/1 ... -
flash动画形变讨论二:低头
2010-04-08 10:25 451上次说了基本的形变,现在说下提示点,提示点是控制图形变化的基本 ... -
卡通娃娃360度转身动画
2010-04-08 10:25 532超人表情原创大赛正如火如荼的进行中,对于初哥可能就望钱兴叹了, ... -
动画人物运动规律与节奏
2010-04-08 08:37 588本文转自:h ...
相关推荐
使用ActionScript 3.0代码编写的简单例子,AS3.0+Flash,适用于初学者,通过学习实例,能更好的掌握as
时钟源代码 Flash as3.0 想用as3.0创建一个时钟么,这个源代码可以帮助你轻易解决这个问题
该资源使用AS3.0版本编写代码,是一个太空战机的小游戏,界面优美,功能齐全。
简洁完整的flash拼图游戏(AS3.0) 用键盘上下左右来挪动图片
这是一个用Flash AS3.0制作出来的一个拖动小动画
flash+as3.0,手动拖动控制的拼图游戏,有关卡的,越往后,碎片越小
FLASH日历原文件。AS3.0版本 DateChooser.as DateShape.as SuperCalendar.as ToolTip.as
基于flash as3.0 开发的简单飞机射击游戏。
FLASH MENU FOR ActionScript3.0 一个用FLASH 的 AS3.0 做的动态菜单
对对碰游戏flash源代码,支持as3.0环境
课堂上做的作业 设计首页点击进入抽奖环节,分为1、2、3等奖 获奖人数可设定 简单容易修改 图片换一下即可改为年会抽奖、班级抽奖等抽奖活动
as3.0组件开发实用帮助pdf书籍,Flash 使用as3.0组件开发实用书籍、文档!
flash+as3.0设计的小游戏 接牛奶的游戏
Flash 游戏 as3.0游戏编程大学 游戏编程.....
纯as3.0flash游戏 坦克大战 源码
Flash.ActionScript.as3.0 詳細教程(中文).pdf 比较适合初学者
AS3.0 Flash 水波纹 flash特效 AS3.0 Flash 水波纹 flash特效
用flash AS3.0 制作的打飞机游戏,希望 你们喜欢
flash as3.0实现简单计时器功能 as3.0类编程实现计时器功能 计时器源代码
很不错的PPT,可以很好的帮助想入门flash或flex的朋友们!!