private void SetTradebackStatusInitial() { if (pkm is PK1 pk1) { Legal.SetTradebackStatusRBY(pk1); return; } if (pkm.Format == 2 || pkm.VC2) { // Check for impossible tradeback scenarios bool g2only = !pkm.CanInhabitGen1(); pkm.TradebackStatus = g2only ? TradebackType.Gen2_NotTradeback : TradebackType.Any; return; } // VC2 is released, we can assume it will be TradebackType.Any. // Is impossible to differentiate a VC1 pokemon traded to Gen7 after VC2 is available. // Met Date cannot be used definitively as the player can change their system clock. pkm.TradebackStatus = TradebackType.Any; }