Здравствуйте сделал шахту но у меня когда обновляется руда на шахте в количестве твориться фиг знает что вот скриншот может кто сталкивался с этим
PHP код:
enum shInfo
{
ruda,//Руда
perepl,//Переплав
metall,//металл
Text3D:dmetall,
Text3D:druda,
Text3D:pereplav
}
new ShahtaInfo[0][shInfo];
Ongamemodeinit
PHP код:
Load3DTextLabel();
конец скрипта
PHP код:
stock Load3DTextLabel()
{
new string[90];
format(string,sizeof(string), "{00ff00}Железная руда\n{ffffff}На складе:\n %d кг", ShahtaInfo[0][ruda]);
ShahtaInfo[0][druda] = Create3DTextLabel(string, COLOR_YELLOW,-1867.4611,-1612.5785,24.0039, 30.0, 0, 0);
format(string,sizeof(string), "{ffffff}Кузница\n{ffa500} %d кг руды\nНа переплавке", ShahtaInfo[0][perepl]);
ShahtaInfo[0][pereplav] = Create3DTextLabel(string, COLOR_YELLOW,-1852.6737,-1612.4672,23.0100, 30.0, 0, 0);
format(string,sizeof(string), "{ffffff}Металл\n{00b0ff}На складе:\n %d кг", ShahtaInfo[0][metall]);
ShahtaInfo[0][dmetall] = Create3DTextLabel(string, COLOR_YELLOW,-1845.5784,-1617.2751,24.0039, 30.0, 0, 0);
return 1;
}
PHP код:
public OnPlayerEnterCheckpoint(playerid)
{
switch(ShahtDeystv[playerid])
{
case 1://Добыча
{
if(IsPlayerInAnyVehicle(playerid))
return 1;
TogglePlayerControllable(playerid, false);
ApplyAnimation(playerid, "BASEBALL", "Bat_4", 4.1, 1, 0, 0, 1, 11000);//Выдали анимацию!
DisablePlayerCheckpoint(playerid);//Удаляем чекпоинт
shahtatime = SetTimerEx("ShahtaDobicha", 1000, false, "i", playerid);//устанавливаем таймер 10 сек
ShahtDeystv[playerid] = 2;//Добыча потом отправляем на склад!
}
case 2://Склад!
{
if(IsPlayerInAnyVehicle(playerid))
return 1;
new string[50];
if(IsPlayerAttachedObjectSlotUsed(playerid, 1)) RemovePlayerAttachedObject(playerid, 1);
if(IsPlayerAttachedObjectSlotUsed(playerid, 2)) RemovePlayerAttachedObject(playerid, 2);
if(IsPlayerAttachedObjectSlotUsed(playerid, 3)) RemovePlayerAttachedObject(playerid, 3);
rands1 = random(sizeof(randommine));
KG[playerid] += randommine[rands1][0];
ShahtaInfo[0][ruda] += randommine[rands1][0];
format(string, sizeof(string), "Общее количество добытой руды %dкг руды", KG[playerid]);
SendClientMessage(playerid, COLOR_YELLOW, string);
format(string, sizeof(string), "Вы добыли %dкг руды", randommine[rands1][0]);
SendClientMessage(playerid, COLOR_BLUE, string);
ShahtDeystv[playerid] = 1;
DisablePlayerCheckpoint(playerid);
switch(random(3))
{
case 0: SetPlayerCheckpoint(playerid, -1805.9828,-1649.1764,24.3256, 6.0);
case 1: SetPlayerCheckpoint(playerid, -1802.4784,-1658.8679,25.5539, 6.0);
case 2: SetPlayerCheckpoint(playerid, -1851.9504,-1649.6320,24.2690, 6.0);
}
UpdateShahta();
SetTimer("FuncsMetall",5000,0);
}
}
return 1;
}
PHP код:
stock UpdateShahta()
{
new string[90];
format(string,sizeof(string), "{00ff00}Железная руда\n{ffffff}На складе:\n %d кг", ShahtaInfo[0][ruda]);
Update3DTextLabelText(ShahtaInfo[0][druda], COLOR_YELLOW, string);
format(string,sizeof(string), "{ffffff}Кузница\n{ffa500} %d кг руды\nНа переплавке", ShahtaInfo[0][perepl]);
Update3DTextLabelText(ShahtaInfo[0][pereplav], COLOR_YELLOW, string);
format(string,sizeof(string), "{ffffff}Металл\n{00b0ff}На складе:\n %d кг", ShahtaInfo[0][metall]);
Update3DTextLabelText(ShahtaInfo[0][dmetall], COLOR_YELLOW, string);
return 1;
}
PHP код:
forward FuncsMetall(playerid);
public FuncsMetall(playerid)
{
if(ShahtaInfo[0][ruda] > 150)
{
ShahtaInfo[0][ruda] -= randommine[rands1][0];
ShahtaInfo[0][perepl] += randommine[rands1][0]/2;
}
return 1;
}
stock UpdateRuda()
{
new end;
if(ShahtaInfo[0][perepl] > 30)
{
end = ShahtaInfo[0][perepl]/2;
ShahtaInfo[0][metall] += end;
ShahtaInfo[0][perepl] -= end*2;
}
return 1;
}
в чем проблема не могу понять может кто сталкивался?