Game.LoadGame 中这段代码
var yakuTypes = Array.FindAll(types, t => t.IsSubclassOf(typeof(Yaku)));
取得的 yakuTypes 会包含 abstract class SpecialYaku,导致 yakuTypes[i].GetConstructor(Type.EmptyTypes).Invoke(null) throw nullException
建议改为
var yakuTypes = Array.FindAll(types, t => t.IsSubclassOf(typeof(Yaku)) && t != typeof(SpecialYaku));
Game.LoadGame 中这段代码
var yakuTypes = Array.FindAll(types, t => t.IsSubclassOf(typeof(Yaku)));
取得的 yakuTypes 会包含 abstract class SpecialYaku,导致 yakuTypes[i].GetConstructor(Type.EmptyTypes).Invoke(null) throw nullException
建议改为
var yakuTypes = Array.FindAll(types, t => t.IsSubclassOf(typeof(Yaku)) && t != typeof(SpecialYaku));