Los datos del equipo pokémon se encuentran en un offset concreto de la RAM (que depende del juego que uses) y que se puede modificar. Algunas veces más fácil que otras. En este caso, bastaría con un simple WBTO para modificar el byte que indica si el pokémon tiene pokerus y por cuánto tiempo.
Dicho byte se encuentra en la posición 0x55 y lo puedes localizar de la siguiente forma:
Party_offset + (Slot x 0x64) + 0x55
El primer pokémon (slot) es el 0x0 y el sexto el 0x5. Respecto al Party_offset, suponga que usas FR, en cuyo caso es 0x02024284.
Dicho esto, puedes hacer que un pokémon del equipo contraiga el pokerus a través de un script o a través de una rutina, lo que quiere decir que lo puedes hacer en cualquier momento, ya sea en juego libre, en una batalla, a través de un objeto, etc.