An alle Clients senden!?!
Übersicht

![]() |
TankbusterBetreff: An alle Clients senden!?! |
![]() Antworten mit Zitat ![]() |
---|---|---|
Dieser Server soll die Daten, die ein Client schickt, an alle anderen Clients schicken! Wenn ein Client dem Server zum ersten mal etwas schickt, wird seine ip (P\recv) gespeichert, und am Ende sendet der Server an alle Clients die Nachricht, die er zuvor erhalten hat!
Kleines Problem: Das funktioniert allerdings nicht ![]() Zitat: Type player
Field alles!!!xD End Type Graphics 600,600 stream = CreateUDPStream(8000) While Not KeyHit(1) ip= RecvUDPMsg(stream) If ip<>0 Then While ReadAvail(stream) byte$=ReadString$(stream) ;(byte$="Play Spieler2")<--das stimmt =) Print byte$ If nwort$(byte$, 1)="Play";erstes wort(Play Name$=nwort$(byte$, 2);zweites wort(Spieler For P.player=Each player If Name$<> P\id$ Then P.player=New player P\id$=Name$ P\recv=ip EndIf Next EndIf For P.player=Each player Print DottedIP(P\recv) WriteString(stream,byte$) SendUDPMsg stream,P\recv,800 Next Wend EndIf Flip Wend Function nwort$(byte$, wort) If wort < 1 Then Return "" trenn$ = " " ;<-- Trennzeichen byte$ = byte$ + trenn$ w = 0 pos = 1 While w < wort And pos > 0 While Mid$(byte$, pos, 1) = trenn$ pos = pos + 1 Wend x = pos y = Instr(byte$, trenn$, pos) pos = y w = w + 1 Wend Return Mid$(byte$, x, y - x) End Function Function INT_IP(IP$) a1=Int(Left(IP$,Instr(IP$,".")-1)):IP$=Right(IP$,Len(IP$)-Instr(IP$,".")) a2=Int(Left(IP$,Instr(IP$,".")-1)):IP$=Right(IP$,Len(IP$)-Instr(IP$,".")) a3=Int(Left(IP$,Instr(IP$,".")-1)):IP$=Right(IP$,Len(IP$)-Instr(IP$,".")) a4=Int(IP$) Return (a1 Shl 24) + (a2 Shl 16) + (a3 Shl 8 ) +a4 End Function |
||
Twitter
Download Jewel Snake! Windows|Android |
Dreamora |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Du hast alle deine Player schon, erzeugst jedoch unzählige neue bei jedem Connect. (du müsstest einfach drüber gehen über alle und sehen ob der name vorkam und wenn nicht 1 player erzeugen, nicht bei jedem spieler <> dem neuen einen, weil sonst wird jeder neue n-1 mal eingetragen wobei n = seine eigene nummer bei der anzahl spieler die geloggt sind) | ||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
![]() |
Tankbuster |
![]() Antworten mit Zitat ![]() |
---|---|---|
Oh,... danke,Dreamora!
Ich veränder es mal ein bisschen!*moment* |
||
Twitter
Download Jewel Snake! Windows|Android |
![]() |
Tankbuster |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ich weiß zwar, wie du's gemeint hast, aber wenn ich das in den Code einbaue, brauche ich ja für jede "P\id$" eine neue Variable, die ich dann mit dem "Name$" vergleiche. Und wenn ich nur 5 Variablen mache, und es connecten mehr als 5 Spieler dadrauf,dann bekommen die neuen spieler keine Nachrichten! | ||
Twitter
Download Jewel Snake! Windows|Android |
Dreamora |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Eine ID ist normalerweise eine eindeutige Integer Zahl
Hab ich wohl übersehen das du da sonstige Dinge reinspeicherst die eigentlich nur beim "login" transferiert werden und danach eigentlich nimmer (ID -> int = 4 byte. String: X byte) |
||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
![]() |
Tankbuster |
![]() Antworten mit Zitat ![]() |
---|---|---|
Die ID ist in dem Fall der Name des Spielers (Beispiel=Spieler2)! | ||
Twitter
Download Jewel Snake! Windows|Android |
Dreamora |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Und was ist deine eindeutige ID welche der Spieler später bei seinen Paketen reinhängt um sich zu "identifizieren"? | ||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
![]() |
Tankbuster |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ich könnte doch die IP adresse nehmen, oder etwa nicht? | ||
Twitter
Download Jewel Snake! Windows|Android |
![]() |
5k41 |
![]() Antworten mit Zitat ![]() |
---|---|---|
nimm doch einfach eine Fortlaufende Nummer, von 1 beginnend, also machst du noch ein Field id und noch eins name$ in name speicherst du das, was du bis jetzt in id speicherst und in id speicherst du eine variable, die du danach inkrementierst!
MfG |
||
Projekte:
For a better World - Gesellschaftsspiel ( 100%) User posted image |
![]() |
Tankbuster |
![]() Antworten mit Zitat ![]() |
---|---|---|
Stimmt! so könnte ich das auch machen!
Ich glaub, jetzt weiß ich genau was ich machen muss. Danke an euch! |
||
Twitter
Download Jewel Snake! Windows|Android |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group