From fedbc2970110b1651340a999a68ef6b8cd945457 Mon Sep 17 00:00:00 2001 From: Christian Emmer Date: Sun, 23 Oct 2022 15:41:29 -0700 Subject: [PATCH] Feature: treat MIA as non-retail (#132) --- docs/rom-filtering.md | 7 +++++++ src/types/logiqx/game.ts | 7 ++++++- 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/docs/rom-filtering.md b/docs/rom-filtering.md index a67983e42..e00170a09 100644 --- a/docs/rom-filtering.md +++ b/docs/rom-filtering.md @@ -112,6 +112,13 @@ Games that are not any of the below options, and are not: Bugs Bunny - Crazy Castle 3 (J) [C][f2] ``` +- **Non-public "MIA"**: games that contain `[MIA]` in their name, e.g.: + + ```text + [MIA] Better Dead Than Alien (Europe) + [MIA] Billiards Simulator (Europe) (En,Fr,De) + ``` + - **Overdumps**: games that contain `[o]` or `[o#]` in their name, e.g.: ```text diff --git a/src/types/logiqx/game.ts b/src/types/logiqx/game.ts index de778de7e..981a4e992 100644 --- a/src/types/logiqx/game.ts +++ b/src/types/logiqx/game.ts @@ -127,7 +127,7 @@ export default class Game implements GameProps { } isBios(): boolean { - return this.bios === 'yes' || this.name.indexOf('[BIOS]') !== -1; + return this.bios === 'yes' || this.name.match(/\[BIOS\]/i) !== null; } getReleases(): Release[] { @@ -186,6 +186,10 @@ export default class Game implements GameProps { return this.name.match(/\(Homebrew[a-z0-9. ]*\)/i) !== null; } + isMIA(): boolean { + return this.name.match(/\[MIA\]/i) !== null; + } + isOverdump(): boolean { return this.name.match(/\[o[0-9]*\]/) !== null; } @@ -248,6 +252,7 @@ export default class Game implements GameProps { && !this.isDemo() && !this.isFixed() && !this.isHomebrew() + && !this.isMIA() && !this.isOverdump() && !this.isPendingDump() && !this.isPirated()