Status- Besucher
- Heute:
- 0
- Gestern:
- 0
- Gesamt:
- 0
-
Benutzer & Gäste
337 Benutzer registriert, davon online: 93 Gäste
|
|
|
| 2525 Beiträge & 393 Themen in 15 Foren |
Keine neuen Beiträge, seit Ihrem letzten Besuch am 19.06.2026 - 07:09.
|
|
|
|
|
|
| Autor |
|
|
|
|
|
|
Wie gesagt, ich werde meinen WAC-Code zur Teamerkennung preisgeben:
Erstmal eine Statusanzeige, um zu sehen was passiert.
text("-------------------------")
text#("Spieler anwesend",humans) // Statusanzeige
text("-------------------------")
text#("Slot 1 - PlayerID = ",v30)
text#("Slot 1 - TeamID = ",v40)
text("-------------------------")
text#("Slot 2 - PlayerID = ",v31)
text#("Slot 2 - TeamID = ",v41)
text("-------------------------")
text#("Tote blaue Spieler = ",v60)
text#("Tote rote Spieler = ",v61)
text("-------------------------")
text#("aktive blaue Spieler = ",v62)
text#("aktive rote Spieler = ",v63)
text("-------------------------")
text(".")
Als erstes werden alle virtuellen Slots ( entsprechen nicht denen des Servers ) überprüft und zurückgesetzt.
if (v50 == 0) and (v30 != 99) then // Slot unbelegt, aber Spieler zugewiesen
if v40 == 1 then dec(v62) endif // -1 blauer Spieler
if v40 == 2 then dec(v63) endif // -1 roter Spieler
v30 = 99 // PlayerID zurücksetzen
v40 = 99 // TeamID zurücksetzen
else
v50 = 0
endif
Mit der Variable v50 (Spieler 1) bis v59 (Spieler 10) überprüfe ich, welche Slots belegt sind.
In der Variable v30 (Spieler 1) bis v39 (Spieler 10) speicher ich die SpielerID aus der "player"-Variable.
PLOOP
if SSNnearSSN(player,SSN_blauer_Spawnpoint,10) or SSNnearSSN(player,SSN_roter_Spawnpoint,10) then
v201 = 0
Hier beginnt die Überprüfung der Spieler.
Wenn ein Spieler "player" 10 Meter in der roten Zone "SSN_rote_Zone" oder 10 Meter in der blauen Zone "SSN_blaue_Zone" ist, wird der Spieler überprüft, ob dieser in den virtuellen Slots gespeichert wurde.
if (player == v30) or (player == v31) or (player == v32) or (player == v33) then v201 = 1 endif
if v201 == 0 then // neuer Spieler vorhanden
Wenn in einen der Variablen v30 bis v39 seine SpielerID "player" gespeichert ist, wird keine Slotzuweisung benötigt.
Wenn es doch ein neuer Spieler ist, dann wird folgendes ausgeführt.
if (v30 == 99) and (v201 == 0) then // Slot unbelegt und neuer Spieler nicht zugewiesen
V30 = player // SpielerID zuweisen
v201 = 1 // neuer Spieler
if SSNnearSSN(player,SSN_blauer_Spawnpoint,10) then // Spieler am blauen Startpunkt
v40 = 1 // blaues Team
inc(v62) // +1 blauer Spieler
endif
if SSNnearSSN(player,SSN_roter_Spawnpoint,10) then // Spieler am roten Startpunkt
v40 = 2 // rotes Team
inc(v63) // +1 roter Spieler
endif
endif
endif
Diese obige Bereich wird für jeden virtuellen Slot einmal benötigt, entsprechend die Variablen v30 (v30 bis v39) und v40 (v40 bis v49) angepaßt.
Mit v200 = 1 lege ich fest, das der neue Spieler einem freien Slot zugewiesen wurde,
nun wird überprüft, in welcher Zone der Spieler aufgespawnt ist, entsprechend den Wert 1 (blaues Team) bzw. 2 (rotes Team) in die Variable v40 (v40 bis v49) geschrieben und den Zähler für blaue Spieler (v62) bzw. rote Spieler (v63) hochgezählt.
endif
endif
if (player == v30) then
v50 = 1 // Slot ist belegt
if (v40 == 1) and ssndead(player) then inc(v60) endif // blauer Spieler ist tot
if (v40 == 2) and ssndead(player) then inc(v61) endif // roter Spieler ist tot
endif
END
Hier wird festgelegt, welcher Slot (v50 bis v59) von einem Spieler belegt wurde.
Zudem wird überprüft, ob der Spieler evtl tot ist, dann wird entsprechend der teamzugehörigkeit die VAriable v60 bzw. v61 hochgezählt.
Soweit ist dir Teamzuweisung beendet.
Anwenden kann man sie zum Beispiel mit folgender Abfrage.
if (player == v30) and (v40 == 2) then SSNaddHP(player,-20) endif // Slot 1 = SpielerID und rotes Team ?
bzw.
if (player == v30) and (v40 == 1) then SSNaddHP(player,-20) endif // Slot 1 = SpielerID und blaues Team ?
Entsprict die SpielerID (v30 bis v39) dem aktuellen Spieler (player) und der Teamzugehörigkeit (v40 bis v49)
wird dem Spieler 20 Hitpoints abgezogen.
Die Texte "SSN_blauer_Spawnpoint" und "SSN_roter_Spawnpoint" müssen natürlich mit den wirklichen SSN-Numbers der Objekte ersetzt werden.
Auf Wunsch starte ich auch einen Server mit meiner Beispiel-Map, um zu zeigen, das es auch funktioniert.
Aber leider nur bis zu den getesteten 40 Slots und einem Spieler !!!
Auf der Karte dürfen auch keine Spawnpoints genutzt werden , die von einem anderen Team übernommen werden können.
Eraser-EMC2-
PS: Jetzt würde ich gerne den nicht funktionierenden WAC-Code der NOTAPs sehen.
Vorallem, wenn dieser nicht funktioniert, warum dann die heimlichtuerei.
EDIT:
Wenn jemand die Funktion meines WAC-Codes in eigene Maps einbaut, verlange ich, das die MAP auch öffentlich downloadbar ist.
Nach dem Motte von der JO-Community für die JO-Community.
Dieser Beitrag wurde 1 mal editiert, zuletzt von Eraser-EMC2- am 20.04.2007 - 21:14.
|
| Beitrag vom 20.04.2007 - 21:02 |
|
| Beiträge
| Autor
| Datum
|
|
|
Eraser-EMC2- |
17.04.2007 - 19:49 |
|
|
Eraser-EMC2- |
20.04.2007 - 21:02 |
|
|
MaBöse NOTAP |
21.04.2007 - 01:53 |
|
|
Eraser-EMC2- |
21.04.2007 - 12:02 |
|
|
KF DrAgon |
21.04.2007 - 12:39 |
|
|
Eraser-EMC2- |
21.04.2007 - 13:16 |
|
|
MaBöse NOTAP |
21.04.2007 - 14:20 |
|
|
KF DrAgon |
21.04.2007 - 14:20 |
|
|
KF DrAgon |
21.04.2007 - 14:32 |
|
|
KF DrAgon |
21.04.2007 - 14:49 |
|
|
OldMan |
21.04.2007 - 14:58 |
|
|
Eraser-EMC2- |
21.04.2007 - 15:52 |
|
|