编程一个最简单游戏代码婴校取机版(简单编程小游戏代码)

http://www.itjxue.com  2023-02-10 21:35  来源:未知  点击次数: 

怎样运行一个小游戏的代码

情况看:

(1)如果你没用非官方集成的开发环境的话,首先在你电脑上装个JDK,然后设置下电脑环境变量,里面有PATH和CLASSPATH这两个参数,具体怎么设置呢?就是把安装目录的地址拷贝到里面就好了,略有不同这两个参数的设置.安装完成后,把源代码文件的目录记下,源代码拷贝到记事本上,把后缀名改成".java";打开CMD窗口,先执行"javac 文件名.java"命令,在目录下会生成一个".class"的文件,那是编译生成的文件,如果顺利通过编译,说明源代码没错误,OK,你再执行"java 文件名.class"就执行程序了.

(2)如果你用的是Eclipse或者Jbuilder这类的集成开发环境的话,那太简单了,导入源代码的文件,点工具栏上的快捷图标,是个平放着的三角形,就可以执行了

总之,你只要把JDK装上,调试成功了,剩余的就小意思,如果实在搞不定,把你代码发过来,我给你生成".jar"文件好了,就像".exe"的可执行文件.呵呵,说了这么多,自己要多摸索下啊,我是学java的,欢迎交流,希望你能顺利解决,编程要自己多摸索

求用MATLAB编程的小游戏代码!!

模拟打靶的小游戏

%靶的制作和打靶得分

clear %清除变量

n=10; %环的个数

th=(0:360)*pi/180; %角度向量

figure %创建图形窗口

axis equal %使坐标间隔相等

hold on %保持图像

cc='gcmyrbgcmy'; %颜色字符(1)

for i=1:n %按环数循环(2)

x=(n+1-i)*cos(th); %横坐标

y=(n+1-i)*sin(th); %纵坐标

fill(x,y,cc(i)) %填色(3)

end %结束循环

s=0; %总分清零

ht1=text(-n,n-1,'','FontSize',16); %取文本句柄(4)

ht2=text(-n,-n+1,'','FontSize',16); %取文本句柄(4)

for i=1:n %按次数循环

[x,y]=ginput(1); %获取坐标(5)

plot(x,y,'k.','MarkerSize',20) %画点

set(ht1,'String',['次数:',num2str(i)])%设置次数字符串(6)

r=sqrt(x^2+y^2); %求射击点靶心距离

m=n-floor(r); %计分(7)

if m0 %如果分数大于零(8)

text(x,y,num2str(m),'FontSize',16)%显示分数(9)

s=s+m; %累加分数

set(ht2,'String',['总分:',num2str(s)])%设置总分字符串(10)

end %结束条件

end %结束循环

游戏编程

游戏制作类书籍推荐(中文)

书名:大型多人在线游戏开发MASSIVELY MULTIPLAYERGAME DEVELOPMENT

作者:亚历山大

译者:史晓明

说明:本书是一本系统介绍MMP(大型多人,Massively Multiplayer)在线游戏开发知识的文集,汇集业内最优秀的游戏开发人员智慧的精华。本书不仅从MMP游戏的角度对客户端技术进行了讨论,还深入剖析了MMP游戏设计、架构、服务端开发、数据库技术以及MMP游戏核心系统等特定于MMP游戏的知识。对于广大MMP游戏开发人员来说,本书是不可多得的参考资料。

书名:C++游戏编程

作者:(美)罗比斯 李鹏 贾传俊

说明:本书从游戏开发的角度出发,把C++应用到游戏软件领域。介绍一些C++的实战经验,用常规的C++技术解决游戏开发者经常遇到的问题。重点讲述已经在实际的项目中应用的技术,而不是大段地罗列代码。 本书是游戏开发经典丛书系列之一,适合游戏开发人员、业余游戏软件开发爱好者和有关游戏软件开发培训班使用,也可以人秋大专院校相关专业的参考书。

书名:Visual Basic 6.0/.NET游戏开发实例

作者:姜波 宁峰

