Shayba
Специалист
Здравствуй легендарный портал PAWNO-INFO а так же его жители и гости!
Давно не работал в сфере pawn и по этому я здесь. Вырезал я рынок (базар) с одного мода, и пикапы и лавки и 3Д текст, и т.д
Но сама проблема кроется в том, что когда я встаю на место продавца первой лавки и выставляю товар на продажу, товар перемещается на вторую лавку, и 3Д текст второй лавки говорит о том, буд то я торгую за лавкой номер "2"
Если я встаю за лавку номер 2 и выставляю товар на продажу, товар перемещается за лавку номер "3" и 3Д текст опять говорит буд то я торгую за третьей лавкой. И так каждая лавка перемещает товар на соседнюю числом выше. В базе данных нет ни чего, что связано с этим рынком.
Координаты для товара записаны правильно, место продавца тоже записано правильно, по какой причине товар может ползать по лавкам подскажите пожалуйста?!
Это координаты место продавца каждой лавки.
Вот кейс, который отвечает за товар на лавках, тут же записываются координаты для товара.
Если еще что то нужно будет показать, пожалуйста говорите.
За помощь отдельное спасибо!
Давно не работал в сфере pawn и по этому я здесь. Вырезал я рынок (базар) с одного мода, и пикапы и лавки и 3Д текст, и т.д
Но сама проблема кроется в том, что когда я встаю на место продавца первой лавки и выставляю товар на продажу, товар перемещается на вторую лавку, и 3Д текст второй лавки говорит о том, буд то я торгую за лавкой номер "2"
Если я встаю за лавку номер 2 и выставляю товар на продажу, товар перемещается за лавку номер "3" и 3Д текст опять говорит буд то я торгую за третьей лавкой. И так каждая лавка перемещает товар на соседнюю числом выше. В базе данных нет ни чего, что связано с этим рынком.
Координаты для товара записаны правильно, место продавца тоже записано правильно, по какой причине товар может ползать по лавкам подскажите пожалуйста?!
Это координаты место продавца каждой лавки.
PHP:
static const stock posMarket[9][markInfo] = {
{1303.8132,-1864.3981,13.5469},
{1303.8153,-1869.7775,13.5469},
{1303.7678,-1875.1301,13.5525},
{1301.0409,-1879.2333,13.5525},
{1296.5671,-1879.2952,13.5469},
{1292.2970,-1879.2520,13.5469},
{1288.7307,-1875.3301,13.5469},
{1288.7162,-1870.0292,13.5469},
{1288.7256,-1864.6061,13.5469}
};
Код:
case 61: {
if(!response) {
DeletePVar(playerid, "market_numset");
DeletePVar(playerid, "market_priceitem");
DeletePVar(playerid, "market_inv_slot");
return DeletePVar(playerid, "market_inv_isaccessory");
}
new len=strlen(inputtext);
if(!len)
return SPD(playerid, 61, DIALOG_STYLE_INPUT,"Продажа",""CWHITE"Введите количество товара для выставления:","Готово","Отмена");
new val=strval(inputtext);
for(new i = len - 1; i != -1; i --) {
switch(inputtext[i]) {
case '0'..'9': continue;
default: return SPD(playerid, 61, DIALOG_STYLE_INPUT,"Продажа",""CWHITE"Введите количество товара для выставления:","Готово","Отмена");
}
}
if(inv_info[playerid][i_clickID] == -1)
return 1;
new invslot=GetPVarInt(playerid, "market_inv_slot");
if(inv_info[playerid][i_type][invslot] == 2 ||
inv_info[playerid][i_type][invslot] == 3) return SCM(playerid, COLOR_LIGHTGREY,"Эту вещь нельзя выставить на продажу");
new nummarket=GetPVarInt(playerid, "market_numset");
if(invslot == -1) return 1;
new freenum=-1;
for(new i=0; i<5; i++) {
if(modelitem[nummarket][i] != -1)
continue;
freenum=i;
break;
}
if(freenum == -1)
return SCM(playerid,COLOR_LIGHTGREY,"Вы не можете выставить на продажу более 5 товаров");
if(val < 1 || val > inv_info[playerid][i_count][invslot]) {
SPD(playerid, 61, DIALOG_STYLE_INPUT,"Продажа",""CWHITE"Введите количество товара для выставления:","Готово","Отмена");
return SCM(playerid,COLOR_LIGHTGREY,"Введено некорректное количество");
}
new model;
if(GetPVarInt(playerid, "market_inv_isaccessory"))
model=inv_info[playerid][in_amodel][invslot];
else model=item_data[inv_info[playerid][i_type][invslot]][itemmodel];
close_inventory(playerid);
SetPVarInt(playerid, "count_prod", val);
new Float:posmX,Float:posmY,Float:posmZ,Float:posmA;
switch(nummarket) {
case 0: {
posmX=1303.0787;
posmY=-1864.4194;
posmZ=13.4995;
posmA=-90;
}
case 1: {
posmX=1303.0624;
posmY=-1869.9698;
posmZ=13.4995;
posmA=-90;
}
case 2: {
posmX=1303.0087;
posmY=-1875.3330;
posmZ=13.4995;
posmA=-90;
}
case 3: {
posmX=1300.9015;
posmY=-1878.4351;
posmZ=13.4995;
posmA=180;
}
case 4: {
posmX=1296.5482;
posmY=-1878.4812;
posmZ=13.4995;
posmA=90;
}
case 5: {
posmX=1292.1379;
posmY=-1878.4751;
posmZ=13.4995;
posmA=180;
}
case 6: {
posmX=1289.5500;
posmY=-1875.2720;
posmZ=13.4995;
posmA=90;
}
case 7: {
posmX=1289.5513;
posmY=-1869.8712;
posmZ=13.4995;
posmA=90;
}
case 8: {
posmX=1289.5612;
posmY=-1864.4884;
posmZ=13.4995;
posmA=90;
}
}
install_market_obj[playerid][freenum] = CreateObject(model, posmX,posmY,posmZ,0, 0, posmA);
Streamer_Update(playerid);
SetPVarInt(playerid, "market_IsEditing", 1);
SetPVarInt(playerid, "market_NumProd", freenum);
EditObject(playerid, install_market_obj[playerid][freenum]);
SCM(playerid, -1, "Установите выбранный товар на прилавке и нажмите иконку "CBLUE"\"Сохранить\"");
SCM(playerid, -1, "Подсказка: Вы можете двигать камеру, зажимая "CYELLOW"ПРОБЕЛ");
}
case 147: {
if(!response) {
DeletePVar(playerid, "market_numset");
DeletePVar(playerid, "market_inv_slot");
DeletePVar(playerid, "market_inv_isskin");
return DeletePVar(playerid, "market_inv_isaccessory");
}
new len=strlen(inputtext);
if(!len)
return SPD(playerid,147,DIALOG_STYLE_INPUT,"Продажа",""CWHITE"Вы хотите выставить товар на продажу.\nВведите цену для этого товара в поле ниже:","Готово","Отмена");
new val=strval(inputtext);
for(new i = len - 1; i != -1; i --) {
switch(inputtext[i]) {
case '0'..'9': continue;
default: return SPD(playerid,147,DIALOG_STYLE_INPUT,"Продажа",""CWHITE"Вы хотите выставить товар на продажу.\nВведите цену для этого товара в поле ниже:","Готово","Отмена");
}
}
if(val < 100 || val > 500000) {
SPD(playerid,147,DIALOG_STYLE_INPUT,"Продажа",""CWHITE"Вы хотите выставить товар на продажу.\nВведите цену для этого товара в поле ниже:","Готово","Отмена");
return SCM(playerid,COLOR_LIGHTGREY,"Укажите цену от 100$ до 500000$");
}
if(inv_info[playerid][i_clickID] == -1)
return 1;
new invslot=GetPVarInt(playerid, "market_inv_slot");
if(inv_info[playerid][i_type][invslot] == 2 ||
inv_info[playerid][i_type][invslot] == 3) return SCM(playerid, COLOR_LIGHTGREY,"Эту вещь нельзя выставить на продажу");
new nummarket=GetPVarInt(playerid, "market_numset");
if(invslot == -1) return 1;
new freenum=-1;
for(new i=0; i<5; i++) {
if(modelitem[nummarket][i] != -1)
continue;
freenum=i;
break;
}
new countskins;
for(new i=0; i<5; i++) {
if(!item_is_Skin[nummarket][i])
continue;
countskins++;
}
if(countskins >= 3) return SCM(playerid,COLOR_LIGHTGREY,"Вы не можете выставлять на продажу более 3 скинов");
if(freenum == -1)
return SCM(playerid,COLOR_LIGHTGREY,"Вы не можете выставить на продажу более 5 товаров");
SetPVarInt(playerid, "market_priceitem", val);
if(inv_info[playerid][i_count][invslot] > 1)
return SPD(playerid, 61, DIALOG_STYLE_INPUT,"Продажа",""CWHITE"Введите количество товара для выставления:","Готово","Отмена");
new model;
if(GetPVarInt(playerid, "market_inv_isskin")) {
switch(random(2)) {
case 0: model=2399;
case 1: model=2390;
}
SetPVarInt(playerid, "market_inv_skinobj", model);
}
else if(GetPVarInt(playerid, "market_inv_isaccessory"))
model=inv_info[playerid][in_amodel][invslot];
else model=item_data[inv_info[playerid][i_type][invslot]][itemmodel];
close_inventory(playerid);
SetPVarInt(playerid, "count_prod", 1);
new Float:posmX,Float:posmY,Float:posmZ,Float:posmA;
switch(nummarket) {
case 0: {
posmX=1303.0787;
posmY=-1864.4194;
posmZ=13.4995;
posmA=-90;
}
case 1: {
posmX=1303.0624;
posmY=-1869.9698;
posmZ=13.4995;
posmA=-90;
}
case 2: {
posmX=1303.0087;
posmY=-1875.3330;
posmZ=13.4995;
posmA=-90;
}
case 3: {
posmX=1300.9015;
posmY=-1878.4351;
posmZ=13.4995;
posmA=180;
}
case 4: {
posmX=1296.5482;
posmY=-1878.4812;
posmZ=13.4995;
posmA=90;
}
case 5: {
posmX=1292.1379;
posmY=-1878.4751;
posmZ=13.4995;
posmA=180;
}
case 6: {
posmX=1289.5500;
posmY=-1875.2720;
posmZ=13.4995;
posmA=90;
}
case 7: {
posmX=1289.5513;
posmY=-1869.8712;
posmZ=13.4995;
posmA=90;
}
case 8: {
posmX=1289.5612;
posmY=-1864.4884;
posmZ=13.4995;
posmA=90;
}
}
install_market_obj[playerid][freenum] = CreateObject(model, posmX,posmY,posmZ,0, 0, posmA);
Streamer_Update(playerid);
SetPVarInt(playerid, "market_IsEditing", 1);
SetPVarInt(playerid, "market_NumProd", freenum);
EditObject(playerid, install_market_obj[playerid][freenum]);
SCM(playerid, -1, "Установите выбранный товар на прилавке и нажмите иконку "CBLUE"\"Сохранить\"");
SCM(playerid, -1, "Подсказка: Вы можете двигать камеру, зажимая "CYELLOW"ПРОБЕЛ");
}
Если еще что то нужно будет показать, пожалуйста говорите.
За помощь отдельное спасибо!
