Riferimento al client Realtime Servers API (C#): Azioni - Amazon GameLift

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

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.