Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Riferimento al client Realtime Servers API (C#): Azioni
Questo API riferimento a C# Realtime Client può aiutarti a preparare il tuo gioco multiplayer da utilizzare con server in tempo reale distribuiti su flotte Amazon. GameLift
-
Operazioni sincrone
Client()
Inizializza un nuovo client per comunicare con il server Realtime e identifica il tipo di connessione da utilizzare.
Sintassi
public Client(ClientConfiguration configuration)
Parametri
- clientConfiguration
-
Dettagli di configurazione che specificano il tipo di connessione client/server. Puoi decidere di chiamare Client() senza questo parametro, ma questo approccio produce una connessione non protetta per impostazione predefinita.
Tipo: ClientConfiguration
Campo obbligatorio: no
Valore restituito
Restituisce un'istanza del client Realtime da utilizzare con la comunicazione con il server Realtime.
Connect()
Richiede una connessione a un processo server che ospita una sessione di gioco.
Sintassi
public ConnectionStatus Connect(string endpoint, int remoteTcpPort, int listenPort, ConnectionToken token)
Parametri
- endpoint
-
DNSnome o indirizzo IP della sessione di gioco a cui connetterti. L'endpoint è specificato in un
GameSession
oggetto, che viene restituito in risposta a una chiamata del client alle GameLift API azioni di AWS SDKAmazon StartGameSessionPlacementCreateGameSession, oppure DescribeGameSessions.Nota
Se il server Realtime è in esecuzione su una flotta con un TLS certificato, è necessario utilizzare il DNS nome.
Tipo: stringa
Campo obbligatorio: sì
- remoteTcpPort
-
Numero di porta per la TCP connessione assegnata alla sessione di gioco. Queste informazioni sono specificate in un
GameSession
oggetto, che viene restituito in risposta a una StartGameSessionPlacementCreateGameSessionDescribeGameSessionrichiesta o.Tipo: integer
Valori validi: da 1900 a 2000.
Campo obbligatorio: sì
- listenPort
-
Numero di porta su cui il client di gioco sta ascoltando i messaggi inviati tramite il UDP canale.
Tipo: integer
Valori validi: da 33400 a 33500.
Campo obbligatorio: sì
- token
-
Informazioni facoltative che identificano il client di gioco che sta eseguendo una richiesta al processo del server.
Tipo: ConnectionToken
Campo obbligatorio: sì
Valore restituito
Restituisce un valore ConnectionStatusenum che indica lo stato della connessione del client.
Disconnect()
Se connesso a una sessione di gioco, disconnette il client di gioco dalla sessione di gioco.
Sintassi
public void Disconnect()
Parametri
Questa operazione non prevede parametri.
Valore restituito
Questo metodo non restituisce nulla.
NewMessage()
Crea un nuovo oggetto di messaggio con un codice operazione specifico. Quando l'oggetto messaggio viene restituito, completare il contenuto del messaggio specificando una destinazione, aggiornando il metodo di distribuzione e aggiungendo un payload di dati in base alle esigenze. Una volta completata questa operazione, inviare il messaggio utilizzando SendMessage()
.
Sintassi
public RTMessage NewMessage(int opCode)
Parametri
- opCode
-
Codice operativo definito dagli sviluppatori che identifica un evento di gioco o un'azione, ad esempio una mossa del giocatore o una notifica del server.
Tipo: integer
Campo obbligatorio: sì
Valore restituito
Restituisce un oggetto RTMessage contenente il codice dell'operazione specificata e il metodo di recapito predefinito. Per impostazione predefinita, il parametro delivery intent è impostato su FAST
.
SendMessage()
Invia un messaggio a un giocatore o a un gruppo utilizzando il metodo di consegna specificato.
Sintassi
public void SendMessage(RTMessage message)
Parametri
- message
-
Oggetto messaggio che specifica il destinatario target, il metodo di distribuzione e il contenuto del messaggio.
Tipo: RTMessage
Campo obbligatorio: sì
Valore restituito
Questo metodo non restituisce nulla.
JoinGroup()
Consente di aggiungere il giocatore come appartenente a un gruppo specificato. I gruppi possono contenere qualsiasi giocatore collegato al gioco. Una volta aggiunto, il giocatore riceve tutti i futuri messaggi inviati al gruppo e può inviare messaggi all'intero gruppo.
Sintassi
public void JoinGroup(int targetGroup)
Parametri
- targetGroup
-
ID univoco che identifica il gruppo a cui aggiungere il giocatore. IDsI gruppi sono definiti dallo sviluppatore.
Tipo: integer
Campo obbligatorio: sì
Valore restituito
Questo metodo non restituisce nulla. Poiché questa richiesta viene inviata utilizzando il metodo di consegna reliable (TCP), una richiesta non riuscita attiva il callback. OnError()
LeaveGroup()
Consente di eliminare il giocatore come appartenente a un gruppo specifico. Se non è più parte del gruppo, il giocatore non riceve i messaggi inviati al gruppo e non può inviare messaggi all'intero gruppo.
Sintassi
public void LeaveGroup(int targetGroup)
Parametri
- targetGroup
-
ID univoco che identifica il gruppo da cui aggiungere il giocatore. I gruppi IDs sono definiti dallo sviluppatore.
Tipo: integer
Campo obbligatorio: sì
Valore restituito
Questo metodo non restituisce nulla. Poiché questa richiesta viene inviata utilizzando il metodo di consegna reliable (TCP), una richiesta non riuscita attiva il callback. OnError()
RequestGroupMembership()
Richiede che un elenco di giocatori nel gruppo specificato venga inviato al client di gioco. Qualsiasi giocatore può richiedere queste informazioni, anche se non è un membro del gruppo. In risposta a questa richiesta, l'elenco di appartenenze viene inviato al client tramite una chiamata OnGroupMembershipUpdated().
Sintassi
public void RequestGroupMembership(int targetGroup)
Parametri
- targetGroup
-
ID univoco che identifica il gruppo per ottenere le informazioni per la sottoscrizione. I gruppi IDs sono definiti dallo sviluppatore.
Tipo: integer
Campo obbligatorio: sì
Valore restituito
Questo metodo non restituisce nulla.