mirror of
https://github.com/Qsgs-Fans/FreeKill.git
synced 2024-11-16 03:32:34 +08:00
1.8 KiB
1.8 KiB
参与到FreeKill的开发
如果您正在阅读这篇文档的话,那么首先要感谢您愿意为FreeKill出一份力!
FreeKill使用Lua编写游戏逻辑,QML+JS编写UI界面和UI逻辑,Qt C++提供一些底层设施的支持。
由于FreeKill的目标在于构建一个适合DIY的框架,因此在Git仓库里面的内容会比较少,只包含标准包和标准卡牌!(以及军争卡牌)如若您想为FreeKill编写拓展包,请查看DIY文档。
如果您想要为FreeKill编写三国杀官方武将,那么请前往以下几个仓库:
- 神话再临: gitee.com/notify-ctrl/shzl
- 一将成名: gitee.com/notify-ctrl/yj
以及更多...
因为官方武将是其他想要涉足FK DIY的作者们经常参考的内容,因此其代码最好也让我来审查一下。具体的协作流程与下文相同,不进行赘述。
快速上手
为了更好的阅读代码,请先阅读README文件,以及doc/下面的相关文档。至于阅读代码本身,可以考虑从main.cpp入手,或者从lua/freekill.lua入手,或者从lua/server/room.lua入手,这些文件都是某种意义上程序的入口点。
如果您对UI的实现和修改有兴趣的话,那么可以查看qml/main.qml,那里定义了整个UI逻辑、窗口绘制等。
如果您已经准备好了提交一些修改,那么:
- Fork本仓库,然后在fork的仓库里面进行自己的修改、提交。
- 从fork的仓库向本仓库发起pull request。
代码规范
在为Fk核心仓库(以及官方武将仓库)做贡献时,请遵循一下几点:
- 不要使用Tab键作为缩进。在FreeKill的代码中,所有代码文件的缩进应该都是两个空格。
- 不要定义全局变量,除非非这么做不可。
- 在提交时应有清晰的commit信息。