Hey. Ich hab ein Problem mit mein HealhackTest.
Der Admin gibt /hhtest ID/Name ein und die eingegebene ID und der Admin werden zusammen in einem "raum" geportet, wo der Admin den User dann auf HH testen kann. (Der Admin kriegt Waffen ums besser zu testen)
Damit der User jedoch nicht so leicht offline gehen kann, um den Test zu umgehen, habe ich es so gemacht, das pID ein Dialog erhält und egal ob er auf Button 1 oder 2 klickt, das der gleiche Dialog die ganze Zeit kommt.
Jedoch bekommen beide (admin und eingegebener User) den Dialog und beim Admin bleibt der die ganze Zeit, so wie es bei pID eigentlich sein soll und der User kann ganz normal OK klicken und chilln.
Hier mein Code:
ocmd:hhtest(playerid,params[])
{
if(IstInHH[playerid] == 1)
{
SendClientMessage(playerid,ROT,"Der Spieler ist bereits im Healhack Test.");
return 1;
}
else
{
new pID;
if(!IsPlayerAnAdmin(playerid,1))return SendClientMessage(playerid,GRAU,"Für diesen Befehl benötigst du das folgende Adminlevel: {00FF00}Supporter {969696}[{00FF00}1{969696}] oder höher.");
if(sscanf(params,"u",pID))return SendClientMessage(playerid,WEIß,"{FFFFFF}» {FF000F}Syntax: {FFFFFF}/hhtext {969696}[NID/Name]");
if(!IsPlayerConnected(pID)) return SendClientMessage(playerid,GRAU,"Dieser Spieler ist nicht online.");
SetPlayerPos(playerid,1524.3883,-1463.2140,9.5000);
SetPlayerPos(pID,1514.0861,-1463.7603,9.5000);
ShowPlayerDialog(pID,DIALOG_HH,DIALOG_STYLE_MSGBOX,"Healhack Test","Keine Chance","OK","OK");
GivePlayerWeapon(playerid,24,500);
GivePlayerWeapon(playerid,31,500);
TogglePlayerControllable(pID,0);
IstInHH[playerid] = 1;
return 1;
}
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid==DIALOG_HH)
{
new pID;
if(response==0)
{
ShowPlayerDialog(pID,DIALOG_HH,DIALOG_STYLE_MSGBOX,"Healhack Test","Keine Chance","OK","OK");
return 1;
}
if(response==1)
{
ShowPlayerDialog(pID,DIALOG_HH,DIALOG_STYLE_MSGBOX,"Healhack Test","Keine Chance","OK","OK");
return 1;
}
}