说明:本书是一本面向广大编程爱好者的游戏设计类图书。本书最大的特色在于以游戏开发案例为主要的内容。书中涉及到的游戏都是大家耳熟能详的。比如推箱子,俄罗斯方块,五子棋,坦克大战等。为了使您紧跟技术进步的潮流,我们还为您介绍了目前非常流行的智能设备编辑。我们不仅做到了通俗易懂,图文并茂。

本书适用于游戏编程爱好者,程序设计人员和Visual Basic的初学者。也可作为培训机构的培训教材。

书名:盛大游戏原画设计精选

作者:上海盛大新华网络发展有限公司 南京艺术

说明:本书介绍如何品味游戏的角色设计和原画创作,从游戏脚本到初级造型——体会《神迹》,充分理解脚本意图,提炼与夸张《神迹》的场景,塑造个性(上)——走进《梦幻国度》,自身比例关系之Q版造型,《梦幻国度》的场景,塑造个性(下)——走进《英雄年代》,自身比例关系之传统造型,《英雄年代》的场景,关于道具——解析《三国豪侠传》,营造视觉效果——感受《传奇世界》……

书名:3D游戏 卷1:实时渲染与软件技术

作者:Alan Watt,Fabio Policarpo

译者:沈一帆 陈文斌 朱怡波

说明:综合介绍当前流行的三维游戏开发技术,主要内容包括:建模及基础数学,经典的三维图形学,实时渲染,对象的控制,二维技术,软件技术等。书中的所有内容都是围绕一个功能强大的游戏开发引擎,即Fly3D来写的。其目的是使你可以编写源代码来实现自己的想法,或是通过编写或修改插件来对现有的实例进行试验,甚至可以开发属于自己的游戏。随书光盘给出了完整的Fly 3D SDK及一些演示片段和图片。

书名:3D游戏:卷2 动画与高级实时渲染技术

作者:Alan Watt,Fabio Policarpo

译者:沈一帆 陈文斌 朱怡波

说明:本书从实践的角度出发,详细介绍3D游戏开发的高级技术,并具体描述了一个游戏引擎的构建过程。全书着重讨论三个主题:游戏开发的一般过程(构造过程、实时处理过程和软件设计);实时渲染过程;角色动画。所有主题均围绕一个具体的游戏开发系统Fly3D SDK 2.0(包含在光盘中)加以介绍。 本书旨在为当今的三维游戏引擎技术提供一个综合的解决方案,将游戏理论技术与具体引擎代码分析相结合,使读者尽快地进入开发者角色,了解整个游戏开发过程和客户(游戏设计者)的需求,并初步具备游戏引擎开发能力。 本书适合作为高等院校相关专业的教学参考书,同时可供相关技术人员和游戏开发人员阅读。

书名:Visual C++角色扮演游戏程序设计

作者:坂本千寻

译者:博硕文化

说明:本书适合已有VC++使用经验的读者,书中共分十个章节,从最基本的RPG的角色扮演游戏设计要素开始介绍,再来教您Windows窗口程序设计与RPG游戏配合的基本知识、图形文件的显示与全盛地图与人物相关的坐标处理、人物角色移动的思维与逻辑、战斗的设计与程序判断、RPG里所产生的事件的处理、角色参数的编辑设定和程序设计重点、音效加入与故事的整合等,每一章节都有完整高水准的程序实例配合解说,对想要学习游戏制作的读者提供了极佳的参考。

书名:Visual C++冒险游戏程序设计

作者:坂本千寻

译者:博硕文化

说明:本书针对冒险型游戏(AVG),从游戏策划与设计开始介绍,然后再以VC++为实际开发工具,完整详细地指导读者开发一套高水准的冒险型游戏。

书中着重的不是华丽的演出或新技术的说明,而是务实且仔细地审视冒险游戏最基本的本质思维与逻辑部分。再者,书中许多程序的观念与技巧内容也适用于游戏以外的程序设计,这些技术都是作者经验累积的成果,不是一般入门书会提供的,书中许多内容与观念都是想要进阶与提升技术的读者所需要的,不仅适用于想要开发冒险型游戏的读者,也适合想要以“游戏”为题材来学习程序设计的读者。

