praegune kellaaeg 20.06.2025 14:31:44
|
Hinnavaatlus
:: Foorum
:: Uudised
:: Ärifoorumid
:: HV F1 ennustusvõistlus
:: Pangalink
:: Telekavad
:: HV toote otsing
|
|
autor |
|
Nokia
Serverid.ee

liitunud: 06.10.2004
|
13.03.2010 14:21:25
C#: A2S_PLAYER Counter-Strike Query probleem, ei sa kõiki andmeid loetud. |
|
|
Tere,
Nimelt probleem selline, et kui serveris on näiteks 6 inimest, siis ilmub ainult nimekirja 3, kuigi kõik 6-e andmed saadakse kätte.
Query kohta siit info võetud siis: http://developer.valvesoftware.com/wiki/Server_queries#A2S_PLAYER
Nende 3 isiku kohta serverit tulev info on täiesti korrektne (score,time,name), aga teised 3 on kuskil kaduma läinud ja aru ei sa kuhu nad kaovad.
Täpsemalt koodijupist siis:
private SourceQuery ParsePlayers(byte[] resp)
{
SourceQuery ret = new SourceQuery();
var Players = new ListView();
ret.Type = resp[4];
ret.NumPlayers = resp[5];
int NumPlayers = ret.NumPlayers*2;
int pNR = 0;
int Offset = 6;
for (int i = 0; i < resp[5]; i++)
{
var PlayerItem = new ListViewItem();
PlayerItem.Name = "NR";
PlayerItem.Text = resp[Offset++].ToString();
var Name = new System.Windows.Forms.ListViewItem.ListViewSubItem();
Name.Name = "Score";
Name.Text = GetString(resp, Offset, resp.Length);
PlayerItem.SubItems.Add(Name);
Offset += Name.Text.Length + 1;
var Score = new System.Windows.Forms.ListViewItem.ListViewSubItem();
Score.Name = "Score";
Score.Text = BitConverter.ToInt32(resp, Offset).ToString();
Offset += 4;
PlayerItem.SubItems.Add(Score);
var PlayTime = new System.Windows.Forms.ListViewItem.ListViewSubItem();
PlayTime.Name = "Time";
PlayTime.Text = new TimeSpan(0, 0, (int)BitConverter.ToSingle(resp, Offset)).ToString();
Offset += 4;
PlayerItem.SubItems.Add(PlayTime);
pNR += 1;
Players.Items.Add(PlayerItem);
}
} |
Vastus mis serverist tuleb (Wiresharkiga püüdsin kinni siis)
....U........D..HDET #kz-baltic......N.D.T6ts........D.Nc-T > Mblwke.wOw~[Lj ReCcc 242.....N.{D.2rgePaukugeMaNoob!........D.G.<3........D.juku.......mD.Cru$her.....Q0.D.Glennu (^.^') Steamer ^^.....@..A.Ainsuuu ^^........C.iRoawR........C.kar7i......D.C.K0nKs.-wTf-........B |
Ehk oskab keegi öelda, kuda asja lahendada? Ise juba mitu päeva pusinud ja ei leia korrektset lahendust veel siiamaani, kui lisada 2 for tsükklit, siis tekib õige number mängijaid nimekirja, aga need pooled mis juurde tulevad, nendel on jällegi kõik info puudu siis.
Tänud
EDIT: Hetkel ta loebki täpselt pool alati, kui on 4 mängijat, siis kuvab 2, 12 =6 jne..
EDIT: Sain korda lõpuks Tänud anyways.
_________________ Web3 | ERC721A |
|
Kommentaarid: 44 loe/lisa |
Kasutajad arvavad: |
   |
:: |
1 :: |
0 :: |
43 |
|
tagasi üles |
|
 |
|
lisa lemmikuks |
|
|
sa ei või postitada uusi teemasid siia foorumisse sa ei või vastata selle foorumi teemadele sa ei või muuta oma postitusi selles foorumis sa ei või kustutada oma postitusi selles foorumis sa ei või vastata küsitlustele selles foorumis sa ei saa lisada manuseid selles foorumis sa võid manuseid alla laadida selles foorumis
|
|
Hinnavaatlus ei vastuta foorumis tehtud postituste eest.
|