Type löscht sich von selbst mit TCP?[gelöst]
Übersicht

SplitfatalBetreff: Type löscht sich von selbst mit TCP?[gelöst] |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Ja als erstes Sorry wegen der Überschrift mir ist da aber nicht wirklich was sinnvolles eingefallen ^^
So als erstes mal das Problem ^^ Also ich habe ne art Brettspiel wo man Abwechselnd nen weißen und nen schwarzen Stein setzen muss. Nun habe ich ein Prog für den Schwarzen Stein Spieler gemacht (Server) und eins für den weißen Stein Spieler (Client) So nun klapt alles wunderbar. Der Schwarze Spieler (server) fängt an und setzt sein Stein (kommt auch Prima beim Weißen(client) an. ) So nun Setzt der Weiße Spieler seinen Stein und das kommt auch Prima beim Schwarzen (Server) an. Nun will der Schwarze wieder setzen und eine fehlermeldung erscheind. Und zwar sagt mir der Debuger "Object does not exist" und zeigt mir Makiert diese stelle: Zitat: WriteLine (c\stream), Nx
Nun frage ich mich wieso es c\stream auf einmal nicht mehr gibt? Habe ich es nicht richtig abgespeichert? Oder habe ich irgendwas drin das es wieder Löscht beim zweiten (Einmal hats ja geklappt) Durchlauf? Nja ist sicher nur ein geringes Problem aber ich finds einfach nicht. Und das bei so wenig Code (der mit TCP zu tun hat) Kann mir da vielleicht jemand weiter helfen? So nun noch die Codes: Server: (Stark gekürzt aber alles was mit TCP zu tun hat is drin ^^ Zitat: Type clients Field stream End Type Graphics3D 800,600,32,0 Global Client=0 Server=CreateTCPServer (8080) While Not KeyDown(1) Client = AcceptTCPStream(Server) If client>0 ; c.clients=New clients DebugLog "neuer Client gefunden" c\stream=client Client=0 EndIf ;;;;;;;;Abwechselnt setzen;;;;;;;;;;;; If Werzug=1 Then If EntityName$ (OBID) = "Spielbrett" And MouseHit (1) Then SS (Nx,Nz) werzug=wdran WriteLine (c\stream), Nx WriteLine (c\stream), Nz EndIf Else For c.clients=Each clients If ReadAvail(c\stream)>0 Then WNx=ReadLine(c\stream) DebugLog "Gelesen: " + WNx WNz=ReadLine(c\stream) DebugLog "Gelesen: " + WNz WS (WNx,WNz) Werzug=Sdran EndIf Next EndIf So und hier noch der Client: Zitat: Graphics3D 800,600,32,0
strStream=OpenTCPStream ("127.0.0.1", 8080) While Not KeyDown(1) ;;;;;;;;;;;Abwechselnt setzen;;;;;;;;;;;;;;;; If Werzug=0 Then If EntityName$ (OBID) = "Sielebrett" And MouseHit (1) Then WS (Nx,Nz) werzug=Sdran WriteLine strStream, Nx WriteLine strStream, Nz Else If ReadAvail(strstream)>0 Then SNx=ReadLine(strstream) SNz=ReadLine(strstream) SS (SNx,SNz) Werzug=Wdran EndIf EndIf EDIT: im Irc (Chat) wurde mir geholfen ![]() Das Problem lag nur daran das man bei jedem schreiben und lesen als Server jeden Type eintrag durchgehen muss. Also stat nur: Code: [AUSKLAPPEN] WriteLine (c\stream), Nx
WriteLine (c\stream), Nz Muss: Code: [AUSKLAPPEN] For c.clients=Each clients
WriteLine (c\stream), 1 WriteLine (c\stream), Nx WriteLine (c\stream), Nz |
||
- Zuletzt bearbeitet von Splitfatal am Mi, Dez 13, 2006 1:13, insgesamt einmal bearbeitet
![]() |
shure_kyuNewsposter |
![]() Antworten mit Zitat ![]() |
---|---|---|
jo gern geschehen ![]() |
||
_______//¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯\________ ◄Blitz 3D/MAX • PC - 2x 3.16Ghz, 4GB-Ram, ATi HD 4890 1024MB• win7 • site$ Rush2Play ° My-Htc.de► ¯¯¯¯¯¯¯\__________________________________________________________________________//¯¯¯¯¯¯¯¯ BBP-RSS FEED Halt dich auf dem laufenden! (C)Shure_kyu |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group