书名:C++游戏编程

作者:(美)Noel Llopis

译者:李鹏/ 贾传俊

说明:本书从游戏开发的角度出发,把C++应用到游戏软件领域。介绍一些C++的实战经验,用常规的C++技术解决游戏开发者经常遇到的问题。重点讲述已经在实际的项目中应用的技术,而不是大段地罗列代码。

本书是游戏开发经典丛书系列之一,适合游戏开发人员、业余游戏软件开发爱好者和有关游戏软件开发培训班使用,也可以人秋大专院校相关专业的参考书。

名:Cg教程:可编程实时图形权威指南

译者:洪伟 刘亚妮 李骑 丁莲珍

说明:Cg是最早的为可编程图形硬件设计的高级编程语言,本书教你如何编写Cg程序。

本书共10章,第1章简要介绍Cg语言。随后的每一章分别介绍Cg中的一个概念和技术的说明,包括最简单的Cg程序,参数、纹理和表达式,如何进行顶点变换,如何用Cg实现光照模型,如何用Cg顶点程序实现模型的动画和变换,如何实现环境贴图,如何实现凹凸贴图,雾、卡通光照、投影聚光、阴影贴图和复合技术,目前可用的Cg的顶点和片断的简要描述(Profile)等内容。

书名:网络游戏开发

译者:姚晓光 恽爽 王鑫

说明:本书出自两位世界级资深网络游戏专家之手,全面介绍了如何构架、发行和维护网络游戏,专业而又详尽地讲述了网络游戏制作、发行及运营中的一些实际细节。书中汇集了网络游戏开发历程中的经验与教训。

对于从事网络游戏开发的业内人土,特别是管理人员,本书是不可多得的佳作。本书同样适合于对网络游戏开发有兴趣的玩家和读者。

网络游戏已经出现———不再是未来的梦想!如果你是网络游戏从业人士。就绝对不能错过本书!

“本书汇集了许多大型网络游戏开发的优秀经验,采用书中的这些建议可以为公司节省数百万美元的成本 ” Gordon Walton,Maxis公司副总裁,《模拟人生在线》执行制作人。

书名:Windows游戏编程大师技巧(第二版)

原名:Tricks of the Windows Game Programming Gurus,2nd

说明:本书是著名游戏程序设计类书籍作者André LaMothe的两卷本《Windows游戏编程大师技巧》中的第一卷的第二版。和作者撰写的其他畅销书一样,在书中随处可见许多有趣但又有一定难度的源程序。作者循循善诱地从程序设计的角度介绍了在Windows环境下进行游戏开发所需的全部知识,包括Win32编程以及DirectX中所有主要组件(包括DirectDraw、DirectSound、DirectInput和DirectMusic)。书中还用单独的章节详细讲授了2D图形学和光栅化技术、游戏算法、多线程编程、文本游戏和解析、人工智能(包括模糊逻辑、神经网络和遗传算法)、物理建模(完全碰撞反应、动量传递和正反向运动学)及实时模拟等游戏程序开发中的关键技术。

书名:Visual C++网络游戏建模与实现

作者:苏羽 王媛媛

说明:本书讲述如何使用UML进行棋牌类网络游戏建模、如何用Visual C++编程实现该游戏,书中集作者近年来从事网络游戏开发之经验。 全书共分14章,1~6章介绍网络通信编程,是网络游戏设计的基础;7~12章介绍如何用UML对网络游戏进行可视化建模;第13章介绍如何用Visual C++编写有一定难度的客户端程序;第14章介绍如何使用数据库管理游戏数据。由于本书重点在于介绍网络游戏整体框架的建模和编程,所以在讲解时只给出了编程思想和实现的过程,并没有提供全部实现过程的源程序,但提供了关键的实现代码和设计类框图。使你对网络游戏编程有较深入的理解。 本书适用于软件工程师、网络程序员、大学计算机软件专业和网络专业的学生,以及从事网络游戏开发的程序设计人员。

