Files
MBMNET-APP/source/frdswitch.h
T
2026-10-18 17:05:44 +02:00

28 lines
1.2 KiB
C

#pragma once
#include <3ds/types.h>
#include <stddef.h>
#define FRIEND_ACCOUNT_NINTENDO 1
#define FRIEND_ACCOUNT_MBMNET 3 // 2 benutzt Pretendos Nimbus
// Kennungen (PIDs), die MBMNET für Freundekonten vergibt (FRIEND_PID_BASE in db.js)
#define MBMNET_PID_FIRST 1900000001u
#define MBMNET_PID_LAST 1999999999u
Result frdswitch_init(void);
void frdswitch_exit(void);
// Geladenes Freundekonto (1 = Nintendo, 3 = MBMNET, 0 = unbekannt)
u8 frdswitch_current(void);
// Ist im Konto-Platz dieses Freundekontos eine ID verknüpft? (Name in id)
bool frdswitch_slot_linked(u8 friendAccount, char *id, size_t len);
// Auf ein Freundekonto umschalten (MBMNET: beim ersten Mal anlegen, *created = true).
// Danach muss der 3DS neu starten. false + msg bei Fehler.
bool frdswitch_to(u8 target, bool *created, char *msg, size_t msglen);
// Kennung des geladenen Freundekontos (0 = noch keine)
u32 frdswitch_my_pid(void);
bool frdswitch_pid_is_mbmnet(u32 pid);
// MBMNET-Freundekonto neu anlegen (hat eine fremde Kennung). Danach Neustart.
bool frdswitch_recreate_mbmnet(char *msg, size_t msglen);
// Konto-Platz (act) eines Freundekontos, 0 = keiner
u8 frdswitch_slot_of(u8 friendAccount);