func bool Require(bool expression); func bool RequireEquals(int expected, int actual); func bool RequireEquals(const string &in expected, const string &in actual); func Party@ CreateSimpleParty(const array&in species, uint8 level); func Battle@ CreateSimpleBattle(uint seed, const constString&in species1, const constString&in species2, uint8 level); func Battle@ CreateSimpleBattle(uint seed, Party@ p1, Party@ p2); func ref@ CreateMoveScript(const constString&in name); func ExecutingMove@ CreateExecutingMove(const constString&in moveName, Pokemon@ user, Pokemon@ target); func MoveTurnChoice@ CreateMoveTurnChoice(const constString&in moveName, Pokemon@ user, uint8 targetSide, uint8 target); type Pokemon { bool UseMove(const constString&in move, uint8 side, uint8 index); bool PassTurn(); bool LearnMove(const constString&in move); }