书名:Visual C++游戏设计(第二版)

作者:荣钦科技

说明:本书用浅显生动的语言、经典的案例带领您进入游戏设计的美妙世界,帮助您实现开发游戏的梦想。书中参照开发大型游戏《仙剑奇侠传》所需要的技术,如:镂空动画、半透明动画、碰撞检测、斜角卷动的地图、人工智能、3D动画、3D音效等,对游戏的设计和开发过程进行了系统而又详细的介绍。使您能清楚地了解游戏设计过程中的各种知识,包括Visual C++的基本操作、游戏画面的坐标系统、规划游戏的主要架构,以及使用DirectX来设计3D游戏等。本书理论与实例并重,讲述了多种游戏设计的思想和技巧,适合作为游戏程序设计爱好者和新鲜人士阅读,也可供多媒体开发人员参考使用。

书名:PC游戏编程(网络游戏篇)

译者:CG实验室/王鑫/罗金海/赵千里

说明:本书的作者都是第一线的网络游戏开发人员,书中的所有内容都整理自完整的网络游戏项目,是实践经验的总结。第二章到第十四章的内容,基本是从一个多人在线冒险型网络游戏项目中整理而来,第十五章则整理于一个即时战略游戏项目。在内容的讲述中尽量避免了和具体游戏内容的关联,以便更具有通用性。本书的目标是帮助读者掌握常见类型的网络游戏的开发环境、流程、关键制作技术、方法和技巧,读者通过学习和实践甚至可以成为专业的网络游戏程序设计师。本书面向的读者对象主要是有一定编程经验,并对制作网络游戏很有兴趣的爱好者或者是有单机游戏设计经验,正在向网络游戏转达型的程序设计师。同时对于非程序开发,但对网络游戏项目很有兴趣的朋友也是很好的参考书。

书名:Visual C++ 游戏设计入门

作者:普悠久玛数位科技

说明:Visual C++ 6.0是目前电脑游戏界开发游戏程序的最佳工具,它用传统优良的C++语言配合Visual C++6.0集成开发环境来设计游戏程序,不论在开发的速度还是在运行的性能上,都有最优异的表现! 本书由浅入深地以MFC的程序架构来说明各种与游戏设计相关的技巧,使初学者能够轻松地掌握游戏设计的基本理论和实现技巧。通过难度适中的实例,引领读者逐步进入游戏设计的殿堂,从而分享笔者在游戏设计过程中的心得,即使是游戏程序设计生手的您,也能够探寻设计的奥妙! 本书适用于电脑游戏编程的初学者。

名:进阶实战3DS MAX角色设计及游戏开发

作者:傅富垣

说明:本书属于《技胜e筹》系列丛书,是以我国台湾版的相应图书为蓝本改编而成。在随书附赠的光盘中,包含了本书学习时所需的文件:模型(场景)文件、材质、纹理贴图、免费Plug-In程序和游戏引擎等。本书共分两篇,分别介绍了一些相关的高级概念;使用3DS MAX时的应用技巧,制作人物模型;如何利用免费的Plug-In(插件)程序,制作人物脸部的纹理贴图;如何使用3DS MAX内置的骨骼系统(Bones),制作角色动画;如何使用3DS MAX及Character Studio,以及如何将动态人物导入到游戏引擎中等内容。本书非常适合3DS MAX 的入门用户以及培训班的学员,同时也是进阶用户不可缺少的参考书。

书名:3DS MAX角色动画和游戏制作教程

作者:天一工作室

