noticeCategories property

List<LifeEventNoticeCategory> noticeCategories

Implementation

List<LifeEventNoticeCategory> get noticeCategories {
  switch (type) {
    case LifeEventType.nothing:
    case LifeEventType.start:
    case LifeEventType.goal:
      return [LifeEventNoticeCategory.nothing];
    case LifeEventType.selectDirection:
    case LifeEventType.selectDirectionPerDiceRoll:
    case LifeEventType.selectDirectionPerLifeItem:
      return [LifeEventNoticeCategory.selectDirection];
    case LifeEventType.gainLifeItems:
      final params = this as GainLifeItemsParams;
      return [
        for (final item in params.targetItems) itemType2NoticeCategory(item.type),
      ];
    case LifeEventType.gainLifeItemsPerOtherLifeItem:
      // TODO: Handle this case.
      break;
    case LifeEventType.gainLifeItemsPerDiceRoll:
      // TODO: Handle this case.
      break;
    case LifeEventType.gainLifeItemsIfExistOtherLifeItem:
      // TODO: Handle this case.
      break;
    case LifeEventType.gainLifeItemsIfNotExistOtherLifeItem:
      // TODO: Handle this case.
      break;
    case LifeEventType.exchangeLifeItems:
    case LifeEventType.exchangeLifeItemsWithDiceRoll:
      return [LifeEventNoticeCategory.exchange];
    case LifeEventType.loseLifeItems:
      final params = this as LoseLifeItemsParams;
      return [
        for (final item in params.targetItems) itemType2NoticeCategory(item.type),
      ];
    case LifeEventType.loseLifeItemsPerDiceRoll:
      // TODO: Handle this case.
      break;
    case LifeEventType.loseLifeItemsPerOtherLifeItem:
      // TODO: Handle this case.
      break;
    case LifeEventType.loseLifeItemsIfExistOtherLifeItem:
      // TODO: Handle this case.
      break;
    case LifeEventType.loseLifeItemsIfNotExistOtherLifeItem:
      // TODO: Handle this case.
      break;
  }
  return [LifeEventNoticeCategory.nothing];
}