有会lua的小伙伴吗?

3 9龙神帝 1天前 163次点击

大家好呀。

本人当初发现自用自己脑子玩出来的游戏,感觉不好玩,所以本人也拿起了AI,开始了自己的编程之旅。

a i是可以编写问题是。也不知道是不是本喵太笨了,还是怎么了。不会添加音效,现在游戏也就写了个菜单出来勉强能看,音效他AI添加的感觉不好。所以希望会这个语言的朋友。来帮我优化一下代码。然后再教我怎么添加音效。现在这代码,10000多个字符呢。

可以加以下QQ号进行私聊。

3696508323

谢谢大家的帮忙啦。

共 18 条评论
可以这样,先让AI把游戏整体弄好,弄成没有声音的,只让AI告诉一下声音该如何添加,添加在哪里?后续声音可以自己去其他地方准备,应该是可以这样弄

本楼来自:
我的世界肝帝玩家的资源库

9龙神帝 [楼主] 1天前
0 
本喵也是这么想的,所以只做了一个框架。但是它那个代码太长了,每次 A I 打开的时候,复制下来都很卡,很卡。
等一下,话说你那里没有配套的运行环境吗?不能一边写一边运行的吗?每次还要复制拿去运行吗?那就很麻烦了

本楼来自:
我的世界肝帝玩家的资源库

9龙神帝 [楼主] 1天前
0 
没有呢。
9龙神帝 [楼主] 1天前
0 
我这边都是把代码直接复制拿到运行环境上直接运行,能用的话查看问题,再编写的。
我当时用他写灵猫曲谱的时候,就是采用的这种方式,我告诉他几个音效,然后再告诉他我的命名规则,然后再告诉他我要放在哪个路径上面,他写好的代码我直接导入运行环境,然后把音效文件放到特定的文件夹,直接运行,正常。但是由于用lua写这一类的软件节奏不稳定,他那个音频库有点垃圾,所以我最后重新构建,用了Kotlin。当然,这个用来写游戏是可以的。不影响
9龙神帝 [楼主] 1天前
0 
哦,这样,好吧。那我去试试去。
首先你要想好你的游戏用什么音频库,比如media player或soundcool,media player优点就是比较灵活,长短音频都可播放,而Soundcool就是短音频为主,此后,让AI给你生成对应的播放器代码,比如你需要用MediaPlayer,然后怎么告诉你怎么去调用,比如说需要调需要写路径等于xxx,然后播放路径还是说播放路径什么什么什么,还是什么,你让AI告诉你这个播放怎么调用,然后,再去找素材进行添加

本帖来自论坛广场APP

9龙神帝 [楼主] 1天前
0 
这些播放器是他自带的吗?还是要自己去购买?
那是音频库,可以直接调用的,你让AI帮你写好,然后定一个文件路径,打包的时候把要调用的音效按照规则命名放进去,有几个音效,叫什么名,你得跟AI说清楚,又或者 ,你可以自己动手写
江浸月 1天前
0 

你所有东西都堆一个文件复制粘贴肯定卡啊


本楼来自:Windows 11 专业版 25H2
江浸月 1天前
0 

有AI为什么还要执着LUA呢。调试很多次都不一定能跑起来。


本楼来自:Windows 11 专业版 25H2
9龙神帝 [楼主] 1天前
0 
主要是没有其他的运行软件的工具呀。
谁能明白我 22小时前
0 
import "android.media.MediaPlayer" import "android.media.ToneGenerator" import "android.media.AudioManager" function bow(e) local b=MediaPlayer() b.reset() b.setDataSource("/storage/emulated/0/"..e) b.prepare() b.start() b.setOnCompletionListener({ onCompletion = function(mp) mp.release() b = nil end })end
9龙神帝 [楼主] 21小时前
0 
哇,这是
谁能明白我 21小时前
0 
播放音频的函数,可以把这个发给AI,让它交你怎么调用
9龙神帝 [楼主] 12小时前
0 
发给他就可以吗?
9龙神帝 [楼主] 12小时前
0 
搞定,语法与全部逻辑模拟通过。这次模拟还真拦住了一个 bug: mp3  末尾的  3  是数字,最初的扩展名判断只认字母,会导致  bow("飞船内.mp3")  被错误地再去补  .ogg  而播放失败,已修正。 融入方式 大佬的  bow  函数已按原版思路完整加入,核心四步一步没少: reset()  →  setDataSource  →  prepare()  →  start() ,播完在  onCompletion  里  release()  释放,不会越播越占内存,这正是这段代码的精髓。原来的  playSfx  改成内部直接调  bow ,所以走路、开门这些已有音效行为不变,只是底层换成了这套更规范的写法。 有一处适配要说明:大佬的版本路径写死  /storage/emulated/0/ ,但你打包后游戏数据目录可能是  Android/data/包名/ ,写死路径会找不到文件。所以相对文件名改为自动到实际数据目录里找;以  /  开头的绝对路径则原样播放,和大佬版完全一致。 怎么调用 lua bow("走路") -- 播数据目录里的 走路.ogg(自动补扩展名,依次试 .ogg/.mp3/.wav) bow("开门.mp3") -- 指定扩展名的相对路径,同样在数据目录里找 bow("/storage/emulated/0/Music/任意文件.wav") -- 绝对路径,手机上任何位置都能播   音量跟随设置里的「音效」滑杆 ​ 返回值:成功  true ;失败  false  加错误信息(文件不存在时不播报不弹窗,静默失败——这是有意的,音效缺失时游戏自动用震动兜底) ​ 想在任何事件里加音效,比如进入驾驶室时播个提示,就在对应函数里插一行  bow("文件名")  即可 教你怎么找插入点 以后想给某个动作配音效,两步:把音频文件(ogg/mp3/wav 都行)放进数据目录(帮助第一项会播报实际路径),然后在代码里找到那个动作的函数(比如  walkStep  是走路、 menuDblClick  是双击确认),在合适位置加一行  bow("你的文件名") 。发报错就用双指复制贴给我。 更新日志已加版本十三。完整代码在 xingyu.lua。
添加一条新评论

登录后可以发表评论 去登录