说明:本教程本着理论结合实际的原则,使用生动的实例教学法,详述如何使用3ds max 4制作角色动画和游戏的方法和技巧。 本教程共分为18章,每章都包含一个完整的实例,从不同角度针对不同的应用讲述3ds max 4不同的功能和应用技巧。主要内容包括:低多边形角色建模,面片角色建模,角色的材质和贴图创建骨骼,反向动力学,皮肤和弹性修改器,角色的行走姿势,口形同步和面部表情,制作游戏中的建筑物、太空船动画和爆炸效果,创建烟雾、喷水、太阳,使用特殊建模工具、约束与控制器、新的渲染功能和“经典实例——风云”。 对初学者来说,本教程图文并茂、循序渐进、范例精美,易于理解。对于3ds max的老用户来说,通过学习本版作品能掌握许多功能应用过程中的技巧。本教程自始至终都注重理论讲解和实际操作相结合,把3ds max 4.O的功能融汇贯通到实际操作之中,同时注重对关键步骤的操作技巧作及时、精辟的讲解。 本教程适合于各种层次的3D设计人员及3ds max爱好者学习,也可以作为3ds max 4. 0的培训教材。 本版CD内容为本教程文件。

书名:Visual Basic 游戏编程21天自学通

原名:Sams Teach Yourself Game Programming with Visual Basic

说明:本书以三周的学习计划,21天的课时按排,教你学会使用Visual Basic编写自己的游戏程序的方法和技巧。 全书从介绍游戏编程的基本知识和编制简单的游戏程序入手,通过丰富的示例和作者提供的示例源代码,学习游戏编程的艺术、WindowsAPI调用,游戏屏幕绘制、文本绘制、编写游戏算法、图片显示、播放动画、声音效果以及游戏程序检测等一系列从设计到编制的全部工程;学习编制实时游戏,为RPG游戏创建编辑器等高级技术,从专家级的游戏编制经验中学会使用VB达到创建自己富有吸引力的作品。 本书面向有一定VB基础的用户,从自学的特点来编写。你可以一章一章逐步学习也可以选择你最感兴趣的章节来学习。

书名:C游戏编程从入门到精通

作者:浦滨

说明:本书以C语言游戏编程入门,以102个实例,近200个函数较为系统地介绍了C基于游戏编程与开发的力法与技巧,内容丰富并相互包容,相互渗透。以实际的基于不同平台的游戏制作为背景,知识阐述与实际案例结合,深入浅出,具体、直观、全面,可操作性强;是一本难得的集入门、深入到精通C游线编程的综合书籍。 该书将大学计算机及大量相关专业课程的知识运用到C语言游戏编程的实践中,并从C语言游线编程实践角度来诠释计算机及许多其他专业课题,内容涉及计算机硬件、软件等方面的编程技术。具体内容包括,图形绘制、中文显示、动画实现、文件调用、内存使用、声卡调用、中断、内存驻留技术、接口技术、数据库实现、简单病毒、界面技术等进行了详尽的介绍,并且配以大量的源程序以及程序分析对所涉及的理论进行充分的讲解和支撑。

书名:PC游戏编程(入门篇)

作者:林鹏 戴波 袁霜霁

说明:第一章 基石 1. 1 BOSS登场--GAF简介第二章 2D图形程式初体验 2.l 饮水思源--第一个"游戏"程式 2.2 知其所以然一一2D图形学基础 2.3 进入图形世界的钥匙--GAFDDraw 2.4 2D图像的本质--图层表面 2.5 场景的秘密--背景卷动 2.6 诱惑--来自"精灵"的问候 2.7 餐后甜点--GAFApp/GAFDDraw的其他法宝第三章 塞壬的歌声魔力和第三类接触 3.1 1,2,3--计算机音乐概述 3.2 塞壬的歌声--音效程式的魔力 3.3 专业伴奏--掌握MIDI 3.4 第三类接触--和玩家打交道第四章 打造自己的PRG传奇 4.l 九种武器--RPG游戏程式框架 4.2 魔法书的封面--标题画面和其他 4.3 创世界--场景的生死轮回 4.4 永远的主角--NPC和大魔王 4.5 魔法咒语--剧情和脚本 4.6 泰斯叔叔的袋子--RPG的道具箱 4.7 英雄的宿命--战斗 4.8 传说的终结--人定胜天第五章 好风借力 更上层楼 5.l 思维的底层--人工智能入门 5.2 虚拟的现实--走进3D世界第六章 技巧完美篇 6.1 与数据共舞--游戏程序优化技巧 6.2 站在别人的肩上--常用开发库使用介绍附录一 GAFApp类接口简明参考附录二 GAFDDraw类接口简明参考附录三 GAFDInput类接口简明参考附录四 游戏编程/制作相关网站

