fb:porticula NoPaste
TSNEplay: Server
| Uploader: |  nemored | 
| Datum/Zeit: | 06.01.2011 17:25:23 | 
screen 18
print "SERVER - beenden mit ESC"
' ***** Netzwerkverbindung *****
#include once "tsneplay_v3.bi"
dim shared netzwerk as TSNEPlay_GURUCode
sub TSNEPlay_ConnectionState(byval von as uinteger, byval state as TSNEPlay_State_Enum)
  ' Rückmeldung für einen Spieler über seinen Status
end sub
sub TSNEPlay_Player_Connected(byval id as uinteger, IPA as string, nick as string)
  ' Spieler wurde verbunden; z. B. könnte man da die Anzahl der verbundenen Spieler zählen
end sub
sub TSNEPlay_Player_Disconnected(byval id as uinteger)
  ' Spieler wurde getrennt - Programmunterbrechung?
end sub
sub TSNEPlay_Message(byval von as uinteger, byval zu as uinteger, byval nachricht as string, _
                     byval typ as TSNEPlay_MessageType_Enum)
  ' Ein Spieler hat uns / allen eine Nachricht geschickt
  print "Nachricht von " & von & ": " & nachricht
end sub
sub TSNEPlay_Move(byval von as uinteger, byval zu as uinteger, byval typ as double, _
                  byval x as double, byval y as double, byval r as uinteger)
  ' Spielzug
end sub
sub TSNEPlay_Data(von as uinteger, zu as uinteger, daten as string)
 ' Meldung vom Programmierer
end sub
' Aufbau der Verbindung
netzwerk = TSNEPlay_CreateServer(10, 1234, "Server", "geheimesPasswort", @TSNEPlay_ConnectionState, _
           @TSNEPlay_Player_Connected, @TSNEPlay_Player_Disconnected, @TSNEPlay_Message, @TSNEPlay_Move, _
           @TSNEPlay_Data)
if netzwerk <> TSNEPlay_NoError then print "[ERROR] "; TSNEPlay_Desc_GetGuruCode(netzwerk): end -1
dim as TSNEPlay_State_Enum TState, TStateL
dim tot as double = timer() + 10
do until inkey = chr(27)
  'Den Aktuellen Verbindungsstatus abfragen
  TState = TSNEPlay_Connection_GetState
  if TStateL <> TState then
    TStateL = TState
    select case TState
      case TSNEPlay_State_Disconnected, TSNEPlay_State_Ready: exit do
    end select
  end if
  sleep 1
  if tot < timer() then exit do
loop
'Und nochmal prüfen (falls es ein timeout gab)
TState = TSNEPlay_Connection_GetState
if TState <> TSNEPlay_State_Ready then
  print "Verbindung zum Server fehlgeschlagen!"
  end -1
end if
' Das "Programm"
do
  sleep 1
loop until inkey = chr(27)
	
 Wer ist online?
 Wer ist online? Buchempfehlung
 Buchempfehlung
 FreeBASIC-Chat
 FreeBASIC-Chat
 FreeBASIC-Nachrichten jetzt auch über Twitter erhalten. Follow us!
			FreeBASIC-Nachrichten jetzt auch über Twitter erhalten. Follow us!


