XemyL
Компетентный
В SA:MP 0.3e есть такой баг с диалогами, что если открыт один диалог, то можно включить другой (без читов и т.п., а просто например ввести команду для открытия какого-либо диалога) тем самым не выбирая ни одно из действий первого диалога. Таким багом можно было обойти важные диалоги в модах, например аренду транспорта и т.п.
На некоторых серверах конечно стоят фиксы на то чтобы нельзя было завести не арендованный транспорт... Но это не удобно, много писать лишнего. А с этим фиксом баг пропадает.
Если у вас стоит защита от подмены диалогов, её можно вырезать. Тут она уже встроена.
Ко всем #define:
В OnPlayerConnect:
В самое начало OnDialogResponse:
Разработчик:
XemyL (Galaktika Team)
На некоторых серверах конечно стоят фиксы на то чтобы нельзя было завести не арендованный транспорт... Но это не удобно, много писать лишнего. А с этим фиксом баг пропадает.
Если у вас стоит защита от подмены диалогов, её можно вырезать. Тут она уже встроена.
Ко всем #define:
PHP:
ShowPlayerDialogFix(playerid, dialogid, style, caption[], info[], button1[], button2[])
{
if(GetPVarInt(playerid, "DialogID") != -2) return 1;
if(dialogid == -1) SetPVarInt(playerid, "DialogID", -2);
SetPVarInt(playerid, "DialogID", dialogid);
return ShowPlayerDialog(playerid, dialogid, style, caption, info, button1, button2);
}
#define ShowPlayerDialog ShowPlayerDialogFix
PHP:
SetPVarInt(playerid, "DialogID", -2);
PHP:
if(GetPVarInt(playerid, "DialogID") != dialogid) return 1;
SetPVarInt(playerid, "DialogID", -2);
XemyL (Galaktika Team)
При копировании материала в другие источники указывайте настоящего разработчика!
Последнее редактирование:
