17.09.2012, 19:30
Well. I have a little problem. The thing is. When I call someone and I /hangup, it says that he hand-up the line but when he writes something on Local Chat he is still on the phone + you can't call anybody anymore. Can someone tell me what is wrong with this command?
Код:
CMD:hangup(playerid, params[]) { new string[128]; if(!IsPlayerLoggedIn(playerid)) return SendClientMessage(playerid, COLOR_GREY, "You need to login first before using any command."); if(!PlayerInfo[playerid][pHasCellphone]) return SendClientMessage(playerid, COLOR_GREY, "You don't own a cellphone."); if(!BeingCalled[playerid] && !Calling[playerid]) return SendClientMessage(playerid, COLOR_GREY, "You are not on a call nor is anybody calling you."); format(string, sizeof(string), "* %s puts their cellphone away.", RPN(playerid)); SendNearbyMessage(playerid, 15, string, COLOR_PURPLE, COLOR_PURPLE, COLOR_PURPLE, COLOR_PURPLE, COLOR_PURPLE); SendClientMessage(playerid, COLOR_ORANGE, " You have hungup the line."); if(BeingCalled[playerid]) SendClientMessage(Caller[playerid], COLOR_ORANGE, " They hungup the line."); else if(Calling[playerid]) SendClientMessage(Called[playerid], COLOR_ORANGE, " They hungup the line."); if(Call911[playerid]) return SendClientMessage(playerid, COLOR_GREY, "You can't hangup on a 911 call."); // SetPlayerSpecialAction(playerid, SPECIAL_ACTION_STOPUSECELLPHONE); if(Calling[playerid]) { SetPlayerSpecialAction(Called[playerid], SPECIAL_ACTION_STOPUSECELLPHONE); format(string, sizeof(string), "[Cellphone] Phonecall lasted for %d seconds, price: $%d", CallTime[playerid], CallTime[playerid]*10/100); SendClientMessage(playerid, COLOR_YELLOW, string); GiveZaiatMoney(playerid, -(CallTime[playerid]*10/100)); TaxMoney += (CallTime[playerid]*10/100); Calling[playerid] = 0; BeingCalled[playerid] = 0; Caller[playerid] = -1; CallTime[playerid] = 0; Called[playerid] = -1; } else if(Calling[Caller[playerid]]) { SetPlayerSpecialAction(Called[playerid], SPECIAL_ACTION_STOPUSECELLPHONE); format(string, sizeof(string), "[Cellphone] Phonecall lasted for %d seconds, price: $%d", CallTime[Caller[playerid]], CallTime[Caller[playerid]]*10/100); SendClientMessage(Caller[playerid], COLOR_YELLOW, string); GiveZaiatMoney(Caller[playerid], -(CallTime[Caller[playerid]]*10/100)); TaxMoney += (CallTime[Caller[playerid]]*10/100); Calling[Called[playerid]] = 0; BeingCalled[Called[playerid]] = 0; Caller[Called[playerid]] = -1; CallTime[Called[playerid]] = 0; Called[Called[playerid]] = -1; } return 1; }