Für jeden Spieler ein Objekt erstellen
Übersicht

![]() |
faggieBetreff: Für jeden Spieler ein Objekt erstellen |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hallo!
Ich versuche mich gerade an einem kleinen Multiplayerspiel und habe schon mein erstes Problem: Wenn ein Spieler auf einem Server neu gekommen ist, soll ein Objekt erstellt werden, in dem alle Informationen über den Spieler gespeichert werden. Die Struktur: Code: [AUSKLAPPEN] Type Spieler
Field Name:String Field x:Int Field y:Int Field Winkel:Int End Type Wie gesagt, jetzt hat sich ein neuer Spieler verbunden und nun sollte irgendwie soetwas passieren: Code: [AUSKLAPPEN] Local SpielerNR???:Spieler = New Spieler
Name.SpielerNR???="Hans" x.SpielerNR???=100 y.SpielerNR???=100 Winkel.SpielerNR???=0 Und genau an der Stelle der "???" liegt mein Problem. Wie soll ich die Variable nennen? Jeder Spieler muss ja eine eindeutige Variable haben, bzw. eine eindeutige ID zugeordnet bekommen. Wie könnte ich das am besten lösen? Gruß, faggie |
||
![]() |
Jolinah |
![]() Antworten mit Zitat ![]() |
---|---|---|
Du könntest die Spieler auch einfach in eine Liste einfügen:
Code: [AUSKLAPPEN] Local spieler_liste:TList = new TList ... Type Spieler Field ID:Int Field Name:String ... End Type 'Erstellen des Objekts Local s:Spieler = new Spieler s.ID = spieler.Count() s.Name = "WasAuchImmer" 'In die Liste einfügen spieler_liste.AddLast(s) ... 'Alle Spieler durchgehen For s:Spieler = EachIn spieler_liste Print s.Name Next So ungefähr ![]() PS: Du hast da übrigens was verdreht, Name.SpielerNR??? wäre SpielerNR???.Name ![]() Edit: Und wenn du dann einen Spieler anhand der ID suchst könntest du die Liste in ein Array konvertieren und per Index ansprechen: Code: [AUSKLAPPEN] Local s:Spieler = Spieler(spieler_liste.ToArray())[ID]
|
||
Dreamora |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Wenn du index basierenden Zugriff willst (Spieler???), dann musst du arrays benutzen.
BlitzMax ist keine Scriptsprache, weswegen es nicht möglich ist via Loops etc variablennamen "zusammenzubasteln", sondern nur via Array |
||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group