程序设计:简单字母打字游戏(JAVA编写)

/*

游戏开始,从天上掉下10个有标号(字母)的炸弹,

下面有10颗子弹(就是可以按10个字母).

如果所按字母包含在炸弹中,就找到相应的炸弹并

消灭它,消灭后返回继续利用.如果没有就一直飞到天上最后才返回.

*/

import java.net.*;

import java.awt.*;

import java.awt.event.*;

import java.applet.*;

import javax.swing.*;

public class paodan extends Applet implements Runnable,KeyListener

{

private Image bgImage;

private Graphics bg;

static Thread myThread;

static AudioClip ac1,ac2;

static JFrame md;

String Zi26="";

String pd[]={"a","a","a","a","a","a","a","a","a","a"}; //用来存储10个字母做落下的炮弹

String fj[]={"","","","","","","","","",""}; //用来存储10个字母做反击的防空

int x[]=new int[10];

int y[]=new int[10];

//炸弹的坐标

int x1[]=new int[10];

int x2[]=new int[10];

int y1[]=new int[10];

//火箭的坐标

int life=100; //生命

Toolkit KIT=this.getToolkit();

Image paodan=KIT.createImage("paodan.jpg");

Image huojian=KIT.createImage("huojian.jpg");

public paodan() //用来生成一个包含26个英文字母的字符串Zi26

{for (int i=0;i26;i++)

Zi26+=(char)((int)'A'+i);

}

public void cushi() //初始各种数据,如炮弹与火箭的坐标.

{

try

{URL u1=this.getClass().getResource("huishou.wav");

URL u2=this.getClass().getResource("lanjie.wav");

ac1=Applet.newAudioClip(u1);

ac2=Applet.newAudioClip(u2);

}catch(Exception e){}

for (int i=0;i10;i++)

{pd[i]=noRepeat();

x[i]=noHit(i,10);

if (i=5)

y[i]=5+(int)(Math.random()*50);

else

y[i]=60+(int)(Math.random()*50);

x1[i]=220+i*32+1; y1[i]=550;

x2[i]=x1[i];

}

}

public void panduan() //用来判断pd[i]的y值是否要到达屏幕下边,如果是就把Y值变为5,并把所有Y值加3.

{ for(int i=0;i10;i++)

{ if (y[i]=500)

{life--;ac1.play();y[i]=5;}

y[i]+=3;

if (life==0) System.exit(0);

}

y[9]+=3;

md.setTitle("打字训练室 你的生命为"+life+" 提示:白色的字母表示未按,粉红色的表示已按.");

}

public void fk() //防空程序,用来击毁落下的炸弹

{ int i=0,j=0;

for (i=0;i10;i++)

{ if (!fj[i].equals(""))

{

for (j=0;j10;j++)

if (fj[i].equals(pd[j]))

{ if (!(x1[i]=x[j] x1[i]=x[j]+32 || x1[i]+32=x[j] x1[i]+32=x[j]+32))

if (x1[i]x[j])

x1[i]-=4;

else x1[i]+=4;

if (!(y1[i]=y[j] y1[i]=y[j]+32 || y1[i]+32=y[j] y1[i]+32=y[j]+32))

if (y1[i]y[j])

y1[i]-=3;

else y1[i]+=4;

if (y[j]=380 Math.abs(x[j]-x1[i])5)

if (x[j]x1[i]) x1[i]+=5;

else if (x[j]x1[i]) x1[i]-=5;

if (y[j]=380 Math.abs(y[j]-y1[i])5)

if (y[j]y1[i]) y1[i]+=5;

else if (y[j]y1[i]) y1[i]-=5;

if ((x1[i]=x[j] x1[i]=x[j]+32 || x1[i]+32=x[j] x1[i]+32=x[j]+32) (y1[i]=y[j] y1[i]=y[j]+32 || y1[i]+32=y[j] y1[i]+32=y[j]+32))

{life++;ac2.play();pd[j]=noRepeat(); x[j]=noHit(i,10); y[j]=5; x1[i]=x2[i];y1[i]=550;fj[i]="";}

break;

}

if (j==10) y1[i]-=3;

if (y1[i]=5) {y1[i]=550; fj[i]="";}

}

}

}

public void paint(Graphics g)

//根据相应的坐标在屏幕上画炸弹和吃炸弹的娃娃,并保证白色的字母表示未按,粉红色的表示已按

{int i=0,j=0;

g.setFont(new Font("Vrinda",1,21));

for(;ipd.length;i++)

{ for (j=0;jfj.length;j++)

if (pd[i].equals(fj[j]))

{g.setColor(new Color(255,93,55));

g.drawImage(paodan,x[i],y[i],this);

g.drawString(pd[i],x[i]+11,y[i]+20);

break;

}

if (j==fj.length)

{g.setColor(new Color(255,255,255));

g.drawImage(paodan,x[i],y[i],this);

g.drawString(pd[i],x[i]+11,y[i]+20);

}

g.setColor(new Color(255,93,55));

g.drawImage(huojian,x1[i],y1[i],this);

g.drawString(fj[i],x1[i]+10,y1[i]+22);

}

}

//没有按的显红色,按了的显白色

public void keyPressed(KeyEvent k) //当用户按的是字母时,就生成一个防空字母.

{char z=k.getKeyChar();

int i=0,j=0;

if ((z='A' z='Z') || (z='a' z='z'))

{ if (z-32=65) z-=32;

String zc=""+z;

for(;ifj.length;i++)

{ if (zc.equals(fj[i])) break;

} //保证字母不重复

if (i==fj.length)

for(i=0;ifj.length;i++)

if (fj[i].equals("")) {fj[i]=zc;break;}

}

}

public void keyReleased(KeyEvent k){}

public void keyTyped(KeyEvent k){}

public String noRepeat() //生成一个不重复的字母.

{int zc,i;

String xinx;

while(true)

{zc=(int)(Math.random()*26);

xinx=Zi26.substring(zc,zc+1);

for(i=0;i10;i++)

if (pd[i].equals(xinx)) break;

if(i==10) return xinx;

}

}

int noHit(int i,int langth) //让字母保持车距.

{int tmpX,j,k,width=32;

while (true)

{ tmpX=(int)(Math.random()*768)+1;

for(j=0;j10;j++)

{ if (tmpX+widthx[j] || tmpXx[j]+width) continue; //如果欲生成的位置不与当前J所占的位置相交就判断下一个J.

if ((tmpX=x[j] tmpX=x[j]+width) || (tmpX+width=x[j] tmpX+width=x[j]+width)) break;

//如果欲生成的位置与当前x[j]所占据的范围相交就结束循环,重新生成一个起始位置.

}

if (j==10) {return tmpX;}

}

}

public void update(Graphics g)

{if (bgImage==null)

{bgImage=createImage(this.getSize().width,this.getSize().height);

bg=bgImage.getGraphics();

}

bg.setColor(getBackground());

bg.fillRect(0,0,this.getSize().width,this.getSize().height);

//bg.setColor(getForeground());

paint(bg);

g.drawImage(bgImage,0,0,this);

}

public void run() //用线程循环更改Y值,并根据新的坐标在屏幕上重画pd[I];

{

while(true)

{fk();

panduan();

repaint();

try{ myThread.sleep(50); }catch(Exception e) {}

}

}

public static void main(String args[])

{paodan m=new paodan();

md=new JFrame("打字训练室");

md.setSize(800,600);

md.addKeyListener(m);

md.getContentPane().add(m);

m.cushi();

md.setVisible(true);

md.setResizable(false);

myThread=new Thread(m);

myThread.start();

}

}

