-
Sziasztok!
Akárhogyan próbálgattam nem akar a parancsra megjelenni a dialog mindig csak azt írja ki, hogy nem vagy kameraszobába, ha meg ott vagyok akkor nem reagál semmit a parancsra. :(
Segítene valaki kijavítani ?
if(strcmp(cmd, \"/kamera\", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(IsPlayerInRangeOfPoint(playerid,2.0,211.6799,1812.2871,21.8594) || IsPlayerInRangeOfPoint(playerid,1.0,450.7513,-88.6526,1174.3534) || IsPlayerInRangeOfPoint(playerid,1.0,1816.1584,-1562.8831,1636.9736))
{
{
ShowPlayerDialog(playerid, 112233, DIALOG_STYLE_LIST, \"Városi Kamerák\",\"ErsteBank Bejárat\",\"Mehet\",\"Mégsem\");
}
return 1;
}
else
{
SendClientMessage(playerid, COLOR_GRAD2, \"Nem vagy kamera szobában!\");
}
}
else
{
SendClientMessage(playerid, COLOR_GRAD2, \"Nem vagy bejelentkezve!\");
}
}
-
if(strcmp(cmd, \"/kamera\", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(IsPlayerInRangeOfPoint(playerid,5.0,211.6799,1812.2871,21.8594) || IsPlayerInRangeOfPoint(playerid,5.0,450.7513,-88.6526,1174.3534) || IsPlayerInRangeOfPoint(playerid,5.0,1816.1584,-1562.8831,1636.9736))
{
{
ShowPlayerDialog(playerid, 1123, DIALOG_STYLE_LIST, \"Városi Kamerák\",\"ErsteBank Bejárat\",\"Mehet\",\"Mégsem\");
}
return 1;
}
else
{
SendClientMessage(playerid, COLOR_GRAD2, \"Nem vagy kamera szobában!\");
}
}
else
{
SendClientMessage(playerid, COLOR_GRAD2, \"Nem vagy bejelentkezve!\");
}
return 1;
}
Ne használj ilyen nagy Dialogid-t.
-
Nos, ha már megírtam, leírom, bár látom, már válaszoltak. Én a helyedben tömbösíteném a dolgot, így én biztosabbra venném a mûködését.
#define KamDialog 115
new Float:kszpoz[][4] = //{Érzékelési kör, X, Y, Z}
{
{2.0, 211.6799, 1812.2871, 21.8594},
{1.0, 450.7513, -88.6526, 1174.3534},
{1.0, 1816.1584, -1562.8831, 1636.9736}
};
public OnPlayerCommandText(playerid, cmdtext[])
{
if(!strcmp(cmdtext, \"/kamera\", true))
{
if(!IsPlayerConnected(playerid)) return SendClientMessage(playerid, COLOR_GRAD2, \"Nem vagy bejelentkezve!\");
for(new a; a < sizeof(kszpoz); a++) {
if(!IsPlayerInRangeOfPoint(playerid, kszpoz[a][0], kszpoz[a][1], kszpoz[a][2], kszpoz[a][3])) continue;
ShowPlayerDialog(playerid, KamDialog, DIALOG_STYLE_LIST, \"Városi Kamerák\", \"ErsteBank Bejárat\", \"Mehet\", \"Mégsem\");
return 1;
}
return SendClientMessage(playerid, COLOR_GRAD2, \"Nem vagy kamera szobában!\");
}
return 0;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == KamDialog)
{
//Jöhetnek ide a kódjaid.
return 1;
}
return 0;
}
A dialogoknál meg switchel lehet, hogy jobb lenne (átláthatóbb szvsz), de mivel gondolom a többit is iffel csináltad, én is azzal csináltam.
Sok szerencsét, további jó scriptelést! :thumbsup:
-
Sziasztok!
Akárhogyan próbálgattam nem akar a parancsra megjelenni a dialog mindig csak azt írja ki, hogy nem vagy kameraszobába, ha meg ott vagyok akkor nem reagál semmit a parancsra. :(
Segítene valaki kijavítani ?
if(strcmp(cmd, \"/kamera\", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(IsPlayerInRangeOfPoint(playerid,2.0,211.6799,1812.2871,21.8594) || IsPlayerInRangeOfPoint(playerid,1.0,450.7513,-88.6526,1174.3534) || IsPlayerInRangeOfPoint(playerid,1.0,1816.1584,-1562.8831,1636.9736))
{
{
ShowPlayerDialog(playerid, 112233, DIALOG_STYLE_LIST, \"Városi Kamerák\",\"ErsteBank Bejárat\",\"Mehet\",\"Mégsem\");
}
return 1;
}
else
{
SendClientMessage(playerid, COLOR_GRAD2, \"Nem vagy kamera szobában!\");
}
}
else
{
SendClientMessage(playerid, COLOR_GRAD2, \"Nem vagy bejelentkezve!\");
}
}
-
if(strcmp(cmd, \"/kamera\", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(IsPlayerInRangeOfPoint(playerid,5.0,211.6799,1812.2871,21.8594) || IsPlayerInRangeOfPoint(playerid,5.0,450.7513,-88.6526,1174.3534) || IsPlayerInRangeOfPoint(playerid,5.0,1816.1584,-1562.8831,1636.9736))
{
{
ShowPlayerDialog(playerid, 1123, DIALOG_STYLE_LIST, \"Városi Kamerák\",\"ErsteBank Bejárat\",\"Mehet\",\"Mégsem\");
}
return 1;
}
else
{
SendClientMessage(playerid, COLOR_GRAD2, \"Nem vagy kamera szobában!\");
}
}
else
{
SendClientMessage(playerid, COLOR_GRAD2, \"Nem vagy bejelentkezve!\");
}
return 1;
}
Ne használj ilyen nagy Dialogid-t.
-
Nos, ha már megírtam, leírom, bár látom, már válaszoltak. Én a helyedben tömbösíteném a dolgot, így én biztosabbra venném a mûködését.
#define KamDialog 115
new Float:kszpoz[][4] = //{Érzékelési kör, X, Y, Z}
{
{2.0, 211.6799, 1812.2871, 21.8594},
{1.0, 450.7513, -88.6526, 1174.3534},
{1.0, 1816.1584, -1562.8831, 1636.9736}
};
public OnPlayerCommandText(playerid, cmdtext[])
{
if(!strcmp(cmdtext, \"/kamera\", true))
{
if(!IsPlayerConnected(playerid)) return SendClientMessage(playerid, COLOR_GRAD2, \"Nem vagy bejelentkezve!\");
for(new a; a < sizeof(kszpoz); a++) {
if(!IsPlayerInRangeOfPoint(playerid, kszpoz[a][0], kszpoz[a][1], kszpoz[a][2], kszpoz[a][3])) continue;
ShowPlayerDialog(playerid, KamDialog, DIALOG_STYLE_LIST, \"Városi Kamerák\", \"ErsteBank Bejárat\", \"Mehet\", \"Mégsem\");
return 1;
}
return SendClientMessage(playerid, COLOR_GRAD2, \"Nem vagy kamera szobában!\");
}
return 0;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == KamDialog)
{
//Jöhetnek ide a kódjaid.
return 1;
}
return 0;
}
A dialogoknál meg switchel lehet, hogy jobb lenne (átláthatóbb szvsz), de mivel gondolom a többit is iffel csináltad, én is azzal csináltam.
Sok szerencsét, további jó scriptelést! :thumbsup: