public static void GetDefinition(EnemyDetail detail, DefinitionLua definitionLua) { if (detail.enemies.Count > 0) { string region = GetRegion(detail.enemyMetadata.subtype); StringBuilder faceIdList = new StringBuilder("faceIdList = {"); if (HasBalaclavas(detail.enemies)) { faceIdList.Append($"TppDefine.QUEST_FACE_ID_LIST.{region}_BALACLAVA, "); } faceIdList.Append("}"); definitionLua.AddPackInfo(faceIdList.ToString()); // if necessary faceIdList and bodyIdList should be components of definitionLua StringBuilder bodyIdList = new StringBuilder("bodyIdList = {"); if (HasArmors(detail.enemies)) { bodyIdList.Append($"TppDefine.QUEST_BODY_ID_LIST.{region}_ARMOR, "); } foreach (string body in GetBodies(detail.enemies)) { bodyIdList.Append($"TppEnemyBodyId.{body}, "); } bodyIdList.Append("}"); definitionLua.AddPackInfo(bodyIdList.ToString()); } }
public static void GetDefinition(HostageDetail hostageDetail, DefinitionLua definitionLua) { int hostageCount = hostageDetail.hostages.Count; BodyInfoEntry hostageBody = NPCBodyInfo.GetBodyInfo(hostageDetail.hostageMetadata.hostageBodyName); if (hostageCount > 0) { definitionLua.AddPackPath("/Assets/tpp/pack/mission2/ih/ih_hostage_base.fpk"); definitionLua.AddPackPath(hostageBody.missionPackPath); definitionLua.AddPackInfo($@"randomFaceListIH = {{ gender = ""{(hostageBody.isFemale ? "FEMALE" : "MALE")}"", count = {hostageCount}}}"); } }