Sdk
Namespace PBSLoaderCommonUtils · classe estática · PBSLoaderCommonUtils 2.0.0
public static class SdkCiclo de vida do SDK: versão, fase do jogo e eventos. Tudo roda na thread principal, no quadro da PBSLoaderCommonUtils (que tem prioridade -1000, então os dados já estão atualizados quando o OnUpdate dos outros mods roda). Uma exceção num inscrito não impede os outros de receber o evento.
Propriedades
Seção intitulada “Propriedades”VersaoDoJogo
Seção intitulada “VersaoDoJogo”public static string VersaoDoJogo { get; }Versão do jogo (“307”), ou “não testada” numa versão que o SDK não conhece.
JogoTestado
Seção intitulada “JogoTestado”public static bool JogoTestado { get; }O SDK foi testado nesta versão do jogo (pelo SHA-256 do GameAssembly.dll).
ModoSeguro
Seção intitulada “ModoSeguro”public static bool ModoSeguro { get; }Versão do jogo não testada (e o jogador não liberou): os ganchos não disparam, pedidos de condução e o freio a ar não escrevem no jogo e Avancado devolve null. As fachadas de leitura continuam funcionando. Mods que mexem no jogo por conta própria devem conferir isto.
public static Fase Fase { get; }Fase atual (menu, telas de escolha, carregando a partida, dirigindo).
public static string Cena { get; }Cena ativa da Unity.
Métodos
Seção intitulada “Métodos”public static bool Requer(string versaoMinima, string mod)Confere se o SDK instalado tem pelo menos versaoMinima. Se não tiver, registra o erro, mostra uma falha na tela e retorna false (o mod deve se desligar).
public static bool Seguro(Action a, string onde)Roda a e registra a exceção sem derrubar quem chamou (no máximo a cada 10 s por onde).
Registrar
Seção intitulada “Registrar”public static void Registrar(Exception e, string onde)Registra uma exceção no log, no máximo a cada 10 s por onde (a pilha só na primeira vez).
Eventos
Seção intitulada “Eventos”FaseMudou
Seção intitulada “FaseMudou”public static event Action<Fase> FaseMudouA fase mudou (o argumento é a nova).
CenaCarregou
Seção intitulada “CenaCarregou”public static event Action<string> CenaCarregouUma cena terminou de carregar (inclui as aditivas, como os tiles do mapa).
VeiculoTrocou
Seção intitulada “VeiculoTrocou”public static event Action VeiculoTrocouO veículo do jogador apareceu ou sumiu. Veja Veiculo.Existe.
MapaCarregou
Seção intitulada “MapaCarregou”public static event Action MapaCarregouUm mapa novo começou (o jogador está dirigindo nele). Veja Mapa.
public static event Action QuadroTodo quadro (Update), depois de todos os dados do SDK atualizados.
PassoFisico
Seção intitulada “PassoFisico”public static event Action PassoFisicoTodo passo de física (FixedUpdate), depois do ar comprimido.
QuadroTardio
Seção intitulada “QuadroTardio”public static event Action QuadroTardioTodo quadro, no LateUpdate.
Constantes
Seção intitulada “Constantes”public const string Versao = "2.0.0"Versão da API (semver). Mudança no primeiro número quebra mods.