铁血丹心

 找回密码
 我要成为铁血侠客
搜索
查看: 3023|回复: 6

[lua复刻] lua版简单实现点X直接关闭游戏功能代码

[复制链接]
发表于 2012-5-24 10:15 | 显示全部楼层 |阅读模式

马上注册,结交更多侠友!

您需要 登录 才可以下载或查看,没有账号?我要成为铁血侠客

x
1.jymain.h文件里面添加声明

#include <setjmp.h>
jmp_buf env;

2.int main(int argc, char *argv[])函数里面增加

+    if (setjmp(env) == 0)
+    {
        Lua_Main(pL_main);          //调用Lua主函数,开始游戏
+    }

3.static int KeyFilter(const SDL_Event *event)函数里面增加

        break;
+    case SDL_QUIT:
+        longjmp(env, -1);
+        break;
    default:
        break;
    }
简单的话大概这样修改,这仅是修改的思路。附件是用游泳的鱼源码修改后得到的exe.

评分

参与人数 1声望 +5 收起 理由
winson7891 + 5 意思意思

查看全部评分

【武侠.中国】铁血丹心论坛(大武侠):致力于推广和发展武侠文化,让我们一起努力,做全球最大的武侠社区。
可能是目前为止最好的金庸群侠传MOD游戏交流论坛,各种经典武侠游戏等你来玩,各种开源制作工具等你来实现你的游戏开发之梦。
发表于 2012-5-24 12:41 | 显示全部楼层
利用长跳转,这个方法可以

一般不改这个KeyFilter函数, 改JY_GetKey
【武侠.中国】铁血丹心论坛(大武侠):致力于推广和发展武侠文化,让我们一起努力,做全球最大的武侠社区。
可能是目前为止最好的金庸群侠传MOD游戏交流论坛,各种经典武侠游戏等你来玩,各种开源制作工具等你来实现你的游戏开发之梦。
发表于 2012-5-24 13:18 | 显示全部楼层
Lua版本来连点击叉叉关闭程序都做不到吗?

才知道
【武侠.中国】铁血丹心论坛(大武侠):致力于推广和发展武侠文化,让我们一起努力,做全球最大的武侠社区。
可能是目前为止最好的金庸群侠传MOD游戏交流论坛,各种经典武侠游戏等你来玩,各种开源制作工具等你来实现你的游戏开发之梦。
发表于 2012-5-24 14:25 | 显示全部楼层
winson7891 发表于 2012-5-24 13:18
Lua版本来连点击叉叉关闭程序都做不到吗?

才知道

鱼儿之前留下的程序里。。。是不行的


【武侠.中国】铁血丹心论坛(大武侠):致力于推广和发展武侠文化,让我们一起努力,做全球最大的武侠社区。
可能是目前为止最好的金庸群侠传MOD游戏交流论坛,各种经典武侠游戏等你来玩,各种开源制作工具等你来实现你的游戏开发之梦。
发表于 2012-5-24 18:51 | 显示全部楼层
这样改就任何时候都行了吗?
【武侠.中国】铁血丹心论坛(大武侠):致力于推广和发展武侠文化,让我们一起努力,做全球最大的武侠社区。
可能是目前为止最好的金庸群侠传MOD游戏交流论坛,各种经典武侠游戏等你来玩,各种开源制作工具等你来实现你的游戏开发之梦。
发表于 2012-5-24 19:30 | 显示全部楼层
weyl 发表于 2012-5-24 18:51
这样改就任何时候都行了吗?

从技术的角度上来讲不是。。。
只有触发按键事件才可以


【武侠.中国】铁血丹心论坛(大武侠):致力于推广和发展武侠文化,让我们一起努力,做全球最大的武侠社区。
可能是目前为止最好的金庸群侠传MOD游戏交流论坛,各种经典武侠游戏等你来玩,各种开源制作工具等你来实现你的游戏开发之梦。
 楼主| 发表于 2012-5-25 20:15 | 显示全部楼层
应该是任何时候都行,我仅是为了方便说明,所以函数名字这样都没改,比如KeyFilter这样的名称,改为eventFilter更能表达清楚意思,当然要写好,关闭x的时候也应加入提示。

点评

看你的功能,应该是只有相应按键的时候才可以吧  发表于 2012-5-26 11:44
【武侠.中国】铁血丹心论坛(大武侠):致力于推广和发展武侠文化,让我们一起努力,做全球最大的武侠社区。
可能是目前为止最好的金庸群侠传MOD游戏交流论坛,各种经典武侠游戏等你来玩,各种开源制作工具等你来实现你的游戏开发之梦。

本版积分规则

小黑屋|手机版|铁血丹心

GMT+8, 2024-11-15 09:38

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表