on_server

Der Event wird ausgeführt, wenn der Server eine Nachricht von einem Klienten erhält. Die Variable event_type wird auf den Typ der Nachricht gesetzt. Enthält die Botschaft einen String, wird ein Pointer des empfangenen Strings als Parameter an die Funktion übergeben.

Bemerkungen:

Es gibt 5 Arten von Server-Events:
EVENT_JOIN Ein Klient hat sich eingewählt. Der Klientenname player_name wird als erstes Argument übergeben,  LC  die Klienten-Identifikationsnummer als zweites Argument.
EVENT_LEAVE

Ein Klient hat sie Session verlassen. Der Klientenname player_name wird als erstes Argument übergeben,  LC  die Klienten-Identifikationsnummer als zweites Argument.

EVENT_STRING

Ein Klient hat per send_string_to einen String an den Server upgedated. Der String-Pointer wird als erstes Argument übergeben,  LC  die Klientennummer als zweites Argument.

EVENT_VAR

Ein Klient hat per send_var_to eine Variable oder ein Struct an den Server upgedatet.  LC  Die Variablenadresse wird als erstes Argument übergeben, die Klientennummer als zweites Argument.

EVENT_DATA

 LC  Ein Klient hat per send_data_to einen Datenbuffer an den Server gesandt. Die Bufferadresse wird als erstes Argument übergeben, die Klientennummer als zweites Argument. Der Buffer ist nur für die Dauer des ersten Frames der Eventfunktion gültig und wird anschliessend desallokiert.

Beispiel (lite-C):

TEXT* tJoin = { string(""); flags = SHOW; }

function on_server_event(void* str,var id) // automatically assigned to on_server
{
  if (event_type == EVENT_JOIN)
 	{
 	  str_cpy((tJoin.pstring)[0],str); // contains the client's name
 	  str_cat((tJoin.pstring)[0]," has just joined!");
 	}
	else if (event_type == EVENT_LEAVE)
	{
 	  str_cpy((tJoin.pstring)[0],str); 
 	  str_cat((tJoin.pstring)[0]," has just left!");
	}
	else if ((event_type == EVENT_STRING) && (str == &mystring)) 
	{
 	  str_cpy((tJoin.pstring)[0],"STRING mystring was just changed!"); 
	}
}

Siehe auch:

on_client, send_string_to, send_var_to, send_data_to,str_for_id, player_name

► Aktuelle Version Online