注:源代码取自编程中国

本人一点建议:其实你这样学Java是没用的,你应该知道你做的项目思想,先做什么后做什么,然后在亲自动手去敲代码!一点建议!

制作小游戏的简单编程软件

学习编程,从何入手

如果您想学习编程,却又不知从何入手,那么您不妨看看下面的几种学习方案,可能会给您一些启示吧!

==============================================

方案一 Basic语言 Visual Basic

优点

(1)Basic 简单易学,很容易上手。

(2)Visual Basic 提供了强大的可视化编程能力,可以让你轻松地做出漂亮的程序。

(3)众多的控件让编程变得象垒积木一样简单。

(4)Visual Basic 的全部汉化让我们这些见了English就头大的人喜不自禁。

缺点

(1)Visual Basic 不是真正的面向对象的开发文具。

(2)Visual Basic 的数据类型太少,而且不支持指针,这使得它的表达能力很有限。

(3)Visual Basic 不是真正的编译型语言,它产生的最终代码不是可执行的,是一种伪代码。它需要一个动态链接库去解释执行,这使得Visual Basic 的编译速度大大变慢。

综述:方案一适合初涉编程的朋友,它对学习者的要求不高,几乎每个人都可以在一个比较短的时间里学会vB编程,并用VB 做出自己的作品。对于那些把编程当做游戏的朋友来说,VB 是您最佳的选择。

