07.12.2010, 17:52
Ok, in my gamemode in the trucker job when i enter a trucker and type /buyprods then it tells me the prods i have but not let me buy it. When i type /sellprobs same thing happens. The code is
Код:
if(strcmp(cmd, "/sellprods", true) == 0) { new cashmade; new tmpcar; if(IsPlayerConnected(playerid)) { tmpcar = GetPlayerVehicleID(playerid); if(!IsATruck(tmpcar)) { GameTextForPlayer(playerid, "~r~You are not in a delivery truck", 5000, 1); return 1; } if(PlayerHaul[tmpcar][pLoad] == 0) { GameTextForPlayer(playerid, "~r~Truck is empty, return to the stock house", 5000, 1); format(string, sizeof(string), "Products: %d/%d.", PlayerHaul[tmpcar][pLoad],PlayerHaul[tmpcar][pCapasity]); SendClientMessage(playerid, TEAM_GROVE_COLOR, string); return 1; } for(new i = 0; i < sizeof(BizzInfo); i++) { if (IsPlayerInRangeOfPoint(playerid, 10,BizzInfo[i][bEntranceX], BizzInfo[i][bEntranceY], BizzInfo[i][bEntranceZ])) { //printf("Found House :%d",i); for(new l = PlayerHaul[tmpcar][pLoad]; l > 0; l--) { if(BizzInfo[i][bProducts] == BizzInfo[i][bMaxProducts]) { GameTextForPlayer(playerid, "~r~Our stores are full", 5000, 1); format(string, sizeof(string), "Cash Earned $%d.", cashmade); SendClientMessage(playerid, TEAM_GROVE_COLOR, string); format(string, sizeof(string), "Products: %d/%d.", PlayerHaul[tmpcar][pLoad],PlayerHaul[tmpcar][pCapasity]); SendClientMessage(playerid, TEAM_GROVE_COLOR, string); PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0); return 1; } if(BizzInfo[i][bPriceProd] > BizzInfo[i][bTill]) { GameTextForPlayer(playerid, "~r~We Cant Afford The Deal", 5000, 1); format(string, sizeof(string), "Cash Earned $%d.", cashmade); SendClientMessage(playerid, TEAM_GROVE_COLOR, string); format(string, sizeof(string), "Products: %d/%d.", PlayerHaul[tmpcar][pLoad],PlayerHaul[tmpcar][pCapasity]); SendClientMessage(playerid, TEAM_GROVE_COLOR, string); PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0); return 1; } PlayerHaul[tmpcar][pLoad]--; BizzInfo[i][bProducts]++; cashmade = cashmade+BizzInfo[i][bPriceProd]; //ConsumingMoney[playerid] = 1; SafeGivePlayerMoney(playerid,BizzInfo[i][bPriceProd]); BizzInfo[i][bTill] -= BizzInfo[i][bPriceProd]; if(PlayerHaul[tmpcar][pLoad] == 0) { GameTextForPlayer(playerid, "~r~Truck is empty, return to the stock house", 5000, 1); format(string, sizeof(string), "Cash Earned $%d.", cashmade); SendClientMessage(playerid, TEAM_GROVE_COLOR, string); format(string, sizeof(string), "Products: %d/%d.", PlayerHaul[tmpcar][pLoad],PlayerHaul[tmpcar][pCapasity]); SendClientMessage(playerid, TEAM_GROVE_COLOR, string); PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0); return 1; } } OnPropUpdate(3,i); return 1; } } } for(new i = 0; i < sizeof(SBizzInfo); i++) { if (IsPlayerInRangeOfPoint(playerid, 10,SBizzInfo[i][sbEntranceX], SBizzInfo[i][sbEntranceY], SBizzInfo[i][sbEntranceZ])) { //printf("Found House :%d",i); for(new l = PlayerHaul[tmpcar][pLoad]; l > 0; l--) { if(SBizzInfo[i][sbProducts] == SBizzInfo[i][sbMaxProducts]) { GameTextForPlayer(playerid, "~r~Our stores are full", 5000, 1); format(string, sizeof(string), "Cash Earned $%d.", cashmade); SendClientMessage(playerid, TEAM_GROVE_COLOR, string); format(string, sizeof(string), "Products: %d/%d.", PlayerHaul[tmpcar][pLoad],PlayerHaul[tmpcar][pCapasity]); SendClientMessage(playerid, TEAM_GROVE_COLOR, string); return 1; } if(SBizzInfo[i][sbPriceProd] > SBizzInfo[i][sbTill]) { GameTextForPlayer(playerid, "~r~We Cant Afford The Deal", 5000, 1); format(string, sizeof(string), "Cash Earned $%d.", cashmade); SendClientMessage(playerid, TEAM_GROVE_COLOR, string); format(string, sizeof(string), "Products: %d/%d.", PlayerHaul[tmpcar][pLoad],PlayerHaul[tmpcar][pCapasity]); SendClientMessage(playerid, TEAM_GROVE_COLOR, string); return 1; } PlayerHaul[tmpcar][pLoad]--; SBizzInfo[i][sbProducts]++; cashmade = cashmade+SBizzInfo[i][sbPriceProd]; //ConsumingMoney[playerid] = 1; SafeGivePlayerMoney(playerid,SBizzInfo[i][sbPriceProd]); SBizzInfo[i][sbTill] -= SBizzInfo[i][sbPriceProd]; if(PlayerHaul[tmpcar][pLoad] == 0) { GameTextForPlayer(playerid, "~r~Truck is empty, return to the stock house", 5000, 1); format(string, sizeof(string), "Cash Earned $%d.", cashmade); SendClientMessage(playerid, TEAM_GROVE_COLOR, string); format(string, sizeof(string), "Products: %d/%d.", PlayerHaul[tmpcar][pLoad],PlayerHaul[tmpcar][pCapasity]); SendClientMessage(playerid, TEAM_GROVE_COLOR, string); return 1; } } OnPropUpdate(3,i); return 1; } } GameTextForPlayer(playerid, "~r~To Far From A Business", 5000, 1); return 1; }
Код:
if(strcmp(cmd, "/buyprods", true) == 0) { if(IsPlayerConnected(playerid)) { new tmpcar = GetPlayerVehicleID(playerid); new compcost = 20; if(IsPlayerInRangeOfPoint(playerid, 70, 2468.4919,-2092.9902,13.5469)) { if(IsATruck(tmpcar)) { if(PlayerHaul[tmpcar][pLoad] < PlayerHaul[tmpcar][pCapasity]) { new amount; tmp = strtok(cmdtext, idx); if(!strlen(tmp)) { SendClientMessage(playerid, COLOR_GRAD1, "USAGE: /buyprods [amount]"); return 1; } amount = strval(tmp); if(amount < 1 || amount > 500) { SendClientMessage(playerid, COLOR_GREY, " Can't buy less then 1 Product or more then 500!"); return 1; } new check= PlayerHaul[tmpcar][pLoad] + amount; if(check > PlayerHaul[tmpcar][pCapasity]) { format(string, sizeof(string), " You went over the Truck Products Carry Limit of %d, you currently carry %d.",PlayerHaul[tmpcar][pCapasity],PlayerHaul[tmpcar][pLoad]); SendClientMessage(playerid, COLOR_GREY, string); return 1; } new cost = amount*compcost; if(GetPlayerMoney(playerid) >= cost) { PlayerHaul[tmpcar][pLoad] += amount; format(string, sizeof(string), "Products: %d/%d.", PlayerHaul[tmpcar][pLoad],PlayerHaul[tmpcar][pCapasity]); SendClientMessage(playerid, TEAM_GROVE_COLOR, string); format(string, sizeof(string), "You bought %d Products for $%d.", amount,cost); SendClientMessage(playerid, TEAM_GROVE_COLOR, string); SafeGivePlayerMoney(playerid,-cost); PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0); return 1; } else { format(string, sizeof(string), "You cant afford %d Products at $%d!", amount,cost); SendClientMessage(playerid, TEAM_GROVE_COLOR, string); return 1; } } else { format(string, sizeof(string), "Products: %d/%d.", PlayerHaul[tmpcar][pLoad],PlayerHaul[tmpcar][pCapasity]); SendClientMessage(playerid, TEAM_GROVE_COLOR, string); return 1; } } else { SendClientMessage(playerid, TEAM_GROVE_COLOR, "This Vehicle does not deliver Products."); return 1; } } else { SendClientMessage(playerid, COLOR_GREY, "You are not in trucker place."); return 1; } } return 1;