Moin mir ist bewusst das es falsch ist aber könnte mir das jemand erklären? ich will das wenn er die Servergruppe 7 hat das er keine nachricht mehr bekommt
public TSC_OnClientConnect(clientid, nickname[]){TSC_QueryClientData(clientid,CLIENT_SERVER_GROUPS:7,"test");TSC_SendClientMessage(clientid, "Willkommen auf dem German-Reallife Teamspeak!");TSC_SendClientMessage(clientid, "Um dich freizuschalten schreibe mir bitte deinen Ingame-Name!");return 1;}
Moin, der zweite Parameter erwartet nicht die GruppenID sondern ein Wert vom Tag TSC_CLIENT_QUERYDATA. Die 7 musst du entfernen. Der dritte und vierte Parameter sind zum einen die Bezeichnung des Callbacks und die Parameter, die du mit übergeben möchtest. Beispiel wäre:
TSC_QueryClientData(clientid, CLIENT_SERVER_GROUPS, "DeinCallback", "d", playerid);
forward DeinCallback(playerid);
public DeinCallback(playerid) {
new data[128];
TSC_GetQueriedData(data, 128);
return 1;
}
In data befinden sich dann die GruppenIDs, welcher der client besitzt, getrennt durch Kommata. Um die reinen GruppenIDs zu bekommen, brauchst du entweder eine split-Funktion oder du nutzt sscanf2 / je nach dem was beliebt.