Basic/Visual Basic简介

==============================================

方案二 Pascal语言 Delphi

优点

(1)Pascal语言结构严谨,可以很好地培养一个人的编程

计算机如何编程打游戏?

你好,能通过编程开发出来的游戏有很多,比如java开发的贪吃蛇,我的世界等,python开发的小矮人,动物大战等,具体如何编程就需要学习软件开发专业里面的游戏开发相关知识。下面是部分学习知识点,希望能帮到你。

1.例如字符串查找、子串、模式匹配等。?当在 Lua 中对字符串做索引时,第一个字符从 1 开始计算(而不是 C 里的 0 )。 索引可以是负数,它指从字符串末尾反向解析。 即,最后一个字符在 -1 位置处,等等。

2.字符串库中的所有函数都在表 string 中。?它还将其设置为字符串元表的 __index 域。 因此,你可以以面向对象的形式使用字符串函数。 例如,string.byte(s,i) 可以写成 s:byte(i)。

字符串库假定采用单字节字符编码。

接收零或更多的整数。 返回和参数数量相同长度的字符串。 其中每个字符的内部编码值等于对应的参数值。

数字编码没有必要跨平台。

3.返回包含有以二进制方式表示的(一个 二进制代码块 )指定函数的字符串。?之后可以用 load 调用这个字符串获得 该函数的副本(但是绑定新的上值)。 如果 strip 为真值, 二进制代码块不携带该函数的调试信息 (局部变量名,行号,等等。)。

带上值的函数只保存上值的数目。 当(再次)加载时,这些上值被更新为 nil 的实例。 (你可以使用调试库按你需要的方式来序列化上值,并重载到函数中)

4.查找第一个字符串 s 中匹配到的 pattern )。?如果找到一个匹配,find 会返回 s 中关于它起始及终点位置的索引; 否则,返回 nil。 第三个可选数字参数 init 指明从哪里开始搜索; 默认值为 1 ,同时可以是负值。 第四个可选参数 plain 为 true 时, 关闭模式匹配机制。 此时函数仅做直接的 “查找子串”的操作, 而 pattern 中没有字符被看作魔法字符。 注意,如果给定了 plain ,就必须写上 init 。

如果在模式中定义了捕获,捕获到的若干值也会在两个索引之后返回。

5.返回不定数量参数的格式化版本, 格式化串为第一个参数(必须是一个字符串)。格式化字符串遵循 ISO C 函数 sprintf 的规则。 不同点在于选项 *, h, L, l, n, p 不支持, 另外还增加了一个选项 q。 q 选项将一个字符串格式化为两个双引号括起,对内部字符做恰当的转义处理的字符串。 该字符串可以安全地被 Lua 解释器读回来。

希望能帮到你,谢谢!

(责任编辑:IT教学网)

更多

推荐Fireworks教程文章