想用三目运算符提高代码可读性,但是又不知道怎么做,将获取随机地图场景并记录的逻辑提取到了一个独立的私有方法是否可行?但是感觉多了重复代码
public static SceneConfig GetMapScene(SessionPlayerComponent sessionPlayer, int mapNum, uint zoneId)
{
var mapSceneId = sessionPlayer.GetMapSceneId(mapNum);
var mapScene = (mapSceneId == 0)
? GetRandomMapSceneAndRecord(sessionPlayer, mapNum, zoneId)
: SceneConfigData.Instance.Get(mapSceneId);
return mapScene;
}
private static SceneConfig GetRandomMapSceneAndRecord(SessionPlayerComponent sessionPlayer, int mapNum, uint zoneId)
{
var mapScene = SceneHelper.GetSceneRandom(SceneType.Map, zoneId);
var mapSceneId = mapScene.Id;
sessionPlayer.MapSceneIds.Add(mapNum, mapSceneId);
return mapScene;
}