Hallo,
bin mir jetzt nicht sicher, wie ich das Problem beschreibe, deswegen poste ich auch erstmal keine Codeschnipsel (außer auf Anfrage).
Ich versuchs einfach mal zu erklären:
Ich habe bei OnPlayerConnect eine Abfrage via mySQL, ob der connectende User bereits existiert oder nicht, falls nicht -> Registration.
Der Spieler registriert sich, wird dann an einem von mir festgelegten Ort durch SetSpawnInfo + SpawnPlayer in LS gespawned, gefreezed und bekommt einen Dialog zu sehen. Sobald er den Dialog schließt, wird er unfreezed und sollte rumlaufen können wie er lustig ist.
So weit so gut, scheinbar scheint das aber nur in 50% der Fälle zu funktionieren (wenn ich länger mit der Registrationseingabe warte oder so, keine Ahnung?)
In den anderen 50% bekommt der Spieler zwar auch seinen Dialog vor die Nase gesetzt, wird aber, sobald er diesen schließt, nicht unfreezed und das Script scheint einfach nicht weiter zu gehen oO
Da ich nicht wirklich ne Vorstellung habe, woran das liegen könnte, poste ich einfach mal nur den OnDialogResponse-Teil, falls mehr benötigt wird, bescheid sagen 
if (dialogid == D_REG_1) {
if (!response) return Kick(playerid);
SpawnPlayer(playerid);
SetCameraBehindPlayer(playerid);
TogglePlayerControllable(playerid, 0);
new query[256], pName[MAX_PLAYER_NAME];
GetPlayerName(playerid, pName, sizeof(pName));
format(query, sizeof(query), "INSERT INTO `samp_list_users` (`userName`, `userPass`, `userSkin`, `userLevel`, `userMoney`, `userBank`, `userBankMoney`) VALUES ('%s', '%s', '78', '1', '1000000', '0', '0')", pName, inputtext);
mysql_query(query);
SetPVarInt(playerid, "userLogged", 1);
SetTimerEx("introStep", 5000, false, "dd", playerid, 1);
}
Der Dialog, der nach dem Freeze erscheint und geschlossen wird:
else if (dialogid == D_QST_INF) {
if (GetPVarInt(playerid, "questId") == 1 && GetPVarInt(playerid, "stepId") == 2) {
TogglePlayerControllable(playerid, 1);
if (GetPVarInt(playerid, "introGotMoney") != 1) {
SetPVarInt(playerid, "userMoney", 1500000);
GivePlayerMoney(playerid, 1500000);
SetPVarInt(playerid, "introGotMoney", 1);
}
SetCameraBehindPlayer(playerid);
introStep(playerid, 2);
}
}