分支介绍
主要的分支
在feather-interact上进行研发
Commit管理
研发完成后,需要提供一个
名字为: test.unity
我们的技术组长,将会打开test.unity,判断是否完成任务
测试
当你把代码完成后,别忘了在模块下创建一个测试的场景.
- Unity: Test.scene
- UE4: Test.uasset
推送
- 获取最新的develop分支,如果遇到了之前设计好的模块,可以提前进行资产整合
//获取最新的develop分支
git fetch origin develop
//将feather-interact分支与 develop合并
git merge FETCH_HEAD
//FETCH_HEAD指的是,上一次输入git fetch中获取到的分支.
- 推送仓库
git push origin feather-interact
- 让技术组长创建merge-request
其他情况
如果一个分支在研发的时候,需要引用到其他模块,但是其他模块还没有完成. 那么你可以创建一个空方法, 然后写一个//todo ,等其他模块完成后再来完成这个模块
比如说, 玩家进入某一个区域,我需要判断玩家的阵营是否是好人但是玩家模块还没做完.
那么我可以创建一个方法
bool IsPlayerGoodPerson(ExpelPlayer player);
玩家
玩家几乎在每一个模块中都会用到,所以我们将一个玩家,分成了好几个部分.
下图摘自冬日行动中,玩家的组成

一般情况下,会创建一个 XXXPlayer的脚本,XXX指的是模块的名字. 这个XXXPlayer储存着玩家在这个模块中,需要被用到的信息.
由于只需要判断玩家阵营.那么我们创建一个ExpelPlayer的类.
玩家阵营,如果对应的模块没完成的话,我们就自己创建一个举枚类.
需要注意的是,玩家阵营属于玩家生存信息模块,因此需要标记为public
Exple玩家模块,不是定义玩家阵营的模块,因此需要加上private标记
一般,在资产整合 的阶段,我们会在OnEnable()中,读取其他模块的玩家数据.
class ExpelPlayer:MonoBehavior{
public Camp camp=GoodPeople;
}
//todo ,一般在资产整合阶段进行,并删除//todo标记
OnEnable(){
}
private enum Camp{
GoodPeople;
BadPeople;
}
//尽量不要用到外部代码
bool IsPlayerGoodPerson(ExpelPlayer player){
return player.camp==GoodPeople
}
当所有资产制作完成,进入资产整合阶段的时候,在OnEnable中写入代码
并输出//TODO标记
OnEnable(){
//获取PlayerSurvival中玩家Camp的设置
PlayerSurvival.Camp camp=GetComponent<PlayerSurvival>().camp
if(camp==PlayerSurvival.Imposter){
this.camp=BadPepople;
}else{
this.camp=GoodPeople
}
}