I was wondering how I would be able to change how different types interact under certain conditions. More specifically, how I can temporarily remove a type immunity. If I want to have a move be super effective against a type it's usually ineffective against, I can just look at the code for Freeze Dry and change the damage modifier, but that doesn't work against immunities. For example, let's say I want to make Poison type moves super-effective against Steel types while a specific weather condition is active, or I want the Psychic type moves of a Pokemon with a specific ability to do neutral damage to Dark types. How would I code this?