java 板


LINE

各位板友好 小弟目前是大一生,期末有份Java视窗小游戏制作 我们小组讨论出来後,决定制作2D横向动作卷轴游戏(类似越南大战、或是Rabi-Ribi), 只打算做1~3关,可能不会做到很完整 然後我主要是负责程式撰写的部分,我没有带入甚麽引擎,目前都是Java本身的套件 先简述一下目前我所做的部分 我目前绘制画面的方法是 先将角色预先设定好在地图中的位置在哪,然後以角色为中心去绘制画面(包含地图) 地图的部分用阵列储存整数,然後用function去读取数字判断要贴上哪种图片 让物体左右移动也已经做出来了,障碍物判断暂时也已经做好了 然後开了两个执行绪,一个接收键盘指令,一个做画面绘制 然後我现在要做跳跃的部分遇到了困难 我想要达成的效果是:按下按键後,物体会上移两格,但是能看得到上移一格的时候 上移两格後,再开始落下 结果实作後发现,因为我把接收指令跟绘制画面用不同执行绪的关系 所以好像会先计算完毕之後才做绘制画面 (同一时间只会有一个执行绪执行中,没错吧?) 於是我把panel的repaint()方法安插在跳跃的程式码中,但是又好像是计算太快的关系 看不到上移一格的时候,又不知道该怎麽做延迟 还有一个问题是,我想到不能单纯的把落下的部分放在跳跃後面 如果我从高处的平台平移到可以落下的地方,也要做到物体自动落下 所以我想到落下这一部份应该要移到背景永久执行(? 但是这部分不知道该怎麽撰写 尝试撰写了while回圈去做落下的程式码,做跳跃的时候会因为判断到可以落下 所以就执行落下,结果就是物体不断被压着,跳不起来了 也想请教这部分的设计该怎麽处理 附上我的整份code,移动的部分在character.java 绘制画面跟接收键盘在WindowsUI.java https://goo.gl/kDqDs4 感谢各位! --



※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 223.137.235.236
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/java/M.1464168558.A.6D3.html ※ 编辑: toy9986619 (114.198.187.84), 05/25/2016 21:28:11
1F:→ realmeat: 让他扣慢一点, 方法很多种 05/26 15:48
2F:→ cha122977: 用一个状态记录是不是在空中,在空中的话就往下 05/27 21:35
3F:→ cha122977: 跳跃达到最高点後再进行落下的判定 05/27 21:36
4F:推 kiwatami: 没写过游戏 不过我觉得跟前台特效类似 05/28 08:37
5F:→ kiwatami: 用一条执行绪跑 renderer 读参数绘制画面 05/28 08:37
6F:→ kiwatami: 其他的控制参数 例如上下移动会有一个相对高度的参数 05/28 08:37
7F:→ kiwatami: 用这个参数决定绘制的物件区域与座标 05/28 08:37
8F:→ kiwatami: 以跳跃来说就是使用另一个执行绪 05/28 08:37
9F:→ kiwatami: 负责跑跳跃的x, y座标变化的函数 05/28 08:37
10F:→ kiwatami: 而 renderer 就针对这个座标绘制物件 05/28 08:37
11F:→ kiwatami: 每一个执行绪互相独立才能接受复杂指令 05/28 08:37
12F:推 k47100014: 如果以真实世界来讲的话,你能够跳起来是因为你跳的力 05/29 21:13
13F:→ k47100014: 比引力拉你的力道还大。重力是一直存在的,不是跳到最 05/29 21:14
14F:→ k47100014: 高点才有重力拉你下来。 05/29 21:14
15F:→ kyleJ: 设一个y代表现在高度,ay代表Y轴加速度,g=9.8代表重力加速 06/19 01:55
16F:→ kyleJ: 按照视窗的习惯,往上是负,往下是正 06/19 01:56
17F:→ kyleJ: 当跳起来的时候假设设ay=-10(往上加速),每1/60秒就把ay扣 06/19 01:58
18F:→ kyleJ: g/60=9.8/60 06/19 01:58
19F:→ kyleJ: 这样大约一秒左右就会到达最高点ay=0,然後ay变成正数开始 06/19 01:59
20F:→ kyleJ: 往下掉 你只要一直把ay的值每1/60秒跟y加在一起画出来就好 06/19 02:00







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:Boy-Girl站内搜寻

TOP