A. 如何制作简单的射击类(比CS还要简单的)游戏
射击类游戏(一)
第二部分开始类的编写:
1、首先打开Flash CS4 (CS3、CS4或CS5没什么大的区别)新建项目,按确定。打开项目面板。图:新建项目
2、点击右边的第一个三角按钮(项目),在下拉菜单中选"新建项目"。在弹出新建项目面板项目名称:填入项目名称。在根文件夹:项中点击右边的浏览按钮,浏览到准备存放项目的目录,按确定。在ActionScript版本:选ActionScript 3.0 。单击"创建项目"按钮,这样项目就建好了。图:项目面板
3、把AirRaid.fla文件复制到项目文件夹下(省去制作界面)。点击下面的"创建类"图标,在弹出的创建类面板类:的文本框中填入文件名:AirRaid 单击创建类按钮。这样类就创建好了并为我们写好了类的框架,我们可以在框架中添加我们的代码了。图:创建类
图:填入类名
图:类的框架
4、编写AirRaid.as类
AirRaid.as类:文档类 AirRaid类是游戏的控制器,绑定AirRaid.fla 。负责生成界面上的飞机、火炮、子弹。显示得分,子弹的剩余数量。注册了键盘按下,释放侦听器,接收用户的键盘操作。注册了进入帧事件侦听器,进行碰撞检测。定义一个飞机计时器,随机生成飞机。检测剩余子弹的数目,当子弹数为零时也就是主角死亡了,移除界面上的飞机,火炮,跳转到重玩按钮。
package {
public class AirRaid extends MovieClip {
private var aagun:AAGun;//火炮
private var airplanes:Array;//飞机数组
private var bullets:Array;//子弹数组
public var leftArrow, rightArrow:Boolean;
private var nextPlane:Timer;//不定时生成飞机的计时器
private var shotsLeft:int;//得分文本
private var shotsHit:int;//子弹数文本
// 初始化得分数和子弹数
// 生成炮加入到舞台上
// 生成飞机、子弹数组
// 键盘按下、释放事件侦听器
stage.addEventListener(KeyboardEvent.KEY_DOWN,keyDownFunction);
// 进入帧事件侦听器,检测子弹击中飞机的碰撞检测。
addEventListener(Event.ENTER_FRAME,checkForHits);
// 生成下一架飞机
setNextPlane();
}
//不定时生成飞机
public function setNextPlane() {
//1000毫秒至2000毫秒之间生成一架飞机
nextPlane.start();
}
public function newPlane(event:TimerEvent) {
// 随机的边、速度和高度
// 生成飞机
var p:Airplane = new Airplane(side,speed,altitude);
// 碰撞检测
}
}
if ((shotsLeft == 0) && (bullets.length == 0)) {
endGame();
}
}
// 按下键盘
public function keyDownFunction(event:KeyboardEvent) {
if (event.keyCode == 37) {
leftArrow = true;
} else if (event.keyCode == 39) {
rightArrow = true;
} else if (event.keyCode == 32) {
fireBullet();
}
}
// 释放键盘
public function keyUpFunction(event:KeyboardEvent) {
if (event.keyCode == 37) {
leftArrow = false;
} else if (event.keyCode == 39) {
rightArrow = false;
}
}
// 生成新的子弹
public function fireBullet() {
if (shotsLeft <= 0) return;
var b:Bullet = new Bullet(aagun.x,aagun.y,-300);
addChild(b);
bullets.push(b);
shotsLeft--;
showGameScore();
}
public function showGameScore() {
showScore.text = String("得分: "+shotsHit);
showShots.text = String("剩余子弹: "+shotsLeft);
}
// 从数组获取飞机
public function removePlane(plane:Airplane) {
for(var i in airplanes) {
if (airplanes[i] == plane) {
airplanes.splice(i,1);
break;
}
}
}
// 获取数组的一个子弹
public function removeBullet(bullet:Bullet) {
for(var i in bullets) {
if (bullets[i] == bullet) {
bullets.splice(i,1);
break;
}
}
}
// 游戏结束,移除界面上的东西。
public function endGame() {
// 移除飞机
for(var i:int=airplanes.length-1;i>=0;i--) {
airplanes[i].deletePlane();
}
airplanes = null;
aagun.deleteGun();
aagun = null;
// 移除侦听器
stage.removeEventListener(KeyboardEvent.KEY_DOWN,keyDownFunction);
stage.removeEventListener(KeyboardEvent.KEY_UP,keyUpFunction);
removeEventListener(Event.ENTER_FRAME,checkForHits);
nextPlane.stop();
nextPlane = null;
gotoAndStop("gameover");
}
}
}
5、编写AAGun.as类
创建类的方法同第3步。首先选中库中的AAGun元件,打开项目面板创建类。在"将类邦定到库元件"前面打勾,点下"使用所选库元件"的单选按钮。图:邦定库元件
AAGun类:邦定库中的炮元件,向左移动向右移动,检测边界,自动消毁。
package {
import flash.display.*;
import flash.events.*;
import flash.utils.getTimer;
public class AAGun extends MovieClip {
static const speed:Number = 150.0;
private var lastTime:int; // 控制移动的Timer
public function AAGun() {
// 枪的初始位置
this.x = 275;
this.y = 340;
//运动
addEventListener(Event.ENTER_FRAME,moveGun);
}
public function moveGun(event:Event) {
// 得到时差
var timePassed:int = getTimer() - lastTime;
lastTime += timePassed;
// 现在的位置
var newx = this.x;
// 移动到左边
if (MovieClip(parent).leftArrow) {
newx -= speed*timePassed / 1000;
}
// 移动到右边
if (MovieClip(parent).rightArrow) {
newx += speed*timePassed / 1000;
}
// 检测边界
if (newx < 10) newx = 10;
if (newx > 540) newx = 540;
// 更新位置
this.x = newx;
}
// 移除屏幕上的炮和事件
public function deleteGun() {
parent.removeChild(this);
removeEventListener(Event.ENTER_FRAME,moveGun);
}
}
}
新建文件Airplane.as
Airplane类:邦定库中的飞机元件。随机产生飞机,随机的速度,产生5种飞机样式,检测是否飞出边界,检测被子弹击中。自动毁灭和爆炸效果。
// 飞机的速度、方向
// 控制移动的Timer
//左右移动
//检测边界
// 检测碰撞,子弹击中飞机跳转到帧标签"explode"演示爆炸动画。
// 移除舞台上的飞机和事件
新建文件Bullet.as
Bullet类:邦定库中的子弹元件。控制子弹的飞行方向,检测子弹是否飞出屏幕。
package {
import flash.display.MovieClip;
import flash.events.Event;
import flash.utils.getTimer;
import flash.utils.Timer;
import flash.events.TimerEvent;
public class Bullet extends MovieClip {
private var dy:Number; // 子弹的速度、方向。
private var lastTime:int;
public function Bullet(x,y:Number, speed: Number) {
// 初始位置
this.x = x;
this.y = y;
// 得到速度
dy = speed;
// 动画
lastTime = getTimer();
addEventListener(Event.ENTER_FRAME,moveBullet);
public function moveBullet(event:Event) {
// 得到时差
var timePassed:int = getTimer()-lastTime;
lastTime += timePassed;
// 子弹运动
this.y += dy*timePassed/1000;
// 子弹越过屏幕的顶端
if (this.y < 0) {
deleteBullet();
// 移除舞台的子弹和事件
public function deleteBullet() {
MovieClip(parent).removeBullet(this);
parent.removeChild(this);
removeEventListener(Event.ENTER_FRAME,moveBullet);
所有的类文件完成保存后,回到AirRaid.fla场景,按Ctrl+Enter组合键测试,看看你的成果吧!
简单的学个Flash,很好学,还可以做动画,很有用。大型游戏要学VB或者C++,编得游戏画质不行。3DMAX是做特效的,你想做个游戏,不是一两年搞得了的,有专门教这个的班。
B. 射击类网络游戏有哪些
1、《反恐精英》
《反恐精英》是Valve1999年夏天开发的射击系列游戏,创始人是杰斯·克利夫和“鹅人”李明。他们后来和游戏一起进入了Valve。该游戏前期是游戏《半条命》的游戏模组,后期变为独立游戏。
2、《穿越火线》
《穿越火线》由韩国Smile Gate开发,在韩国由Neowiz发行,在中国大陆由腾讯公司运营。《穿越火线》是一款第一人称射击游戏的网络游戏,玩家扮演控制一名持枪战斗人员,与其他玩家进行械斗。
3、《使命召唤》
《使命召唤》是由Activision公司(现为Activision Blizzard,2007年12月2日宣布合并)于2003年最初制作发行的FPS游戏系列。游戏已发布正式作品至第十三部,分别是:《使命召唤》、《使命召唤2》《使命召唤3》、《使命召唤4:现代战争》、《使命召唤:战争世界》
《使命召唤:现代战争2》、《使命召唤:黑色行动》、《使命召唤:现代战争3》、《使命召唤:黑色行动2》、《使命召唤:幽灵》、《使命召唤:高级战争》、《使命召唤:黑色行动3》和《使命召唤:无限战争》。
4、《战地》
《战地》是EA DICE开发的军事题材射击游戏系列。战地系列的首作《战地1942》于2002年上市。截至2016年,战地系列共有16款游戏产品公布。最新作称做《战地1》内容为一战。
5、《全球使命2》
《全球使命》是由英佩游戏开发,臻游网络发行的一款第三人称射击网游,于2013年6月20日发行。游戏中每个角色可携带2种主武器,最高支持8V8的对抗。
2013年6月20日上线的《全球使命2》将秉承《全球使命》的特色与创新优势,并对原有的游戏内容、操作界面以及特效表现等做出全方位的优化和加强。
6、《狙击手:幽灵战士》
《狙击手:幽灵战士》是由City Interactive游戏公司开发的一款射击游戏作品,于2010年6月29日发行。该游戏是在2008年正式上市发售的单机游戏《狙击手:胜利艺术》的续作游戏作品。
7、《光晕》
《光晕》又名光环,是微软于2001年11月制作并发行的第一人称射击游戏,该游戏于2001年11月15日在XBOX发行。
本系列讲述未来人类与来自猎户座,以宗教结合外星种族的联盟“星盟”的战争。星盟的首领认为人类会阻止他们的伟大使命——朝圣之旅,因此对人类展开杀戮,尽管人类顽强扺抗,也无法击败对手的强大科技力量。
C. 十大射击游戏排行榜是怎么样的
十大射击游戏排行榜是:《csgo》、《绝地求生》、《彩虹六号》、《守望先锋》、《cs1.6》、《战地》、《使命召唤》、《全境封锁》、《消逝的光芒》、《地铁》。这些射击类游戏基本上都被玩家玩腻了,近几年vr技术兴起,在这里推荐两款vr射击游戏。
AR 系步枪较为简单,按下换弹键,弹匣就会自己落下。这时再从胸挂拿取一个新的弹匣换上,随后翻转枪身拉动枪栓上膛即可。而 AK 系的枪械则较为复杂,需要额外的一些步骤。非常真实。
D. 射击类网络游戏有哪些
穿越火线、绝地反击、全球使命、反恐精英Online、绝地求生、战地、狙击手:幽灵战士、光晕等。
1、穿越火线
《穿越火线》游戏是由韩国Smile Gate开发,由深圳市腾讯计算机系统有限公司代理运营的一款第一人称射击游戏。
游戏讲述了全球两大佣兵集团Global Risk和Black List间的对决。游戏中有团队模式、战队赛、爆破模式、幽灵模式等多种模式。引进了“缺人补充”形式的即时加入系统。
2016年11月,《穿越火线》荣登2016中国泛娱乐指数盛典“中国IP价值榜游戏榜top10”。
2、绝地反击
绝地反击,原意指在绝境孤注一掷的进行反抗。FPS网络游戏《绝地反击》是一款科幻概念网络枪战网游游戏,由韩国网游公司Queens Soft开发。单机游戏《绝地反击之东方战线》由苍龙制造(左苍龙)2009年3月28日正式发布。
《绝地反击》由光宇游戏公司运营。故事背景设定为公元2258年地球和宇宙为争夺能源所爆发的战争。游戏以科幻题材为背景,集合了所有FPS游戏的优点,并结合国内玩家所喜爱的各项枪战游戏内容和操作习惯,所产生的一款第一人称射击游戏。
3、全球使命
《全球使命》是由臻游网络与英佩游戏联合研发,采用虚幻引擎3(Unreal Engine III)技术的第三人称射击网游。游戏加入真实掩体系统,每个角色可携带双主武器,最高支持8 VS 8的对抗,开创了射击网游PVE副本战的全新理念。
与传统射击网游不同,《全球使命》拥有海量独一无二的原创玩法——首创TPS塔防玩法“最终防线”、首创TPS英雄对战玩法“生死大乱斗”、首创机甲载具副本战、TPS机甲PVP对战、
首创机友系统、侏罗纪副本战“史前战争”、萌趣PVP开心猎头、可以与改造人、僵尸、机甲、怪兽激战的枪林弹雨&生危机大作战模式。丰富的游戏内容,远销全球20多个国家和地区,《全球使命》已成为全球最具人气的TPS射击网游。
4、反恐精英Online
《反恐精英Online》是以美国Valve公司的游戏《反恐精英cs1.6》为基础,由NEXON创作开发的FPS网游。该游戏在中国大陆地区由世纪天成代理。
游戏拥有“生化模式”系列,并且添加了大量可玩性强的武器。该款游戏因其本质与Valve的原生游戏大相径庭,因而并不附于Steam平台之中,而成为一款独立的网络游戏。
5、战地
《战地》是EA DICE开发的军事题材射击游戏系列。战地系列的首作《战地1942》于2002年上市。截至2016年,战地系列共有16款游戏产品公布。最新作称做《战地1》 内容为一战。《战地1》已于2016年10月21日正式发售,登陆PC、PS4和Xbox One。
战地系列游戏以大规模的载具和步兵在大地图上协同作战为品牌卖点,注重游戏娱乐性的同时兼顾真实性。战地系列历来是网络游戏,有一些产品同时设计了作为附加模式的单机游戏。
部分战地系列游戏的扩展功能比较完善,第三方团体可以制作各种各样的模组满足玩家不同的需要。传统的战地系列游戏主攻PC平台;自2005年起,开发组也逐渐重视起游戏机平台。
E. 最早的第一人称射击游戏是什么
约翰·卡马克 的德军总部
这位大神创造的3D射击游戏
具体看下面网络连接
F. 真实类射击单机游戏有哪些
真实类射击单机游戏有以下:
1、使命召唤系列(1、2、3、5为二战,7为现代战争类黑色行动,4、6、8为现代战争3部曲的正统作品)。
Codemasters公布了一组该公司战术动作游戏《闪点行动》(OperationFlashpoint)的最新游戏画面。在新公布的画面中可看到多种室内及室外的环境,以及数样游戏中会出现的载具(如坦克、直升机、运兵车及吉普车等等)。在这些画面里也可看到第一人称及第三人称模式,还有一些在射程内及开枪的情形。《闪点行动》的背景设定在冷战时期的苏联,玩者们可扮演北大西洋公约组织的士兵以进行停火协定任务,游戏中的角色可在任务成功后晋升等级。除了徒步战斗外,也有数个任务会让玩者以空中或陆地载具进行战斗。
祝您游戏愉快!
G. 推荐一个有创意的动作射击游戏
楼主都玩了那么多了~ 新意的不知道画面上能不能满足楼主 孤岛惊魂我觉得和上面的有点差别~ 彩虹六号维加斯1.2 在设计上还是有新意的 很有特种兵的感觉~ 另外还有马克思佩恩 这个游戏就是画面 操作性上差了一点~
H. 世界最早出的射击游戏
约翰·卡马克 的德军总部 这位大神创造的3D射击游戏
I. 目前有什么好玩的射击类单机游戏
2020年是游戏产业关键的一年,因为除了新主机马上上市以外,今年还有许多重量级的游戏即将推出,当然也包括许多已经发售但热度不减的游戏,而今天我要为大家推荐几款FPS射击类游戏,不仅可玩性很高,而且好评不断哦,快点拿起本子记下来吧。
一、《火线猎杀:绝境》
《火线猎杀:绝境》的故事背景非常的有趣,也是《Ghost Recon》系列内最注重故事情节的一款,玩家的角色不再是以前的猎人,而是一开始就已经成为了别人的猎物,这一作会有上一代DLC的角色来追杀玩家,他不仅拥有非常高端的科技装备,而且也非常的难缠。这一作最偏向于生存的玩法,所以画面的真实性也非常的高。
以上就是我为大家推荐的关于一些射击类的单机游戏啦,不知道各位朋友是否也有心中的优秀作品呢?欢迎在下方评论里分享给大家吧。
J. 求十大射击游戏排行榜,有哪些比较推荐的
十大射击游戏排行榜:《绝地求生》,《守望先锋》,《cs1.5》,《cs1.6》,《csgo》,《cf》,《逆战》,《csol》,《彩虹6号》,《InsurgencySandstorm》。其中,推荐的有《守望先锋》。
在《守望先锋》中,英雄们在世界各个地区作战。从努巴尼的科技奇观到沃斯卡娅的工业中枢,每张地图都有独特的布局和胜利条件,你必须完成这些要求才能获得胜利。进攻方必须占领一系列目标点;防守方必须阻止进攻方,直至时间耗尽。进攻方必须首先夺取运载目标,随后将其护送至目的地;防守方则必须阻止进攻方。