Java究竟怎么玩?http://blog.csdn.net/cping1982

菩提本无树,明镜亦非台,本来无一物,何处惹尘埃

匿名不具ID:cping1982
140230次访问,排名551(-1)好友13人,关注者17
机密……
cping1982的文章
原创 137 篇
翻译 0 篇
转载 40 篇
评论 295 篇
鹏凌三千(cping1982)的公告
本博评论删除规则如下:

1、辱骂性发言,无视其辱骂对象,一律删。

2、登录发表的评论,不违背第一条者一律不删。非登录发表的评论,过激者删。

3、若发生例外情况,则为CSDN博客系统自动删除。

声援SOFF|声援珊瑚虫:如果你是珊瑚虫用户,请坚决力挺声援珊瑚虫!

平生进退如飙风,一睨人才天下空。独向苍天横冷剑,何必生我惭英雄。

本人有效BLOG:

cping1982

ceponline

音乐:

风姿花传

ドラグ.スレイブ

ヒカルの碁

Believe

世界で一番ヤバイ恋

あんなに一緒だった

精忠报国

谁是大英雄

随遇而安

明天会吹什么风

逍遥游

爱江山更爱美人

最近评论
cping1982:您好,请参阅软件中的pdf手册
gmf:这个具体怎么用啊
456 OUT!:完全满足[321 GO!]要求的目前似乎不多,好像Google Talk及Kmess(能与MSN互通)是这样的,其他如百度hi,skype都只能满足你部分要求。
321 GO!:有没有比TX更好的IM软件呢?
完全FREE
公开代码
无恶意的烦人的或可选择的插件
且持续更新
bluesmile979:番茄花园怎么了?看来孤陋寡闻了,得到网上找找新闻看看。
文章分类
收藏
    相册
    Java的PC游戏开发
    Java中的A*(A star)寻径实现
    Java仿雷电及其源代码
    Java制作的类祖码游戏-数字祖码
    Java实现窗体中角色逐渐风化效果
    Java版吃豆游戏
    人生如梦游戏间,RPG游戏开源开发讲座(JAVA篇)[2]——踏破红尘
    Java[伪]寻径追踪实现
    JAVA中[人工无脑]系统(chatbot)的实现
    Java中2.5D游戏(斜45度角)的设计与实现(1)
    Java中2.5D游戏(斜45度角)的设计与实现(2)
    Java仿太阁立志传5
    JAVA图形操作中FPS的计算(附带随机生成乱数球体用例)
    JAVA实现拼图游戏
    Java来做马里奥[0]—让精灵再次舞动
    Java来做马里奥[1]—木叶传承
    Java来做马里奥[2]—食不厌精
    Java来做马里奥[3]—杂兵登场
    Java模拟桌球打击处理及绘制
    Java汉诺塔测试
    Java炸弹人实现及源码
    人生如梦游戏间,JAVA游戏开源开发讲座[番外篇]之AVG开发——皮影
    人生如梦游戏间,RPG游戏开源开发讲座(JAVA篇)[0]——月晕础润
    人生如梦游戏间,RPG游戏开源开发讲座(JAVA篇)[1]——风云初现
    人生如梦游戏间,RPG游戏开源开发讲座(JAVA篇)[3]——邯郸学步
    人生如梦游戏间,RPG游戏开源开发讲座(JAVA篇)[4]——一步莲华
    人生如梦游戏间,RPG游戏开源开发讲座(JAVA篇)[5]——一树双花
    人生如梦游戏间,RPG游戏开源开发讲座(JAVA篇)[6]——走马观花
    史上最扯Java图形绘制(J2SE)之一JAVA动画效果
    沉寂的国人开源项目
    bo-blog(blog系统,php项目)
    DockPanel Suite [Microsoft .NET Framework Winform UI]
    Hocate web framework[web框架]
    Loonframework-DAO[持久层框架]
    Loonframework-GAME[游戏框架,尚未发布]
    Loonframework-WEB[web框架,尚未发布]
    Luntbuild(软件管理工具)
    magike(php博客)
    myseelite(p2p流媒体系统,c++项目)
    newxy(新坐标)[web框架]
    opencrx(crm系统)
    redlion(web框架)
    x2blog(asp.net博客系统)
    YOYOPlayer(音乐播放器)
    袋鼠egg(服务器)
    经典Blog
    # gzfqh的专栏 →底层代码研究(病毒及汇编)(RSS)
    # java 3D 游戏编程(RSS)
    ApoGames(德国某人的Java游戏作品展示)
    Struts框架应用
    Struts框架应用~
    千里冰封[JAVA 浓香四溢]
    网络安全圈子
    经典站点
    Google
    IBM中国站
    JavaGame开发论坛
    JAVA开源大全
    Java爱好者
    Struts标签文档
    SUN 中国社区
    中国IT实验室
    数据库专区
    偶的其它应用实例
    C#将图像文件压缩为AVI文件播放
    Java&.Net虚拟机精简(GreenJVM&GreenDotNet发布)
    Java图形程序水纹倒映效果
    Java输出竖排古典文字
    .NET在线漫画下载程序
    C#转换AVI文件为BMP文件
    ClassLoader调用外部jar包
    ExtJS2.0开发与实践笔记[0]——初识ExtJS
    ExtJS2.0开发与实践笔记[1]——ExtJS中的Dialog与Form
    ExtJS2.0开发与实践笔记[2]——Ext中的Layout
    ExtJS2.0开发与实践笔记[3]——Ext中的Menu
    ExtJS2.0开发与实践笔记[4]——Ext中的动画处理
    JavaFx实现(1)-渐变效果
    JavaFx实现(2)-随机图形绘制
    Java中DAO的实现
    Java中Image翻转操作
    Java中将byte[]转为Blob对象
    Java中的A*(A star)寻径实现
    Java制作绿色软件(GreenJVM_0.1.0发布)
    JAVA图形操作类
    Java图形程序中的对话逐字显示实现
    Java实现任意文件在bmp中的隐藏与导出
    JAVA实现可设置背景的MDI窗口
    Java实现嵌入式数据库(文本数据库)代码实例
    Java实现类Windows导航栏
    Java正则表达式入门
    JAVA版JAVA IDE环境(源码)
    JAVA线程池的简单实现及优先级设置
    Java自定义JSlider UI
    Java获得系统环境变量
    Java音乐播放类
    ResultSet转为实体对象
    SWT行,AWT/Swing也行系列(1)-实现半透明及不规则窗体
    在JTable中加载进度条及进行操作
    在Swing中使用Html标签
    在SWT中使用ChartDirector
    浅谈java.util.concurrent包的并发处理
    浅谈Java集合中Array(数组)的应用
    精简JRE体积
    通过exe启动class
    偶的文章
    《三国以后有几国》
    中国本土化编程(汉语编程)之我见
    从珊瑚虫事件,看为什么中国出不了比尔.盖茨
    佛与专家
    叹今人无气节而作歌
    国产开源项目的七宗罪
    对Hibernate使用之愚见
    对Java(J2SE PC)开发之怪现象之我见
    浅谈命名规范[纯属强辩]
    灭了珊瑚虫,下一个是谁?
    率性而作无题歌一首
    百度对“十进制网络”的官方态度
    耻民
    论番茄花园的倒掉
    存档
    软件项目交易
    订阅我的博客
    XML聚合  FeedSky
    订阅到鲜果
    订阅到Google
    订阅到抓虾
    订阅到BlogLines
    订阅到Yahoo
    订阅到GouGou
    订阅到飞鸽
    订阅到Rojo
    订阅到newsgator
    订阅到netvibes

    原创 人生如梦游戏间,RPG游戏开源开发讲座(JAVA篇)[4]——一步莲华收藏

    新一篇: 人生如梦游戏间,RPG游戏开源开发讲座(JAVA篇)[5]——一树双花 | 旧一篇: 游戏王,查卡器,编号,开源,代码,OCG,程序

             从星期一开始一直郁闷……


    最近的状况……用迷信的说法就是犯小人,以社会学的观点是由于出现人际交往困难造成社会评价降低……无比郁闷中,继续写这个……

    上一回我们写到关于如何改变角色的移动样式及线程的初步处理,本次将继续进行下一步,即角色多步走法中方向变化的实现。

     

     

    程序源码如下,我一直相信,源码是最好的老师,与其向白痴一样以死背下多少API自鸣得意,还不如踏踏实实写点东西!!!了解一下程序本质!!!竟然让我一个搞后台的默写,默写!!!出CSS的布局实现效果……7456~~~(这种人也能当技术总监……中国啊~~~

     

    程序源码如下:

    package org.loon.chair.example4;

     

    import java.awt.Dimension;

    import java.awt.Graphics;

    import java.awt.Image;

    import java.awt.event.KeyEvent;

    import java.awt.event.KeyListener;

     

    import javax.swing.ImageIcon;

    import javax.swing.JPanel;

     

    /**

     * Example3中自定义面板,用于描绘底层地图。

     *

     * @author chenpeng

     *

     * Loon Framework in Game

     *

     * PS:请注意,此处与前例不同,新增键盘事件监听

     */

    public class MyPanel extends JPanel implements  KeyListener {

     

        //窗体的宽与高

        private static final int WIDTH = 480;

        private static final int HEIGHT = 480;

       

     

        //设定背景方格默认行数

        private static final int ROW = 15;

        //设定背景方格默认列数

        private static final int COL = 15;

       

        //单个图像大小,我默认采用32x32图形,可根据需要调整比例。

        //当时,始终应和窗体大小比例协调;比如32x32的图片,如何

        //一行设置15个,那么就是480,也就是本例子默认的窗体大小,

        //当然,我们也可以根据ROW*CS,COl*CS在初始化时自动调整

        //窗体大小,以后的例子中会用到类似情况。总之一句话,编程

        //[为目的而存在的],所有的方法,大家都可任意尝试和使用。

        private static final int CS = 32;

     

        //设定地图,通常在rpg类型游戏开发中,以[二维数组]对象为

        //基础进行地图处理,用以描绘出X坐标和Y坐标。实际上,即令

        //再华丽的RPG类游戏,都是从这些简单的X,Y坐标开始的。

        //PS:所谓[数组],大家可以简单的理解为即数据的集合,一维数组

        //仅包含X轴,而二维是由X,Y两个轴组成的,XY的交织点,即为

        //一条数据。

        private int[][] map = {

            {1,1,1,1,1,1,1,1,1,1,1,1,1,1,1},

            {1,0,0,0,0,0,0,0,0,0,0,0,0,0,1},

            {1,0,0,0,0,0,0,0,0,0,0,0,0,0,1},

            {1,0,0,0,0,0,0,0,0,0,0,0,0,0,1},

            {1,0,0,0,0,0,0,0,0,0,0,0,0,0,1},

            {1,0,0,0,0,1,1,1,1,1,0,0,0,0,1},

            {1,0,0,0,0,1,0,0,0,1,0,0,0,0,1},

            {1,0,0,0,0,1,0,0,0,1,0,0,0,0,1},

            {1,0,0,0,0,1,0,0,0,1,0,0,0,0,1},

            {1,0,0,0,0,1,1,0,1,1,0,0,0,0,1},

            {1,0,0,0,0,0,0,0,0,0,0,0,0,0,1},

            {1,0,0,0,0,0,0,0,0,0,0,0,0,0,1},

            {1,0,0,0,0,0,0,0,0,0,0,0,0,0,1},

            {1,0,0,0,0,0,0,0,0,0,0,0,0,0,1},

            {1,1,1,1,1,1,1,1,1,1,1,1,1,1,1}};

     

        //设定显示图像对象

        private Image floorImage;

        private Image wallImage;

        //角色

        private Image roleImage;

     

        //角色坐标

        private int x, y;

        

        //增加计步器

        private int count;

     

        //此处我们添加一组常数,用以区别左右上下按键的触发,

        //之所以采用数字进行区别,原因大家都很清楚^^,数字

        //运算效率高嘛~

        private static final int LEFT = 0;

        private static final int RIGHT = 1;

        private static final int UP = 2;

        private static final int DOWN = 3;

       

        private int direction; //新增变量,用以确认角色所对方向,对应按键触发

     

        private Thread threadAnime;

        public MyPanel() {

            //设定初始构造时面板大小

            setPreferredSize(new Dimension(WIDTH, HEIGHT));

     

            //于初始化时载入图形

            loadImage();

           

            //初始化角色所在位置,由于本例行列皆为15,估xy的极限数值也皆为15

            //即由15x15的方格图像,组成了角色的可见活动区域。

            x = 8;

            y = 8;

           

            direction=DOWN; //默认为角色向下

     

            //在面板构建时赋予计步器初值

            count = 0;

           

            //设定焦点在本窗体并付与监听对象

            setFocusable(true);

            addKeyListener(this);

           

            //实例化内部线程AnimationThread

            threadAnime = new Thread(new AnimationThread());

            //启动线程

            threadAnime.start();

        }

     

        //描绘窗体,此处在默认JPanel基础上构建底层地图.

        public void paintComponent(Graphics g) {

            super.paintComponent(g);

     

            //画出地图

            drawMap(g);

           

            //画出人物

            drawRole(g);

        }

     

        /**

         * 载入图像

         *

         */

        private void loadImage() {

        //获得当前类对应的相对位置image文件夹下的地板图像

       

            ImageIcon icon = new ImageIcon(getClass().getResource("image/floor.gif"));

            //将地板图像实例付与floorImage

            floorImage = icon.getImage();

            //获得当前类对应的相对位置image文件夹下的墙体图像

            icon = new ImageIcon(getClass().getResource("image/wall.gif"));

            //将墙体图像实例付与wallImage

            wallImage = icon.getImage();

     

            icon = new ImageIcon(getClass().getResource("image/role.gif"));

            roleImage = icon.getImage();

        }

       

       

        /**

         * 绘制角色

         */

        private void drawRole(Graphics g) {

        //count作为图像的偏移数值,并于Example4中添加direction以获取所处图像块位置

          g.drawImage(roleImage, x * CS, y * CS, x * CS + CS, y * CS + CS,

          count * CS, direction * CS, CS + count * CS, direction * CS + CS, this);

        }

        

        //换算公式如下:

       

     

        private void drawMap(Graphics g) {

         //Java或任何游戏开发中,算法都是最重要的一步,本例尽使用

        //简单的双层for循环进行地图描绘,

            for (int x = 0; x < ROW; x++) {

                for (